:root{--ink:#12233d;--ink-soft:#1c3559;--paper:#faf9f6;--card:#fff;--steel:#5b6472;--line:#e4e1d9;--amber:#e0972e;--amber-soft:#fbead1;--teal:#2f8f7e;--teal-soft:#dcefe9;--coral:#d1573f;--coral-soft:#f8e1dc;--display:"Space Grotesk", "IBM Plex Mono", monospace;--body:"Inter", system-ui, sans-serif}.diag-root{background:var(--paper);color:var(--ink);font-family:var(--body);justify-content:center;padding:36px 16px 60px;display:flex}.diag-wrap{width:100%;max-width:760px}.diag-eyebrow{font-family:var(--display);letter-spacing:.14em;text-transform:uppercase;color:var(--amber);margin-bottom:8px;font-size:12px;font-weight:600}.diag-title{font-family:var(--display);color:var(--ink);margin:0 0 10px;font-size:32px;font-weight:600;line-height:1.15}.diag-sub{color:var(--steel);max-width:56ch;margin:0 0 28px;font-size:15px;line-height:1.55}.gauge-panel{background:var(--ink);border-radius:18px;margin-bottom:28px;padding:28px 24px 20px;position:relative;overflow:hidden}.gauge-panel:before{content:"";pointer-events:none;background:radial-gradient(120% 140% at 50% 0,#e0972e24,#0000 60%);position:absolute;inset:0}.gauge-label{font-family:var(--display);letter-spacing:.14em;text-transform:uppercase;color:#9fb1cc;text-align:center;margin-bottom:6px;font-size:11px}.gauge-svg-wrap{justify-content:center;display:flex}.gauge-readout{text-align:center;margin-top:2px}.gauge-level{font-family:var(--display);color:#fff;margin:2px 0;font-size:22px;font-weight:600}.gauge-hours{font-family:var(--display);color:#b9c6da;font-size:13px}.gauge-hours b{color:var(--amber);font-size:15px}.needle{transform-origin:150px 150px;transition:transform 1.1s cubic-bezier(.22,1,.36,1)}.gauge-dot{transition:fill 1.1s}.diag-form{flex-direction:column;gap:22px;display:flex}.q-card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:20px 20px 18px}.q-num{font-family:var(--display);color:var(--amber);letter-spacing:.1em;margin-bottom:6px;font-size:11px;font-weight:600}.q-text{color:var(--ink);margin:0 0 14px;font-size:15.5px;font-weight:600;line-height:1.4}.opt-list{flex-direction:column;gap:8px;display:flex}.opt{position:relative}.opt input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.opt label{border:1px solid var(--line);color:var(--ink-soft);cursor:pointer;border-radius:10px;align-items:center;gap:10px;padding:10px 14px;font-size:14px;transition:border-color .15s,background .15s;display:flex}.opt label:before{content:"";border:2px solid var(--line);border-radius:50%;flex:none;width:16px;height:16px;transition:border-color .15s,background .15s,box-shadow .15s}.opt input:checked+label{border-color:var(--teal);background:var(--teal-soft);color:var(--ink)}.opt input:checked+label:before{border-color:var(--teal);background:var(--teal);box-shadow:inset 0 0 0 3px #fff}.opt input:focus-visible+label{outline:2px solid var(--ink);outline-offset:2px}.opt.opt-check label:before{border-radius:4px}.field-grid{flex-direction:column;gap:14px;display:flex}.field label{font-family:var(--display);color:var(--amber);letter-spacing:.1em;text-transform:uppercase;margin-bottom:6px;font-size:11px;font-weight:600;display:block}.field input[type=text]{width:90%;font-family:var(--body);color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:11px 14px;font-size:14.5px;transition:border-color .15s}.field input[type=text]:focus-visible{outline:2px solid var(--ink);outline-offset:2px;border-color:var(--teal)}@media (width<=480px){.field-grid{grid-template-columns:1fr}}.diag-actions{flex-wrap:wrap;gap:12px;margin-top:6px;display:flex}.btn{font-family:var(--body);cursor:pointer;border:none;border-radius:10px;padding:13px 22px;font-size:14.5px;font-weight:600;transition:transform .1s,background .15s}.btn:active{transform:scale(.98)}.btn-primary{background:var(--ink);color:#fff}.btn-primary:hover{background:var(--ink-soft)}.btn-primary:disabled{cursor:not-allowed;background:#b7bec9}.btn-ghost{color:var(--steel);border:1px solid var(--line);background:0 0}.btn-ghost:hover{border-color:var(--steel);color:var(--ink)}.diag-hint{color:var(--steel);margin-top:4px;font-size:12.5px}.results{margin-top:8px;animation:.5s fadeUp;display:none}.results.show{display:block}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.result-grid{grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:20px;display:grid}.mini{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:14px 14px 12px}.mini-label{color:var(--steel);margin-bottom:8px;font-size:11.5px;font-weight:600}.mini-bar-track{background:#eeece5;border-radius:6px;height:7px;overflow:hidden}.mini-bar-fill{border-radius:6px;height:100%;transition:width .9s}.mini-pct{font-family:var(--display);color:var(--ink);margin-top:6px;font-size:13px}.rec-card{background:var(--card);border:1px solid var(--line);border-radius:14px;margin-bottom:18px;padding:20px 22px}.rec-title{font-family:var(--display);letter-spacing:.06em;text-transform:uppercase;color:var(--ink);margin-bottom:12px;font-size:13px;font-weight:600}.rec-item{border-top:1px solid var(--line);color:var(--ink-soft);gap:10px;padding:9px 0;font-size:14px;line-height:1.5;display:flex}.rec-item:first-of-type{border-top:none;padding-top:0}.rec-dot{background:var(--amber);border-radius:50%;flex:none;width:7px;height:7px;margin-top:7px}@media print{.diag-form,.diag-actions,.diag-sub,.diag-eyebrow{display:none!important}.diag-root{padding:0}}@media (width<=480px){.diag-title{font-size:26px}.result-grid{grid-template-columns:1fr}}
