:root{--bg:#f5f7fa;--surface:#ffffff;--surface-2:#f7f9fc;--ink:#173463;--body-ink:#2d4262;--muted:#66758b;--border:#d8e0ea;--border-strong:#b8c5d6;--accent:#173463;--accent-hover:#0f274a;--accent-soft:#edf4fc;--focus:#4c8ed9;--success:#287348;--danger:#a44234;--shadow:0 1px 2px rgb(23 52 99/4%),0 10px 26px rgb(23 52 99/7%);--radius-sm:6px;--radius-md:9px;--content-width:1240px;--display:"proxima-nova-condensed","Arial","Helvetica Neue","Helvetica",sans-serif;--body:"proxima-nova-condensed","Arial","Helvetica Neue","Helvetica",sans-serif}*{box-sizing:border-box}body,html{background:var(--bg)}body{margin:0;color:var(--body-ink);font:15px/1.5 var(--body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}button,input,select{font:inherit}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid color-mix(in srgb,var(--focus) 38%,transparent);outline-offset:2px}.app-shell{min-height:100vh}.topbar{min-height:72px;padding:8px clamp(18px,4vw,48px);border-bottom:1px solid var(--border);background:var(--surface);justify-content:space-between;gap:24px;position:-webkit-sticky;position:sticky;top:0;z-index:20}.brand-reset,.topbar{display:flex;align-items:center}.brand-reset{min-width:0;padding:0;border:0;background:none;gap:22px;text-align:left;color:var(--ink)}.brand-logo{width:118px;height:auto}.product-name{padding-left:20px;border-left:1px solid var(--border);font-size:16px;font-weight:750;letter-spacing:.01em}.environment{font-size:12px;color:var(--muted)}.content{min-height:calc(100vh - 72px);display:grid;place-items:stretch;padding:clamp(32px,5vw,64px) clamp(18px,4vw,56px)}.report-content{display:block;padding:0}.card,.masthead,.section-block{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow)}.card{padding:clamp(28px,5vw,52px)}.card-wide{width:min(100%,var(--content-width));margin:0 auto;padding:clamp(20px,3vw,36px) 0;border:0;background:transparent;box-shadow:none}h1,h2,h3{margin:0;color:var(--ink);font-family:var(--display);line-height:1.2352}h1{font-size:clamp(1.8rem,3.2vw,2.35rem);font-weight:750;letter-spacing:-.025em}h2{font-size:1.4rem}.step-label{margin:0 0 8px;font-size:12px;font-weight:700;letter-spacing:.02em}.lede,.step-label{color:var(--muted)}.lede{max-width:720px;margin:12px 0 28px;font-size:16px}.intro{max-width:1120px;padding-top:clamp(50px,9vh,90px)}.intro>.lede,.intro>h1{text-align:center;margin-right:auto;margin-left:auto}.intro>.lede{margin-bottom:42px}.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:18px;gap:18px}.choice-grid button{min-height:140px;padding:28px 30px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface);color:var(--body-ink);display:grid;grid-template-columns:auto 1fr auto;align-items:center;grid-gap:24px;gap:24px;text-align:left;box-shadow:0 1px 2px rgb(23 52 99/4%);transition:border-color .16s ease,background .16s ease,box-shadow .16s ease,transform .16s ease}.choice-grid button:hover{border-color:#7e9fc9;background:#fbfdff;box-shadow:0 10px 24px rgb(23 52 99/8%);transform:translateY(-2px)}.choice-grid button:active{transform:translateY(0)}.choice-grid small,.choice-grid span,.choice-grid strong{display:block}.choice-grid strong{color:var(--ink);font-size:1.35rem;font-weight:750}.choice-grid small{margin-top:7px;color:var(--muted);font-size:15px}.choice-grid button>svg{width:24px;height:24px;color:var(--accent);transition:transform .16s ease}.choice-grid button:hover>svg{transform:translateX(3px)}.field-label{color:var(--ink);font-size:13px;font-weight:700}.search-wrap{position:relative;margin:8px 0 34px}.search-wrap input{width:100%;min-height:50px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);padding:13px 14px;background:var(--surface);color:var(--body-ink)}.search-wrap input:focus,.search-wrap input:hover{border-color:var(--accent)}.search-results{position:absolute;top:57px;width:100%;z-index:3;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);box-shadow:0 18px 40px rgb(23 52 99/13%);overflow:hidden}.search-results button{width:100%;padding:13px 15px;border:0;border-bottom:1px solid var(--border);background:none;display:flex;align-items:center;justify-content:space-between;text-align:left}.search-results button:hover{background:var(--surface-2)}.search-results small,.search-results strong{display:block}.search-results small,.search-results>p{margin:0;color:var(--muted)}.search-results>p{padding:15px}.button{min-height:42px;padding:9px 17px;border:1px solid transparent;border-radius:var(--radius-sm);display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:14px;font-weight:700;white-space:nowrap;transition:background .15s ease,border-color .15s ease,color .15s ease,transform .12s ease}.button:active:not(:disabled){transform:translateY(1px)}.primary{background:var(--accent);color:#fff}.primary:hover:not(:disabled){background:var(--accent-hover)}.secondary{border-color:var(--border);background:var(--surface);color:var(--ink)}.secondary:hover:not(:disabled){border-color:var(--accent);background:var(--accent-soft)}.button:disabled{opacity:.5;cursor:not-allowed}.portfolio-list{border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden;background:var(--surface)}.portfolio-list label{min-height:74px;padding:14px 18px;border-bottom:1px solid var(--border);display:grid;grid-template-columns:auto 1fr auto;align-items:center;grid-gap:14px;gap:14px}.portfolio-list label:last-child{border:0}.portfolio-list label:hover{background:var(--surface-2)}.portfolio-list input{width:17px;height:17px;accent-color:var(--accent)}.portfolio-list small,.portfolio-list strong{display:block}.portfolio-list small{color:var(--muted)}.actions,.footer-actions{margin-top:28px;display:flex;align-items:center;justify-content:space-between;gap:12px}.report-wrap{width:100%;margin:0}.masthead{margin:0;padding:28px clamp(20px,4vw,56px);border:0;border-radius:0;background:var(--accent);box-shadow:none;display:flex;align-items:center;justify-content:space-between;gap:20px}.masthead h1{color:#fff;font-size:clamp(1.7rem,3vw,2.15rem)}.masthead .step-label{color:#dce1e8}.masthead p{margin:7px 0 0;color:#eef1f5}.section-block{margin-bottom:22px;padding:26px 28px}.section-heading{margin-bottom:18px;display:flex;align-items:flex-end;justify-content:space-between;gap:18px}.grand-total{color:var(--ink);font-size:1.55rem;font-weight:700}.status{padding:5px 9px;border:1px solid var(--border);border-radius:4px;background:var(--surface-2);color:var(--muted);font-size:11px;font-weight:700}.payload pre{padding:18px;border-radius:5px;background:var(--ink);color:#fff;overflow:auto;font:12px/1.55 ui-monospace,Cascadia Code,monospace}.payload>p{margin-bottom:0;color:var(--muted)}.footer-actions{position:-webkit-sticky;position:sticky;bottom:0;z-index:8;margin:0;padding:16px clamp(18px,4vw,56px);border-top:1px solid var(--border);background:rgb(255 255 255/96%);box-shadow:0 -8px 24px rgb(23 52 99/7%);justify-content:flex-end;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}@media (max-width:700px){.topbar{min-height:64px;padding:7px 16px}.brand-reset{gap:12px}.brand-logo{width:94px}.product-name{padding-left:12px;font-size:14px}.environment{display:none}.content{min-height:calc(100vh - 64px);padding:24px 16px}.report-content{padding:0}.card{padding:26px 22px}.intro{padding-top:34px}.intro>.lede,.intro>h1{text-align:left}.intro>.lede{margin-bottom:28px}.choice-grid{grid-template-columns:1fr;gap:12px}.choice-grid button{min-height:108px;padding:22px}.masthead,.section-heading{align-items:flex-start;flex-direction:column}.search-wrap{margin-bottom:24px}.search-results{position:static;margin-top:8px}.portfolio-list label{grid-template-columns:auto 1fr}.portfolio-list label>b{grid-column:2}.actions{align-items:stretch;flex-direction:column-reverse}.actions button,.footer-actions button{width:100%}.footer-actions{align-items:stretch;flex-direction:column-reverse;padding-bottom:calc(14px + env(safe-area-inset-bottom))}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition:none!important}}