/* Tokens and selected design 1/7 rules lifted from the approved generator. */
:root{--p:#2A6BD6;--pd:#1F54AC;--ps:#EAF2FC;--s:#0F2447;--s2:#16315F;--ink:#0F2447;--mute:#5f6e84;--line:#dfe6f0;--ok:#1B7A3D;--okbg:#E8F5EC;--warn:#1F54AC;--warnbg:#EAF2FC;--bad:#b42318;--h:"Montserrat",Arial,sans-serif;--b:"Open Sans",Arial,sans-serif;--sh:0 1px 2px rgba(15,36,71,.05),0 8px 24px rgba(15,36,71,.07)}
.form{background:#fff;border-bottom:1px solid var(--line);padding:26px 32px 28px}
.steps{display:grid;grid-template-columns:1fr 1.15fr 1fr 1fr;gap:24px}
.st h3{font:800 15px var(--h);display:flex;align-items:center;gap:10px;margin-bottom:14px;color:var(--s)}.st h3 i{display:inline-flex;width:30px;height:30px;border-radius:8px;background:var(--p);color:#fff;align-items:center;justify-content:center;font:800 14px var(--h);font-style:normal}.st h3 svg{color:var(--p)}
.st label{display:block;font-weight:700;font-size:13px;color:var(--s);margin:12px 0 6px}.st label:first-of-type{margin-top:0}
.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.person{padding:0 0 12px;margin-bottom:12px;border-bottom:1px solid var(--line)}.person .rm{color:#8a94a6;cursor:pointer}.person .who{font:800 13px var(--h);color:var(--mute);letter-spacing:.05em;text-transform:uppercase;margin-bottom:8px;display:flex;justify-content:space-between}.person .who svg{color:#8a94a6}
.addrow{display:flex;gap:10px;margin-top:10px}
.chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.chip{display:inline-flex;align-items:center;gap:8px;height:40px;border:2px solid #c7d6ef;border-radius:9px;padding:0 12px;font-size:14px;font-weight:600;background:#fff}.chip.on{border-color:var(--p);background:var(--ps);color:var(--pd)}.chip svg{color:var(--mute)}
.tabs{padding:14px 32px 0;background:#fff;border-bottom:1px solid var(--line);font-size:15px;display:flex;justify-content:space-between;align-items:flex-end}.tabs span{display:inline-block;padding:0 14px 12px;color:var(--pd);border-bottom:3px solid var(--p);font-weight:800}.tabs .acts{display:flex;gap:16px;padding-bottom:10px;font-size:14px;color:var(--pd);font-weight:600}.tabs .acts span{border:0;padding:0;display:inline-flex;align-items:center;gap:6px}
.body{display:grid;grid-template-columns:260px 1fr;gap:24px;padding:24px 32px 70px}
.side{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px 20px;box-shadow:var(--sh);align-self:start;position:sticky;top:12px}
.side h5{font:800 12px var(--h);letter-spacing:.07em;text-transform:uppercase;color:var(--s);margin:18px 0 10px}.side h5:first-child{margin-top:0}.side .sl{height:6px;background:#dbe4f3;border-radius:3px;position:relative;margin:30px 0 8px}.side .sl i{position:absolute;right:0;top:-8px;width:22px;height:22px;border-radius:6px;background:var(--p);border:3px solid #fff;box-shadow:0 1px 4px rgba(15,36,71,.35)}.side .sl b{position:absolute;left:0;top:-24px;font:700 13px var(--b);color:var(--pd)}
.side a{display:inline-flex;align-items:center;gap:6px;font-size:14px;color:var(--p);margin:4px 0 2px;text-decoration:none;font-weight:700}
.side label{display:flex;align-items:center;gap:10px;font-size:14px;color:#3b475b;padding:6px 0;font-weight:600}.side label i{width:22px;height:22px;border:2px solid #b7c0cf;border-radius:6px;display:inline-block;background:#fff;flex:none}.side label i.on{background:var(--p);border-color:var(--p);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3'%3E%3Cpath d='M5 12l5 5L20 7'/%3E%3C/svg%3E");background-size:16px;background-position:center;background-repeat:no-repeat}
.side hr{border:0;border-top:1px solid var(--line);margin:14px 0}
.list .lh{display:flex;justify-content:space-between;align-items:center;font-size:15px;color:var(--mute);margin-bottom:14px}.list .lh b{color:var(--s);font-size:17px}.list .lh .sel{border:2px solid #c7d6ef;border-radius:10px;height:44px;display:inline-flex;align-items:center;padding:0 14px;background:#fff;color:var(--s);font-weight:700;margin-left:10px}
.card{border:1px solid var(--line);border-radius:14px;margin-bottom:16px;box-shadow:var(--sh);background:#fff;overflow:hidden}.card.best{border:2px solid var(--p)}
.card .ct{display:flex;justify-content:space-between;align-items:flex-start;padding:18px 22px 10px}.card .ct b{font:800 19px/1.25 var(--h);color:var(--s);display:block;margin-bottom:6px}.card .ct .tg{font-size:12px;letter-spacing:.06em;color:var(--mute);text-transform:uppercase;font-weight:700;display:flex;align-items:center;gap:8px}.card .ct .tg i{display:inline-block;width:10px;height:10px;border-radius:2px}.card .ct img{height:30px;max-width:140px}
.pick{display:inline-flex;align-items:center;gap:5px;font:800 11px var(--h);letter-spacing:.05em;text-transform:uppercase;border-radius:6px;padding:4px 9px;background:var(--p);color:#fff;margin-left:10px;vertical-align:middle}.pick.alt{background:var(--s)}
.card .cm{display:grid;grid-template-columns:1.1fr 1fr 1.5fr;gap:18px;padding:6px 22px 16px;align-items:start}.card .cm .num{font:800 34px/1 var(--h);color:var(--s);letter-spacing:-.02em}.card .cm .num+div{font-size:14px;color:var(--mute);margin-top:4px}.card .cm .was{display:block;color:var(--bad);font-size:13px;text-decoration:line-through;margin-top:2px}.card .cm .sub{font-size:12px;color:#8a94a6;display:block;margin-top:2px}
.card .cm .rt{background:#F7F9FC;border-radius:10px;padding:10px 14px}.card .cm .rt div{display:flex;justify-content:space-between;font-size:14px;padding:5px 0;color:#3b475b;border-top:1px solid #e9eef5}.card .cm .rt div:first-child{border-top:0}.card .cm .rt div span:first-child{display:inline-flex;align-items:center;gap:5px}.card .cm .rt div span:last-child{font-weight:800;color:var(--s)}
.card .yd{border-top:1px solid var(--line);padding:12px 22px;background:#FBFCFE}.card .yd .h{display:flex;justify-content:space-between;font:800 13px var(--h);color:var(--s);margin-bottom:4px}.card .yd .h span:first-child{display:inline-flex;align-items:center;gap:7px}.card .yd .h span:first-child svg{color:var(--p)}.card .yd .h span:last-child{color:var(--ok)}
.card .yd .dr{display:flex;justify-content:space-between;gap:12px;font-size:14px;padding:7px 0;border-top:1px solid #eef1f6}.card .yd .dr b{white-space:nowrap;font-size:15px}.card .yd .dr b small{font-weight:400;color:var(--mute);margin-left:8px;font-size:12px}
.card .cf{display:flex;justify-content:space-between;align-items:center;padding:14px 22px;border-top:1px solid var(--line);font-size:14px;gap:12px}.card .cf .ck{display:flex;align-items:center;gap:8px;color:#3b475b;font-weight:600}.card .cf .ck i{width:22px;height:22px;border:2px solid #b7c0cf;border-radius:6px;display:inline-block;background:#fff}.card .cf .l{display:flex;align-items:center;gap:12px}
.body.nos{grid-template-columns:1fr}
.card .yd.closed .h{margin:0;cursor:pointer}.card .yd.closed .h span:last-child{color:var(--ink)}.card .yd.closed .h b{color:var(--ok);margin-right:10px}
.metal{display:inline-flex;align-items:center;gap:6px;font:800 11px var(--h);letter-spacing:.05em;text-transform:uppercase;border-radius:6px;padding:4px 9px}.metal svg{width:13px;height:13px}.metal.silver{background:#EEF1F5;color:#4b5a70}.metal.bronze{background:#F6E3D3;color:#7a4a12}.metal.platinum{background:#E6EEF9;color:#2b4a7a}
.net{display:inline-flex;align-items:center;font:800 11px var(--h);letter-spacing:.05em;text-transform:uppercase;border-radius:6px;padding:4px 9px}.net.hmo{background:#EAF2FC;color:#1F54AC}.net.epo{background:#E8F5EC;color:#1B7A3D}.net.ppo{background:#F1EAFB;color:#5b2d9e}
.card .ct .tg{align-items:center}.card .ct .tg .ok{display:inline-flex;align-items:center;gap:4px;color:var(--ok);font-weight:700;text-transform:none;letter-spacing:0;font-size:13px}
.gp{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:22px 32px 0;background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 18px 14px 22px;box-shadow:var(--sh)}.gp .tc{display:flex;align-items:center;gap:14px}.gp .tc b{font:800 22px var(--h);color:var(--ok)}.gp .tc span{font-size:14px;color:var(--mute)}.gp .tc .csr{background:var(--ps);color:var(--pd);border-radius:6px;padding:2px 9px;font:800 12px var(--h)}.gp .btn{width:auto;min-width:300px}
.form.inpage{padding-bottom:22px}
.medin{display:flex;gap:8px}.medin .in{flex:1}.medin .btn{height:52px}
.medlist{display:flex;flex-direction:column;gap:6px;margin-top:10px}.medlist div{display:flex;justify-content:space-between;align-items:center;height:44px;border:2px solid var(--line);border-radius:9px;padding:0 10px 0 14px;font-weight:600;font-size:14px;background:#fff}.medlist div svg{color:var(--mute)}
.onerow{display:grid;grid-template-columns:1.2fr .8fr 1fr .7fr .7fr 1.4fr 1.4fr auto;gap:10px;align-items:end;background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px 20px;margin:24px 32px 0;box-shadow:var(--sh)}.onerow label{display:block;font-weight:700;font-size:12px;color:var(--s);margin-bottom:6px}.onerow .btn{height:52px}
.side.dark{background:var(--s);border-color:var(--s)}.side.dark h5{color:#9fc0ff}.side.dark label{color:#e6ecf7}.side.dark label i{background:transparent;border-color:#5b6f94}.side.dark label i.on{background:#8fb8ff;border-color:#8fb8ff}.side.dark a{color:#9fc0ff}.side.dark .sl{background:#2c4576}.side.dark .sl b{color:#fff}.side.dark hr{border-color:#2c4576}
/* plan code + the carrier's extras under the short plan title; official carrier logos keep their shape (carriers.js, Oct 27 2026) */
#plans .card .ct .psub{display:block;font:500 13px/1.4 var(--b);color:var(--mute);margin:-3px 0 8px;letter-spacing:0;text-transform:none}
#plans .card .ct img.carrier-logo{width:auto;object-fit:contain;object-position:right center}
#plans .card .ct img.carrier-logo.wide{height:22px;max-width:200px}
#final-details .main .hd .psub,#final-compare .cmp .c.h .psub{display:block;font:500 13px/1.4 var(--b);color:var(--mute);margin:-4px 0 10px;letter-spacing:0;text-transform:none}
#final-compare .cmp .c.h .psub{font-size:12px;margin:-2px 0 8px}
#final-details .main .hd img.carrier-logo{width:auto;object-fit:contain;object-position:right center}
#final-details .main .hd img.carrier-logo.wide{height:24px;max-width:210px}
#final-compare .cmp .c.h img.carrier-logo.wide{height:20px;max-width:170px}

/* Shared usage controls in the pre-search sidebar. */
.side .v4-usage{display:flex;gap:6px;margin:8px 0 16px;flex-wrap:wrap}
.side .v4-usage button{flex:1;padding:8px 10px;border:1px solid #c7d6ef;border-radius:8px;background:#fff;color:var(--pd);font:700 12px var(--b);cursor:pointer}
.side .v4-usage button[aria-pressed="true"]{background:var(--p);border-color:var(--p);color:#fff}
.side .v4-usage button:focus-visible{outline:2px solid var(--pd);outline-offset:2px}
.side .v4-usage button:disabled{opacity:.55;cursor:default}

/* Tab design 3: product icons, count boxes and a transform-only underline. */
#search-results .tabs:has(.product-tabs){display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:24px;padding:12px 32px 0;margin:0;border:0;border-bottom:1px solid var(--line);background:#fff;color:var(--ink);font:400 15px/22px var(--b);isolation:isolate}
#search-results .tabs:has(.product-tabs) span{display:inline;padding:0;border:0;font-weight:inherit;color:inherit}
#search-results .tabs-viewport{position:relative;flex:0 1 auto;min-width:0}
#search-results .product-tabs{display:flex;flex-wrap:nowrap;align-items:stretch;gap:24px;min-width:0;padding:4px;margin:0;overflow-x:auto;scrollbar-width:none;overscroll-behavior-x:contain;scroll-padding:8px}
#search-results .product-tabs::-webkit-scrollbar{display:none}
#search-results .product-tabs [role=tab]{appearance:none;position:relative;display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;gap:8px;min-width:0;height:44px;min-height:44px;margin:0;padding:0 4px;border:0;border-radius:4px;outline:0;background:transparent;color:rgba(15,36,71,.6);font:600 15px/22px var(--b);white-space:nowrap;cursor:pointer;transition:background-color 160ms,color 160ms}
#search-results .product-tabs [role=tab][aria-selected=true]{color:var(--p)}
#search-results .product-tabs [role=tab]::after{content:"";position:absolute;height:2px;left:0;right:0;bottom:-4px;border-radius:4px;background:var(--p);transform:scaleX(0);transform-origin:left center;transition:transform 220ms cubic-bezier(.22,.8,.25,1)}
#search-results .product-tabs [role=tab][aria-selected=true]::after{transform:scaleX(1)}
#search-results .tabs .product-tabs .tab-icon{display:block;width:18px;height:18px;flex:none;color:currentColor}
#search-results .tabs .product-tabs span.count{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:20px;padding:0 6px;border:0;border-radius:4px;background:var(--ps);color:var(--ink);font:600 11px/16px var(--b);font-variant-numeric:tabular-nums}
#search-results .tabs:has(.product-tabs) .acts{display:flex;flex:0 0 auto;align-items:center;gap:16px;margin:0 0 0 auto;padding:0 0 4px}
#search-results .tabs:has(.product-tabs) .acts .btn{appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;height:auto;min-width:0;padding:0 6px;border:0;border-radius:4px;box-shadow:none;background:transparent;color:var(--p);font:600 14px/22px var(--b);white-space:nowrap;cursor:pointer}
#search-results .tabs:has(.product-tabs) button:focus-visible{outline:2px solid var(--p);outline-offset:2px;border-radius:4px;z-index:2}
#search-results .product-tabs [role=tab]:disabled{opacity:.5;cursor:default}
@media(hover:hover){#search-results .tabs:has(.product-tabs) button:not(:disabled):hover{background:#F1F6FD;text-decoration:none}}
#search-results [role=tabpanel][hidden]{display:none}
#search-results:has(.product-panel:not([hidden])) #filters-open{display:none!important}
#search-results:has(#health-plans-tab[aria-selected=true]) #anc{display:none}
#search-results .product-tabs [hidden]{display:none}
@media(max-width:1100px){
#search-results .tabs:has(.product-tabs){flex-wrap:wrap;gap:0;padding:8px 16px 0}
#search-results .tabs-viewport{flex:1 1 100%;width:100%;min-width:0}
#search-results .tabs-viewport::before,#search-results .tabs-viewport::after{content:"";position:absolute;top:0;bottom:0;width:28px;pointer-events:none;z-index:3;opacity:0;transition:opacity 160ms}
#search-results .tabs-viewport::before{left:-1px;background:linear-gradient(to right,#fff 5%,rgba(255,255,255,0))}
#search-results .tabs-viewport::after{right:-1px;background:linear-gradient(to left,#fff 5%,rgba(255,255,255,0))}
#search-results .tabs-viewport[data-left=true]::before,#search-results .tabs-viewport[data-right=true]::after{opacity:1}
#search-results .product-tabs{gap:20px;padding:4px 4px 6px;scroll-padding:32px}
#search-results .tabs:has(.product-tabs) .acts{gap:16px;padding:0;min-height:48px}
}
@media(prefers-reduced-motion:reduce){#search-results .product-tabs [role=tab],#search-results .product-tabs [role=tab]::after,#search-results .tabs-viewport::before,#search-results .tabs-viewport::after{transition:none}}
