:root{
  --teal:#1d6f75;
  --teal-soft:#e7f3f4;
  --ink:#17212b;
  --muted:#60717f;
  --line:#dce5ea;
  --bg:#eef2f4;
  --surface:#fff;
  --good:#1f8a4c;
  --good-soft:#e7f6ec;
  --good-line:#a8d8b8;
  --warn:#c47a14;
  --warn-soft:#fff3df;
  --warn-line:#e7bd7a;
  --risk:#b00020;
  --risk-soft:#ffd9d6;
  --risk-line:#d0202a;
}
body{background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.text-teal,.eyebrow{color:var(--teal)}
.eyebrow{text-transform:uppercase;letter-spacing:.09em;font-size:.75rem;font-weight:800}
.app-shell{max-width:1480px;margin:0 auto}.narrow{max-width:820px}
.hero,.soft-card{background:var(--surface);border:1px solid var(--line);border-radius:20px;box-shadow:0 14px 38px rgba(25,43,54,.08)}
.hero{padding:3rem}.intro-summary{background:#f5fafb;border:1px solid #cfe1e5;border-left:5px solid var(--teal);border-radius:16px;padding:1rem 1.1rem;color:var(--ink)}.intro-summary p{margin-bottom:.7rem;line-height:1.5}.disclaimer{background:#f8fafb;border-left:4px solid var(--teal);padding:.8rem 1rem;color:var(--muted)}
.btn-teal{background:var(--teal);border-color:var(--teal);color:white}.btn-teal:hover{background:#15575c;border-color:#15575c;color:white}
.clinical-header{display:flex;justify-content:space-between;gap:1rem;align-items:flex-end}.progress-wrap{display:flex;gap:.45rem;overflow-x:auto;padding-bottom:.3rem}
.progress-step{white-space:nowrap;border:1px solid var(--line);border-radius:999px;background:white;padding:.45rem .7rem;color:var(--muted);font-weight:650;font-size:.82rem}
.progress-step.active{background:var(--teal-soft);color:var(--teal);border-color:#b9d9dc}.progress-step.done{background:#f8fafb;color:var(--ink)}.progress-step-link{text-decoration:none}.progress-step-link:hover{border-color:var(--teal);color:var(--teal);background:#f5fbfc}.progress-step.locked{opacity:.58}
.pillar-card{height:100%;background:#fff;border:1px solid var(--line);border-radius:16px;padding:1rem}.pillar-card h3{font-size:1rem;color:var(--teal);font-weight:800}
.choice{display:block;border:1px solid var(--line);border-radius:12px;padding:.65rem .75rem;margin:.45rem 0;font-weight:720;cursor:pointer;background:#fbfcfd;color:var(--ink)}
.btn-check:checked+.choice{border-color:var(--teal);background:var(--teal-soft);box-shadow:inset 0 0 0 1px var(--teal)}
.status-choice.status-good,.status-choice.status-on_track,.status-choice.status-not_concerned{border-color:var(--good-line);background:var(--good-soft);color:#145a34}
.status-choice.status-could_be_better,.status-choice.status-room_for_improvement,.status-choice.status-somewhat_concerned{border-color:var(--warn-line);background:var(--warn-soft);color:#7d4c08}
.status-choice.status-poor,.status-choice.status-needs_attention,.status-choice.status-very_concerned{border-color:var(--risk-line);background:var(--risk-soft);color:#780014}
.btn-check:checked+.status-choice.status-good,.btn-check:checked+.status-choice.status-on_track,.btn-check:checked+.status-choice.status-not_concerned{border-color:var(--good);box-shadow:inset 0 0 0 2px var(--good);background:#d9f1e2}
.btn-check:checked+.status-choice.status-could_be_better,.btn-check:checked+.status-choice.status-room_for_improvement,.btn-check:checked+.status-choice.status-somewhat_concerned{border-color:var(--warn);box-shadow:inset 0 0 0 2px var(--warn);background:#ffe7bf}
.btn-check:checked+.status-choice.status-poor,.btn-check:checked+.status-choice.status-needs_attention,.btn-check:checked+.status-choice.status-very_concerned{border-color:var(--risk);box-shadow:inset 0 0 0 3px var(--risk);background:#ffc7c2;color:#650010}
.readiness-choice{background:#fbfcfd;color:var(--ink)}
.btn-check:checked+.readiness-choice{border-color:var(--teal);background:var(--teal-soft);box-shadow:inset 0 0 0 1px var(--teal);color:var(--ink)}
.guidance-card p{line-height:1.45}.how-to-use{background:#f5fafb;border-left:4px solid var(--teal);border-radius:12px;padding:.9rem 1rem}.how-to-use h3{font-size:1rem;color:var(--teal);margin:0 0 .25rem}.how-to-use p{margin:0;color:var(--muted)}.find-more{font-weight:700;color:var(--teal)}.nav-actions{display:flex;justify-content:flex-end;gap:.6rem}
.check-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:.65rem}.check-grid label{background:#fbfcfd;border:1px solid var(--line);border-radius:12px;padding:.65rem .75rem;font-weight:650}
.snapshot-table{border-collapse:separate;border-spacing:0 .35rem}.snapshot-table thead th{background:#f5fafb;color:var(--teal);font-size:.82rem;text-transform:uppercase;letter-spacing:.04em}.snapshot-table tbody tr{background:#fff}.snapshot-table tbody th,.snapshot-table tbody td{border-top:1px solid var(--line);border-bottom:1px solid var(--line);vertical-align:middle}.snapshot-table tbody th:first-child,.snapshot-table tbody td:first-child{border-left:1px solid var(--line);border-radius:12px 0 0 12px}.snapshot-table tbody td:last-child{border-right:1px solid var(--line);border-radius:0 12px 12px 0}
.status-pill{display:inline-block;border:1px solid var(--line);border-radius:999px;padding:.28rem .55rem;font-weight:750;font-size:.82rem;background:#f7fafb;color:var(--muted);white-space:nowrap}.status-pill.status-blank{color:var(--muted)}
.status-pill.status-good,.status-pill.status-on_track,.status-pill.status-not_concerned{background:var(--good-soft);border-color:var(--good-line);color:#145a34}.status-pill.status-could_be_better,.status-pill.status-room_for_improvement,.status-pill.status-somewhat_concerned{background:var(--warn-soft);border-color:var(--warn-line);color:#7d4c08}.status-pill.status-poor,.status-pill.status-needs_attention,.status-pill.status-very_concerned{background:var(--risk-soft);border-color:var(--risk-line);color:#780014;border-width:2px}
.guidance-tile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.guidance-summary-tile{position:relative;background:linear-gradient(180deg,#ffffff 0%,#f8fcfd 100%);border:1px solid #cfe1e5;border-top:5px solid var(--teal);border-radius:16px;padding:1rem 1.05rem;box-shadow:0 10px 24px rgba(25,43,54,.06)}.guidance-summary-tile h4{font-size:1.02rem;color:var(--teal);font-weight:850;margin:.05rem 0 .65rem}.guidance-summary-tile p{background:linear-gradient(90deg,#f2fbfc 0%,#fff 100%);border-left:4px solid #9dccd1;border-radius:10px;padding:.75rem .85rem;margin:0 0 .75rem;line-height:1.48;color:var(--ink)}.guidance-more-link{display:inline-block;font-size:.88rem;background:#fff;border:1px solid var(--line);border-radius:999px;padding:.32rem .65rem;text-decoration:none}.guidance-more-link:hover{background:var(--teal-soft);border-color:#b9d9dc}.follow-up-grid{max-width:720px}
.report h3{color:var(--teal);margin-top:1.4rem}.metric{background:#fff;border:1px solid var(--line);border-radius:14px;padding:1rem}.metric strong{display:block;font-size:1.7rem;color:var(--teal)}.metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.8rem}.metric-grid>div{background:#fff;border:1px solid var(--line);border-radius:14px;padding:1rem;color:var(--muted);font-weight:700}.metric-grid strong{display:block;color:var(--teal);font-size:1.65rem}.admin-header{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem}.admin-actions{display:flex;gap:.5rem;flex-wrap:wrap}.admin-filter-grid{display:grid;grid-template-columns:2fr 1.25fr 1fr 1fr 1fr auto;gap:.75rem;align-items:end}.admin-filter-actions{display:flex;gap:.4rem;align-items:center}.quick-tabs{display:flex;gap:.45rem;overflow-x:auto}.quick-tab{white-space:nowrap;text-decoration:none;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--muted);padding:.4rem .75rem;font-weight:750}.quick-tab.active,.quick-tab:hover{background:var(--teal-soft);border-color:#b9d9dc;color:var(--teal)}.admin-table{font-size:.9rem}.admin-table thead th{color:var(--teal);font-size:.75rem;text-transform:uppercase;letter-spacing:.04em}.admin-status{display:inline-block;border-radius:999px;padding:.24rem .52rem;font-weight:800;font-size:.76rem;background:#f7fafb;border:1px solid var(--line);color:var(--muted)}.admin-status.status-completed{background:var(--good-soft);border-color:var(--good-line);color:#145a34}.admin-status.status-started,.admin-status.status-opened{background:var(--warn-soft);border-color:var(--warn-line);color:#7d4c08}.admin-status.status-revoked,.admin-status.status-expired{background:var(--risk-soft);border-color:var(--risk-line);color:#780014}.admin-row-actions{min-width:260px}.admin-row-actions .btn,.admin-row-actions details{margin:.1rem}.copy-link-details{display:inline-block;position:relative}.copy-link-details summary{list-style:none;cursor:pointer}.copy-link-details summary::-webkit-details-marker{display:none}.copy-link-details input{position:absolute;right:0;z-index:3;width:320px}.delete-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem}.delete-summary div{border:1px solid var(--line);border-radius:12px;background:#f8fafb;padding:.75rem}.delete-summary strong{display:block;color:var(--teal)}.timeline{max-height:520px;overflow:auto;font-size:.9rem}.copy-box{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:#f8fafb;border:1px solid var(--line);border-radius:12px;padding:.75rem;word-break:break-all}
@media (max-width:1000px){.admin-filter-grid{grid-template-columns:1fr 1fr}.admin-filter-actions{grid-column:1/-1}.admin-header{display:block}.admin-actions{margin-top:.75rem}}
@media (max-width:700px){.hero{padding:1.5rem}.clinical-header{display:block}.snapshot-table{font-size:.86rem}.status-pill{white-space:normal}.guidance-tile-grid{grid-template-columns:1fr}.nav-actions{justify-content:stretch}.nav-actions .btn{flex:1}.admin-filter-grid{grid-template-columns:1fr}.admin-table{font-size:.82rem}}
