/* Isolated extensions to the approved credit catalog, not a global redesign. */
/* Keep the dark glass finish without washing out the small financial labels. */
html[data-theme="dark"] .pension-page .credit-card .metric::before{opacity:.25}
html[data-theme="dark"] .pension-page .home-primary{background:linear-gradient(180deg,#1478e5,#095bdf 54%,#0748c7)!important}
/* Solid keyboard outlines remain visible on both theme surfaces and gradients. */
.pension-page :is(a,button,summary,input,select):focus-visible,.credit-offer-compare-dialog :is(button,[tabindex]):focus-visible,.credit-offer-compare-bar button:focus-visible,.pension-page .credit-compare:focus-within{outline:3px solid #0757cc!important;outline-offset:3px;scroll-margin-block:100px}
html[data-theme="dark"] .pension-page :is(a,button,summary,input,select):focus-visible,html[data-theme="dark"] .credit-offer-compare-dialog :is(button,[tabindex]):focus-visible,html[data-theme="dark"] .credit-offer-compare-bar button:focus-visible,html[data-theme="dark"] .pension-page .credit-compare:focus-within{outline-color:#93c5fd!important}
@media(forced-colors:active){.pension-page :focus-visible,.credit-offer-compare-dialog :focus-visible,.credit-offer-compare-bar :focus-visible,.pension-page .credit-compare:focus-within{outline-color:Highlight!important}}
.pension-page{--pension-ink:#082b52;--pension-muted:#385476;--pension-line:#cddfff;--pension-surface:#f3f7ff;--pension-card:#fff;--pension-warn:#8b361f}
html[data-theme="dark"] .pension-page{--pension-ink:#eff5ff;--pension-muted:#b8c9e2;--pension-line:#35506d;--pension-surface:#13243c;--pension-card:#0d1d35;--pension-warn:#ffd0b2}
.pension-panel{margin:32px 60px;padding:32px;border:1px solid var(--pension-line);border-radius:28px;background:var(--pension-card);color:var(--pension-ink)}
.pension-panel .credit-section-head{margin:0 0 24px}
.pension-panel .credit-section-head>div{max-width:900px}
.pension-panel h2{font-size:clamp(25px,2.6vw,36px);line-height:1.2;letter-spacing:-.8px}
.pension-panel p{line-height:1.6}
.pension-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.pension-fields--filters{grid-template-columns:repeat(3,minmax(0,1fr))}
.pension-field{display:flex;flex-direction:column;gap:10px;min-width:0;color:var(--pension-ink);font-size:16px;font-weight:650;line-height:1.45}
.pension-field input,.pension-field select{box-sizing:border-box;width:100%;min-width:0;min-height:54px;border:1px solid var(--pension-line);border-radius:14px;padding:12px 14px;font:inherit;color:var(--pension-ink);background:var(--pension-card)}
.pension-field input::placeholder{color:var(--pension-muted);opacity:1;font-weight:400}
.pension-field input:focus-visible,.pension-field select:focus-visible{outline:3px solid #4c91ff;outline-offset:3px}
.pension-hint,.pension-caution{color:var(--pension-muted);font-size:15px;line-height:1.6;margin:18px 0 0}
.pension-caution{padding:16px 20px;background:var(--pension-surface);border-radius:16px}
.pension-tool-error:empty,#pension-filter-status:empty{display:none}
.pension-tool-error{color:var(--pension-warn);font-weight:650}
.pension-page #filter-reset{width:auto;min-width:96px;flex:0 0 auto;padding:12px 16px;white-space:nowrap}
.pension-age-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));list-style:none;gap:12px;margin:22px 0 0;padding:0}
.pension-age-results li{padding:18px;border:1px solid var(--pension-line);border-radius:18px;background:var(--pension-surface)}
.pension-age-results strong{display:block;font-size:17px;line-height:1.4}
.pension-age-results p{margin:8px 0 0;color:var(--pension-muted);font-size:15px}
.pension-age-results li[data-result="outside"] p{color:var(--pension-warn)}
.pension-page .credit-card .brand__text{min-width:0}
.pension-product{font-size:13px!important;line-height:1.4!important;color:var(--pension-muted);margin:6px 0 0!important}
.pension-page .credit-card .metric .thematic-metric-value{white-space:normal!important;overflow-wrap:normal}
.pension-page .credit-card .metric:nth-child(-n+2) .thematic-metric-value{font-size:21px}
.pension-page .pension-documents>strong{font-size:18px;line-height:1.4}
.pension-page .pension-documents{padding:18px}
.pension-page .catalog-updates__stamp>strong{display:block;font-size:16px}
.pension-budget-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:30px}
.pension-fields--budget{grid-template-columns:repeat(2,minmax(0,1fr))}
.pension-fields--budget .pension-field:last-child{grid-column:1/-1}
.pension-budget-result{padding:28px;border:1px solid var(--pension-line);border-radius:24px;background:var(--pension-surface);color:var(--pension-ink);align-self:start}
.pension-budget-result>strong{display:block;font-size:clamp(30px,3vw,46px);line-height:1.2;margin:12px 0 24px;overflow-wrap:anywhere}
.pension-budget-result dl{margin:0}
.pension-budget-result dl>div{padding:16px 0;border-top:1px solid var(--pension-line)}
.pension-budget-result dt{color:var(--pension-muted);font-size:15px;line-height:1.5}
.pension-budget-result dd{margin:8px 0 0;font-size:24px;font-weight:750;overflow-wrap:anywhere}
.pension-budget-result p{font-size:15px;color:var(--pension-muted);margin:0}
.pension-page [hidden]{display:none!important}
@media(max-width:1100px){.pension-panel{margin:26px 30px;padding:26px}.pension-fields--filters{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){.pension-fields,.pension-fields--filters{grid-template-columns:repeat(2,minmax(0,1fr))}.pension-budget-layout{grid-template-columns:1fr}.pension-age-results{grid-template-columns:1fr}}
@media(max-width:600px){.pension-panel{margin:22px 16px;padding:22px 18px;border-radius:22px}.pension-fields,.pension-fields--budget,.pension-fields--filters{grid-template-columns:1fr}.pension-panel h2{font-size:26px}.pension-field{font-size:16px}.pension-age-results li{padding:16px}.pension-budget-result{padding:20px}.pension-caution{padding:14px}.pension-page .credit-card .metric:nth-child(-n+2) .thematic-metric-value{font-size:20px}}
@media(max-width:600px){.pension-page #credit-filter .credit-filter-panel__head{grid-template-columns:1fr;align-items:start}.pension-page .credit-filter-panel__head>div{width:100%;padding:0}.pension-page #filter-reset{justify-self:start}}
