/* BENQI Arcade · the October 2026 cartoon redesign (Figma "BENQI-Arcade", README + CHANGELOG pages).
   Loaded LAST on every page, so it restyles the existing markup without changing class names.
   To return to the original look, remove this file's <link> from the pages (or check out the `original-design` tag).

   Tokens come from the Figma README "Design language". Each game sets its own colour family on :root:
   --g (base) --g-l (light) --g-d (dark lip) --g-t (text on it). Iggy-Man = BENQI blue, FUD Invaders = Lending teal,
   Avalanche Crossing = AVAX red. */
:root{
  --benqi:#00b3ed; --benqi-l:#6fdcff; --benqi-d:#0083b0; --benqi-t:#00384f;
  --ignite:#fa6d3c; --ignite-l:#ffa07c; --ignite-d:#c4481d; --ignite-t:#5a1f0c;
  --teal:#4ccfce;   --teal-l:#9aeeed;   --teal-d:#2f8f8f;   --teal-t:#103b3b;
  --avax:#e84142;   --avax-l:#ff8a8b;   --avax-d:#ad2829;   --avax-t:#470d0e;
  --navyb:#2a4166;  --navyb-l:#3d5a85;  --navyb-d:#16263c;  --navyb-t:#cfe0f2;
  --frame:#11181c; --panel-a:#1f3352; --panel-b:#0d1726; --text:#cfe0f2; --dim:#7f93b5; --page:#03060d;
  --gold:#ffc83d; --silver:#d5dfec; --bronze:#f0955a;
  /* older variables still used by page styles */
  --blue:var(--benqi); --blue-soft:var(--benqi-l); --muted:var(--dim); --line:#1c2b44; --orange:var(--ignite); --orange-2:var(--ignite-l);
}
/* Default game colour (BENQI blue). :where() gives it zero priority, so a page's own :root colours always win. */
:where(:root){--g:var(--benqi); --g-l:var(--benqi-l); --g-d:var(--benqi-d); --g-t:var(--benqi-t)}
.pixel{font-family:'Press Start 2P',monospace;font-weight:400}
body{background:radial-gradient(ellipse at 50% 30%, #0c1a30 0%, var(--page) 70%)}

/* ---------- buttons: 49 px, gradient face, 6 px darker lip, top highlight, dark outline, soft drop shadow ---------- */
.btn,.btn2,.mode,#lbOpen,.screen .linkbtn[data-home],.backpill,.icon,.pad button,.tabs button,.modes2 button,.social{
  --f:var(--benqi); --f-l:var(--benqi-l); --f-d:var(--benqi-d); --f-t:var(--benqi-t);
  appearance:none;cursor:pointer;position:relative;border:3px solid var(--frame);color:var(--f-t);
  background:linear-gradient(180deg,var(--f-l) 0%,var(--f) 55%);
  box-shadow:inset 0 -6px 0 var(--f-d),inset 0 3px 0 rgba(255,255,255,.5),0 6px 0 rgba(26,26,26,.3);
  font:800 15px Montserrat,system-ui,sans-serif;letter-spacing:.04em;text-transform:uppercase;text-decoration:none;
  border-radius:12px;transition:transform .08s ease,filter .12s ease;-webkit-tap-highlight-color:transparent}
.btn:hover,.btn2:hover,.mode:hover,#lbOpen:hover,.backpill:hover,.icon:hover:not(:disabled),.social:hover{filter:brightness(1.07);color:var(--f-t)}
.btn:active,.btn2:active,.mode:active,#lbOpen:active,.backpill:active,.icon:active,.pad button.on,.social:active{
  transform:translateY(3px);box-shadow:inset 0 -3px 0 var(--f-d),inset 0 3px 0 rgba(255,255,255,.5),0 3px 0 rgba(26,26,26,.3)}
.btn{height:49px;padding:0 26px 4px}
.btn2{height:49px;padding:0 16px 4px;
  --f:var(--navyb); --f-l:var(--navyb-l); --f-d:var(--navyb-d); --f-t:var(--navyb-t);
  box-shadow:inset 0 -6px 0 var(--f-d),inset 0 3px 0 rgba(255,255,255,.15),0 6px 0 rgba(26,26,26,.3)}
.btn2.hot{--f:var(--ignite); --f-l:var(--ignite-l); --f-d:var(--ignite-d); --f-t:var(--ignite-t);
  box-shadow:inset 0 -6px 0 var(--f-d),inset 0 3px 0 rgba(255,255,255,.5),0 6px 0 rgba(26,26,26,.3)}
.btn.save{height:49px;padding:0 18px 4px;font-size:14px}
.linkbtn{color:var(--benqi-l)}
.linkbtn.inline{font-size:11px}

/* ---------- popup card: 4 px frame, radial navy body, title in a ribbon across the top edge ---------- */
/* Cards sit in the middle of the screen; the extra top padding keeps the ribbon visible when a tall card scrolls. */
.screen{background:rgba(3,6,13,.84);padding-top:46px}
.card{position:relative;max-width:460px;margin:auto;padding:44px 26px 20px;border:4px solid var(--frame);border-radius:18px;
  background:radial-gradient(ellipse at 50% 0%,var(--panel-a) 0%,var(--panel-b) 72%);box-shadow:0 10px 0 rgba(0,0,0,.35),0 0 50px rgba(0,179,237,.12)}
.card h1,#endTitle,#stTitle{position:absolute;top:-28px;left:-18px;right:-18px;height:52px;margin:0;display:block;text-align:center;overflow:hidden;
  font:400 20px/44px 'Press Start 2P',monospace !important;letter-spacing:.02em;color:#080819 !important;text-shadow:0 3px 0 rgba(255,255,255,.55);white-space:nowrap;
  border:4px solid var(--frame);border-radius:12px;background:linear-gradient(180deg,var(--benqi-l) 0%,var(--benqi) 60%);   /* ribbons are always BENQI blue */
  box-shadow:inset 0 -6px 0 var(--benqi-d),inset 0 3px 0 rgba(255,255,255,.55),0 6px 0 rgba(26,26,26,.3);padding-bottom:4px}
.card h1 em{color:inherit !important}
.card .logo svg{height:26px}
.tag{color:var(--benqi-l);font-weight:600}
.keys,.note{color:var(--dim)}
.row{gap:12px}

/* how-to rows, stat boxes, info boxes: dark rows (30 % black) */
.how li,.stats div,.box{background:rgba(0,0,0,.3);border:0;border-radius:10px}
.how li{color:var(--text)}
.stats span{color:var(--dim)}
.stats div{font-size:20px}

/* in-card banners (challenge, story "try it") */
.challenge{border:3px solid var(--frame);border-radius:12px;background:linear-gradient(180deg,rgba(250,109,60,.28),rgba(250,109,60,.14));color:#ffe0d2}
.challenge.won{background:linear-gradient(180deg,rgba(76,207,206,.3),rgba(76,207,206,.14));color:#d8fbfa}

/* ---------- game over: initials + SAVE SCORE as one group, X-handle box, button rows ---------- */
.lbsub{gap:10px}
#initials,.initials:not(.handle){width:96px;height:49px;font:400 18px 'Press Start 2P',monospace;letter-spacing:.12em;text-align:center;
  color:#fff;background:rgba(0,0,0,.35);border:3px solid var(--frame);border-radius:12px;padding:0 0 0 6px;text-transform:uppercase}
#initials::placeholder,.initials::placeholder{color:#5c6f8f}
#initials:focus,.initials:focus{border-color:var(--g);outline:none}
.handlebox{border:0;border-radius:12px;background:rgba(0,0,0,.3);padding:12px}
#xhandle,.initials.handle{height:44px;width:auto;flex:1;min-width:0;background:rgba(0,0,0,.35);border:3px solid var(--frame);border-radius:12px;
  color:#fff;font:600 14px Montserrat,sans-serif;letter-spacing:.01em;text-transform:none;text-align:left;padding:0 14px}
#handleBtn{height:44px;--f:var(--benqi); --f-l:var(--benqi-l); --f-d:var(--benqi-d); --f-t:var(--benqi-t);
  box-shadow:inset 0 -5px 0 var(--f-d),inset 0 3px 0 rgba(255,255,255,.5),0 5px 0 rgba(26,26,26,.3)}
.fine{color:var(--dim)}
.fine b{color:var(--text)}
.lbmsg{color:var(--benqi-l)}
/* Button rows: side-by-side buttons share one 394 px row with equal widths and 12 px gaps. */
.btnrow{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:12px;max-width:394px;margin:14px auto 0}
.btnrow > button{width:100%;padding-left:6px;padding-right:6px;font-size:14px;white-space:nowrap}
.btnrow.small > button{font-size:12px}
.btnrow.solo{grid-auto-columns:minmax(0,190px);justify-content:center}

/* ---------- leaderboards: rank colours (gold / silver / bronze), pixel initials ---------- */
.lb li{background:rgba(0,0,0,.3);border:0;border-radius:8px;align-items:center;padding:8px 12px}
.lb li span{font:400 11px 'Press Start 2P',monospace;color:var(--dim)}
.lb li b{font:400 12px 'Press Start 2P',monospace;letter-spacing:.06em;color:#fff}
.lb li em{font-weight:800;color:#fff}
.lb li:nth-child(1) span,.lb li:nth-child(1) b{color:var(--gold)}
.lb li:nth-child(2) span,.lb li:nth-child(2) b{color:var(--silver)}
.lb li:nth-child(3) span,.lb li:nth-child(3) b{color:var(--bronze)}
.lb li:nth-child(n+4) b,.lb li:nth-child(n+4) em{color:#9aabc6}
.lb li.me{box-shadow:inset 0 0 0 2px var(--ignite)}
.tabs button{height:34px;padding:0 14px 3px;font-size:11px;
  --f:var(--navyb); --f-l:var(--navyb-l); --f-d:var(--navyb-d); --f-t:var(--navyb-t);
  box-shadow:inset 0 -4px 0 var(--f-d),inset 0 2px 0 rgba(255,255,255,.15),0 4px 0 rgba(26,26,26,.3)}
.tabs button.on{--f:var(--g); --f-l:var(--g-l); --f-d:var(--g-d); --f-t:var(--g-t);
  box-shadow:inset 0 -4px 0 var(--f-d),inset 0 2px 0 rgba(255,255,255,.5),0 4px 0 rgba(26,26,26,.3)}

/* ---------- play screen: top bar, HUD, status pill, canvas frame, touch pads ---------- */
.backpill{height:34px;padding:0 12px 3px;font-size:11px;letter-spacing:.06em;border-radius:10px;
  --f:var(--navyb); --f-l:var(--navyb-l); --f-d:var(--navyb-d); --f-t:var(--navyb-t);
  box-shadow:inset 0 -4px 0 var(--f-d),inset 0 2px 0 rgba(255,255,255,.15),0 4px 0 rgba(26,26,26,.3)}
.icon{width:34px;height:34px;border-radius:10px;padding:0 0 3px;color:#fff;
  --f:var(--navyb); --f-l:var(--navyb-l); --f-d:var(--navyb-d); --f-t:#fff;
  box-shadow:inset 0 -4px 0 var(--f-d),inset 0 2px 0 rgba(255,255,255,.15),0 4px 0 rgba(26,26,26,.3)}
.icon:disabled{opacity:.4}
.topbar .ed,.brand .ed{color:var(--g);font-weight:800}
.hud span{color:var(--dim)}
.status,.loan,.bar{background:rgba(0,0,0,.3);border:0}
.status b,.loan b{color:var(--text)}
canvas.game,canvas#c{border:4px solid var(--frame);border-radius:16px;box-shadow:0 6px 0 rgba(0,0,0,.35)}
.pad button{height:52px;min-width:58px;border-radius:12px;color:#fff;
  --f:var(--navyb); --f-l:var(--navyb-l); --f-d:var(--navyb-d); --f-t:#fff;
  box-shadow:inset 0 -5px 0 var(--f-d),inset 0 2px 0 rgba(255,255,255,.15),0 5px 0 rgba(26,26,26,.3)}
.pad button.on{--f:var(--g); --f-l:var(--g-l); --f-d:var(--g-d); --f-t:var(--g-t)}
.pad .fire{--f:var(--avax); --f-l:var(--avax-l); --f-d:var(--avax-d); --f-t:#080819;color:#080819;font:400 13px 'Press Start 2P',monospace;letter-spacing:.04em}
.dpad{border:0;background:rgba(0,0,0,.25);border-radius:18px}
.dpad button{height:auto}

/* ---------- Iggy-Man intro: mode buttons, leaderboard + back buttons ---------- */
.mode{display:block;padding:10px 12px 14px;border-radius:14px;text-transform:none;height:auto}
.mode b{display:block;font:400 15px 'Press Start 2P',monospace;color:#080819;text-shadow:0 2px 0 rgba(255,255,255,.5)}
.mode span{display:block;margin-top:6px;font:700 11px Montserrat,sans-serif;color:inherit;opacity:1}
.mode.primary{--f:var(--benqi); --f-l:var(--benqi-l); --f-d:var(--benqi-d); --f-t:var(--benqi-t)}
.mode:not(.primary){--f:var(--ignite); --f-l:var(--ignite-l); --f-d:var(--ignite-d); --f-t:var(--ignite-t)}
.mode.primary span,.mode span{color:var(--f-t)}
#lbOpen{display:block;width:100%;max-width:394px;margin:16px auto 0;height:49px;padding:0 16px 4px;
  --f:var(--teal); --f-l:var(--teal-l); --f-d:var(--teal-d); --f-t:var(--teal-t)}
#playBtn{width:100%;max-width:394px}
.screen .linkbtn[data-home]{display:block;width:100%;max-width:394px;margin:14px auto 0;height:49px;padding:0 16px 4px;
  --f:var(--navyb); --f-l:var(--navyb-l); --f-d:var(--navyb-d); --f-t:var(--navyb-t);
  box-shadow:inset 0 -6px 0 var(--f-d),inset 0 3px 0 rgba(255,255,255,.15),0 6px 0 rgba(26,26,26,.3)}

@media (max-width:480px){
  .card{padding:40px 16px 18px}
  .card h1,#endTitle,#stTitle{left:-10px;right:-10px;font-size:13px !important;line-height:38px !important;height:46px}
  .btnrow{grid-auto-columns:auto}
  .btnrow > button{font-size:12px}
  .btnrow.small > button{font-size:10.5px}
}

/* ---------- lobby (hub): marquee, cabinet machines, top-5 panels, socials ---------- */
.marquee h1{font:400 46px 'Press Start 2P',monospace;letter-spacing:.04em;color:var(--benqi);margin-top:16px;
  text-shadow:3px 0 0 var(--frame),-3px 0 0 var(--frame),0 3px 0 var(--frame),0 -3px 0 var(--frame),3px 3px 0 var(--frame),-3px 3px 0 var(--frame),3px -3px 0 var(--frame),-3px -3px 0 var(--frame),0 8px 0 var(--benqi-d),0 10px 0 var(--frame)}
.marquee p{font:800 13px Montserrat,sans-serif;letter-spacing:.18em;color:#fff;margin-top:18px}
.cabinet{border:4px solid var(--frame);border-radius:18px 18px 14px 14px;padding:12px 12px 16px;
  background:linear-gradient(180deg,var(--g-l) 0%,var(--g) 14%);
  box-shadow:inset 0 -8px 0 var(--g-d),inset 0 4px 0 rgba(255,255,255,.35),0 8px 0 rgba(0,0,0,.4)}
.cab-name{font:900 14px Montserrat,sans-serif;letter-spacing:.06em;color:var(--g-t);text-shadow:none;min-height:44px;
  background:linear-gradient(180deg,#fff 0%,var(--g-l) 55%);border:3px solid var(--frame);border-radius:12px;box-shadow:inset 0 -4px 0 rgba(0,0,0,.12)}
.cab-screen{border:6px solid var(--frame);border-radius:12px;box-shadow:none}
.cab-deck{background:none;padding:10px 2px 0;justify-content:flex-start;gap:12px}
.stick{width:10px;height:20px;border-radius:3px;background:var(--frame);margin:0 6px 0 8px}
.stick::before{top:-14px;left:-7px;width:24px;height:24px;background:var(--g-l);border:3px solid var(--frame);box-sizing:border-box}
.dotbtn{width:22px;height:22px;background:var(--g-l);border:3px solid var(--frame);box-shadow:0 3px 0 rgba(0,0,0,.3)}
.dotbtn.b2{background:#fff;opacity:1}
.play{margin-left:auto;font:900 13px Montserrat,sans-serif;letter-spacing:.06em;color:var(--g-t);animation:none;
  background:linear-gradient(180deg,#fff,var(--g-l) 60%);border:3px solid var(--frame);border-radius:10px;padding:5px 14px 8px;box-shadow:inset 0 -4px 0 rgba(0,0,0,.15)}
.cab:hover .play{filter:brightness(1.08)}
.cab-desc{background:none;padding:12px 6px 2px;font-size:13px;font-weight:700;color:#fff;text-shadow:0 2px 6px #000}
.cab-top{background:rgba(9,15,28,.94);border:3px solid var(--frame);border-radius:14px;padding:12px 10px 10px}
.cab-top-h{font-size:9px;color:var(--g);margin-bottom:9px}
.cab-top-h:has(.modes2){display:flex;align-items:center;justify-content:space-between;text-align:left}
.cab-rows{gap:5px}
.cab-row{background:rgba(255,255,255,.05);border-radius:8px;padding:6px 8px;grid-template-columns:20px 1fr auto}
.cab-row .m{font:400 10px 'Press Start 2P',monospace;color:#9aabc6}
.cab-row b{color:#fff}
.cab-row em{font-weight:800;color:#fff}
.cab-row.r1 .m,.cab-row.r1 b{color:var(--gold)}
.cab-row.r2 .m,.cab-row.r2 b{color:var(--silver)}
.cab-row.r3 .m,.cab-row.r3 b{color:var(--bronze)}
.cab-row.r4 b,.cab-row.r5 b,.cab-row.r4 em,.cab-row.r5 em{color:#9aabc6}
.cab-row.open b,.cab-row.open em{color:#3d4e6e}
.cab-row.me{background:rgba(250,109,60,.16);box-shadow:inset 0 0 0 2px rgba(250,109,60,.6)}
.cab-dare{color:var(--ignite-l);margin-top:9px}
.modes2{margin-left:0}
.modes2 button{height:26px;padding:0 8px 3px;font:800 10px Montserrat,sans-serif;letter-spacing:.04em;border-width:2px;border-radius:8px;
  --f:var(--navyb); --f-l:var(--navyb-l); --f-d:var(--navyb-d); --f-t:var(--navyb-t);
  box-shadow:inset 0 -3px 0 var(--f-d),inset 0 2px 0 rgba(255,255,255,.15)}
.modes2 button.on{--f:var(--g); --f-l:var(--g-l); --f-d:var(--g-d); --f-t:var(--g-t);
  box-shadow:inset 0 -3px 0 var(--f-d),inset 0 2px 0 rgba(255,255,255,.5)}
.social{width:42px;height:42px;border-radius:50%;padding:0 0 3px;display:grid;place-items:center;color:#fff;
  --f:var(--navyb); --f-l:var(--navyb-l); --f-d:var(--navyb-d); --f-t:#fff;
  box-shadow:inset 0 -4px 0 var(--f-d),inset 0 2px 0 rgba(255,255,255,.15),0 4px 0 rgba(26,26,26,.3)}
.social:hover,.social:focus-visible{transform:translateY(-2px);border-color:var(--frame)}
@media (max-width:760px){ .marquee h1{font-size:30px} .marquee p{font-size:11px;letter-spacing:.1em} }

/* ---------- motion (Figma animation spec) ---------- */
.btn,.btn2,.mode,#lbOpen,.backpill,.icon,.pad button,.social{transition:transform .12s ease-out,box-shadow .12s ease-out,filter .12s ease}
.btn:active,.btn2:active,.mode:active,#lbOpen:active,.backpill:active,.icon:active{transition-duration:.08s}
/* Card pops in with a slight overshoot. Transform only (no opacity), so if animations are paused the card is still
   fully visible. */
.screen:not(.hidden) .card{animation:cardIn .22s cubic-bezier(.2,.9,.3,1.2)}
@keyframes cardIn{from{transform:scale(.96)}}
.cab:hover .cabinet,.cab:focus-within .cabinet{box-shadow:inset 0 -8px 0 var(--g-d),inset 0 4px 0 rgba(255,255,255,.35),0 8px 0 rgba(0,0,0,.4),0 0 32px var(--g)}
@media (prefers-reduced-motion:reduce){.screen:not(.hidden) .card{animation:none}}

/* ---------- save / handle messages: one colour per state (set by Arcade say()) ---------- */
.lbmsg[data-state=prompt]{color:var(--dim)}
.lbmsg[data-state=rank]{color:var(--gold)}
.lbmsg[data-state=saving]{color:#9aabc6}
.lbmsg[data-state=saved]{color:var(--teal)}
.lbmsg[data-state=error]{color:#ff6b6c}
.lbmsg b{color:#fff}

/* ---------- toast ("LINK COPIED!"): slide up 12 px + fade 150 ms, stay 1.5 s, fade out 200 ms ---------- */
.toast{position:fixed;left:50%;bottom:28px;z-index:60;pointer-events:none;height:40px;padding:0 18px 4px;display:flex;align-items:center;
  font:800 13px Montserrat,sans-serif;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;border:3px solid var(--frame);border-radius:12px;
  --f:var(--teal); --f-l:var(--teal-l); --f-d:var(--teal-d); --f-t:var(--teal-t); color:var(--f-t);
  background:linear-gradient(180deg,var(--f-l) 0%,var(--f) 55%);
  box-shadow:inset 0 -5px 0 var(--f-d),inset 0 3px 0 rgba(255,255,255,.5),0 5px 0 rgba(26,26,26,.3);
  opacity:0;transform:translate(-50%,12px);transition:opacity .2s ease,transform .2s ease}
.toast.err{--f:var(--avax); --f-l:var(--avax-l); --f-d:var(--avax-d); --f-t:var(--avax-t)}
.toast.show{opacity:1;transform:translate(-50%,0);transition:opacity .15s ease-out,transform .15s ease-out}

/* ---------- Iggy-Man leaderboard screen: full-width tabs, plain rows (Figma "Iggy-Man · Leaderboard") ---------- */
.tabs{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:14px 0 6px}
.tabs button{height:40px;font-size:12px}
#lbFull li span,#lbFull li b,#lbFull li em{color:#fff}
#lbFull li span{color:var(--dim)}

/* ---------- Story recap: "try it for real" as a teal button; stacked buttons share the widest width ---------- */
.btnstack{display:grid;gap:12px;width:max-content;min-width:220px;max-width:100%;margin:18px auto 0}
.btnstack > button{width:100%}
a.reallink{display:flex;align-items:center;justify-content:center;max-width:394px;min-height:49px;margin:12px auto;padding:4px 16px 8px;
  border:3px solid var(--frame);border-radius:12px;text-align:center;text-decoration:none;
  font:800 14px Montserrat,sans-serif;letter-spacing:.03em;
  --f:var(--teal); --f-l:var(--teal-l); --f-d:var(--teal-d); --f-t:var(--teal-t); color:var(--f-t);
  background:linear-gradient(180deg,var(--f-l) 0%,var(--f) 55%);
  box-shadow:inset 0 -6px 0 var(--f-d),inset 0 3px 0 rgba(255,255,255,.5),0 6px 0 rgba(26,26,26,.3)}
a.reallink:hover{filter:brightness(1.06)}
.dpad{background:none}

/* ---------- challenge banner: solid orange 3D bar ("CT scored 9,970. Can you beat it?"); teal once beaten ---------- */
.challenge{--f:var(--ignite); --f-l:var(--ignite-l); --f-d:var(--ignite-d); --f-t:var(--ignite-t);
  border:3px solid var(--frame);border-radius:12px;padding:9px 14px 13px;color:var(--f-t);font-weight:700;
  background:linear-gradient(180deg,var(--f-l) 0%,var(--f) 55%);
  box-shadow:inset 0 -5px 0 var(--f-d),inset 0 3px 0 rgba(255,255,255,.5),0 5px 0 rgba(26,26,26,.3)}
.challenge b{color:var(--f-t);font-weight:900}
.challenge.won{--f:var(--teal); --f-l:var(--teal-l); --f-d:var(--teal-d); --f-t:var(--teal-t);
  background:linear-gradient(180deg,var(--f-l) 0%,var(--f) 55%);color:var(--f-t)}

/* ---------- X handle box: says what the handle is for (being tagged as a top player) ---------- */
.handlehead{font:400 12px 'Press Start 2P',monospace;color:var(--benqi-l);letter-spacing:.02em;margin-bottom:6px}
.handlesub{font-size:12px;font-weight:600;line-height:1.45;color:var(--text);margin-bottom:10px}
.handlesub b{color:#fff}
