:root{--bg:#1a1e28;--surface:#222735;--surface-raised:#2a3040;--text:#f2f4f8;--text-muted:#9aa3b2;--border:#333b4d;--accent:#c9a227;--accent-strong:#dab63a;--accent-contrast:#14171f;--chart-neutral:#7c869a;--error-bg:#3a1f22;--error-text:#f0a9a2;--note-bg:#332a12;--note-text:#e2c877;color:var(--text);background:var(--bg);font:15px/1.5 Open Sans,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0}h1,h2,h3{color:var(--text);margin:0 0 .5em}.app-shell{max-width:960px;margin:0 auto;padding:24px}.app-header{background:var(--surface);border:1px solid var(--border);border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;row-gap:12px;margin-bottom:24px;padding:16px 20px;display:flex}.app-header h1{margin:0;font-size:34px}.app-brand-text h1{white-space:nowrap;align-items:center;display:flex}.wordmark{vertical-align:middle;width:auto;height:1em}.app-brand{flex-shrink:0;align-items:center;gap:16px;display:flex}.app-brand-text{flex-direction:column;gap:2px;display:flex}.amexa-logo{border-right:1px solid var(--border);flex-shrink:0;width:auto;height:32px;margin-right:12px;padding-right:12px;display:block}.app-header-controls{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.account-menu{align-items:center;gap:10px;display:flex}.account-email{color:var(--text-muted);font-size:13px}.logout-button{border:1px solid var(--border);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:6px;padding:8px 16px;font-size:13px;font-weight:600}.help-guide-button{border:1px solid var(--border);width:32px;height:32px;color:var(--text-muted);cursor:pointer;background:0 0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:15px;font-weight:700;display:flex}.help-guide-button:hover{border-color:var(--accent);color:var(--text)}.help-guide-overlay{z-index:100;background:#0a0c12a6;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.help-guide-panel{background:var(--surface);border:1px solid var(--border);border-radius:10px;width:100%;max-width:520px;max-height:85vh;padding:24px 28px 28px;overflow-y:auto}.help-guide-panel-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.help-guide-panel-header h2{margin:0;font-size:18px}.help-guide-close{width:28px;height:28px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:0;font-size:20px;line-height:1}.help-guide-close:hover{color:var(--text)}.help-guide-section{margin-top:18px}.help-guide-section h3{color:var(--accent-strong);margin:0 0 6px;font-size:14px}.help-guide-section p{color:var(--text);margin:0;font-size:14px;line-height:1.5}.pricing-disclaimer-badge{vertical-align:middle;background:var(--note-bg);color:var(--note-text);border:1px solid var(--border);white-space:nowrap;border-radius:999px;margin-top:4px;padding:2px 10px;font-size:11px;font-weight:600;display:inline-block}.logout-button:hover{border-color:var(--accent);color:var(--text)}.login-screen{justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.login-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;flex-direction:column;width:100%;max-width:380px;padding:28px 28px 24px;display:flex}.login-brand{align-items:center;gap:12px;margin-bottom:8px;display:flex}.login-brand .amexa-logo{border-right:none;height:26px;margin-right:0;padding-right:0}.login-brand h1{font-size:30px}.login-subtitle{color:var(--text-muted);margin:0 0 20px;font-size:13px}.login-submit{width:100%;margin-top:4px}.mode-toggle{border:1px solid var(--border);border-radius:8px;display:inline-flex;overflow:hidden}.mode-toggle button{background:var(--surface);color:var(--text-muted);cursor:pointer;border:none;padding:8px 20px;font-weight:600}.mode-toggle button.active{background:var(--accent);color:var(--accent-contrast)}.guided-help-toggle{border:1px solid var(--border);background:var(--surface);color:var(--text-muted);cursor:pointer;border-radius:8px;padding:8px 16px;font-weight:600}.guided-help-toggle[aria-pressed=true]{background:var(--accent);color:var(--accent-contrast);border-color:var(--accent)}.pricer-layout{align-items:flex-start;gap:20px;display:flex}.pricer-main{flex:1;min-width:0}.guided-help-panel{border:1px solid var(--border);background:var(--surface);border-radius:10px;flex:0 0 300px;padding:16px 20px;position:sticky;top:20px}.guided-help-panel h3{margin:0 0 8px;font-size:15px}.guided-help-panel p{color:var(--text-muted);margin:0;font-size:13px;line-height:1.5}fieldset{border:1px solid var(--border);background:var(--surface);border-radius:10px;margin:0 0 20px;padding:16px 20px}legend{padding:0 6px;font-weight:600}.field{flex-direction:column;gap:4px;margin-bottom:14px;display:flex}.field>span{color:var(--text-muted);font-size:13px;font-weight:600}.field-tooltip{margin-left:6px;display:inline-block;position:relative}.field-tooltip-icon{color:var(--text-muted);cursor:pointer;vertical-align:middle;font-size:14px;line-height:1;display:inline-block}.field-tooltip-icon:before{content:"ⓘ"}.field-tooltip-icon:hover{color:var(--accent)}.field-tooltip-content{z-index:30;background:var(--surface-raised);width:max-content;max-width:240px;color:var(--text);border:1px solid var(--border);border-radius:6px;padding:8px 10px;font-size:12px;font-weight:400;line-height:1.4;position:absolute;bottom:130%;left:50%;transform:translate(-50%);box-shadow:0 4px 12px #00000059}.field-tooltip-content:after{content:attr(data-text)}.field input[type=number],.field input[type=text],.field input[type=email],.field input[type=tel],.field input[type=date],.field select,.field textarea{border:1px solid var(--border);background:var(--surface-raised);color:var(--text);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;border-radius:6px;padding:8px 10px;font-family:inherit;font-size:14px}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent);outline:none}.radio-row{flex-wrap:wrap;align-items:center;gap:18px;display:flex}.radio-row label{align-items:center;gap:6px;font-size:14px;font-weight:400;display:flex}.question-block{margin-bottom:16px}.question-block>p{color:var(--text-muted);margin-bottom:6px;font-size:13px;font-weight:600}.questionnaire-generator-panel{border:1px solid var(--border);border-radius:8px;margin-bottom:16px;padding:16px}.questionnaire-generator-result{margin:12px 0;font-size:14px}button.primary,a.primary{background:var(--accent);color:var(--accent-contrast);cursor:pointer;border:none;border-radius:6px;padding:10px 22px;font-size:14px;font-weight:600}a.primary{text-decoration:none;display:inline-block}button.primary:hover:not(:disabled),a.primary:hover{background:var(--accent-strong)}button.primary:disabled{opacity:.6;cursor:not-allowed}.expert-params{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-bottom:16px;display:grid}.leg-row{border:1px solid var(--border);border-radius:8px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;margin-bottom:10px;padding:12px;display:grid;position:relative}.leg-row button.remove-leg{border:1px solid var(--border);cursor:pointer;color:var(--text-muted);background:0 0;border-radius:4px;font-size:12px;position:absolute;top:8px;right:8px}.results-view{flex-direction:column;gap:16px;margin-top:20px;display:flex}.candidate-card{border:1px solid var(--border);background:var(--surface);border-radius:10px;padding:18px 20px}.candidate-blurb{color:var(--text-muted);margin:0 0 12px;font-size:13px}.trade-terms{border:1px solid var(--border);background:var(--bg);border-radius:8px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin:0 0 16px;padding:12px 14px;display:grid}.trade-terms dt{color:var(--text-muted);font-size:12px;font-weight:600}.trade-terms dd{color:var(--text);margin:2px 0 0;font-size:14px}.trade-term-levels{margin:0;padding-left:18px}.trade-term-levels li{margin-bottom:2px}.leg-breakdown-table{border-collapse:collapse;width:100%;margin:0 0 16px;font-size:13px}.leg-breakdown-table caption{text-align:left;color:var(--text-muted);margin-bottom:6px;font-size:12px;font-weight:600}.leg-breakdown-table th,.leg-breakdown-table td{border:1px solid var(--border);text-align:left;padding:6px 10px}.leg-breakdown-table th{color:var(--text-muted);background:var(--surface-raised);font-weight:600}.leg-breakdown-table td{color:var(--text)}.plain-language-results{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin:0 0 16px;display:grid}.chart-unavailable{color:var(--text-muted);font-size:13px;font-style:italic}.candidate-note{color:var(--note-text);background:var(--note-bg);border:1px solid var(--border);border-radius:6px;margin:0 0 12px;padding:6px 10px;font-size:13px}.maturity-note-block{margin:4px 0 0}.maturity-note{color:var(--text-muted);margin:0;font-size:13px;font-style:italic}.settlement-roll-note{color:var(--note-text);background:var(--note-bg);border:1px solid var(--border);border-radius:6px;margin:0 0 6px;padding:6px 10px;font-size:13px}.plain-language-results dt{color:var(--text-muted);font-size:12px;font-weight:600}.plain-language-results dd{color:var(--accent);margin:2px 0 0;font-size:16px;font-weight:700}.technical-toggle{color:var(--text-muted);cursor:pointer;align-items:center;gap:6px;margin-top:14px;font-size:13px;display:flex}.greeks-table{border-collapse:collapse;margin-top:10px;font-size:13px}.greeks-table th,.greeks-table td{border:1px solid var(--border);text-align:left;padding:4px 10px}.greeks-table th{color:var(--text-muted);background:var(--surface-raised);font-weight:600}.greeks-table td{color:var(--text)}.book-deal-action{flex-wrap:wrap;align-items:flex-end;gap:12px;margin-top:16px;display:flex}.book-deal-exposure-picker{min-width:260px;margin-bottom:0}.book-deal-hint{color:var(--text-muted);margin-top:16px;font-size:13px;font-style:italic}.book-deal-confirmation{color:var(--note-text);background:var(--note-bg);border:1px solid var(--border);border-radius:6px;margin-top:16px;padding:8px 12px;font-size:13px}.book-deal-error{color:var(--error-text);margin-top:6px;font-size:13px}.error-banner{background:var(--error-bg);color:var(--error-text);border-radius:6px;margin:12px 0;padding:10px 14px;font-size:14px}.loading-indicator{color:var(--text-muted);margin:12px 0;font-size:14px}.active-client-field{color:var(--text-muted);align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.active-client-field input{border:1px solid var(--border);background:var(--surface-raised);color:var(--text);border-radius:6px;width:160px;padding:6px 10px;font-size:13px}.portfolio-empty-hint{color:var(--text-muted);margin-top:20px;font-style:italic}.portfolio-section{flex-direction:column;gap:20px;display:flex}.portfolio-block{border:1px solid var(--border);background:var(--surface);border-radius:10px;padding:18px 20px}.portfolio-block h2{margin-bottom:14px;font-size:16px}.portfolio-form{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:flex-end;gap:12px;margin-bottom:16px;padding-bottom:16px;display:flex}.portfolio-form .field{min-width:130px;margin-bottom:0}.policy-readonly-note{color:var(--text-muted);margin-bottom:14px;font-size:13px;font-style:italic}.ladder-explainer{color:var(--text-muted);margin:0 0 14px;font-size:13px}.ladder-explainer code{background:var(--surface-raised);border-radius:4px;padding:1px 5px;font-size:12px}.ladder-form-header{flex-wrap:wrap;gap:12px;margin-bottom:14px;display:flex}.ladder-rows-table{margin-bottom:12px}.ladder-rows-table input{border:1px solid var(--border);background:var(--surface-raised);width:90px;color:var(--text);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;border-radius:6px;padding:6px 8px;font-size:13px}.ladder-rows-table input:focus{border-color:var(--accent);outline:none}.ladder-summary{border-top:1px solid var(--border);margin-top:18px;padding-top:14px}.ladder-summary p{align-items:center;gap:10px;margin:0 0 8px;font-size:14px;display:flex}.portfolio-table{border-collapse:collapse;width:100%;font-size:13px}.portfolio-table th,.portfolio-table td{border:1px solid var(--border);text-align:left;padding:6px 10px}.portfolio-table th{color:var(--text-muted);background:var(--surface-raised);font-weight:600}.portfolio-table td{color:var(--text)}.ipv-explainer{color:var(--text-muted);margin:0 0 14px;font-size:13px}.ipv-checkbox-field{flex-direction:row-reverse;justify-content:flex-end;align-items:center;gap:8px;display:flex}.ipv-checkbox-field input{width:auto}.ipv-batch-detail-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.ipv-batch-detail-header h3{margin:0;font-size:15px}.ipv-pdf-link{border:1px solid var(--border);color:var(--text);border-radius:6px;padding:8px 16px;font-size:13px;font-weight:700;text-decoration:none;display:inline-block}.ipv-summary-facts{flex-wrap:wrap;gap:20px;margin:0 0 16px;padding:0;list-style:none;display:flex}.ipv-summary-facts li{flex-direction:column;gap:2px;display:flex}.ipv-summary-facts span{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:11px}.ipv-summary-facts strong{font-size:16px}.ipv-unresolved-errors{border:1px solid var(--border);border-radius:6px;margin-bottom:16px;padding:12px 16px}.ipv-unresolved-errors h4{margin:0 0 6px;font-size:13px}.ipv-unresolved-errors ul{color:var(--text-muted);margin:0;padding-left:18px;font-size:13px}.ipv-tier-badge{text-transform:uppercase;letter-spacing:.04em;border-radius:4px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.ipv-tier-badge--fine{color:var(--text-muted)}.ipv-tier-badge--review{border:1px solid var(--accent);color:var(--accent)}.ipv-tier-badge--material{background:var(--error-bg);color:var(--error-text)}.ipv-warnings{color:var(--text-muted);margin:6px 0 0;padding-left:16px;font-size:11px}.ipv-no-review-needed{color:var(--text-muted)}.ipv-review-form,.ipv-review-summary{flex-direction:column;gap:6px;min-width:180px;display:flex}.ipv-review-form select,.ipv-review-form textarea{border:1px solid var(--border);background:var(--surface-raised);color:var(--text);border-radius:6px;padding:6px 8px;font-size:12px}.ipv-review-summary p{color:var(--text-muted);margin:0;font-size:12px}.gap-recommendation-empty{color:var(--text-muted);font-size:13px;font-style:italic}.gap-recommendation-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.gap-recommendation{border:1px solid var(--border);border-radius:6px;justify-content:space-between;align-items:center;gap:16px;padding:10px 14px;font-size:13px;display:flex}.gap-recommendation p{margin:0}.gap-recommendation--under_hedged{background:var(--error-bg);color:var(--error-text)}.gap-recommendation--compliant,.gap-recommendation--no_policy,.gap-recommendation--no_exposure{color:var(--text-muted)}.exposure-status--defended{color:var(--accent);font-weight:600}.exposure-status--at_risk{color:var(--error-text);font-weight:600}.public-funnel{justify-content:center;min-height:100vh;padding:40px 20px;display:flex}.public-funnel-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;width:100%;max-width:640px;height:fit-content;padding:28px 32px 32px}.public-funnel-header{align-items:center;gap:16px;margin-bottom:16px;display:flex}.public-funnel-header h1{margin:0;font-size:32px}.public-funnel-header .amexa-logo{border-right:none;height:30px;margin-right:0;padding-right:0}.public-funnel-intro{color:var(--text-muted);margin:0 0 20px;font-size:14px;line-height:1.6}.public-funnel-note{background:var(--note-bg);color:var(--note-text);border:1px solid var(--border);border-radius:6px;margin:16px 0;padding:10px 14px;font-size:13px}.public-step-indicator{gap:4px;margin:0 0 24px;padding:0;list-style:none;display:flex}.public-step-indicator li{text-align:center;color:var(--text-muted);border-bottom:3px solid var(--border);flex:1;padding:6px 4px;font-size:11px;font-weight:600}.public-step-indicator li.active{color:var(--accent-strong);border-bottom-color:var(--accent)}.public-step-indicator li.done{color:var(--text);border-bottom-color:var(--accent)}.public-funnel-nav{justify-content:space-between;gap:12px;margin-top:20px;display:flex}.public-confirmation{text-align:center}.public-confirmation h1{margin:16px 0 12px;font-size:20px}.public-confirmation p{color:var(--text);font-size:14px;line-height:1.6}.policy-report{color:#000;background:#fff;border-radius:8px;margin:18px 0;padding:24px}.policy-report-header{border-bottom:3px solid #8a6d1a;align-items:center;gap:14px;margin-bottom:16px;padding-bottom:14px;display:flex}.policy-report-header .amexa-logo{height:44px}.policy-report-header .wordmark{color:#000;height:34px}.policy-report h2{color:#000;margin:20px 0 6px;font-size:15px}.policy-report p{color:#000;font-size:14px;line-height:1.6}.policy-report-prose{max-width:68ch;margin:32px 0}.policy-report table{border-collapse:collapse;width:100%;margin:12px 0;font-size:13px}.policy-report th{color:#fff;text-align:left;background:#000;border:1px solid #000;padding:8px 10px}.policy-report td{color:#000;background:#fff;border:1px solid #000;padding:8px 10px}.policy-report-metadata{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 32px;margin:20px 0;display:grid}.policy-report-fact{color:#000;margin:0;padding:2px 0;font-size:14px}.policy-report-fact-label{color:#444;text-transform:uppercase;letter-spacing:.06em;margin-right:6px;font-size:11px}.policy-report-fact-value--emphasize{font-size:18px;font-weight:700}.policy-report-callout{color:#000;background:#fff;border:1px solid #000;border-radius:6px;margin:16px 0;padding:12px 16px;font-size:12px}.policy-report-chart{background:#fff;border:1px solid #000;border-radius:6px;margin:12px 0;padding:12px}.policy-report-date-line{color:#444;margin:0 0 20px;font-size:12px}.policy-report-signoff{color:#000;margin:24px 0 0;font-size:14px}.policy-report-signoff strong{margin-bottom:4px;display:block}.policy-report-footer{text-align:center;border-top:1px solid #000;margin-top:20px;padding-top:12px}.policy-report-footer p{color:#444;margin:0;font-size:11px}.policy-report-footer a{color:#444}
