:root { --assessment-line:rgba(23,63,54,.16); --assessment-soft:#eef3ef; --assessment-warm:#f6f1e6; --ready:#245f4f; --partial:#b8792e; --missing:#b4513b; --clarify:#687b74; }
* { box-sizing:border-box; }
.vsme-page { margin:0; color:var(--ink); background:#edf1ed; font-family:"Segoe UI",Arial,sans-serif; }
.assessment-header { min-height:78px; padding:13px 24px; display:flex; align-items:center; justify-content:space-between; gap:24px; color:white; background:var(--forest); position:sticky; top:0; z-index:20; }
.assessment-brand { display:flex; align-items:center; gap:12px; color:white; text-decoration:none; }
.assessment-brand .brand-mark i { background:white; }.assessment-brand .brand-mark i:last-child { background:var(--coral); }
.assessment-brand small { display:block; color:#b9cdc6; font-size:9px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.assessment-brand strong { display:block; margin-top:5px; font:24px/1 Georgia,serif; }
.assessment-header-actions { display:flex; align-items:center; gap:14px; }.save-status { color:#b9cdc6; font-size:11px; }
.assessment-home { padding:8px 12px; color:white; border:1px solid rgba(255,255,255,.25); text-decoration:none; font-size:12px; font-weight:700; }
.assessment-shell { display:grid; grid-template-columns:310px minmax(0,1fr); min-height:calc(100vh - 78px); }
.assessment-sidebar { padding:18px; border-right:1px solid var(--assessment-line); background:#f3f5f2; }
.setup-card { padding:19px; margin-bottom:12px; background:white; border:1px solid var(--assessment-line); }
.setup-card h2 { margin:4px 0 17px; font:22px/1.1 Georgia,serif; }.setup-card p { color:var(--muted); font-size:12px; line-height:1.55; }
.mini-label { margin:0; color:var(--coral)!important; font-size:9px!important; font-weight:850; letter-spacing:.13em; text-transform:uppercase; }
.setup-card label { display:grid; gap:5px; margin-bottom:11px; color:var(--muted); font-size:11px; font-weight:750; }
.setup-card input,.setup-card select,.disclosure-card input,.disclosure-card select,.disclosure-card textarea { width:100%; min-height:40px; padding:8px 9px; color:var(--ink); background:white; border:1px solid var(--assessment-line); border-radius:0; font:inherit; }
.choice { grid-template-columns:18px 1fr!important; align-items:start; gap:10px!important; padding:9px 0; margin:0!important; border-bottom:1px solid var(--assessment-line); color:var(--ink)!important; cursor:pointer; }
.choice input { width:17px; min-height:17px; margin-top:2px; accent-color:var(--forest); }.choice strong,.choice small { display:block; }.choice small { margin-top:2px; color:var(--muted); font-weight:400; }
.module-guidance { padding:11px; color:#38564d; background:var(--assessment-soft); font-size:11px; line-height:1.45; }.module-guidance strong,.module-guidance span { display:block; }.module-guidance span { margin-top:3px; }
.info-card { background:#fff9ec; border-color:#e1d2af; }.info-card p:last-child { margin-bottom:0; color:#665438; }
.reset-button { width:100%; min-height:42px; color:#8d3f2b; background:transparent; border:1px solid #d7b6ad; cursor:pointer; font-weight:750; }
.assessment-workspace { min-width:0; padding:18px; }.assessment-toolbar { display:flex; align-items:center; justify-content:space-between; gap:18px; margin-bottom:18px; }
.assessment-tabs,.export-actions,.filter-actions { display:flex; gap:7px; flex-wrap:wrap; }.assessment-tab,.export-actions button,.filter-button { min-height:42px; padding:0 15px; color:var(--ink); background:white; border:1px solid var(--assessment-line); cursor:pointer; font-weight:750; }.assessment-tab.active,.filter-button.active { color:white; background:var(--coral); border-color:var(--coral); }.export-actions button:not(.secondary-action) { color:white; background:var(--forest); border-color:var(--forest); }
.assessment-view { display:none; }.assessment-view.active { display:block; }
.assessment-intro { padding:30px; margin-bottom:16px; display:grid; grid-template-columns:1.2fr .8fr; gap:40px; align-items:end; background:white; border:1px solid var(--assessment-line); }
.assessment-intro h1,.result-hero h1,.method-hero h1 { margin:7px 0 0; font:clamp(34px,4vw,54px)/1.02 Georgia,serif; letter-spacing:-.035em; }.assessment-intro>p { margin:0; color:var(--muted); line-height:1.65; }
.readiness-overview { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr); gap:15px; }
.readiness-score-card { min-height:240px; padding:28px; display:grid; grid-template-columns:190px 1fr; gap:28px; align-items:center; background:white; border:1px solid var(--assessment-line); }
.readiness-gauge { --readiness:0deg; width:170px; height:170px; display:grid; place-items:center; border-radius:50%; background:conic-gradient(var(--ready) var(--readiness),#dce5e0 0); position:relative; }
.readiness-gauge::before { content:""; position:absolute; inset:16px; border-radius:50%; background:white; }.readiness-gauge div { z-index:1; text-align:center; }.readiness-gauge strong { display:block; font:36px Georgia,serif; }.readiness-gauge span { color:var(--muted); font-size:10px; text-transform:uppercase; letter-spacing:.08em; }
.readiness-score-copy h2 { margin:7px 0 10px; font:32px/1.1 Georgia,serif; }.readiness-score-copy p:last-child { color:var(--muted); line-height:1.6; }
.readiness-kpis { display:grid; grid-template-columns:repeat(2,1fr); gap:1px; background:var(--assessment-line); border:1px solid var(--assessment-line); }.readiness-kpis div { padding:22px; background:white; border-top:4px solid var(--clarify); }.readiness-kpis div.ready { border-color:var(--ready); }.readiness-kpis div.partial { border-color:var(--partial); }.readiness-kpis div.missing { border-color:var(--missing); }.readiness-kpis span { display:block; min-height:28px; color:var(--muted); font-size:10px; font-weight:750; }.readiness-kpis strong { display:block; margin-top:7px; font:34px Georgia,serif; }
.readiness-board { padding:24px; margin-top:15px; background:white; border:1px solid var(--assessment-line); }.board-heading,.disclosures-heading,.result-section-heading { display:grid; grid-template-columns:1fr 1fr; gap:30px; align-items:end; margin-bottom:20px; }.board-heading h2,.disclosures-heading h2,.result-section-heading h2 { margin:4px 0 0; font:29px Georgia,serif; }.board-heading>p,.result-section-heading>p { margin:0; color:var(--muted); font-size:12px; line-height:1.55; }
.board-columns { display:grid; grid-template-columns:repeat(4,1fr); gap:8px; }.board-column { min-height:126px; padding:14px; background:#f5f7f5; border-top:4px solid var(--clarify); }.board-column.ready { border-color:var(--ready); }.board-column.partial { border-color:var(--partial); }.board-column.missing { border-color:var(--missing); }.board-column h3 { margin:0 0 12px; display:flex; justify-content:space-between; gap:8px; font:15px Georgia,serif; }.board-column h3 span { font:13px "Segoe UI",sans-serif; }.code-cloud { display:flex; flex-wrap:wrap; gap:6px; color:var(--muted); }.code-cloud button { min-width:35px; min-height:30px; padding:4px 7px; color:var(--forest); background:white; border:1px solid var(--assessment-line); cursor:pointer; font-size:10px; font-weight:850; }.code-cloud button:hover { color:white; background:var(--forest); }
.completion-row { margin-top:18px; display:grid; grid-template-columns:1fr auto; gap:7px; color:var(--muted); font-size:10px; }.completion-row progress { grid-column:1/-1; width:100%; height:8px; accent-color:var(--coral); }
.disclosures-heading { padding:42px 4px 18px; margin:0; }.filter-actions { justify-content:flex-end; }.filter-button { min-height:36px; padding-inline:11px; font-size:10px; }
.disclosure-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }.disclosure-card { padding:19px; background:white; border:1px solid var(--assessment-line); border-top:4px solid var(--clarify); }.disclosure-card.ready { border-top-color:var(--ready); }.disclosure-card.partial { border-top-color:var(--partial); }.disclosure-card.missing { border-top-color:var(--missing); }.disclosure-card.na { opacity:.72; }.disclosure-card.out-of-scope { box-shadow:inset 0 0 0 2px rgba(184,121,46,.15); }
.disclosure-card>header { display:flex; justify-content:space-between; gap:12px; align-items:start; }.disclosure-card header>div { display:flex; align-items:baseline; gap:8px; }.disclosure-code { color:var(--coral); font:22px Georgia,serif; }.disclosure-module { color:var(--muted); font-size:9px; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
.readiness-badge { padding:5px 8px; color:white; background:var(--clarify); font-size:9px; font-weight:850; white-space:nowrap; }.readiness-badge.ready { background:var(--ready); }.readiness-badge.partial { background:var(--partial); }.readiness-badge.missing { background:var(--missing); }.readiness-badge.na { color:#56635f; background:#e1e7e3; }
.disclosure-card h3 { margin:13px 0 8px; font:24px/1.15 Georgia,serif; }.disclosure-hint { min-height:54px; margin:0 0 14px; color:var(--muted); font-size:12px; line-height:1.5; }
.readiness-controls,.evidence-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }.disclosure-card label { display:grid; gap:5px; margin-top:9px; color:var(--muted); font-size:10px; font-weight:750; }.disclosure-card select:disabled,.disclosure-card input:disabled { color:#7e8884; background:#edf0ee; }.note-label textarea { resize:vertical; }
.result-hero { padding:42px; display:flex; justify-content:space-between; gap:30px; align-items:center; color:white; background:var(--forest); }.result-hero .mini-label { color:#e5ca92!important; }.result-hero p:not(.mini-label) { max-width:760px; color:#c1d2cc; }.result-score { width:118px; height:118px; flex:0 0 auto; display:grid; place-items:center; border:1px solid rgba(255,255,255,.35); border-radius:50%; font:32px Georgia,serif; }
.result-kpis { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; margin:1px 0 18px; background:var(--assessment-line); }.result-kpis div { padding:19px; background:white; }.result-kpis span { display:block; color:var(--muted); font-size:9px; text-transform:uppercase; letter-spacing:.1em; }.result-kpis strong { display:block; margin-top:5px; font:25px Georgia,serif; }
.result-section,.coverage-section { padding:28px; margin-bottom:16px; background:white; border:1px solid var(--assessment-line); }.table-wrap { max-width:100%; overflow-x:auto; }.gap-table { width:100%; min-width:780px; border-collapse:collapse; font-size:12px; }.gap-table th { padding:11px; color:white; background:var(--forest); text-align:left; font-size:9px; text-transform:uppercase; letter-spacing:.08em; }.gap-table td { padding:13px 11px; border-bottom:1px solid var(--assessment-line); vertical-align:top; }.table-status { display:inline-block; padding:4px 6px; color:white; background:var(--clarify); font-size:9px; font-weight:800; white-space:nowrap; }.table-status.partial { background:var(--partial); }.table-status.missing { background:var(--missing); }
.coverage-section { display:grid; grid-template-columns:.7fr 1.3fr; gap:40px; }.coverage-section h2 { margin:5px 0 0; font:29px Georgia,serif; }.coverage-bars { display:grid; gap:18px; }.coverage-bars>div>span { display:flex; justify-content:space-between; gap:20px; }.coverage-bars progress { display:block; width:100%; height:12px; margin:7px 0 4px; accent-color:var(--ready); }.coverage-bars small { color:var(--muted); }
.next-steps { padding:34px; display:grid; grid-template-columns:.8fr 1.2fr; gap:50px; color:white; background:var(--coral); }.next-steps .mini-label { color:#ffe3d7!important; }.next-steps h2 { margin:6px 0 0; font:31px Georgia,serif; }.next-steps ol { margin:0; padding-left:22px; }.next-steps li { padding:8px 0; border-bottom:1px solid rgba(255,255,255,.25); }
.method-hero { padding:42px; color:white; background:var(--forest); }.method-hero .mini-label { color:#e5ca92!important; }.method-hero p:last-child { max-width:820px; color:#c1d2cc; line-height:1.65; }.method-cards { display:grid; grid-template-columns:repeat(2,1fr); gap:12px; margin:16px 0; }.method-cards article { padding:26px; background:white; border:1px solid var(--assessment-line); }.method-cards article>span { color:var(--coral); font:16px Georgia,serif; }.method-cards h2 { margin:14px 0 8px; font:23px Georgia,serif; }.method-cards p { color:var(--muted); line-height:1.6; }.standard-note { padding:28px; background:#fff9ec; border:1px solid #e1d2af; }.standard-note h2 { font:24px Georgia,serif; }.standard-note p { color:#665438; line-height:1.65; }

@media(max-width:1120px){.assessment-shell{grid-template-columns:1fr}.assessment-sidebar{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;border-right:0;border-bottom:1px solid var(--assessment-line)}.setup-card{margin:0}.readiness-overview{grid-template-columns:1fr}.disclosure-grid{grid-template-columns:1fr}.board-columns{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.assessment-header{position:static;padding:12px 15px}.assessment-brand strong{font-size:20px}.save-status{display:none}.assessment-sidebar{grid-template-columns:1fr;padding:12px}.assessment-workspace{padding:12px}.assessment-toolbar{align-items:stretch;flex-direction:column}.assessment-tabs,.export-actions{width:100%}.assessment-tab,.export-actions button{flex:1}.assessment-intro,.board-heading,.disclosures-heading,.result-section-heading,.coverage-section,.next-steps{grid-template-columns:1fr}.assessment-intro{padding:22px}.readiness-score-card{grid-template-columns:1fr;text-align:center}.readiness-gauge{margin:auto}.board-columns{grid-template-columns:1fr}.filter-actions{justify-content:flex-start}.readiness-controls,.evidence-grid{grid-template-columns:1fr}.result-hero{padding:28px}.result-kpis{grid-template-columns:repeat(2,1fr)}.method-cards{grid-template-columns:1fr}}
@media(max-width:430px){.assessment-header-actions{display:none}.assessment-brand strong{font-size:18px}.assessment-intro h1,.result-hero h1,.method-hero h1{font-size:34px}.readiness-kpis{grid-template-columns:1fr}.result-hero{flex-direction:column;align-items:flex-start}.result-score{width:84px;height:84px;font-size:25px}.disclosure-card{padding:14px}.disclosure-card>header{flex-direction:column}.result-kpis{grid-template-columns:1fr}}
@media print{.assessment-header,.assessment-sidebar,.assessment-toolbar,.assessment-view:not(.active),#assessmentView,#methodView,.export-actions,.assessment-tabs{display:none!important}.assessment-shell{display:block}.assessment-workspace{padding:0}.vsme-page{background:white}.result-hero,.next-steps{print-color-adjust:exact;-webkit-print-color-adjust:exact}.result-section{break-inside:avoid}.gap-table{min-width:0}}
