:root{
  --navy:#07366f; --blue:#1e74c9; --green:#23945b; --lime:#9acb3b;
  --orange:#e97719; --ink:#16324a; --muted:#65798a; --bg:#f4f7f9;
  --card:#fff; --line:#d8e2ea; --danger:#ad2f2f;
}
*{box-sizing:border-box}
body{margin:0;font-family:Arial,Helvetica,sans-serif;background:var(--bg);color:var(--ink)}
.topbar{display:flex;justify-content:space-between;align-items:center;padding:18px 32px;background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}
.brand{display:flex;align-items:center;gap:14px}.logo-mark{font-size:28px;font-weight:800;color:var(--navy)}.logo-mark::first-letter{color:var(--green)}
.brand-title{font-weight:700}.brand-sub{font-size:12px;color:var(--muted)}
.privacy-pill{font-size:12px;padding:8px 12px;border-radius:999px;background:#edf7f1;color:#256b45}
.wrap{max-width:1200px;margin:28px auto;padding:0 20px 40px}
.card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:24px;box-shadow:0 8px 28px rgba(16,54,89,.06)}
.hero{display:grid;grid-template-columns:1.2fr .8fr;gap:24px;align-items:center;margin-bottom:22px;background:linear-gradient(135deg,#fff,#eef7fb)}
h1{font-size:36px;line-height:1.12;margin:7px 0 12px;color:var(--navy)} h2{margin-top:0;color:var(--navy)} h3{margin:.2rem 0 .4rem}
.lead{font-size:18px;line-height:1.5}.muted{color:var(--muted)}
.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.12em;font-weight:700;color:var(--green)}
.hero-loop{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;font-size:13px}
.hero-loop span{padding:10px 12px;border-radius:12px;background:#fff;border:1px solid var(--line);font-weight:700}.hero-loop b{color:var(--green)}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:22px}
label{display:block;font-weight:700;margin:14px 0 6px}input,textarea,select{width:100%;padding:12px 13px;margin-top:7px;border:1px solid #cbd7e0;border-radius:10px;font:inherit;background:#fff}
textarea{resize:vertical}
.btn{border:1px solid var(--navy);background:#fff;color:var(--navy);border-radius:10px;padding:11px 16px;font-weight:700;cursor:pointer}.btn:hover{transform:translateY(-1px)}
.btn.primary{background:var(--navy);color:#fff}.btn.small{padding:8px 11px;font-size:13px}.btn.ghost{border-color:var(--line)}.btn.danger{color:var(--danger);border-color:#dfb5b5}
.msg{margin-top:10px;min-height:20px;font-size:13px}.msg.ok{color:var(--green)}.msg.err{color:var(--danger)}
.hidden{display:none}
.session-head,.results-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.code-line{font-size:15px}.head-actions{display:flex;gap:8px}
.notice{margin:18px 0;padding:14px 16px;background:#eef6fb;border-left:4px solid var(--blue);border-radius:8px}
.qcard{display:grid;grid-template-columns:44px 1fr;gap:14px;padding:18px 0;border-top:1px solid var(--line)}.qnum{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:#fff;font-weight:700}
.choices{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.choice{position:relative}.choice input{position:absolute;opacity:0;pointer-events:none}.choice label{margin:0;padding:9px 12px;border:1px solid var(--line);border-radius:999px;background:#fff;cursor:pointer;font-weight:600}.choice input:checked+label{background:#e7f2fb;border-color:var(--blue);color:var(--navy)}
hr{border:0;border-top:1px solid var(--line);margin:28px 0}
.progress-wrap{margin:16px 0}.progress-label{display:flex;justify-content:space-between;font-size:13px}.progress{height:9px;background:#e8eef3;border-radius:999px;overflow:hidden;margin-top:6px}.progress>div{height:100%;width:0;background:linear-gradient(90deg,var(--blue),var(--green))}
.result-grid{display:grid;grid-template-columns:1.45fr .75fr;gap:20px}.graph-card{background:#fbfdfe;border:1px solid var(--line);border-radius:16px;padding:8px}.compact{padding:18px;margin-bottom:16px}
#socioSvg{width:100%;height:auto;display:block}.legend{display:flex;flex-wrap:wrap;gap:14px;padding:8px 10px 12px;color:var(--muted);font-size:12px}.dot{width:10px;height:10px;border-radius:50%;display:inline-block;margin-right:5px}.dot.blue{background:var(--blue)}.dot.green{background:var(--green)}.dot.orange{background:var(--orange)}.line{display:inline-block;width:22px;border-top:3px solid var(--navy);margin:0 5px 3px}.line.reciprocal{border-top-style:double}
.insights .metric{padding:10px 0;border-bottom:1px solid #edf1f4}.insights .metric:last-child{border-bottom:0}.metric strong{color:var(--navy)}
.debrief ol{padding-left:20px}.debrief li{margin:9px 0}
footer{text-align:center;color:var(--muted);font-size:12px;padding:24px}
svg text{font-family:Arial,Helvetica,sans-serif}
@media(max-width:800px){.topbar{padding:14px 16px}.privacy-pill{display:none}.hero,.grid2,.result-grid{grid-template-columns:1fr}.session-head,.results-head{flex-direction:column}h1{font-size:30px}.wrap{padding:0 12px 28px}}
@media print{.topbar,#home,.head-actions,#memberPickerWrap,#surveyForm,.notice,#refreshBtn,#deleteBtn,#printBtn,footer{display:none!important}.wrap{max-width:none;margin:0}.card{box-shadow:none;border:none}.result-grid{grid-template-columns:1.4fr .8fr}.hero{display:none}.session-head{margin-bottom:0}}
