:root{
  --paper:#FAF9F5;
  --card:#FFFFFF;
  --ink:#17171A;
  --ink-2:#5B5B58;
  --ink-3:#8B8A84;
  --line:#E4E1D6;
  --line-strong:#D2CFC1;
  --active:#1F8354;
  --active-bg:rgba(31,131,84,.12);
  --best:#0F6B3E;
  --best-bg:rgba(15,107,62,.14);
  --paused:#B07515;
  --paused-bg:rgba(191,142,30,.15);
  --strict:#C1432B;
  --strict-bg:rgba(193,67,43,.12);
  --flex:#2470B5;
  --flex-bg:rgba(36,112,181,.12);
  --entry:#0E93A6;
  --entry-bg:rgba(14,147,166,.12);
  --warn:#B8862B;
  --warn-bg:rgba(184,134,43,.15);
  --danger:#C22A1E;
  --danger-bg:rgba(194,42,30,.11);
  --conflict:#7A4FB0;
  --conflict-bg:rgba(122,79,176,.12);
  --info:#2470B5;
  --info-bg:rgba(36,112,181,.08);
  --aca:#0E8E8A;
  --aca-bg:rgba(14,142,138,.12);
  --medicare:#5D4BA8;
  --medicare-bg:rgba(93,75,168,.12);
  --dns-strong:#A81E14;
  --dns-strong-bg:rgba(168,30,20,.13);
  --peak-restrict:#C1590E;
  --peak-restrict-bg:rgba(193,89,14,.13);
  --co-restrict:#D9822B;
  --co-restrict-bg:rgba(217,130,43,.13);
  --slate:#4C5B80;
  --slate-bg:rgba(76,91,128,.12);
  --dnc:#5A3E3E;
  --dnc-bg:rgba(90,62,62,.12);
  --contact:#1F7A8C;
  --contact-bg:rgba(31,122,140,.10);
  --radius:10px;
  --radius-sm:6px;
  --shadow:0 1px 2px rgba(23,23,26,.04), 0 8px 24px -12px rgba(23,23,26,.10);
  --disp:'Space Grotesk',system-ui,sans-serif;
  --body:'Inter',system-ui,sans-serif;
  --mono:'IBM Plex Mono',ui-monospace,monospace;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased;}
::selection{background:#D9CFAE;}
a{color:inherit;}
button{font-family:inherit;}
.eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.11em;text-transform:uppercase;color:var(--ink-3);}
.hairline{border:none;border-top:1px solid var(--line);margin:0;}
.app-header{padding:28px 28px 20px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,#FCFBF8,var(--paper));}
.app-header-inner{max-width:1180px;margin:0 auto;}
.app-title{font-family:var(--disp);font-weight:600;font-size:clamp(22px,3vw,30px);letter-spacing:-.01em;margin:6px 0 6px;}
.app-sub{color:var(--ink-2);max-width:720px;font-size:14px;margin:0;}
.app-stats-row{display:flex;gap:22px;flex-wrap:wrap;margin-top:16px;font-family:var(--mono);font-size:12px;color:var(--ink-2);}
.app-stats-row b{color:var(--ink);font-weight:600;}
.compliance-banner{background:var(--ink);color:#F4F2EA;font-family:var(--mono);font-size:11.5px;letter-spacing:.02em;padding:8px 28px;text-align:center;}
.compliance-banner b{color:#fff;}
.app-main{max-width:1180px;margin:0;padding:30px 28px 90px;}
.tab-panel{display:none;animation:fade .25s ease;}
.tab-panel.is-active{display:block;}
@keyframes fade{from{opacity:0;transform:translateY(4px);}to{opacity:1;transform:none;}}
.section-head{margin-bottom:22px;}
.section-num{font-family:var(--mono);font-size:12px;color:var(--ink-3);letter-spacing:.1em;}
.section-title{font-family:var(--disp);font-size:22px;font-weight:600;margin:4px 0 6px;letter-spacing:-.01em;}
.section-desc{color:var(--ink-2);font-size:13.5px;max-width:640px;margin:0;}
.grid{display:grid;gap:14px;}
.grid-3{grid-template-columns:repeat(3,1fr);}
.grid-2{grid-template-columns:repeat(2,1fr);}
@media(max-width:900px){.grid-3{grid-template-columns:repeat(2,1fr);}}
@media(max-width:640px){.grid-3,.grid-2{grid-template-columns:1fr;}}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:16px 17px;}
.stat-card{padding:14px 16px;}
.stat-num{font-family:var(--disp);font-size:26px;font-weight:600;line-height:1;}
.stat-label{font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin-top:6px;}
.tag{display:inline-flex;align-items:center;gap:4px;font-family:var(--mono);font-size:10.5px;letter-spacing:.04em;text-transform:uppercase;padding:3px 8px;border-radius:100px;font-weight:500;}
.tag-active{background:var(--active-bg);color:var(--active);}
.tag-paused{background:var(--paused-bg);color:var(--paused);}
.tag-strict{background:var(--strict-bg);color:var(--strict);}
.tag-flexible{background:var(--flex-bg);color:var(--flex);}
.tag-entry{background:var(--entry-bg);color:var(--entry);}
.tag-track{background:#EFEDE3;color:var(--ink-2);}
.badge{display:inline-flex;align-items:center;gap:5px;font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.03em;padding:5px 10px;border-radius:var(--radius-sm);}
.badge-best{background:var(--active);color:#fff;}
.badge-eligible{background:var(--active-bg);color:var(--active);border:1px solid rgba(47,111,78,.3);}
.badge-possible{background:var(--warn-bg);color:var(--warn);}
.badge-manual{background:var(--conflict-bg);color:var(--conflict);}
.badge-not{background:var(--danger-bg);color:var(--danger);}
.badge-paused{background:var(--entry-bg);color:var(--entry);}
.badge-restricted{background:var(--danger);color:#fff;}
.badge-conflict{background:var(--conflict-bg);color:var(--conflict);border:1px solid rgba(107,76,138,.3);}
.badge-insufficient{background:var(--info-bg);color:var(--info);}
.btn{font-family:var(--mono);font-size:12px;letter-spacing:.02em;border:1px solid var(--line-strong);background:var(--card);color:var(--ink);padding:9px 14px;border-radius:var(--radius-sm);cursor:pointer;transition:all .15s ease;}
.btn:hover{border-color:var(--ink);}
.btn:disabled{opacity:.5;cursor:not-allowed;}
.btn-primary{background:var(--ink);color:#fff;border-color:var(--ink);}
.btn-primary:hover{background:#000;}
.btn-sm{padding:6px 10px;font-size:11px;}
.btn-ghost{border-color:transparent;background:none;}
.btn-ghost:hover{background:var(--entry-bg);}
label{display:block;font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);margin-bottom:5px;}
input[type=text],input[type=number],input[type=date],input[type=email],input[type=password],select,textarea{
  width:100%;border:1px solid var(--line-strong);border-radius:var(--radius-sm);padding:9px 10px;font-family:var(--body);font-size:13.5px;background:#fff;color:var(--ink);
}
textarea{font-family:var(--body);resize:vertical;min-height:90px;}
.field{margin-bottom:13px;}
.field-row{display:flex;gap:12px;flex-wrap:wrap;}
.field-row>.field{flex:1;min-width:150px;}
.check-row{display:flex;align-items:center;gap:8px;padding:7px 0;}
.check-row input{width:auto;}
.check-row span{font-size:13px;}
.check-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2px 16px;}
@media(max-width:640px){.check-grid{grid-template-columns:1fr;}}
table{width:100%;border-collapse:collapse;font-size:13px;}
th{font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);text-align:left;padding:8px 10px;border-bottom:1px solid var(--line-strong);white-space:nowrap;}
td{padding:9px 10px;border-bottom:1px solid var(--line);vertical-align:top;}
tr:last-child td{border-bottom:none;}
.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius);background:#fff;}
.table-wrap table{min-width:560px;}
.co-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:16px 17px;cursor:pointer;transition:box-shadow .15s ease, transform .15s ease;display:flex;flex-direction:column;gap:9px;border-left:4px solid var(--line-strong);}
.co-card:hover{box-shadow:var(--shadow);transform:translateY(-1px);}
.co-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;}
.co-name{font-family:var(--disp);font-weight:600;font-size:16px;letter-spacing:-.01em;}
.co-blurb{color:var(--ink-2);font-size:12.5px;}
.co-meta{font-family:var(--mono);font-size:11px;color:var(--ink-3);display:flex;gap:10px;flex-wrap:wrap;}
.co-tags{display:flex;gap:6px;flex-wrap:wrap;}
.modal-overlay{position:fixed;inset:0;background:rgba(23,23,26,.45);z-index:100;display:none;align-items:flex-start;justify-content:center;padding:40px 16px;overflow-y:auto;}
.modal-overlay.is-open{display:flex;}
.modal{background:var(--paper);border-radius:14px;max-width:760px;width:100%;box-shadow:0 30px 60px -20px rgba(0,0,0,.35);border:1px solid var(--line);animation:pop .18s ease;}
@keyframes pop{from{opacity:0;transform:translateY(8px) scale(.98);}to{opacity:1;transform:none;}}
.modal-head{padding:22px 26px 14px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:flex-start;position:sticky;top:0;background:var(--paper);border-radius:14px 14px 0 0;}
.modal-body{padding:20px 26px 28px;}
.modal-close{background:none;border:none;cursor:pointer;font-size:20px;color:var(--ink-3);line-height:1;padding:4px;}
.modal-close:hover{color:var(--ink);}
.detail-block{margin-bottom:20px;}
.detail-block h4{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin:0 0 8px;display:flex;align-items:center;gap:7px;}
.detail-block ul{margin:0;padding-left:18px;}
.detail-block li{margin-bottom:4px;font-size:13.5px;}
.detail-block p{margin:0;font-size:13.5px;color:var(--ink-2);}
.note-box{background:var(--info-bg);border-left:2px solid var(--flex);border-radius:0 var(--radius-sm) var(--radius-sm) 0;padding:9px 12px;font-size:12.5px;color:var(--ink-2);margin-top:6px;}
.gap-box{background:var(--warn-bg);border-left:2px solid var(--warn);border-radius:0 var(--radius-sm) var(--radius-sm) 0;padding:9px 12px;font-size:12.5px;color:#6B4A10;margin-top:6px;}
.flex-between{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;}
.mt{margin-top:18px;}
.mb{margin-bottom:18px;}
.pill-toggle{display:flex;gap:6px;flex-wrap:wrap;}
.pill{font-family:var(--mono);font-size:11px;padding:6px 11px;border-radius:100px;border:1px solid var(--line-strong);background:#fff;cursor:pointer;color:var(--ink-2);}
.pill.is-on{background:var(--ink);color:#fff;border-color:var(--ink);}
.empty-state{text-align:center;padding:38px 20px;color:var(--ink-3);font-size:13px;border:1px dashed var(--line-strong);border-radius:var(--radius);background:#fff;}
.result-row{border:1px solid var(--line);border-radius:var(--radius);padding:13px 15px;margin-bottom:10px;background:#fff;}
.result-row-head{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:6px;}
.result-reasons{margin:8px 0 0;padding-left:18px;font-size:12.5px;color:var(--ink-2);}
.result-reasons li{margin-bottom:3px;}
.day-group{margin-bottom:22px;}
.day-group h3{font-family:var(--disp);font-size:15px;margin:0 0 10px;padding-bottom:6px;border-bottom:1px solid var(--line);}
.slot-row{display:flex;justify-content:space-between;align-items:center;padding:9px 12px;border:1px solid var(--line);border-radius:var(--radius-sm);margin-bottom:7px;background:#fff;}
.slot-left{display:flex;align-items:center;gap:10px;}
.slot-time{font-family:var(--mono);font-size:11.5px;color:var(--ink-3);min-width:88px;}
.count-input{width:54px;text-align:center;padding:5px;}
.conflict-flag{font-family:var(--mono);font-size:10.5px;color:var(--conflict);background:var(--conflict-bg);padding:2px 7px;border-radius:100px;}
.footer-note{max-width:1180px;margin:0 auto;padding:26px 28px 60px;color:var(--ink-3);font-size:11.5px;font-family:var(--mono);border-top:1px solid var(--line);margin-top:36px;}
.glossary-item{padding:14px 0;border-bottom:1px solid var(--line);}
.glossary-item:last-child{border-bottom:none;}
.glossary-term{font-family:var(--disp);font-weight:600;font-size:14.5px;margin-bottom:3px;}
.glossary-def{color:var(--ink-2);font-size:13px;}
.msg-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:16px 17px;margin-bottom:14px;}
.msg-card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:9px;}
.msg-card-head h4{font-family:var(--disp);font-size:14px;margin:0;}
::-webkit-scrollbar{height:8px;width:8px;}
::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:8px;}

/* =========================== SIDEBAR / APP SHELL =========================== */
.app-shell{display:flex;align-items:stretch;min-height:100vh;}
.main-col{flex:1;min-width:0;display:flex;flex-direction:column;}
.sidebar{width:262px;flex-shrink:0;background:#161513;color:#EFEDE4;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow-y:auto;transition:width .18s ease;z-index:50;}
.sidebar.is-collapsed{width:66px;}
.sidebar-brand{padding:20px 18px 16px;border-bottom:1px solid rgba(255,255,255,.09);}
.sidebar-brand-name{font-family:var(--disp);font-weight:600;font-size:15.5px;color:#fff;letter-spacing:-.01em;line-height:1.25;}
.sidebar-brand-org{font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#B7B4A6;margin-top:3px;}
.sidebar.is-collapsed .sidebar-brand-org,.sidebar.is-collapsed .sidebar-brand-name{display:none;}
.sidebar.is-collapsed .sidebar-brand::after{content:'JR';font-family:var(--disp);font-weight:700;color:#fff;font-size:15px;}
.sidebar-counts{display:flex;gap:10px;padding:12px 18px;border-bottom:1px solid rgba(255,255,255,.09);font-family:var(--mono);font-size:10.5px;}
.sidebar.is-collapsed .sidebar-counts{display:none;}
.sidebar-count-chip{display:flex;flex-direction:column;gap:2px;}
.sidebar-count-chip b{font-family:var(--disp);font-size:16px;color:#fff;font-weight:600;}
.sidebar-count-chip span{color:#A9A69A;text-transform:uppercase;letter-spacing:.06em;font-size:9px;}
.sidebar-nav{flex:1;padding:8px 10px;}
.side-btn{width:100%;display:flex;align-items:center;gap:11px;background:none;border:none;color:#D7D4C8;cursor:pointer;padding:10px 10px;border-radius:8px;font-family:var(--body);font-size:13.2px;text-align:left;margin-bottom:2px;transition:background .12s ease,color .12s ease;white-space:nowrap;overflow:hidden;}
.side-btn:hover{background:rgba(255,255,255,.07);color:#fff;}
.side-btn.is-active{background:#EFEDE4;color:#161513;font-weight:600;}
.side-btn .side-icon{width:17px;height:17px;flex-shrink:0;display:flex;align-items:center;justify-content:center;}
.side-btn .side-icon svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.6;}
.side-btn .side-label{overflow:hidden;text-overflow:ellipsis;}
.sidebar.is-collapsed .side-label{display:none;}
.sidebar.is-collapsed .side-btn{justify-content:center;}
.sidebar-foot{padding:12px 14px 16px;border-top:1px solid rgba(255,255,255,.09);}
.sidebar.is-collapsed .sidebar-foot-text{display:none;}
.collapse-toggle{background:rgba(255,255,255,.07);border:none;color:#D7D4C8;cursor:pointer;width:100%;padding:8px;border-radius:8px;font-family:var(--mono);font-size:11px;margin-bottom:10px;}
.collapse-toggle:hover{background:rgba(255,255,255,.13);color:#fff;}
.shared-status{display:flex;align-items:center;gap:7px;font-family:var(--mono);font-size:10.5px;color:#B7B4A6;}
.shared-status .dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;}
.shared-status .dot.on{background:#4ADE80;box-shadow:0 0 0 3px rgba(74,222,128,.18);}
.shared-status .dot.off{background:#F87171;box-shadow:0 0 0 3px rgba(248,113,113,.18);}

/* user area (new) */
.user-area{border-bottom:1px solid rgba(255,255,255,.09);padding-bottom:12px;margin-bottom:12px;}
.user-area-name{font-family:var(--disp);font-weight:600;font-size:13.5px;color:#fff;}
.user-area-role{display:inline-block;margin-top:3px;font-family:var(--mono);font-size:9.5px;letter-spacing:.06em;text-transform:uppercase;color:#B7B4A6;background:rgba(255,255,255,.08);padding:2px 7px;border-radius:100px;}
.user-area-email{font-family:var(--mono);font-size:10.5px;color:#A9A69A;margin-top:5px;word-break:break-all;}
.sidebar.is-collapsed .user-area{display:none;}
.signout-btn{margin-top:9px;width:100%;background:rgba(255,255,255,.07);border:none;color:#D7D4C8;cursor:pointer;padding:7px;border-radius:8px;font-family:var(--mono);font-size:10.5px;}
.signout-btn:hover{background:rgba(255,255,255,.13);color:#fff;}

.mobile-menu-btn{display:none;position:fixed;top:14px;left:14px;z-index:60;width:40px;height:40px;border-radius:10px;border:1px solid var(--line-strong);background:#fff;box-shadow:var(--shadow);align-items:center;justify-content:center;cursor:pointer;}
.mobile-menu-btn svg{width:19px;height:19px;stroke:var(--ink);fill:none;stroke-width:1.8;}
.sidebar-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:45;}
.sidebar-overlay.is-open{display:block;}
@media(max-width:880px){
  .mobile-menu-btn{display:flex;}
  .sidebar{position:fixed;left:-280px;top:0;height:100vh;width:270px;box-shadow:0 0 40px rgba(0,0,0,.3);transition:left .2s ease;}
  .sidebar.is-open{left:0;}
  .sidebar.is-collapsed{width:270px;}
  .sidebar.is-collapsed .sidebar-brand-name,.sidebar.is-collapsed .sidebar-brand-org,.sidebar.is-collapsed .sidebar-counts,.sidebar.is-collapsed .side-label,.sidebar.is-collapsed .user-area{display:block;}
  .sidebar.is-collapsed .side-btn{justify-content:flex-start;}
  .sidebar.is-collapsed .sidebar-brand::after{display:none;}
  .collapse-toggle{display:none;}
  .app-header{padding-top:60px;}
}

/* =========================== TRACK / RESTRICTION COLORS =========================== */
.tag-track-aca{background:var(--aca-bg);color:var(--aca);}
.tag-track-medicare{background:var(--medicare-bg);color:var(--medicare);}
.co-card.is-aca{border-left-color:var(--aca);}
.co-card.is-medicare{border-left-color:var(--medicare);}
.co-card.is-mixed{border-left-color:var(--aca);border-top:3px solid var(--medicare);}
.co-card.is-paused{opacity:.86;}
.track-dot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:6px;flex-shrink:0;}
.track-dot.aca{background:var(--aca);}
.track-dot.medicare{background:var(--medicare);}
.badge-dns{background:var(--dns-strong);color:#fff;}
.badge-peak-restrict{background:var(--peak-restrict);color:#fff;}
.badge-co-restrict{background:var(--co-restrict-bg);color:var(--co-restrict);border:1px solid rgba(217,130,43,.35);}
.badge-slate{background:var(--slate-bg);color:var(--slate);}
.badge-dnc{background:var(--dnc-bg);color:var(--dnc);}
.badge-warn-cat{background:var(--warn-bg);color:var(--warn);}
.badge-seed{background:#EFEDE3;color:var(--ink-2);font-family:var(--mono);font-size:9.5px;padding:2px 7px;border-radius:100px;letter-spacing:.04em;}
.badge-shared{background:var(--flex-bg);color:var(--flex);font-family:var(--mono);font-size:9.5px;padding:2px 7px;border-radius:100px;letter-spacing:.04em;}

.contact-card{background:var(--contact-bg);border:1px solid rgba(31,122,140,.22);border-radius:var(--radius);padding:12px 14px;display:flex;flex-direction:column;gap:4px;}
.contact-name{font-family:var(--disp);font-weight:600;font-size:13.5px;color:var(--ink);}
.contact-role{font-family:var(--mono);font-size:10.5px;color:var(--contact);text-transform:uppercase;letter-spacing:.05em;}
.contact-email-row{display:flex;align-items:center;gap:8px;margin-top:4px;flex-wrap:wrap;}
.contact-email{font-family:var(--mono);font-size:12px;color:var(--ink-2);word-break:break-all;}
.contact-actions{display:flex;gap:6px;margin-top:4px;}

.section-head.head-aca .section-num{color:var(--aca);}
.section-head.head-medicare .section-num{color:var(--medicare);}
.summary-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(128px,1fr));gap:10px;}
.summary-chip{border-radius:var(--radius);padding:12px 14px;border:1px solid var(--line);}
.summary-chip .num{font-family:var(--disp);font-size:22px;font-weight:600;}
.summary-chip .lbl{font-family:var(--mono);font-size:9.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-2);margin-top:3px;}
.storage-banner{border:1px solid var(--line);border-radius:var(--radius);padding:11px 14px;font-size:12.5px;display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.storage-banner.on{background:var(--active-bg);border-color:rgba(31,131,84,.3);color:var(--active);}
.storage-banner.off{background:var(--danger-bg);border-color:rgba(194,42,30,.3);color:var(--danger);}
.storage-banner.pending{background:var(--warn-bg);border-color:rgba(184,134,43,.3);color:var(--warn);}

/* =========================== QUICK MATCH =========================== */
.qm-columns{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
@media(max-width:800px){.qm-columns{grid-template-columns:1fr;}}
.qm-col{border-radius:var(--radius);border:1px solid var(--line);overflow:hidden;background:#fff;}
.qm-col-aca{border-color:rgba(14,142,138,.35);}
.qm-col-medicare{border-color:rgba(93,75,168,.35);}
.qm-col-head{padding:12px 16px;font-family:var(--disp);font-weight:600;font-size:14px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;list-style:none;}
.qm-col-head::-webkit-details-marker{display:none;}
.qm-col-aca .qm-col-head{background:var(--aca-bg);color:var(--aca);}
.qm-col-medicare .qm-col-head{background:var(--medicare-bg);color:var(--medicare);}
.qm-col-body{padding:14px 16px;}
.qm-col.is-deemphasized{opacity:.55;}
.qm-col.is-deemphasized:hover{opacity:.9;}
.chip-row{display:flex;flex-wrap:wrap;gap:6px;}
.state-chip{display:inline-flex;align-items:center;gap:5px;background:var(--ink);color:#fff;font-family:var(--mono);font-size:11px;padding:3px 6px 3px 9px;border-radius:100px;}
.state-chip button{background:none;border:none;color:#fff;opacity:.7;cursor:pointer;font-size:11px;padding:0;}
.state-chip button:hover{opacity:1;}
.state-grid{display:flex;flex-wrap:wrap;gap:5px;max-height:170px;overflow-y:auto;padding:8px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper);}
.state-pill{font-family:var(--mono);font-size:11px;padding:5px 9px;border-radius:6px;border:1px solid var(--line-strong);background:#fff;color:var(--ink-2);cursor:pointer;}
.state-pill.is-on{background:var(--ink);color:#fff;border-color:var(--ink);}
.slot-chip{font-family:var(--mono);font-size:11px;padding:6px 10px;border-radius:100px;cursor:pointer;border:1px solid var(--line-strong);background:#fff;color:var(--ink-2);}
.slot-chip.track-aca.is-on{background:var(--aca);color:#fff;border-color:var(--aca);}
.slot-chip.track-medicare.is-on{background:var(--medicare);color:#fff;border-color:var(--medicare);}
.qm-results-group{margin-bottom:26px;}
.qm-results-group-head{display:flex;align-items:center;gap:9px;padding-bottom:8px;margin-bottom:12px;border-bottom:2px solid;}
.qm-results-group-head.aca{border-color:var(--aca);color:var(--aca);}
.qm-results-group-head.medicare{border-color:var(--medicare);color:var(--medicare);}
.qm-results-group-head h3{font-family:var(--disp);font-size:15px;margin:0;}
.peak-parent-label{font-family:var(--mono);font-size:9.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--peak-restrict);background:var(--peak-restrict-bg);padding:2px 8px;border-radius:100px;margin-right:8px;}

/* =========================== AUTH SCREEN (new) =========================== */
.auth-screen{position:fixed;inset:0;background:var(--paper);z-index:200;display:flex;align-items:center;justify-content:center;padding:24px;}
.auth-card{max-width:400px;width:100%;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:30px 28px;box-shadow:var(--shadow);}
.auth-brand-name{font-family:var(--disp);font-weight:600;font-size:22px;letter-spacing:-.01em;}
.auth-brand-org{font-family:var(--mono);font-size:10.5px;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-3);margin-top:4px;}
.auth-copy{color:var(--ink-2);font-size:13px;margin:16px 0 20px;}
.auth-msg{margin-top:14px;font-size:12.5px;}
.auth-links{display:flex;justify-content:space-between;margin-top:10px;font-family:var(--mono);font-size:11.5px;}
.auth-links a{cursor:pointer;color:var(--flex);text-decoration:underline;}
