/* ============================================================
   RapidTag by ASPE — shared store design system (Tachometer)
   Powers every page: index, shop, product, cart, checkout,
   order-confirmation, quote, saved-quotes, contact, account, etc.
   ============================================================ */
:root{
  --void:#07090e;--panel:#0e131c;--panel-2:#11161f;--line:#1b2230;--line-2:#2a3343;
  --ink:#f3f5f8;--steel:#aab4c4;--muted:#7b8597;
  --cobalt:#2f6bff;--cobalt-deep:#0b2f9e;--ignite:#ff5a1f;--ignite-soft:#ff7a45;--lime:#37e07f;--amber:#ffb020;
  --disc:#eef1f5;
  --display:'Oswald',Impact,sans-serif;--body:'Space Grotesk',ui-sans-serif,system-ui,sans-serif;--mono:'Space Mono',ui-monospace,Menlo,monospace;
  --ok:#37e07f;--err:#ff5a4d;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--void);color:var(--ink);font-family:var(--body);-webkit-font-smoothing:antialiased;overflow-x:hidden;line-height:1.5;min-height:100vh;display:flex;flex-direction:column}
body.lock{overflow:hidden}
::selection{background:var(--ignite);color:#000}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}
:focus-visible{outline:2px solid var(--cobalt);outline-offset:3px;border-radius:4px}
main{flex:1 0 auto}
.wrap{max-width:1280px;margin:0 auto;padding:0 28px;width:100%}
/* Native select popups must render dark: without color-scheme the OS paints a
   white option list with the page's light ink — unreadable. */
select{color-scheme:dark}
select option{background:#0e131c;color:#f3f5f8}
.qconsent{display:flex;gap:10px;align-items:flex-start;margin-top:14px;font-size:13px;color:var(--steel);line-height:1.55;cursor:pointer}
.qconsent input{margin-top:3px;accent-color:var(--ignite);flex:none}
.qconsent.invalid span{color:var(--err, #ff6b6b)}
.display{font-family:var(--display);font-weight:600;letter-spacing:.02em;line-height:.94;text-transform:uppercase;text-wrap:balance}
/* Anton is very condensed — give all display-font text slight tracking for legibility */
.display,.panel h3,.cosection h3,.pprice,.priceblock .pv,.measure-explain .total .tv,
.summary h3,.sumrow.total .v,.lineitem .lprice,.s-dhead h3,.s-dfoot .drow .sub,.s-dempty .big,.emptybox h3,
.bsum .bt,.stepup h4,.shopstats b,.stile b,.qcard .qref,.ocard .onum,.ocard .ototal,.ty .refbox .r,.ty h1,.grpm,.stat .n,.card h3{letter-spacing:.025em}
.eyebrow{font-family:var(--mono);font-size:11.5px;letter-spacing:.26em;text-transform:uppercase;color:var(--ignite);font-weight:700}
.mono{font-family:var(--mono)}
.muted{color:var(--muted)}.steel{color:var(--steel)}
.hide{display:none!important}

/* BUTTONS */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:700;padding:12px 21px;border-radius:6px;font-size:13px;transition:transform .15s,box-shadow .3s,background .25s,border-color .25s,color .25s;border:none;font-family:var(--body);white-space:nowrap}
.btn-primary{background:var(--ignite);color:#0a0a0a}
.btn-primary:hover{box-shadow:0 12px 30px rgba(255,90,31,.4)}
.btn-cobalt{background:var(--cobalt);color:#fff}
.btn-cobalt:hover{box-shadow:0 12px 30px rgba(47,107,255,.4)}
.btn-ghost{background:transparent;color:var(--ink);border:1px solid var(--line-2)}
.btn-ghost:hover{border-color:var(--cobalt);color:#fff}
.btn-lg{padding:16px 26px;font-size:14.5px}
.btn-sm{padding:9px 14px;font-size:12px}
.btn-block{width:100%}
.btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}

/* ===== HEADER / NAV (injected by store.js) ===== */
.s-header{position:sticky;top:0;z-index:100;background:rgba(7,9,14,.86);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.s-nav{display:flex;align-items:center;gap:clamp(12px,1.8vw,26px);height:74px}
/* the header row carries more items than content sections — let it breathe wider */
.s-header .wrap{max-width:1400px}
.s-logo{display:flex;align-items:center;gap:11px;flex:none}
.s-logo img{height:28px;width:auto}
.s-logo small{color:var(--muted);font-family:var(--mono);font-weight:700;font-size:9.5px;letter-spacing:.18em;text-transform:uppercase}
.s-nav .s-logo img,.mh .s-logo img{height:40px;filter:drop-shadow(0 2px 8px rgba(0,0,0,.35))}
.s-nav .s-logo small{font-size:10.5px;padding-left:12px;margin-left:1px;border-left:1px solid var(--line-2)}
.s-navlinks{display:flex;gap:6px;align-items:center}
.s-navlinks>a,.s-navitem>button{font-family:var(--mono);font-size:12.5px;letter-spacing:.04em;color:var(--steel);transition:color .2s;padding:8px 10px;border-radius:6px;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.s-navlinks>a:hover,.s-navitem>button:hover,.s-navitem.open>button{color:var(--ink)}
.s-navitem.dd{position:relative}
.ddmenu{position:absolute;top:calc(100% + 12px);left:-12px;min-width:226px;background:linear-gradient(180deg,#0d121b,#0a0e16);border:1px solid var(--line-2);border-radius:12px;padding:8px;opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .2s,transform .2s cubic-bezier(.2,.7,.2,1),visibility .2s;box-shadow:0 26px 64px rgba(0,0,0,.55);z-index:120}
.ddmenu::before{content:"";position:absolute;top:0;left:0;right:0;height:2px;border-radius:12px 12px 0 0;background:linear-gradient(90deg,var(--ignite),var(--cobalt))}
.s-navitem.dd.open .ddmenu{opacity:1;visibility:visible;transform:none}
.ddmenu a{display:block;padding:9px 12px;border-radius:8px;font-family:var(--body);font-size:13px;font-weight:500;letter-spacing:0;text-transform:none;color:var(--steel);transition:background .15s,color .15s}
.ddmenu a:hover{background:var(--panel-2);color:#fff}
.s-navitem{position:relative}
.s-navitem>button .caret{font-size:9px;opacity:.7}
.mega{position:absolute;top:calc(100% + 14px);left:-12px;width:1040px;max-width:calc(100vw - 48px);background:linear-gradient(180deg,#0d121b,#0a0e16);border:1px solid var(--line-2);border-radius:16px;padding:0;opacity:0;visibility:hidden;transform:translateY(12px) scale(.99);transition:opacity .24s,transform .24s cubic-bezier(.2,.7,.2,1),visibility .24s;box-shadow:0 30px 80px rgba(0,0,0,.62);z-index:120;overflow:hidden}
.s-navitem.open .mega{opacity:1;visibility:visible;transform:none}
.mega::before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--ignite),var(--cobalt))}
.mega-top{display:grid;grid-template-columns:248px 1.1fr .85fr 1.02fr;position:relative}
.mega-col{padding:26px 24px 28px;border-right:1px solid var(--line)}
.mega-h{font-family:var(--mono);font-size:9.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--cobalt);margin-bottom:16px}
.mega-cat{display:flex;align-items:center;gap:12px;padding:10px 11px;border-radius:10px;color:var(--steel);transition:background .16s,transform .16s,color .16s}
.mega-cat:hover{background:var(--panel-2);color:#fff;transform:translateX(3px)}
.mega-cat .ico{width:34px;height:34px;border-radius:9px;background:rgba(47,107,255,.13);color:var(--cobalt);display:grid;place-items:center;font-size:15px;flex:none}
.mega-cat .nm{flex:1;font-size:14px;font-weight:600;font-family:var(--body)}
.mega-cat .ct{font-family:var(--mono);font-size:10px;color:var(--muted)}
.mega-cat .ct.new{color:var(--ignite);font-weight:700;letter-spacing:.04em}
.mega-mch{display:flex;align-items:center;gap:14px;padding:10px 11px;border-radius:12px;color:var(--steel);transition:background .16s,transform .16s}
.mega-mch:hover{background:var(--panel-2);transform:translateX(3px)}
.mega-mch .th{width:60px;height:60px;border-radius:12px;background:radial-gradient(circle at 50% 32%,#eef1f5,#c6cdd8);display:grid;place-items:center;overflow:hidden;flex:none}
.mega-mch .th img{max-width:86%;max-height:86%;object-fit:contain}
.mega-mch .nm{flex:1;font-size:15px;font-weight:700;color:var(--ink);font-family:var(--body);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mega-mch .pr{font-family:var(--mono);font-size:11.5px;color:var(--steel);white-space:nowrap}
.mega-feat{padding:22px;position:relative;display:flex;flex-direction:column;background:radial-gradient(120% 80% at 80% 6%,rgba(255,90,31,.18),transparent 58%)}
.mega-feat .badge{font-family:var(--mono);font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--ignite)}
.mega-feat img{width:100%;max-width:188px;align-self:center;margin:8px 0 12px;filter:drop-shadow(0 16px 28px rgba(0,0,0,.5))}
.mega-feat h4{font-family:var(--display);font-size:26px;text-transform:uppercase;letter-spacing:.02em;line-height:.92}
.mega-feat p{font-family:var(--mono);font-size:10.5px;color:var(--steel);margin:8px 0 14px;line-height:1.55}
.mega-feat .fcta{display:flex;gap:8px;margin-top:auto}
.mega-feat .fcta .btn{flex:1}
.mega-bottom{display:flex;border-top:1px solid var(--line);background:rgba(255,255,255,.015)}
.mega-bottom a{flex:1;text-align:center;padding:14px 8px;font-family:var(--mono);font-size:11px;color:var(--steel);border-right:1px solid var(--line);transition:background .16s,color .16s;display:flex;align-items:center;justify-content:center;gap:7px}
.mega-bottom a:last-child{border-right:none}
.mega-bottom a:hover{background:var(--panel-2);color:#fff}
@media(max-width:1180px){
  /* mid-width squeeze relief: drop the tagline, tighten link padding, let search give way */
  .s-nav .s-logo small{display:none}
  .s-navlinks>a,.s-navitem>button{padding:8px 7px;letter-spacing:.02em}
  .s-search{max-width:230px}
}
@media(max-width:1100px){
  .mega{width:720px}
  .mega-top{grid-template-columns:1fr 1fr}
  .mega-top>.mega-col:nth-child(2){border-right:none}
  .mega-top>.mega-col:nth-child(n+3){border-top:1px solid var(--line)}
  .mega-feat{border-top:1px solid var(--line)}
  .mega-preview{display:none!important}
}

/* category hover preview */
.mega-preview{position:absolute;top:0;left:248px;right:0;bottom:0;background:linear-gradient(180deg,#0d121b,#0a0e16);padding:24px 26px;display:none;flex-direction:column;z-index:6}
.mega-preview.show{display:flex;animation:megaPv .2s cubic-bezier(.2,.7,.2,1)}
@keyframes megaPv{from{opacity:0;transform:translateX(7px)}to{opacity:1;transform:none}}
.mega-pv-h{display:flex;justify-content:space-between;align-items:baseline;font-family:var(--mono);font-size:9.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--cobalt);margin-bottom:16px}
.mega-pv-h .ct{color:var(--muted);letter-spacing:.05em}
.mega-pv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.mega-pv-item{display:flex;align-items:center;gap:11px;padding:8px 9px;border-radius:10px;color:var(--steel);transition:background .16s}
.mega-pv-item:hover{background:var(--panel-2)}
.mega-pv-item .th{width:54px;height:54px;border-radius:10px;background:radial-gradient(circle at 50% 32%,#eef1f5,#c6cdd8);display:grid;place-items:center;overflow:hidden;flex:none}
.mega-pv-item .th img{max-width:84%;max-height:84%;object-fit:contain}
.mega-pv-item .meta{display:flex;flex-direction:column;gap:2px;min-width:0}
.mega-pv-item .nm{font-size:12px;font-weight:600;color:var(--ink);line-height:1.22;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.mega-pv-item .pr{font-family:var(--mono);font-size:10px;color:var(--steel)}
.mega-pv-all{margin-top:auto;padding-top:16px;font-family:var(--mono);font-size:11px;color:var(--ignite);font-weight:700}
.mega-msub{display:flex;gap:22px;flex:1;min-height:0}
.mega-mlist{width:212px;flex:none;display:flex;flex-direction:column;overflow-y:auto}
.mega-mrow{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 12px;border-radius:10px;color:var(--steel);transition:background .15s}
.mega-mrow:hover,.mega-mrow.active{background:var(--panel-2)}
.mega-mrow .nm{font-size:14px;font-weight:600;color:var(--ink);letter-spacing:.01em;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mega-mrow.active .nm{color:var(--ignite)}
.mega-mrow .pr{font-family:var(--mono);font-size:10.5px;color:var(--steel);flex:none}
.mega-mbig{flex:1;border-radius:16px;overflow:hidden;min-height:0;background:#0c0f14}
.mega-mbig img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}

/* ROI calculator — shared by homepage section + modal */
.roi-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:stretch;max-width:1040px;margin:0 auto}
.roi-card{background:linear-gradient(180deg,var(--panel-2),var(--panel));border:1px solid var(--line);border-radius:18px;padding:28px;display:flex;flex-direction:column}
.roi-card.out{background:linear-gradient(180deg,#0c1322,#0a0f18);border-color:rgba(47,107,255,.35)}
.roi-card h3{font-family:var(--display);font-size:22px;text-transform:uppercase;letter-spacing:.025em;margin-bottom:20px}
.roi-field{margin-bottom:18px}
.roi-field label{display:flex;justify-content:space-between;font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--steel);margin-bottom:8px}
.roi-field label .val{color:var(--ignite)}
.roi-field input[type=range]{width:100%;accent-color:var(--cobalt)}
.roi-field input[type=number],.roi-field select{width:100%;background:var(--void);border:1px solid var(--line-2);border-radius:8px;padding:11px 13px;color:var(--ink);font-family:var(--mono);font-size:14px;outline:none}
.roi-field input:focus,.roi-field select:focus{border-color:var(--cobalt)}
.roi-out-row{display:flex;justify-content:space-between;align-items:baseline;padding:14px 0;border-bottom:1px solid var(--line)}
.roi-out-row:last-of-type{border-bottom:none}
.roi-out-row .l{font-family:var(--mono);font-size:12px;color:var(--steel);max-width:60%}
.roi-out-row .v{font-family:var(--display);font-size:26px;letter-spacing:.025em}
.roi-out-row .v.big{font-size:40px;color:var(--lime)}
.roi-out-row .v.pos{color:var(--cobalt)}
.roi-payback{margin-top:18px;border:1px dashed rgba(55,224,127,.4);background:rgba(55,224,127,.06);border-radius:10px;padding:16px;font-family:var(--mono);font-size:13px;color:var(--ink);line-height:1.5}
.roi-payback b{color:var(--lime)}
.roi-assume{font-family:var(--mono);font-size:10px;color:var(--muted);margin-top:14px;line-height:1.5}
.roi-card.out>.btn{margin-top:auto}
.roi-note{margin-top:auto;padding-top:20px;border-top:1px solid var(--line);font-family:var(--mono);font-size:11px;color:var(--muted);line-height:1.55;display:flex;gap:9px;align-items:flex-start}
.roi-note .b{color:var(--ignite);flex:none}

/* ROI modal */
.roi-modal{position:fixed;inset:0;z-index:400;display:none;padding:40px 16px;background:rgba(4,6,10,.74);backdrop-filter:blur(6px);overflow:auto}
.roi-modal.open{display:block}
.roi-modal-box{position:relative;width:100%;max-width:960px;margin:auto;background:linear-gradient(180deg,#0d121b,#0a0e16);border:1px solid var(--line-2);border-radius:18px;padding:34px 30px 30px;box-shadow:0 40px 100px rgba(0,0,0,.66)}
.roi-modal-box::before{content:"";position:absolute;top:0;left:0;right:0;height:2px;border-radius:18px 18px 0 0;background:linear-gradient(90deg,var(--ignite),var(--cobalt))}
.roi-modal-x{position:absolute;top:14px;right:15px;width:38px;height:38px;border-radius:9px;border:1px solid var(--line-2);background:var(--panel);color:var(--steel);font-size:21px;line-height:1;cursor:pointer;transition:color .18s,border-color .18s;z-index:2}
.roi-modal-x:hover{color:#fff;border-color:var(--ignite)}
.roi-modal-head{max-width:580px;margin:0 auto 26px;text-align:center}
.roi-modal-head h2{font-size:clamp(24px,3vw,40px);line-height:1.04}
.roi-modal-head p{color:var(--steel);font-size:14.5px;margin-top:10px}
@media(max-width:760px){.roi-grid{grid-template-columns:1fr;max-width:520px}.roi-modal-box{padding:30px 18px 22px}.roi-modal{padding:20px 12px}}
.s-search{flex:1 1 150px;min-width:120px;max-width:380px;display:flex;align-items:center;gap:9px;border:1px solid var(--line-2);border-radius:8px;padding:0 13px;background:var(--void);transition:border-color .2s}
.s-search:focus-within{border-color:var(--cobalt)}
.s-search svg{flex:none;opacity:.6}
.s-search input{flex:1;background:none;border:none;outline:none;color:var(--ink);font-family:var(--mono);font-size:12.5px;padding:10px 0}
.s-search input::placeholder{color:var(--muted)}
.s-actions{display:flex;gap:10px;align-items:center;flex:none}
.s-iconbtn{position:relative;display:flex;align-items:center;gap:7px;font-family:var(--mono);font-size:11.5px;letter-spacing:.05em;color:var(--ink);border:1px solid var(--line-2);padding:10px 13px;border-radius:7px;transition:border-color .25s}
.s-iconbtn:hover{border-color:var(--cobalt)}
.s-badge{min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--ignite);color:#0a0a0a;font-size:11px;font-weight:700;display:grid;place-items:center;font-family:var(--mono)}
.s-badge.empty{background:var(--line-2);color:var(--steel)}
.s-burger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:6px}
.s-burger span{width:22px;height:2px;background:var(--ink);border-radius:2px;transition:.25s}

/* MOBILE NAV */
.m-nav{position:fixed;top:0;left:0;bottom:0;width:min(340px,86vw);background:var(--panel);border-right:1px solid var(--line-2);z-index:200;transform:translateX(-100%);transition:transform .35s cubic-bezier(.3,.7,.2,1);display:flex;flex-direction:column;padding:22px}
.m-nav.open{transform:none}
.m-nav .mh{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}
.m-nav .mh .x{font-size:24px;color:var(--steel)}
.m-nav a{display:block;padding:13px 6px;border-bottom:1px solid var(--line);font-family:var(--mono);font-size:14px;color:var(--steel)}
.m-nav a:hover{color:#fff}
.m-nav .msub{font-family:var(--mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--cobalt);margin:18px 0 4px}

/* ===== FOOTER ===== */
.s-footer{flex-shrink:0;border-top:1px solid var(--line);background:var(--void);padding:56px 0 34px;margin-top:60px}
.s-footgrid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:38px;margin-bottom:42px}
.s-footlogo img{height:34px;width:auto;margin-bottom:16px}
.s-footgrid h5{font-family:var(--mono);font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--cobalt);margin-bottom:15px;font-weight:700}
.s-footgrid a{display:block;color:var(--muted);font-size:14px;margin-bottom:10px;transition:color .2s}
.s-footgrid a:hover{color:var(--ink)}
.s-footblurb{color:var(--steel);font-size:14px;line-height:1.7;max-width:300px}
.s-footbottom{border-top:1px solid var(--line);padding-top:24px;display:flex;justify-content:space-between;color:var(--muted);font-family:var(--mono);font-size:12px;flex-wrap:wrap;gap:10px}
.s-footlegal{display:flex;gap:18px}
.s-footlegal a{color:var(--muted);transition:color .15s}
.s-footlegal a:hover{color:var(--ink)}

/* ===== PAGE HERO / SECTION HEADS ===== */
.phero{position:relative;padding:84px 0 36px;overflow:hidden}
.phero-glow{position:absolute;z-index:0;width:680px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(47,107,255,.15),transparent 62%);top:-12%;right:-4%;filter:blur(42px);pointer-events:none}
.phero .wrap{position:relative;z-index:1}
.phero h1{font-size:clamp(40px,6vw,82px);margin:12px 0 0}
.phero h1 .o{color:var(--ignite)}
.phero p{color:var(--steel);font-size:16px;max-width:560px;margin-top:16px;line-height:1.6}
.crumb{font-family:var(--mono);font-size:11.5px;letter-spacing:.05em;color:var(--muted);padding:96px 0 0}
.crumb a:hover{color:var(--ink)}
.crumb .sep{margin:0 8px;opacity:.5}
.sec{padding:54px 0}
.sec-h{display:flex;align-items:baseline;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:8px}
.sec-h h2{font-size:clamp(26px,3.6vw,46px)}
.sec-sub{font-family:var(--mono);font-size:12px;color:var(--steel);margin-bottom:28px;letter-spacing:.03em}

/* ===== PRODUCT CARD (grid) ===== */
.pgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.pqty{width:56px;height:34px;text-align:center;font-family:var(--mono);font-size:13px;color:var(--ink);background:var(--void);border:1px solid var(--line-2);border-radius:7px;padding:0 2px}
.pqty:focus{border-color:var(--cobalt);outline:none}
.pqty::-webkit-outer-spin-button,.pqty::-webkit-inner-spin-button{opacity:1}
.pcard{background:linear-gradient(180deg,var(--panel-2),var(--panel));border:1px solid var(--line);border-radius:13px;padding:14px;display:flex;flex-direction:column;transition:transform .3s,border-color .3s;position:relative}
.pcard:hover{transform:translateY(-5px);border-color:var(--line-2)}
.plink{display:block;color:inherit}
.pstage{height:270px;border-radius:9px;position:relative;overflow:hidden;display:grid;place-items:center;background:radial-gradient(110% 90% at 50% 32%,#f6f8fb,#cdd4dd 72%,#b3bcc8);margin-bottom:14px}
.pstage img{position:relative;z-index:1;max-width:92%;max-height:92%;object-fit:contain;filter:drop-shadow(0 10px 16px rgba(16,28,52,.22));transition:transform .4s}
.pcard:hover .pstage img{transform:scale(1.06)}
.pcat{position:absolute;top:9px;left:9px;z-index:4;font-family:var(--mono);font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--cobalt);background:rgba(7,9,14,.82);backdrop-filter:blur(4px);border:1px solid var(--line-2);padding:4px 7px;border-radius:5px}
.pwish{position:absolute;top:8px;right:8px;width:30px;height:30px;border-radius:8px;display:grid;place-items:center;background:rgba(7,9,14,.78);backdrop-filter:blur(4px);border:1px solid var(--line-2);color:var(--steel);font-size:14px;transition:.2s;z-index:4}
.pwish:hover{color:var(--ignite);border-color:var(--ignite)}
.pwish.on{color:var(--ignite);border-color:var(--ignite)}
.pmeasure{position:absolute;bottom:9px;left:9px;z-index:4;font-family:var(--mono);font-size:8.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--amber);background:rgba(7,9,14,.8);backdrop-filter:blur(4px);border:1px solid rgba(255,176,32,.3);padding:3px 6px;border-radius:5px}
.psaletag{color:var(--ignite);border-color:rgba(255,90,31,.4)}
.poostag{color:var(--err,#ff5a5a);border-color:rgba(255,90,90,.4)}
.pwas{color:var(--muted);font-size:12px;margin-right:4px}
.psale{color:var(--ignite);font-weight:700}
.pname{font-size:14px;font-weight:600;line-height:1.3;margin-bottom:4px;min-height:36px;transition:color .2s}
.plink:hover .pname{color:#fff}
.psku{font-family:var(--mono);font-size:10.5px;color:var(--muted);letter-spacing:.06em;margin-bottom:12px}
.pfoot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto}
.pprice{font-family:var(--display);font-size:23px}
.pprice .per{font-family:var(--mono);font-size:10px;color:var(--steel);letter-spacing:.05em}
.pacts{display:flex;gap:6px}
.addbtn{display:inline-flex;align-items:center;gap:6px;font-family:var(--mono);font-size:11.5px;font-weight:700;letter-spacing:.04em;color:#0a0a0a;background:var(--ignite);padding:9px 12px;border-radius:6px;transition:transform .12s,box-shadow .25s}
.addbtn:hover{box-shadow:0 8px 20px rgba(255,90,31,.38)}
.addbtn:active{transform:scale(.94)}
.quotebtn{display:inline-flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:11.5px;font-weight:700;color:var(--cobalt);border:1px solid var(--line-2);padding:9px 11px;border-radius:6px;transition:.2s}
.quotebtn:hover{border-color:var(--cobalt);background:rgba(47,107,255,.08)}
.stockdot{display:inline-flex;align-items:center;gap:6px;font-family:var(--mono);font-size:10px;color:var(--lime)}
.stockdot .d{width:7px;height:7px;border-radius:50%;background:var(--lime);box-shadow:0 0 8px var(--lime)}

/* turntable disc (PDP / machine) */
.disc{border-radius:12px;position:relative;overflow:hidden;display:grid;place-items:center;background:radial-gradient(120% 92% at 50% 28%,#f6f8fb,#d3d9e1 70%,#b6bfca)}
.disc::before{content:"";position:absolute;width:160%;height:160%;left:-30%;top:-30%;border-radius:50%;background:repeating-conic-gradient(from 0deg,rgba(16,24,40,.16) 0deg .55deg,transparent .55deg 9deg);-webkit-mask:radial-gradient(circle,transparent 39%,#000 40% 60%,transparent 61%);mask:radial-gradient(circle,transparent 39%,#000 40% 60%,transparent 61%);opacity:.65}
.disc img{position:relative;max-width:80%;max-height:86%;object-fit:contain;filter:drop-shadow(0 12px 18px rgba(16,28,52,.3))}

/* ===== QUANTITY / MEASUREMENT SELECTOR ===== */
.qtysel{display:inline-flex;flex-direction:column;gap:8px}
.qtysel .qlabel{font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--steel);display:flex;align-items:center;gap:8px}
.qtysel .qmode{font-family:var(--mono);font-size:8.5px;letter-spacing:.1em;text-transform:uppercase;padding:3px 7px;border-radius:5px}
.qmode.std{background:rgba(47,107,255,.14);color:var(--cobalt);border:1px solid rgba(47,107,255,.3)}
.qmode.mea{background:rgba(255,176,32,.14);color:var(--amber);border:1px solid rgba(255,176,32,.3)}
.stepper{display:inline-flex;align-items:center;border:1px solid var(--line-2);border-radius:8px;overflow:hidden;background:var(--void)}
.stepper button{width:46px;height:46px;font-family:var(--mono);font-size:20px;color:var(--steel);transition:.15s}
.stepper button:hover{color:#fff;background:var(--panel-2)}
.stepper input{width:64px;height:46px;text-align:center;background:none;border:none;border-left:1px solid var(--line-2);border-right:1px solid var(--line-2);color:#fff;font-family:var(--mono);font-size:16px;outline:none;-moz-appearance:textfield}
.stepper input::-webkit-outer-spin-button,.stepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.stepper .unit{padding:0 14px;height:46px;display:grid;place-items:center;font-family:var(--mono);font-size:13px;color:var(--steel);border-left:1px solid var(--line-2)}
.measure-explain{margin-top:6px;border:1px dashed var(--line-2);border-radius:8px;padding:11px 14px;display:flex;justify-content:space-between;align-items:center;gap:14px;background:rgba(255,176,32,.04)}
.measure-explain .rate{font-family:var(--mono);font-size:11.5px;color:var(--steel)}
.measure-explain .rate b{color:var(--amber)}
.measure-explain .total{text-align:right}
.measure-explain .total .tl{font-family:var(--mono);font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.measure-explain .total .tv{font-family:var(--display);font-size:26px;line-height:.9;color:#fff}
.qhint{font-family:var(--mono);font-size:10.5px;color:var(--muted)}
.qerr{color:var(--err)}

/* ===== FORMS ===== */
.field{display:flex;flex-direction:column;gap:7px;margin-bottom:16px}
.field label{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--steel)}
.field label .req{color:var(--ignite)}
.field input,.field select,.field textarea{background:var(--void);border:1px solid var(--line-2);border-radius:8px;padding:13px 14px;color:var(--ink);font-family:var(--body);font-size:14.5px;outline:none;transition:border-color .2s;width:100%}
.field input::placeholder,.field textarea::placeholder{color:var(--muted)}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--cobalt)}
.field textarea{resize:vertical;min-height:96px}
.field.invalid input,.field.invalid select,.field.invalid textarea{border-color:var(--err)}
.field .ferr{font-family:var(--mono);font-size:10.5px;color:var(--err);min-height:0}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.field-row-3{display:grid;grid-template-columns:2fr 1fr 1fr;gap:16px}
.checkrow{display:flex;align-items:center;gap:10px;font-size:13.5px;color:var(--steel);cursor:pointer;font-family:var(--body)}
.checkrow input{width:18px;height:18px;accent-color:var(--cobalt);flex:none}
.filedrop{border:1.5px dashed var(--line-2);border-radius:10px;padding:26px;text-align:center;cursor:pointer;transition:.2s;color:var(--steel)}
.filedrop:hover{border-color:var(--cobalt);background:rgba(47,107,255,.04)}
.filedrop .fi{font-size:26px;color:var(--cobalt);margin-bottom:8px}
.filedrop small{font-family:var(--mono);font-size:10.5px;color:var(--muted);display:block;margin-top:6px}
.filelist{margin-top:10px;display:flex;flex-direction:column;gap:6px}
.fileitem{display:flex;justify-content:space-between;align-items:center;font-family:var(--mono);font-size:11.5px;color:var(--steel);background:var(--panel-2);border:1px solid var(--line);border-radius:6px;padding:8px 11px}
.fileitem .rm{color:var(--muted);cursor:pointer}.fileitem .rm:hover{color:var(--ignite)}

/* radio/segmented (payment, shipping) */
.optcard{display:flex;gap:13px;align-items:flex-start;border:1px solid var(--line-2);border-radius:10px;padding:16px;cursor:pointer;transition:.2s;margin-bottom:12px}
.optcard:hover{border-color:var(--steel)}
.optcard.on{border-color:var(--cobalt);background:rgba(47,107,255,.06)}
.optcard input{margin-top:3px;accent-color:var(--cobalt);width:18px;height:18px;flex:none}
.optcard .ot{font-weight:600;font-size:14.5px}
.optcard .od{font-family:var(--mono);font-size:11px;color:var(--muted);margin-top:3px}
.optcard .op{margin-left:auto;font-family:var(--mono);font-weight:700;color:var(--ink);font-size:13px;white-space:nowrap}

/* ===== PANELS / SUMMARY / TABLES ===== */
.panel{background:linear-gradient(180deg,var(--panel-2),var(--panel));border:1px solid var(--line);border-radius:14px;padding:24px}
.summary{position:sticky;top:96px;background:linear-gradient(180deg,var(--panel-2),var(--panel));border:1px solid var(--line);border-radius:14px;padding:24px}
.summary h3{font-family:var(--display);font-size:22px;text-transform:uppercase;margin-bottom:18px}
.sumrow{display:flex;justify-content:space-between;align-items:baseline;font-size:13.5px;color:var(--steel);padding:9px 0;font-family:var(--mono)}
.sumrow.total{border-top:1px solid var(--line);margin-top:8px;padding-top:16px}
.sumrow.total .l{color:var(--ink);font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase}
.sumrow.total .v{font-family:var(--display);font-size:30px;color:#fff}
.sumrow .v{color:var(--ink);font-weight:700}
.coupon{display:flex;gap:8px;margin:14px 0}
.coupon input{flex:1;background:var(--void);border:1px solid var(--line-2);border-radius:7px;padding:11px 12px;color:var(--ink);font-family:var(--mono);font-size:12px;outline:none}
.coupon input:focus{border-color:var(--cobalt)}
.note-line{font-family:var(--mono);font-size:10.5px;color:var(--muted);line-height:1.5}
.trust-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.trust-row .t{display:flex;align-items:center;gap:7px;font-family:var(--mono);font-size:10.5px;color:var(--steel)}
.trust-row .t b{color:var(--cobalt)}

/* line items (cart/quote/order) */
.lineitem{display:grid;grid-template-columns:84px 1fr auto;gap:18px;padding:22px 0;border-bottom:1px solid var(--line);align-items:start}
.lineitem .lthumb{width:84px;height:84px;border-radius:10px;background:radial-gradient(circle at 50% 35%,#f6f8fb,#c9d0da);display:grid;place-items:center;overflow:hidden}
.lineitem .lthumb img{max-width:80%;max-height:80%;object-fit:contain}
.lineitem .lname{font-size:15px;font-weight:600;line-height:1.3}
.lineitem .lname:hover{color:var(--cobalt)}
.lineitem .lsku{font-family:var(--mono);font-size:10.5px;color:var(--muted);margin-top:4px}
.lineitem .lmeta{font-family:var(--mono);font-size:11px;color:var(--steel);margin-top:8px}
.lineitem .lacts{display:flex;gap:14px;margin-top:12px;font-family:var(--mono);font-size:10.5px}
.lineitem .lacts a,.lineitem .lacts button{color:var(--muted);transition:.2s}
.lineitem .lacts a:hover{color:#fff}.lineitem .lacts .del:hover{color:var(--ignite)}
.lineitem .lright{text-align:right}
.lineitem .lprice{font-family:var(--display);font-size:24px}
.lineitem .lunit{font-family:var(--mono);font-size:10px;color:var(--muted);margin-top:4px}

/* tabs */
.tabs{display:flex;gap:6px;border-bottom:1px solid var(--line);margin-bottom:28px;flex-wrap:wrap}
.tab{font-family:var(--mono);font-size:12px;letter-spacing:.04em;color:var(--steel);padding:13px 16px;border-bottom:2px solid transparent;transition:.2s}
.tab:hover{color:#fff}
.tab.on{color:#fff;border-bottom-color:var(--ignite)}

/* status chips */
.chipbadge{font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;padding:5px 9px;border-radius:6px;font-weight:700}
.chipbadge.ok{background:rgba(55,224,127,.14);color:var(--lime)}
.chipbadge.pend{background:rgba(255,176,32,.14);color:var(--amber)}
.chipbadge.info{background:rgba(47,107,255,.14);color:var(--cobalt)}

/* ===== FILTER RAIL (shop/category/search) ===== */
.shoplayout{display:grid;grid-template-columns:248px 1fr;gap:30px;align-items:start}
.filters{position:sticky;top:96px;background:linear-gradient(180deg,var(--panel-2),var(--panel));border:1px solid var(--line);border-radius:14px;padding:8px 18px 18px}
.fgroup{border-bottom:1px solid var(--line);padding:18px 0}
.fgroup:last-child{border-bottom:none}
.fgroup h4{font-family:var(--mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--cobalt);margin-bottom:13px}
.frow{display:flex;align-items:center;gap:10px;padding:6px 0;font-size:13px;color:var(--steel);cursor:pointer}
.frow input{width:16px;height:16px;accent-color:var(--cobalt);flex:none}
.frow .fn{margin-left:auto;font-family:var(--mono);font-size:10.5px;color:var(--muted)}
.frow:hover{color:#fff}
.pricerange{display:flex;gap:10px;align-items:center;margin-top:6px}
.pricerange input{width:100%;background:var(--void);border:1px solid var(--line-2);border-radius:6px;padding:9px 10px;color:var(--ink);font-family:var(--mono);font-size:12px;outline:none}
.pricerange input:focus{border-color:var(--cobalt)}
.shoptoolbar{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:20px}
.pcount{font-family:var(--mono);font-size:11.5px;color:var(--muted);letter-spacing:.05em}
.sortsel{font-family:var(--mono);font-size:11.5px;color:var(--steel);background:var(--void);border:1px solid var(--line-2);border-radius:6px;padding:9px 12px;outline:none}
.activefilters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}
.afchip{font-family:var(--mono);font-size:11px;color:var(--steel);background:var(--panel-2);border:1px solid var(--line-2);border-radius:6px;padding:7px 11px;display:inline-flex;gap:8px;align-items:center}
.afchip .x{cursor:pointer;color:var(--muted)}.afchip .x:hover{color:var(--ignite)}
.fmobile-toggle{display:none}

/* ===== CART DRAWER (mini-cart) ===== */
.s-overlay{position:fixed;inset:0;background:rgba(4,6,10,.6);backdrop-filter:blur(3px);opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s;z-index:150}
.s-overlay.open{opacity:1;visibility:visible}
.s-drawer{position:fixed;top:0;right:0;bottom:0;width:min(420px,92vw);background:var(--panel);border-left:1px solid var(--line-2);z-index:200;transform:translateX(100%);transition:transform .38s cubic-bezier(.3,.7,.2,1);display:flex;flex-direction:column}
.s-drawer.open{transform:none}
.s-dhead{display:flex;align-items:center;justify-content:space-between;padding:24px 24px 18px;border-bottom:1px solid var(--line)}
.s-dhead h3{font-family:var(--display);font-size:26px;text-transform:uppercase}
.s-dhead .x{font-size:24px;color:var(--steel);line-height:1;padding:4px}.s-dhead .x:hover{color:#fff}
.s-ditems{flex:1;overflow-y:auto;padding:8px 24px}
.s-ditem{display:grid;grid-template-columns:56px 1fr auto;gap:13px;padding:16px 0;border-bottom:1px solid var(--line);align-items:center}
.s-ditem .thumb{width:56px;height:56px;border-radius:8px;background:radial-gradient(circle at 50% 35%,#f6f8fb,#c9d0da);display:grid;place-items:center;overflow:hidden}
.s-ditem .thumb img{max-width:80%;max-height:80%;object-fit:contain}
.s-ditem .nm{display:block;font-size:12.5px;font-weight:600;line-height:1.3}.s-ditem .nm:hover{color:var(--cobalt)}
.s-ditem .sk{font-family:var(--mono);font-size:10px;color:var(--muted);margin-top:3px}
.s-ditem .qrow{display:inline-flex;align-items:center;border:1px solid var(--line-2);border-radius:6px;margin-top:8px}
.s-ditem .qrow button{width:24px;height:24px;color:var(--steel);font-family:var(--mono);font-size:14px}.s-ditem .qrow button:hover{color:#fff}
.s-ditem .qrow span{min-width:30px;text-align:center;font-family:var(--mono);font-size:11px}
.s-ditem .rt{text-align:right}.s-ditem .lp{font-family:var(--mono);font-size:13px;font-weight:700}
.s-ditem .rm{font-family:var(--mono);font-size:10px;color:var(--muted);margin-top:8px}.s-ditem .rm:hover{color:var(--ignite)}
.s-dempty{flex:1;display:grid;place-content:center;text-align:center;gap:8px;color:var(--muted);padding:40px}
.s-dempty .big{font-family:var(--display);font-size:40px;color:var(--line-2)}
.s-dfoot{border-top:1px solid var(--line);padding:20px 24px 26px}
.s-dfoot .drow{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px}
.s-dfoot .drow .l{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--steel)}
.s-dfoot .drow .sub{font-family:var(--display);font-size:30px}
.s-dfoot .dbtns{display:flex;flex-direction:column;gap:9px}

/* toast */
.s-toast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%) translateY(20px);background:var(--ink);color:#0a0a0a;font-family:var(--mono);font-size:12.5px;font-weight:700;padding:13px 20px;border-radius:8px;z-index:300;opacity:0;transition:opacity .25s,transform .25s;box-shadow:0 14px 40px rgba(0,0,0,.5);max-width:90vw}
.s-toast.show{opacity:1;transform:translateX(-50%) translateY(0)}

/* reveal */
.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1)}
.reveal.in{opacity:1;transform:none}
.reveal.d1{transition-delay:.07s}.reveal.d2{transition-delay:.14s}.reveal.d3{transition-delay:.21s}

/* empty state */
.emptybox{text-align:center;padding:70px 20px;border:1px dashed var(--line-2);border-radius:16px;color:var(--muted)}
.emptybox .ico{font-family:var(--display);font-size:54px;color:var(--line-2)}
.emptybox h3{font-family:var(--display);font-size:30px;color:var(--ink);text-transform:uppercase;margin:14px 0 8px}
.emptybox p{font-family:var(--mono);font-size:12.5px;margin-bottom:22px}

/* ===== RESPONSIVE ===== */
@media(max-width:1040px){
  .shoplayout{grid-template-columns:1fr}
  .filters{position:fixed;top:0;left:0;bottom:0;width:min(340px,88vw);border-radius:0;z-index:160;transform:translateX(-100%);transition:transform .35s;overflow-y:auto;padding-top:24px}
  .filters.open{transform:none}
  .fmobile-toggle{display:inline-flex}
}
@media(max-width:900px){
  .s-navlinks,.s-search{display:none}
  .s-burger{display:flex}
  .pgrid{grid-template-columns:repeat(2,1fr)}
  .s-footgrid{grid-template-columns:1fr 1fr}
  .field-row,.field-row-3{grid-template-columns:1fr}
  .summary{position:static}
  .checkout-grid{grid-template-columns:1fr!important}
  .cart-grid{grid-template-columns:1fr!important}
}
@media(max-width:560px){
  .wrap{padding:0 18px}
  .pgrid{grid-template-columns:repeat(2,1fr);gap:12px}
  .s-footgrid{grid-template-columns:1fr}
  .lineitem{grid-template-columns:64px 1fr;gap:14px}
  .lineitem .lright{grid-column:2;text-align:left;margin-top:8px}
}
@media(prefers-reduced-motion:reduce){
  .reveal{transition:none;opacity:1;transform:none}
  .disc::before{animation:none}
  html{scroll-behavior:auto}
}

/* ---- Live search popup (header) ---- */
.s-search{position:relative}
.s-livepanel{position:absolute;top:calc(100% + 10px);right:0;width:min(560px,calc(100vw - 32px));z-index:140;
  background:linear-gradient(180deg,var(--panel-2),var(--panel));border:1px solid var(--line-2);border-radius:14px;
  box-shadow:0 24px 70px -18px rgba(0,0,0,.75), 0 0 0 1px rgba(255,255,255,.02) inset;overflow:hidden}
.s-livepanel .slp-head{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;border-bottom:1px solid var(--line);
  font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.s-livepanel .slp-head kbd{font-family:var(--mono);font-size:9.5px;border:1px solid var(--line-2);border-radius:5px;padding:2px 6px;color:var(--steel)}
.slp-list{max-height:min(430px,60vh);overflow-y:auto}
.slr{display:flex;align-items:center;gap:12px;padding:10px 14px;cursor:pointer;border-bottom:1px solid var(--line);text-decoration:none}
.slr:last-child{border-bottom:none}
.slr:hover,.slr.on{background:rgba(255,90,31,.07)}
.slr.on{box-shadow:inset 3px 0 0 var(--ignite)}
.slr img{width:42px;height:42px;flex:none;object-fit:contain;border-radius:8px;padding:4px;background:radial-gradient(circle at 50% 35%,#f6f8fb,#c9d0da)}
.slr .m{flex:1;min-width:0}
.slr .nm{font-size:13px;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.slr .nm mark{background:none;color:var(--ignite);font-weight:700}
.slr .mt{font-family:var(--mono);font-size:10.5px;color:var(--muted);margin-top:2px;display:flex;gap:8px;align-items:center}
.slr .chip{font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--line-2);border-radius:20px;padding:1px 7px;color:var(--steel)}
.slr .chip.mac{color:var(--ignite);border-color:rgba(255,90,31,.4)}
.slr .pr{font-family:var(--mono);font-size:12.5px;font-weight:700;color:var(--ink);white-space:nowrap}
.slp-all{display:block;text-align:center;padding:11px;font-family:var(--mono);font-size:11.5px;font-weight:700;color:var(--ignite);
  border-top:1px solid var(--line);background:rgba(255,90,31,.05)}
.slp-all:hover,.slp-all.on{background:rgba(255,90,31,.12)}
.slp-empty{padding:22px 16px;text-align:center;color:var(--muted);font-size:12.5px;font-family:var(--mono)}
.slp-links{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line)}
.slp-links a{background:var(--panel);padding:13px 16px;font-size:12.5px;color:var(--steel);text-decoration:none}
.slp-links a:hover{color:var(--ignite);background:var(--panel-2)}
.slp-links a b{display:block;color:var(--ink);font-size:12.5px;margin-bottom:2px}
@media(max-width:900px){.s-livepanel{right:-60px}}

/* ===== ACCOUNT (header button + auth pages) ===== */
.s-avatar{width:22px;height:22px;border-radius:50%;object-fit:cover;flex:none}
.s-avi{width:22px;height:22px;border-radius:50%;background:var(--cobalt);color:#fff;font-size:11px;font-weight:700;display:grid;place-items:center;flex:none;font-family:var(--mono)}
.s-acctname{max-width:86px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.authwrap{max-width:460px;margin:0 auto;padding:34px 0 30px}
.authcard{background:linear-gradient(180deg,var(--panel-2),var(--panel));border:1px solid var(--line);border-radius:16px;padding:30px 28px;position:relative;overflow:hidden}
.authcard::before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--ignite),var(--cobalt))}
.authcard h1{font-family:var(--display);font-size:32px;text-transform:uppercase;letter-spacing:.025em;margin-bottom:6px}
.authsub{font-size:13.5px;color:var(--steel);line-height:1.6;margin-bottom:22px}
.authsub b{color:var(--ink)}
.autherr{font-family:var(--mono);font-size:11.5px;color:var(--err);background:rgba(255,90,77,.08);border:1px solid rgba(255,90,77,.35);border-radius:8px;padding:11px 13px;margin-bottom:16px;line-height:1.55}
.authok{font-family:var(--mono);font-size:11.5px;color:var(--lime);background:rgba(55,224,127,.07);border:1px solid rgba(55,224,127,.3);border-radius:8px;padding:11px 13px;margin-bottom:16px;line-height:1.55}
.authlinks{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:18px;font-family:var(--mono);font-size:11.5px}
.authlinks a,.authlinks button{color:var(--steel);transition:color .2s;font-family:var(--mono);font-size:11.5px}
.authlinks a:hover,.authlinks button:hover{color:var(--ignite)}
.codefield input{font-family:var(--mono);font-size:24px;letter-spacing:.5em;text-align:center;padding:14px 10px 14px 20px}
.authfoot{text-align:center;margin-top:22px;font-size:13px;color:var(--muted)}
.authfoot a{color:var(--cobalt);font-weight:600}
.authfoot a:hover{color:var(--ignite)}

/* account dashboard bits */
.acct-head{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin:14px 0 22px}
.acct-photo{width:64px;height:64px;border-radius:50%;object-fit:cover;border:2px solid var(--line-2);background:var(--panel-2)}
.acct-photo-ph{width:64px;height:64px;border-radius:50%;background:var(--cobalt);color:#fff;display:grid;place-items:center;font-family:var(--display);font-size:28px;border:2px solid var(--line-2)}
.kindchip{font-family:var(--mono);font-size:9px;letter-spacing:.1em;text-transform:uppercase;padding:3px 7px;border-radius:5px;border:1px solid var(--line-2);color:var(--steel)}
.kindchip.ship{color:var(--cobalt);border-color:rgba(47,107,255,.4)}
.kindchip.bill{color:var(--amber);border-color:rgba(255,176,32,.4)}
