*{box-sizing:border-box}body{margin:0;min-height:100svh;display:grid;place-items:center;padding:24px}main{width:min(100%,440px);padding:32px;background:white;border:1px solid #D8D6D0;border-radius:4px}.brand{display:block;width:112px;height:auto;object-fit:contain;margin:0 0 32px}.eyebrow{color:#4D2C7A;font-size:12px;font-weight:700}h1{font-size:28px;line-height:1.15}h2{font-size:18px}p{line-height:1.5}label{display:block;font-weight:700;margin:18px 0 8px}input,button{width:100%;min-height:44px;border-radius:6px;font:inherit}input{border:1px solid #777;padding:10px}button{margin-top:20px;background:#050505;color:white;border:0;padding:12px;font-weight:700;cursor:pointer}button:disabled{opacity:.55;cursor:wait}.secondary{background:white;color:#050505;border:1px solid #777}:focus-visible{outline:3px solid #7A5CFF;outline-offset:3px}.notice{font-size:12px;color:#555;margin-top:24px}code{display:block;overflow-wrap:anywhere;padding:12px;background:#F6F5F1}#message{min-height:48px}[hidden]{display:none!important}@media(max-width:767px){body{padding:16px}main{padding:24px}}
textarea{display:block;width:100%;min-height:96px;margin-top:8px;padding:10px;border:1px solid #777;border-radius:6px;font:inherit;resize:vertical}form[data-review]{margin-top:24px;padding-top:12px;border-top:1px solid #ddd9d3}dd{margin:4px 0 16px;overflow-wrap:anywhere}
main.dashboard{width:min(100%,1120px)}main.dashboard #logout{width:auto;min-width:120px;margin-top:8px}main.dashboard ul{padding:0;list-style:none}main.dashboard li{margin:12px 0}main.dashboard li button{text-align:left;margin-top:0}#setup-qr{max-width:100%;height:auto;background:white;padding:8px;margin:20px auto}summary{cursor:pointer;line-height:1.5}details{margin:20px 0}#setup-secret{margin-top:12px}p[role=alert]{padding:12px;border-left:3px solid #8254bb;background:#f4f0f8}
/* Existing fynbase North-Star palette and bundled typography. */
@font-face{font-family:Inter;src:url('/candidate/inter.ttf') format('truetype');font-weight:100 900;font-display:swap}
@font-face{font-family:'Inter Tight';src:url('/candidate/inter-tight.ttf') format('truetype');font-weight:100 900;font-display:swap}
@font-face{font-family:'League Spartan';src:url('/assets/fonts/league-spartan/LeagueSpartan-VariableFont_wght.ttf') format('truetype');font-weight:100 900;font-display:swap}
:root{--font-ui:Inter,system-ui,sans-serif;--font-headline:'Inter Tight',Inter,system-ui,sans-serif;font-family:var(--font-ui);color:#2A2A2D;background:#F6F5F1}
.brand-wordmark{display:inline-block;color:#050505;font:800 34px/.8 'League Spartan',sans-serif;letter-spacing:-.065em;text-transform:lowercase;white-space:nowrap}
body{padding:40px 20px;border-top:6px solid #050505}
main{width:min(100%,480px);padding:40px;border-color:#D8D6D0;border-radius:4px;box-shadow:0 12px 40px #05050508}
.brand{display:block;width:112px;height:auto;object-fit:contain;margin:0 0 32px}
.eyebrow{color:#4D2C7A;font-size:11px;letter-spacing:.08em;text-transform:uppercase;margin:0 0 12px}
h1,h2{font-family:'Inter Tight',Inter,sans-serif;color:#050505;letter-spacing:-.014em}
h1{font-size:28px;font-weight:780;line-height:1.1;margin:0 0 20px}h2{font-size:20px;line-height:1.25}
p,label,summary,input,button{font-family:var(--font-ui);font-size:14px}#message{min-height:0;margin:0 0 24px;color:#2A2A2D}
button{background:#050505;min-height:44px;border-radius:6px}button:hover{background:#171719}.secondary{border-color:#D8D6D0;color:#050505;background:white}.secondary:hover{background:#F6F5F1}
input,textarea{border-color:#D8D6D0;min-height:44px}:focus-visible{outline-color:#4D2C7A}.notice{border-top:1px solid #D8D6D0;padding-top:20px;font-size:12px;line-height:1.5;color:#666}
a{color:#4D2C7A;text-underline-offset:3px}#setup{border-top:1px solid #D8D6D0;padding-top:16px}#setup h2{margin-top:0}details summary{font-size:12px}#setup-secret{font-size:12px}
@media(max-width:767px){body{padding:24px 16px;align-items:start}main{padding:28px 24px}h1{font-size:28px}.brand{margin-bottom:28px}}
main[data-screen=dashboard]{position:relative;padding:36px 40px}main[data-screen=dashboard] .brand{margin-bottom:28px}main[data-screen=dashboard] #logout{position:absolute;top:26px;right:40px;margin:0;font-size:12px;min-height:40px}main[data-screen=dashboard] .notice{margin:24px 0}main[data-screen=dashboard] section>h2{margin:28px 0 16px}.empty-state{padding:32px;border:1px solid #D8D6D0;border-radius:4px;background:#F6F5F1}.empty-state h3{font:700 20px 'Inter Tight',Inter,sans-serif;margin:0 0 10px;color:#050505}.empty-state p{max-width:56ch;margin:0}input[aria-invalid=true]{border-color:#8C2838}#otp-step input{font-variant-numeric:tabular-nums;letter-spacing:.2em;font-size:20px}#setup-qr{display:block}main[data-screen=mfa] #message{margin-bottom:20px}
@media(max-width:767px){main[data-screen=dashboard]{padding:28px 24px}main[data-screen=dashboard] #logout{position:static;margin:8px 0 0}.empty-state{padding:24px}}
.case-create{max-width:767px;margin:24px 0;padding:24px;border:1px solid #D8D6D0;border-radius:4px;background:#fff}.case-create label{margin-top:0}.case-create button{width:auto;min-width:148px}.dashboard section>button.secondary{width:auto;margin-right:12px}
.case-create-launch{display:block;width:auto;margin:4px 0 24px auto;padding:13px 20px;background:#050505;color:#fff}.case-create-view{max-width:767px}.case-create-view>.text-action{width:auto;margin:0 0 20px;padding:0;border:0;background:transparent;color:#050505;text-align:left}.case-create-view>.case-create{max-width:none;margin:0;background:#F6F5F1}
main[data-screen=caseCreate]{position:relative;width:min(100%,1120px);padding:36px 40px}main[data-screen=caseCreate] .brand{margin-bottom:24px}main[data-screen=caseCreate] #logout{position:absolute;top:26px;right:40px;width:auto;min-width:120px;margin:0;font-size:12px;min-height:40px}main[data-screen=caseCreate] .notice{margin:24px 0}.case-create-view{max-width:none}.case-create-view>.case-create{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px;padding:32px 36px}.case-create-view>.case-create>h3{display:none}.case-create-view>.case-create>p,.case-create-view>.case-create>fieldset,.case-create-view>.case-create>.case-create-housing,.case-create-view>.case-create>.case-create-validation{grid-column:1/-1}.case-create-view>.case-create>button{grid-column:2;justify-self:end;min-width:180px}.case-create-view>.case-create>.section-intro{margin-top:14px}
.dashboard-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:24px 0 32px}.dashboard-metrics div{border-top:3px solid #4D2C7A;background:#F6F5F1;padding:18px}.dashboard-metrics strong,.dashboard-metrics span{display:block}.dashboard-metrics strong{font:750 24px 'Inter Tight',Inter,sans-serif;color:#050505}.dashboard-metrics span{margin-top:6px;font-size:12px;color:#555}main.dashboard section>h3{font:700 17px 'Inter Tight',Inter,sans-serif;margin:0 0 12px}main.dashboard li button{display:flex;align-items:center;justify-content:space-between;gap:16px;background:#fff;color:#050505;border:1px solid #D8D6D0;padding:16px 18px}main.dashboard li button:hover{background:#F6F5F1}main.dashboard li button strong{font-size:14px;text-align:left}main.dashboard li button span{font-size:12px;color:#666;white-space:nowrap}
@media(max-width:767px){.dashboard-metrics{grid-template-columns:1fr}.dashboard-metrics div{padding:14px}main.dashboard li button{align-items:flex-start;flex-direction:column;gap:6px}main.dashboard li button span{white-space:normal}.case-create button,.case-create-launch{width:100%}.case-create-launch{margin:4px 0 20px}}
@media(max-width:767px){main[data-screen=caseCreate]{padding:28px 24px}main[data-screen=caseCreate] #logout{position:static;width:100%;margin:8px 0 0}.case-create-view>.case-create{grid-template-columns:1fr;padding:24px}.case-create-view>.case-create>p,.case-create-view>.case-create>fieldset,.case-create-view>.case-create>.case-create-housing,.case-create-view>.case-create>.case-create-validation,.case-create-view>.case-create>button{grid-column:1}.case-create-view>.case-create>button{justify-self:stretch;width:100%}}

/* Historical component support is isolated below the canonical workspace layer.
   Unlayered canonical rules always win without relying on source-order specificity. */
@layer legacy{
/* Harmonized North-Star integration surface. */
body{padding:32px 20px;border-top-width:4px}
main{padding:36px;border-radius:6px}
.brand{width:100px;margin-bottom:28px}
h1{font-size:26px;line-height:1.12;margin-bottom:18px}
main[data-screen=dashboard]{padding:32px 36px}
main[data-screen=dashboard] .brand{margin-bottom:24px}
main[data-screen=dashboard] #logout{right:36px}
main[data-screen=dashboard] section>h2{margin:24px 0 12px}
main[data-screen=dashboard] section>h2:focus-visible{outline:none}
.section-intro{margin:0 0 24px;color:#666;font-size:13px;line-height:1.55}
.case-controls{display:flex;justify-content:flex-end;margin:0 0 18px}
.case-controls label{width:min(100%,304px);margin:0;color:#4D2C7A;font-size:11px;letter-spacing:.06em;text-transform:uppercase}
.case-controls input{margin-top:6px;text-transform:none;letter-spacing:0;font-size:14px;background:#fff}
.case-create{padding:22px;border-radius:6px;background:#F6F5F1}
.case-detail h2{font-size:22px;line-height:1.3;margin-bottom:28px}
.case-detail dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 20px}
.case-detail dl>div{min-width:0}
.case-detail dl>div>dt{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:#666}
.case-detail dl>div>dd{margin:5px 0 0;font-size:14px;overflow-wrap:anywhere}
.text-action{width:auto;min-height:auto;margin:0 0 18px;padding:0;background:transparent;color:#4D2C7A;text-align:left}
.text-action:hover{background:transparent;text-decoration:underline}
.compact-action{width:auto!important;min-width:150px}
@media(max-width:767px){body{padding:20px 14px}main{padding:26px 22px}h1{font-size:25px}main[data-screen=dashboard]{padding:28px 24px}.case-detail dl{grid-template-columns:1fr}.case-controls label{width:100%}}

/* North-Star MFA numerals: the same compact fynbase face as the product UI. */
#otp-step #code{font-family:'Inter Tight',Inter,system-ui,sans-serif;font-size:20px;font-weight:700;font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;letter-spacing:.14em;line-height:1.2}

/* Form controls keep a clear label boundary, including the focus ring. */
.case-edit label,.case-create label,.document-upload label{display:grid;gap:9px;margin:18px 0 10px;line-height:1.35}
.customer-access-panel{display:grid;gap:12px;padding:24px;border:1px solid var(--line);border-left:4px solid var(--purple);background:#fff}.customer-access-panel h3{font-size:24px}.customer-access-status{color:var(--muted);font-size:14px}.customer-access-actions{display:flex;gap:10px;flex-wrap:wrap}.customer-access-actions button{width:auto}.customer-access-link{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}.customer-access-link input{min-height:44px;border:1px solid var(--line);border-radius:var(--radius-input);padding:9px 12px;font:14px/1.4 var(--font-ui)}@media(max-width:680px){.customer-access-link{grid-template-columns:1fr}.customer-access-actions button{width:100%}}
.case-edit label:first-child,.case-create label:first-of-type{margin-top:0}
.app-legal{display:flex;flex-wrap:wrap;gap:10px 20px;margin-top:48px;padding-top:20px;border-top:1px solid var(--line);font-size:12px}.app-legal a{color:var(--muted);text-decoration:none}.app-legal a:hover{text-decoration:underline;text-underline-offset:3px}
.document-upload{margin-top:28px;padding-top:24px;border-top:1px solid #D8D6D0}
.document-upload input[type=file]{padding:8px;background:#fff;font-weight:500}
.upload-selection{display:grid;gap:6px;margin:10px 0 0!important;padding:0!important;list-style:none!important}
.upload-selection li{margin:0!important;padding:8px 10px;border-left:3px solid #D8D6D0;background:#F6F5F1;font-size:12px;font-weight:600;overflow-wrap:anywhere}
.upload-selection li[data-state=uploading]{border-left-color:#4D2C7A}
.upload-selection li[data-state=complete]{border-left-color:#2E6B4E}
.upload-selection li[data-state=failed]{border-left-color:#8C2838}
.upload-selection li:has(.upload-remove){display:flex;align-items:center;justify-content:space-between;gap:12px}.upload-remove{width:auto!important;min-height:auto!important;margin:0!important;padding:5px 8px!important;border:1px solid #777!important;background:#fff!important;color:#050505!important;font-size:11px!important}.upload-remove:hover{background:#F1F0EC!important}
.document-history{margin:28px 0 0;padding:24px 0;border-top:1px solid #D8D6D0}
.document-history h3{margin:0 0 14px!important}.document-history>p{margin:0;color:#666;font-size:13px}
.document-history ul{display:grid;gap:8px;margin:0!important;padding:0!important;list-style:none!important}
.document-history li{display:flex;justify-content:space-between;gap:18px;margin:0!important;padding:12px 14px;border-left:3px solid #4D2C7A;background:#F6F5F1}
.document-history strong,.document-history span{font-size:12px}.document-history span{color:#666;text-align:right}
.document-history li>div{display:grid;gap:4px}.document-history small{font-size:11px;color:#666}.document-history li[data-state=clean]{border-left-color:#247A52}.document-history li[data-state=rejected],.document-history li[data-state=upload_failed]{border-left-color:#8C2838}
.work-module>.document-history>h3,.work-module>.document-history>p{padding-inline:16px}
.document-history li>div{min-width:0}.document-history strong,.document-history small{overflow-wrap:anywhere}
.document-workflow{margin:0 0 28px;padding:20px;border:1px solid #D8D6D0;background:#F6F5F1}.document-workflow h3{margin:0 0 14px!important}.document-workflow h4{font-size:13px;margin:18px 0 8px}.document-workflow ul{margin:0!important;padding-left:18px!important;list-style:disc!important}.document-workflow li{font-size:12px;margin:5px 0!important}.document-workflow-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.document-workflow-metrics div{padding:12px;background:#fff;border-top:2px solid #4D2C7A}.document-workflow-metrics strong,.document-workflow-metrics span{display:block}.document-workflow-metrics strong{font:700 19px 'Inter Tight',Inter,sans-serif}.document-workflow-metrics span{font-size:11px;color:#666;margin-top:3px}.next-action{font-weight:700;margin:16px 0 0}
.ocr-candidates{margin:0 0 28px;padding:20px;border:1px solid #D8D6D0}.ocr-candidates h3{margin:0 0 12px!important}.ocr-candidates ul{display:grid;gap:8px;margin:0!important}.ocr-candidates li{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.7fr);gap:16px;margin:0!important;padding:14px 16px 14px 13px;background:#fff;border-left:3px solid #2A2A2D}.ocr-candidates li[data-state=accepted]{border-left-color:#287A55}.ocr-candidates li[data-state=rejected]{border-left-color:#A63045}.ocr-candidates li>div{min-width:0}.ocr-candidates li>div>span{overflow-wrap:anywhere}.ocr-candidates strong,.ocr-candidates span{display:block;font-size:12px}.ocr-candidates span{color:#666;margin-top:4px}.candidate-value-facts{display:flex;flex-wrap:wrap;align-items:baseline;gap:5px 20px;min-width:0}.candidate-business-value .candidate-value-year,.candidate-business-value .candidate-value-amount{font-family:'Inter Tight',Inter,sans-serif;font-weight:750;font-variant-numeric:tabular-nums;line-height:1.15}.candidate-business-value .candidate-value-year{font-size:17px}.candidate-business-value .candidate-value-amount{font-size:17px;overflow-wrap:anywhere}.candidate-business-value .candidate-value-company{margin-top:7px;color:#525256;font-size:12px}.candidate-review{align-self:center}.candidate-review div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0}.candidate-review button{min-height:44px;margin:0;padding:8px 14px;font-size:12px}
.ocr-candidates h4{margin:20px 0 8px;font-size:14px}.ocr-candidates details{margin-top:18px;border-top:1px solid #D8D6D0;padding-top:12px}.ocr-candidates summary{cursor:pointer;font-weight:700;color:#666}.ocr-candidates details ul{margin-top:10px!important}
.candidate-missing-value{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 24px;align-items:center;margin:18px 0 0;padding:16px 18px;border-left:3px solid #4D2C7A;background:#F6F5F1}.candidate-missing-value strong{font-size:14px}.candidate-missing-value p{grid-column:1;margin:0;color:#525256;font-size:12px;line-height:1.5}.candidate-missing-value button{grid-column:2;grid-row:1 / span 2;min-height:44px;margin:0;white-space:nowrap}
.candidate-pending-groups{display:grid;gap:12px}.candidate-field-group{margin:0;padding:0;border:1px solid #D8D6D0;background:#fff}.candidate-field-group h5{margin:0;padding:12px 16px;border-bottom:1px solid #D8D6D0;background:#F1F0EC;font-size:13px}.candidate-field-group ul{gap:0!important}.candidate-field-group li{border-top:1px solid #E6E3DC}.candidate-field-group li:first-child{border-top:0}
.self-disclosure-workspace{margin:0 0 28px;padding:22px;border:2px solid #4D2C7A;background:#fff}.self-disclosure-workspace>h3{margin:0 0 8px!important}.readiness-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:16px 0}.readiness-summary>div{padding:12px;border-top:2px solid #4D2C7A;background:#F6F5F1}.readiness-summary strong,.readiness-summary span{display:block}.readiness-summary strong{font:750 18px 'Inter Tight',Inter,sans-serif}.readiness-summary span{margin-top:3px;color:#666;font-size:11px}.disclosure-tasks{padding:14px 16px;background:#FFF8E8;border-left:3px solid #B7852E}.disclosure-tasks h4{margin:0 0 8px;font-size:13px}.disclosure-tasks ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 24px;margin:0!important;padding-left:18px!important;list-style:disc!important}.disclosure-tasks li{margin:0!important;font-size:11px}.disclosure-identity{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:18px 0}.disclosure-identity>div{display:grid;gap:3px;padding:10px 12px;background:#F6F5F1}.disclosure-identity span{color:#666;font-size:11px}.disclosure-identity strong{font-size:12px;overflow-wrap:anywhere}.disclosure-shortcuts{display:flex;flex-wrap:wrap;gap:8px;padding:12px;border:1px solid #D8D6D0;background:#F6F5F1}.disclosure-shortcuts p{flex-basis:100%;margin:0;color:#666;font-size:11px}.disclosure-shortcuts button{width:auto}.disclosure-group{margin:10px 0;border:1px solid #D8D6D0}.disclosure-group>summary{padding:13px 14px;font-weight:750;color:#4D2C7A;background:#F6F5F1}.disclosure-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 16px;padding:4px 14px 16px}.disclosure-grid label{margin:12px 0 0;font-size:12px}.disclosure-grid input,.disclosure-grid select{margin-top:7px;padding:9px;border:1px solid #D8D6D0;border-radius:5px;background:#fff;font:inherit}.disclosure-grid small{display:block;margin-top:5px;color:#666;font-size:11px;font-weight:500}.self-disclosure-form>button{margin-top:14px}.bank-readiness{margin-top:18px;padding:16px;border-left:4px solid #B7852E;background:#FFF8E8}.bank-readiness.is-complete{border-left-color:#247A52;background:#F3F8F5}.bank-readiness h4{margin:0 0 6px;font-size:14px}.bank-readiness p{margin:0;font-size:12px}@media(max-width:767px){.readiness-summary,.disclosure-identity,.disclosure-grid,.disclosure-tasks ul{grid-template-columns:1fr}}
.dossier-approval label{display:block;margin-top:14px;font-weight:700}.dossier-approval textarea{display:block;width:100%;margin-top:7px;padding:10px;border:1px solid #D8D6D0;border-radius:5px;font:inherit}.bank-dossier-dialog{width:min(920px,calc(100vw - 32px));max-height:calc(100vh - 32px);padding:0;border:1px solid #D8D6D0;background:#fff;color:#171717}.bank-dossier-dialog::backdrop{background:rgba(23,23,23,.58)}.bank-dossier-preview{padding:32px}.dossier-brand{display:block;margin-bottom:24px;font:800 28px 'League Spartan','Inter Tight',Inter,sans-serif}.bank-dossier-preview h2{margin:0 0 8px;font-size:24px}.bank-dossier-preview>section{margin-top:24px;break-inside:avoid}.bank-dossier-preview h3{margin:0 0 10px;padding-bottom:6px;border-bottom:2px solid #4D2C7A;font-size:15px}.bank-dossier-preview dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 20px}.bank-dossier-preview dl>div{display:grid;grid-template-columns:minmax(140px,.8fr) 1.2fr;gap:8px}.bank-dossier-preview dt{color:#666;font-size:11px}.bank-dossier-preview dd{margin:0;font-size:12px;font-weight:700;overflow-wrap:anywhere}.bank-dossier-preview ol{margin:0;padding-left:22px}.bank-dossier-preview li{margin:6px 0;font-size:12px}.dossier-boundary{margin-top:28px;padding-top:12px;border-top:1px solid #D8D6D0;color:#666;font-size:11px}.dossier-actions{position:sticky;bottom:0;display:flex;gap:10px;padding:16px 32px;border-top:1px solid #D8D6D0;background:#fff}.dossier-actions button{margin:0}.dossier-actions .secondary{width:auto}.dossier-actions .workflow-primary{flex:1}@media(max-width:767px){.bank-dossier-preview{padding:20px}.bank-dossier-preview dl{grid-template-columns:1fr}.bank-dossier-preview dl>div{grid-template-columns:1fr}.dossier-actions{padding:12px 20px;flex-direction:column}.dossier-actions .secondary{width:100%}}@media print{body>*{display:none!important}.bank-dossier-dialog{position:static!important;display:block!important;width:auto!important;max-height:none!important;border:0!important}.bank-dossier-dialog,.bank-dossier-dialog *{visibility:visible!important}.bank-dossier-dialog .dossier-actions{display:none!important}.bank-dossier-preview{padding:0!important}.bank-dossier-preview h2{font-size:20pt}.bank-dossier-preview>section{page-break-inside:avoid}}
@media(max-width:767px){.document-history li{display:grid;grid-template-columns:1fr;gap:8px}.document-history span{text-align:left}}
@media(max-width:767px){.ocr-candidates li{grid-template-columns:1fr;gap:12px}.candidate-review{align-self:start;width:100%}.candidate-missing-value{grid-template-columns:1fr}.candidate-missing-value p,.candidate-missing-value button{grid-column:1;grid-row:auto}.candidate-missing-value button{width:100%;white-space:normal}.document-workflow-metrics{grid-template-columns:1fr}}
@media(max-width:767px){.candidate-value-facts{display:grid;gap:4px}.candidate-review div{grid-template-columns:1fr}}
.case-working-data label small{display:block;margin-top:5px;color:#666;font-size:11px;font-weight:500;line-height:1.45}.case-working-data label .field-warning{color:#8C2838;font-weight:700}
.case-review-completion{display:grid;gap:10px;margin-top:14px}.case-review-completion>label{display:flex;align-items:flex-start;gap:10px;margin:0;padding:11px 12px;border:1px solid #D8D6D0;background:#fff;font-size:12px;line-height:1.4}.case-review-completion input[type=checkbox]{width:18px;min-height:18px;flex:0 0 18px;margin:0}.case-review-completion>label:has(textarea){display:block;margin-top:6px}.case-review-completion button{margin-top:4px}
.case-audit-history{margin:28px 0;padding:18px 20px;border:1px solid #D8D6D0;background:#F6F5F1}.case-audit-history>summary{font-weight:750;color:#4D2C7A}.case-audit-history ul{display:grid;gap:8px;margin:14px 0 0!important}.case-audit-history li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 16px;margin:0!important;padding:10px 12px;background:#fff;border-left:3px solid #4D2C7A}.case-audit-history strong{font-size:12px}.case-audit-history span,.case-audit-history small{font-size:11px;color:#666}.case-audit-history small{grid-column:1/-1}
@media(max-width:767px){.case-audit-history li{grid-template-columns:1fr}.case-audit-history small{grid-column:1}}
.disclosure-tasks .text-action{width:auto;padding:0;border:0;text-align:left;font:inherit;color:#4D2C7A;background:transparent;text-decoration:underline;text-underline-offset:2px}
.disclosure-tasks li small{display:block;margin-top:2px;color:#666;font-size:11px}.missing-document-status{margin:14px 0;padding:0 16px;border-left:3px solid #4D2C7A;background:#F6F5F1}.missing-document-status>summary{padding:14px 0;font-size:12px;font-weight:750}.missing-document-status ul{display:grid;gap:6px;margin:10px 0 14px!important;padding:0!important;list-style:none!important}.missing-document-status li{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid #D8D6D0;background:#fff}.missing-document-status li span{padding:0;background:transparent;color:#72521c;font-size:11px;font-weight:800;letter-spacing:.02em}.missing-document-status li span::before{content:'! ';}.missing-document-status p{margin:0;color:#555;font-size:11px}.missing-document-status[open] p{margin:0 0 10px}
.disclosure-loans{margin:16px 0;padding:16px;border:1px solid #D8D6D0;background:#F6F5F1}.disclosure-loans>h4{margin:0 0 4px;color:#4D2C7A}.disclosure-loans>p{margin:0 0 12px;color:#666;font-size:11px}.disclosure-loans article{margin-top:8px;padding:14px;border-left:3px solid #4D2C7A;background:#fff}.disclosure-loans h5{margin:0 0 10px;font-size:13px}.disclosure-loans dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 18px;margin:0}.disclosure-loans dt{color:#666;font-size:11px}.disclosure-loans dd{margin:2px 0 0;font-size:12px;font-weight:750;overflow-wrap:anywhere}@media(max-width:767px){.disclosure-loans dl{grid-template-columns:1fr 1fr}}
.bank-dossier-preview dd small{display:block;margin-top:2px;color:#666;font-size:11px;font-weight:500;line-height:1.35}
.bank-dossier-preview .dossier-open-items{padding:14px;border:1px solid #D8D6D0;border-left:4px solid #050505;background:#F6F5F1}.bank-dossier-preview .dossier-open-items ul{margin:0;padding-left:20px}.bank-dossier-preview .dossier-open-items li{margin:5px 0;font-size:11px;line-height:1.4}
.disclosure-group.is-open{border-left:4px solid #B7852E}.disclosure-group.is-open>summary{background:#FFF8E8;color:#3D2B11}.disclosure-group.is-complete{border-left:4px solid #247A52}.disclosure-group.is-complete>summary{background:#F3F8F5;color:#18583A}.case-create select{width:100%;padding:10px;border:1px solid #D8D6D0;border-radius:5px;background:#fff;font:inherit}

/* North Star consolidation: one focused task, neutral work surfaces, restrained brand color. */
.eyebrow,.text-action,.disclosure-tasks .text-action,.case-audit-history>summary,.advisor-intake-followup legend{color:#2A2A2D}
.ocr-candidates li,.document-history li,.case-audit-history li,.advisor-document-plan li,.disclosure-group,.bank-readiness{border-left-color:#2A2A2D;background:#F6F5F1}
.ocr-candidates li[data-state=accepted],.ocr-candidates li[data-state=rejected],.document-history li[data-state=clean],.document-history li[data-state=rejected],.document-history li[data-state=quarantine]{border-left-color:#2A2A2D;background:#F6F5F1}
.ocr-candidates li[data-state=requires_human_review]{border-left-color:#4D2C7A;background:#fff}
.ocr-candidates strong,.ocr-candidates [data-state],.document-history [data-state],.advisor-document-plan li strong,.advisor-document-plan li.is-present strong,.advisor-document-plan li.is-missing strong,.completion-eyebrow,.completion-boundary,.bank-readiness strong{color:#2A2A2D}
.disclosure-group.is-open>summary,.disclosure-group.is-complete>summary,.case-audit-history{background:#F1F0EC;color:#050505}
input:focus,select:focus,textarea:focus,button:focus-visible,summary:focus-visible{outline-color:#050505;box-shadow:none}
.field-warning,[role=alert]{color:#7A323B}




.case-create-validation{margin:12px 0 0;padding:10px 12px;border-left:3px solid #050505;background:#F1F0EC;color:#050505;font-size:12px;font-weight:700}.case-create [aria-invalid=true]{border-color:#7A323B;outline:2px solid rgba(122,50,59,.15)}

.case-create-followup{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 18px;margin:8px 0 18px;padding:22px 24px 24px;border:1px solid #D8D6D0;border-radius:4px;background:#fff}.case-create-followup legend{padding:0 8px;color:#050505;font-size:15px;font-weight:800}.case-create-followup-intro{grid-column:1/-1;margin:0;color:#666;font-size:12px;line-height:1.5}.case-create-followup label,.case-create-followup label+label{display:grid;align-content:start;gap:8px;margin:0;font-size:12px;line-height:1.4}.case-create-followup select{min-height:46px;margin:0}.case-create-housing{display:grid!important;gap:9px!important;margin:2px 0 0!important;padding-top:4px}.case-create-housing select{min-height:46px}

.document-processing{margin:18px 0 0;padding:18px;border:1px solid #D8D6D0;border-left:4px solid #4D2C7A;background:#fff}.document-processing>span{display:block;color:#4D2C7A;font-size:11px;font-weight:800;letter-spacing:.08em}.document-processing h4{margin:5px 0 6px!important;font-size:16px!important}.document-processing>p{margin:0;color:#555;font-size:12px}.document-processing-stages{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:16px 0 12px!important;padding:0!important;list-style:none!important}.document-processing-stages li{display:grid;grid-template-columns:28px 1fr;gap:1px 8px;margin:0!important;padding:11px!important;border:1px solid #D8D6D0;background:#F6F5F1}.document-processing-stages li>span{grid-row:1/3;display:grid;place-items:center;width:26px;height:26px;border:1px solid #777;border-radius:50%;font-weight:800}.document-processing-stages strong,.document-processing-stages small{display:block}.document-processing-stages strong{font-size:11px}.document-processing-stages small{color:#666;font-size:11px}.document-processing-stages li[data-state=complete]>span{border-color:#286246;color:#286246}.document-processing-stages li[data-state=active]{border-color:#4D2C7A;background:#F6F2FA}.document-processing-stages li[data-state=active]>span{border-color:#4D2C7A;color:#4D2C7A}.document-processing-refresh{padding-top:10px;border-top:1px solid #D8D6D0;color:#4D2C7A!important;font-weight:700}@media(max-width:767px){.document-processing-stages{grid-template-columns:1fr}}
}

/* Canonical case workspace: shared palette, type scale, axes and action hierarchy. */
:root{--fyn-frame:#050505;--fyn-canvas:#FBFAF7;--fyn-surface:#F1F0EC;--fyn-border:#D8D6D0;--fyn-text:#050505;--fyn-muted:#666;--fyn-accent:#4D2C7A;--fyn-space-1:8px;--fyn-space-2:16px;--fyn-space-3:24px;--fyn-space-4:32px;--fyn-type-label:11px;--fyn-type-meta:12px;--fyn-type-body:14px;--fyn-type-module:16px;--fyn-type-section:20px;--fyn-type-page:28px}
.workflow-primary,.case-working-data>button{border:1px solid var(--fyn-frame);background:var(--fyn-frame);color:#fff}.workflow-primary:hover,.case-working-data>button:hover{background:#242426}.secondary{border:1px solid var(--fyn-frame);background:#fff;color:var(--fyn-frame)}.secondary:hover{background:var(--fyn-surface)}
main[data-screen=dashboard]{border-top-color:var(--fyn-frame)}.case-detail>h2{margin:10px 0 12px;padding-bottom:12px;border-bottom:2px solid var(--fyn-frame);font-size:22px}.case-detail>dl{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px 24px;margin-bottom:20px}.case-detail>dl>div>dt{font-size:var(--fyn-type-label)}.case-detail>dl>div>dd{font-size:var(--fyn-type-body)}
.primary-guidance{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 24px;margin:0 0 var(--fyn-space-3);padding:20px 24px;border:1px solid var(--fyn-border);border-left:4px solid var(--fyn-frame);background:var(--fyn-surface)}.primary-guidance>span,.primary-guidance h3,.primary-guidance>p,.primary-guidance>.missing-documents-details{grid-column:1}.primary-guidance>span{color:var(--fyn-text);font-size:var(--fyn-type-label);font-weight:800;letter-spacing:.08em}.primary-guidance h3{margin:0;font-size:17px}.primary-guidance>p{margin:0;color:var(--fyn-muted);font-size:12px}.primary-guidance>button{grid-column:2;grid-row:1/4;width:auto;min-width:220px;margin:0}.primary-guidance-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:12px;margin-top:12px}.primary-guidance .primary-guidance-actions button{width:auto;min-width:220px;margin:0}.primary-guidance-note{grid-column:1/-1;margin:0;text-align:right;color:var(--fyn-muted);font-size:11px;line-height:1.4}
.primary-guidance.is-waiting{border-color:#C9BED7;border-left:6px solid var(--fyn-accent);background:#F7F4FA}.primary-guidance.is-waiting>span{color:var(--fyn-accent)}.primary-guidance.is-waiting h3{display:flex;align-items:center;gap:9px}.primary-guidance.is-waiting h3::before{content:'';flex:0 0 auto;width:9px;height:9px;border-radius:50%;background:var(--fyn-accent);box-shadow:0 0 0 0 rgba(77,44,122,.28);animation:fyn-processing-pulse 1.8s ease-out infinite}@keyframes fyn-processing-pulse{0%{box-shadow:0 0 0 0 rgba(77,44,122,.28)}70%,100%{box-shadow:0 0 0 8px rgba(77,44,122,0)}}@media(prefers-reduced-motion:reduce){.primary-guidance.is-waiting h3::before{animation:none}}
.case-preview-value{margin:18px 0;padding:14px 16px;border-left:4px solid var(--fyn-accent);background:var(--fyn-surface);color:var(--fyn-text)!important;font-size:15px!important;font-weight:750;overflow-wrap:anywhere}.case-document-preview-dialog .object-document-dialog-actions{display:grid;gap:10px}.case-document-preview-dialog .object-document-dialog-actions button{width:100%;margin:0}
.case-object-link-list{display:grid;gap:8px;margin:18px 0 0!important;padding:0!important;list-style:none!important}.case-object-link-list li{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;margin:0!important;padding:14px 16px;border:1px solid var(--fyn-border);background:#fff}.case-object-link-list li>div{display:grid;gap:4px;min-width:0}.case-object-link-list strong{font-size:14px}.case-object-link-list span{color:var(--fyn-muted);font-size:12px;line-height:1.4}.case-object-link-list button{width:auto;min-width:220px;margin:0}@media(max-width:767px){.case-object-link-list li{grid-template-columns:1fr}.case-object-link-list button{width:100%;min-width:0}}
.missing-documents-details{margin:10px 0 0;border-top:1px solid var(--fyn-border)}.missing-documents-details>summary{padding:12px 0 4px;color:var(--fyn-text);font-size:12px;font-weight:750}.primary-missing-documents{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0 0!important;padding:0!important;list-style:none!important}.primary-missing-documents li{display:flex;align-items:center;gap:10px;min-height:48px;margin:0!important;padding:10px 12px;border:1px solid var(--fyn-border);border-left:3px solid var(--fyn-frame);background:#fff}.primary-missing-documents li span{flex:0 0 auto;padding:0;background:transparent;color:#72521c;font-size:11px;font-weight:800;letter-spacing:.02em}.primary-missing-documents li span::before{content:'! ';}.primary-missing-documents li strong{font-size:12px}
.work-module{margin:0 0 12px;overflow:hidden;border:1px solid var(--fyn-border);border-radius:4px;background:#fff}.work-module>summary{padding:15px 18px;color:var(--fyn-text);font-size:13px;font-weight:750;list-style-position:inside}.work-module>summary strong{margin-right:10px}.work-module>summary span{color:var(--fyn-muted);font-size:12px;font-weight:600;line-height:1.4}.work-module[open]>summary{padding-left:14px;border-bottom:1px solid var(--fyn-border);border-left:4px solid var(--fyn-frame);background:var(--fyn-surface)}.work-module>section,.work-module>form{margin:0;border:0;border-radius:0;box-shadow:none}.work-module:focus-within{outline:2px solid var(--fyn-frame);outline-offset:2px}
.advisor-intake,.case-working-data,.self-disclosure-workspace{margin:0;padding:24px;border:0;background:#fff}.advisor-intake>h3{margin:0 0 8px}.advisor-intake>.section-intro{max-width:72ch;margin:0 0 20px}.advisor-intake-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start;gap:24px}.advisor-intake-questions,.advisor-document-plan{min-width:0}.advisor-intake-questions h4,.advisor-document-plan h4{margin:0 0 12px;font-size:16px}.advisor-intake-answers{margin:0;border:1px solid var(--fyn-border)}.advisor-intake-answers>summary{padding:13px 14px;color:var(--fyn-text);font-size:12px;font-weight:750}.advisor-intake form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:16px}.advisor-intake label{display:grid;gap:7px;margin:0;font-size:12px}.advisor-intake select{width:100%;padding:10px;border:1px solid var(--fyn-border);border-radius:4px;background:#fff;font:inherit}.advisor-intake-followup{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:14px;border:1px solid var(--fyn-border)}.advisor-intake-followup legend{padding:0 6px;font-size:12px;font-weight:750}.advisor-intake form>button{grid-column:1/-1;margin:0}.advisor-document-plan{margin:0;padding:16px;background:var(--fyn-surface)}.advisor-document-plan ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:0!important;padding:0!important;list-style:none}.advisor-document-plan li{display:flex;justify-content:space-between;gap:12px;margin:0!important;padding:9px 10px;border-left:3px solid var(--fyn-frame);background:#fff;font-size:11px}.advisor-document-plan li strong{white-space:nowrap}.advisor-document-plan li.is-present strong{color:#286246}.advisor-document-plan li.is-missing strong{color:#7A323B}
.advisor-intake-grid{display:block}
.disclosure-tasks{margin:18px 0;border:1px solid var(--fyn-border);background:#fff}.disclosure-tasks>summary{padding:15px 16px;color:var(--fyn-text);font-size:13px;font-weight:750}.disclosure-tasks[open]>summary{border-bottom:1px solid var(--fyn-border);background:var(--fyn-surface)}.disclosure-tasks>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;padding:18px}.disclosure-tasks>[open]{} .disclosure-tasks [data-priority]{min-width:0}.disclosure-tasks [data-priority] h5{margin:0 0 10px;font-size:12px}.disclosure-tasks [data-priority] ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 16px;margin:0!important;padding:0!important;list-style:none}.disclosure-tasks [data-priority] li{margin:0!important;border-bottom:1px solid var(--fyn-border);font-size:12px;line-height:1.4}.disclosure-tasks [data-priority=review]{padding-left:18px;border-left:2px solid var(--fyn-accent)}.disclosure-tasks .text-action{width:100%;margin:0;padding:8px 0;border:0;background:transparent;color:var(--fyn-text);text-align:left;text-decoration:none}.disclosure-tasks .text-action:hover{text-decoration:underline;text-underline-offset:3px}
.case-progress-action{margin:0;padding:24px;border-left:4px solid var(--fyn-frame);background:var(--fyn-surface)}.case-progress-action h3{margin:0 0 8px}.case-progress-action>.section-intro{margin:0;color:var(--fyn-muted)}.case-progress-action .workflow-primary{width:auto;min-width:240px}.case-progress-action>strong{display:inline-block;color:#286246;font:750 15px 'Inter Tight',Inter,sans-serif}
.case-completion-summary{display:grid;grid-template-columns:minmax(0,2fr) minmax(240px,1fr);gap:8px 28px;margin:0;padding:24px;border-bottom:1px solid var(--fyn-border);background:#fff}.case-completion-summary .completion-eyebrow{grid-column:1;display:block;color:var(--fyn-accent);font-size:11px;font-weight:800;letter-spacing:.08em}.case-completion-summary h3,.case-completion-summary>.section-intro,.case-completion-summary>.completion-boundary,.case-completion-summary>.completion-next,.case-completion-summary>.completion-warning{grid-column:1}.case-completion-summary h3{margin:0}.case-completion-summary>.section-intro{margin:0}.case-completion-summary .completion-facts{grid-column:2;grid-row:1/5;display:grid;align-self:start;border-top:1px solid var(--fyn-frame)}.case-completion-summary .completion-facts>div{padding:12px 0;border-bottom:1px solid var(--fyn-border)}.completion-facts strong,.completion-facts span{display:block}.completion-facts span{margin-top:3px;color:var(--fyn-muted);font-size:12px}.case-completion-summary .completion-divider{grid-column:1/-1;height:1px;background:var(--fyn-border)}.completion-boundary{margin:8px 0 0;color:var(--fyn-muted);font-size:12px;font-weight:700}.completion-next,.completion-warning{margin:8px 0 0;font-size:12px}.completion-warning{color:#7A323B;font-weight:700}
.bank-dossier{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 28px;margin:0;padding:24px;border-left:4px solid var(--fyn-accent);background:#fff}.bank-dossier .completion-eyebrow,.bank-dossier h3,.bank-dossier>.section-intro{grid-column:1}.bank-dossier .completion-eyebrow{color:var(--fyn-accent);font-size:11px;font-weight:800;letter-spacing:.08em}.bank-dossier h3{margin:0}.bank-dossier>.section-intro{margin:0;max-width:520px}.bank-dossier .dossier-actions{position:static;grid-column:2;grid-row:1/4;display:flex;align-self:center;justify-content:flex-end;margin:0;padding:0;border:0;background:transparent}.bank-dossier .dossier-actions button{width:auto;min-width:220px;min-height:44px;margin:0;padding:10px 18px}.bank-dossier>.completion-boundary{grid-column:1/-1;margin:12px 0 0;padding-top:12px;border-top:1px solid var(--fyn-border)}.bank-dossier .dossier-actions button:disabled{border-color:#AAA;background:var(--fyn-surface);color:var(--fyn-muted);opacity:1;cursor:not-allowed}.dossier-brand{display:block;width:auto;height:28px;margin-bottom:24px;object-fit:contain}
.document-processing{border-left-color:var(--fyn-frame);background:#fff}.document-processing>span,.document-processing-refresh{color:var(--fyn-text)!important}.document-processing-stages li[data-state=active]{border-color:var(--fyn-frame);background:var(--fyn-surface)}.document-processing-stages li[data-state=active]>span{border-color:var(--fyn-frame);color:var(--fyn-frame)}
:focus-visible{outline:3px solid #7A5CFF!important;outline-offset:2px}.case-detail>h2:focus-visible{outline:none!important}
@media(max-width:1023px){.case-detail>dl{grid-template-columns:repeat(2,minmax(0,1fr))}.advisor-intake-grid{grid-template-columns:1fr}.case-completion-summary,.bank-dossier{grid-template-columns:1fr}.case-completion-summary .completion-facts,.bank-dossier .completion-eyebrow,.bank-dossier h3,.bank-dossier>.section-intro,.bank-dossier .dossier-actions,.bank-dossier>.completion-boundary{grid-column:1}.case-completion-summary .completion-facts,.bank-dossier .dossier-actions{grid-row:auto}.bank-dossier .dossier-actions{margin-top:16px}}
@media(max-width:767px){.case-detail>h2{font-size:20px}.case-detail>dl{grid-template-columns:1fr}.primary-guidance{grid-template-columns:1fr;padding:18px}.primary-guidance>button{grid-column:1;grid-row:auto;width:100%;min-width:0;margin-top:12px}.primary-guidance-actions{flex-direction:column}.primary-guidance .primary-guidance-actions button{width:100%;min-width:0}.primary-guidance-note{text-align:left}.primary-missing-documents,.advisor-intake form,.advisor-intake-followup,.advisor-document-plan ul,.disclosure-tasks>div,.disclosure-tasks [data-priority] ul{grid-template-columns:1fr}.disclosure-tasks [data-priority=review]{padding:16px 0 0;border-top:2px solid var(--fyn-accent);border-left:0}.advisor-intake,.case-working-data,.self-disclosure-workspace,.case-completion-summary,.bank-dossier{padding:18px}.work-module>summary span{display:block;margin:4px 0 0 18px}.case-progress-action .workflow-primary,.bank-dossier .dossier-actions{width:100%;min-width:0}.bank-dossier .dossier-actions{grid-template-columns:1fr}}

/* Case creation rhythm and case-status colors are part of the same North Star. */
.case-create-view>.case-create{column-gap:28px;row-gap:20px}
.case-create-view>.case-create>.section-intro{margin:0 0 2px;line-height:1.55}
.case-create-view>.case-create>label{display:grid;align-content:start;gap:8px;margin:0;line-height:1.4}
.case-create-view>.case-create>label input,.case-create-view>.case-create>label select{margin:0}
.case-create-view>.case-create>.case-create-followup{margin:2px 0 0}
.case-create-view>.case-create>.case-create-housing{margin:2px 0 0;padding-top:20px}
.case-create-view>.case-create>button{margin-top:10px}
.case-create-view>.case-create>.case-create-section-label{grid-column:1/-1;margin:12px 0 -8px;padding-top:18px;border-top:1px solid #D8D6D0;color:#56348F;font-size:11px;font-weight:800;letter-spacing:.08em}
.case-create-view>.case-create>p.case-create-section-label:first-of-type{margin-top:4px;padding-top:0;border-top:0}
.case-create-purchase{display:grid;grid-template-columns:1fr;gap:18px;padding:22px 24px 24px}
.case-create-purchase>label{margin:0}
.case-create-object-source{min-width:0;margin:0;padding:18px 0 0;border:0;border-top:1px solid #D8D6D0}
.case-create-object-source>legend{padding:0;color:#050505;font-size:14px;font-weight:800}
.case-create-object-source>p{margin:4px 0 14px;color:#666;line-height:1.5}
.case-create-source-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.case-create label.case-create-source-option{display:flex;align-items:flex-start;gap:12px;margin:0;padding:18px;border:1px solid #B9B6AF;border-radius:5px;background:#fff;cursor:pointer}
.case-create-source-option:has(input:checked){border-color:#56348F;box-shadow:inset 0 0 0 1px #56348F;background:#F7F4FB}
.case-create-source-option input{flex:0 0 auto;width:18px;height:18px;margin:2px 0 0;accent-color:#56348F}
.case-create-source-option span{display:grid;gap:5px}
.case-create-source-option strong{font-size:14px;line-height:1.35}
.case-create-source-option small{color:#666;font-size:12px;line-height:1.45}
.case-progress-action>strong{color:var(--fyn-accent)}
.completion-warning{color:var(--fyn-text)}
.case-working-data label .field-warning,.field-warning,[role=alert]{color:var(--fyn-text)}
.work-module>.customer-access-panel{gap:10px;padding:24px;background:#fff}
.work-module>.customer-access-panel h3{margin:0;font-size:var(--fyn-type-module)}
.work-module>.customer-access-panel>.section-intro,.work-module>.customer-access-panel>.customer-access-status{margin:0;color:var(--fyn-muted);font-size:var(--fyn-type-meta);line-height:1.55}
.work-module>.customer-access-panel>.customer-access-status.is-delivered{display:grid;gap:4px;margin-top:8px;padding:14px 16px;border-left:4px solid var(--fyn-accent);background:var(--fyn-surface);color:var(--fyn-text)}.customer-access-status.is-delivered strong{font:750 14px/1.4 'Inter Tight',Inter,sans-serif}.customer-access-status.is-delivered span{color:var(--fyn-muted);font-size:12px}
.work-module>.customer-access-panel>.customer-access-actions{justify-content:flex-end;margin-top:8px;padding-top:16px;border-top:1px solid var(--fyn-border)}
.work-module>.customer-access-panel>.customer-access-actions button{width:auto;min-width:200px;margin:0}

/* Advisor document lifecycle: active work, controlled reanalysis and audit archive. */
.document-history li>div:last-child{display:grid;justify-items:end;gap:8px}.document-history li>div:last-child>div{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.document-inline-action{width:auto!important;min-height:34px!important;margin:0!important;padding:7px 10px!important;border:1px solid #BDB9B1!important;background:#fff!important;color:#2A2A2D!important;font:700 11px/1.2 var(--font-ui)!important}.document-inline-action:hover{border-color:#4D2C7A!important;color:#4D2C7A!important}
.excluded-documents{margin-top:14px;border-top:1px solid #D8D6D0}.excluded-documents>summary{padding:12px 0;color:#666;font-size:12px;font-weight:700}.excluded-documents ul{gap:4px}.excluded-documents li{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:9px 12px;border-left-color:#8C2838;background:#FAF8F7}.excluded-documents li span{text-align:left}
.document-action-dialog{width:min(560px,calc(100% - 32px));padding:0;border:1px solid #D8D6D0;background:#fff;color:#2A2A2D}.document-action-dialog::backdrop{background:rgba(20,18,18,.48)}.document-action-dialog form{display:grid;gap:16px;padding:28px}.document-action-dialog h3,.document-action-dialog p{margin:0}.document-action-dialog p{color:#666;font-size:14px;line-height:1.55}.document-action-dialog label{display:grid;gap:7px;font-size:13px;font-weight:750}.document-action-dialog textarea{min-height:96px;padding:12px;border:1px solid #AFAA9F;border-radius:0;font:14px/1.45 var(--font-ui);resize:vertical}.document-action-dialog-actions{display:flex;justify-content:flex-end;gap:10px}.document-action-dialog-actions button{width:auto;min-width:150px;margin:0}
.missing-document-request{width:auto!important;margin:0 0 16px!important;padding:11px 16px!important;background:#111!important;color:#fff!important;font-size:12px!important}
@media(max-width:767px){.document-history li>div:last-child{justify-items:start}.document-history li>div:last-child>div{justify-content:flex-start}.document-inline-action{width:100%!important}.excluded-documents li{grid-template-columns:1fr}.document-action-dialog-actions{display:grid}.document-action-dialog-actions button,.missing-document-request{width:100%!important}}
@media(max-width:767px){.case-create-view>.case-create{row-gap:18px}.case-create-purchase{padding:20px 18px}.case-create-source-options{grid-template-columns:1fr}.case-create label.case-create-source-option{padding:16px}}
@media(max-width:1023px){.case-create-followup{grid-template-columns:1fr;padding:20px 18px}.case-create-followup-intro{grid-column:1}}

/* Aktenausgabe: North-Star surface with one restrained fynbase accent. */
.payroll-plausibility{display:grid;gap:5px;margin:16px 0;padding:14px 16px;border:1px solid #D9CFE5;border-left:4px solid #4D2C7A;background:#F6F2FA}.payroll-plausibility strong{color:#4D2C7A;font-size:12px}.payroll-plausibility span{color:#444;font-size:12px;line-height:1.5}

/* Kaufobjekt: nachvollziehbare Einzelprüfungen statt eines pauschalen Ratings. */
.purchase-object-checks{margin:0;padding:24px;background:#fff}.purchase-object-eyebrow{display:block;margin:0 0 8px;color:var(--fyn-accent);font-size:11px;font-weight:800;letter-spacing:.1em}.purchase-object-checks>h3{margin:0 0 8px}.purchase-object-checks>.section-intro{max-width:78ch;margin:0;color:var(--fyn-muted);line-height:1.55}.purchase-object-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:22px}.purchase-object-check-grid article{display:flex;flex-direction:column;min-width:0;padding:18px;border:1px solid var(--fyn-border);border-top:3px solid var(--fyn-frame);background:var(--fyn-surface)}.purchase-object-check-grid article[data-state=review]{border-top-color:var(--fyn-accent);background:#FAF8FC}.purchase-object-check-grid article>div{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.purchase-object-check-grid h4{margin:0;font-size:15px}.purchase-object-check-grid article>div>span{flex:0 0 auto;padding:4px 7px;border:1px solid var(--fyn-border);background:#fff;color:var(--fyn-muted);font-size:10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.purchase-object-check-grid article>p{margin:10px 0 0;color:var(--fyn-muted);font-size:12px;line-height:1.5}.purchase-object-check-grid dl{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:5px 12px;margin:15px 0 0;padding-top:12px;border-top:1px solid var(--fyn-border);font-size:11px}.purchase-object-check-grid dt{color:var(--fyn-muted)}.purchase-object-check-grid dd{margin:0;font-weight:700;overflow-wrap:anywhere}.purchase-object-check-grid details{margin-top:auto;padding-top:14px}.purchase-object-check-grid summary{cursor:pointer;color:var(--fyn-accent);font-size:11px;font-weight:750}.purchase-object-check-grid ul{margin:8px 0 0!important;padding-left:17px!important}.purchase-object-check-grid li{margin:4px 0!important;color:var(--fyn-muted);font-size:11px;line-height:1.4}
@media(max-width:767px){.purchase-object-check-grid{grid-template-columns:1fr}.purchase-object-checks{padding:18px}.purchase-object-check-grid dl{grid-template-columns:1fr}}


/* Upload is a distinct task surface inside the documents module. */
.work-module>.document-upload,.document-upload{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px 24px;margin:28px 16px 20px;padding:24px;border:1px solid var(--fyn-border);border-left:4px solid var(--fyn-frame);background:var(--fyn-surface)}
.document-upload-header{grid-column:1/-1;display:grid;gap:5px;padding-bottom:16px;border-bottom:1px solid var(--fyn-border)}
.document-upload-header span{color:#4D2C7A;font-size:11px;font-weight:800;letter-spacing:.1em}.document-upload-header h3{margin:0!important;font-size:18px}.document-upload-header p{max-width:767px;margin:0;color:var(--fyn-muted);font-size:11px;line-height:1.5}
.advisor-upload-picker{position:relative;grid-column:1/-1;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:18px;padding:16px;border:1px solid var(--fyn-border);background:#fff}
.advisor-upload-file-input{position:absolute!important;width:1px!important;min-width:0!important;height:1px!important;min-height:0!important;margin:0!important;padding:0!important;opacity:0;overflow:hidden;pointer-events:none}
.advisor-upload-picker-action{display:inline-flex!important;align-items:center;justify-content:center;gap:10px;width:max-content;margin:0!important;padding:12px 18px;border:1px solid var(--fyn-text);border-radius:4px;background:#fff;color:var(--fyn-text);font-size:14px;font-weight:800;letter-spacing:0;cursor:pointer}
.advisor-upload-picker-action>span:first-child{color:var(--fyn-accent);font-size:24px;font-weight:500;line-height:.75}.advisor-upload-picker-action:hover{background:#F6F2FA}.advisor-upload-file-input:focus-visible+.advisor-upload-picker-action{outline:3px solid #7C5CFC;outline-offset:3px}
.advisor-upload-picker-copy{display:grid;gap:3px;min-width:0}.advisor-upload-picker-copy strong{font-size:14px}.advisor-upload-picker-copy small{color:var(--fyn-muted);font-size:11px;line-height:1.4}
.advisor-upload-progress{grid-column:1/-1;display:grid;gap:8px;padding:14px 16px;border-left:4px solid var(--fyn-accent);background:#F6F2FA}.advisor-upload-progress[hidden]{display:none}.advisor-upload-progress>div{display:flex;justify-content:space-between;gap:16px;font-size:12px}.advisor-upload-progress span{color:var(--fyn-muted);font-weight:700}.advisor-upload-progress progress{width:100%;height:8px;border:0;border-radius:0;background:#DED8E8;accent-color:var(--fyn-accent)}.advisor-upload-progress progress::-webkit-progress-bar{background:#DED8E8}.advisor-upload-progress progress::-webkit-progress-value{background:var(--fyn-accent)}.advisor-upload-progress progress::-moz-progress-bar{background:var(--fyn-accent)}
.document-upload .upload-selection{grid-column:1;margin:0!important;align-self:start}.document-upload>button[type=submit]{grid-column:2;align-self:end;width:auto;min-width:260px;min-height:48px;margin:0}
@media(max-width:767px){.work-module>.document-upload,.document-upload{grid-template-columns:1fr;margin:20px 12px;padding:18px}.advisor-upload-picker{grid-template-columns:1fr}.advisor-upload-picker-action{width:100%;box-sizing:border-box}.document-upload .upload-selection,.document-upload>button[type=submit]{grid-column:1}.document-upload>button[type=submit]{width:100%;min-width:0}}

/* Canonical company review: one axis, one card language, one responsive system. */
.business-income-analysis{position:relative;margin:24px 0;padding:24px 0 0;border:0;border-top:2px solid var(--fyn-frame);background:#fff;color:var(--fyn-text)}
.business-income-analysis::before{content:'UNTERNEHMENSPRÜFUNG · GGF';display:block;margin:0 0 8px;padding:0;color:#4D2C7A;font-size:11px;font-weight:800;line-height:1.3;letter-spacing:.1em}
.business-income-analysis h4{margin:0 0 8px;font:750 20px/1.25 'Inter Tight',Inter,sans-serif;letter-spacing:-.02em}
.business-income-analysis>p{max-width:78ch;margin:0;color:var(--fyn-muted);font-size:14px;line-height:1.5}
.business-income-analysis dl{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px;margin:24px 0 16px}
.business-income-analysis dl>div{box-sizing:border-box;min-width:0;padding:20px;border:1px solid var(--fyn-border);border-radius:4px;background:var(--fyn-surface)}
.business-income-analysis dt{margin:0;color:var(--fyn-muted);font-size:11px;font-weight:700;line-height:1.3;letter-spacing:.08em;text-transform:uppercase}
.business-income-analysis dd{margin:10px 0 0;color:var(--fyn-text);font:750 16px/1.25 'Inter Tight',Inter,sans-serif;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.business-income-analysis dl small{display:block;margin-top:12px;color:var(--fyn-muted);font-size:12px;font-weight:600;line-height:1.45}
.business-income-analysis dl>div[data-metric=company]{grid-column:1/-1;display:flex;flex-direction:column;justify-content:center;gap:8px;min-height:88px;border-left:4px solid #4D2C7A;background:#fff}
.business-income-analysis dl>div[data-metric=company] dt,.business-income-analysis dl>div[data-metric=company] dd{margin:0}
.business-income-analysis dl>div[data-metric=company] dd{font-size:18px;line-height:1.25;letter-spacing:-.01em}
.business-income-analysis dl>div[data-metric=bwa],.business-income-analysis dl>div[data-metric=history]{grid-column:span 6;min-height:188px}
.business-income-analysis dl>div[data-metric=bwa]{display:flex;flex-direction:column;justify-content:center;border-left:4px solid #4D2C7A;background:#F8F5FB}
.business-income-analysis dl>div[data-metric=bwa] dd{font-size:24px;line-height:1.12;letter-spacing:-.02em}
.business-income-analysis dl>div[data-metric=history]{display:flex;flex-direction:column}
.business-income-analysis dl>div[data-metric=history] dd{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:8px;flex:1}
.business-year-result{display:grid;grid-template-rows:auto auto 1fr;align-content:start;gap:5px;min-width:0;padding:10px;border:1px solid var(--fyn-border);border-radius:3px;background:#fff}
.business-year-result small{margin:0!important;color:var(--fyn-muted)!important;font-size:11px!important;line-height:1.3!important;letter-spacing:.06em;text-transform:uppercase}
.business-year-result strong{font-size:15px;line-height:1.2;letter-spacing:-.01em;overflow-wrap:anywhere}
.business-year-result[data-draft=true]{border-color:#CDBEE0;background:#F7F2FB}.business-year-result[data-draft=true] small,.business-year-result[data-result=loss] small{color:#4D2C7A!important}
.business-year-track{display:block;align-self:end;width:100%;height:5px;margin-top:12px;background:#E5E1E8;overflow:hidden}.business-year-bar{display:block;height:100%;background:var(--fyn-frame)}.business-year-result[data-draft=true] .business-year-bar,.business-year-result[data-result=loss] .business-year-bar{background:#4D2C7A}
.business-income-details{margin:0 0 16px;padding:0;border-top:1px solid var(--fyn-border);overflow-x:auto}.business-income-details summary{padding:14px 0;color:#4D2C7A;font-size:12px;font-weight:750;line-height:1.4}.business-income-details table{width:100%;min-width:760px;border-collapse:collapse;background:#fff;font-size:12px}.business-income-details th,.business-income-details td{padding:10px;border-bottom:1px solid var(--fyn-border);text-align:left;vertical-align:top}.business-income-details p{margin:10px 0 0;color:var(--fyn-muted);font-size:12px}
.business-income-assessment{padding-bottom:2px}.business-income-assessment>strong{display:block;margin:2px 0 8px;font-size:14px}.business-income-assessment>ul{margin:0 0 14px;padding-left:18px}.business-income-assessment>ul li,.business-income-assessment>.business-income-proposal{margin:5px 0;color:var(--fyn-muted);font-size:12px;line-height:1.45}
@media(max-width:1023px){.business-income-analysis dl>div[data-metric=bwa],.business-income-analysis dl>div[data-metric=history]{grid-column:1/-1}.business-income-analysis dl>div[data-metric=history] dd{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:767px){.business-income-analysis{padding-top:20px}.business-income-analysis h4{font-size:18px}.business-income-analysis dl{grid-template-columns:1fr;gap:12px;margin-top:20px}.business-income-analysis dl>div,.business-income-analysis dl>div[data-metric=company],.business-income-analysis dl>div[data-metric=bwa],.business-income-analysis dl>div[data-metric=history]{grid-column:1;padding:16px}.business-income-analysis dl>div[data-metric=bwa] dd{font-size:21px}.business-income-analysis dl>div[data-metric=history] dd{grid-template-columns:1fr}.business-year-result{grid-template-columns:84px 1fr;grid-template-rows:auto auto}.business-year-track{grid-column:1/-1}}

/* Case workspace hierarchy: neutral surfaces, violet only as a precise brand accent. */
body[data-screen=caseDetail] .advisor-sidebar button[aria-current=page]{box-shadow:inset 3px 0 0 var(--fyn-accent);background:var(--fyn-surface);color:var(--fyn-accent)}
.case-detail>.case-eyebrow{margin:2px 0 6px;color:var(--fyn-accent);font-size:11px;font-weight:800;letter-spacing:.1em}
.case-detail>.case-eyebrow+h2{margin-top:0}
.case-detail .primary-guidance.is-action,.case-detail .primary-guidance.is-disclosure,.case-detail .primary-guidance.is-apply-accepted{border-color:var(--fyn-border);border-left:4px solid var(--fyn-accent);background:var(--fyn-surface)}
.case-detail .primary-guidance.is-action>span,.case-detail .primary-guidance.is-disclosure>span,.case-detail .primary-guidance.is-apply-accepted>span{color:var(--fyn-accent)}
.case-detail .work-module{margin-bottom:14px}.case-detail .work-module>summary{display:flex;align-items:center;gap:10px;border-left:4px solid transparent;background:#fff;list-style:none}.case-detail .work-module>summary::-webkit-details-marker{display:none}.case-detail .work-module>summary::before{content:'›';flex:0 0 auto;color:var(--fyn-accent);font-size:18px;font-weight:800;line-height:1;transform:rotate(0);transition:transform 140ms ease}.case-detail .work-module[open]>summary::before{transform:rotate(90deg)}.case-detail .work-module>summary:hover{background:var(--fyn-surface)}.case-detail .work-module>summary span{display:inline-flex;align-items:center;gap:6px;margin-left:auto;padding:0;border:0;border-radius:0;background:transparent;color:var(--fyn-muted);font-size:12px;font-weight:600;line-height:1.4;white-space:normal;text-align:right}.case-detail .work-module[open]>summary{padding-left:14px;border-left-color:var(--fyn-accent);background:var(--fyn-surface)}.case-detail .work-module[open]>summary strong{color:var(--fyn-accent)}.case-detail .work-module[data-state=complete]>summary span{color:var(--fyn-text)}.case-detail .work-module[data-state=complete]>summary span::before{content:'✓';color:var(--fyn-accent);font-weight:800}.case-detail .work-module[data-state=review]>summary span{color:var(--fyn-accent)}.case-detail .work-module[data-state=warning]>summary span{color:#72521c}
.case-detail .case-object-link{margin:16px 0 0;padding:22px;border:1px solid var(--fyn-border);border-left:4px solid var(--fyn-accent);background:var(--fyn-surface)}.case-detail .case-object-link>.completion-eyebrow{color:var(--fyn-accent)}.case-detail .case-object-link>h3{margin:4px 0 8px}.case-detail .case-object-link>.section-intro{margin-bottom:0}.case-detail .case-object-link[data-state=complete]{border-color:var(--fyn-border);border-left-color:var(--fyn-accent);background:var(--fyn-surface)}.case-detail .case-object-link[data-state=complete]>.completion-eyebrow{color:var(--fyn-accent)}
.case-detail .case-object-link-list li,.case-detail .case-object-link-list li[data-state=ready]{border-left:3px solid var(--fyn-accent);background:#fff}.case-object-title{display:grid!important;grid-template-columns:minmax(0,1fr);align-items:start;gap:4px}.case-object-status,.case-object-link-list li[data-state=ready] .case-object-status{justify-self:start;width:auto;padding:0;border:0;border-radius:0;background:transparent;color:var(--fyn-accent)!important;font-size:12px!important;font-weight:700;letter-spacing:0;text-transform:none}.case-object-link-list li[data-state=ready] .case-object-status{color:var(--fyn-text)!important}
@media(max-width:767px){.case-detail .work-module>summary{align-items:flex-start;flex-wrap:wrap}.case-detail .work-module>summary span{flex-basis:calc(100% - 30px);margin:2px 0 0 28px;text-align:left}.case-detail .case-object-link{padding:18px}.case-object-title{grid-template-columns:1fr}.case-object-status{justify-self:start}}
.advisor-sidebar{display:none}.advisor-sidebar button{width:100%;min-height:44px;margin:0;padding:10px 12px;border:0;border-radius:4px;background:transparent;color:#2a2a2d;text-align:left;font:650 14px/1.35 Inter,system-ui,sans-serif}.advisor-sidebar button:hover{background:#ece9e4}.advisor-sidebar>img{display:block;width:108px;height:auto;margin:4px 0 36px}.advisor-sidebar nav{display:grid;gap:4px}.advisor-sidebar-actions{display:grid;margin-top:auto;padding-top:20px;border-top:1px solid #d8d6d0}.advisor-sidebar>#advisor-sidebar-logout{margin-top:4px;color:#67645f}.app-legal{display:flex!important;align-items:center;justify-content:space-between;gap:18px 32px;margin:48px -40px -36px!important;padding:20px 40px!important;border-top:1px solid #d8d6d0!important;background:#f1f0ec}.app-legal .footer-brand{color:#67645f;font-size:12px;font-weight:650;white-space:nowrap}.app-legal nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px 20px}.app-legal nav a{min-height:0;color:#67645f;text-decoration:none}.app-legal nav a:hover{color:#4d2c7a;text-decoration:underline;text-underline-offset:3px}body[data-screen=dashboard],body[data-screen=caseCreate]{display:grid;grid-template-columns:224px minmax(0,1120px);place-content:start center;align-items:start;gap:24px;padding:28px 24px;background:#f6f5f1}body[data-screen=dashboard] .advisor-sidebar,body[data-screen=caseCreate] .advisor-sidebar{position:sticky;top:28px;display:flex;flex-direction:column;min-height:calc(100svh - 56px);padding:28px 20px;border:1px solid #d8d6d0;border-radius:6px;background:#fff}body[data-screen=dashboard] main,body[data-screen=caseCreate] main{margin:0}body[data-screen=dashboard] main>.brand,body[data-screen=caseCreate] main>.brand{display:none}body[data-screen=dashboard] main>#logout,body[data-screen=caseCreate] main>#logout{display:none!important}@media(max-width:900px){body[data-screen=dashboard],body[data-screen=caseCreate]{grid-template-columns:1fr;padding:16px;gap:12px}body[data-screen=dashboard] .advisor-sidebar,body[data-screen=caseCreate] .advisor-sidebar{position:static;display:grid;grid-template-columns:auto 1fr auto;align-items:center;min-height:0;padding:12px 14px}body[data-screen=dashboard] .advisor-sidebar>img,body[data-screen=caseCreate] .advisor-sidebar>img{width:88px;margin:0 18px 0 0}body[data-screen=dashboard] .advisor-sidebar nav,body[data-screen=caseCreate] .advisor-sidebar nav{display:flex;gap:4px}body[data-screen=dashboard] .advisor-sidebar nav button,body[data-screen=caseCreate] .advisor-sidebar nav button{width:auto}.advisor-sidebar-actions{margin:0 0 0 auto;padding:0 8px;border:0}.advisor-sidebar>#advisor-sidebar-logout{display:none}.app-legal{margin:40px -24px -28px!important;padding:18px 24px!important}}@media(max-width:620px){body[data-screen=dashboard] .advisor-sidebar,body[data-screen=caseCreate] .advisor-sidebar{grid-template-columns:1fr auto}.advisor-sidebar>img{grid-column:1}.advisor-sidebar nav{grid-column:1/-1;grid-row:2;overflow-x:auto;margin-top:8px}.advisor-sidebar-actions{grid-column:2;grid-row:1}.app-legal{align-items:flex-start;flex-direction:column}.app-legal nav{justify-content:flex-start}}
/* Canonical fynbase CTA contract: one visual language across advisor workflows. */
button,.workflow-primary,.secondary{min-height:44px;border-radius:4px;font:700 13px/1.2 var(--font-ui);transition:background-color 140ms ease,border-color 140ms ease,color 140ms ease,opacity 140ms ease}.workflow-primary,button:not(.secondary):not(.text-action):not(.advisor-sidebar button):not(main.dashboard li button){border:1px solid #050505;background:#050505;color:#fff}.workflow-primary:hover,button:not(.secondary):not(.text-action):not(.advisor-sidebar button):not(main.dashboard li button):hover{border-color:#242426;background:#242426}.secondary{border:1px solid #2a2a2d;background:#fff;color:#2a2a2d}.secondary:hover{border-color:#2a2a2d;background:#f1efe9;color:#2a2a2d}.text-action{border:0;border-radius:0;background:transparent;color:#4d2c7a}.text-action:hover{background:transparent;color:#2a2a2d}.workflow-primary:disabled,button:disabled{border-color:#b8b5ae;background:#f1efe9;color:#77736c;opacity:1;cursor:not-allowed}button:focus-visible,.workflow-primary:focus-visible,.secondary:focus-visible{outline:3px solid #7a5cff;outline-offset:2px}

/* Berater-Login „Fokus“: bewusst nur für den Anmeldebildschirm. */
.login-header,.login-intro,.login-panel{display:contents}.login-header-label,.login-lead,.login-panel-title{display:none}
body[data-screen=login]{display:grid;min-height:100svh;place-items:center;padding:28px;background:#f3f1ed;border-top:0}
body[data-screen=login] .advisor-sidebar{display:none}
body[data-screen=login] main{display:grid;width:min(100%,1120px);min-height:680px;grid-template-columns:minmax(0,1fr) minmax(360px,440px);grid-template-rows:96px minmax(0,1fr) auto;margin:0;padding:0;border:1px solid #d7d3cb;border-radius:0;background:#fff;box-shadow:0 18px 56px rgba(17,17,17,.08);overflow:hidden}
body[data-screen=login] .login-header{display:flex;grid-column:1/-1;grid-row:1;align-items:center;justify-content:space-between;padding:0 52px;background:#0a0a0a}
body[data-screen=login] .brand-link{display:block;line-height:0}body[data-screen=login] .brand{width:132px;margin:0;filter: none;mix-blend-mode:screen}
body[data-screen=login] .login-header-label{display:block;color:#c2a9de;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
body[data-screen=login] .login-intro{display:flex;grid-column:1;grid-row:2;flex-direction:column;justify-content:center;padding:64px 58px 70px}
body[data-screen=login] .eyebrow{margin:0 0 18px;color:#513087;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
body[data-screen=login] h1{max-width:560px;margin:0;font-size:clamp(48px,5.6vw,72px);font-weight:800;line-height:.96;letter-spacing:-.045em}
body[data-screen=login] .login-lead{display:block;max-width:520px;margin:28px 0 0;color:#67635d;font-size:17px;line-height:1.6}
body[data-screen=login] .login-panel{display:block;grid-column:2;grid-row:2;align-self:center;margin:56px 52px 56px 0;padding-left:48px;border-left:1px solid #d7d3cb}
body[data-screen=login] .login-panel-title{display:block;margin:0 0 8px;font-size:25px;line-height:1.15}
body[data-screen=login] #message{min-height:0;margin:0 0 28px;color:#67635d;font-size:13px;line-height:1.5}
body[data-screen=login] #login label{margin:18px 0 8px;font-size:13px}body[data-screen=login] #login label:first-child{margin-top:0}
body[data-screen=login] #login input{border-color:#bdb9b1;border-radius:2px;background:#fff}body[data-screen=login] #login button{min-height:52px;margin-top:24px;border-radius:0;background:#050505}
body[data-screen=login] .notice{margin:28px 0 0;padding:18px 0 0;border-top:1px solid #d7d3cb;color:#67635d;font-size:12px;line-height:1.55}
body[data-screen=login] .app-legal{display:flex!important;grid-column:1/-1;grid-row:3;align-items:center;justify-content:space-between;gap:24px;margin:0!important;padding:20px 52px!important;border-top:1px solid #d7d3cb!important;background:#f3f1ed}
body[data-screen=login] .app-legal .footer-brand img,body[data-screen=login] .app-legal .footer-groups strong{display:none}body[data-screen=login] .app-legal .footer-brand{color:#67635d;font-size:11px}
body[data-screen=login] .app-legal .footer-groups,body[data-screen=login] .app-legal .footer-groups>div{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px}body[data-screen=login] .app-legal nav a{color:#67635d;font-size:11px}
@media(max-width:1023px){body[data-screen=login]{place-items:start center;padding:18px}body[data-screen=login] main{min-height:0;grid-template-columns:1fr;grid-template-rows:82px auto auto auto}body[data-screen=login] .login-header{grid-row:1;padding:0 28px}body[data-screen=login] .brand{width:116px}body[data-screen=login] .login-intro{grid-column:1;grid-row:2;padding:48px 32px 30px}body[data-screen=login] h1{font-size:clamp(44px,11vw,62px)}body[data-screen=login] .login-lead{margin-top:20px;font-size:15px}body[data-screen=login] .login-panel{grid-column:1;grid-row:3;margin:0 32px 44px;padding:30px 0 0;border-top:1px solid #d7d3cb;border-left:0}body[data-screen=login] .app-legal{grid-column:1;grid-row:4;align-items:flex-start;flex-direction:column;padding:20px 32px!important}body[data-screen=login] .app-legal .footer-groups{justify-content:flex-start}}
@media(max-width:767px){body[data-screen=login]{padding:0;background:#fff}body[data-screen=login] main{width:100%;border:0;box-shadow:none}body[data-screen=login] .login-header{padding:0 22px}body[data-screen=login] .login-header-label{max-width:145px;text-align:right;font-size:11px}body[data-screen=login] .login-intro{padding:42px 24px 26px}body[data-screen=login] h1{font-size:46px}body[data-screen=login] .login-panel{margin:0 24px 38px}body[data-screen=login] .app-legal{padding:18px 24px!important}body[data-screen=login] .app-legal .footer-groups,body[data-screen=login] .app-legal .footer-groups>div{gap:8px 14px}}

/* Ausgewählte Variante „Markenfläche“. */
body[data-screen=login] main{min-height:720px;grid-template-columns:minmax(360px,44%) minmax(0,56%);grid-template-rows:118px minmax(0,1fr) auto;background:#0a0a0a}
body[data-screen=login] .login-header{grid-column:1;grid-row:1;padding:0 52px;background:#0a0a0a}
body[data-screen=login] .login-header-label{display:none}
body[data-screen=login] .login-intro{grid-column:1;grid-row:2 / 4;justify-content:center;padding:34px 52px 64px;background:#0a0a0a;color:#fff}
body[data-screen=login] .login-intro .eyebrow{color:#c2a9de}
body[data-screen=login] .login-intro h1{max-width:470px;color:#fff;font-size:clamp(50px,5.1vw,68px)}
body[data-screen=login] .login-lead{max-width:380px;color:#cbc7c1}
body[data-screen=login] .login-panel{display:flex;grid-column:2;grid-row:1 / 3;align-self:stretch;flex-direction:column;justify-content:center;margin:0;padding:64px clamp(52px,7vw,96px);border:0;background:#fff}
body[data-screen=login] .login-panel-title{font-size:clamp(30px,3vw,40px)}
body[data-screen=login] .app-legal{grid-column:2;grid-row:3;padding:20px clamp(52px,7vw,96px)!important;background:#fff}
@media(max-width:1023px){body[data-screen=login] main{grid-template-columns:1fr;grid-template-rows:90px auto auto auto;background:#fff}body[data-screen=login] .login-header{grid-column:1;grid-row:1;padding:0 28px}body[data-screen=login] .login-intro{grid-column:1;grid-row:2;padding:40px 28px 44px}body[data-screen=login] .login-intro h1{font-size:52px}body[data-screen=login] .login-lead{margin-top:20px}body[data-screen=login] .login-panel{grid-column:1;grid-row:3;margin:0;padding:42px 28px 48px}body[data-screen=login] .app-legal{grid-column:1;grid-row:4;padding:20px 28px!important;border-top-color:#d7d3cb!important;background:#f3f1ed}}
@media(max-width:767px){body[data-screen=login] .login-header{padding:0 24px}body[data-screen=login] .login-intro{padding:36px 24px 40px}body[data-screen=login] .login-intro h1{font-size:46px}body[data-screen=login] .login-panel{margin:0;padding:38px 24px 44px}body[data-screen=login] .login-panel-title{font-size:30px}body[data-screen=login] .app-legal{padding:18px 24px!important}}

/* MFA und Authenticator-Einrichtung: kompakte, mobile North-Star-Fläche. */
body[data-screen=mfa],body[data-screen=setup],body[data-screen=pending]{display:grid;min-height:100svh;place-items:center;padding:28px;background:#f3f1ed;border-top:0;overflow-x:clip}
body[data-screen=mfa] .advisor-sidebar,body[data-screen=setup] .advisor-sidebar,body[data-screen=pending] .advisor-sidebar{display:none}
body[data-screen=mfa] main,body[data-screen=setup] main,body[data-screen=pending] main{display:block;width:min(100%,560px);max-width:100%;margin:0;padding:42px 48px 0;border:1px solid #d7d3cb;border-radius:0;background:#fff;box-shadow:0 18px 56px rgba(17,17,17,.08);overflow:hidden}
body[data-screen=mfa] .login-header,body[data-screen=setup] .login-header,body[data-screen=pending] .login-header{display:block;margin:0 0 42px}
body[data-screen=mfa] .login-header-label,body[data-screen=setup] .login-header-label,body[data-screen=pending] .login-header-label{display:none}
body[data-screen=mfa] .brand,body[data-screen=setup] .brand,body[data-screen=pending] .brand{width:122px;margin:0}
body[data-screen=mfa] .login-intro,body[data-screen=setup] .login-intro,body[data-screen=pending] .login-intro{display:block;margin:0 0 34px;padding:0}
body[data-screen=mfa] h1,body[data-screen=setup] h1,body[data-screen=pending] h1{font-size:clamp(38px,8vw,52px);line-height:1;letter-spacing:-.035em}
body[data-screen=mfa] .login-lead,body[data-screen=setup] .login-lead,body[data-screen=pending] .login-lead{display:none}
body[data-screen=mfa] .login-panel,body[data-screen=setup] .login-panel,body[data-screen=pending] .login-panel{display:block;margin:0;padding:0}
body[data-screen=mfa] .login-panel-title,body[data-screen=setup] .login-panel-title,body[data-screen=pending] .login-panel-title{display:none}
body[data-screen=mfa] #message,body[data-screen=setup] #message,body[data-screen=pending] #message{margin:0 0 28px;font-size:16px}
body[data-screen=mfa] #otp-step,body[data-screen=setup] #otp-step{width:100%;min-width:0}
body[data-screen=mfa] #otp-step input,body[data-screen=setup] #otp-step input{width:100%;max-width:100%;height:56px;border-radius:2px}
body[data-screen=mfa] #otp-step button,body[data-screen=setup] #otp-step button{min-height:52px;border-radius:0}
body[data-screen=mfa] #logout,body[data-screen=setup] #logout,body[data-screen=pending] #logout{border-radius:0}
body[data-screen=mfa] .notice,body[data-screen=setup] .notice,body[data-screen=pending] .notice{margin-top:30px}
body[data-screen=mfa] .app-legal,body[data-screen=setup] .app-legal,body[data-screen=pending] .app-legal{display:flex!important;width:auto;max-width:none;margin:38px -48px 0!important;padding:20px 48px!important;align-items:center!important;background:#f3f1ed!important}
body[data-screen=mfa] .app-legal .footer-brand img,body[data-screen=setup] .app-legal .footer-brand img,body[data-screen=pending] .app-legal .footer-brand img,body[data-screen=mfa] .app-legal .footer-groups strong,body[data-screen=setup] .app-legal .footer-groups strong,body[data-screen=pending] .app-legal .footer-groups strong{display:none}
body[data-screen=mfa] .app-legal .footer-groups,body[data-screen=setup] .app-legal .footer-groups,body[data-screen=pending] .app-legal .footer-groups,body[data-screen=mfa] .app-legal .footer-groups>div,body[data-screen=setup] .app-legal .footer-groups>div,body[data-screen=pending] .app-legal .footer-groups>div{display:flex!important;flex-wrap:wrap;grid-template-columns:none!important;gap:8px 14px!important;min-width:0}
body[data-screen=mfa] .app-legal a,body[data-screen=setup] .app-legal a,body[data-screen=pending] .app-legal a{width:auto!important;font-size:11px!important;white-space:normal}
@media(max-width:600px){body[data-screen=mfa],body[data-screen=setup],body[data-screen=pending]{place-items:start stretch;padding:0;background:#fff}body[data-screen=mfa] main,body[data-screen=setup] main,body[data-screen=pending] main{width:100%;min-height:100svh;padding:30px 24px 0;border:0;box-shadow:none}body[data-screen=mfa] .login-header,body[data-screen=setup] .login-header,body[data-screen=pending] .login-header{margin-bottom:44px}body[data-screen=mfa] h1,body[data-screen=setup] h1,body[data-screen=pending] h1{font-size:42px}body[data-screen=mfa] .app-legal,body[data-screen=setup] .app-legal,body[data-screen=pending] .app-legal{margin:34px -24px 0!important;padding:20px 24px!important;align-items:flex-start!important;flex-direction:column!important}body[data-screen=mfa] .app-legal .footer-groups,body[data-screen=setup] .app-legal .footer-groups,body[data-screen=pending] .app-legal .footer-groups{display:flex!important;flex-direction:row!important}body[data-screen=mfa] .app-legal .footer-groups>div,body[data-screen=setup] .app-legal .footer-groups>div,body[data-screen=pending] .app-legal .footer-groups>div{padding:0!important;border:0!important}}
