/* Kinetic v157 base tokens and global shell. Consolidated from kinetic-theme.css. */

:root{color-scheme:dark;}

/* Touch, rhythm, and anti-wonk baseline */
:where(input,select,textarea,button,.btn,summary){font:inherit;}
:where(input,select,textarea){min-height:44px;}
:where(button,.btn,summary){min-height:44px;}
:where(summary){cursor:pointer;}
:where(.field){align-self:stretch;}
:where(.field label){line-height:1.18;}
:where(.selector-grid,.advanced-grid,.fee-grid,.quick-grid,.grid,.rmd-grid,.ddd-grid,.receipt-grid,.metrics,.three-col,.two-col,.answer-grid){align-items:start;}
:where(.action,.action-panel,.btn-row){align-items:center;}
:where(.chart-shell,.visual-card,.graph-card,.projection-card,.line-projection-card,.mc-graph-card){overflow:hidden;}
:where(svg,canvas,img){max-width:100%;}
:where(input,select,textarea,.btn,button,a,summary):focus-visible{outline:3px solid rgba(91,182,232,.70);outline-offset:3px;}

.theme-toggle{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:40px;
  border-radius:999px;
  border:1px solid rgba(145,221,255,.28);
  padding:9px 13px;
  color:#f8fbff;
  background:rgba(2,12,22,.58);
  box-shadow:0 14px 28px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.06);
  font-size:12px;
  font-weight:950;
  letter-spacing:.10em;
  text-transform:uppercase;
  cursor:pointer;
  white-space:nowrap;
  z-index:50;
}
.theme-toggle:before{content:"";width:8px;height:8px;border-radius:999px;background:#f1b84d;box-shadow:0 0 0 4px rgba(241,184,77,.15);}
.theme-toggle.theme-toggle-fixed{position:fixed;right:18px;top:18px;}

@media (max-width:760px){
  :where(.wrap){padding-left:16px!important;padding-right:16px!important;}
  :where(.hero){padding:24px 20px!important;border-radius:24px!important;}
  :where(h1 .title-main){white-space:normal!important;}
  :where(.hero:before,.hero:after){opacity:.16!important;max-width:42%!important;}
  :where(.action,.action-panel){align-items:stretch!important;}
  :where(.btn-row){width:100%;display:grid!important;grid-template-columns:1fr 1fr;gap:10px;}
  :where(.btn-row .btn,.action .btn){width:100%;justify-content:center;}
  .theme-toggle.theme-toggle-fixed{top:auto;right:14px;bottom:14px;box-shadow:0 16px 34px rgba(0,0,0,.22);}
}
@media (max-width:480px){
  :where(.btn-row){grid-template-columns:1fr;}
  .theme-toggle{font-size:12.5px;padding:8px 11px;min-height:38px;}
}


.kinetic-mark,
.kinetic-home-mark{
  display:inline-block!important;
  flex:0 0 auto;
  background-color:transparent!important;
  background-image:url("kinetic-logo.png")!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  background-size:contain!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:hidden!important;
  line-height:0!important;
  font-size:0!important;
  color:transparent!important;
}
.kinetic-mark{width:44px!important;height:40px!important;}
.kinetic-home-mark{width:112px!important;height:101px!important;}
.kinetic-mark span,
.kinetic-home-mark span{display:none!important;}
.brand-row .kinetic-mark{margin-right:0!important;}
.logo-wrap .kinetic-home-mark{filter:drop-shadow(0 14px 28px rgba(0,0,0,.30));}
@media(max-width:560px){
  .kinetic-mark{width:36px!important;height:33px!important;}
  .kinetic-home-mark{width:92px!important;height:83px!important;}
}

/* Kinetic v118: use the real KA arrow logo as an actual image, not a CSS fallback K. */
.kinetic-mark-set,
.kinetic-home-mark-set{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 auto!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
  margin:0!important;
  overflow:visible!important;
  line-height:0!important;
}
.kinetic-mark-set{width:44px!important;height:40px!important;}
.kinetic-home-mark-set{width:124px!important;height:124px!important;}
.kinetic-mark-img,
.kinetic-home-mark-img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
  margin:0!important;
  filter:none!important;
}
@media(max-width:720px){
  .kinetic-mark-set{width:36px!important;height:33px!important;}
  .kinetic-home-mark-set{width:94px!important;height:94px!important;}
}


/* Kinetic v119: redesign pass.
   Direction: less AI-card farm, more advisor instrument board. Fewer pills, sharper panels,
   technical linework, lane-map suite, and result modules that read like gauges/ledgers. */
:root{
  --kc-ink:#f8fbff;
  --kc-muted:#a9bfd0;
  --kc-line:rgba(145,221,255,.24);
  --kc-line-strong:rgba(145,221,255,.42);
  --kc-blue:#2f8dcc;
  --kc-blue2:#5bb6e8;
  --kc-teal:#27b7c7;
  --kc-green:#6ecb90;
  --kc-amber:#f1b84d;
  --kc-red:#ef7b72;
  --kc-panel:#0a1d2e;
  --kc-panel2:#0e2a40;
  --kc-radius:16px;
  --kc-radius-sm:9px;
}

body.console-home,
body.console-suite,
body.console-tool{
  background:
    linear-gradient(rgba(145,221,255,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(145,221,255,.028) 1px, transparent 1px),
    radial-gradient(circle at 12% -12%,rgba(91,182,232,.14),transparent 32%),
    radial-gradient(circle at 88% -8%,rgba(47,141,204,.18),transparent 36%),
    linear-gradient(180deg,#06111d,#04101b 72%,#030b13)!important;
  background-size:40px 40px,40px 40px,auto,auto,auto!important;
}

/* Brand/header: instrument header, not pill stack. */
body.console-suite .brandbar,
body.console-tool .wrap > .suite-back-link + .hero,
body.console-tool .hero,
body.console-home .home,
body.console-suite .hero{
  isolation:isolate;
}
body.console-suite .brandbar,
body.console-tool .brand-row,
body.console-home .brand-row{
  position:relative!important;
}
body.console-tool .suite-back-link,
body.console-tool .back-link,
body.console-suite .pill,
body.console-tool .badge,
body.console-home .badge,
body.console-suite .badge{
  border-radius:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
  color:var(--kc-muted)!important;
  letter-spacing:.14em!important;
}
body.console-tool .badge::before,
body.console-suite .pill .dot,
body.console-home .badge::before{
  width:7px!important;
  height:7px!important;
  box-shadow:0 0 0 3px rgba(110,203,144,.13)!important;
}
body.console-tool .badge,
body.console-suite .pill{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  margin-top:10px!important;
}
body.console-tool .badge:after,
body.console-suite .pill:after{
  content:"";
}

/* Hero becomes a technical masthead. */
body.console-suite .hero,
body.console-tool .hero,
body.console-home .home{
  border-radius:18px!important;
  border:1px solid var(--kc-line)!important;
  border-left:4px solid var(--kc-blue2)!important;
  background:
    linear-gradient(90deg,rgba(91,182,232,.10),transparent 30%),
    linear-gradient(180deg,rgba(12,38,58,.96),rgba(6,21,34,.97))!important;
  box-shadow:0 22px 52px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.05)!important;
  overflow:hidden!important;
}
body.console-suite .hero:before,
body.console-tool .hero:before,
body.console-home .home:before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  background:
    linear-gradient(90deg,transparent 0,transparent calc(100% - 1px),rgba(145,221,255,.08) calc(100% - 1px)),
    linear-gradient(0deg,transparent 0,transparent calc(100% - 1px),rgba(145,221,255,.07) calc(100% - 1px))!important;
  background-size:44px 44px!important;
  opacity:.36!important;
  z-index:0!important;
}
body.console-suite .hero:after,
body.console-tool .hero:after,
body.console-home .home:after{
  content:""!important;
  position:absolute!important;
  right:28px!important;
  top:28px!important;
  width:min(34%,360px)!important;
  height:1px!important;
  max-width:none!important;
  border:0!important;
  border-radius:0!important;
  background:linear-gradient(90deg,rgba(91,182,232,0),rgba(91,182,232,.75),rgba(110,203,144,.45))!important;
  box-shadow:0 18px 0 rgba(91,182,232,.22),0 36px 0 rgba(91,182,232,.12)!important;
  opacity:1!important;
  animation:none!important;
  z-index:1!important;
}
body.console-tool .hero > *,
body.console-suite .hero > *,
body.console-home .home > *{position:relative;z-index:2;}
body.console-tool h1,
body.console-suite h1,
body.console-home h1{
  letter-spacing:-.045em!important;
  text-transform:none!important;
}
body.console-tool .hero h1::before,
body.console-suite .hero h1::before{
  content:"KINETIC TOOLKIT";
  display:block;
  margin:0 0 8px;
  color:var(--kc-blue2);
  font-size:12.5px;
  line-height:1;
  font-weight:950;
  letter-spacing:.18em;
  text-transform:uppercase;
}

/* Panels: fewer nested marshmallows, more structured instrumentation. */
body.console-tool :where(.card,.section,.input-box,.subsection,.tool-tutorial,.answer,.result,.visual-card,.chart-shell,.scenario,.notice,.receipt,.metric,.number-card,.big,.projection-card,.graph-card,.line-projection-card,.mc-card,.mc-panel,.mc-graph-card,.owner-box,.disclosure-card,.advanced,.fee-option-details),
body.console-suite :where(.lane-block,.tool-card),
body.console-home :where(.home,.enter-card){
  border-radius:var(--kc-radius)!important;
  border-color:var(--kc-line)!important;
  background:
    linear-gradient(180deg,rgba(14,42,64,.72),rgba(7,22,36,.86))!important;
  box-shadow:0 16px 38px rgba(0,0,0,.20), inset 0 1px 0 rgba(255,255,255,.045)!important;
}
body.console-tool .card,
body.console-tool .section,
body.console-tool .input-box,
body.console-tool .answer,
body.console-tool .visual-card{
  position:relative!important;
}
body.console-tool .card::before,
body.console-tool .section::before,
body.console-tool .input-box::before,
body.console-tool .answer::before,
body.console-tool .visual-card::before{
  content:"";
  position:absolute;
  left:-1px;
  top:14px;
  bottom:14px;
  width:2px;
  border-radius:2px;
  background:linear-gradient(180deg,var(--kc-blue2),rgba(39,183,199,.32));
  opacity:.82;
}
body.console-tool .card > *,
body.console-tool .section > *,
body.console-tool .input-box > *,
body.console-tool .answer > *,
body.console-tool .visual-card > *{position:relative;z-index:1;}

/* Section headers become numbered console rails. */
body.console-tool .section-head{
  align-items:center!important;
  gap:14px!important;
  border-bottom:1px solid var(--kc-line)!important;
  padding-bottom:12px!important;
}
body.console-tool .section-head .num,
body.console-tool .num,
body.console-tool .rail-num{
  width:auto!important;
  min-width:42px!important;
  height:auto!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:var(--kc-blue2)!important;
  font-size:16px!important;
  letter-spacing:.08em!important;
  justify-content:flex-start!important;
}
body.console-tool .section-head .num::after,
body.console-tool .num::after{content:" /";color:var(--kc-muted);margin-left:3px;}
body.console-tool .section-head h3,
body.console-tool .input-box h3,
body.console-tool .subsection-title,
body.console-tool summary{
  letter-spacing:.10em!important;
  text-transform:uppercase!important;
}
body.console-tool .section-head h3,
body.console-tool .input-box h3{font-size:13px!important;color:#f8fbff!important;}

/* Inputs: control-panel fields, less pillowy. */
body.console-tool :where(input,select,textarea){
  border-radius:8px!important;
  min-height:48px!important;
  border-color:var(--kc-line-strong)!important;
}
body.console-tool :where(label){
  color:#9ed7f5!important;
  letter-spacing:.09em!important;
}
body.console-tool :where(.help,.lede,.sub,.input-intro,.caption,.chart-note,.details-body,p){
  color:var(--kc-muted)!important;
}
body.console-tool :where(.btn,button:not(.theme-toggle)){
  border-radius:8px!important;
  letter-spacing:.04em!important;
  box-shadow:none!important;
}
body.console-tool :where(.btn.secondary,button.secondary){
  background:transparent!important;
  border-color:var(--kc-line-strong)!important;
}

/* Result modules: gauges, ledgers, strips. */
body.console-tool .answer{
  border-left:4px solid var(--kc-green)!important;
  background:
    linear-gradient(90deg,rgba(110,203,144,.12),transparent 28%),
    linear-gradient(180deg,rgba(12,38,58,.88),rgba(7,22,36,.94))!important;
}
body.console-tool .answer-title,
body.console-tool .big-number,
body.console-tool .threshold,
body.console-tool .main-number{
  font-variant-numeric:tabular-nums!important;
}
body.console-tool .metrics,
body.console-tool .answer-grid,
body.console-tool .benchmark-strip,
body.console-tool .receipt-grid{
  gap:10px!important;
}
body.console-tool .metric,
body.console-tool .benchmark-chip,
body.console-tool .roth-answer-metric,
body.console-tool .number-card{
  border-radius:10px!important;
  background:rgba(255,255,255,.035)!important;
  border-color:rgba(145,221,255,.16)!important;
}
body.tool-roth .answer .metrics::before{
  content:"";
  grid-column:1 / -1;
  display:block;
  height:7px;
  border-radius:0;
  margin:2px 0 3px;
  background:linear-gradient(90deg,var(--kc-green) 0%,var(--kc-green) 42%,var(--kc-amber) 42%,var(--kc-amber) 72%,var(--kc-red) 72%,var(--kc-red) 100%);
  opacity:.78;
}
body.tool-runway .answer .big,
body.tool-cash .answer .big,
body.tool-rmd .answer .big,
body.tool-upgrade .answer .big,
body.tool-allocation .answer .big{
  border-radius:10px!important;
}

/* Suite map: three planning lanes, connected by kinetic linework. */
body.console-suite .wrap{max-width:1200px!important;}
body.console-suite .lane-block{
  position:relative!important;
  padding:0 0 0 34px!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  margin-top:34px!important;
}
body.console-suite .lane-block::before{
  content:"";
  position:absolute;
  left:10px;
  top:4px;
  bottom:-30px;
  width:1px;
  background:linear-gradient(180deg,var(--kc-blue2),rgba(91,182,232,.16));
}
body.console-suite .lane-block:last-of-type::before{bottom:20px;}
body.console-suite .lane-block::after{
  content:"";
  position:absolute;
  left:4px;
  top:6px;
  width:13px;
  height:13px;
  border-radius:999px;
  background:var(--kc-blue2);
  box-shadow:0 0 0 5px rgba(91,182,232,.12);
}
body.console-suite .lane-head{
  border-bottom:1px solid var(--kc-line)!important;
  padding-bottom:12px!important;
  margin-bottom:14px!important;
}
body.console-suite .lane-head h2{
  font-size:18px!important;
  text-transform:uppercase!important;
  letter-spacing:.08em!important;
}
body.console-suite .lane-head h2::before{
  content:"LANE / ";
  color:var(--kc-blue2);
  font-size:.82em;
}
body.console-suite .tool-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:14px!important;
}
body.console-suite .tool-card{
  min-height:232px!important;
  border-radius:14px!important;
  padding:18px 18px 18px 20px!important;
  border-left:3px solid var(--kc-blue2)!important;
  display:grid!important;
  grid-template-columns:1fr 176px!important;
  grid-template-areas:"copy art" "question art" "cta art"!important;
  align-items:start!important;
  overflow:hidden!important;
  transform:none!important;
}
body.console-suite .tool-card:hover{
  transform:translateY(-2px)!important;
  border-color:var(--kc-line-strong)!important;
  border-left-color:var(--kc-green)!important;
}
body.console-suite .tool-card::after{
  top:auto!important;
  left:20px!important;
  right:20px!important;
  bottom:52px!important;
  background:linear-gradient(90deg,rgba(145,221,255,.18),rgba(145,221,255,0))!important;
}
body.console-suite .tool-art{grid-area:art!important;height:172px!important;margin:0!important;align-self:center!important;opacity:.96;}
body.console-suite .tool-card h2{grid-area:copy!important;min-height:0!important;font-size:26px!important;line-height:1.02!important;margin:0!important;}
body.console-suite .tool-card .question{grid-area:question!important;white-space:normal!important;margin:9px 0 18px!important;min-height:0!important;color:var(--kc-muted)!important;font-weight:800!important;}
body.console-suite .tool-card b{grid-area:cta!important;align-self:end!important;color:var(--kc-green)!important;}
body.console-suite .tool-card b::before{content:"OPEN / ";color:var(--kc-blue2);}
body.console-suite .footer{
  border-top:1px solid var(--kc-line)!important;
}

/* Home page: restrained entry console. */
body.console-home .home{border-left:4px solid var(--kc-blue2)!important;}
body.console-home .home h1::before{
  content:"KINETIC TOOLKIT";
  display:block;
  margin:0 0 10px;
  color:var(--kc-blue2);
  font-size:12.5px;
  font-weight:950;
  letter-spacing:.18em;
  text-transform:uppercase;
}

@media(max-width:900px){
  body.console-suite .tool-grid{grid-template-columns:1fr!important;}
  body.console-suite .tool-card{grid-template-columns:1fr 138px!important;min-height:202px!important;}
  body.console-suite .tool-art{height:132px!important;}
}
@media(max-width:640px){
  body.console-tool .badge:after,
body.console-suite .pill:after{
  content:"";
}
  body.console-suite .lane-block{padding-left:24px!important;margin-top:26px!important;}
  body.console-suite .tool-card{grid-template-columns:1fr!important;grid-template-areas:"art" "copy" "question" "cta"!important;}
  body.console-suite .tool-art{justify-content:flex-start!important;width:170px!important;}
  body.console-tool .hero:after,
  body.console-suite .hero:after,
  body.console-home .home:after{display:none!important;}
  body.console-tool .card::before,
  body.console-tool .section::before,
  body.console-tool .input-box::before,
  body.console-tool .answer::before,
  body.console-tool .visual-card::before{top:10px;bottom:10px;}
}

/* v120: design-system deepening pass — more proprietary, less generic SaaS. */
:root{
  --kc-grid:rgba(145,221,255,.055);
  --kc-grid-strong:rgba(145,221,255,.11);
  --kc-inkline:rgba(183,226,250,.22);
}

/* Make the overall surface feel more like an instrument board than a soft app shell. */
body.console-home,
body.console-suite,
body.console-tool{
  background-image:
    linear-gradient(var(--kc-grid) 1px, transparent 1px),
    linear-gradient(90deg,var(--kc-grid) 1px, transparent 1px),
    radial-gradient(circle at 12% -10%,rgba(91,182,232,.12),transparent 32%),
    radial-gradient(circle at 88% 0%,rgba(47,141,204,.17),transparent 36%),
    linear-gradient(180deg,#06111d,#050d17 74%,#040a12)!important;
  background-size:48px 48px,48px 48px,auto,auto,auto!important;
}

body.console-suite .hero,
body.console-tool .hero,
body.console-home .home{
  border-radius:18px!important;
  border-top:1px solid var(--kc-line-strong)!important;
  border-bottom:1px solid rgba(110,203,144,.24)!important;
  background-image:
    linear-gradient(135deg,rgba(255,255,255,.045),transparent 24%),
    repeating-linear-gradient(90deg,transparent 0 34px,rgba(145,221,255,.04) 34px 35px),
    linear-gradient(135deg,rgba(8,25,40,.98),rgba(9,40,63,.94) 60%,rgba(10,59,82,.92))!important;
}
body.console-suite .hero:before,
body.console-tool .hero:before,
body.console-home .home:before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:5px;
  background:linear-gradient(180deg,var(--kc-blue2),var(--kc-green));
  opacity:.92!important;
}
body.console-suite .hero h1,
body.console-tool .hero h1,
body.console-home .home h1{
  letter-spacing:-.075em!important;
}

/* Kill the generic pill dependency. Pills become small technical tags, not design crutches. */
body.console-suite :where(.pill,.badge),
body.console-tool :where(.pill,.badge,.back-link,.suite-back-link),
body.console-home :where(.pill,.badge){
  border-radius:4px!important;
  border:0!important;
  border-left:2px solid var(--kc-green)!important;
  padding:5px 8px 5px 9px!important;
  background:transparent!important;
  box-shadow:none!important;
  letter-spacing:.12em!important;
}
body.console-suite :where(.pill,.badge)::before,
body.console-tool :where(.pill,.badge,.back-link,.suite-back-link)::before,
body.console-home :where(.pill,.badge)::before{display:none!important;}

/* Suite page: planning map should read as a route, not a gallery. */
body.console-suite .hero:after{
  content:"TAX  →  INCOME  →  IMPLEMENTATION"!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:12.5px!important;
  font-weight:950!important;
  letter-spacing:.18em!important;
  color:rgba(255,255,255,.72)!important;
  border-radius:0!important;
  width:390px!important;
  height:48px!important;
  border:1px solid rgba(145,221,255,.22)!important;
  background:linear-gradient(90deg,rgba(91,182,232,.14),rgba(110,203,144,.08))!important;
}
body.console-suite .lane-block{
  padding-left:48px!important;
  margin-top:42px!important;
}
body.console-suite .lane-block::before{
  left:17px!important;
  width:2px!important;
  background:linear-gradient(180deg,var(--kc-blue2),rgba(110,203,144,.62),rgba(91,182,232,.12))!important;
}
body.console-suite .lane-block::after{
  left:7px!important;
  width:22px!important;
  height:22px!important;
  border-radius:4px!important;
  background:#06111d!important;
  border:1px solid var(--kc-line-strong)!important;
  box-shadow:0 0 0 5px rgba(91,182,232,.08)!important;
}
body.console-suite .lane-block:nth-of-type(1)::after{content:"01";}
body.console-suite .lane-block:nth-of-type(2)::after{content:"02";}
body.console-suite .lane-block:nth-of-type(3)::after{content:"03";}
body.console-suite .lane-block::after{
  display:flex!important;align-items:center!important;justify-content:center!important;
  color:var(--kc-green)!important;font-size:12.5px!important;font-weight:950!important;letter-spacing:.08em!important;
}
body.console-suite .lane-head{
  align-items:flex-start!important;
  border-bottom:1px solid var(--kc-inkline)!important;
  padding-bottom:14px!important;
}
body.console-suite .lane-head h2{font-size:20px!important;letter-spacing:.02em!important;}
body.console-suite .tool-card{
  border-radius:10px!important;
  min-height:176px!important;
  box-shadow:0 16px 34px rgba(0,0,0,.16)!important;
  background-image:
    linear-gradient(135deg,rgba(255,255,255,.035),transparent 30%),
    linear-gradient(180deg,rgba(13,35,54,.86),rgba(6,18,30,.92))!important;
}
body.console-suite .tool-card h2::before{
  display:block;
  margin:0 0 7px;
  color:var(--kc-blue2);
  font-size:12.5px;
  line-height:1;
  letter-spacing:.18em;
  text-transform:uppercase;
  font-weight:950;
}
body.console-suite .lane-block:nth-of-type(1) .tool-card:nth-child(1) h2::before{content:"TAX SCREEN / 01";}
body.console-suite .lane-block:nth-of-type(1) .tool-card:nth-child(2) h2::before{content:"DISTRIBUTION / 02";}
body.console-suite .lane-block:nth-of-type(2) .tool-card:nth-child(1) h2::before{content:"SEQUENCE / 03";}
body.console-suite .lane-block:nth-of-type(2) .tool-card:nth-child(2) h2::before{content:"LIQUIDITY / 04";}
body.console-suite .lane-block:nth-of-type(3) .tool-card:nth-child(1) h2::before{content:"CREDITING / 05";}
body.console-suite .lane-block:nth-of-type(3) .tool-card:nth-child(2) h2::before{content:"REPLACEMENT / 06";}
body.console-suite .tool-card b{border-top:1px solid var(--kc-inkline);padding-top:10px;width:100%;}

/* Tool pages: section headers become console stations. */
body.console-tool .card,
body.console-tool .section,
body.console-tool .input-box,
body.console-tool .visual-card,
body.console-tool .chart-shell,
body.console-tool .result,
body.console-tool .answer{
  border-radius:12px!important;
}
body.console-tool .card-head,
body.console-tool .section-head,
body.console-tool .subsection-head{
  border-bottom:1px solid var(--kc-inkline)!important;
  padding-bottom:12px!important;
}
body.console-tool .card-head h2,
body.console-tool .section-head h2,
body.console-tool .subsection-head h2,
body.console-tool .input-box h3{
  text-transform:none!important;
  letter-spacing:-.035em!important;
}
body.console-tool .card-head h2::before,
body.console-tool .section-head h2::before,
body.console-tool .input-box h3::before{
  content:"STATION / ";
  color:var(--kc-blue2);
  font-size:12.5px;
  letter-spacing:.16em;
  text-transform:uppercase;
  font-weight:950;
  vertical-align:middle;
}
body.console-tool .field{
  border-left:1px solid rgba(145,221,255,.10);
  padding-left:10px;
}
body.console-tool .field label{
  display:block!important;
  min-height:2.45em!important;
  color:#9bd4f2!important;
}
body.console-tool .help{max-width:38ch;}
body.console-tool .action,
body.console-tool .action-panel{
  border-radius:10px!important;
  border-left:4px solid var(--kc-blue2)!important;
}

/* Shared result language: readings, ledgers, gauges. */
body.console-tool #result,
body.console-tool .answer-grid{
  position:relative!important;
  overflow:hidden!important;
}
body.console-tool #result::before,
body.console-tool .answer-grid::before{
  content:"RESULT READING";
  position:absolute;
  top:12px;
  right:14px;
  color:rgba(174,220,255,.34);
  font-size:12.5px;
  font-weight:950;
  letter-spacing:.16em;
  text-transform:uppercase;
  pointer-events:none;
}
body.console-tool .big-number,
body.console-tool .threshold,
body.console-tool .metric b,
body.console-tool .roth-answer-metric b,
body.console-tool .number-card b{
  letter-spacing:-.045em!important;
}
body.console-tool .metric,
body.console-tool .score-card,
body.console-tool .receipt,
body.console-tool .roth-answer-metric,
body.console-tool .number-card,
body.console-tool .verdict-card{
  border-radius:8px!important;
  box-shadow:none!important;
}

/* Roth: make-sense threshold instrument. */
body.tool-roth #result.answer{border-left-color:var(--kc-blue2)!important;}
body.tool-roth #result.answer::before{content:"MAKE-SENSE THRESHOLD";}
body.tool-roth #result.answer .roth-answer-metrics{
  position:relative!important;
  padding-top:34px!important;
}
body.tool-roth #result.answer .roth-answer-metrics::before{
  content:"";
  position:absolute;
  left:0;right:0;top:3px;height:11px;
  border-radius:0;
  background:linear-gradient(90deg,var(--kc-green) 0 44%,var(--kc-amber) 44% 72%,var(--kc-red) 72% 100%);
  box-shadow:0 0 0 1px rgba(255,255,255,.06) inset;
}
body.tool-roth #result.answer .roth-answer-metrics::after{
  content:"LOW COST / REVIEW / TOO HIGH";
  position:absolute;
  left:0;right:0;top:18px;
  color:var(--kc-muted);
  font-size:12.5px;
  font-weight:950;
  letter-spacing:.15em;
  text-transform:uppercase;
  display:flex;
  justify-content:space-between;
}

/* RMD: required-withdrawal ticket. */
body.tool-rmd #result.answer{
  border-left-color:var(--kc-amber)!important;
  background-image:
    linear-gradient(90deg,rgba(241,184,77,.11),transparent 34%),
    linear-gradient(180deg,rgba(12,38,58,.88),rgba(7,22,36,.94))!important;
}
body.tool-rmd #result.answer::before{content:"RMD DISTRIBUTION TICKET";}
body.tool-rmd #result.answer::after{
  content:"";
  position:absolute;
  top:0;bottom:0;left:calc(100% - 158px);
  width:1px;
  background:repeating-linear-gradient(180deg,var(--kc-inkline) 0 6px,transparent 6px 12px);
  opacity:.8;
  pointer-events:none;
}

/* Retirement Runway: runway strip. */
body.tool-runway #result.answer{border-left-color:var(--kc-green)!important;}
body.tool-runway #result.answer::before{content:"RUNWAY STRIP";}
body.tool-runway #result.answer .metrics{position:relative!important;padding-top:28px!important;}
body.tool-runway #result.answer .metrics::before{
  content:"CURRENT PROTECTION  →  SUGGESTED RUNWAY  →  GAP";
  position:absolute;left:0;right:0;top:0;height:16px;
  color:var(--kc-muted);font-size:12.5px;font-weight:950;letter-spacing:.14em;text-transform:uppercase;
  border-bottom:1px solid var(--kc-inkline);
}
body.tool-runway #result.answer .metrics::after{
  content:"";position:absolute;left:0;right:0;top:19px;height:2px;
  background:linear-gradient(90deg,var(--kc-blue2),var(--kc-green),var(--kc-amber));opacity:.85;
}

/* Cash: stacked cash decision. */
body.tool-cash .answer-grid::before{content:"CASH STACK";}
body.tool-cash .answer-grid .three-col .metric{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:4px 14px!important;
  align-items:baseline!important;
  border-left:4px solid var(--kc-blue2)!important;
}
body.tool-cash .answer-grid .three-col .metric:nth-child(1){border-left-color:var(--kc-blue2)!important;}
body.tool-cash .answer-grid .three-col .metric:nth-child(2){border-left-color:var(--kc-green)!important;}
body.tool-cash .answer-grid .three-col .metric:nth-child(3){border-left-color:var(--kc-amber)!important;}
body.tool-cash .answer-grid .three-col .metric small{grid-column:1 / -1;}

/* Allocation selector: head-to-head lanes. */
body.tool-allocation #result.answer::before{content:"HEAD-TO-HEAD CREDITING LANES";}
body.tool-allocation #result.answer .metrics{position:relative!important;padding-top:34px!important;}
body.tool-allocation #result.answer .metrics::before{
  content:"CAP LANE";
  position:absolute;left:0;right:0;top:0;height:9px;
  border-top:2px solid var(--kc-blue2);border-bottom:2px solid var(--kc-green);
  color:var(--kc-muted);font-size:12.5px;font-weight:950;letter-spacing:.14em;text-transform:uppercase;
  padding-top:11px;
}
body.tool-allocation #result.answer .metrics::after{
  content:"PARTICIPATION LANE";
  position:absolute;right:0;top:20px;
  color:var(--kc-muted);font-size:12.5px;font-weight:950;letter-spacing:.14em;text-transform:uppercase;
}

/* Annuity Upgrade: replacement bridge. */
body.tool-upgrade #result.result::before{content:"REPLACEMENT BRIDGE";}
body.tool-upgrade #result.result .planning-score{
  position:relative!important;
  padding-top:30px!important;
}
body.tool-upgrade #result.result .planning-score::before{
  content:"OLD VALUE  →  SURRENDER  →  RECOVERY  →  PROJECTION";
  position:absolute;left:0;right:0;top:0;
  color:var(--kc-muted);font-size:12.5px;font-weight:950;letter-spacing:.14em;text-transform:uppercase;
  border-bottom:1px solid var(--kc-inkline);padding-bottom:7px;
}
body.tool-upgrade #result.result .planning-score::after{
  content:"";position:absolute;left:0;right:0;top:21px;height:2px;
  background:linear-gradient(90deg,var(--kc-blue2) 0 35%,var(--kc-amber) 35% 58%,var(--kc-green) 58% 100%);opacity:.85;
}

/* Charts: make them feel plotted, not pasted. */
body.console-tool .chart-shell,
body.console-tool .graph-card,
body.console-tool .visual-card{
  background-image:
    linear-gradient(var(--kc-grid) 1px,transparent 1px),
    linear-gradient(90deg,var(--kc-grid) 1px,transparent 1px),
    linear-gradient(180deg,rgba(255,255,255,.025),transparent)!important;
  background-size:28px 28px,28px 28px,auto!important;
}
body.console-tool .chart-kicker,
body.console-tool .kicker{
  color:var(--kc-blue2)!important;
  letter-spacing:.16em!important;
}

@media(max-width:900px){
  body.console-suite .hero:after{display:none!important;}
  body.console-suite .lane-block{padding-left:34px!important;}
  body.console-tool .field label{min-height:auto!important;}
}
@media(max-width:640px){
  body.console-suite .tool-card{min-height:0!important;}
  body.console-tool #result::before,
  body.console-tool .answer-grid::before{position:static!important;display:block!important;margin:0 0 10px;color:var(--kc-muted)!important;}
  body.tool-rmd #result.answer::after{display:none!important;}
  body.tool-roth #result.answer .roth-answer-metrics::after,
  body.tool-runway #result.answer .metrics::before,
  body.tool-allocation #result.answer .metrics::before,
  body.tool-allocation #result.answer .metrics::after,
  body.tool-upgrade #result.result .planning-score::before{font-size:12.5px!important;letter-spacing:.08em!important;}
}


/* v123: definitive header cleanup and suite icon scale override */
body.console-tool .hero h1::before,
body.console-suite .hero h1::before,
body.console-home .home h1::before{
  content:"KINETIC TOOLKIT"!important;
}
body.console-tool .badge::after,
body.console-suite .pill::after{
  content:""!important;
}
body.console-suite .tool-card{
  grid-template-columns:1fr 176px!important;
  min-height:232px!important;
}
body.console-suite .tool-art{
  height:172px!important;
  width:176px!important;
  max-width:176px!important;
}
body.console-suite .tool-art svg{
  width:100%!important;
  height:100%!important;
}
@media(max-width:900px){
  body.console-suite .tool-card{
    grid-template-columns:1fr 138px!important;
    min-height:202px!important;
  }
  body.console-suite .tool-art{
    height:132px!important;
    width:138px!important;
    max-width:138px!important;
  }
}
@media(max-width:640px){
  body.console-tool .badge::after,
  body.console-suite .pill::after{content:""!important;}
  body.console-suite .tool-card{
    grid-template-columns:1fr!important;
    grid-template-areas:"art" "copy" "question" "cta"!important;
  }
  body.console-suite .tool-art{
    height:150px!important;
    width:180px!important;
    max-width:180px!important;
  }
}


/* v123 icon visibility correction: actual SVG glyphs were padded inside their viewBox, so scale the glyphs, not only the container. */
body.console-suite .tool-art{
  overflow:visible!important;
}
body.console-suite .tool-art svg{
  transform:scale(1.65)!important;
  transform-origin:center center!important;
}
body.console-suite .tool-card:hover .tool-art svg{
  transform:scale(1.72) translateY(-2px)!important;
}
@media(max-width:900px){
  body.console-suite .tool-art svg{transform:scale(1.58)!important;}
  body.console-suite .tool-card:hover .tool-art svg{transform:scale(1.65) translateY(-2px)!important;}
}
@media(max-width:640px){
  body.console-suite .tool-art svg{transform:scale(1.5)!important;transform-origin:left center!important;}
}



/* v124 hard cleanup: visible top labels, cache-busted overrides, and larger suite icons. */

/* Kill old advisory-extension strings injected by any prior stylesheet. */
body.console-tool .badge::after,
body.console-suite .pill::after,
body .badge::after,
body .pill::after {
  content: "" !important;
}

/* The former visual-direction label must never render with the old name. */
body.console-tool .hero h1::before,
body.console-suite .hero h1::before,
body.console-home .home h1::before {
  content: "KINETIC TOOLKIT" !important;
}

/* Brand header uses the current suite name and suppresses older pseudo-content. */
.brand-copy span,
body.console-tool .brand-copy span,
body.console-suite .brand-copy span,
body.console-home .brand-copy span {
  font-size: 0 !important;
}
.brand-copy span::after,
body.console-tool .brand-copy span::after,
body.console-suite .brand-copy span::after,
body.console-home .brand-copy span::after {
  content: "ToolKit" !important;
  font-size:12.5px !important;
  display: block !important;
  margin-top: 0 !important;
  color: inherit !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
}

/* Older local tool styles used .brand-name::after. Force it to the current suite name. */
.brand-name::after,
.hero .brand-name::after,
.kinetic-hero .brand-name::after,
header.hero .brand-name::after,
section.hero .brand-name::after {
  content: "ToolKit" !important;
}

/* The suite top pill should stay terse. */
body.console-suite .pill {
  max-width: max-content !important;
}

/* Make suite icons obviously larger. Earlier changes resized containers but not the glyphs enough. */
body.console-suite .tool-card {
  grid-template-columns: minmax(0,1fr) 230px !important;
  min-height: 282px !important;
  padding: 24px 26px 24px 26px !important;
}
body.console-suite .tool-art {
  grid-area: art !important;
  width: 230px !important;
  max-width: 230px !important;
  height: 218px !important;
  min-height: 218px !important;
  margin: 0 !important;
  align-self: center !important;
  justify-self: end !important;
  overflow: visible !important;
  opacity: 1 !important;
}
body.console-suite .tool-art::before {
  width: 220px !important;
  height: 220px !important;
}
body.console-suite .tool-art svg {
  width: 100% !important;
  height: 100% !important;
  transform: scale(2.05) !important;
  transform-origin: center center !important;
  overflow: visible !important;
}
body.console-suite .tool-card:hover .tool-art svg {
  transform: scale(2.15) translateY(-2px) !important;
}

/* Keep text rhythm stable with the larger art. */
body.console-suite .tool-card h2 {
  font-size: 28px !important;
}
body.console-suite .tool-card .question {
  font-size: 15px !important;
  max-width: 38ch !important;
}

/* Suite disclosures are collapsed by default and substantial when opened. */
body.console-suite .footer-disclosures {
  display: block !important;
}
body.console-suite .footer-disclosures:not([open]) .footer-disclosure-body {
  display: none !important;
}

@media(max-width:1100px){
  body.console-suite .tool-card {
    grid-template-columns: minmax(0,1fr) 190px !important;
    min-height: 248px !important;
  }
  body.console-suite .tool-art {
    width: 190px !important;
    max-width: 190px !important;
    height: 184px !important;
    min-height: 184px !important;
  }
  body.console-suite .tool-art svg {
    transform: scale(1.86) !important;
  }
}
@media(max-width:900px){
  body.console-suite .tool-card {
    grid-template-columns: minmax(0,1fr) 165px !important;
    min-height: 220px !important;
  }
  body.console-suite .tool-art {
    width: 165px !important;
    max-width: 165px !important;
    height: 158px !important;
    min-height: 158px !important;
  }
  body.console-suite .tool-art svg {
    transform: scale(1.72) !important;
  }
}
@media(max-width:640px){
  body.console-tool .badge::after,
  body.console-suite .pill::after,
  body .badge::after,
  body .pill::after {
    content: "" !important;
  }
  body.console-suite .tool-card {
    grid-template-columns: 1fr !important;
    grid-template-areas: "art" "copy" "question" "cta" !important;
    min-height: 0 !important;
  }
  body.console-suite .tool-art {
    justify-self: start !important;
    width: 210px !important;
    max-width: 210px !important;
    height: 170px !important;
    min-height: 170px !important;
  }
  body.console-suite .tool-art svg {
    transform: scale(1.76) !important;
    transform-origin: left center !important;
  }
}
