/* CodeCheck Colorado prototype · accounts, sign-in and preview-admin screens. Same tokens as plumbing.html + app.css:
   flag blue #002868, navy #0B1B33, gold #FFD700, red #BF0A30, amber Unverified. Built from _build/auth.css by _build/pages.py. */
/* ---- welcome ---- */
.wl{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;background:var(--canvas)}
.wl-top{position:relative;background:var(--flagblue);padding:calc(env(safe-area-inset-top,0px) + 44px) 22px 56px;overflow:hidden;flex:1 0 auto;display:flex;align-items:center}
.wl-top .mtn{position:absolute;left:0;right:0;bottom:0;width:100%;height:84px}
.wl-in{position:relative;width:100%}
.wl-logo{width:72px;height:72px;border-radius:20px;background:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 20px -6px rgba(0,0,0,.45)}
.wl-wm{margin-top:18px;font-size:34px;font-weight:850;letter-spacing:-1.1px;color:#fff;line-height:1.05}
.wl-wm span{color:var(--safety)}
.wl-val{margin-top:12px;font-size:17px;font-weight:600;line-height:1.38;color:#DDE4F0;max-width:340px}
.wl-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:22px}
.wl-st{min-height:64px;background:rgba(255,255,255,.12);box-shadow:inset 0 0 0 1px rgba(255,255,255,.16);border-radius:14px;padding:9px 10px;display:flex;flex-direction:column;justify-content:center}
.wl-st b{font-size:22px;font-weight:850;letter-spacing:-.6px;color:var(--safety);line-height:1.05}
.wl-st span{font-size:11.5px;font-weight:650;color:#DDE4F0;line-height:1.2;margin-top:2px}
.wl-stripe{height:6px;background:linear-gradient(90deg,#BF0A30 0,#BF0A30 50%,#FFD700 50%);flex:0 0 auto}
main.wl-bot{padding:18px 18px calc(18px + env(safe-area-inset-bottom,0px))!important;display:flex;flex-direction:column;gap:10px}
.wl-loc{display:flex;gap:10px;align-items:center;min-height:44px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:10px 12px;font-size:13px;font-weight:600;color:var(--ink);line-height:1.35;box-shadow:var(--shadow)}
.wl-loc svg{flex:0 0 auto}.wl-loc b{font-weight:800}
.wl-b{width:100%;min-height:54px!important;font-size:17px!important;border-radius:14px!important}
.btn.y{box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 6px 14px -4px rgba(233,178,31,.45)}
.wl-ghost{background:#fff!important;color:var(--flagblue)!important;border:2px solid var(--flagblue)}
.wl-fine{font-size:11.5px;font-weight:550;color:var(--muted);text-align:center;line-height:1.4;margin-top:2px}
.wl-admin{align-self:center;display:inline-flex;align-items:center;min-height:44px;padding:0 14px;font-size:12.5px;font-weight:700;color:var(--muted);text-decoration:underline;text-decoration-color:#C9D3E6;text-underline-offset:3px}
/* ---- band headings for account screens ---- */
.bh{position:relative;font-size:24px;font-weight:850;letter-spacing:-.7px;color:#fff;line-height:1.15;margin-top:2px}
.steps{font-size:11.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#C9D3E6;margin-bottom:4px}
.steps b{color:var(--safety);font-weight:800}
.band.nb .sbox{margin-top:12px}
.locoff{display:flex;gap:8px;align-items:center;min-height:44px;margin-top:10px;background:rgba(255,255,255,.12);box-shadow:inset 0 0 0 1px rgba(255,255,255,.16);border-radius:12px;padding:8px 12px;font-size:13px;font-weight:650;color:#fff;line-height:1.35}
.locoff svg{flex:0 0 auto}
/* ---- forms ---- */
.frm{margin-top:14px;padding:16px}
.frm.in{margin-top:12px;padding:0;border:0;box-shadow:none;background:none}
.fld+.fld,.fld+.two,.two+.fld{margin-top:14px}
.two{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1fr);gap:10px}.two .fld+.fld{margin-top:0}
.fl{display:block;font-size:13px;font-weight:800;color:var(--ink);margin-bottom:6px;letter-spacing:-.1px}
.fl .opt{font-weight:600;color:var(--muted);font-size:12px;margin-left:4px}
.fh{font-size:11.5px;color:var(--muted);font-weight:550;margin-top:5px}
.fld input,.fld textarea{width:100%;height:50px;border:1.5px solid #CBD2DE;border-radius:12px;background:#fff;padding:0 13px;font-size:16px;font-weight:550;color:var(--ink);outline:0;-webkit-appearance:none;appearance:none}
.fld textarea{height:auto;min-height:104px;padding:12px 13px;line-height:1.4;resize:vertical;font-family:inherit}
.fld input:focus,.fld textarea:focus{border-color:var(--flagblue);box-shadow:0 0 0 3px rgba(0,40,104,.15)}
.fld input::placeholder,.fld textarea::placeholder{color:#8A93A6;font-weight:500}
.pw{position:relative;display:block}.pw input{padding-right:52px}
.pwt{position:absolute;right:3px;top:3px;width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:10px}
.pwt.on svg{stroke:var(--flagblue)}
.selw.full{display:block}.selw.full select{border:1.5px solid #CBD2DE;background:#fff;height:50px}
.ferr{min-height:0;font-size:13px;font-weight:700;color:var(--red);margin-top:10px;line-height:1.35}.ferr:empty{margin-top:0}
.btn.wide{width:100%;min-height:52px;font-size:16px;margin-top:14px;border-radius:14px}
.btn.red{background:var(--red);color:#fff}
.btn.redo{background:#fff;color:var(--red);border:1.5px solid rgba(191,10,48,.45)}
.btn:disabled{opacity:.5}
.frow2{display:flex;justify-content:center;margin-top:6px}
.lnk{display:inline-flex;align-items:center;gap:6px;min-height:44px;font-size:14px;font-weight:750;color:var(--ink);text-decoration:underline;text-decoration-color:var(--safety);text-decoration-thickness:2px;text-underline-offset:3px}
.alt{margin-top:12px;text-align:center;font-size:14px;font-weight:600;color:var(--muted);display:flex;flex-wrap:wrap;justify-content:center;align-items:center;column-gap:6px}
.trs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.trb{display:inline-flex;align-items:center;justify-content:flex-start;gap:8px;min-height:48px;padding:0 12px;border-radius:12px;background:#fff;border:1.5px solid #CBD2DE;font-size:14.5px;font-weight:750;color:var(--ink)}
.trb svg{flex:0 0 auto;width:26px;height:26px;padding:4px;border-radius:8px;background:var(--bluet)}
.trb.on{border-color:var(--flagblue);background:var(--flagblue);color:#fff}.trb.on svg{background:var(--safety)}
.trb.sm{min-height:40px;font-size:13.5px}
.cityf{width:100%;min-height:50px;display:flex;align-items:center;gap:10px;border:1.5px solid #CBD2DE;border-radius:12px;background:#fff;padding:0 12px;font-size:15px;font-weight:600;color:var(--muted);text-align:left}
.cityf span{flex:1;min-width:0}.cityf b{color:var(--ink);font-weight:800}
.planr{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:48px;margin-top:14px;padding:0 12px;border-radius:12px;background:var(--bluet);font-size:13px;font-weight:700;color:var(--muted)}
.planr b{color:var(--ink);font-weight:800;font-size:14px}
.demo{margin-top:14px;display:flex;align-items:center;gap:12px;padding:12px 14px;min-height:60px}
.demo .fi{width:38px;height:38px;border-radius:11px;background:var(--safety);display:flex;align-items:center;justify-content:center;flex:0 0 auto}
.demo>div:nth-child(2){flex:1;min-width:0}.demo b{display:block;font-size:14px;font-weight:800}.demo span{display:block;font-size:12.5px;color:var(--muted);font-weight:550;margin-top:1px}
/* ---- city picker ---- */
.cpick{margin-top:12px;padding:2px 0;overflow:hidden}
.prow{width:100%;display:flex;align-items:center;gap:12px;min-height:58px;padding:8px 14px;text-align:left}
.prow+.prow{border-top:1px solid var(--line)}
.prow .rad{width:24px;height:24px;border-radius:50%;border:2px solid #B4BCCB;flex:0 0 auto;display:flex;align-items:center;justify-content:center}
.prow.on{background:#F6F8FD}.prow.on .rad{background:var(--safety);border-color:var(--safety)}
.prow .pt{flex:1;min-width:0}.prow .pt b{display:block;font-size:15.5px;font-weight:800;letter-spacing:-.2px}
.prow .pt small{display:block;font-size:12px;font-weight:550;color:var(--muted);margin-top:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
body[data-page="signup"] main{padding-bottom:calc(110px + env(safe-area-inset-bottom,0px))!important}
.stick{position:fixed;left:0;right:0;bottom:0;z-index:40;display:flex;justify-content:center;pointer-events:none}
.stin{pointer-events:auto;width:100%;max-width:430px;background:var(--navy);padding:12px 16px calc(12px + env(safe-area-inset-bottom,0px));display:flex;align-items:center;gap:12px;box-shadow:0 -8px 20px -10px rgba(0,0,0,.5)}
.stin .sel{flex:1;min-width:0;color:#fff}.stin .sel small{display:block;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#C9D3E6}
.stin .sel b{display:block;font-size:16px;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stin .sel b.none{color:#8EA0BF;font-weight:650}
.stin .btn{min-height:50px;padding:0 18px;font-size:15.5px;flex:0 0 auto}
/* ---- home: your-city chip, avatar, announcement ---- */
a.av{position:relative;text-decoration:none}
a.av:after{content:"";position:absolute;inset:-4px}
.loc.yc{position:relative;padding:4px 4px 4px 9px;gap:6px;max-width:calc(100% - 118px);min-width:0}
.loc.yc:after{content:"";position:absolute;left:0;right:0;top:-6px;bottom:-6px}
.loc.yc .yt{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.chgb{flex:0 0 auto;background:var(--safety);color:var(--navy);font-size:11.5px;font-weight:800;padding:4px 9px;border-radius:14px}
.ann{display:flex;gap:11px;align-items:center;padding:11px 12px 11px 14px;margin-bottom:10px;border-left:4px solid var(--safety);background:#FFFDF2}
.ann .fi{width:38px;height:38px;border-radius:11px;background:var(--safety);display:flex;align-items:center;justify-content:center;flex:0 0 auto}
.ann .t{flex:1;min-width:0}.ann small{display:block;font-size:10.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--red)}
.ann b{display:block;font-size:15px;font-weight:800;letter-spacing:-.2px;margin-top:1px}
.ann .t span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:12.5px;font-weight:550;color:var(--muted);line-height:1.35;margin-top:2px}
.ann.offp{opacity:.55}
.pendt{display:inline-flex;align-items:center;gap:4px;background:#EAF0FF;color:#1D3F8F;border:1px solid #B9C9F0;font-size:9.5px;font-weight:850;letter-spacing:.08em;padding:2px 7px;border-radius:20px;text-transform:uppercase;white-space:nowrap;vertical-align:middle}
.eyebrow .pendt{letter-spacing:.06em}
/* ---- account ---- */
.acct{position:relative;display:flex;align-items:center;gap:14px;margin-top:4px}
.av2{width:62px;height:62px;border-radius:50%;background:var(--safety);color:var(--navy);font-size:26px;font-weight:850;display:flex;align-items:center;justify-content:center;flex:0 0 auto;box-shadow:0 6px 14px -6px rgba(0,0,0,.5)}
.acct .an{min-width:0}.acct h2{font-size:22px;font-weight:850;letter-spacing:-.5px;color:#fff;line-height:1.15;overflow-wrap:anywhere}
.acct .an>div{font-size:13px;font-weight:600;color:#C9D3E6;margin-top:2px;overflow-wrap:anywhere}
.demot{display:inline-flex;align-items:center;background:var(--safety);color:var(--navy);font-size:9.5px;font-weight:850;letter-spacing:.08em;text-transform:uppercase;padding:2px 7px;border-radius:20px;margin-top:5px;white-space:nowrap}
.alist{padding:0 14px}
.arow{display:flex;align-items:center;gap:10px;min-height:50px;padding:8px 0;font-size:13.5px}
.arow+.arow{border-top:1px solid var(--line)}
.arow>span:first-child{flex:0 0 auto;width:104px;color:var(--muted);font-weight:650}
.arow b{flex:1;min-width:0;font-weight:750;text-align:right;overflow-wrap:anywhere}.arow b small{display:block;font-size:11.5px;font-weight:550;color:var(--muted)}
.arow>svg{flex:0 0 auto}
.mu{color:var(--muted);font-weight:550;font-size:13px}
.atr{padding:12px 14px;display:flex;flex-wrap:wrap;gap:8px;min-height:56px}
.acity{display:flex;align-items:center;gap:10px;padding:12px 14px;border-left:4px solid var(--red)}
.acity .pin{width:38px;height:38px;border-radius:11px;background:var(--flagblue);display:flex;align-items:center;justify-content:center;flex:0 0 auto}
.acity .nm{flex:1;min-width:0;min-height:44px;display:flex;flex-direction:column;justify-content:center}.acity .nm b{font-size:16px;font-weight:800;letter-spacing:-.3px}.acity .nm small{font-size:12px;font-weight:600;color:var(--muted)}
.acity .chg{display:inline-flex;align-items:center;min-height:44px;padding:0 4px;font-size:13px;font-weight:800;color:var(--ink);text-decoration:underline;text-decoration-color:var(--safety);text-decoration-thickness:2px;text-underline-offset:3px}
.acity .chg:after{display:none}
.aplan,a.card.asv{display:flex;align-items:center;gap:12px;padding:12px 14px;min-height:62px}
.asv{margin-top:10px}
.aplan .fi,.asv .fi{width:38px;height:38px;border-radius:11px;background:var(--safety);display:flex;align-items:center;justify-content:center;flex:0 0 auto}
.asv .fi{background:var(--flagblue)}
.aplan>div:nth-child(2),.asv>div:nth-child(2){flex:1;min-width:0}
.aplan b,.asv b{display:block;font-size:15px;font-weight:800}.aplan span:not(.vtag),.asv>div span{display:block;font-size:12.5px;color:var(--muted);font-weight:550;margin-top:1px}
.asv .cnt{font-size:18px;font-weight:850}
/* ---- bottom sheet ---- */
.sh{position:fixed;inset:0;z-index:150;display:flex;align-items:flex-end;justify-content:center;background:rgba(11,27,51,.55);opacity:0;transition:opacity .2s}
.sh.on{opacity:1}
.sh-p{position:relative;width:100%;max-width:430px;max-height:92vh;max-height:92dvh;overflow-y:auto;overscroll-behavior:contain;background:var(--canvas);border-radius:22px 22px 0 0;padding:22px 16px calc(20px + env(safe-area-inset-bottom,0px));transform:translateY(30px);transition:transform .22s ease;box-shadow:0 -10px 30px -10px rgba(0,0,0,.45);border-top:5px solid var(--safety)}
.sh.on .sh-p{transform:none}
.sh-x{position:absolute;top:10px;right:10px;width:48px;height:48px;border-radius:50%;background:#fff;border:3px solid #FFD700!important;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 10px -4px rgba(0,0,0,.35)}
.sh-h{font-size:21px;font-weight:850;letter-spacing:-.5px;line-height:1.2;padding-right:56px;overflow-wrap:anywhere}
.sh-m{font-size:15px;font-weight:550;line-height:1.45;color:var(--ink);margin-top:8px}
.sh-btns{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}.sh-btns .btn{min-height:50px}
.shh{display:flex;align-items:center;gap:12px;margin-bottom:14px;padding-right:56px}.shh .sh-h{padding-right:0}
.sh-acts{display:flex;flex-direction:column;gap:8px;margin-top:14px}.sh-acts .btn{min-height:50px}
/* ---- admin ---- */
.prevb{display:flex;align-items:center;gap:10px;background:var(--ambert);border:1.5px solid #E9B949;border-radius:12px;padding:9px 11px;margin-top:12px;min-height:44px}
.prevb .ic{flex:0 0 auto;width:28px;height:28px;border-radius:50%;background:#F5A623;display:flex;align-items:center;justify-content:center}
.prevb p{font-size:12.5px;font-weight:650;color:#7A4B00;line-height:1.35;min-width:0}.prevb b{font-weight:850}
.adt{margin-top:8px}
.kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px}
.kpi{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);padding:12px;min-height:96px;display:flex;flex-direction:column}
.kpi b{font-size:28px;font-weight:850;letter-spacing:-1px;line-height:1.05}
.kpi>span{font-size:12.5px;font-weight:800;margin-top:2px}
.kpi small{font-size:11.5px;font-weight:600;color:var(--muted);margin-top:auto;padding-top:4px;line-height:1.3}
.kpi .g{color:var(--good);font-weight:800}.kpi .a{color:#8A5A00;font-weight:800}
.ovc{padding:12px 14px}
.barw{flex:1;height:10px;border-radius:6px;background:#E6EAF1;overflow:hidden}
.barw i{display:block;height:100%;border-radius:6px;background:var(--flagblue)}
.ovc>.barw{background:#F6C453}.barw i.g{background:#2E9B5F}
.lg{display:flex;gap:16px;margin-top:8px;font-size:12.5px;font-weight:700}.lg i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:5px;vertical-align:-1px}.lg i.g{background:#2E9B5F}.lg i.a{background:#F6C453}
.brow{display:flex;align-items:center;gap:10px;min-height:32px;font-size:13px;font-weight:700}
.brow>span{width:96px;flex:0 0 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.brow b{width:22px;text-align:right}
.logc{padding:2px 14px}
.lr{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:10px;padding:10px 0;font-size:13px}
.lr+.lr{border-top:1px solid var(--line)}.lr b{font-weight:800}.lr span{grid-column:1/-1;color:var(--muted);font-weight:550;margin-top:2px;overflow-wrap:anywhere}.lr small{grid-row:1;grid-column:2;font-size:11px;font-weight:650;color:var(--muted);white-space:nowrap}
.logc .mu{padding:12px 0}
.lbtns{display:grid;grid-template-columns:1fr;gap:8px;margin-top:10px}.lbtns .btn{min-height:50px}
.sbox.lt{margin-top:12px;box-shadow:var(--shadow)}
.seg2.af{margin-top:10px;grid-template-columns:repeat(4,1fr)}
.seg2.tr5{display:flex;flex-wrap:wrap;gap:4px}.seg2.tr5 button{flex:1 1 30%;padding:0 6px;white-space:nowrap}
.seg2.st2{grid-template-columns:1fr 1fr}.seg2.st2 button{display:inline-flex;align-items:center;justify-content:center;gap:6px}
#est button[data-s="u"].on,#cst button[data-s="Partial"].on{background:#F5A623;color:#3D2600}
#est button[data-s="v"].on,#cst button[data-s="Verified"].on{background:var(--good);color:#fff}
.accr{width:100%;display:flex;align-items:center;gap:12px;padding:12px;margin-top:8px;text-align:left;min-height:72px}
.accr.off{opacity:.7;background:#F7F8FB}
.av3{width:40px;height:40px;border-radius:50%;background:var(--flagblue);color:#fff;font-weight:850;font-size:16px;display:flex;align-items:center;justify-content:center;flex:0 0 auto}
.av3.lg{width:52px;height:52px;font-size:21px;background:var(--safety);color:var(--navy)}
.accr .t,.erow .t{flex:1;min-width:0;display:flex;flex-direction:column}
.accr .tr,.erow .tr{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.accr b{font-size:15px;font-weight:800;letter-spacing:-.2px}
.accr .em{font-size:12.5px;font-weight:600;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:1px}
.accr .mt,.erow .mt{font-size:12px;font-weight:550;color:var(--muted);margin-top:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.accr .demot{margin-top:0}
.offt{display:inline-flex;align-items:center;background:#F1F2F5;color:#5B6475;border:1px solid #D5D9E1;font-size:9.5px;font-weight:850;letter-spacing:.08em;padding:2px 6px;border-radius:20px;text-transform:uppercase;white-space:nowrap}
.elist{margin-top:10px;padding:0 4px 0 14px;overflow:hidden}
.erow{width:100%;display:flex;align-items:center;gap:10px;min-height:58px;padding:9px 8px 9px 0;text-align:left}
.erow+.erow{border-top:1px solid var(--line)}
.erow b{font-size:14px;font-weight:750;line-height:1.3;margin-top:3px}
.erow .sect{font-size:11px;font-weight:800;color:var(--flagblue);background:var(--bluet);padding:2px 6px;border-radius:6px;white-space:nowrap}
.bk{margin-top:6px}
.ehd{margin-top:4px;padding:12px 14px;border-left:4px solid var(--red)}
.ehd h2{font-size:19px;font-weight:850;letter-spacing:-.4px;line-height:1.2;margin:3px 0 4px;overflow-wrap:anywhere}
.ehd .pendt{margin-right:6px}
.orig{margin-top:14px;background:var(--bluet);border-radius:12px;padding:10px 12px;font-size:12.5px;line-height:1.4;color:var(--muted);font-weight:550;display:flex;flex-direction:column;gap:2px}
.orig:empty{display:none}.orig b{font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--ink)}
body[data-page="admin"] main,body[data-page="signin"] main,body[data-page="signup"] main{padding-bottom:calc(32px + env(safe-area-inset-bottom,0px))!important}
body[data-page="signup"] main{padding-bottom:calc(110px + env(safe-area-inset-bottom,0px))!important}
@media (max-width:350px){.wl-wm{font-size:30px}.wl-st b{font-size:19px}.trs{grid-template-columns:1fr 1fr}.trb{font-size:13.5px;padding:0 8px;gap:6px}.arow>span:first-child{width:88px}.two{grid-template-columns:1fr}.two .fld+.fld{margin-top:14px}.kpi b{font-size:24px}}
.selw.full select{width:100%;max-width:none;padding:0 34px 0 13px}.selw.full:after{right:14px}
/* ---- narrow phones (iPhone SE 1st gen 320px): keep the home header and your-city chip on one line ---- */
.brand{min-width:0}.brand>div:last-child{min-width:0}.brand .wm{white-space:nowrap}
.brand .co{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.acity .nm b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media (max-width:374px){
 body[data-page="home"] .hdr .hr>.ibtn{display:none}
 body[data-page="home"] .bandrow .kick{display:none}
 .loc.yc{max-width:100%}
 .acity .pill{display:none}
}
.acity .pill{position:relative}.acity .pill:after{content:"";position:absolute;left:-2px;right:-2px;top:-12px;bottom:-12px}
/* ===== real voice search (085-voice.js) ===== */
.vv .ov-panel{padding-top:calc(env(safe-area-inset-top,0px) + 84px)}
.vv .vin{width:100%;max-width:380px;display:flex;flex-direction:column;align-items:center;margin:auto 0}
.vv .vo-tx{font-size:clamp(22px,7.4vw,30px);overflow-wrap:anywhere}
.vbtn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:52px;margin-top:22px;border-radius:14px;font:800 17px/1.1 Inter,system-ui,sans-serif;letter-spacing:-.2px;cursor:pointer;border:0;-webkit-tap-highlight-color:transparent}
.vbtn.y{background:#FFD700;color:#0B1B33;box-shadow:0 10px 22px -10px rgba(0,0,0,.55)}
.vbtn.ghost{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.55);margin-top:12px}
.vbtn:active{transform:scale(.98)}
.verr{width:100%;display:flex;flex-direction:column;align-items:center;text-align:center}
.verr h2{font-size:26px;font-weight:850;letter-spacing:-.6px;line-height:1.15;color:#fff;margin:22px 0 10px}
.verr p{font-size:15.5px;font-weight:550;line-height:1.45;color:#C9D3E6}
.verr p b,.verr li b{color:#fff;font-weight:800}
.verr ol{margin:16px 0 0;padding:0;list-style:none;counter-reset:vs;width:100%;text-align:left}
.verr li{counter-increment:vs;position:relative;padding:10px 12px 10px 46px;margin-top:8px;background:rgba(255,255,255,.08);border-radius:12px;font-size:14.5px;font-weight:550;line-height:1.4;color:#DCE3F0}
.verr li:before{content:counter(vs);position:absolute;left:12px;top:9px;width:24px;height:24px;border-radius:50%;background:#FFD700;color:#0B1B33;font-size:13px;font-weight:900;display:flex;align-items:center;justify-content:center}
.vbad{position:relative;width:84px;height:84px;border-radius:50%;background:#FFD700;display:flex;align-items:center;justify-content:center;flex:0 0 auto}
.vbad i{position:absolute;left:50%;top:50%;width:6px;height:92px;margin:-46px 0 0 -3px;background:#BF0A30;border-radius:3px;transform:rotate(45deg);box-shadow:0 0 0 3px #FFD700}
.vchips{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:18px}
.vchips span{background:#FFD700;color:#0B1B33;font-size:13.5px;font-weight:800;padding:7px 12px;border-radius:999px}
.vchips.lt{justify-content:flex-start;margin-top:10px}
.vchips.lt span{background:#FFF4B3;font-size:12.5px;padding:6px 10px}
.vform{width:100%;margin-top:22px}
.vsr{display:flex;align-items:center;gap:10px;height:54px;padding:0 14px;background:#fff;border-radius:14px;border:3px solid #FFD700}
.vsr input{flex:1;min-width:0;height:100%;border:0;outline:0;background:transparent;font:600 16px Inter,system-ui,sans-serif;color:#0B1B33;-webkit-appearance:none;appearance:none}
.vform .vbtn{margin-top:12px}
.vsm{margin-top:18px;font-size:13px!important;color:#C9D3E6;text-align:center;line-height:1.5}
.vsm svg{vertical-align:-2px;margin-right:2px}
@media (max-height:640px){.vv .ov-panel{padding-top:calc(env(safe-area-inset-top,0px) + 76px)}.vo.vv .vo-mic{margin:22px 0 18px;width:104px;height:104px}.verr h2{font-size:22px;margin-top:14px}}
.card.said{border:2px solid #FFD700;background:#FFFBE6;padding:12px 12px 14px;margin-bottom:12px}
.said .sh1{display:flex;align-items:center;gap:10px}
.said .mi{flex:0 0 auto;width:34px;height:34px;border-radius:50%;background:#FFD700;display:flex;align-items:center;justify-content:center}
.said .st{flex:1;min-width:0}
.said .st small{display:block;font-size:10.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#5B6475}
.said .st b{display:block;font-size:16px;font-weight:850;letter-spacing:-.2px;color:#0B1B33;overflow-wrap:anywhere;line-height:1.25}
.said .smic{flex:0 0 auto;width:44px;height:44px;border-radius:12px;background:#002868;border:0;display:flex;align-items:center;justify-content:center;cursor:pointer}
.said .sm{font-size:12.5px;font-weight:550;color:#5B6475;margin-top:8px;line-height:1.35}
.res.best{border:2.5px solid #FFD700;box-shadow:0 8px 20px -10px rgba(0,40,104,.45);padding-top:28px}
.res .bestt{position:absolute;top:0;left:5px;background:#FFD700;color:#0B1B33;font-size:10.5px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;padding:4px 9px 4px 7px;border-radius:0 0 9px 0;display:flex;align-items:center;gap:4px}
/* ===== admin "View as customer" ===== */
.vac{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:50px;margin:12px 0 4px;font-size:16px}
.pvc{display:flex;flex-direction:column;gap:6px;margin:14px 0 4px}
.pvc span{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#5B6475}
.pvc select{height:50px;border-radius:12px;border:2px solid #D5DBE6;background:#fff;padding:0 12px;font:700 16px Inter,system-ui,sans-serif;color:#0B1B33}
.pvl{margin-top:8px}
.pvh{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#5B6475;margin:14px 0 6px}
.pvr{display:flex;align-items:center;gap:10px;width:100%;min-height:60px;padding:8px 10px;margin-top:8px;border-radius:14px;border:2px solid #E3E8F0;background:#fff;text-align:left;cursor:pointer;font-family:inherit;color:#0B1B33}
.pvr.me{border-color:#FFD700;background:#FFFBE6}
.pvr.off{opacity:.7}
.pvr .t{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.pvr .tr{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.pvr b{font-size:15px;font-weight:800}
.pvr small{font-size:12px;font-weight:550;color:#5B6475;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.av3.y{background:#FFD700}
.pvtag{font-size:10.5px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;background:#002868;color:#FFD700;padding:2px 7px;border-radius:6px}
.pvbar{position:sticky;top:0;z-index:60;display:flex;align-items:center;gap:8px;min-height:44px;padding:0 6px 0 12px;padding-top:env(safe-area-inset-top,0px);background:#FFD700;color:#0B1B33;font:600 12.5px/1.2 Inter,system-ui,sans-serif;box-shadow:0 2px 8px -4px rgba(0,0,0,.4)}
.pvbar .pvt{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pvbar b{font-weight:850}
.pvbar a{flex:0 0 auto;display:flex;align-items:center;min-height:44px;padding:0 10px;color:#002868;font-weight:850;text-decoration:underline;text-underline-offset:2px;white-space:nowrap}
.ccpv .chead{top:44px}
/* ===== chapter grid: amended chapters = thick red border + AMENDMENT pill on the top edge ===== */
#grid{row-gap:17px;margin-top:16px}
#grid .tile.loc{border:2px solid #BF0A30!important;box-shadow:0 1px 3px rgba(191,10,48,.18);padding:3px 2px 4px}
#grid .tile .amt{position:absolute;top:-12px;left:50%;transform:translateX(-50%);z-index:1;font-size:8px;letter-spacing:.3px;padding:2px 6px;line-height:1.2;max-width:calc(100% + 4px);box-shadow:0 0 0 2px #fff}
.legend .lb{letter-spacing:.3px}
/* ===== code "hot buttons" (home Browse codes + trade screens) ===== */
.ck{position:absolute;top:-8px;left:-6px;z-index:2;width:22px;height:22px;border-radius:50%;background:#0B1B33;border:2px solid #fff;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 5px rgba(0,0,0,.3)}
.trades.hot{gap:8px;margin-top:4px}
.trades.hot .trade{background:#0B1B33;border:2px solid #0B1B33;border-radius:16px;padding:16px 3px 12px;min-height:112px;justify-content:center;gap:3px;box-shadow:0 6px 14px -8px rgba(11,27,51,.7);opacity:1}
.trades.hot .trade .ic{width:44px;height:44px;border-radius:50%;background:#FFD700;margin-bottom:6px}
.trades.hot .trade b{color:#fff;font-size:13.5px;font-weight:850;letter-spacing:-.2px}
.trades.hot .trade small{color:#C9D3E6;font-size:11px;font-weight:700}
.trades.hot .trade.on{background:#FFD700;border:3px solid #0B1B33;box-shadow:0 0 0 3px rgba(255,215,0,.35),0 8px 18px -8px rgba(11,27,51,.6)}
.trades.hot .trade.on .ic{background:#fff}
.trades.hot .trade.on b{color:#0B1B33}
.trades.hot .trade.on small{color:#0B1B33}
.trades.hot .trade .lb,.trades.hot .trade .soonb{top:-9px;right:3px;z-index:2;box-shadow:0 0 0 2px #fff}
.trades.hot .trade:active{transform:scale(.97)}
.cbtn.oth.wide{display:flex;align-items:center;gap:10px;width:100%;min-height:52px;margin-top:10px;padding:0 16px;border-radius:14px;background:#fff;border:2px solid #0B1B33;color:#0B1B33;font-family:inherit;cursor:pointer}
.cbtn.oth.wide svg{stroke:#0B1B33}
.cbtn.oth.wide b{font-size:15px;font-weight:850}
.cbtn.oth.wide small{margin-left:auto;font-size:12px;font-weight:700;color:#5B6475}
/* trade screens */
.seg2x{position:relative;display:flex;flex-direction:column;gap:10px}
.viewing{position:relative;display:flex;align-items:center;gap:10px;min-height:52px;padding:7px 12px 7px 8px;background:#fff;border-radius:14px;box-shadow:0 6px 14px -8px rgba(0,0,0,.5);cursor:pointer}
.viewing .vi{flex:0 0 auto;width:36px;height:36px;border-radius:50%;background:#FFD700;display:flex;align-items:center;justify-content:center}
.viewing .vt{flex:1;min-width:0;display:flex;flex-direction:column}
.viewing small{font-size:10.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#5B6475}
.viewing b{font-size:15.5px;font-weight:850;letter-spacing:-.3px;color:#0B1B33;line-height:1.2}
.viewing .vc{flex:0 0 auto;font-size:11.5px;font-weight:800;color:#002868;background:#E8EDF6;border-radius:999px;padding:4px 9px;max-width:40%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cbtns{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}
.cbtns .cbtn{grid-column:span 2}
.cbtns .cbtn:nth-child(4),.cbtns .cbtn:nth-child(5){grid-column:span 3}
.cbtn{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:56px;padding:6px 4px;border-radius:14px;background:#fff;border:2px solid rgba(255,255,255,.6);color:#0B1B33;font-family:inherit;text-decoration:none;cursor:pointer;-webkit-tap-highlight-color:transparent}
.cbtn b{font-size:13.5px;font-weight:850;letter-spacing:-.2px;white-space:nowrap}
.cbtns .cbtn:nth-child(4),.cbtns .cbtn:nth-child(5){flex-direction:row;gap:8px}
.cbtn.on{background:#FFD700;border:3px solid #fff;box-shadow:0 0 0 3px #0B1B33,0 8px 16px -6px rgba(0,0,0,.6)}
.cbtn.oth{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.75)}
.cbtns .cbtn.oth svg{stroke:#fff}
.cbtn:active{transform:scale(.97)}
.sh.full .sh-p{max-height:100vh;max-height:100dvh;height:100%;border-radius:0;padding-top:calc(env(safe-area-inset-top,0px) + 22px)}
.ocl{margin-top:14px}
.ocr{display:flex;align-items:center;gap:12px;min-height:60px;padding:8px 12px;margin-top:8px;background:#fff;border:1px solid var(--line,#E3E8F0);border-radius:14px;color:#0B1B33;text-decoration:none}
.ocr .oci{flex:0 0 auto;width:36px;height:36px;border-radius:10px;background:#FFD700;display:flex;align-items:center;justify-content:center}
.ocr .t{flex:1;min-width:0;display:flex;flex-direction:column}
.ocr b{font-size:15px;font-weight:800}
.ocr small{font-size:12px;font-weight:600;color:#5B6475}
@media (max-width:350px){.cbtn b{font-size:12px}.trades.hot .trade b{font-size:12px}.trades.hot .trade small{font-size:10px}.viewing b{font-size:14px}}
button.cbtn.oth.wide{flex-direction:row;justify-content:flex-start;background:#fff;color:#0B1B33;border:2px solid #0B1B33;min-height:52px;padding:0 16px}
/* ===== Home top v2 (Justin's reference, Oct 2026): headline + DENVER METRO, big search, red-bordered city card =====
   Keeps the lighter blue mountains (MTN) and the bolder flag-blue band from the current build. */
body[data-page="home"] .band.hband{padding:16px 18px 50px}
body[data-page="home"] .band.hband .mtn{height:84px}
body[data-page="home"] .band.hband h1{font-size:28px;font-weight:850;letter-spacing:-.8px}
.hkick{position:relative;text-align:right;margin-top:8px;font-size:12px;font-weight:750;letter-spacing:2.6px;text-transform:uppercase;color:#D3DCEC}
.hkick:after{content:"";position:absolute;inset:-14px -4px}
body[data-page="home"] .search.hsearch{margin:-32px 16px 0;height:64px;border-radius:18px;border:0;padding:0 10px 0 16px;gap:12px;box-shadow:0 10px 24px -10px rgba(11,27,51,.45),0 1px 3px rgba(11,27,51,.10)}
.search.hsearch .sfield{gap:12px;min-height:44px}
.search.hsearch .sfield svg{flex:0 0 auto}
.search.hsearch .ph{font-size:17px;font-weight:500;color:#6B7385;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.search.hsearch .mic{width:48px;height:48px;border-radius:13px;box-shadow:inset 0 1px 0 rgba(255,255,255,.4),0 3px 8px rgba(233,178,31,.35)}
.card.ctop{display:block;margin:2px 0 4px;padding:12px 12px 12px;border:2px solid var(--red);border-radius:18px;box-shadow:0 6px 18px -10px rgba(191,10,48,.35),0 1px 2px rgba(11,27,51,.06)}
.ctop .cr1{display:flex;align-items:center;justify-content:space-between;gap:8px}
.ctop .cnm{display:flex;align-items:center;gap:8px;min-width:0;background:var(--bluet);border-radius:14px;padding:5px 6px 5px 8px}
.ctop .cpin{position:relative;display:flex;align-items:center;gap:6px;min-width:0;min-height:36px}
.ctop .cpin svg{flex:0 0 auto}
.ctop h2{font-size:21px;font-weight:850;letter-spacing:-.5px;color:var(--ink);line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.ctop .chgp{position:relative;flex:0 0 auto;background:var(--safety);color:var(--navy);font-size:13px;font-weight:800;padding:7px 12px;border-radius:999px;box-shadow:inset 0 1px 0 rgba(255,255,255,.4)}
.ctop .chgp:after{content:"";position:absolute;inset:-6px -4px}
.ctop .cr1>.pill{flex:0 0 auto;background:#fff;border:1.5px solid #D5DAE3;color:#4A5468;padding:5px 10px 5px 8px;font-size:11.5px}
.ctop .cr1>.pill.part{background:var(--ambert);border-color:var(--amberb);color:var(--amber)}
.ctop .cpend{margin-top:6px}
.ctop .codes{margin:10px 2px 0;font-size:13px}
.ctop .codes .tag{background:var(--navy);border-radius:8px;padding:5px 9px;font-size:12.5px}
.ctop .camd{display:flex;align-items:center;gap:12px;margin-top:12px;padding:10px 12px 10px 10px;border:1px solid #D5DAE3;border-radius:14px;background:#F6F7FB;min-height:60px}
.ctop .camd:active{background:var(--bluet)}
.ctop .cdi{flex:0 0 auto;width:40px;height:40px;border-radius:11px;background:var(--safety);display:flex;align-items:center;justify-content:center}
.ctop .cdt{flex:1;min-width:0}
.ctop .cdt b{display:block;font-size:17px;font-weight:850;letter-spacing:-.3px;color:var(--ink);line-height:1.2}
.ctop .cdt small{display:block;font-size:12.5px;font-weight:550;color:var(--muted);line-height:1.3}
.ctop .camd>svg{flex:0 0 auto}
@media (max-width:374px){
 body[data-page="home"] .band.hband h1{font-size:25px}
 .search.hsearch .ph{font-size:15.5px}
 .ctop .cr1{flex-wrap:wrap;row-gap:8px}
 .ctop h2{font-size:19px}
}
/* city row: fit "City of Denver · Change · VERIFIED" on one line at 390; long names wrap instead of truncating */
.ctop .cr1{flex-wrap:wrap;row-gap:8px}
.ctop .cnm{flex:0 1 auto;gap:6px;padding:4px 5px 4px 7px}
.ctop .cpin{gap:5px}
.ctop .cpin svg{width:20px;height:20px}
.ctop h2{font-size:19.5px;white-space:normal;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.ctop .chgp{font-size:12.5px;padding:6px 10px}
.ctop .cr1>.pill{margin-left:auto;font-size:10.5px;padding:4px 8px 4px 6px;letter-spacing:.3px}
@media (max-width:374px){ .ctop h2{font-size:18px} }
.ctop .cr1{column-gap:6px}
.ctop h2{font-size:19px}
.ctop .chgp{padding:6px 9px}
.ctop .cr1>.pill{letter-spacing:.2px;padding:4px 7px 4px 5px}
/* 44px hit areas for the small home-top controls */
.hkick:after{inset:-15px -4px}
.ctop .cpin:after{content:"";position:absolute;inset:-5px -2px}
.ctop .chgp:after{inset:-9px -4px}
.ctop .cr1>.pill{position:relative}
.ctop .cr1>.pill:after{content:"";position:absolute;inset:-11px -3px}
/* ===== Home search: type a city, code or topic (Oct 2 2026 PM) ===== */
.search.hsearch .sfield{cursor:text}
.search.hsearch .hq{flex:1;min-width:0;width:100%;border:0;outline:0;background:transparent;font:500 17px/1.2 Inter,system-ui,-apple-system,sans-serif;color:var(--ink);padding:0;-webkit-appearance:none;appearance:none;height:44px}
.search.hsearch .hq::placeholder{color:#6B7385;opacity:1}
.search.hsearch .hq::-webkit-search-cancel-button,.search.hsearch .hq::-webkit-search-decoration{-webkit-appearance:none;display:none}
.hclr{display:none;position:relative;flex:0 0 auto;width:30px;height:30px;border:0;border-radius:50%;background:var(--bluet);align-items:center;justify-content:center;padding:0}
.hclr:after{content:"";position:absolute;inset:-7px}
.search.hsearch.has .hclr{display:flex}
.search.hsearch.open{border-radius:18px 18px 18px 18px}
.hsug{position:absolute;left:0;right:0;top:calc(100% + 8px);z-index:20;background:#fff;border-radius:16px;border:1px solid var(--line);box-shadow:0 18px 40px -12px rgba(11,27,51,.45),0 2px 6px rgba(11,27,51,.10);padding:4px 0 6px;max-height:min(62vh,520px);overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
.hsug[hidden]{display:none}
.sgh{font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);padding:10px 14px 4px}
.sg{display:flex;align-items:center;gap:11px;min-height:52px;padding:6px 12px 6px 12px;color:var(--ink);text-decoration:none}
.sg+.sg{border-top:1px solid var(--line)}
.sg:active{background:var(--bluet)}
.sgi{flex:0 0 auto;width:32px;height:32px;border-radius:9px;background:var(--safety);display:flex;align-items:center;justify-content:center}
.sg.sgc .sgi{background:#FBE9EC}
.sgt{flex:1;min-width:0}
.sgt b{display:block;font-size:15px;font-weight:750;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sgt small{display:block;font-size:12px;font-weight:550;color:var(--muted);line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sg>svg{flex:0 0 auto}
/* Recent searches (replaces Recent & saved) */
.sec .rsclr{position:relative;border:0;background:none;padding:0;font:700 12.5px Inter,system-ui,sans-serif;color:var(--ink);text-decoration:underline;text-decoration-color:var(--safety);text-decoration-thickness:2px;text-underline-offset:3px}
.sec .rsclr:after{content:"";position:absolute;inset:-14px -10px}
.rsearch .ri{min-height:48px}
.rsearch .ri .t b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rsearch .rsempty .b{background:#8A93A6}
/* ===== Home: Plumbing chapters grid (IPC Ch. 3–13, our own short names) ===== */
.grid.chgrid{row-gap:14px;margin-top:12px}
.tile.ctile{position:relative;padding:6px 3px 7px;gap:3px;min-height:92px;justify-content:flex-start;text-decoration:none}
.tile.ctile.amd{border:2px solid #BF0A30;box-shadow:0 1px 3px rgba(191,10,48,.18);padding:5px 2px 6px}
.ctile .amt{position:absolute;top:-9px;left:50%;transform:translateX(-50%);z-index:1;display:inline-flex;align-items:center;font-size:8px;font-weight:850;color:#fff;background:var(--red);border-radius:10px;padding:2px 6px;letter-spacing:.3px;line-height:1.2;text-transform:uppercase;white-space:nowrap;box-shadow:0 0 0 2px #fff}
.ctile .chn{align-self:stretch;display:flex;justify-content:space-between;align-items:center;gap:2px;font-size:9.5px;font-weight:800;color:var(--muted);letter-spacing:.2px;line-height:1.2;padding:2px 2px 0}
.ctile .chcount{min-width:16px;height:16px;border-radius:8px;background:var(--red);color:#fff;font-size:9.5px;font-weight:850;display:inline-flex;align-items:center;justify-content:center;padding:0 4px}
.ctile .ic{width:32px;height:32px;border-radius:9px;background:var(--safety);display:flex;align-items:center;justify-content:center}
.ctile .cnm{font-size:10.5px;font-weight:700;color:var(--ink);text-align:center;line-height:1.15;min-height:25px;display:flex;align-items:center;justify-content:center;hyphens:manual;overflow-wrap:normal;word-break:normal}
@media (max-width:374px){.ctile .cnm{font-size:9.5px;letter-spacing:-.1px}.ctile .chn{font-size:9px}}
/* Other codes sheet: labeled groups */
.ocg{margin-top:16px}
.ocgh{font-size:12px;font-weight:850;letter-spacing:.08em;text-transform:uppercase;color:#5B6475;margin:0 2px}
.ocg .ocl{margin-top:4px}
.tile.ctile{padding-top:11px}
.tile.ctile.amd{padding-top:10px}
.ctile .amt{top:-8px}
.ctile .chn .chcount{display:inline-flex!important;flex:0 0 auto;align-self:center;height:16px!important;min-height:0!important;line-height:16px!important;margin:0!important;position:static!important}
@media (max-width:374px){.ctile .amt{font-size:7.5px;letter-spacing:.1px;padding:2px 4px}}
/* ===== Oct 2 PM: chapter-tile pills match the Browse codes pills; 1px amendment border; Other codes tile ===== */
.ctile .amt{top:-9px;font-size:8.5px!important;font-weight:850;padding:2px 6px!important;height:14px;line-height:10px;border-radius:10px;letter-spacing:.3px!important;box-sizing:border-box}
.ctile .chn .chcount{height:14px!important;min-width:14px;line-height:10px!important;font-size:8.5px!important;font-weight:850;padding:2px 5px!important;border-radius:10px;letter-spacing:.3px;box-sizing:border-box}
.tile.ctile.amd{border:1px solid #BF0A30;padding:11px 3px 7px}
#grid .tile.loc{border:1px solid #BF0A30!important;padding:4px 3px 5px}
@media (max-width:374px){.ctile .amt{font-size:8.5px!important;letter-spacing:.3px!important;padding:2px 5px!important}}
.ctile.othtile{font:inherit;cursor:pointer;-webkit-appearance:none;appearance:none;width:100%;color:inherit}
.ctile.othtile.none{border:1px solid var(--line)}
.ctile.othtile.none .ic{background:#E8ECF3}
.ctile.othtile .cnm{flex-direction:column;gap:1px}
.ctile.othtile .cnm small{display:block;font-size:8.5px;font-weight:650;color:var(--muted);line-height:1.15}
@media (max-width:374px){.ctile .amt{padding:2px 4px!important;letter-spacing:.1px!important}}
.ctile.othtile .cnm{height:auto!important;min-height:25px;overflow:visible}
.ctile.othtile .cnm small{white-space:normal;overflow-wrap:normal}
#grid .tile .amt{font-size:8.5px;font-weight:850;padding:2px 6px;height:14px;line-height:10px;border-radius:10px;letter-spacing:.3px;box-sizing:border-box;top:-9px;max-width:none}
@media (max-width:374px){#grid .tile .amt{padding:2px 4px;letter-spacing:.1px}}
/* ---- Colorado state rules: entry card (home + trade screens), list screen, explainer fine print ---- */
.srentry{display:flex;align-items:center;gap:12px;margin:16px 0 4px;min-height:64px;padding:12px 14px;border-radius:16px;background:#002868;color:#fff;text-decoration:none;box-shadow:0 4px 12px rgba(11,27,51,.14);border:1px solid #001C4A}
.srentry .sri{flex:0 0 auto;width:40px;height:40px;border-radius:12px;background:#FFD700;display:flex;align-items:center;justify-content:center}
.srentry .srt{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.srentry .srt b{font-size:16px;font-weight:850;letter-spacing:-.2px;line-height:1.2}
.srentry .srt small{font-size:12.5px;font-weight:600;color:rgba(255,255,255,.78);line-height:1.3}
.srentry:active{transform:scale(.99);background:#00205A}
.srban{display:flex;gap:12px;align-items:flex-start;padding:13px 14px;border-left:5px solid #FFD700;margin-top:4px;cursor:pointer}
.srban .fi{flex:0 0 auto;width:34px;height:34px;border-radius:10px;background:#FFF6CC;display:flex;align-items:center;justify-content:center}
.srban p{margin:0;font-size:13.5px;line-height:1.4;color:#3B4456;font-weight:550}
.srban p b{display:block;font-size:15px;font-weight:850;color:#0B1B33;margin-bottom:3px;letter-spacing:-.2px}
.srban p span{display:block}
.srfilt{margin:4px 2px -6px;font-size:13px;font-weight:650;color:#5B6475}
.srfilt a{display:inline-flex;align-items:center;min-height:44px;color:#002868;font-weight:800;text-decoration:underline;text-underline-offset:2px}
.srlist{padding:0;overflow:hidden}
.srrow{display:flex;align-items:center;gap:10px;width:100%;min-height:64px;padding:11px 12px 11px 14px;background:none;border:0;text-align:left;font:inherit;color:#0B1B33;cursor:pointer}
.srrow+.srrow{border-top:1px solid #E1E5EC}
.srrow:active{background:#F4F6FA}
.srrow .srb{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.srrow .srb b{font-size:15px;font-weight:800;line-height:1.25;letter-spacing:-.15px}
.srrow .srb small{font-size:12.5px;font-weight:550;color:#5B6475;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.srtag{flex:0 0 auto;font-size:9.5px;font-weight:850;letter-spacing:.3px;text-transform:uppercase;border-radius:10px;padding:3px 7px;border:1px solid;white-space:nowrap}
.srtag.v{background:#E6F4EC;color:#1E7A46;border-color:#A9D8BC}
.srtag.a{background:var(--ambert,#FFF4DB);color:#7A4B00;border-color:#E9B949}
.srrow>svg{flex:0 0 auto}
.hsug .sgs .sgi{background:#002868}
.hsug .sgs .sgi svg{stroke:#FFD700}
.xp-fine{margin-top:16px;padding:12px 14px;border-top:1px solid #E1E5EC;font-size:12.5px;line-height:1.45;color:#5B6475;font-weight:550}
.xp-fine .xf+.xf{margin-top:10px}
.xp-fine small{display:block;font-size:10.5px;font-weight:850;letter-spacing:.08em;text-transform:uppercase;color:#3B4456;margin-bottom:2px}
.xp-fine p{margin:0;overflow-wrap:anywhere}
.xp-fine ul{margin:2px 0 0;padding-left:18px}
.xp-fine li{margin:2px 0;overflow-wrap:anywhere}
.xp-fine .xf-l a{color:#002868;font-weight:650;text-decoration:underline;text-underline-offset:2px;word-break:break-all}
/* ---- chapter screens: Colorado state rule card (first) + city local amendments card (second) ---- */
.srch{padding:0;overflow:hidden;border:1px solid #001C4A;margin-top:4px}
.srch-h{display:flex;align-items:center;gap:10px;background:#002868;color:#fff;padding:11px 14px}
.srch-h .sri{flex:0 0 auto;width:32px;height:32px;border-radius:10px;background:#FFD700;display:flex;align-items:center;justify-content:center}
.srch-h small{display:block;font-size:10.5px;font-weight:850;letter-spacing:.08em;text-transform:uppercase;color:#FFD700}
.srch-h b{display:block;font-size:15.5px;font-weight:850;letter-spacing:-.2px;line-height:1.25}
.srcr{display:flex;align-items:center;gap:10px;width:100%;min-height:60px;padding:11px 12px 11px 14px;background:#fff;border:0;text-align:left;font:inherit;color:#0B1B33;cursor:pointer}
.srcr+.srcr{border-top:1px solid #E1E5EC}
.srcr:active{background:#F4F6FA}
.srcr .srb{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
.srcr .srb b{font-size:14.5px;font-weight:800;line-height:1.25}
.srcr .srb small{font-size:13px;font-weight:550;color:#3B4456;line-height:1.35;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.srch-f{padding:8px 14px 10px;font-size:11.5px;font-weight:650;color:#5B6475;background:#F7F8FB;border-top:1px solid #E1E5EC}
.locc{padding:12px 14px;margin-top:12px;border-left:5px solid #BF0A30}
.locc:not(.has){border-left-color:#8A93A6;cursor:pointer}
.locc-h{display:flex;align-items:center;gap:10px}
.locc-h .lci{flex:0 0 auto;width:32px;height:32px;border-radius:10px;background:#BF0A30;display:flex;align-items:center;justify-content:center}
.locc:not(.has) .lci{background:#8A93A6}
.locc-h>div{flex:1;min-width:0}
.locc-h small{display:block;font-size:10.5px;font-weight:850;letter-spacing:.08em;text-transform:uppercase;color:#5B6475}
.locc-h b{display:block;font-size:15.5px;font-weight:850;letter-spacing:-.2px;line-height:1.25;color:#0B1B33}
.locc-h .lcn{flex:0 0 auto;min-width:28px;height:28px;border-radius:14px;background:#FBE9EC;color:#BF0A30;font-weight:850;font-size:14px;display:flex;align-items:center;justify-content:center;padding:0 6px}
.locc:not(.has) .lcn{background:#EEF0F4;color:#5B6475}
.locc p{margin:6px 0 0 42px;font-size:13px;line-height:1.4;color:#5B6475;font-weight:550}
/* Colorado flag C icon containers (white tile so the gold disc reads on navy) */
.srentry .sri,.srch-h .sri{background:#fff;box-shadow:inset 0 0 0 1px rgba(11,27,51,.08)}
.hsug .sgs .sgi{background:#fff;box-shadow:inset 0 0 0 1px #E1E5EC}
.srban .fi{background:#fff;box-shadow:inset 0 0 0 1px #E1E5EC}
.srbh{display:flex;align-items:center;gap:10px}
.srbi{flex:0 0 auto;width:34px;height:34px;border-radius:10px;background:#fff;display:flex;align-items:center;justify-content:center}
.srch{margin-top:12px}
svg.coc{display:block}

/* Snapshot cards (Fix List 1): short one-line snapshots must keep the "What changed" box tap-sized */
.delta[data-explain]{box-sizing:border-box;min-height:44px}

/* Simple detail layout (approved Boulder example): hero bottom line + 3 compact rows */
.hero .slbl{margin-top:10px;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.hero .big.slh{margin-top:2px;cursor:pointer;min-height:44px;align-items:center}
.hero .big.slh b{line-height:1;letter-spacing:-2px}
.hero .big.slh.sll b{font-size:42px;letter-spacing:-1.6px}
.card.slr{margin-top:12px;padding:0;overflow:hidden}
.slrow{display:flex;align-items:center;gap:8px;min-height:48px;box-sizing:border-box;padding:7px 10px 7px 12px;border-top:1px solid #EEF1F5;cursor:pointer}
.slrow:first-child{border-top:0}
.slrow.win{background:#F3FAF5}
.sli{flex:0 0 auto;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center}
.s-ipc{background:#002868}.s-co{background:#fff;border:1.5px solid #E1E5EC}.s-city{background:#BF0A30}
.slk{flex:0 0 70px;font-size:11px;font-weight:850;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.slv{flex:1;min-width:0;font-size:13.5px;font-weight:600;color:#33405A;line-height:1.25}
.slrow.win .slv{font-weight:850;color:var(--ink)}.slrow.win .slk{color:var(--ink)}
.slm{flex:0 0 auto;display:flex;align-items:center;gap:5px}
.sldot{width:7px;height:7px;border-radius:50%;background:#E9A23B}
.hero .big.slh.sxl b{font-size:36px;letter-spacing:-1.2px}

/* simple layout v2: the plain instruction IS the hero headline */
.hero h2.slt{font-size:20px;letter-spacing:-.4px;margin-top:10px}
.hero .slih{margin:4px 0 0;font-size:29px;font-weight:900;line-height:1.12;letter-spacing:-.8px;color:var(--ink);cursor:pointer;overflow-wrap:anywhere}
.hero .slx{margin-top:10px}
.hero .slx .slxt{margin-top:0}
.hero .slxl{margin:2px 0 0;font-size:14px;font-weight:700;color:var(--muted);line-height:1.35}
/* ===== ask by voice: answer card (086-ask.js) — light full-screen sheet in the voice overlay, X top-right ===== */
.vo.vv.ans .ov-panel{background:#F3F5F9;color:#0B1B33;display:block;padding:calc(env(safe-area-inset-top,0px) + 80px) 16px calc(40px + env(safe-area-inset-bottom,0px))}
.vv.ans .vin{max-width:430px;display:block;margin:0 auto}
.ask{width:100%;min-width:0}
.ask *{box-sizing:border-box}
.ask .aq{background:#002868;border-radius:16px;padding:12px;color:#fff}
.ask .aq label{display:block;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#FFD700;margin:0 0 6px}
.ask .amsg{font-size:14.5px;font-weight:650;line-height:1.4;color:#fff;margin:0 0 10px}
.ask textarea{display:block;width:100%;min-height:52px;resize:none;border:3px solid #FFD700;border-radius:12px;padding:10px 12px;font:700 17px/1.3 Inter,system-ui,sans-serif;color:#0B1B33;background:#fff;-webkit-appearance:none;appearance:none}
.ask .aqb{display:flex;gap:10px;margin-top:10px}
.abtn{display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;width:100%;margin-top:12px;padding:10px 14px;border-radius:13px;border:2px solid #D5DBE5;background:#fff;color:#0B1B33;font:800 15.5px/1.2 Inter,system-ui,sans-serif;text-decoration:none;text-align:center;cursor:pointer;-webkit-tap-highlight-color:transparent}
.abtn span{min-width:0;overflow-wrap:anywhere}
.abtn.y{background:#FFD700;border-color:#FFD700}
.ask .aqb .abtn{margin-top:0}
.ask .aqb .abtn.amic{flex:0 0 52px;width:52px;padding:0;background:#FFD700;border-color:#FFD700}
.abtn.icc{border-color:#002868}
.abtn.icc.y{min-height:56px;font-size:16px;border-color:#FFD700;box-shadow:0 8px 18px -10px rgba(0,40,104,.55)}
.abtn:active{transform:scale(.98)}
.ask .acity{display:flex;align-items:center;gap:10px;margin:12px 0 0;background:#fff;border:1px solid #E1E5EC;border-radius:14px;padding:6px 6px 6px 12px}
.ask .acity span{flex:1;min-width:0;font-size:12.5px;font-weight:700;color:#5B6475;line-height:1.25}
.ask .acity select{flex:0 1 170px;min-width:0;min-height:44px;border:2px solid #D5DBE5;border-radius:10px;background:#fff;font:800 15px Inter,system-ui,sans-serif;color:#0B1B33;padding:0 8px}
.ask .card{background:#fff;border:1px solid #E1E5EC;border-radius:16px;padding:14px;margin-top:12px;box-shadow:0 4px 12px rgba(11,27,51,.06);overflow-wrap:anywhere}
.ask .ahero{border:2.5px solid #FFD700}
.ask .atl{display:block;font-size:11.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#5B6475}
.ask .ahero h2,.ask .anot h2{font-size:24px;font-weight:850;letter-spacing:-.5px;line-height:1.15;margin:6px 0 4px;color:#0B1B33}
.ask .asub{font-size:14.5px;font-weight:600;line-height:1.4;color:#33405A;margin:0}
.ask .asec{margin-top:12px;padding-top:10px;border-top:1px solid #E7EAF0}
.ask .asec small,.ask .akv small{display:block;font-size:10.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#5B6475}
.ask .asec p{font-size:14.5px;font-weight:600;line-height:1.4;margin:3px 0 0}
.ask .aam2{color:#5B6475;font-size:13.5px!important}
.ask .nvtag{display:inline-block;background:#FFF1CC;color:#7A4B00;border:1px solid #F0C64B;font-size:11.5px;font-weight:800;padding:1px 7px;border-radius:999px;white-space:nowrap}
.ask .anote{font-size:12.5px;font-weight:550;color:#5B6475;line-height:1.4;margin:8px 0 0}
.ask .airc{font-size:13px;font-weight:600;color:#33405A;line-height:1.4;margin:10px 0 0}
.ask .airc a{color:#002868;font-weight:800;display:inline-block;min-height:44px;line-height:44px}
.ask .astk{margin:8px 0 4px;background:#FDECEF;border-left:5px solid #BF0A30;border-radius:10px;padding:8px 10px}
.ask .astk i{display:block;font-style:normal;font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#BF0A30}
.ask .astk b{display:block;font-size:15px;font-weight:800;line-height:1.3;color:#0B1B33;margin-top:2px}
.ask .aam.best{border-left:5px solid #FFD700}
.ask .aamh{display:flex;align-items:center;gap:8px}
.ask .aamh .lb{font-size:11px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:#BF0A30}
.ask .aam h3{font-size:17px;font-weight:850;line-height:1.25;margin:6px 0 0}
.ask .akv{margin-top:8px}.ask .akv b{display:block;font-size:26px;font-weight:900;letter-spacing:-.5px;color:#002868}
.ask .asnap{font-size:14.5px;font-weight:550;line-height:1.45;color:#33405A;margin:6px 0 0}
.ask .asrc{font-size:12.5px;color:#5B6475;line-height:1.4;margin:8px 0 0}
.ask .astate .ash{display:flex;align-items:center;gap:10px}
.ask .astate .ash small{display:block;font-size:10.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#5B6475}
.ask .astate .ash b{display:block;font-size:15.5px;font-weight:850;line-height:1.25}
.ask .astn{font-size:14px;font-weight:600;line-height:1.4;color:#33405A;margin:8px 0 0}
.ask .srcr{display:flex;align-items:center;gap:10px;width:100%;min-height:52px;margin-top:10px;padding:10px;border:1px solid #E1E5EC;border-radius:12px;background:#F8F9FB;text-align:left;font-family:inherit;color:#0B1B33;cursor:pointer}
.ask .srcr .srb{flex:1;min-width:0}.ask .srcr .srb b{display:block;font-size:14.5px;font-weight:800}.ask .srcr .srb small{display:block;font-size:12.5px;font-weight:550;color:#5B6475;line-height:1.35;margin-top:2px}
.ask .anot{border:2.5px solid #BF0A30}
.ask .anot p{font-size:14.5px;font-weight:600;line-height:1.4;color:#33405A;margin:0}
.ask .achips{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.ask .achip{min-height:44px;padding:8px 14px;border-radius:999px;border:2px solid #002868;background:#fff;color:#002868;font:800 14px/1.2 Inter,system-ui,sans-serif;cursor:pointer;text-align:left;max-width:100%}
.ask .sec{margin:18px 0 0}.ask .sec h3{font-size:13px;font-weight:850;letter-spacing:.08em;text-transform:uppercase;color:#5B6475;margin:0}
.ask a.card.res{display:block;color:#0B1B33;text-decoration:none}
.ask .vtag,.ask .utag{font-size:11px;font-weight:800;padding:2px 8px;border-radius:999px}
.ask .vtag{background:#E3F4EA;color:#14653A}.ask .utag{background:#FFF1CC;color:#7A4B00}

/* ask: plain-English lead + clarify chips */
.ask .aplain{font-size:20px!important;font-weight:850;letter-spacing:-.4px;line-height:1.25;margin:8px 0 6px;color:#0B1B33}
.ask #askClarify{border-color:#002868}
.ask #askClarify h2{color:#002868}

.askban .alink{background:none;border:0;color:#002868;font:800 13px Inter,system-ui,sans-serif;text-decoration:underline;padding:0;cursor:pointer;min-height:44px}
.ask .aplain{font-size:20px!important;font-weight:850;letter-spacing:-.4px;line-height:1.25;margin:8px 0 6px;color:#0B1B33}
.ask #askClarify{border-color:#002868}

.ask .amodel{margin-top:10px}.ask .amodel .atl{display:block;margin-bottom:6px}

.ask .asksl .slbl{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#5B6475;margin:8px 0 4px}
.ask .asksl .slih{font-size:20px;font-weight:850;letter-spacing:-.4px;line-height:1.25;margin:0 0 8px;color:#0B1B33}
.ask .askicc{margin:12px 12px 8px}
.ask #slRows{margin:0 0 8px}

/* Did you know + mastery */
.engbadge-wrap{position:relative;z-index:2;margin-top:8px}
.engbadge{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:6px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.14);color:#fff;font:800 12px Inter,system-ui,sans-serif;letter-spacing:.02em;cursor:pointer}
.engbadge .engb{flex:0 0 auto}
.engtip{position:fixed;inset:0;z-index:80;background:rgba(11,27,51,.45);display:flex;align-items:flex-end;justify-content:center;opacity:0;pointer-events:none;transition:opacity .22s}
.engtip.on{opacity:1;pointer-events:auto}
.engtip-panel{position:relative;width:100%;max-width:440px;background:#fff;border-radius:18px 18px 0 0;padding:18px 16px 22px;box-shadow:0 -8px 28px rgba(11,27,51,.18);transform:translateY(12px);transition:transform .22s}
.engtip.on .engtip-panel{transform:none}
.engtip-h{display:flex;gap:10px;align-items:flex-start;padding-right:44px;margin-bottom:10px}
.engtip-h small{display:block;font:800 11px Inter,system-ui,sans-serif;letter-spacing:.06em;text-transform:uppercase;color:#5B6475}
.engtip-h b{display:block;font:800 16px Inter,system-ui,sans-serif;color:#0B1B33;margin-top:2px}
.engtip-ic{width:36px;height:36px;border-radius:12px;background:#EEF3FB;display:flex;align-items:center;justify-content:center;flex:0 0 auto}
.engtip-p{font:600 15px/1.35 Inter,system-ui,sans-serif;color:#0B1B33;margin:0 0 14px}
.engtip-skip{display:block;width:100%;min-height:44px;margin-top:8px;border:0;background:none;color:#5B6475;font:700 14px Inter,system-ui,sans-serif;cursor:pointer}
.engtip .ov-x{position:absolute;top:10px;right:10px;width:44px;height:44px;border:0;background:#F3F5F8;border-radius:12px;display:flex;align-items:center;justify-content:center;cursor:pointer}
.engup{position:fixed;left:0;right:0;top:18%;z-index:90;display:flex;justify-content:center;pointer-events:none;opacity:0;transform:translateY(8px);transition:opacity .25s,transform .25s}
.engup.show{opacity:1;transform:none}
.engup-card{display:flex;gap:12px;align-items:center;background:#0B1B33;color:#fff;border-radius:16px;padding:14px 16px;box-shadow:0 12px 32px rgba(11,27,51,.35);max-width:340px;margin:0 16px}
.engup-card small{display:block;font:800 10px Inter,system-ui,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#FFD700}
.engup-card b{display:block;font:850 18px Inter,system-ui,sans-serif;margin:2px 0}
.engup-card span{display:block;font:600 13px/1.3 Inter,system-ui,sans-serif;color:rgba(255,255,255,.82)}

/* ---- locked sign-in (CodeCheck Marketing mockup fresh1-no-one-sky) ---- */
body[data-page="signin"]{background:#F3F5F9}
body[data-page="signin"] .screen{background:#F3F5F9}
.si{min-height:100%;min-height:100dvh;height:100%;display:flex;flex-direction:column;background:#F3F5F9}
.si-hero{position:relative;flex:0 0 38%;min-height:310px;max-height:340px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:calc(env(safe-area-inset-top,0px) + 4px) 24px 96px;overflow:hidden;
  background:
    url(assets/signin-sky.png) center top / 100% 100% no-repeat,
    radial-gradient(ellipse 140% 70% at 50% 100%,rgba(255,205,140,.35) 0%,transparent 55%),
    linear-gradient(180deg,#F7FBFD 0%,#E4F0F8 35%,#EDE6D4 75%,#E5D5B5 100%)}
.si-brand{position:relative;z-index:4;text-align:center;display:flex;flex-direction:column;align-items:center;width:max-content;max-width:90%;margin:24px auto 0}
.si-logo{display:flex;justify-content:center}
.si-mark{width:102px;height:92px;display:block;object-fit:contain}
.si-wm{margin-top:6px;font-size:34px;font-weight:800;letter-spacing:-.9px;color:#0B1B33;line-height:1.02}
.si-co{display:flex;justify-content:space-between;align-items:baseline;align-self:stretch;width:auto;margin:7px 0 0;font-size:11.5px;font-weight:850;letter-spacing:0;color:#BF0A30;text-transform:uppercase;line-height:1.1;padding:0}
.si-mtn{position:absolute;left:0;right:0;bottom:0;width:100%;height:110px;z-index:3;display:block;pointer-events:none;object-fit:cover;object-position:center bottom}
.si-panel{position:relative;z-index:2;flex:1 1 auto;background:#0B1B33;color:#fff;padding:18px 28px calc(18px + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;overflow:hidden}
body[data-page="signin"] main.si-main{padding:0!important;padding-bottom:0!important;display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}
.si-frm{display:flex;flex-direction:column;flex:1;min-height:0}
.si-h{font-size:26px;font-weight:850;letter-spacing:-.45px;color:#fff;line-height:1.05;margin:0}
.si-sub{margin-top:6px;margin-bottom:4px;font-size:13.5px;font-weight:500;line-height:1.35;color:rgba(255,255,255,.72)}
.si-fld{margin-top:14px}
.si-fld+.si-fld{margin-top:12px}
.si-fl{display:block;font-size:12.5px;font-weight:700;color:#fff;margin-bottom:4px}
.si-box{position:relative;display:flex;align-items:center;gap:8px;height:45px;background:#fff;border-radius:8px;padding:0 10px 0 12px;border:0}
.si-box>svg{flex:0 0 auto;width:16px;height:16px}
.si-box input{flex:1;min-width:0;height:100%;border:0;background:transparent;padding:0;font-size:15px;font-weight:500;color:#0B1B33;outline:0;-webkit-appearance:none;appearance:none}
.si-box input::placeholder{color:#8A93A6;font-weight:500}
.si-box:focus-within{box-shadow:0 0 0 2px #FFD700}
.si-pw{position:relative;display:block;flex:1;min-width:0;height:100%}
.si-pw input{width:100%;padding-right:34px}
.si-pw .pwt{position:absolute;right:-2px;top:50%;transform:translateY(-50%);width:34px;height:34px;display:flex;align-items:center;justify-content:center;border:0;background:transparent}
.si-forgot{display:flex;justify-content:flex-end;margin-top:2px}
.si-link{display:inline;padding:0;border:0;background:none;color:#FFD700;font-size:12.5px;font-weight:700;font-family:inherit;text-decoration:none;cursor:pointer;min-height:28px;line-height:28px}
.si-frm .ferr{color:#FF8A73;font-size:12px;font-weight:700;margin-top:4px;min-height:0;line-height:1.25}
.si-frm .ferr:empty{margin-top:0}
body[data-page="signin"] .si-go.btn.y{margin-top:10px!important;min-height:46px!important;height:46px;font-size:15.5px!important;font-weight:800!important;border-radius:8px!important;box-shadow:none!important;background:#FFD700!important;color:#0B1B33!important}
.si-or{display:flex;align-items:center;gap:14px;margin:12px 8px 10px;color:rgba(255,255,255,.7);font-size:12px;font-weight:600}
.si-or:before,.si-or:after{content:"";flex:1;height:1px;background:rgba(255,255,255,.28)}
.si-create{display:flex;align-items:center;justify-content:center;gap:8px;min-height:46px;height:46px;border-radius:8px;border:1.5px solid rgba(255,255,255,.9);background:transparent;color:#fff;font-size:15px;font-weight:700;text-decoration:none}
.si-create svg{flex:0 0 auto;width:16px;height:16px}
.si-legal{margin-top:16px;text-align:center;font-size:11px;font-weight:500;line-height:1.5;color:rgba(255,255,255,.7)}
.si-legal .si-link{min-height:auto;line-height:inherit;font-size:11px;font-weight:700;padding:0}
body[data-page="signin"] .unvx{margin:0 0 8px;background:rgba(255,215,0,.12);border:1px solid rgba(255,215,0,.35);color:#fff}
body[data-page="signin"] .unvx b{color:#FFD700}
@media (max-width:350px){
 .si-wm{font-size:28px}.si-mark{width:88px;height:80px}.si-hero{min-height:280px;padding-bottom:72px}.si-co{max-width:170px}
}

/* welcome promo video (One state · amendment total) */
.wl-vid{margin:18px 0 0;border-radius:14px;overflow:hidden;background:#061428;box-shadow:0 8px 28px rgba(0,0,0,.28);max-width:280px}
.wl-vid video{display:block;width:100%;height:auto;aspect-ratio:9/16;object-fit:cover;background:#061428}
.wl-vid figcaption{padding:10px 12px;font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#FFD700;background:rgba(6,20,40,.92)}
