/* Experimental reading layout. Kept separate from the production stylesheet. */
html:not([data-theme="dark"]) body.lab-site {
  --ink: #202c2b;
  --ink-soft: #4e605c;
  --paper: #fffefa;
  --surface: #f6f5ee;
  --surface-2: #eeefe7;
  --line: #cdd6cf;
  --green: #185c49;
  --green-2: #246f57;
  --green-soft: #e3f0e8;
  --action: #185c49;
  background: var(--paper);
}
html[data-theme="dark"] body.lab-site {
  --ink: #eff5f0;
  --ink-soft: #c3d0c8;
  --paper: #14231f;
  --surface: #1b2e28;
  --surface-2: #233b31;
  --line: #426153;
  --green: #79d5ad;
  --green-2: #9be4c3;
  --green-soft: #244b39;
  --action: #24684f;
}
.lab-site .lab-ribbon {background:#153a30;color:#fff;border-bottom:1px solid #48675d}
.lab-site .lab-ribbon-inner {display:flex;align-items:center;flex-wrap:wrap;gap:8px 16px;min-height:48px;padding-block:8px;font-size:.78rem}
.lab-site .lab-ribbon strong {font-size:.8rem;letter-spacing:.02em;white-space:nowrap}
.lab-site .lab-ribbon span {flex:1;min-width:230px;color:#e3eee9}
.lab-site .lab-ribbon button {min-height:34px;padding:5px 11px;border:1px solid #b7d9c8;border-radius:3px;background:transparent;color:#fff;font:inherit;font-weight:700;cursor:pointer}
.lab-site .lab-ribbon button:hover,.lab-site .lab-ribbon button:focus-visible {background:#dff1e5;color:#153a30}
.lab-site .lab-ribbon [hidden] {display:none!important}
.lab-site .lab-ribbon small {color:#d2e5da;font-size:.72rem}
.lab-site .ad-zone,.lab-site .ad-slot,.lab-site .ad-reserved,.lab-site .hero-ad-zone,.lab-site .reference-ad-zone,.lab-site .newsletter-band {display:none!important}
.lab-site .lab-intro {display:flex;align-items:center;gap:18px;padding-top:17px;padding-bottom:13px;border-bottom:1px solid var(--line)}
.lab-site .lab-intro span {color:var(--green);font-size:.7rem;font-weight:900;text-transform:uppercase;letter-spacing:.12em;white-space:nowrap}
.lab-site .lab-intro p {margin:0;color:var(--ink-soft);font-size:.82rem}
.lab-home .hero {background:var(--paper)}
.lab-home .hero-grid {display:grid;grid-template-columns:minmax(0,1fr);width:min(calc(100% - 40px),980px);min-height:0;padding-bottom:36px}
.lab-home .hero-value {display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,auto);grid-template-areas:"kicker label" "title value" "copy unit" "answer change" "source source";gap:8px 38px;align-items:end;min-height:0;padding:30px 0 22px;border:0}
.lab-home .hero-value>.eyebrow {grid-area:kicker;margin:0}
.lab-home .hero-value>h1 {grid-area:title;margin:0;font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.4rem,4.3vw,4.1rem);font-weight:500;letter-spacing:-.035em;line-height:1.05}
.lab-home .hero-value>h1 {min-height:0}
.lab-home .hero-copy {grid-area:copy;max-width:520px;margin:0;color:var(--ink-soft);font-size:1.05rem;line-height:1.5}
.lab-home .value-heading-row {grid-area:label;justify-self:end;margin:0;gap:10px}
.lab-home .current-value {grid-area:value;justify-self:end;margin:0;color:var(--ink);font-size:clamp(3.2rem,5.5vw,5rem);font-variant-numeric:tabular-nums;letter-spacing:-.055em}
.lab-home .value-unit {grid-area:unit;justify-self:end;font-size:.83rem;text-transform:uppercase;letter-spacing:.08em}
.lab-home .variation {grid-area:change;justify-self:end;margin:0;font-size:.82rem}
.lab-home .hero-answer {display:none}
.lab-home .source-line {grid-area:source;margin:14px 0 0;padding:12px 0 0;border-top:1px solid var(--line)}
.lab-home .hero-task-column {width:100%;max-width:850px;margin:0 auto}
.lab-home .hero .utm-console {margin:0;padding:24px 28px;border:1px solid var(--line);border-radius:4px;background:var(--paper);box-shadow:none}
.lab-home .utm-console .console-heading {padding-bottom:15px}
.lab-home .utm-console .console-heading h2 {font-family:Georgia,"Times New Roman",serif;font-size:1.65rem;font-weight:500}
.lab-home .utm-console .month-shortcuts {display:none}
.lab-home .utm-console .period-row {margin:14px 0 17px}
.lab-home .utm-console select {min-height:52px;font-size:1rem}
.lab-home .utm-console .money-field {min-height:92px}
.lab-home .utm-console .money-field input,.lab-home .utm-console .result-field strong {font-size:clamp(1.5rem,3vw,2rem)}
.lab-home .utm-console .quick-actions button,.lab-home .utm-console .calm-amounts button {min-width:48px;min-height:44px}
.lab-home .utm-console .button {min-height:48px}
.lab-home .lab-task-nav {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:0;margin-bottom:20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.lab-home .lab-task-nav a {display:flex;align-items:center;min-height:58px;padding:12px 18px;color:var(--green);font-weight:800;text-decoration:none;border-right:1px solid var(--line)}
.lab-home .lab-task-nav a:last-child {border-right:0}
.lab-home .lab-task-nav a:hover,.lab-home .lab-task-nav a:focus-visible {background:var(--green-soft);text-decoration:underline}
.lab-home .lab-fx {margin-bottom:24px;border:1px solid var(--line);border-radius:4px;background:var(--paper)}
.lab-home .lab-fx summary {display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:54px;padding:12px 18px;color:var(--green);font-weight:800;cursor:pointer}
.lab-home .lab-fx summary span {color:var(--ink-soft);font-size:.75rem;font-weight:600}
.lab-home .lab-fx[open] summary {border-bottom:1px solid var(--line)}
.lab-home .lab-fx-content {padding:20px}
.lab-home .lab-fx-content p {max-width:680px;margin:0 0 18px;color:var(--ink-soft);font-size:.9rem}
.lab-home .lab-fx-fields {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.lab-home .lab-fx-fields label {display:grid;gap:6px;color:var(--ink);font-size:.8rem;font-weight:800}
.lab-home .lab-fx-fields input {width:100%;min-width:0;min-height:52px;padding:10px 12px;border:1px solid var(--line);border-radius:3px;background:var(--paper);color:var(--ink);font:inherit;font-size:1.05rem}
.lab-home .lab-fx-fields input:focus-visible {outline:3px solid var(--green);outline-offset:2px}
.lab-home .lab-fx output {display:block;margin:18px 0 8px;padding:16px;border-left:3px solid var(--green);background:var(--surface);font-size:1rem;font-weight:750;font-variant-numeric:tabular-nums}
.lab-home .lab-fx small {display:block;color:var(--ink-soft);line-height:1.5}
.lab-home .metric-band {background:var(--surface);border-block:1px solid var(--line)}
.lab-home .tool-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border-top:1px solid var(--line)}
.lab-home .tool-link {min-height:0;padding:20px 12px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;box-shadow:none}
.lab-home .tool-link:hover {background:var(--surface)}
.lab-site .page-hero {background:var(--surface)}
.lab-site .page-hero h1 {font-family:Georgia,"Times New Roman",serif;font-weight:500}
.lab-site .analysis-workbench {border-color:var(--line);background:var(--paper);box-shadow:none}
.lab-site .analysis-workbench input,.lab-site .analysis-workbench select {min-height:52px;font-size:1rem}
@media(max-width:760px) {
  .lab-home .hero-grid {width:min(calc(100% - 32px),980px)}
  .lab-home .hero-value {grid-template-columns:minmax(0,1fr);grid-template-areas:"kicker" "title" "copy" "label" "value" "unit" "change" "answer" "source";gap:8px;padding:25px 0 20px}
  .lab-home .hero-value>h1 {font-size:clamp(2.6rem,9vw,3.6rem)}
  .lab-home .value-heading-row,.lab-home .current-value,.lab-home .value-unit,.lab-home .variation {justify-self:start}
  .lab-home .value-heading-row {margin-top:16px}
  .lab-home .current-value {font-size:clamp(3.2rem,12vw,4.5rem)}
  .lab-home .source-line {align-items:flex-start}
  .lab-home .lab-task-nav {grid-template-columns:minmax(0,1fr)}
  .lab-home .lab-task-nav a {min-height:50px;border-right:0;border-bottom:1px solid var(--line)}
  .lab-home .lab-task-nav a:last-child {border-bottom:0}
  .lab-home .lab-fx-fields {grid-template-columns:minmax(0,1fr)}
}
@media(max-width:480px) {
  .lab-site .lab-intro {display:block;padding-inline:16px}
  .lab-site .lab-intro p {margin-top:5px}
  .lab-home .hero .utm-console {padding:17px 14px}
  .lab-home .utm-console .rate-pill {display:none}
  .lab-home .tool-grid {grid-template-columns:minmax(0,1fr)}
  .lab-home .source-line {display:block}
  .lab-home .source-line a {display:inline-block;margin-top:8px}
}

/* Iteration 02: the calculator and the value share the first screen. */
.lab-site .status-bar {display:none}
.lab-site .lab-ribbon-inner {min-height:40px;padding-block:5px;gap:6px 12px}
.lab-site .lab-ribbon button {min-height:32px;padding:4px 9px}
@media(min-width:901px) {
  .lab-home .hero-grid {width:min(calc(100% - 48px),1320px);display:grid;grid-template-columns:minmax(320px,.82fr) minmax(520px,1.18fr);gap:36px;align-items:start;min-height:0;padding:24px 0 30px}
  .lab-home .hero-value {display:flex;flex-direction:column;align-items:flex-start;min-height:0;padding:8px 0 0;border:0}
  .lab-home .hero-value>h1 {margin:8px 0 22px;font-size:clamp(2.65rem,3.2vw,3.6rem)}
  .lab-home .hero-copy {display:none}
  .lab-home .value-heading-row {justify-self:auto;margin:0 0 6px}
  .lab-home .current-value {justify-self:auto;margin:0;font-size:clamp(3.25rem,4.5vw,4.75rem)}
  .lab-home .value-unit {justify-self:auto;margin:0 0 16px}
  .lab-home .variation {justify-self:auto;margin:0}
  .lab-home .source-line {width:100%;margin-top:24px}
  .lab-home .hero-task-column {align-self:start;width:100%;max-width:none;margin:0}
  .lab-home .hero .utm-console {width:100%;margin:0;padding:20px 24px}
}
@media(max-width:900px) {
  .lab-home .hero-grid {width:min(calc(100% - 28px),680px);display:grid;grid-template-columns:minmax(0,1fr);gap:12px;min-height:0;padding:18px 0 26px}
  .lab-home .hero-value {display:flex;flex-direction:column;align-items:flex-start;min-height:0;padding:0;border:0}
  .lab-home .hero-value>h1 {margin:5px 0 12px;font-size:clamp(2.25rem,8vw,3rem)}
  .lab-home .hero-copy {display:none}
  .lab-home .value-heading-row {justify-self:auto;margin:0 0 4px}
  .lab-home .current-value {justify-self:auto;margin:0;font-size:clamp(3rem,10vw,4rem)}
  .lab-home .value-unit {justify-self:auto;margin:0 0 8px}
  .lab-home .variation {justify-self:auto;margin:0}
  .lab-home .source-line {width:100%;margin:12px 0 0;padding:10px 0 0}
  .lab-home .hero-task-column {width:100%;max-width:none;margin:0}
  .lab-home .hero .utm-console {width:100%;margin:0;padding:18px}
}
@media(max-width:480px) {
  .lab-site .lab-ribbon span {flex:0 1 auto;min-width:0}
  .lab-home .hero-grid>.hero-value>h1 {min-height:0}
  .lab-home .hero-grid>.hero-value>.variation {margin-top:8px}
  .lab-home .hero-grid>.hero-value>.source-line {display:none}
  .lab-home .hero-grid>.hero-task-column {margin-top:0}
}
