:root{--bg:#070a0c;--panel:#0a0e11;--line:#2a3034;--line2:#242a2e;--text:#f2efe8;--muted:#aab0b5;--dim:#697078;--orange:#f2a007;--green:#80c33b;--red:#fa483a;--yellow:#f3cd3d;--cream:#f1ede4;--ink:#111416;--mono:'JetBrains Mono',monospace;--sans:'DM Sans',system-ui,sans-serif;--serif:'Libre Caslon Display',Georgia,serif}
*{box-sizing:border-box}html{background:var(--bg);scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);-webkit-font-smoothing:antialiased}.page-shell{width:100%;overflow:hidden}.instrument{padding:0 18px;background:var(--bg)}button,a{font:inherit}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.masthead{height:81px;display:flex;align-items:center;justify-content:space-between;padding:0 18px;border-bottom:1px solid var(--line)}.brand-lockup{display:flex;align-items:center;gap:13px;min-width:0}.brand-mark{position:relative;width:48px;height:38px;flex:0 0 48px}.brand-mark span{position:absolute;height:2px;background:var(--orange);border-radius:2px;transform-origin:left center}.pulse-a{width:16px;left:0;top:22px}.pulse-b{width:20px;left:14px;top:22px;transform:rotate(-72deg)}.pulse-c{width:17px;left:26px;top:3px;transform:rotate(76deg)}.pulse-d{width:9px;left:40px;top:20px}.brand-name{font-size:16px;font-weight:700;letter-spacing:.025em;line-height:1.05}.brand-tag{margin-top:4px;color:#92999f;font:600 9px/1.25 var(--mono);letter-spacing:.04em}.head-actions{display:flex;align-items:center;gap:25px}.source-state{font:600 9px var(--mono);letter-spacing:.08em;color:#d3cec5;white-space:nowrap}.method-top{height:40px;padding:0 17px;border:1px solid #8a8171;border-radius:4px;background:transparent;color:#f3eee5;font:700 10px var(--mono);letter-spacing:.045em;cursor:pointer}.method-top span{font-size:16px;margin-left:9px;vertical-align:-1px}
.tape{height:129px;border-bottom:1px solid var(--line);padding:0}.tape-track{height:100%;display:grid;grid-template-columns:repeat(11,minmax(0,1fr));overflow:hidden;border-left:1px solid var(--line2);border-radius:7px 7px 0 0}.metric{position:relative;min-width:0;padding:15px 14px 12px;border-right:1px solid var(--line2)}.metric:last-child{border-right:0}.metric-label{color:#c2c6c9;font:500 10px var(--sans);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.metric-value{font:700 21px/1 var(--mono);margin-top:14px;white-space:nowrap}.metric-delta{font:700 9px var(--mono);margin-top:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.metric-delta.up{color:var(--red)}.metric-delta.down{color:var(--green)}.metric-delta.positive{color:var(--green)}.metric-delta.neutral{color:#b6b2ac}.metric-date{font:600 8px var(--mono);color:#777e85;margin-top:11px}.metric-source{position:absolute;right:10px;top:16px;color:#666d73;font:600 7px var(--mono);letter-spacing:.03em}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);gap:44px;align-items:center;padding:35px 46px 24px;min-height:351px}.hero-copy h1{margin:0;letter-spacing:-.055em;line-height:.99}.hero-copy h1 span,.hero-copy h1 em{display:block}.hero-copy h1 span{font-size:clamp(46px,4vw,62px);font-weight:600}.hero-copy h1 em{font-family:var(--serif);font-weight:400;font-style:italic;color:#d4ccbf;font-size:clamp(45px,3.9vw,60px);letter-spacing:-.035em;margin-top:2px}.dek{max-width:610px;margin:17px 0 0;color:#b9bec2;font-size:14px;line-height:1.43}.trust-row{display:flex;align-items:center;margin-top:22px;gap:0}.trust{min-width:0;display:flex;align-items:center;gap:9px;padding:0 15px;border-left:1px solid #343a3e;background:none;color:var(--text);text-align:left}.trust:first-child{padding-left:0;border-left:0}.trust-icon{display:inline-flex;align-items:center;justify-content:center;width:27px;height:27px;color:var(--orange);font-size:22px;line-height:1}.trust b{display:block;font:700 8px var(--mono);letter-spacing:.025em;white-space:nowrap}.trust small{display:block;color:#9da3a8;font:500 8px var(--sans);margin-top:3px}.trust-button{border-top:0;border-right:0;border-bottom:0;cursor:pointer}.trust-button:hover b{color:var(--orange)}
.pressure-panel{position:relative;border-left:1px solid var(--line);padding:0 0 0 42px;min-width:0}.pressure-head{display:flex;align-items:center;gap:8px;color:#d0d2d4;font:600 10px var(--mono);letter-spacing:.06em}.info-dot{display:inline-flex;width:14px;height:14px;align-items:center;justify-content:center;border-radius:50%;background:#32383d;color:#9da4aa;font-size:8px}.pressure-value{font:700 clamp(90px,8.3vw,128px)/.88 var(--mono);letter-spacing:-.09em;margin:20px 0 12px;white-space:nowrap}.pressure-value small{font-size:.23em;color:#687079;letter-spacing:0;margin-left:7px}.pressure-status{font:700 19px var(--mono);color:var(--orange);letter-spacing:.035em}.pressure-compare{margin-top:5px;color:#f2eee7;font-size:14px;line-height:1.2}.pressure-scale-wrap{position:relative;margin-top:23px}.pressure-gradient{height:5px;background:linear-gradient(90deg,#69bb4c 0%,#d6de53 45%,#f2a311 67%,#f44838 100%);border-radius:4px}.pressure-marker{position:absolute;top:50%;left:50%;width:16px;height:16px;border-radius:50%;background:#f6f1e8;border:1px solid #d8d1c4;transform:translate(-50%,-50%);box-shadow:0 0 0 1px rgba(0,0,0,.3);transition:left .8s ease}.scale-ticks,.scale-words{display:flex;justify-content:space-between}.scale-ticks{margin-top:8px;color:#eee9df;font:600 9px var(--mono)}.scale-words{margin-top:12px;font:700 10px var(--mono);letter-spacing:.02em}.scale-words span:nth-child(1){color:#78bd4c}.scale-words span:nth-child(2){color:var(--orange)}.scale-words span:nth-child(3){color:var(--red)}.method{position:absolute;z-index:20;top:23px;left:42px;right:0;padding:16px;background:#101519;border:1px solid #3a4146;color:#c0c5c8;font-size:12px;line-height:1.55}.method p{margin:0}.method p+p{margin-top:8px}
.drivers{border-top:1px solid var(--line);padding:13px 44px 16px}.section-kicker{font:700 8px var(--mono);letter-spacing:.11em;color:#787f85}.driver-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:10px}.component{min-width:0;height:123px;padding:12px 15px 11px;border:1px solid #2d3439;border-radius:7px;background:linear-gradient(180deg,rgba(255,255,255,.008),rgba(255,255,255,.002))}.component-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.component-name{color:#e4e5e4;font:600 11px var(--mono);white-space:nowrap}.component-score{font:700 28px/1 var(--mono);margin-top:8px}.component-score small{font-size:10px;color:#737b82;margin-left:3px}.component-change{font:600 7px var(--mono);margin-top:4px;color:#9aa0a5}.component-change.better{color:var(--green)}.component-change.worse{color:var(--red)}.component-change.flat{color:#9aa0a5}.mini-track{height:5px;background:#2b3136;margin-top:12px;border-radius:4px;overflow:hidden}.mini-fill{height:100%;border-radius:4px;background:var(--green)}.component.moderate .mini-fill{background:var(--yellow)}.component.elevated .mini-fill{background:var(--orange)}.component.high .mini-fill{background:var(--red)}.component-band{font:700 9px var(--mono);margin-top:10px;letter-spacing:.02em}.component.low .component-band{color:var(--green)}.component.moderate .component-band{color:var(--yellow)}.component.elevated .component-band{color:var(--orange)}.component.high .component-band{color:var(--red)}
.household-dollar{margin:0 14px;background:var(--cream);color:var(--ink);border-radius:13px;padding:20px 37px 22px;display:grid;grid-template-columns:255px minmax(0,1fr);gap:28px;align-items:center;min-height:221px}.section-kicker.warm{color:#b66e11}.dollar-copy h2{font-size:30px;line-height:.98;letter-spacing:-.045em;margin:8px 0 10px}.dollar-copy p{font-size:11px;line-height:1.45;color:#25292b;margin:0;max-width:225px}.details-link{display:inline-block;margin-top:13px;color:#b45f0b;text-decoration:none;font:700 9px var(--mono);letter-spacing:.02em}.dollar-viz{min-width:0}.money-flow{display:grid;grid-template-columns:1.06fr 18px repeat(6,minmax(89px,1fr) 18px) 1.06fr;align-items:center;gap:0}.money-flow i{text-align:center;font-style:normal;font-weight:700;font-size:20px;color:#111}.money-card{height:114px;border-radius:8px;padding:11px 7px 10px;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;box-shadow:inset 0 0 0 1px rgba(255,255,255,.16),0 2px 5px rgba(0,0,0,.18)}.money-card span{font:700 9px/1.15 var(--mono);letter-spacing:.01em}.money-card strong{font:600 20px var(--mono);margin-top:12px}.money-card small{font:600 10px var(--mono);margin-top:7px;opacity:.95}.money-card.income{background:#284c19}.money-card.tax{background:#8d211c}.money-card.housing{background:#b24909}.money-card.food{background:#c88400}.money-card.transport{background:#205c60}.money-card.health{background:#19517f}.money-card.debt{background:#483064}.money-card.remaining{background:#49752d}.flow-brackets{height:26px;position:relative;margin-left:136px;margin-top:8px;font:700 10px var(--mono);color:#242729}.flow-brackets:before{content:"";position:absolute;left:0;right:197px;top:0;height:9px;border-left:1px solid #9a9993;border-right:1px solid #9a9993;border-bottom:1px solid #9a9993}.flow-brackets:after{content:"";position:absolute;right:0;width:167px;top:0;height:9px;border-left:1px solid #9a9993;border-right:1px solid #9a9993;border-bottom:1px solid #9a9993}.flow-brackets .essentials{position:absolute;left:43%;top:9px;transform:translateX(-50%)}.flow-brackets .remaining-label{position:absolute;right:24px;top:9px;color:#4f7e2e}
.source-strip{height:57px;padding:0 50px;display:grid;grid-template-columns:1fr 1.5fr .8fr;align-items:center;color:#7f858a;font-size:10px;background:var(--bg)}.source-links{display:flex;align-items:center;gap:12px;font:600 8px var(--mono);letter-spacing:.03em}.source-links a{color:inherit;text-decoration:none}.footer-note{text-align:center;color:#9aa0a4;font-size:11px}.footer-note button{padding:0;border:0;background:none;color:var(--orange);cursor:pointer}.copyright{text-align:right;color:#8b9094;font-size:11px}
@media(max-width:1280px){.hero-grid{padding-left:30px;padding-right:30px;gap:32px}.hero-copy h1 span{font-size:48px}.hero-copy h1 em{font-size:48px}.trust{padding:0 10px}.metric{padding-left:9px;padding-right:9px}.metric-label{font-size:8px}.metric-value{font-size:17px}.metric-delta{font-size:7px}.metric-source{display:none}.drivers{padding-left:30px;padding-right:30px}.household-dollar{grid-template-columns:220px minmax(0,1fr);padding-left:28px;padding-right:28px}.money-card{height:105px}.money-card strong{font-size:17px}.money-card span{font-size:8px}.money-flow{grid-template-columns:1.02fr 13px repeat(6,minmax(74px,1fr) 13px) 1.02fr}.flow-brackets{display:none}}
@media(max-width:900px){.instrument{padding:0 14px}.masthead{padding:0 4px;height:68px}.brand-tag{display:none}.source-state{display:none}.tape{height:104px;overflow-x:auto}.tape-track{display:flex;min-width:970px}.metric{width:120px;flex:0 0 120px}.hero-grid{grid-template-columns:1fr;padding:32px 8px}.hero-copy h1 span,.hero-copy h1 em{font-size:clamp(39px,9vw,55px)}.pressure-panel{border-left:0;border-top:1px solid var(--line);padding:25px 0 0}.method{left:0}.trust-row{flex-wrap:wrap;row-gap:15px}.drivers{padding:15px 8px 20px}.driver-grid{grid-template-columns:1fr 1fr}.household-dollar{grid-template-columns:1fr;margin:0 8px;padding:30px 22px}.dollar-copy p{max-width:430px}.money-flow{display:flex;overflow-x:auto;padding-bottom:8px}.money-card{min-width:112px}.money-flow i{min-width:24px}.source-strip{height:auto;min-height:70px;padding:18px 22px;grid-template-columns:1fr;gap:11px}.footer-note{text-align:left}.copyright{text-align:left}}
@media(max-width:560px){.brand-name{font-size:13px}.method-top{padding:0 10px;font-size:8px}.hero-copy h1 span,.hero-copy h1 em{font-size:39px}.dek{font-size:13px}.trust{width:50%;padding:7px 0;border-left:0}.driver-grid{grid-template-columns:1fr}.pressure-value{font-size:78px}.pressure-status{font-size:16px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* v4 — US brand, compact above-fold desktop composition */
.hero-scope{color:var(--orange);font:700 8px var(--mono);letter-spacing:.13em;margin:0 0 13px;text-transform:uppercase}
.powered{color:#b8bec2;text-decoration:none;white-space:nowrap}.powered:hover{color:var(--orange)}.power-sep{padding:0 6px;color:#555d63}
@media(min-width:901px){
  .masthead{height:64px;padding:0 18px}.brand-mark{width:42px;height:32px;flex-basis:42px}.brand-name{font-size:15px}.brand-tag{font-size:7.5px;margin-top:2px}.head-actions{gap:18px}.method-top{height:36px;padding:0 14px;font-size:9px}
  .tape{height:108px}.metric{padding:12px 10px 9px}.metric-label{font-size:9px}.metric-value{font-size:19px;margin-top:10px}.metric-delta{font-size:8px;margin-top:8px}.metric-date{font-size:7px;margin-top:8px}.metric-source{font-size:6px;top:13px;right:7px}
  .hero-grid{min-height:0;padding:24px 46px 18px;gap:40px}.hero-copy h1 span{font-size:clamp(42px,3.55vw,55px)}.hero-copy h1 em{font-size:clamp(42px,3.45vw,54px)}.dek{margin-top:13px;font-size:12.5px;line-height:1.38;max-width:600px}.trust-row{margin-top:16px}.trust-icon{width:23px;height:23px;font-size:19px}.trust b{font-size:7px}.trust small{font-size:7px;margin-top:2px}.trust{padding:0 12px;gap:7px}
  .pressure-panel{padding-left:38px}.pressure-value{font-size:clamp(82px,7.2vw,110px);margin:14px 0 8px}.pressure-status{font-size:17px}.pressure-compare{font-size:12px}.pressure-scale-wrap{margin-top:17px}.scale-words{margin-top:8px;font-size:8px}.scale-ticks{font-size:8px;margin-top:6px}
  .drivers{padding:10px 44px 12px}.driver-grid{margin-top:8px}.component{height:103px;padding:10px 14px 8px}.component-name{font-size:9px}.component-score{font-size:24px;margin-top:6px}.component-change{font-size:6px}.mini-track{margin-top:9px}.component-band{font-size:8px;margin-top:7px}
  .household-dollar{min-height:170px;margin:0 14px;padding:15px 34px 16px;grid-template-columns:240px minmax(0,1fr);gap:22px}.dollar-copy h2{font-size:27px;margin:6px 0 7px}.dollar-copy p{font-size:10px;line-height:1.35}.details-link{margin-top:8px;font-size:8px}.money-card{height:93px;padding:8px 6px}.money-card span{font-size:7.5px}.money-card strong{font-size:17px;margin-top:9px}.money-card small{font-size:8px;margin-top:5px}.money-flow{grid-template-columns:1.05fr 15px repeat(6,minmax(78px,1fr) 15px) 1.05fr}.money-flow i{font-size:17px}.flow-brackets{height:20px;margin-top:5px;font-size:8px}
  .source-strip{height:42px;padding:0 50px}.source-links{font-size:7px;gap:10px}.footer-note,.copyright{font-size:9px}
}
@media(min-width:901px) and (max-height:900px){
  .masthead{height:58px}.tape{height:96px}.hero-grid{padding-top:18px;padding-bottom:14px}.hero-copy h1 span{font-size:clamp(39px,3.2vw,49px)}.hero-copy h1 em{font-size:clamp(39px,3.1vw,48px)}.dek{font-size:11.5px}.hero-scope{margin-bottom:9px}.trust-row{margin-top:12px}.pressure-value{font-size:88px;margin-top:10px}.drivers{padding-top:8px;padding-bottom:10px}.component{height:92px}.household-dollar{min-height:154px;padding-top:12px;padding-bottom:12px}.money-card{height:82px}.source-strip{height:38px}
}

/* v5 — audited Household Dollar + five-dimension pressure hierarchy */
.hero-dollar{grid-template-columns:minmax(0,1.08fr) minmax(390px,.72fr)}
.dollar-hero{border-left:1px solid var(--line);padding-left:42px;align-self:stretch}
.dollar-main{font:700 clamp(86px,8.4vw,132px)/.82 var(--mono);letter-spacing:-.09em;margin:18px 0 9px}.dollar-main small{font-size:.35em;color:var(--orange);margin-left:8px}
.dollar-status{font:700 17px var(--mono);color:var(--green)}.dollar-sub{font-size:12px;color:#b9bec1;margin-top:5px}
.dollar-split{display:flex;height:10px;margin-top:22px;border-radius:10px;overflow:hidden;background:#22282c}.outlay-bar{background:#7c858b}.saving-bar{background:var(--green);min-width:3px}
.split-labels{display:flex;justify-content:space-between;gap:15px;margin-top:8px;font:700 8px var(--mono);color:#9ca3a8}.split-labels .save{color:var(--green)}.dollar-compare{font:600 9px var(--mono);color:#777f84;margin-top:15px}
.pressure-row{position:relative;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:0 44px;padding:12px 0;display:grid;grid-template-columns:minmax(390px,.9fr) minmax(300px,1.1fr);align-items:center;gap:35px}
.pressure-inline{display:flex;align-items:baseline;gap:9px;margin-top:6px;white-space:nowrap}.pressure-inline .pressure-label{font:700 10px var(--mono)}.pressure-inline strong{font:700 31px var(--mono)}.pressure-inline small{font:600 9px var(--mono);color:#717980;margin-left:-7px}.pressure-inline b{font:700 9px var(--mono);color:var(--orange);margin-left:7px}.pressure-inline>span:last-child{font-size:10px;color:#838a8f;margin-left:7px}
.pressure-mini-scale{position:relative}.pressure-mini-scale .pressure-gradient{height:6px}.pressure-mini-scale .pressure-marker{top:-4px;width:2px;height:14px}.pressure-mini-scale .scale-words{font-size:7px;margin-top:5px}.pressure-row .method{top:8px;left:auto;right:0;width:min(610px,100%)}
.audited-flow{grid-template-columns:280px minmax(0,1fr)}.audited-viz{display:grid;grid-template-columns:155px 35px minmax(230px,1.45fr) minmax(150px,.55fr);grid-template-rows:auto auto;gap:12px;align-items:stretch}
.origin-dollar,.destination{border-radius:9px;min-height:105px;padding:14px 16px;display:flex;flex-direction:column;justify-content:center}.origin-dollar{background:#294d1a;color:#fff}.origin-dollar span,.destination span{font:700 9px var(--mono)}.origin-dollar strong,.destination strong{font:700 27px var(--mono);margin-top:10px}.branch-arrow{display:flex;align-items:center;justify-content:center;font-size:25px;font-weight:700}.destination.outlays{background:#353b3e;color:#fff}.destination.saving{background:#4d7b30;color:#fff}.destination small{font-size:8px;line-height:1.3;margin-top:7px;opacity:.82}
.composition-note{grid-column:3/5;border-top:1px solid #b8b5ad;padding-top:8px;display:flex;gap:13px;align-items:flex-start;color:#494b4a}.composition-note b{font:700 8px var(--mono);white-space:nowrap}.composition-note span{font-size:9px;line-height:1.35}
@media(max-width:900px){.hero-dollar{grid-template-columns:1fr}.dollar-hero{border-left:0;border-top:1px solid var(--line);padding:25px 0 0}.pressure-row{margin:0 8px;grid-template-columns:1fr;gap:12px}.pressure-inline{flex-wrap:wrap;white-space:normal}.audited-flow{grid-template-columns:1fr}.audited-viz{grid-template-columns:1fr 28px 1.3fr .7fr}.composition-note{grid-column:1/5}}
@media(max-width:560px){.dollar-main{font-size:78px}.audited-viz{grid-template-columns:1fr 1fr}.branch-arrow{display:none}.origin-dollar{grid-column:1/3}.destination{min-height:95px}.composition-note{grid-column:1/3;display:block}.composition-note span{display:block;margin-top:6px}}


/* v6 — contextual information layer */
.info-btn{
  appearance:none;border:1px solid #626a70;background:transparent;color:#aeb5b9;
  width:16px;height:16px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;
  font:700 9px/1 var(--mono);padding:0;margin:0 0 0 4px;vertical-align:middle;cursor:help;
  position:relative;z-index:7;opacity:.82;
}
.info-btn:hover,.info-btn:focus-visible,.info-btn.is-open{border-color:var(--orange);color:var(--orange);opacity:1;outline:none}
.info-btn::after{
  content:attr(data-tip);position:absolute;left:50%;top:calc(100% + 9px);transform:translateX(-50%) translateY(-2px);
  width:min(230px,72vw);background:#171b1e;color:#eef0ed;border:1px solid #343b40;border-radius:7px;
  padding:10px 11px;font:500 10px/1.42 var(--sans);letter-spacing:0;text-transform:none;text-align:left;
  box-shadow:0 10px 28px rgba(0,0,0,.35);opacity:0;visibility:hidden;pointer-events:none;transition:.14s ease;
  white-space:normal;
}
.info-btn::before{
  content:"";position:absolute;left:50%;top:calc(100% + 4px);width:8px;height:8px;background:#171b1e;
  border-left:1px solid #343b40;border-top:1px solid #343b40;transform:translateX(-50%) rotate(45deg);
  opacity:0;visibility:hidden;transition:.14s ease;
}
@media (hover:hover) and (pointer:fine){
 .info-btn:hover::after,.info-btn:hover::before{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}
 .info-btn:hover::before{transform:translateX(-50%) rotate(45deg)}
}
.info-btn:focus-visible::after,.info-btn:focus-visible::before,.info-btn.is-open::after,.info-btn.is-open::before{opacity:1;visibility:visible}
.info-btn.is-open::after{transform:translateX(-50%) translateY(0)}
.metric:first-child .info-btn::after{left:0;transform:translateY(-2px)}
.metric:first-child .info-btn.is-open::after,.metric:first-child .info-btn:hover::after{transform:translateY(0)}
.metric:first-child .info-btn::before{left:8px}
.metric:nth-last-child(-n+2) .info-btn::after{left:auto;right:0;transform:translateY(-2px)}
.metric:nth-last-child(-n+2) .info-btn.is-open::after,.metric:nth-last-child(-n+2) .info-btn:hover::after{transform:translateY(0)}
.metric:nth-last-child(-n+2) .info-btn::before{left:auto;right:4px}
.metric-info{width:14px;height:14px;font-size:8px;margin-left:3px}
.section-kicker .info-btn{top:-1px}
.component-info,.weight-info{width:14px;height:14px;font-size:8px}
.weight-info::after{left:auto;right:0;transform:translateY(-2px)}
.weight-info.is-open::after,.weight-info:hover::after{transform:translateY(0)}
.weight-info::before{left:auto;right:4px}
.component-desc{font-size:9px;line-height:1.35;color:#8d9498;margin:7px 0 0;max-width:29ch}
.card-info{border-color:rgba(255,255,255,.5);color:#fff}
.light-tip::after{background:#202420;color:#fff}.light-tip::before{background:#202420}
.hero-copy h1 span{display:block}.hero-copy h1 em{display:block}
.dollar-hero .info-btn::after{left:auto;right:-8px;transform:translateY(-2px)}
.dollar-hero .info-btn.is-open::after,.dollar-hero .info-btn:hover::after{transform:translateY(0)}
.dollar-hero .info-btn::before{left:auto;right:1px}
@media(max-width:900px){
 .info-btn::after{position:fixed;left:16px!important;right:16px!important;top:auto;bottom:18px;width:auto;transform:none!important;font-size:12px;line-height:1.45;z-index:9999}
 .info-btn::before{display:none}
 .component-desc{font-size:11px;max-width:none}
}


/* v6.1 — robust logo mark */
.brand-mark{
  width:48px;
  min-width:48px;
  height:34px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:var(--orange);
  overflow:visible;
}
.brand-mark svg{
  display:block;
  width:48px;
  height:34px;
  overflow:visible;
}
.brand-mark > span{display:none!important;}
.brand-lockup{align-items:center;}


/* v6.2 — fix driver text overlap */
.drivers{
  padding-bottom:14px;
}
.driver-grid{
  align-items:stretch;
}
.component{
  min-height:124px;
  padding-bottom:14px;
  overflow:visible;
}
.component-top{
  margin-bottom:8px;
}
.mini-track{
  margin-top:7px;
}
.component-band{
  margin-top:7px;
}
.component-desc{
  position:static;
  margin:8px 0 0;
  padding:0;
  min-height:28px;
  line-height:1.35;
  overflow:visible;
}
.household-dollar{
  margin-top:0;
  position:relative;
  z-index:1;
}
@media(min-width:901px) and (max-height:900px){
  .component{min-height:112px;padding-bottom:12px}
  .component-desc{font-size:8px;min-height:22px;margin-top:6px}
  .drivers{padding-bottom:10px}
}
@media(max-width:900px){
  .component{min-height:auto}
  .component-desc{min-height:0}
}


/* v6.3 — keep driver descriptions comfortably inside card borders */
.component{
  padding-bottom:20px;
}
.component-desc{
  margin-top:9px;
  margin-bottom:0;
  padding-bottom:3px;
  line-height:1.45;
}
@media(min-width:901px) and (max-height:900px){
  .component{
    padding-bottom:17px;
  }
  .component-desc{
    padding-bottom:2px;
    line-height:1.4;
  }
}


/* v6.4 — definitive driver-card spacing fix */
.driver-grid{
  align-items:stretch;
}
.component{
  box-sizing:border-box;
  min-height:146px !important;
  height:auto !important;
  display:flex !important;
  flex-direction:column;
  padding:14px 14px 16px !important;
  overflow:hidden !important;
}
.component-top{
  flex:0 0 auto;
}
.component .mini-track{
  flex:0 0 auto;
}
.component-band{
  flex:0 0 auto;
}
.component-desc{
  position:static !important;
  display:block !important;
  flex:0 0 auto;
  min-height:32px !important;
  margin:9px 0 0 !important;
  padding:0 0 2px !important;
  font-size:9px !important;
  line-height:1.45 !important;
  overflow:visible !important;
}
.drivers{
  padding-bottom:18px !important;
}
@media(min-width:901px) and (max-height:900px){
  .component{
    min-height:136px !important;
    padding-bottom:15px !important;
  }
  .component-desc{
    min-height:27px !important;
    font-size:8px !important;
    line-height:1.4 !important;
  }
}
@media(max-width:900px){
  .component{
    min-height:132px !important;
  }
  .component-desc{
    min-height:0 !important;
    font-size:11px !important;
  }
}


/* v6.5 — global tooltip portal: fixes clipped top-row info buttons */
.info-btn::before,
.info-btn::after{
  display:none !important;
  content:none !important;
}
.global-info-tip{
  position:fixed;
  z-index:2147483647;
  width:max-content;
  min-width:170px;
  max-width:270px;
  box-sizing:border-box;
  padding:10px 12px;
  border:1px solid #3a4247;
  border-radius:7px;
  background:#171b1e;
  color:#eef0ed;
  box-shadow:0 12px 34px rgba(0,0,0,.55);
  font:500 11px/1.45 var(--sans);
  letter-spacing:0;
  text-transform:none;
  text-align:left;
  pointer-events:none;
}
.global-info-tip[hidden]{display:none!important;}
.info-btn.is-open{
  color:var(--orange)!important;
  border-color:var(--orange)!important;
  opacity:1!important;
}


/* v7 — product tabs + Fiscal Clock */
.product-tabs{display:flex;align-self:stretch;align-items:flex-end;gap:22px;margin-left:auto;margin-right:24px}
.product-tab{appearance:none;border:0;border-bottom:2px solid transparent;background:transparent;color:#777f84;padding:0 2px 18px;font:700 9px var(--mono);letter-spacing:.08em;cursor:pointer}
.product-tab:hover{color:#d8dbdc}.product-tab.is-active{color:var(--text);border-bottom-color:var(--orange)}
.product-view[hidden]{display:none!important}
.fiscal-shell{background:var(--bg);padding:0 44px 20px}
.fiscal-topline{display:grid;grid-template-columns:minmax(0,.9fr) minmax(520px,1.1fr);gap:56px;align-items:center;min-height:315px;border-bottom:1px solid var(--line);padding:30px 16px 24px}
.fiscal-title{margin:8px 0 0;font-size:clamp(52px,5vw,78px);line-height:.93;letter-spacing:-.055em;font-weight:600}
.fiscal-title em{font-family:var(--serif);font-weight:400;color:#d4ccbf}
.fiscal-dek{max-width:620px;color:#aeb4b8;font-size:14px;line-height:1.45;margin:18px 0 0}
.fiscal-hero{border-left:1px solid var(--line);padding-left:45px}
.fiscal-debt{font:700 clamp(72px,7.4vw,116px)/.9 var(--mono);letter-spacing:-.075em;margin-top:18px;white-space:nowrap}
.fiscal-debt-sub{font:600 9px var(--mono);color:#7e858a;margin-top:12px}
.fiscal-rate-row{display:grid;grid-template-columns:repeat(3,1fr);margin-top:22px;border-top:1px solid var(--line);padding-top:13px}
.fiscal-rate-row>div{padding:0 16px;border-left:1px solid var(--line)}.fiscal-rate-row>div:first-child{padding-left:0;border-left:0}
.fiscal-rate-row span{display:block;font:700 7px var(--mono);color:#727a80}.fiscal-rate-row strong{display:block;font:700 15px var(--mono);margin-top:6px}
.fiscal-stat-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;padding:16px 0}
.fiscal-stat{border:1px solid #30373b;border-radius:8px;min-width:0;padding:13px 13px 12px}
.fiscal-stat-label{font:700 8px var(--mono);color:#c8ccce;white-space:nowrap}.fiscal-stat strong{display:block;font:700 23px var(--mono);margin-top:10px}.fiscal-stat small{display:block;color:#727a80;font:600 7px var(--mono);margin-top:8px}
.fiscal-flow{background:var(--cream);color:var(--ink);border-radius:12px;padding:22px 30px;display:grid;grid-template-columns:270px minmax(0,1fr);gap:35px;margin-top:2px}
.fiscal-flow-copy h2,.fiscal-section-head h2,.fiscal-credit h2{font-size:34px;line-height:.98;letter-spacing:-.045em;margin:7px 0 10px}.fiscal-flow-copy p,.fiscal-section-head p,.fiscal-credit p{font-size:11px;line-height:1.45;color:#53575a;margin:0}
.fiscal-flow-viz{display:grid;grid-template-columns:1fr 28px 1fr 28px 1fr;gap:8px;align-items:center}
.fiscal-flow-card{min-height:110px;border-radius:9px;color:#fff;padding:14px 16px;display:flex;flex-direction:column;justify-content:center}.fiscal-flow-card span,.fiscal-interest-note span{font:700 8px var(--mono)}.fiscal-flow-card strong{font:700 25px var(--mono);margin-top:10px}.fiscal-flow-card small{font-size:9px;margin-top:6px;opacity:.82}.fiscal-flow-card.receipts{background:#315b21}.fiscal-flow-card.outlays{background:#374044}.fiscal-flow-card.deficit{background:#7b3227}.fiscal-arrow{text-align:center;font-size:24px;font-weight:700}.fiscal-interest-note{grid-column:3/6;border-top:1px solid #b6b1a8;padding-top:9px;display:flex;align-items:baseline;gap:12px}.fiscal-interest-note strong{font:700 18px var(--mono)}.fiscal-interest-note small{font-size:9px;color:#666}
.fiscal-secondary{padding:26px 16px 22px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:340px 1fr;gap:45px;align-items:end}.fiscal-section-head p{color:#8d9498}
.debt-comp-bar{height:24px;border-radius:6px;overflow:hidden;background:#20262a;display:flex}.public-part{background:#d2a53d}.intragov-part{background:#68747b}.debt-comp-labels{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:13px}.debt-comp-labels>div{border-left:1px solid var(--line);padding-left:13px}.debt-comp-labels span{font:700 8px var(--mono);color:#8a9297}.debt-comp-labels strong{display:block;font:700 25px var(--mono);margin-top:6px}.debt-comp-labels small{display:block;font:600 8px var(--mono);color:#727a80;margin-top:5px}
.fiscal-credit{display:grid;grid-template-columns:340px 1fr;gap:45px;padding:22px 16px 8px}.fiscal-credit p{color:#8d9498}.credit-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px}.credit-cards article{border:1px solid var(--line);border-radius:8px;padding:16px}.credit-cards span{font:700 8px var(--mono);color:#9ca3a8}.credit-cards strong{display:block;font:700 30px var(--mono);margin-top:10px}.credit-cards small{display:block;font:600 8px var(--mono);color:#717980;margin-top:8px}

@media(max-width:1100px){
 .product-tabs{order:3;width:100%;height:30px;align-items:flex-end;margin:0 0 0 61px}.masthead{height:auto;min-height:81px;flex-wrap:wrap;padding-top:10px}.product-tab{padding-bottom:7px}.fiscal-stat-grid{grid-template-columns:repeat(3,1fr)}.fiscal-topline{grid-template-columns:1fr}.fiscal-hero{border-left:0;border-top:1px solid var(--line);padding:24px 0 0}.fiscal-flow,.fiscal-secondary,.fiscal-credit{grid-template-columns:1fr}
}
@media(max-width:700px){
 .fiscal-shell{padding:0 12px 18px}.fiscal-topline{padding:24px 4px}.fiscal-title{font-size:48px}.fiscal-debt{font-size:58px}.fiscal-rate-row{grid-template-columns:1fr}.fiscal-rate-row>div{border-left:0;border-top:1px solid var(--line);padding:9px 0}.fiscal-rate-row>div:first-child{border-top:0}.fiscal-stat-grid{grid-template-columns:1fr 1fr}.fiscal-flow{padding:20px 18px}.fiscal-flow-viz{grid-template-columns:1fr}.fiscal-arrow{transform:rotate(90deg)}.fiscal-interest-note{grid-column:1}.debt-comp-labels{grid-template-columns:1fr}.credit-cards{grid-template-columns:1fr}.product-tabs{margin-left:0}
}


/* v8 — expanded curated Fiscal Clock */
.live-badge{display:inline-flex;align-items:center;gap:6px;color:var(--green);margin-right:10px}
.live-dot{width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 0 3px rgba(133,207,67,.12)}
.fiscal-tick-meta{display:flex;gap:18px;margin-top:8px;font:700 8px var(--mono);color:#717980}
.fiscal-tick-meta span:first-child{color:var(--green)}
.counter-groups{border-bottom:1px solid var(--line)}
.counter-group{padding:15px 0 0}.counter-group+.counter-group{border-top:1px solid var(--line);margin-top:2px}
.counter-group-head{display:flex;justify-content:space-between;align-items:center;padding:0 2px}.counter-group-head span{font:700 8px var(--mono);color:#c7cbcd;letter-spacing:.06em}.counter-group-head small{font:600 7px var(--mono);color:#626a6f}
.counter-group .fiscal-stat-grid{padding-top:10px}
.fiscal-stat.pace strong{font-size:20px}.fiscal-stat.pace small{color:#657077}
.expanded-credit{grid-template-columns:repeat(3,1fr)}
.expanded-credit article{min-height:86px}
.fiscal-disclaimer{margin:18px 16px 0;border-top:1px solid var(--line);padding:14px 0 0;display:flex;gap:18px;align-items:baseline}
.fiscal-disclaimer p{margin:0;color:#777f84;font-size:9px;line-height:1.45;max-width:900px}
@media(max-width:1000px){.expanded-credit{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){
 .fiscal-tick-meta{flex-wrap:wrap}
 .expanded-credit{grid-template-columns:1fr}
 .counter-group-head{align-items:flex-start;gap:8px}.counter-group-head small{text-align:right}
 .fiscal-disclaimer{display:block}.fiscal-disclaimer p{margin-top:7px;font-size:10px}
 .fiscal-debt{font-size:52px;letter-spacing:-.06em}
}
@media(prefers-reduced-motion:reduce){.live-dot{box-shadow:none}}

/* v9 — broadcast-grade fiscal clock + directional tape */
.metric{position:relative}.metric-delta{margin-top:7px;min-height:11px;font:700 7px var(--mono)}.delta.good{color:#8bd43f}.delta.bad{color:#ff5946}.delta.neutral{color:#8b9398}.metric-date{margin-top:7px}
.broadcast-fiscal{padding-top:0}.broadcast-hero{grid-template-columns:minmax(420px,.78fr) minmax(650px,1.22fr);min-height:370px}.broadcast-title{font-size:clamp(62px,5.8vw,96px);line-height:.86;text-transform:uppercase;letter-spacing:-.065em}.broadcast-intro{padding-right:25px}.broadcast-trust{display:flex;gap:22px;margin-top:24px;font:700 7px var(--mono);color:#a2a8ac}.broadcast-trust span:first-child{color:var(--green)}.broadcast-counter{padding-left:46px}.broadcast-counter .fiscal-debt{font-size:clamp(58px,5.9vw,96px);letter-spacing:-.055em;font-variant-numeric:tabular-nums;white-space:nowrap}.per-second-hero{display:flex;align-items:baseline;gap:15px;margin-top:15px}.per-second-hero strong{font:700 17px var(--mono);color:var(--green)}.per-second-hero span{font:700 7px var(--mono);color:#7b8388}.broadcast-live-stats{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:22px}.broadcast-live-stats>div{padding:13px 16px;border-left:1px solid var(--line)}.broadcast-live-stats>div:first-child{border-left:0;padding-left:0}.broadcast-live-stats strong{display:block;font:700 19px var(--mono)}.broadcast-live-stats span{display:block;margin-top:5px;font:700 7px/1.35 var(--mono);color:#7c8489}.broadcast-counter .fiscal-debt-sub{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.debt-gdp-inline{margin-left:auto;color:#737b80}.debt-gdp-inline b{color:#d7dadb}
.fiscal-panel{border:1px solid #30383c;border-radius:10px;margin-top:8px;overflow:hidden}.panel-head{height:38px;display:flex;align-items:center;justify-content:space-between;padding:0 15px;border-bottom:1px solid #2a3135;font:700 8px var(--mono);letter-spacing:.04em}.panel-head small{color:#6f777c;font:600 7px var(--mono)}
.balance-equation{padding:0}.equation-row{display:grid;grid-template-columns:1fr 50px 1fr 50px 1fr;align-items:stretch;margin:0 12px 12px;border:1px solid #344047;border-radius:7px;overflow:hidden}.equation-metric{padding:20px 24px;background:linear-gradient(90deg,rgba(72,126,42,.16),rgba(72,126,42,.03))}.equation-metric span{font:700 8px var(--mono);color:#b8bdc0}.equation-metric strong{display:block;font:700 31px var(--mono);margin-top:11px}.equation-metric small{display:block;font:700 8px var(--mono);color:var(--green);margin-top:8px}.equation-sign{display:grid;place-items:center;font:700 31px var(--sans);background:#0d1113}.equation-total{background:linear-gradient(90deg,rgba(238,170,30,.16),rgba(238,170,30,.06));border-left:1px solid #9b6e0b}.equation-total small{color:var(--orange)}
.cash-clock{padding-bottom:12px}.cash-clock-row{display:grid;grid-template-columns:1fr 50px 1fr 50px 1fr;align-items:center;padding:18px 24px 12px}.cash-instrument{position:relative;padding-left:52px;min-width:0}.cash-instrument:before{content:'↓';position:absolute;left:0;top:13px;width:35px;height:35px;border:1px solid currentColor;border-radius:50%;display:grid;place-items:center;font:20px var(--sans)}.cash-instrument.out:before{content:'↑'}.cash-instrument.gap:before{content:'='}.cash-instrument.in{color:var(--green)}.cash-instrument.out,.cash-instrument.gap{color:#ff5946}.cash-instrument>span{display:block;font:700 8px var(--mono)}.cash-instrument strong{display:inline-block;margin-top:8px;color:#f0efeb;font:700 30px var(--mono)}.cash-instrument>b{margin-left:5px;color:#9ba1a5;font:500 10px var(--mono)}.cash-instrument small{display:block;color:#b8bdc0;font:700 8px var(--mono);margin-top:8px}.cash-instrument small i{font-style:normal;color:#f0efeb}.cash-instrument em{display:block;font:700 8px var(--mono);font-style:normal;margin-top:7px}.cash-arrow{text-align:center;font-size:24px}.interest-ribbon{margin:0 12px;border:1px solid #293034;border-radius:7px;padding:11px 18px;display:flex;align-items:center;gap:32px;font:700 8px var(--mono)}.interest-ribbon strong{font-size:17px}.interest-ribbon span:not(:first-child){color:#aab0b3}
.spending-composition{padding-bottom:12px}.spending-layout{display:grid;grid-template-columns:220px 1fr 270px;gap:18px;align-items:center;padding:16px}.spending-donut{--interest-pct:14%;width:175px;aspect-ratio:1;border-radius:50%;background:conic-gradient(#e6ad36 0 var(--interest-pct),#344147 var(--interest-pct) 100%);display:grid;place-items:center;margin:auto;position:relative}.spending-donut:after{content:'';position:absolute;width:62%;height:62%;border-radius:50%;background:#090d0f}.spending-donut>div{position:relative;z-index:1;text-align:center}.spending-donut strong{display:block;font:700 22px var(--mono)}.spending-donut span{font:700 7px var(--mono);color:#9ca3a7}.spending-list{display:grid;grid-template-columns:1fr;gap:8px}.spend-item{display:grid;grid-template-columns:1fr auto 55px;gap:12px;align-items:center;border-bottom:1px solid #242b2f;padding:8px}.spend-item span{font:700 9px var(--mono)}.spend-item strong{font:700 17px var(--mono)}.spend-item small{text-align:right;color:#9aa1a5;font:700 8px var(--mono)}.spend-item.interest span{color:#e6ad36}.interest-share-card{border:1px solid #2e363a;border-radius:7px;padding:16px;min-height:150px}.interest-share-card>span{font:700 8px var(--mono)}.interest-share-card>strong{display:block;font:700 36px var(--mono);margin-top:22px}.interest-share-card small{font:700 7px var(--mono);color:#71797e}.trend-line{height:35px;margin:10px 0;position:relative;overflow:hidden}.trend-line:before{content:'';position:absolute;inset:55% 0 auto;height:1px;background:#293237}.trend-line i{display:block;width:100%;height:100%;border-bottom:2px solid #64a4c8;transform:skewY(-9deg) translateY(-8px)}
.holders-panel{margin-top:8px;padding:20px 16px}.household-clock{margin-top:8px;padding:20px 16px}.household-clock .expanded-credit{grid-template-columns:repeat(3,1fr)}
@media(max-width:1200px){.broadcast-hero{grid-template-columns:1fr}.broadcast-counter{padding-left:0;border-left:0;border-top:1px solid var(--line);padding-top:25px}.spending-layout{grid-template-columns:190px 1fr}.interest-share-card{grid-column:1/-1}.household-clock .expanded-credit{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.broadcast-title{font-size:52px}.broadcast-trust{flex-wrap:wrap}.broadcast-counter .fiscal-debt{font-size:39px;letter-spacing:-.04em}.broadcast-live-stats{grid-template-columns:1fr}.broadcast-live-stats>div{border-left:0;border-top:1px solid var(--line);padding-left:0}.equation-row,.cash-clock-row{grid-template-columns:1fr}.equation-sign,.cash-arrow{height:38px}.cash-clock-row{padding:12px}.cash-instrument{padding:12px 0 12px 48px}.interest-ribbon{flex-wrap:wrap;gap:12px}.spending-layout{grid-template-columns:1fr}.household-clock .expanded-credit{grid-template-columns:1fr}.panel-head{height:auto;min-height:38px;gap:10px;padding:9px 12px}.panel-head small{text-align:right}.metric-delta{font-size:8px}}
.broadcast-ticker{display:none;overflow:hidden;border-bottom:1px solid #2b3236;background:#0d1113;height:26px;align-items:center}.broadcast-ticker-track{white-space:nowrap;font:700 8px var(--mono);color:#b7bdc0;letter-spacing:.04em;will-change:transform;animation:fiscalCrawl 34s linear infinite}.broadcast-ticker-track b{color:var(--green);font-weight:700}.broadcast-ticker-track i{color:#ff5946;font-style:normal}.broadcast-ticker-track em{color:var(--orange);font-style:normal}.broadcast-ticker-track span{margin:0 22px;color:#586167}body[data-view="fiscal"] .broadcast-ticker{display:flex}@keyframes fiscalCrawl{from{transform:translateX(100vw)}to{transform:translateX(-100%)}}@media(prefers-reduced-motion:reduce){.broadcast-ticker-track{animation:none;transform:none}}


/* v10 — structural rebuild + approved broadcast reference */
.global-header{
  background:var(--bg);
  padding:0 18px;
}
.global-tape-wrap{position:relative}
.household-instrument{padding:0 18px;background:var(--bg)}
.product-view[hidden]{display:none!important}

/* Keep the public economic tape visible in BOTH views. */
.tape{margin:0;height:121px}
body[data-view="fiscal"] .tape{display:block}
body[data-view="household"] .broadcast-ticker{display:none}
body[data-view="fiscal"] .broadcast-ticker{display:flex}

/* Fiscal hero: match approved composition. */
.broadcast-fiscal{
  padding:18px 18px 24px;
  max-width:none;
}
.broadcast-hero{
  display:grid!important;
  grid-template-columns:minmax(360px,.76fr) minmax(0,1.24fr)!important;
  gap:34px!important;
  min-height:328px!important;
  padding:28px 14px 25px!important;
  align-items:stretch!important;
  border-bottom:0!important;
}
.broadcast-intro{
  min-width:0;
  padding:5px 30px 0 0!important;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.broadcast-title{
  font-size:clamp(58px,5.05vw,82px)!important;
  line-height:.84!important;
  letter-spacing:-.065em!important;
  margin:14px 0 18px!important;
}
.broadcast-intro .fiscal-dek{
  max-width:540px;
  margin:0!important;
  color:#aeb4b8;
  font-size:13px;
  line-height:1.55;
}
.broadcast-trust{margin-top:22px!important}

.broadcast-counter{
  min-width:0!important;
  overflow:hidden!important;
  padding:15px 0 10px 40px!important;
  border-left:1px solid var(--line)!important;
  border-top:0!important;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.broadcast-counter .pressure-head{flex:0 0 auto}
.broadcast-counter .fiscal-debt{
  display:block;
  width:100%;
  min-width:0;
  max-width:100%;
  overflow:hidden;
  white-space:nowrap;
  font-size:clamp(43px,4.15vw,67px)!important;
  line-height:.98!important;
  letter-spacing:-.052em!important;
  margin:16px 0 0!important;
  font-variant-numeric:tabular-nums;
}
.per-second-hero{margin-top:12px!important}
.per-second-hero strong{font-size:15px!important}
.broadcast-live-stats{margin-top:18px!important}
.broadcast-live-stats strong{font-size:17px!important}
.broadcast-counter .fiscal-debt-sub{
  margin-top:13px!important;
  font-size:8px!important;
}

/* Full-width panels modeled on the approved reference. */
.fiscal-panel{
  margin:7px 0 0!important;
  border:1px solid #30373b!important;
  border-radius:9px!important;
  background:#080c0e!important;
  overflow:hidden;
}
.panel-head{
  min-height:37px!important;
  padding:9px 15px!important;
}
.balance-equation .equation-row{
  min-height:115px;
  margin:0 12px 12px!important;
}
.equation-metric{
  padding:19px 22px!important;
}
.equation-metric strong{font-size:27px!important}
.cash-clock-row{
  min-height:124px;
  padding:17px 28px 12px!important;
}
.cash-instrument strong{font-size:29px!important}
.interest-ribbon{margin:0 12px 12px!important}

/* Spending section: calm and information-dense, not a cream duplicate. */
.spending-layout{
  padding:17px 18px 16px!important;
  grid-template-columns:180px minmax(0,1fr) 245px!important;
  gap:22px!important;
}
.spending-donut{
  width:150px!important;
  height:150px!important;
}
.interest-share-card{min-height:150px!important}

/* Debt composition should read as a relationship, not generic cards. */
.holders-panel{
  display:grid!important;
  grid-template-columns:300px minmax(0,1fr)!important;
  gap:32px!important;
  padding:20px 24px!important;
  align-items:center!important;
}
.holders-panel .fiscal-section-head{display:block!important}
.holders-panel .fiscal-section-head h2{font-size:30px!important;margin:7px 0 9px!important}
.holders-panel .debt-composition{min-width:0}
.debt-comp-bar{height:22px!important}

/* Household debt section: compact, broadcast-style row. */
.household-clock{
  display:grid!important;
  grid-template-columns:300px minmax(0,1fr)!important;
  gap:32px!important;
  padding:20px 24px!important;
  align-items:start!important;
}
.household-clock .expanded-credit{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:8px!important;
}
.household-clock .credit-cards article{
  min-height:90px!important;
  padding:13px!important;
}
.household-clock .credit-cards strong{font-size:22px!important}

/* Crawl is subtle, persistent and broadcast-like. */
.broadcast-ticker{
  height:28px!important;
  margin:0;
  border-top:0;
  border-bottom:1px solid var(--line);
  background:#0a0e10!important;
}
.broadcast-ticker-track{
  font-size:8px!important;
  animation-duration:42s!important;
}

/* Footer stays compact. */
body[data-view="fiscal"] .source-strip{margin-top:14px}

/* 1600-ish desktop: preserve exact hierarchy without counter overflow. */
@media (min-width:1201px) and (max-width:1700px){
  .broadcast-counter .fiscal-debt{font-size:clamp(43px,3.85vw,61px)!important}
  .broadcast-title{font-size:clamp(56px,4.8vw,76px)!important}
}

/* Tablet/mobile. */
@media(max-width:1200px){
  .broadcast-hero{grid-template-columns:1fr!important}
  .broadcast-counter{
    border-left:0!important;
    border-top:1px solid var(--line)!important;
    padding:24px 0 8px!important;
  }
  .broadcast-counter .fiscal-debt{font-size:clamp(39px,7vw,68px)!important}
  .holders-panel,.household-clock{grid-template-columns:1fr!important}
  .spending-layout{grid-template-columns:170px 1fr!important}
  .interest-share-card{grid-column:1/-1}
}
@media(max-width:760px){
  .global-header{padding:0 10px}
  .broadcast-fiscal{padding:10px 10px 18px}
  .broadcast-hero{padding:20px 5px!important}
  .broadcast-title{font-size:50px!important}
  .broadcast-counter .fiscal-debt{font-size:clamp(31px,9.4vw,48px)!important}
  .spending-layout{grid-template-columns:1fr!important}
  .household-clock .expanded-credit{grid-template-columns:1fr!important}
}


/* v11 — sitewide legibility + clickable home brand */
.brand-home{
  color:inherit;
  text-decoration:none;
  cursor:pointer;
}
.brand-home:focus-visible{
  outline:1px solid var(--orange);
  outline-offset:6px;
  border-radius:4px;
}

/* Establish a readable floor for UI microcopy without scaling headline hierarchy. */
:root{
  --micro:9px;
  --micro-strong:10px;
  --small:11px;
  --small-readable:12px;
}

/* Header + nav */
.brand-tag{
  font-size:var(--micro)!important;
  line-height:1.28!important;
}
.source-state,
.product-tab,
.method-top{
  font-size:var(--micro)!important;
  line-height:1.2!important;
}
.product-tab{letter-spacing:.07em!important}

/* Top economic tape */
.metric-label{
  font-size:var(--micro-strong)!important;
  line-height:1.25!important;
}
.metric-date,
.metric-source{
  font-size:var(--micro)!important;
  line-height:1.25!important;
}
.metric-change{
  font-size:var(--micro)!important;
  line-height:1.2!important;
}
.metric{
  min-width:0;
  overflow:hidden;
}

/* Eyebrows, section labels, status text */
.hero-scope,
.section-kicker,
.pressure-head,
.component-name,
.component-change,
.component-band,
.fiscal-stat-label,
.counter-group-head span,
.counter-group-head small,
.panel-head,
.equation-metric span,
.cash-instrument span,
.debt-comp-labels span,
.credit-cards span,
.fiscal-tick-meta,
.live-badge,
.source-links,
.footer-note,
.copyright{
  font-size:var(--micro)!important;
  line-height:1.3!important;
}

/* Body/helper copy that had become too small */
.trust small,
.dollar-sub,
.dollar-compare,
.pressure-inline>span:last-child,
.component-desc,
.fiscal-rate-row span,
.fiscal-rate-row small,
.fiscal-stat small,
.fiscal-flow-card small,
.fiscal-interest-note small,
.debt-comp-labels small,
.credit-cards small,
.fiscal-disclaimer p,
.composition-note span,
.composition-note b,
.origin-dollar span,
.destination span,
.destination small,
.scale-words,
.split-labels{
  font-size:var(--micro)!important;
  line-height:1.4!important;
}

/* Make explanatory copy comfortably readable */
.dek,
.fiscal-dek,
.fiscal-flow-copy p,
.fiscal-section-head p,
.fiscal-credit p,
.dollar-copy p{
  font-size:var(--small-readable)!important;
  line-height:1.5!important;
}

/* Preserve card integrity with slightly larger microcopy */
.component{
  min-height:154px!important;
  padding-bottom:18px!important;
}
.component-desc{
  min-height:36px!important;
  margin-top:8px!important;
}
.fiscal-stat{
  min-height:96px;
}
.credit-cards article{
  min-height:98px!important;
}
.metric{
  padding-top:14px!important;
  padding-bottom:12px!important;
}

/* Shared header needs a little extra room for larger microcopy */
.masthead{
  min-height:62px;
}
.tape{
  height:126px!important;
}
.broadcast-ticker{
  min-height:30px!important;
}

/* Footer spacing */
.source-strip{
  gap:16px!important;
  align-items:center!important;
}
.footer-note{
  text-align:center;
}

/* Guard against breakage at common desktop widths */
@media(min-width:901px) and (max-width:1450px){
  .metric-label{font-size:9px!important}
  .metric-date,.metric-source,.metric-change{font-size:8px!important}
  .component{min-height:148px!important}
  .component-desc{font-size:8.5px!important}
  .fiscal-stat-label{font-size:8.5px!important}
}

/* Tablet: allow rows to breathe instead of clipping */
@media(max-width:1100px){
  .masthead{
    padding-bottom:6px;
  }
  .product-tabs{
    padding-top:4px;
  }
  .tape{
    height:auto!important;
    min-height:118px;
  }
  .tape-track{
    overflow-x:auto;
    overflow-y:hidden;
    scroll-snap-type:x proximity;
  }
  .metric{
    scroll-snap-align:start;
  }
}

/* Mobile: keep a readable minimum and remove risky fixed heights */
@media(max-width:700px){
  .brand-tag{font-size:8.5px!important}
  .source-state{font-size:8.5px!important}
  .product-tab,.method-top{font-size:9px!important}
  .metric-label{font-size:10px!important}
  .metric-date,.metric-source,.metric-change{font-size:9px!important}
  .hero-scope,.section-kicker,.pressure-head,.component-name,.component-change,.component-band{font-size:9px!important}
  .component-desc,.trust small,.dollar-sub,.dollar-compare,.fiscal-disclaimer p,.composition-note span,.destination small{font-size:10px!important}
  .dek,.fiscal-dek,.dollar-copy p{font-size:12px!important}
  .component{
    min-height:auto!important;
  }
  .source-strip{
    align-items:flex-start!important;
  }
}


/* v12 — Treasury bonds + more legible fiscal crawl */
body[data-view="fiscal"] .broadcast-ticker{
  height:36px!important;
  min-height:36px!important;
}
body[data-view="fiscal"] .broadcast-ticker-track{
  font-size:11px!important;
  line-height:36px!important;
  letter-spacing:.055em!important;
  font-weight:700!important;
}
.bonds-panel{margin-top:8px!important}
.bond-layout{
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(320px,.55fr);
  gap:22px;
  padding:15px 18px 13px;
}
.bond-metrics{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  border:1px solid var(--line);
  border-radius:7px;
  overflow:hidden;
}
.bond-metrics article{
  min-width:0;
  min-height:84px;
  padding:13px 15px;
  border-right:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.bond-metrics article:nth-child(3n){border-right:0}
.bond-metrics article:nth-child(n+4){border-bottom:0}
.bond-metrics span,.yield-curve-label{
  display:block;
  font:700 9px/1.25 var(--mono);
  color:#9da5aa;
  letter-spacing:.055em;
}
.bond-metrics strong{
  display:block;
  margin-top:9px;
  font:500 24px/1 var(--mono);
  color:var(--cream);
}
.bond-metrics small{
  display:block;
  margin-top:8px;
  font:600 9px/1.2 var(--mono);
  color:#667077;
}
.bond-key{background:linear-gradient(135deg,rgba(242,165,22,.07),transparent)}
.bond-key strong{color:var(--orange)}
.yield-curve-wrap{
  min-width:0;
  padding:14px 16px 10px;
  border:1px solid var(--line);
  border-radius:7px;
}
#yieldCurve{display:block;width:100%;height:128px;margin-top:4px;overflow:visible}
.curve-axis{stroke:#32393d;stroke-width:1}
.curve-line{fill:none;stroke:#e8a51e;stroke-width:2}
.curve-dot{fill:#0b0f11;stroke:#f1b235;stroke-width:2}
.curve-value{fill:#d9dddf;font:700 10px var(--mono)}
.yield-curve-tenors{display:flex;justify-content:space-between;padding:0 8px;font:700 9px var(--mono);color:#727b80}
.bond-consequence{
  display:flex;
  align-items:baseline;
  gap:22px;
  margin:0 18px 15px;
  padding:13px 16px;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  font:700 9px var(--mono);
  color:#8f989d;
}
.bond-consequence strong{font-size:22px;color:var(--cream)}
.bond-consequence span:nth-of-type(2){color:#e4b84c}
@media(max-width:1000px){
  .bond-layout{grid-template-columns:1fr}
}
@media(max-width:700px){
  body[data-view="fiscal"] .broadcast-ticker-track{font-size:10px!important}
  .bond-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
  .bond-metrics article{border-right:1px solid var(--line)!important;border-bottom:1px solid var(--line)!important}
  .bond-metrics article:nth-child(2n){border-right:0!important}
  .bond-metrics article:nth-last-child(-n+2){border-bottom:0!important}
  .bond-consequence{flex-wrap:wrap;gap:10px 16px}
}


/* v13 — comprehensive two-page design audit
   Principle: government → economy → conditions → household.
   Color communicates meaning/change; structure communicates category. */

/* ---------- GLOBAL RHYTHM ---------- */
.page-shell{max-width:1680px;margin:0 auto;background:var(--bg)}
.global-header{padding-left:22px!important;padding-right:22px!important}
.masthead{border-bottom:1px solid var(--line)}
.product-tabs{gap:26px!important}
.product-tab{transition:color .15s ease,border-color .15s ease}
.product-tab.is-active{border-bottom-color:var(--orange)!important}
.hero-scope,.section-kicker{letter-spacing:.075em!important}
.info-btn{flex:0 0 auto}

/* ---------- SHARED TOP TAPE: SEMANTIC GROUPING ---------- */
.tape{
  height:134px!important;
  border-bottom:0!important;
  overflow:hidden;
}
.tape-track{
  height:100%;
  display:grid!important;
  grid-template-columns:1.16fr .88fr 1.02fr .94fr .9fr .88fr .88fr .88fr .94fr .88fr .94fr!important;
  overflow:visible!important;
}
.metric{
  position:relative;
  display:flex!important;
  flex-direction:column;
  justify-content:center;
  padding:14px 12px 12px!important;
  border-left:1px solid #252c30!important;
  border-right:0!important;
  border-top:0!important;
  min-width:0!important;
  background:transparent!important;
}
.metric:first-child{border-left:0!important}
.metric-group-label{
  position:absolute;
  top:9px;
  left:12px;
  font:700 8px/1 var(--mono)!important;
  letter-spacing:.09em;
  color:#697278;
  white-space:nowrap;
}
.metric-group-spacer{visibility:hidden}
.metric-fiscal:nth-of-type(1),
.metric-economy:nth-of-type(4),
.metric-rates:nth-of-type(6),
.metric-household:nth-of-type(10){
  border-left:1px solid #465057!important;
  padding-left:16px!important;
}
.metric:first-child{border-left:0!important;padding-left:12px!important}
.metric-label{margin-top:9px}
.metric-value{
  font-size:clamp(19px,1.45vw,25px)!important;
  line-height:1!important;
  letter-spacing:-.04em!important;
}
.metric-anchor .metric-value{
  font-size:clamp(21px,1.6vw,28px)!important;
  font-weight:700!important;
}
.metric-date{margin-top:8px!important}
.metric-source{margin-top:3px!important}
.metric-change{margin-top:5px!important}
.metric-change.good{color:#79b955!important}
.metric-change.bad{color:#d66a5b!important}
.metric-change.neutral{color:#727b80!important}

/* ---------- HOUSEHOLD PAGE ---------- */
.household-instrument{padding-left:22px!important;padding-right:22px!important}
.hero-grid.hero-dollar{
  min-height:342px!important;
  grid-template-columns:minmax(0,1.05fr) minmax(390px,.72fr)!important;
  gap:46px!important;
}
.hero-copy{padding-right:12px}
.hero-copy h1{
  max-width:780px;
  font-size:clamp(50px,4.45vw,72px)!important;
  line-height:.94!important;
  letter-spacing:-.055em!important;
}
.hero-copy .dek{max-width:660px}
.dollar-hero{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding-left:44px!important;
}
.dollar-main{font-size:clamp(82px,7.6vw,120px)!important}
.trust-row{gap:26px!important}
.trust{min-width:0}
.pressure-row{
  padding-top:14px!important;
  padding-bottom:14px!important;
}
.pressure-inline strong{font-size:34px!important}
.drivers{padding-top:15px!important;padding-bottom:20px!important}
.driver-grid{gap:8px!important}
.component{
  border-color:#30383d!important;
  border-radius:7px!important;
  min-height:150px!important;
}
.component-score{font-size:25px!important}
.component-desc{color:#929a9f!important}
.household-dollar{
  border-radius:0!important;
  margin-top:0!important;
  padding-top:26px!important;
  padding-bottom:26px!important;
}
.audited-viz{align-items:stretch}
.origin-dollar,.destination{min-height:116px!important}
.destination.saving{box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}

/* ---------- FISCAL HERO ---------- */
.broadcast-fiscal{padding-top:14px!important}
.broadcast-hero{
  min-height:344px!important;
  gap:42px!important;
}
.broadcast-title{
  max-width:540px;
  font-size:clamp(60px,5vw,80px)!important;
  line-height:.86!important;
}
.broadcast-intro .fiscal-dek{max-width:500px}
.broadcast-counter{padding-left:46px!important}
.broadcast-counter .fiscal-debt{
  font-size:clamp(43px,3.9vw,62px)!important;
  letter-spacing:-.048em!important;
}
.per-second-hero{
  border-top:1px solid #252d31;
  border-bottom:1px solid #252d31;
  padding:10px 0!important;
}
.per-second-hero strong{font-size:19px!important}
.since-open strong{font-size:26px!important}

/* ticker: legible broadcast crawl, but subordinate to hero */
body[data-view="fiscal"] .broadcast-ticker{
  height:38px!important;
  min-height:38px!important;
  border-top:1px solid #262d31!important;
}
body[data-view="fiscal"] .broadcast-ticker-track{
  font-size:11px!important;
  line-height:38px!important;
  letter-spacing:.06em!important;
}

/* ---------- FISCAL PANELS ---------- */
.fiscal-panel{
  margin-top:10px!important;
  border-color:#31393e!important;
}
.panel-head{
  min-height:41px!important;
  padding:10px 16px!important;
  border-bottom:1px solid #252d31!important;
}
.panel-head>span{font-size:10px!important}
.panel-head>small{font-size:9px!important;color:#737c82!important}

/* Balance equation: one relationship, not three cards */
.balance-equation .equation-row{
  min-height:120px!important;
  gap:0!important;
}
.equation-metric{
  border-radius:0!important;
  border:0!important;
  border-left:1px solid var(--line)!important;
}
.equation-metric:first-child{border-left:0!important}
.equation-symbol{color:#667077!important}
.equation-total{background:rgba(242,165,22,.045)!important}
.equation-total strong{color:var(--orange)!important}

/* Cash clock is the second visual hero */
.cash-clock-row{padding-top:20px!important;padding-bottom:17px!important}
.cash-instrument strong{font-size:31px!important}
.cash-instrument.in strong{color:#8cc66a!important}
.cash-instrument.out strong{color:#e2e5e6!important}
.cash-instrument.gap strong{color:#dc7466!important}
.cash-arrow{color:#606a70!important}
.interest-ribbon{background:#0c1113!important}

/* Bonds */
.bond-layout{padding-top:18px!important;padding-bottom:16px!important}
.bond-metrics article{min-height:92px!important}
.bond-metrics strong{font-size:26px!important}
.bond-key{background:rgba(242,165,22,.055)!important}
.yield-curve-wrap{background:#090d0f}
.bond-consequence{
  min-height:52px;
  margin-bottom:16px!important;
}

/* Spending */
.spending-layout{padding-top:20px!important;padding-bottom:20px!important}
.spending-legend{row-gap:9px!important}
.spending-legend-row{min-height:24px}
.interest-share-card{
  border-color:#343c40!important;
  background:#0b1012!important;
}

/* Who holds debt */
.holders-panel{padding-top:24px!important;padding-bottom:24px!important}
.debt-comp-labels strong{font-size:27px!important}
.public-part{background:#c69a38!important}
.intragov-part{background:#59666d!important}

/* Household debt context */
.household-clock{padding-top:24px!important;padding-bottom:24px!important}
.household-clock .credit-cards article{
  background:#090d0f!important;
  border-color:#2f373b!important;
}
.household-clock .credit-cards strong{font-size:24px!important}

/* ---------- FOOTER ---------- */
.source-strip{
  min-height:54px;
  padding-top:13px!important;
  padding-bottom:13px!important;
  border-top:1px solid var(--line);
}
.source-links{flex-wrap:wrap}
.powered{white-space:nowrap}

/* ---------- RESPONSIVE SAFETY ---------- */
@media(max-width:1250px){
  .tape-track{
    display:flex!important;
    overflow-x:auto!important;
    scrollbar-width:thin;
  }
  .metric{flex:0 0 132px!important}
  .metric-anchor{flex-basis:145px!important}
  .hero-grid.hero-dollar{grid-template-columns:1fr!important}
  .dollar-hero{
    border-left:0!important;
    border-top:1px solid var(--line)!important;
    padding:24px 0 0!important;
  }
}
@media(max-width:800px){
  .global-header,.household-instrument{padding-left:10px!important;padding-right:10px!important}
  .hero-copy h1{font-size:46px!important}
  .broadcast-title{font-size:52px!important}
  .trust-row{gap:14px!important}
  .driver-grid{grid-template-columns:1fr 1fr!important}
  .balance-equation .equation-row{display:grid!important;grid-template-columns:1fr!important}
  .equation-symbol{display:none!important}
  .equation-metric{border-left:0!important;border-top:1px solid var(--line)!important}
  .equation-metric:first-child{border-top:0!important}
}
@media(max-width:520px){
  .driver-grid{grid-template-columns:1fr!important}
  .hero-copy h1{font-size:40px!important}
  .broadcast-title{font-size:46px!important}
  .metric{flex-basis:126px!important}
}
