.sa{display:grid;grid-template-columns:minmax(0,1fr) 20rem;gap:var(--sp-6);margin-top:var(--sp-6);align-items:start}@media(max-width:60rem){.sa{grid-template-columns:minmax(0,1fr)}.sa-panel{order:-1}}.sa-form{display:grid;gap:var(--sp-5)}.sa-name{display:grid;gap:var(--sp-1);font-family:var(--font-ui);font-size:var(--fs-small);font-weight:600}.sa-name input{font:400 1rem var(--font-ui);padding:.65rem .75rem;border:1px solid var(--hairline-strong);background:var(--white)}.sa-phase{margin:0;padding:var(--sp-5);border:1px solid var(--hairline);background:var(--white);min-width:0}.sa-phase legend{display:flex;align-items:center;gap:var(--sp-3);font-family:var(--font-ui);font-weight:800;font-size:1.0625rem;color:var(--asphalt-ink);padding-inline:var(--sp-2)}.sa-num{display:inline-grid;place-items:center;width:1.75rem;height:1.75rem;background:var(--sign-green);color:var(--white);border-radius:var(--radius-badge);font-size:.875rem}.sa-list{list-style:none;margin:0;padding:0}.sa-item{padding-block:var(--sp-4);border-top:1px solid var(--hairline);border-left:3px solid transparent;padding-left:var(--sp-3);margin-left:calc(-1 * var(--sp-3) - 3px)}.sa-item.is-answered{border-left-color:var(--sign-green)}.sa-item:first-child{border-top:0}.sa-q{font-size:1rem;line-height:1.5}.sa-pts{font-family:var(--font-ui);font-size:var(--fs-micro);font-weight:700;color:var(--slate-muted);white-space:nowrap}.sa-opts{display:flex;flex-wrap:wrap;gap:var(--sp-2);margin-top:var(--sp-3)}.sa-opts label{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .8rem;border:1px solid var(--hairline-strong);font-family:var(--font-ui);font-size:.875rem;font-weight:600;cursor:pointer;min-height:40px}.sa-opts label:has(input:checked){border-color:var(--sign-green);background:var(--wash-green);color:var(--sign-green)}.sa-opts input{accent-color:var(--sign-green)}.sa-read{display:inline-block;margin-top:var(--sp-2);font-family:var(--font-ui);font-size:var(--fs-small);color:var(--sign-green)}.sa-sticky{position:sticky;top:var(--sp-4);padding:var(--sp-5);background:var(--sign-green-deep);color:var(--white)}.sa-panel-h{font-family:var(--font-ui);font-weight:800;font-size:var(--fs-micro);letter-spacing:var(--tracking-caps-wide);text-transform:uppercase;color:var(--line-yellow)}.sa-score{margin-top:var(--sp-2);font-family:var(--font-ui);font-weight:800;font-size:3.5rem;line-height:1;letter-spacing:-.03em;font-variant-numeric:tabular-nums}.sa-pct{font-size:1.75rem;opacity:.8}.sa-level{margin-top:var(--sp-2);font-family:var(--font-ui);font-weight:700;font-size:1.125rem}.sa-level-text,.sa-progress{margin-top:var(--sp-2);font-family:var(--font-ui);font-size:var(--fs-small);line-height:1.45;opacity:.88}.sa-bars{list-style:none;margin:var(--sp-4) 0 0;padding:0;display:grid;gap:var(--sp-3)}.sa-bars li{display:grid;grid-template-columns:1fr auto;gap:.3rem var(--sp-2);font-family:var(--font-ui);font-size:var(--fs-micro)}.sa-bar{grid-column:1 / -1;height:6px;background:#ffffff26}.sa-bar-fill{display:block;height:100%;width:0;background:var(--line-yellow);transition:width .2s var(--ease-out)}.sa-bar-val{grid-row:1;grid-column:2;font-variant-numeric:tabular-nums}.sa-actions{display:flex;flex-wrap:wrap;gap:var(--sp-2);margin-top:var(--sp-5)}.sa-actions button{font:700 var(--fs-micro) var(--font-ui);letter-spacing:var(--tracking-caps);text-transform:uppercase;padding:.55rem .8rem;min-height:44px;border:2px solid var(--line-yellow);background:transparent;color:var(--line-yellow);cursor:pointer}.sa-actions button:hover{background:var(--line-yellow);color:var(--asphalt)}.sa-gaps{margin-top:var(--sp-6);padding:var(--sp-5);background:var(--white);border-left:4px solid var(--line-yellow)}.sa-gaps-h{font-family:var(--font-ui);font-weight:800;font-size:var(--fs-micro);letter-spacing:var(--tracking-caps-wide);text-transform:uppercase;color:var(--sign-green)}.sa-gaps ol{margin:var(--sp-3) 0 0;padding-left:1.25rem;display:grid;gap:var(--sp-2);font-size:1rem;line-height:1.5}.sa-gaps a{font-family:var(--font-ui);font-size:var(--fs-small);color:var(--sign-green)}@media print{.utility-bar,.nav-strip,.sa-actions,.sa-read{display:none!important}.sa{grid-template-columns:1fr}.sa-sticky{position:static;background:none;color:#000;border:1px solid #000}}
