/* Overnight r25 — polish for undeployed r24 UI. Every block tagged /* r25 #NNN */. Magenta/cyan/gold only; no green. */

/* r25 #733 a11y: nav token machine ≥48px tap */
.tok-machine{
  min-height:48px;min-width:88px;padding:6px 10px;touch-action:manipulation;
}

/* r25 #734 a11y: Book pack buy buttons ≥48px */
.bk-packs .bk-buy,.bk-card .bk-buy{
  min-height:48px;display:inline-flex;align-items:center;justify-content:center;
  padding:.75rem 1rem;width:100%;box-sizing:border-box;
}

/* r25 #735 a11y: coin-drop pack choices ≥48px tap */
.cd-pack{
  min-height:48px;min-width:44px;touch-action:manipulation;
  justify-content:center;box-sizing:border-box;
}

/* r25 #736 a11y: business CTA .biz-go stays ≥48px (reinforce r24 56) */
.biz-go,.biz-btn{
  min-height:48px!important;display:inline-flex!important;align-items:center!important;
  justify-content:center;touch-action:manipulation;
}

/* r25 #737 bk-badge readability: larger pad + tracking for seniors */
.bk-badge{
  font-size:.72rem!important;line-height:1.25!important;letter-spacing:.02em;
  padding:.5rem .7rem!important;border:2px solid #1b0a4a;
}

/* r25 #738 seniors: Book hero lead larger + airy line-height */
.bk-hero .lead{
  font-size:clamp(1.15rem,2.8vw,1.35rem)!important;line-height:1.65!important;
  max-width:42rem;
}

/* r25 #739 seniors: .bk-for best-for lines larger + contrast */
.bk-for{
  font-size:1.08rem!important;line-height:1.55!important;color:#f0ecff!important;
}

/* r25 #740 seniors: pack prices high contrast dark + light */
.bk-packs .bk-price,.bk-card .bk-price{
  font-size:clamp(1.7rem,4vw,2.15rem)!important;font-weight:900;color:#fff!important;
  text-shadow:0 1px 0 #1b0a4a;
}
html.light .bk-packs .bk-price,html.light .bk-card .bk-price{
  color:#a3006a!important;text-shadow:none!important;
}

/* r25 #741 Motion OFF / reduce-motion: freeze tok-machine bob/glow/drop */
html.calm .tok-machine::before,
html.calm .tok-machine svg,
html.calm .tok-scr{
  animation:none!important;transform:none!important;opacity:0!important;
}
html.calm .tok-scr{opacity:1!important;color:#ffd23f!important}
@media (prefers-reduced-motion:reduce){
  .tok-machine::before,.tok-machine svg,.tok-scr{animation:none!important;transform:none!important}
  .tok-machine::before{opacity:0!important}
  .tok-scr{opacity:1!important;color:#ffd23f!important}
}

/* r25 #742 Motion OFF: no hover lift on new r24 controls */
html.calm .tok-machine:hover svg,
html.calm .bk-card:hover,
html.calm .cd-pack:hover,
html.calm .biz-go:hover{
  transform:none!important;
}
@media (prefers-reduced-motion:reduce){
  .tok-machine:hover svg,.bk-card:hover,.cd-pack:hover,.biz-go:hover{transform:none!important}
}

/* r25 #743 light mode: Book pack cards cream + readable borders */
html.light .bk-packs .bk-card,html.light .bk-packs li.px-box{
  background:#ffffff!important;border-color:#c2007a!important;color:#1d1236!important;
  box-shadow:5px 5px 0 #f0b400!important;
}
html.light .bk-pop{
  border-color:#ffd23f!important;box-shadow:0 0 0 3px #ffd23f inset,6px 6px 0 #c2007a!important;
}

/* r25 #744 light mode: pack names + save lines */
html.light .bk-pn{color:#a3006a!important}
html.light .bk-save{color:#8a5a00!important}

/* r25 #745 light mode: Worry-free / promise box */
html.light .bk-promise{
  background:#ffffff!important;color:#1d1236!important;border-color:#ffd23f!important;
}
html.light .bk-promise h2{color:#a3006a!important}
html.light .bk-promise li,html.light .bk-promise a{color:#1d1236}
html.light .bk-promise a{color:#a3006a!important}

/* r25 #746 light mode: Book trust row */
html.light .bk-trust{color:#1d1236!important}
html.light .bk-trust li{color:#1d1236!important}

/* r25 #747 light mode: nav token machine screen + label readable */
html.light .tok-machine{
  background:#fff!important;border-color:#c2007a!important;box-shadow:3px 3px 0 #f0b400!important;
  color:#a3006a!important;
}
html.light .tok-scr{color:#a3006a!important;-webkit-text-fill-color:#a3006a!important}
html.light .tok-lbl{color:#1d1236!important}

/* r25 #748 light mode: bk-badge gold on cream with dark text */
html.light .bk-badge{
  background:#ffd23f!important;color:#1d1236!important;border-color:#c2007a!important;
}

/* r25 #749 focus-visible gold 3px on new r24 controls */
.tok-machine:focus-visible,
.bk-packs .bk-buy:focus-visible,
.bk-card .bk-buy:focus-visible,
.cd-pack:focus-visible,
.biz-go:focus-visible,
.biz-btn:focus-visible{
  outline:3px solid #ffd23f!important;outline-offset:3px!important;
  box-shadow:0 0 0 6px rgba(255,210,63,.28)!important;
}
html.light .tok-machine:focus-visible,
html.light .bk-packs .bk-buy:focus-visible,
html.light .cd-pack:focus-visible,
html.light .biz-go:focus-visible{
  outline:3px solid #ffd23f!important;outline-offset:3px!important;
}

/* r25 #750 print: hide tok-machine coin bit + coin-drop modal */
@media print{
  .tok-machine::before,.cd-modal,#cd-modal,.cd-box{display:none!important}
  .tok-machine{box-shadow:none!important;animation:none!important}
}

/* r25 #751 mobile ≤390: pack grid single column, airy gaps */
@media (max-width:390px){
  .bk-packs{grid-template-columns:1fr!important;gap:.85rem!important;padding:0 .15rem}
  .bk-hero .bk-packs{margin-left:0;margin-right:0}
}

/* r25 #752 mobile ≤390: no sideways overflow on packs / modal / trust */
@media (max-width:390px){
  .bk-packs,.bk-card,.bk-trust,.cd-box,.cd-packs,.bk-promise{max-width:100%;box-sizing:border-box}
  .bk-trust{flex-direction:column;gap:.45rem}
  body,html{overflow-x:hidden}
}

/* r25 #753 scroll-margin for Book anchors (sticky header) */
#buy,#cost,#bk-how-title,.bk-how,#faq,section#cost,section.bk-how,section[aria-labelledby="faq-title"]{
  scroll-margin-top:5.5rem;
}

/* r25 #754 light: What things cost menu cards readable */
html.light .bk-menu .bk-item,html.light .bk-card2{
  background:#ffffff!important;color:#1d1236!important;border-color:#c2007a!important;
}
html.light .bk-item h3{color:#a3006a!important}

/* r25 #755 no green: reinforce cyan/magenta/gold on new r24 UI */
.tok-machine,.bk-badge,.bk-pop,.cd-pack,.biz-go,.bk-promise{
  --ok:#22e6ff;--good:#22e6ff;
}
.bk-save,.bk-for em,.cd-pack em{color:#ffd23f!important}
html.light .cd-pack em{color:#8a5a00!important}

/* r25 #756 soft New here? style on Contact/Refer (text already present; no free-token promise) */
body[data-page="contact"] .acct-nudge,
body[data-page="refer"] .acct-nudge{
  margin-top:1rem!important;padding:.75rem 1rem;border-left:4px solid #ffd23f;
  background:rgba(255,210,63,.08);border-radius:0 10px 10px 0;font-size:1.12rem;line-height:1.5;
}
html.light body[data-page="contact"] .acct-nudge,
html.light body[data-page="refer"] .acct-nudge{
  background:rgba(255,210,63,.22)!important;border-left-color:#c2007a;
}

/* r25 #757 light: coin-drop pack choices full contrast */
html.light .cd-pack{
  border-color:#22e6ff!important;box-shadow:3px 3px 0 #f0b400;
}
html.light .cd-pack b{color:#1d1236!important}
html.light .cd-pack.on,html.light .cd-pack:hover,html.light .cd-pack:focus-visible{
  border-color:#c2007a!important;background:#f3ebff!important;
}

/* r25 #758 light: bk-for contrast (reinforce) */
html.light .bk-for{color:#3a2a5a!important;font-size:1.08rem!important}

/* r25 #759 desktop: equal-height pack cards, buy pinned bottom */
@media (min-width:901px){
  .bk-packs{align-items:stretch}
  .bk-packs .bk-card,.bk-packs li{height:100%;display:flex;flex-direction:column}
  .bk-packs .bk-buy{margin-top:auto}
}

/* r25 #760 tok-machine label never clips "+1 TOKEN" */
.tok-lbl{font-size:.65rem;letter-spacing:.02em;max-width:100%;overflow:hidden;text-overflow:ellipsis}

/* r25 #761 prefers-reduced-motion: absolute freeze of tokDrop/tokBob/tokGlow */
@media (prefers-reduced-motion:reduce){
  .tok-machine::before{animation:none!important;opacity:0!important;content:none!important}
  .tok-machine svg{animation:none!important}
  .tok-scr{animation:none!important}
}

/* r25 #762 print: also hide animated hero bits tied to token machine */
@media print{
  .nav-tok,.tok-machine{animation:none!important}
  .tok-scr{color:#000!important}
}

/* r25 #763 focus ring on Manage account + Settings near tok-machine (consistency) */
.nav-acct a:focus-visible,.statusbar .tb-set .tool-btn:focus-visible{
  outline:3px solid #ffd23f!important;outline-offset:2px!important;
}

/* r25 #764 seniors: trust row larger type */
.bk-trust{font-size:1.12rem!important;line-height:1.5;gap:.55rem 1.4rem}

/* r25 #765 light: status bar area around tok-machine stays readable */
html.light .nav-tok .tok-machine:hover,html.light .nav-tok .tok-machine:focus-visible{
  background:#f3ebff!important;
}

/* r25 #766 mobile ≤390: coin-drop packs stack 1 col */
@media (max-width:390px){
  .cd-packs{grid-template-columns:1fr!important;gap:.55rem}
  .cd-box{padding:1rem .85rem;width:min(100%,360px)}
}

/* r25 #767 bk-pop glow doesn't cause horizontal scroll */
.bk-pop,.bk-card{max-width:100%;box-sizing:border-box}
.bk-packs{overflow:visible;width:100%}

/* r25 #768 biz-go / biz-btn focus + hover without green */
.biz-go:hover,.biz-btn:hover{filter:brightness(1.05)}
html.calm .biz-go:hover,html.calm .biz-btn:hover{filter:none}

/* r25 #769 light: Book how-it-works steps readable */
html.light .bk-how,html.light .bk-card2,
html.light .bk-how .px-box,html.light .bk-how li{
  color:#1d1236!important;
}
html.light .bk-how h2,html.light .bk-how h3{color:#a3006a!important}

/* r25 #770 scroll-margin for FAQ + promise on Book */
.bk-promise,#faq-title,section[aria-labelledby="faq-title"] h2{
  scroll-margin-top:5.5rem;
}

/* r25 #771 calm: no scale/lift on pack cards */
html.calm .bk-pop:hover,html.calm .bk-card:hover,html.calm .bk-packs li:hover{
  transform:none!important;filter:none!important;
}

/* r25 #772 a11y: tok-machine keyboard focus never relies on cyan-only outline alone — gold + cyan */
.tok-machine:focus-visible{
  outline:3px solid #ffd23f!important;outline-offset:3px!important;
  border-color:#22e6ff!important;
}

/* r25 #773 seniors: Book "What things cost" rate line readable */
.bk-rate{font-size:clamp(1.15rem,2.5vw,1.35rem)!important;line-height:1.55!important}

/* r25 #774 light: bk-rate + cost section */
html.light .bk-rate,html.light #cost .lead{color:#1d1236!important}

/* r25 #775 mobile ≤390: page-head / bk-hero side padding so packs don't kiss edges */
@media (max-width:390px){
  .bk-hero .wrap,.page-head.bk-hero .wrap{padding-left:.85rem;padding-right:.85rem}
  .bk-card{padding:1rem .85rem!important}
}

/* r25 #776 print: hide live chat leftover with coin-drop */
@media print{
  #ka-live,.ka-nudge,.askq-back{display:none!important}
}

/* r25 #777 consistency: no mint/green utility on r24 surfaces */
.bk-packs .ok,.bk-packs .good,.cd-pack .ok,.tok-machine .ok{color:#22e6ff!important}
