/* instiv2 /learn/ section sheet (hand written part). build-learn.mjs appends the generic fallbacks for the fragments'
   one off classes, the lifted inline styles (.xs-*) and the calculators' lifted styles (.xc-*) and writes
   public/instiv2/learn/learn.css. Built on the kit tokens (styles.css, kit.css); light default, dark via
   html[data-theme="dark"]. Navy is never a text colour: the old navy ramp (#0D1F3C ... #A9C0DE) becomes --lr1..--lr5,
   used for fills, strokes and backgrounds, and every "color: navy" became color: var(--page-text) at build time. */

/* ---------- 1. tokens: the old Learn names the fragments still use, mapped to the kit ---------- */
.lm, .lp, .lt, .lg {
  --mono: "JetBrains Mono", "JBM Fallback", ui-monospace, monospace;
  --lr1: #0D1F3C; --lr2: #1B3A6B; --lr3: #3A5C99; --lr4: #6B8BBF; --lr5: #A9C0DE;
  --lr-on: #FFFFFF; --lr-on-soft: rgba(255,255,255,.78);
  --lm-blue: #2457C5; --lm-green: #0E8A5F; --lm-red: #C0352B; --lm-amber: #B45309; --lm-purple: #6D3FC9; --lm-teal: #0E7490;
  --lm-tint-blue: #EEF3FB; --lm-tint-green: #E8F6EF; --lm-tint-red: #FBEDEB; --lm-tint-amber: #FBF3E3; --lm-tint-purple: #F1ECFB;
  /* legacy names */
  --navy: var(--lr1); --navy-mid: var(--lr3); --navy-2: var(--lr2);
  --text: var(--page-text); --text-2: var(--page-text); --text-3: var(--page-muted); --text-4: var(--page-faint);
  --rule: var(--page-line); --white: var(--page-2); --bg: var(--page); --ice: var(--lm-tint-blue);
  --green: var(--lm-green); --green-dark: var(--lm-green); --green-bg: var(--lm-tint-green);
  --red: var(--lm-red); --red-bg: var(--lm-tint-red); --amber: var(--lm-amber); --amber-bg: var(--lm-tint-amber);
  --gold: #B8860B; --gold-light: var(--lm-tint-amber); --blue: var(--lm-blue); --teal: var(--lm-teal);
  --c: var(--accent);
  color: var(--page-text);
}
html[data-theme="dark"] .lm, html[data-theme="dark"] .lp, html[data-theme="dark"] .lt, html[data-theme="dark"] .lg, .lm-pnl .pl {
  --lr1: #B8D4FF; --lr2: #7AA8F5; --lr3: #4A7FE0; --lr4: #2F5DB8; --lr5: #24488F;
  --lr-on: #05080F; --lr-on-soft: rgba(5,8,15,.72);
  --lm-blue: #8FB8FF; --lm-green: #4BD9A0; --lm-red: #FF8A8A; --lm-amber: #F2B35C; --lm-purple: #B59CF6; --lm-teal: #5FD0E6;
  --lm-tint-blue: rgba(127,178,255,.10); --lm-tint-green: rgba(61,220,151,.10); --lm-tint-red: rgba(255,123,123,.10); --lm-tint-amber: rgba(242,179,92,.12); --lm-tint-purple: rgba(181,156,246,.12);
  --gold: #E3B94F;
}
/* the panel layers are always dark glass, whatever the theme */
.lm-pnl .pl { --page-text: #EAF0FA; --page-muted: rgba(226,233,246,.74); --page-faint: rgba(226,233,246,.56); --page-line: rgba(214,226,255,.16); --page-2: rgba(255,255,255,.05); --page: #070C18; --page-glass: rgba(255,255,255,.06); }
/* svg colours mapped at build time (fill, stroke, stop-color) */
.lm [data-lrf="1"] { fill: var(--lr1); } .lm [data-lrf="2"] { fill: var(--lr2); } .lm [data-lrf="3"] { fill: var(--lr3); } .lm [data-lrf="4"] { fill: var(--lr4); } .lm [data-lrf="5"] { fill: var(--lr5); }
.lm [data-lrs="1"] { stroke: var(--lr1); } .lm [data-lrs="2"] { stroke: var(--lr2); } .lm [data-lrs="3"] { stroke: var(--lr3); } .lm [data-lrs="4"] { stroke: var(--lr4); } .lm [data-lrs="5"] { stroke: var(--lr5); }
.lm [data-lrc="1"] { stop-color: var(--lr1); } .lm [data-lrc="2"] { stop-color: var(--lr2); } .lm [data-lrc="3"] { stop-color: var(--lr3); } .lm [data-lrc="4"] { stop-color: var(--lr4); } .lm [data-lrc="5"] { stop-color: var(--lr5); }
.lm [data-lrf="on"] { fill: var(--page-2); } .lm [data-lrs="on"] { stroke: var(--page-2); }
.lm [data-lrf="line"] { fill: var(--page-line); } .lm [data-lrs="line"] { stroke: var(--page-line); }
.lm [data-lrf="red"] { fill: var(--lm-red); } .lm [data-lrs="red"] { stroke: var(--lm-red); } .lm [data-lrf="green"] { fill: var(--lm-green); } .lm [data-lrs="green"] { stroke: var(--lm-green); }
.lm [data-lrf="amber"] { fill: var(--lm-amber); } .lm [data-lrs="amber"] { stroke: var(--lm-amber); } .lm [data-lrf="blue"] { fill: var(--lm-blue); } .lm [data-lrs="blue"] { stroke: var(--lm-blue); }
.lm [data-lrf="purple"] { fill: var(--lm-purple); } .lm [data-lrs="purple"] { stroke: var(--lm-purple); } .lm [data-lrf="teal"] { fill: var(--lm-teal); } .lm [data-lrs="teal"] { stroke: var(--lm-teal); }
.lm svg text, .lm svg tspan { fill: currentColor; }
.lm svg text[data-lrf], .lm svg tspan[data-lrf] { fill: revert-layer; }

/* ---------- 2. shared parts on light pages: kickers, buttons, section heads, cards ---------- */
.lm .kicker, .lp .kicker { color: var(--page-muted); }
.lm .kicker .num, .lp .kicker .num { color: var(--page-text); border-color: var(--page-line); }
.lm .kicker a, .lp .kicker a { color: inherit; }
.lm .kicker a:hover { color: var(--page-text); }
.lm-sep { margin: 0 2px; color: var(--page-faint); }
.lm .btn-solid:not(.pg-hero .btn-solid), .lp .btn-solid:not(.pg-hero .btn-solid) { background: var(--page-text); color: var(--page); }
.lm .btn-solid:not(.pg-hero .btn-solid):hover, .lp .btn-solid:not(.pg-hero .btn-solid):hover { background: var(--page-text); transform: translateY(-1px); }
.lm .btn-ghost:not(.pg-hero .btn-ghost), .lp .btn-ghost:not(.pg-hero .btn-ghost) { color: var(--page-text); border-color: var(--page-line); background: var(--page-2); backdrop-filter: none; -webkit-backdrop-filter: none; }
.lm .btn svg, .lp .btn svg { width: 15px; height: 15px; }
.lm-sec-head { max-width: 640px; margin: 0 0 22px; }
.lm-sec-head h2 { margin: 0; font-weight: 700; font-size: clamp(24px, 2.6vw, 36px); line-height: 1.08; letter-spacing: -0.03em; }
.lm-sec-sub { margin: 12px 0 0; font-size: 16px; line-height: 1.55; color: var(--page-muted); }
.lm-h-sm { font-size: clamp(20px, 2vw, 26px) !important; }
.lm-fine { margin: 26px 0 0; font-size: 12.5px; line-height: 1.5; color: var(--page-faint); max-width: 760px; }
.lm-wrap { max-width: 760px; margin: 0 auto; padding: 0 var(--pad); }
.lm-after { padding-top: 10px; padding-bottom: 40px; }
.lm-after > * + * { margin-top: 34px; }

/* ---------- 3. module page: slim bar, hero plate, TOC ---------- */
.lm-module { padding-bottom: 20px; }
.lm-bar { position: sticky; top: var(--hdr); z-index: 40; display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 14px; height: 54px; padding: 0 var(--pad); background: var(--page-glass); backdrop-filter: blur(18px) saturate(140%); -webkit-backdrop-filter: blur(18px) saturate(140%); border-bottom: 1px solid var(--page-line); font-size: 13.5px; }
.lm-bar-path { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; font: 500 12px/1 var(--mono); letter-spacing: .08em; text-transform: uppercase; color: var(--page-muted); white-space: nowrap; }
.lm-bar-path span { padding: 3px 7px; border-radius: 6px; border: 1px solid var(--page-line); color: var(--page-text); letter-spacing: 0; }
.lm-bar-t { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-weight: 600; color: var(--page-text); opacity: 0; transition: opacity .3s; }
.lm-bar.is-deep .lm-bar-t { opacity: 1; }
.lm-bar-next { display: inline-flex; align-items: center; gap: 6px; min-height: 44px; padding: 0 12px 0 14px; border-radius: 999px; background: color-mix(in srgb, var(--c) 55%, #05080F); color: #fff; font-weight: 600; font-size: 13px; white-space: nowrap; }
.lm-bar-next svg { width: 14px; height: 14px; }
.lm-bar-prog { position: absolute; left: 0; bottom: -1px; height: 2px; width: 100%; background: var(--c); transform-origin: 0 50%; transform: scaleX(0); }
.lm-hero { max-width: 1240px; margin: 0 auto; padding: clamp(22px, 4vw, 48px) var(--pad) 0; display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); gap: clamp(22px, 4vw, 56px); align-items: center; }
.lm-plate { margin: 0; border-radius: 22px; overflow: hidden; box-shadow: 0 30px 70px -40px rgba(5,8,15,.6); background: #05080F; }
.lm-plate svg { display: block; width: 100%; height: auto; }
.lm-head h1 { margin: 0; font-weight: 700; font-size: clamp(30px, 3.6vw, 52px); line-height: 1.02; letter-spacing: -0.035em; }
.lm-head .hero-lead { margin: 18px 0 0; font-size: clamp(16px, 1.3vw, 19px); line-height: 1.55; color: var(--page-muted); max-width: 32em; }
.lm-head .chips { margin-top: 20px; }
.lm-head .chips li { background: var(--page-2); border-color: var(--page-line); backdrop-filter: none; -webkit-backdrop-filter: none; }
.lm-head .chips b { color: var(--page-text); }
.lm-by { margin: 16px 0 0; font-size: 13.5px; color: var(--page-faint); }
.lm-by a { color: var(--page-text); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }
.lm-toc { margin: clamp(26px, 4vw, 44px) 0 10px; padding: 18px 20px; border-radius: 16px; background: var(--page-2); border: 1px solid var(--page-line); }
.lm-toc .kicker { margin-bottom: 12px; }
.lm-toc ol { list-style: none; margin: 0; padding: 0; display: grid; gap: 2px; }
.lm-toc a { display: grid; grid-template-columns: 32px 1fr; gap: 10px; align-items: baseline; min-height: 44px; padding: 10px 8px; border-radius: 10px; color: var(--page-text); font-size: 15px; line-height: 1.35; }
.lm-toc a:hover { background: var(--lm-tint-blue); }
.lm-toc a b { font: 500 12px/1.6 var(--mono); color: var(--page-faint); }

/* ---------- 4. the article: prose on kit type ---------- */
.lm-body { font-size: 17px; line-height: 1.65; color: var(--page-text); overflow-wrap: anywhere; }
.lm-body > * { min-width: 0; }
.lm-body p { margin: 0 0 1.15em; }
.lm-body > p:first-child { font-size: 18px; }
.lm-body h2 { margin: 2.2em 0 .7em; font-weight: 700; font-size: clamp(24px, 2.4vw, 32px); line-height: 1.12; letter-spacing: -0.03em; scroll-margin-top: calc(var(--hdr) + 60px); }
.lm-body h3 { margin: 1.8em 0 .6em; font-weight: 650; font-size: clamp(19px, 1.7vw, 23px); line-height: 1.25; letter-spacing: -0.02em; scroll-margin-top: calc(var(--hdr) + 60px); }
.lm-body h4 { margin: 1.4em 0 .5em; font-size: 16px; font-weight: 650; }
.lm-body ul, .lm-body ol { margin: 0 0 1.2em; padding-left: 1.3em; }
.lm-body li { margin: 0 0 .5em; }
.lm-body li::marker { color: var(--page-faint); font-family: var(--mono); font-size: .9em; }
.lm-body a:not(.btn) { color: var(--page-text); text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; text-decoration-color: color-mix(in srgb, var(--c) 70%, transparent); }
.lm-body a:not(.btn):hover { text-decoration-color: var(--c); }
.lm-body a.lm-term { text-decoration-style: dotted; text-decoration-color: var(--page-faint); }
.lm-body strong { font-weight: 650; }
.lm-body em { font-style: italic; }
.lm-body code { font: 500 .88em/1.5 var(--mono); padding: 2px 6px; border-radius: 6px; background: var(--lm-tint-blue); }
.lm-body pre { margin: 0 0 1.2em; padding: 14px 16px; border-radius: 12px; background: var(--page-2); border: 1px solid var(--page-line); overflow-x: auto; font: 400 13.5px/1.6 var(--mono); }
.lm-body blockquote { margin: 1.4em 0; padding: 4px 0 4px 18px; border-left: 3px solid var(--c); color: var(--page-muted); font-size: 1.02em; }
.lm-body hr { border: 0; border-top: 1px solid var(--page-line); margin: 2em 0; }
.lm-body img { max-width: 100%; height: auto; border-radius: 12px; }
.lm-body svg { max-width: 100%; }
.lm-body figure { margin: 1.4em 0; }
.lm-body figcaption { font-size: 13px; color: var(--page-faint); margin-top: 8px; }
.lm-body small { font-size: .86em; }
.lm-body sup { font-size: .7em; }
/* tables: every one scrolls on phones (.lm-tw written by the generator) */
.lm-tw { margin: 1.4em 0; overflow-x: auto; -webkit-overflow-scrolling: touch; border: 1px solid var(--page-line); border-radius: 14px; background: var(--page-2); }
.lm-tw::-webkit-scrollbar { height: 6px; }
.lm-tw::-webkit-scrollbar-thumb { background: var(--page-line); border-radius: 6px; }
.lm-body table { width: 100%; min-width: 480px; border-collapse: collapse; font-size: 14px; line-height: 1.45; margin: 0; }
.lm-body thead tr, .lm-body thead th { background: var(--lm-tint-blue); color: var(--page-text); }
.lm-body th { padding: 12px 14px; text-align: left; font: 600 11.5px/1.3 var(--mono); letter-spacing: .06em; text-transform: uppercase; color: var(--page-muted); border-bottom: 1px solid var(--page-line); white-space: nowrap; }
.lm-body td { padding: 11px 14px; border-bottom: 1px solid var(--page-line); vertical-align: top; color: var(--page-text); }
.lm-body tbody tr:last-child td { border-bottom: 0; }
.lm-body tbody tr:nth-child(even) td { background: color-mix(in srgb, var(--page-line) 35%, transparent); }
.lm-body td:first-child { font-weight: 600; }
.lm-body .table-wrap, .lm-body .data-table-wrap, .lm-body .corr-table-wrap { margin: 0; }
.lm-body .table-wrap > .lm-tw, .lm-body .data-table-wrap > .lm-tw { margin: 1.4em 0; }
.lm-caveat { margin: 2em 0 0; padding: 12px 14px; border-radius: 12px; background: var(--lm-tint-amber); font-size: 13.5px; line-height: 1.5; color: var(--page-muted); }
.lm-faq { margin: 26px 0 0; border: 1px solid var(--page-line); border-radius: 14px; background: var(--page-2); padding: 0 18px; }
.lm-faq summary { list-style: none; cursor: pointer; padding: 16px 0; font-weight: 650; font-size: 15.5px; display: flex; justify-content: space-between; gap: 14px; }
.lm-faq summary::-webkit-details-marker { display: none; }
.lm-faq summary::after { content: "+"; font: 400 20px/1 var(--mono); color: var(--page-faint); }
.lm-faq[open] summary::after { content: "\2212"; }
.lm-faq p { margin: 0 0 16px; font-size: 15px; line-height: 1.55; color: var(--page-muted); }

/* ---------- 5. content components (the fragments' classes, one skin) ---------- */
/* callouts */
.lm-body .callout, .lm-body .callout-gold, .lm-body .callout-green, .lm-body .callout-purple, .lm-body .rc-callout, .lm-body .insight, .lm-body .insight-box, .lm-body .inf-card, .lm-body .highlight { margin: 1.6em 0; padding: 18px 20px; border-radius: 16px; background: var(--lm-tint-blue); border: 1px solid color-mix(in srgb, var(--lm-blue) 22%, transparent); font-size: 16px; line-height: 1.6; }
.lm-body .callout p, .lm-body .callout-gold p, .lm-body .callout-green p, .lm-body .callout-purple p, .lm-body .rc-callout p, .lm-body .insight p, .lm-body .insight-box p { margin: 0 0 .7em; }
.lm-body .callout p:last-child, .lm-body .callout-gold p:last-child, .lm-body .callout-green p:last-child, .lm-body .callout-purple p:last-child, .lm-body .rc-callout p:last-child, .lm-body .insight p:last-child, .lm-body .insight-box p:last-child { margin-bottom: 0; }
.lm-body .callout-gold { background: var(--lm-tint-amber); border-color: color-mix(in srgb, var(--lm-amber) 30%, transparent); }
.lm-body .callout-green { background: var(--lm-tint-green); border-color: color-mix(in srgb, var(--lm-green) 30%, transparent); }
.lm-body .callout-purple { background: var(--lm-tint-purple); border-color: color-mix(in srgb, var(--lm-purple) 30%, transparent); }
.lm-body .insight, .lm-body .insight-box { background: var(--page-2); border-color: var(--page-line); border-left: 3px solid var(--c); }
.lm-body .insight-label, .lm-body .ib-label, .lm-body .rc-callout-kicker, .lm-body .callout-label, .lm-body .rc-callout-label, .lm-body .rc-ig-caption, .lm-body .rc-tk-hdr { display: block; margin: 0 0 8px; font: 600 12px/1.4 var(--mono); letter-spacing: .12em; text-transform: uppercase; color: var(--page-muted); }
.lm-body .ib-text, .lm-body .rc-callout-body, .lm-body .rc-tk-body { font-size: 16px; line-height: 1.6; }
.lm-body .rc-callout.tk, .lm-body .rc-tk-callout { background: var(--page-2); border: 1px solid var(--page-line); border-left: 3px solid var(--c); border-radius: 16px; padding: 18px 20px; margin: 1.6em 0; }
.lm-body .rc-tk-callout::before { content: "From Tanmay"; display: block; margin: 0 0 8px; font: 600 11px/1.4 var(--mono); letter-spacing: .12em; text-transform: uppercase; color: var(--page-muted); }
.lm-body .rc-tk-callout .rc-tk-hdr + .rc-tk-body { margin-top: 0; }
.lm-body .rc-tk-callout .rc-tk-hdr ~ *::before { content: none; }
/* source chips */
.lm-body .source-link { display: inline-flex; align-items: center; gap: 6px; min-height: 44px; padding: 4px 12px; margin: 4px 6px 4px 0; border-radius: 999px; border: 1px solid var(--page-line); background: var(--page-2); font-size: 13px; font-weight: 500; text-decoration: none !important; color: var(--page-text); }
.lm-body .source-link::before { content: "\2197"; font-size: 11px; color: var(--page-faint); }
/* infographic frames */
.lm-body .rc-infographic, .lm-body .infographic, .lm-body .lm-ig { margin: 1.8em 0; padding: 20px 20px 6px; border-radius: 20px; background: var(--page-2); border: 1px solid var(--page-line); }
.lm-body .lm-ig:empty { display: none; }
.lm-body .rc-ig-title, .lm-body .rc-infographic-title, .lm-body .infographic-title, .lm-body .rc-bar-title, .lm-body .rc-pie-title, .lm-body .rc-ig-subtitle, .lm-body .infographic-header { margin: 0 0 6px; font-weight: 650; font-size: 17px; line-height: 1.3; letter-spacing: -0.015em; }
.lm-body .rc-ig-sub, .lm-body .infographic-src, .lm-body .rc-ig-source, .lm-body .rc-infographic-note, .lm-body .rc-caption, .lm-body .rc-ig-caption, .lm-body .infographic-caption { margin: 10px 0 14px; font-size: 13.5px; line-height: 1.5; color: var(--page-muted); }
.lm-body .rc-ig-source, .lm-body .infographic-src { font: 400 12px/1.5 var(--mono); }
.lm-body .infographic-body { margin: 0; }
/* stat rows */
.lm-body .rc-stat-row, .lm-body .stat-row, .lm-body .ic-stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); gap: 10px; margin: 14px 0 16px; }
.lm-body .rc-stat, .lm-body .stat-card, .lm-body .ic-stat { position: relative; padding: 14px 14px 12px; border-radius: 14px; background: var(--page); border: 1px solid var(--page-line); min-width: 0; }
.lm-body .rc-stat::before { content: ""; position: absolute; left: 14px; right: 14px; top: 0; height: 3px; border-radius: 0 0 3px 3px; background: var(--c); }
.lm-body .rc-stat-num, .lm-body .stat-number, .lm-body .ic-stat-value { font: 600 clamp(22px, 2.2vw, 28px)/1.05 var(--mono); letter-spacing: -0.02em; color: var(--page-text); margin: 6px 0 6px; }
.lm-body .rc-stat-lbl, .lm-body .stat-label, .lm-body .ic-stat-label { font-size: 13px; line-height: 1.4; color: var(--page-muted); }
.lm-body .rc-stat-src { margin-top: 6px; font: 400 11px/1.4 var(--mono); color: var(--page-faint); }
/* flows */
.lm-body .rc-flow { display: grid; grid-template-columns: repeat(auto-fit, minmax(120px, 1fr)); gap: 8px; margin: 14px 0 16px; counter-reset: flow; }
.lm-body .rc-flow-node { position: relative; padding: 12px 12px 12px; border-radius: 12px; background: var(--page); border: 1px solid var(--page-line); min-width: 0; }
.lm-body .rc-flow-step, .lm-body .rc-flow-n { display: inline-block; margin-bottom: 8px; padding: 2px 8px; border-radius: 6px; background: color-mix(in srgb, var(--c) 55%, #05080F); color: #fff; font: 600 11px/1.5 var(--mono); letter-spacing: .06em; }
.lm-body .rc-flow-title, .lm-body .rc-flow-t { font-size: 14px; font-weight: 650; line-height: 1.3; margin: 0 0 3px; }
.lm-body .rc-flow-sub, .lm-body .rc-flow-d { font-size: 12.5px; line-height: 1.4; color: var(--page-muted); }
.lm-body .flow-chart { margin: 1.4em 0; overflow-x: auto; padding-bottom: 6px; }
.lm-body .flow-inner { display: flex; align-items: stretch; min-width: 0; gap: 0; }
.lm-body .flow-node { flex: 1; min-width: 0; padding: 10px 10px; border-radius: 10px; background: var(--page-2); border: 1px solid var(--page-line); text-align: center; }
.lm-body .flow-node.hl { background: var(--c); border-color: var(--c); color: #fff; }
.lm-body .fn-label { font: 600 11px/1.4 var(--mono); letter-spacing: .04em; overflow-wrap: anywhere; }
.lm-body .fn-sub { font-size: 11px; margin-top: 2px; opacity: .72; font-size: 12px; }
.lm-body .flow-arrow { flex-shrink: 0; display: flex; align-items: center; padding: 0 4px; color: var(--page-faint); }
.lm-body .flow-time { margin-top: 8px; text-align: center; font: 400 11.5px/1.4 var(--mono); color: var(--page-faint); }
/* bars */
.lm-body .rc-barchart, .lm-body .factor-bar-chart, .lm-body .comp-chart, .lm-body .bar-chart { margin: 14px 0 16px; padding: 14px 16px; border-radius: 14px; background: var(--page); border: 1px solid var(--page-line); }
.lm-body .rc-bar, .lm-body .rc-bar-row, .lm-body .factor-bar-row, .lm-body .comp-row { display: grid; grid-template-columns: minmax(110px, 160px) 1fr 64px; gap: 10px; align-items: center; padding: 8px 0; border-bottom: 1px dashed var(--page-line); }
.lm-body .rc-bar:last-child, .lm-body .rc-bar-row:last-child, .lm-body .factor-bar-row:last-child, .lm-body .comp-row:last-child { border-bottom: 0; }
.lm-body .rc-bar-label, .lm-body .rc-bar-lbl, .lm-body .factor-bar-label, .lm-body .comp-label { font-size: 13.5px; font-weight: 500; line-height: 1.3; }
.lm-body .rc-bar-label small { display: block; font-size: 11.5px; color: var(--page-faint); margin-top: 2px; }
.lm-body .rc-bar-track, .lm-body .factor-bar, .lm-body .comp-bar-wrap, .lm-body .bc-bar-wrap { height: 10px; border-radius: 6px; background: var(--page-line); overflow: hidden; position: relative; }
.lm-body .rc-bar-fill, .lm-body .factor-bar > div, .lm-body .comp-bar, .lm-body .bc-bar { height: 100%; border-radius: 6px; background: var(--c); }
.lm-body .rc-bar-fill.red { background: var(--lm-red); } .lm-body .rc-bar-fill.green, .lm-body .rc-bar-fill.good { background: var(--lm-green); } .lm-body .rc-bar-fill.amber { background: var(--lm-amber); }
.lm-body .rc-bar-val, .lm-body .comp-value, .lm-body .bc-val { font: 600 13px/1.3 var(--mono); text-align: right; font-variant-numeric: tabular-nums; }
/* pies */
.lm-body .rc-pie-row { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 12px; margin: 14px 0 16px; }
.lm-body .rc-pie-wrap, .lm-body .rc-pie-card { display: grid; grid-template-columns: 120px 1fr; gap: 16px; align-items: center; padding: 14px 16px; border-radius: 14px; background: var(--page); border: 1px solid var(--page-line); min-width: 0; }
.lm-body .rc-pie-wrap .rc-ig-subtitle, .lm-body .rc-pie-card .rc-pie-title { grid-column: 1 / -1; margin: 0 0 4px; font-size: 14.5px; }
.lm-body .rc-pie-svg, .lm-body .rc-pie { width: 120px; height: 120px; display: block; }
.lm-body .rc-pie-legend { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; min-width: 0; }
.lm-body .rc-pie-item, .lm-body .rc-pie-legend li, .lm-body .rc-pie-legend > div { display: grid; grid-template-columns: 12px 1fr auto; gap: 10px; align-items: center; font-size: 13px; line-height: 1.35; }
.lm-body .rc-pie-swatch, .lm-body .rc-pie-dot, .lm-body .legend-dot { width: 12px; height: 12px; border-radius: 3px; background: var(--c); }
.lm-body .rc-pie-pct { font: 600 12.5px/1.3 var(--mono); font-variant-numeric: tabular-nums; }
.lm-body .participants-chart { display: grid; grid-template-columns: 110px 1fr; gap: 16px; align-items: center; margin: 1.4em 0; padding: 16px; border-radius: 14px; background: var(--page-2); border: 1px solid var(--page-line); }
.lm-body .parts-legend { display: grid; gap: 8px; }
.lm-body .legend-item { display: flex; align-items: center; gap: 9px; font-size: 13.5px; }
/* chips, tickers */
.lm-body .rc-chips { display: flex; flex-wrap: wrap; gap: 8px; margin: 12px 0 16px; }
.lm-body .rc-chip, .lm-body .ticker-chip, .lm-body .entity-chip, .lm-body .rc-tag, .lm-body .access-tag, .lm-body .metric-badge, .lm-body .oc-tag, .lm-body .sc-tag, .lm-body .ic-badge { display: inline-flex; align-items: center; gap: 6px; padding: 5px 11px; border-radius: 999px; background: var(--page); border: 1px solid var(--page-line); font-size: 12.5px; font-weight: 500; line-height: 1.3; }
.lm-body .tc-sym { font: 600 12px/1.3 var(--mono); }
.lm-body .tc-div { color: var(--page-faint); }
.lm-body .tc-name { color: var(--page-muted); }
/* timelines */
.lm-body .rc-timeline, .lm-body .timeline { margin: 1.4em 0 1.4em 6px; padding: 4px 0 4px 20px; border-left: 2px solid var(--c); }
.lm-body .rc-timeline-item, .lm-body .tl-item { position: relative; padding: 6px 0 16px; }
.lm-body .rc-timeline-item::before, .lm-body .tl-item::before { content: ""; position: absolute; left: -27px; top: 12px; width: 12px; height: 12px; border-radius: 50%; background: var(--page); border: 3px solid var(--c); box-sizing: border-box; }
.lm-body .rc-timeline-date, .lm-body .tl-year { font: 600 12px/1.4 var(--mono); letter-spacing: .04em; color: var(--page-muted); margin-bottom: 3px; }
.lm-body .rc-timeline-title { font-weight: 650; font-size: 15px; }
.lm-body .rc-timeline-sub, .lm-body .tl-content { font-size: 14.5px; line-height: 1.55; color: var(--page-muted); }
.lm-body .tl-item { display: grid; grid-template-columns: 56px 1fr; gap: 10px; }
/* steps */
.lm-body .steps, .lm-body .rc-steps { margin: 1.4em 0; border: 1px solid var(--page-line); border-radius: 16px; overflow: hidden; background: var(--page-2); }
.lm-body .step, .lm-body .rc-step { display: grid; grid-template-columns: 32px 1fr; gap: 14px; padding: 14px 16px; border-bottom: 1px solid var(--page-line); }
.lm-body .step:last-child, .lm-body .rc-step:last-child { border-bottom: 0; }
.lm-body .step-num, .lm-body .rc-step-num { width: 30px; height: 30px; border-radius: 50%; background: color-mix(in srgb, var(--c) 55%, #05080F); color: #fff; display: grid; place-items: center; font: 600 12px/1 var(--mono); }
.lm-body .step-title { font-weight: 650; font-size: 15px; margin-bottom: 3px; }
.lm-body .step-desc, .lm-body .rc-step-body, .lm-body .step-content { font-size: 14.5px; line-height: 1.55; color: var(--page-muted); }
/* grids of cards */
.lm-body .two-col, .lm-body .three-col, .lm-body .three, .lm-body .compare-grid, .lm-body .bias-grid, .lm-body .evidence-grid, .lm-body .sizing-grid, .lm-body .exchange-compare, .lm-body .order-compare, .lm-body .ohlcv-card { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 12px; margin: 1.4em 0; }
.lm-body .col-card, .lm-body .three-card, .lm-body .compare-col, .lm-body .bias-card, .lm-body .bias-card2, .lm-body .evidence-card, .lm-body .sizing-card, .lm-body .formula-card, .lm-body .concept-card, .lm-body .exc-card, .lm-body .metric-card, .lm-body .factor-card, .lm-body .etf-card, .lm-body .bond-card, .lm-body .gold-card, .lm-body .deriv-card, .lm-body .combo-card, .lm-body .cycle-card, .lm-body .ml-card, .lm-body .mpt-card, .lm-body .oc-card, .lm-body .index-card, .lm-body .perf-card, .lm-body .cost-card, .lm-body .fs-card, .lm-body .ff-card, .lm-body .infl-card { padding: 16px 16px 14px; border-radius: 14px; background: var(--page-2); border: 1px solid var(--page-line); min-width: 0; font-size: 14.5px; line-height: 1.55; }
.lm-body .col-card h4, .lm-body .three-card h4, .lm-body .compare-header, .lm-body .bias-name, .lm-body .bias2-name, .lm-body .ev-label, .lm-body .sc-head, .lm-body .fc-label, .lm-body .exc-name, .lm-body .metric-title, .lm-body .factor-name, .lm-body .etf-title, .lm-body .gc-title, .lm-body .bc-title, .lm-body .dc-title, .lm-body .combo-name, .lm-body .cycle-factor, .lm-body .ml-name, .lm-body .mpt-label, .lm-body .oc-name, .lm-body .idx-name, .lm-body .perf-label, .lm-body .tc-title, .lm-body .ac-title, .lm-body .rc-title, .lm-body .cc-title, .lm-body .inf-title, .lm-body .fs-company { margin: 0 0 6px; font-weight: 650; font-size: 15px; line-height: 1.3; }
.lm-body .compare-header { padding: 0 0 8px; border-bottom: 1px solid var(--page-line); margin-bottom: 8px; }
.lm-body .compare-row { padding: 6px 0; border-bottom: 1px dashed var(--page-line); font-size: 14px; }
.lm-body .compare-row:last-child { border-bottom: 0; }
.lm-body .compare-col.gut, .lm-body .compare-col.market { border-top: 3px solid var(--lm-red); }
.lm-body .compare-col.rules, .lm-body .compare-col.limit, .lm-body .compare-col.systematic { border-top: 3px solid var(--lm-green); }
.lm-body .bias-example, .lm-body .bias2-example, .lm-body .ev-finding, .lm-body .sc-desc, .lm-body .fc-desc, .lm-body .metric-desc, .lm-body .factor-desc, .lm-body .etf-body, .lm-body .gc-body, .lm-body .bc-body, .lm-body .dc-body, .lm-body .combo-why, .lm-body .cycle-note, .lm-body .ml-body, .lm-body .oc-use, .lm-body .idx-note, .lm-body .cc-body, .lm-body .inf-body, .lm-body .rc-body, .lm-body .tc-body, .lm-body .ac-body, .lm-body .fs-note, .lm-body .ff-desc, .lm-body .ohlcv-note, .lm-body .bc-note, .lm-body .cc-note, .lm-body .perf-note, .lm-body .ff-note, .lm-body .mpt-point { font-size: 14px; line-height: 1.55; color: var(--page-muted); margin: 0; }
.lm-body .bias-cost, .lm-body .bias2-what, .lm-body .ev-source, .lm-body .sc-verdict, .lm-body .ml-verdict, .lm-body .combo-benefit, .lm-body .cycle-when-good, .lm-body .cycle-when-bad, .lm-body .factor-india, .lm-body .factor-signal, .lm-body .factor-tagline, .lm-body .alt-access, .lm-body .combo-factors { display: block; margin-top: 8px; font-size: 13px; line-height: 1.45; color: var(--page-muted); }
.lm-body .cycle-when-good::before { content: "Works when: "; font-weight: 650; color: var(--lm-green); }
.lm-body .cycle-when-bad::before { content: "Fails when: "; font-weight: 650; color: var(--lm-red); }
.lm-body .ev-source { font: 400 12px/1.5 var(--mono); }
.lm-body .fc-formula, .lm-body .sc-formula, .lm-body .metric-formula, .lm-body .perf-formula, .lm-body .ff-model { display: block; margin: 8px 0; padding: 10px 12px; border-radius: 10px; background: var(--lm-tint-blue); font: 500 13.5px/1.5 var(--mono); overflow-x: auto; white-space: nowrap; }
.lm-body .exc-tag { display: flex; align-items: center; gap: 10px; margin-bottom: 12px; }
.lm-body .exc-badge { width: 38px; height: 38px; border-radius: 10px; display: grid; place-items: center; color: #fff; font: 700 11px/1 var(--mono); background: var(--lr2); }
.lm-body .exc-badge.nse { background: var(--lm-blue); } .lm-body .exc-badge.bse { background: var(--lm-red); }
.lm-body .exc-sub { font: 400 11px/1.4 var(--mono); color: var(--page-faint); }
.lm-body .exc-facts { list-style: none; margin: 0; padding: 0; }
.lm-body .exc-facts li { display: flex; justify-content: space-between; gap: 10px; padding: 6px 0; border-bottom: 1px solid var(--page-line); font-size: 13.5px; }
.lm-body .exc-facts li:last-child { border-bottom: 0; }
.lm-body .fact-label { color: var(--page-muted); } .lm-body .fact-val { font-weight: 600; text-align: right; }
.lm-body .demat-tree { margin: 1.4em 0; display: grid; gap: 8px; justify-items: center; }
.lm-body .dt-node { padding: 10px 14px; border-radius: 12px; background: var(--page-2); border: 1px solid var(--page-line); font-size: 14px; text-align: center; min-width: 160px; }
.lm-body .dt-connector { width: 2px; height: 16px; background: var(--page-line); }
.lm-body .dt-duo { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; width: 100%; }
.lm-body .dt-note { font-size: 13px; color: var(--page-faint); text-align: center; }
.lm-body .checklist-item { display: grid; grid-template-columns: 24px 1fr; gap: 10px; padding: 8px 0; border-bottom: 1px dashed var(--page-line); font-size: 15px; }
.lm-body .ci-icon { color: var(--lm-green); font-weight: 700; }
.lm-body .ohlcv-cell { padding: 10px 12px; border-radius: 10px; background: var(--page-2); border: 1px solid var(--page-line); }
.lm-body .cell-label { font: 600 11px/1.4 var(--mono); letter-spacing: .08em; text-transform: uppercase; color: var(--page-faint); }
.lm-body .cell-value { font: 600 18px/1.2 var(--mono); margin-top: 4px; }
.lm-body .cost-table, .lm-body .fs-card { padding: 0; overflow: hidden; }
.lm-body .cost-table-header, .lm-body .fs-header, .lm-body .cc-header, .lm-body .bc-header { padding: 12px 16px; background: var(--lm-tint-blue); font-weight: 650; font-size: 14px; }
.lm-body .cost-table-title { font-weight: 650; }
.lm-body .cost-table-body { padding: 6px 16px; }
.lm-body .cost-row, .lm-body .fs-row, .lm-body .cc-row, .lm-body .bc-row, .lm-body .alt-row { display: flex; justify-content: space-between; gap: 12px; padding: 8px 0; border-bottom: 1px solid var(--page-line); font-size: 14px; }
.lm-body .cost-row:last-child, .lm-body .fs-row:last-child, .lm-body .cc-row:last-child, .lm-body .bc-row:last-child, .lm-body .alt-row:last-child { border-bottom: 0; }
.lm-body .cost-row.total, .lm-body .fs-row.total, .lm-body .cc-row.total { font-weight: 650; border-top: 2px solid var(--page-line); }
.lm-body .cost-row-value, .lm-body .fs-value, .lm-body .cc-value, .lm-body .bc-val { font: 600 13.5px/1.4 var(--mono); text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }
.lm-body .cost-row-label, .lm-body .fs-label, .lm-body .cc-label, .lm-body .bc-label { color: var(--page-muted); }
.lm-body .cc-sub { font-size: 12px; color: var(--page-faint); }
.lm-body .nse-indices { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 8px; margin: 1.2em 0; }
.lm-body .nse-idx { padding: 10px 12px; border-radius: 10px; background: var(--page-2); border: 1px solid var(--page-line); font-size: 13.5px; }
.lm-body .idx-factor { font: 600 11px/1.4 var(--mono); color: var(--page-faint); }
.lm-body .alt-grid, .lm-body .action-grid, .lm-body .concept-grid, .lm-body .combo-grid, .lm-body .cycle-grid, .lm-body .ml-grid, .lm-body .mpt-grid, .lm-body .etf-grid, .lm-body .bond-grid, .lm-body .gold-grid, .lm-body .deriv-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 12px; margin: 1.4em 0; }
.lm-body .acc-free { color: var(--lm-green); } .lm-body .acc-partial { color: var(--lm-amber); } .lm-body .acc-institutional { color: var(--lm-red); }
.lm-body .simple { border-top: 3px solid var(--lm-green); } .lm-body .moderate { border-top: 3px solid var(--lm-amber); } .lm-body .complex { border-top: 3px solid var(--lm-red); }
.lm-body .use { color: var(--lm-green); font-weight: 600; } .lm-body .avoid { color: var(--lm-red); font-weight: 600; } .lm-body .caution { color: var(--lm-amber); font-weight: 600; }
.lm-body .mark, .lm-body mark { background: var(--lm-tint-amber); color: inherit; padding: 0 3px; border-radius: 3px; }
.lm-body .ltcg { color: var(--lm-green); } .lm-body .growth { color: var(--lm-blue); }
.lm-body .factor-header { display: flex; align-items: center; gap: 10px; margin-bottom: 8px; }
.lm-body .factor-icon { width: 34px; height: 34px; border-radius: 10px; background: color-mix(in srgb, var(--c) 55%, #05080F); color: #fff; display: grid; place-items: center; font: 700 13px/1 var(--mono); }
.lm-body .metric-head, .lm-body .ml-head, .lm-body .sc-head { display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap; }
.lm-body .metric-num, .lm-body .perf-metric, .lm-body .mpt-label, .lm-body .ic-name { font: 600 13px/1.4 var(--mono); }
.lm-body .metric-sub, .lm-body .ic-sub { font-size: 12.5px; color: var(--page-faint); }
.lm-body .glossary, .lm-body .glossary-list { margin: 1.4em 0; border: 1px solid var(--page-line); border-radius: 14px; overflow: hidden; background: var(--page-2); }
.lm-body .glossary-header { padding: 12px 16px; background: var(--lm-tint-blue); font: 600 11px/1.4 var(--mono); letter-spacing: .1em; text-transform: uppercase; }
.lm-body .glossary-item { display: grid; grid-template-columns: minmax(120px, 160px) 1fr; border-bottom: 1px solid var(--page-line); }
.lm-body .glossary-item:last-child { border-bottom: 0; }
.lm-body .glossary-term { padding: 12px 14px; font: 600 13px/1.4 var(--mono); border-right: 1px solid var(--page-line); }
.lm-body .glossary-def { padding: 12px 14px; font-size: 14px; line-height: 1.55; color: var(--page-muted); }
.lm-body .ilogo { display: inline-flex; align-items: center; gap: 4px; padding: 1px 7px 1px 4px; border-radius: 6px; border: 1px solid var(--page-line); background: var(--page-2); font-size: 12.5px; font-weight: 600; vertical-align: middle; text-decoration: none !important; white-space: nowrap; }
.lm-body .ilogo img { width: 14px; height: 14px; border-radius: 3px; }
.lm-body .hero-lead { font-size: 18px; color: var(--page-muted); }
.lm-body .section { margin: 0; }
.lm-body .content-section { margin: 0; }
/* the panel layers get the same classes in the dark glass */
.lm-pnl .pl-body { overflow: auto; font-size: 14px; color: var(--page-text); }
.lm-pnl .pl-body > * { margin: 0; }
.lm-pnl .pl-body .rc-stat, .lm-pnl .pl-body .rc-flow-node, .lm-pnl .pl-body .rc-pie-wrap, .lm-pnl .pl-body .rc-barchart, .lm-pnl .pl-body .factor-bar-chart, .lm-pnl .pl-body .rc-pie-card, .lm-pnl .pl-body .stat-card, .lm-pnl .pl-body .comp-chart, .lm-pnl .pl-body .flow-node, .lm-pnl .pl-body .participants-chart, .lm-pnl .pl-body .dt-node, .lm-pnl .pl-body .exc-card, .lm-pnl .pl-body .rc-chip, .lm-pnl .pl-body .ticker-chip { background: rgba(255,255,255,.05); border-color: rgba(214,226,255,.14); }
.lm-pnl .pl-body .rc-stat-row, .lm-pnl .pl-body .stat-row { grid-template-columns: repeat(auto-fit, minmax(120px, 1fr)); margin: 0; }
.lm-pnl .pl-body .rc-flow, .lm-pnl .pl-body .rc-pie-row, .lm-pnl .pl-body .rc-barchart, .lm-pnl .pl-body .factor-bar-chart { margin: 0; }
.lm-pnl .pl-body .lm-tw { margin: 0; background: rgba(255,255,255,.03); border-color: rgba(214,226,255,.14); }
.lm-pnl .pl-body table { min-width: 0; font-size: 13px; }
.lm-pnl .pl-body thead tr, .lm-pnl .pl-body thead th { background: rgba(255,255,255,.06); }
.lm-pnl .pl-body th, .lm-pnl .pl-body td { border-color: rgba(214,226,255,.12); }
.lm-pnl .pl-body tbody tr:nth-child(even) td { background: rgba(255,255,255,.03); }
.lm-pnl .pl-body .rc-stat-num, .lm-pnl .pl-body .stat-number { font-size: clamp(20px, 2vw, 26px); }
.lm-pnl .pl-body .rc-stat::before { background: var(--c); }
.lm-pnl .pl-body .rc-bar-track, .lm-pnl .pl-body .factor-bar { background: rgba(214,226,255,.14); }
.lm-pnl .pl-body .rc-pie-svg, .lm-pnl .pl-body .rc-pie { width: 104px; height: 104px; }
.lm-pnl .pl-note { margin-top: 10px; }
.lm-pnl .pl-note > * { margin: 0; font: 400 12px/1.5 var(--mono); color: rgba(226,233,246,.66); }
.lm-pnl .lm-pnl-h { margin: 0; font-weight: 700; font-size: clamp(24px, 2.6vw, 40px); line-height: 1.05; letter-spacing: -0.035em; color: var(--page-text); }
.lm-pnl .lm-pnl-sub { margin: 12px 0 0; font-size: 14px; line-height: 1.5; color: var(--page-muted); max-width: 32em; }
.lm-pnl.pnl { background: var(--page); color: var(--page-text); margin: 1.8em calc(-1 * var(--pad)) 1.8em; }
.lm-pnl .pnl-sticky { padding-top: calc(var(--hdr) + 54px + 2vh); }
.lm-pnl .pnl-head .kicker { color: var(--page-muted); }
.lm-pnl .pnl-head .kicker .num { color: var(--page-text); border-color: var(--page-line); }
.lm-pnl .pnl-steps li { color: var(--page-faint); }
.lm-pnl .pnl-steps li.is-on { color: var(--page-text); background: var(--page-2); box-shadow: 0 0 0 1px var(--page-line); }
.lm-pnl .pnl-steps li small { color: var(--page-muted); }
.lm-pnl .pnl-bar { background: var(--page-line); }
.lm-pnl .pnl-bar i { background: var(--c); }
/* stacked: phones and reduced motion show the layers as plain cards (learn/page.js sets is-stack before panel.js runs) */
.lm-pnl.is-stack { height: auto; margin: 1.6em 0; padding: 18px 16px; border-radius: 20px; background: var(--page-2); border: 1px solid var(--page-line); }
.lm-pnl.is-stack .pnl-sticky { position: static; height: auto; display: block; padding: 0; max-width: none; }
.lm-pnl.is-stack .pnl-steps, .lm-pnl.is-stack .pnl-bar { display: none; }
.lm-pnl.is-stack .pnl-screen { aspect-ratio: auto; max-height: none; border-radius: 0; padding: 0; perspective: none; margin-top: 16px; }
.lm-pnl.is-stack .pnl-glass { position: static; inset: auto; border-radius: 0; background: none; overflow: visible; }
.lm-pnl.is-stack .pnl-glass::before, .lm-pnl.is-stack .pnl-glass::after { display: none; }
.lm-pnl.is-stack .pl { position: relative; inset: auto; margin: 0 0 12px; border-radius: 16px; padding: 14px 14px 12px; transform: none !important; opacity: 1 !important; filter: none !important; pointer-events: auto; will-change: auto; }
.lm-pnl.is-stack .pl::after { display: none; }
.lm-pnl.is-stack .pl-body { overflow: visible; }
.lm-pnl.is-stack .pl-body > svg { position: static; height: auto; }
.lm-pnl.is-stack .pl-title { font-size: 17px; }
.lm-pnl.is-stack .lm-pnl-h { font-size: 22px; }

/* ---------- 6. try it, apply it, quiz, path test ---------- */
.lm-try, .lm-apply, .lm-quiz, .lm-test { max-width: 1240px; margin: clamp(36px, 6vw, 72px) auto 0; padding: 0 var(--pad); }
.lm-screen { border-radius: 22px; padding: 1px; background: linear-gradient(135deg, rgba(127,178,255,.35), rgba(127,178,255,0) 40%, rgba(61,220,151,.2)); box-shadow: 0 30px 70px -40px rgba(5,8,15,.5); }
.lm-screen-in { border-radius: 21px; background: var(--page-2); border: 1px solid var(--page-line); padding: clamp(18px, 3vw, 32px); }
.lm-try .lm-screen { max-width: 760px; }
.rc-calc { font-size: 15px; }
.rc-calc-head { margin-bottom: 14px; }
.rc-calc-eyebrow { font: 600 11px/1.4 var(--mono); letter-spacing: .12em; text-transform: uppercase; color: var(--page-faint); }
.rc-calc-title { margin: 6px 0 4px; font-size: 19px; font-weight: 650; letter-spacing: -0.015em; }
.rc-calc-sub { margin: 0; font-size: 14px; color: var(--page-muted); }
.rc-calc-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 12px; margin: 14px 0; }
.rc-calc label, .lm-gate label { display: grid; gap: 6px; font-size: 13px; font-weight: 600; color: var(--page-muted); }
.rc-calc input, .rc-calc select, .lm-gate input { width: 100%; box-sizing: border-box; min-height: 46px; padding: 0 14px; border-radius: 12px; border: 1px solid var(--page-line); background: var(--page); color: var(--page-text); font: 500 16px/1.2 var(--mono); }
.rc-calc input:focus-visible, .lm-gate input:focus-visible { outline: 2px solid var(--c); outline-offset: 1px; }
.rc-calc-output { display: grid; gap: 4px; margin-top: 8px; }
.rc-calc-row { display: flex; justify-content: space-between; gap: 14px; padding: 10px 0; border-bottom: 1px dashed var(--page-line); font-size: 14.5px; }
.rc-calc-row span:last-child { font: 600 14.5px/1.4 var(--mono); font-variant-numeric: tabular-nums; text-align: right; }
.rc-calc-row.main { font-weight: 650; font-size: 16px; border-bottom: 2px solid var(--page-line); }
.rc-calc-row.main span:last-child { font-size: 18px; color: var(--c); }
.rc-calc-row.warn { color: var(--lm-red); border: 0; }
.rc-calc-note, .rc-calc .note { margin-top: 10px; font-size: 13px; color: var(--page-faint); }
.lm-apply-in { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: clamp(22px, 4vw, 48px); align-items: center; padding: clamp(22px, 4vw, 44px); border-radius: 24px; background: var(--page-2); border: 1px solid var(--page-line); }
.lm-apply-copy h2 { margin: 0; font-weight: 700; font-size: clamp(26px, 2.8vw, 40px); line-height: 1.05; letter-spacing: -0.03em; }
.lm-apply-copy p { margin: 14px 0 0; font-size: 16px; line-height: 1.55; color: var(--page-muted); max-width: 34em; }
.lm-apply-copy .ctas { margin-top: 22px; }
.lm-tile { display: block; padding: 18px 18px 14px; border-radius: 18px; background: var(--page); border: 1px solid var(--page-line); color: var(--page-text); text-decoration: none; }
.lm-tile svg { display: block; width: 100%; height: 120px; }
.lm-tile-fig { display: grid; grid-template-columns: repeat(auto-fit, minmax(90px, 1fr)); gap: 10px; margin-top: 12px; }
.lm-tile-fig > span { display: grid; gap: 2px; font: 600 15px/1.2 var(--mono); }
.lm-tile-fig em { font: 500 11px/1.4 var(--mono); font-style: normal; letter-spacing: .08em; text-transform: uppercase; color: var(--page-faint); }
.lm-tile-note { display: block; margin-top: 12px; font-size: 12px; line-height: 1.45; color: var(--page-faint); }
.lm-qform { max-width: 760px; }
.lm-q { margin: 0 0 18px; padding: 18px 18px 12px; border: 1px solid var(--page-line); border-radius: 18px; background: var(--page-2); min-width: 0; }
.lm-q legend { float: left; width: 100%; margin: 0 0 12px; padding: 0; font-size: 16.5px; font-weight: 650; line-height: 1.4; display: grid; grid-template-columns: 30px 1fr; gap: 10px; }
.lm-q legend b { font: 500 12px/1.9 var(--mono); color: var(--page-faint); }
.lm-opts { clear: both; display: grid; gap: 8px; }
.lm-opts label { position: relative; display: grid; grid-template-columns: 22px 1fr; gap: 12px; align-items: start; min-height: 46px; padding: 11px 14px; border-radius: 12px; border: 1px solid var(--page-line); background: var(--page); cursor: pointer; font-size: 15px; line-height: 1.45; transition: border-color .2s, background .2s; }
.lm-opts label:hover { border-color: color-mix(in srgb, var(--c) 50%, var(--page-line)); }
.lm-opts input { appearance: none; -webkit-appearance: none; width: 18px; height: 18px; margin: 3px 0 0; border-radius: 50%; border: 2px solid var(--page-faint); background: var(--page-2); }
.lm-opts input:checked { border-color: var(--c); box-shadow: inset 0 0 0 4px var(--page-2); background: var(--c); }
.lm-opts input:focus-visible { outline: 2px solid var(--c); outline-offset: 2px; }
.lm-opts label.is-ok { border-color: var(--lm-green); background: var(--lm-tint-green); }
.lm-opts label.is-no { border-color: var(--lm-red); background: var(--lm-tint-red); }
.lm-explain { margin: 10px 0 4px; padding: 10px 12px; border-radius: 10px; font-size: 14px; line-height: 1.5; background: var(--lm-tint-blue); color: var(--page-muted); }
.lm-explain.is-ok { background: var(--lm-tint-green); } .lm-explain.is-no { background: var(--lm-tint-red); }
.lm-qfoot { display: flex; flex-wrap: wrap; align-items: center; gap: 14px; margin-top: 6px; }
.lm-qres { margin: 0; font-size: 15px; font-weight: 600; }
.lm-qres.is-ok { color: var(--lm-green); } .lm-qres.is-no { color: var(--lm-red); }
.lm-pt-pre { max-width: 760px; padding: 22px; border-radius: 20px; background: var(--page-2); border: 1px solid var(--page-line); }
.lm-pt-facts { list-style: none; margin: 0 0 18px; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.lm-pt-facts li { display: grid; gap: 2px; padding: 12px 14px; border-radius: 12px; background: var(--page); border: 1px solid var(--page-line); }
.lm-pt-facts b { font: 600 24px/1.1 var(--mono); }
.lm-pt-facts span { font-size: 12.5px; color: var(--page-muted); }
.lm-pt-note { margin: 14px 0 0; font-size: 13.5px; color: var(--page-faint); }
.lm-pt-count { position: sticky; top: calc(var(--hdr) + 54px); z-index: 5; margin: 0 0 14px; padding: 10px 14px; border-radius: 12px; background: var(--page-glass); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); border: 1px solid var(--page-line); font: 500 13px/1.4 var(--mono); }
.lm-pt-pass { max-width: 760px; margin-top: 22px; padding: 22px; border-radius: 20px; background: var(--page-2); border: 1px solid var(--page-line); }
.lm-pt-pass h3 { margin: 0 0 14px; font-size: clamp(22px, 2.4vw, 30px); letter-spacing: -0.025em; }
.lm-gate { display: grid; gap: 12px; max-width: 460px; }
.lm-gate p { margin: 0; font-size: 14.5px; color: var(--page-muted); }
.lm-gate-note { color: var(--lm-green) !important; font-weight: 600; }
.lm-cert { margin-top: 18px; }
.lm-cert canvas { display: block; width: 100%; height: auto; border-radius: 12px; border: 1px solid var(--page-line); background: #fff; }
.lm-cert .ctas { margin-top: 14px; }

/* ---------- 7. author note, sources, terms, keep going ---------- */
.lm-note { padding: 22px 22px 18px; border-radius: 20px; background: var(--page-2); border: 1px solid var(--page-line); border-left: 4px solid var(--c); }
.lm-note h2 { margin: 0 0 10px; font-size: clamp(20px, 2vw, 26px); letter-spacing: -0.02em; line-height: 1.2; }
.lm-note-body { font-size: 15.5px; line-height: 1.6; color: var(--page-muted); }
.lm-note-body p { margin: 0 0 .9em; }
.lm-note-sig { margin: 8px 0 0; display: grid; gap: 2px; font-size: 13.5px; }
.lm-note-sig span { color: var(--page-faint); }
.lm-sources ol { margin: 0; padding-left: 1.3em; font-size: 14.5px; line-height: 1.5; color: var(--page-muted); }
.lm-sources li { margin: 0 0 8px; }
.lm-sources a { color: var(--page-text); text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }
.lm-gloss dl { margin: 0; display: grid; gap: 8px; }
.lm-gloss dl > div { padding: 12px 14px; border-radius: 12px; background: var(--page-2); border: 1px solid var(--page-line); }
.lm-gloss dt { font-weight: 650; font-size: 15px; margin-bottom: 3px; }
.lm-gloss dt a { color: inherit; text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; text-decoration-color: var(--page-faint); }
.lm-gloss dd { margin: 0; font-size: 14.5px; line-height: 1.5; color: var(--page-muted); }
.lm-gloss-all { margin: 14px 0 0; font-size: 14.5px; font-weight: 600; }
.lm-gloss-all a, .lm-nx, .lm-hear { color: var(--page-text); }
.lm-gloss-all svg { width: 14px; height: 14px; vertical-align: -2px; }
.lm-next { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.lm-more { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-top: 10px; }
.lm-nx, .lm-hear { display: grid; gap: 4px; align-content: start; min-height: 44px; padding: 16px 18px; border-radius: 16px; background: var(--page-2); border: 1px solid var(--page-line); text-decoration: none; transition: border-color .25s, transform .3s var(--ease); }
.lm-nx:hover, .lm-hear:hover { border-color: var(--c); transform: translateY(-2px); }
.lm-nx-l { font: 500 12px/1.4 var(--mono); letter-spacing: .12em; text-transform: uppercase; color: var(--page-faint); }
.lm-nx b, .lm-hear b { font-size: 15.5px; font-weight: 650; line-height: 1.3; letter-spacing: -0.01em; }
.lm-nx small, .lm-hear small { font-size: 13px; color: var(--page-muted); }
.lm-nx[rel="next"] { border-color: color-mix(in srgb, var(--c) 45%, var(--page-line)); }

/* ---------- 8. path pages ---------- */
.lp-hero.pg-hero-short { min-height: 68svh; }
.lp-hero .kicker a { color: inherit; }
.lp-hero .chips li { min-width: 120px; }
.lp { padding-bottom: 20px; }
.lp-in { max-width: 1240px; margin: 0 auto; padding: 0 var(--pad); }
.lp-rail-sec, .lp-out, .lp-cert, .lp-faq, .lp-nextp { padding: clamp(40px, 6vw, 84px) 0 0; }
.lp-sub { margin: 14px 0 0; font-size: 16px; line-height: 1.55; color: var(--page-muted); max-width: 34em; }
.lp-rail-grid { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: clamp(24px, 4vw, 64px); align-items: start; }
.lp-rail-copy { position: sticky; top: calc(var(--hdr) + 24px); }
.lp-ring { display: flex; align-items: center; gap: 16px; margin-top: 24px; }
.lp-ring svg { width: 84px; height: 84px; transform: rotate(-90deg); }
.lp-ring circle { fill: none; stroke: var(--page-line); stroke-width: 8; }
.lp-ring .lp-ring-v { stroke: var(--c); stroke-linecap: round; stroke-dasharray: 326.7; stroke-dashoffset: calc(326.7 * (1 - var(--p, 0))); transition: stroke-dashoffset 1s var(--ease); }
.lp-ring p { margin: 0; display: grid; gap: 2px; }
.lp-ring b { font: 600 26px/1 var(--mono); }
.lp-ring span { font-size: 13px; color: var(--page-muted); max-width: 14em; }
.lp-stops { position: relative; list-style: none; margin: 0; padding: 0 0 0 10px; display: grid; gap: 10px; }
.lp-stops::before { content: ""; position: absolute; left: 20px; top: 28px; bottom: 28px; width: 4px; border-radius: 4px; background: var(--c); opacity: .9; }
.lp-stops li { opacity: 0; transform: translateY(8px); animation: lpIn .5s var(--ease) forwards; animation-delay: calc(var(--k, 0) * 60ms); }
@keyframes lpIn { to { opacity: 1; transform: none; } }
.lp-stop { position: relative; display: grid; grid-template-columns: 24px 56px minmax(0, 1fr) auto; grid-template-areas: "dot n t m" "dot n s m"; column-gap: 12px; row-gap: 2px; align-items: center; min-height: 72px; padding: 14px 16px 14px 0; border-radius: 16px; background: var(--page-2); border: 1px solid var(--page-line); color: var(--page-text); text-decoration: none; transition: border-color .25s, transform .3s var(--ease); }
.lp-stop:hover { border-color: var(--c); transform: translateX(4px); }
.lp-stop::before { content: ""; grid-area: dot; width: 16px; height: 16px; margin-left: 2px; border-radius: 50%; background: var(--page-2); border: 3px solid var(--c); box-sizing: border-box; position: relative; z-index: 1; }
.lp-stop[data-final]::before { background: var(--c); }
.lp-stop-n { grid-area: n; font: 600 14px/1 var(--mono); color: var(--page-muted); }
.lp-stop-t { grid-area: t; font-size: 16.5px; font-weight: 650; line-height: 1.3; letter-spacing: -0.01em; }
.lp-stop-s { grid-area: s; font-size: 13.5px; line-height: 1.4; color: var(--page-muted); }
.lp-stop-m { grid-area: m; font: 500 12px/1.4 var(--mono); color: var(--page-faint); white-space: nowrap; }
.lp-tick { grid-area: m; display: none; width: 26px; height: 26px; border-radius: 50%; background: var(--lm-green); color: #fff; place-items: center; justify-self: end; }
.lp-tick svg { width: 14px; height: 14px; }
.lp-stop.is-done .lp-tick { display: grid; }
.lp-stop.is-done .lp-stop-m { display: none; }
.lp-stop.is-done::before { background: var(--lm-green); border-color: var(--lm-green); }
.lp-stops-grid { padding: 0; gap: 10px; }
.lp-stops-grid::before { display: none; }
.lp-stops-grid .lp-stop { grid-template-columns: 56px minmax(0, 1fr) auto; grid-template-areas: "n t m" "n s m"; padding-left: 16px; }
.lp-stops-grid .lp-stop::before { display: none; }
.lp-outcomes { list-style: none; margin: 22px 0 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 10px; }
.lp-outcomes li { display: grid; grid-template-columns: 34px 1fr; gap: 12px; align-items: start; padding: 16px 18px; border-radius: 16px; background: var(--page-2); border: 1px solid var(--page-line); font-size: 15.5px; line-height: 1.5; }
.lp-outcomes li i { font: 500 12px/1.6 var(--mono); font-style: normal; color: var(--page-faint); padding: 2px 6px; border: 1px solid var(--page-line); border-radius: 6px; justify-self: start; }
.lp-cert-grid, .lp-faq-grid { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: clamp(22px, 4vw, 64px); align-items: start; }
.lp-cert-steps { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.lp-cert-steps li { display: grid; grid-template-columns: 36px 1fr; gap: 14px; align-items: start; padding: 16px 18px; border-radius: 16px; background: var(--page-2); border: 1px solid var(--page-line); }
.lp-cert-steps b { width: 32px; height: 32px; border-radius: 50%; background: color-mix(in srgb, var(--c) 55%, #05080F); color: #fff; display: grid; place-items: center; font: 600 13px/1 var(--mono); }
.lp-cert-steps span { display: grid; gap: 3px; font-size: 15.5px; font-weight: 650; line-height: 1.35; }
.lp-cert-steps small { font-size: 13.5px; font-weight: 400; color: var(--page-muted); }
.lp-cert-go { margin-top: 18px; grid-column: 2; justify-self: start; }
.lp-faqs details { border-bottom: 1px solid var(--page-line); }
.lp-faqs summary { list-style: none; cursor: pointer; display: flex; justify-content: space-between; gap: 16px; padding: 18px 0; font-size: 16.5px; font-weight: 600; line-height: 1.35; }
.lp-faqs summary::-webkit-details-marker { display: none; }
.lp-faqs summary::after { content: "+"; font: 400 22px/1 var(--mono); color: var(--page-faint); flex-shrink: 0; }
.lp-faqs details[open] summary::after { content: "\2212"; }
.lp-faqs p { margin: 0 0 18px; font-size: 15.5px; line-height: 1.55; color: var(--page-muted); max-width: 40em; }
.lp-faqs a { color: var(--page-text); text-decoration: underline; text-underline-offset: 3px; }
.lp-next-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 10px; margin-top: 22px; }
.lp-nextp .lm-fine { margin-top: 30px; }
/* pillar body: hand written sections and module lists */
.lm-pillar-body .section { margin: 0 0 1.5em; }
.lm-pillar-body .section h2:first-child { margin-top: 1.6em; }
.lm-pillar-body .module-list { margin: 1.2em 0 1.8em; }
.lm-pillar-body .module-card { margin: 0; }
.lx-pillarpage .lm-wrap { padding-top: 10px; }

/* ---------- 9. tools ---------- */
.lt { padding-bottom: 30px; }
.lt-chips { position: sticky; top: var(--hdr); z-index: 30; background: var(--page-glass); backdrop-filter: blur(18px) saturate(140%); -webkit-backdrop-filter: blur(18px) saturate(140%); border-bottom: 1px solid var(--page-line); }
.lt-chips-in { max-width: 1240px; margin: 0 auto; padding: 8px var(--pad); display: flex; gap: 8px; overflow-x: auto; scrollbar-width: none; }
.lt-chips-in::-webkit-scrollbar { display: none; }
.lt-chips a { flex-shrink: 0; display: inline-flex; align-items: center; min-height: 44px; padding: 0 14px; border-radius: 999px; border: 1px solid var(--page-line); background: var(--page-2); color: var(--page-text); font-size: 13.5px; font-weight: 600; text-decoration: none; white-space: nowrap; }
.lt-chips a:hover, .lt-chips a.is-here { border-color: var(--c); }
.lt-tool { max-width: 1240px; margin: 0 auto; padding: clamp(40px, 6vw, 80px) var(--pad) 0; scroll-margin-top: calc(var(--hdr) + 60px); }
.lt-tool-in { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: clamp(22px, 4vw, 56px); align-items: start; }
.lt-copy h2 { margin: 0; font-weight: 700; font-size: clamp(24px, 2.6vw, 36px); line-height: 1.08; letter-spacing: -0.03em; }
.lt-guide { margin-top: 18px; }
.lt-guide details { border-top: 1px solid var(--page-line); }
.lt-guide details:last-child { border-bottom: 1px solid var(--page-line); }
.lt-guide summary { list-style: none; cursor: pointer; display: flex; justify-content: space-between; gap: 14px; padding: 14px 0; font-size: 15.5px; font-weight: 600; line-height: 1.35; }
.lt-guide summary::-webkit-details-marker { display: none; }
.lt-guide summary::after { content: "+"; font: 400 20px/1 var(--mono); color: var(--page-faint); flex-shrink: 0; }
.lt-guide details[open] summary::after { content: "\2212"; }
.lt-guide details > div { padding: 0 0 16px; font-size: 15px; line-height: 1.55; color: var(--page-muted); }
.lt-guide details > div p { margin: 0 0 .8em; }
.lt-guide details > div ul { margin: 0 0 .8em; padding-left: 1.2em; }
.lt-guide .formula, .lt-guide code { display: inline-block; padding: 2px 8px; border-radius: 8px; background: var(--lm-tint-blue); font: 500 13.5px/1.6 var(--mono); }
.lt-rel { display: inline-flex; align-items: center; gap: 6px; min-height: 44px; margin-top: 10px; font-size: 14.5px; font-weight: 600; color: var(--page-text); }
.lt-rel svg { width: 14px; height: 14px; }
.lt-screen { position: sticky; top: calc(var(--hdr) + 64px); }
.tool-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.tool-inputs { display: grid; gap: 16px; align-content: start; }
.tool-results { display: grid; gap: 10px; align-content: start; }
.ti-label { display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-bottom: 8px; }
.ti-name { font-size: 13.5px; font-weight: 600; }
.ti-val { font: 600 13px/1.4 var(--mono); padding: 3px 10px; border-radius: 6px; background: var(--lm-tint-blue); min-width: 60px; text-align: center; }
.ti-slider { -webkit-appearance: none; appearance: none; width: 100%; height: 44px; background: transparent; outline: none; cursor: pointer; margin: 0; }
.ti-slider::-webkit-slider-runnable-track { height: 6px; border-radius: 3px; background: var(--page-line); }
.ti-slider::-moz-range-track { height: 6px; border-radius: 3px; background: var(--page-line); }
.ti-slider::-webkit-slider-thumb { -webkit-appearance: none; width: 28px; height: 28px; border-radius: 50%; background: var(--c); border: 3px solid var(--page-2); box-shadow: 0 1px 6px rgba(5,8,15,.25); cursor: pointer; margin-top: -11px; }
.ti-slider::-moz-range-thumb { width: 28px; height: 28px; border-radius: 50%; background: var(--c); border: 3px solid var(--page-2); cursor: pointer; }
.ti-slider:focus-visible { outline: 2px solid var(--c); outline-offset: 4px; }
.tool-inputs select, .tool-inputs input[type="number"], .tool-inputs input[type="text"] { width: 100%; box-sizing: border-box; min-height: 46px; padding: 0 12px; border-radius: 12px; border: 1px solid var(--page-line); background: var(--page); color: var(--page-text); font: 500 15px/1.2 var(--mono); }
.tr-card { padding: 14px 16px; border-radius: 14px; background: var(--page); border: 1px solid var(--page-line); }
.tr-label { font: 600 11px/1.4 var(--mono); letter-spacing: .08em; text-transform: uppercase; color: var(--page-faint); margin-bottom: 4px; }
.tr-value { font: 700 22px/1.2 var(--mono); letter-spacing: -0.02em; }
.tr-sub { font-size: 12.5px; color: var(--page-muted); margin-top: 2px; }
.tr-card.green { background: var(--lm-tint-green); } .tr-card.green .tr-value { color: var(--lm-green); }
.tr-card.amber { background: var(--lm-tint-amber); } .tr-card.amber .tr-value { color: var(--lm-amber); }
.tr-card.red { background: var(--lm-tint-red); } .tr-card.red .tr-value { color: var(--lm-red); }
.tool-note { font-size: 13px; color: var(--page-faint); }
.lt-dir { padding-top: clamp(40px, 6vw, 80px); }
.lt-dir-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 14px; margin-top: 26px; }
.lt-dir-group { padding: 18px 18px 10px; border-radius: 18px; background: var(--page-2); border: 1px solid var(--page-line); border-top: 4px solid var(--c); }
.lt-dir-group h3 { margin: 0 0 10px; font-size: 16px; font-weight: 650; display: flex; gap: 10px; align-items: baseline; }
.lt-dir-group h3 span { font: 500 12px/1.6 var(--mono); color: var(--page-faint); }
.lt-dir-group ul { list-style: none; margin: 0; padding: 0; }
.lt-dir-group li a { display: grid; grid-template-columns: 1fr auto; grid-template-areas: "t m" "s m"; column-gap: 10px; min-height: 44px; padding: 9px 0; border-top: 1px solid var(--page-line); color: var(--page-text); text-decoration: none; }
.lt-dir-group li a b { grid-area: t; font-size: 14.5px; font-weight: 600; line-height: 1.3; }
.lt-dir-group li a span { grid-area: s; font-size: 12.5px; line-height: 1.4; color: var(--page-muted); }
.lt-dir-group li a small { grid-area: m; align-self: center; font: 500 11px/1.4 var(--mono); color: var(--page-faint); white-space: nowrap; }

/* ---------- 10. glossary ---------- */
.lg { padding-bottom: 30px; }
.lg-tools { position: sticky; top: var(--hdr); z-index: 30; background: var(--page-glass); backdrop-filter: blur(18px) saturate(140%); -webkit-backdrop-filter: blur(18px) saturate(140%); border-bottom: 1px solid var(--page-line); }
.lg-tools-in { max-width: 1240px; margin: 0 auto; padding: 10px var(--pad); display: grid; grid-template-columns: minmax(200px, 360px) 1fr auto; gap: 12px; align-items: center; }
.lg-box { display: flex; align-items: center; gap: 10px; min-height: 44px; padding: 0 14px; border-radius: 999px; border: 1px solid var(--page-line); background: var(--page-2); }
.lg-box svg { width: 18px; height: 18px; color: var(--page-faint); flex-shrink: 0; }
.lg-box input { flex: 1; min-width: 0; height: 44px; border: 0; background: none; color: var(--page-text); font: 500 15px/1.2 Inter, "Inter Fallback", sans-serif; outline: none; }
.lg-az { display: flex; gap: 2px; min-width: 0; overflow-x: auto; scrollbar-width: none; }
.lg-az::-webkit-scrollbar { display: none; }
.lg-az a { display: inline-grid; place-items: center; min-width: 40px; height: 44px; border-radius: 8px; font: 600 13px/1 var(--mono); color: var(--page-muted); text-decoration: none; }
.lg-az a:hover { background: var(--page-2); color: var(--page-text); }
.lg .lx-status { margin: 0; font: 500 12px/1.4 var(--mono); color: var(--page-faint); white-space: nowrap; }
.lg-list { max-width: 1240px; margin: 0 auto; padding: 24px var(--pad) 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 12px; }
.lg-letter { grid-column: 1 / -1; margin: 22px 0 0; scroll-margin-top: calc(var(--hdr) + 70px); }
.lg-letter h2 { margin: 0; font: 600 13px/1 var(--mono); letter-spacing: .14em; color: var(--page-faint); padding-bottom: 10px; border-bottom: 1px solid var(--page-line); }
.lg-term { padding: 16px 18px; border-radius: 16px; background: var(--page-2); border: 1px solid var(--page-line); scroll-margin-top: calc(var(--hdr) + 70px); min-width: 0; }
.lg-term:target { border-color: var(--c); box-shadow: 0 0 0 3px color-mix(in srgb, var(--c) 25%, transparent); }
.lg-term dt { font-size: 16.5px; font-weight: 650; letter-spacing: -0.01em; margin: -10px 0 0; display: flex; flex-wrap: wrap; gap: 8px; align-items: baseline; }
.lg-term dt a { color: inherit; text-decoration: none; display: inline-flex; align-items: center; min-height: 44px; }
.lg-term dt small { font-size: 12px; font-weight: 400; color: var(--page-faint); }
.lg-term dd { margin: 0; }
.lg-term dd p { margin: 0; font-size: 14.5px; line-height: 1.55; color: var(--page-muted); }
.lg-used { margin-top: 8px !important; font: 500 12.5px/1.5 var(--mono) !important; color: var(--page-faint) !important; }
.lg-used a { color: var(--page-text); text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }
.lg-term.is-hidden, .lg-letter.is-hidden { display: none; }

/* ---------- 11. phones ---------- */
@media (max-width: 860px) {
  .lm-hero { grid-template-columns: 1fr; gap: 18px; padding-top: 14px; }
  .lm-head h1 { font-size: clamp(28px, 8vw, 36px); }
  .lm-head .hero-lead { font-size: 16.5px; }
  .lm-head .chips { gap: 8px; }
  .lm-head .chips li { padding: 9px 12px; }
  .lm-bar { grid-template-columns: auto minmax(0, 1fr) auto; gap: 10px; height: 54px; }
  .lm-bar-path { font-size: 11px; }
  .lm-bar-next { padding: 0 10px 0 12px; }
  .lm-body { font-size: 17px; }
  .lm-body h2 { font-size: 24px; }
  .lm-body .rc-pie-wrap, .lm-body .rc-pie-card { grid-template-columns: 96px 1fr; gap: 12px; }
  .lm-body .rc-pie-svg, .lm-body .rc-pie { width: 96px; height: 96px; }
  .lm-body .rc-bar, .lm-body .rc-bar-row, .lm-body .factor-bar-row, .lm-body .comp-row { grid-template-columns: 1fr 56px; grid-template-areas: "l v" "b b"; gap: 4px 10px; }
  .lm-body .rc-bar > :nth-child(1), .lm-body .rc-bar-row > :nth-child(1), .lm-body .factor-bar-row > :nth-child(1), .lm-body .comp-row > :nth-child(1) { grid-area: l; }
  .lm-body .rc-bar > :nth-child(2), .lm-body .rc-bar-row > :nth-child(2), .lm-body .factor-bar-row > :nth-child(2), .lm-body .comp-row > :nth-child(2) { grid-area: b; }
  .lm-body .rc-bar > :nth-child(3), .lm-body .rc-bar-row > :nth-child(3), .lm-body .factor-bar-row > :nth-child(3), .lm-body .comp-row > :nth-child(3) { grid-area: v; }
  .lm-body .rc-stat-row, .lm-body .stat-row, .lm-body .ic-stats { grid-template-columns: 1fr 1fr; gap: 8px; }
  .lm-body .rc-flow { grid-template-columns: 1fr 1fr; }
  .lm-body .participants-chart { grid-template-columns: 1fr; }
  .lm-body .glossary-item { grid-template-columns: 1fr; }
  .lm-body .glossary-term { border-right: 0; border-bottom: 1px dashed var(--page-line); padding-bottom: 6px; }
  .lm-body .lp-stop, .lp-stop { grid-template-columns: 24px 44px minmax(0, 1fr); grid-template-areas: "dot n t" "dot n s" "dot n m"; min-height: 64px; padding: 12px 14px 12px 0; }
  .lp-stops-grid .lp-stop { grid-template-columns: 44px minmax(0, 1fr); grid-template-areas: "n t" "n s" "n m"; padding-left: 14px; }
  .lp-stop:hover { transform: none; }
  .lp-tick { grid-area: t; justify-self: end; align-self: start; }
  .lp-stop.is-done .lp-stop-m { display: block; }
  .lm-apply-in { grid-template-columns: 1fr; padding: 20px 18px; }
  .lm-tile svg { height: 90px; }
  .lm-next, .lm-more { grid-template-columns: 1fr; }
  .lm-pt-facts { grid-template-columns: repeat(3, 1fr); gap: 6px; }
  .lm-pt-facts li { padding: 10px; }
  .lm-pt-facts b { font-size: 20px; }
  .lm-pt-count { top: calc(var(--hdr) + 54px); }
  .lp-hero.pg-hero-short { min-height: 60svh; }
  .lp-rail-grid, .lp-cert-grid, .lp-faq-grid, .lt-tool-in { grid-template-columns: 1fr; gap: 18px; }
  .lp-rail-copy { position: static; }
  .lp-cert-go { grid-column: auto; }
  .lt-screen { position: static; }
  .tool-grid { grid-template-columns: 1fr; gap: 18px; }
  .lg-tools-in { grid-template-columns: 1fr; gap: 8px; }
  .lg .lx-status { display: none; }
  .lg-list { grid-template-columns: 1fr; }
}
@media (max-width: 480px) {
  .lm-bar-t { display: none; }
  .lm-bar { grid-template-columns: auto 1fr auto; }
  .lm-bar-next span { display: none; }
  .lm-body .rc-flow, .lm-body .rc-stat-row, .lm-body .stat-row { grid-template-columns: 1fr 1fr; }
  .lm-body .two-col, .lm-body .three-col, .lm-body .three, .lm-body .compare-grid, .lm-body .bias-grid, .lm-body .evidence-grid, .lm-body .sizing-grid, .lm-body .exchange-compare, .lm-body .order-compare { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
  .lp-stops li { animation: none; opacity: 1; transform: none; }
  .lm-nx, .lm-hear, .lp-stop, .lm-bar-t, .lp-ring .lp-ring-v { transition: none; }
}

/* calculator verdict tones (the module scripts write data-tone with one of three hex values) */
.lm .lm-tone { font-weight: 650; color: var(--page-text); }
.lm .lm-tone[data-tone="#059669"] { color: var(--lm-green); }
.lm .lm-tone[data-tone="#B45309"] { color: var(--lm-amber); }
.lm .lm-tone[data-tone="#B91C1C"] { color: var(--lm-red); }

/* breadcrumb style kickers (hub / path / level) read as one line of text that wraps between words on phones */
.lp-hero .kicker, .lm-head .kicker { display: block; line-height: 1.6; }
.lp-hero .kicker .lm-sep, .lm-head .kicker .lm-sep { margin: 0 .55em; }

/* phones: the old horizontal flows stack (no squeezed nodes, no arrows over labels); chips meet the 44 px target */
@media (max-width: 640px) {
  .lm-body .flow-inner { flex-direction: column; min-width: 0; gap: 2px; }
  .lm-body .flow-node { min-width: 0; }
  .lm-body .flow-arrow { justify-content: center; padding: 2px 0; transform: rotate(90deg); }
}
.lm-body .ticker-chip { min-height: 44px; }
/* linked chips (entities, tickers) are tap targets too */
.lm-body a.entity-chip { min-height: 44px; margin: 2px 0; }
/* desktop: every letter visible (two rows if needed) instead of a hidden scroll */
@media (min-width: 901px) { .lg-az { flex-wrap: wrap; overflow: visible; } .lg-az a { min-width: 34px; } }
/* table cells never break inside a word: the table scrolls instead */
.lm-body td, .lm-body th { overflow-wrap: normal; word-break: normal; hyphens: manual; }
.lm-body td { min-width: 6.5em; }
.lm-body table { min-width: 560px; }
/* the slim bar: the next button keeps its own width when the title is hidden on phones */
.lm-bar-next { justify-self: end; }
/* donut legends: one line of text per item (a glossary link inside must not split it into grid cells) */
.lm-body .rc-pie-legend li { display: block; position: relative; padding-left: 22px; }
.lm-body .rc-pie-legend li > .rc-pie-dot { position: absolute; left: 0; top: .3em; }
/* bars that carry their value inside the fill: a taller track so the figure shows */
.lm-body .rc-bar-track:has(> .rc-bar-fill:not(:empty)) { height: 20px; border-radius: 7px; }
.lm-body .rc-bar-fill:not(:empty) { display: flex; align-items: center; min-width: max-content; padding: 0 8px; font: 600 11.5px/1 var(--mono); color: #fff; white-space: nowrap; box-sizing: border-box; }
@media (max-width: 640px) {
  .lm-body .rc-pie-card, .lm-body .rc-pie-wrap { grid-template-columns: 1fr; }
  .lm-body .rc-pie-card .rc-pie-legend { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 14px; }
}
/* desktop: an infographic screen breaks out of the reading measure so its figures have room */
@media (min-width: 1000px) {
  .lm-body .lm-pnl.pnl:not(.is-stack) { width: min(1240px, calc(100vw - 2 * var(--pad))); margin-left: calc(50% - min(620px, 50vw - var(--pad))); margin-right: 0; }
}
.lm-pnl .pl-title { font-size: clamp(16px, 1.35vw, 21px); line-height: 1.2; max-width: none; }

/* tap targets (Q1, 10 Oct): every standalone link reaches 44 px on a phone. Short inline links get an invisible hit
   area (no layout change); list and chip links get a real minimum size. */
.lm .kicker a, .lp .kicker a, .lm-by a, .lm-gloss-all a, .lm-gloss dt a { position: relative; }
.lm .kicker a::after, .lp .kicker a::after, .lm-by a::after, .lm-gloss-all a::after, .lm-gloss dt a::after { content: ""; position: absolute; inset: -14px -4px; }
.lm-sources li { margin: 0; }
.lm-sources li a { display: inline-block; padding: 11px 0; }
.lg-az a { min-width: 44px; }
.lg-term dt a { min-width: 44px; }
.lg-used a { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; }
.fact-val .lm-term { position: relative; } .fact-val .lm-term::after { content: ""; position: absolute; inset: -12px -4px; }

/* ---------- 9. the calculator suite (Package L2): tool pages .tl, the engine .ts, the hub .tt ---------- */
.tl-head { max-width: 1240px; margin: 0 auto; padding: calc(var(--hdr) + 54px) var(--pad) 8px; }
.tl-head .kicker { display: block; line-height: 1.7; }
.tl-head .kicker .lm-sep { margin: 0 .5em; }
.tl-head h1 { margin: 12px 0 0; max-width: 18em; font-weight: 700; font-size: clamp(30px, 4.4vw, 54px); line-height: 1.04; letter-spacing: -0.035em; }
.tl-lede { margin: 16px 0 0; max-width: 36em; font-size: clamp(16px, 1.35vw, 19px); line-height: 1.55; color: var(--page-muted); }
.tl-chips { display: flex; flex-wrap: wrap; gap: 8px; margin: 18px 0 0; padding: 0; list-style: none; }
.tl-chips li { padding: 7px 12px; border-radius: 999px; border: 1px solid var(--page-line); background: var(--page-2); font-size: 13px; font-weight: 600; color: var(--page-muted); }
.ts { max-width: 1240px; margin: clamp(22px, 4vw, 40px) auto 0; padding: 0 var(--pad); }
.ts-grid { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: clamp(16px, 3vw, 32px); align-items: start; padding: clamp(16px, 2.6vw, 28px); border-radius: 24px; background: var(--page-2); border: 1px solid var(--page-line); box-shadow: 0 30px 70px -48px rgba(5,8,15,.45); }
.ts-in { display: grid; gap: 14px; min-width: 0; }
.ts-f { display: grid; gap: 6px; min-width: 0; }
.ts-f > label, .ts-lab { font-size: 14px; font-weight: 600; color: var(--page-text); }
.ts-fv { display: flex; align-items: center; gap: 8px; min-height: 48px; padding: 0 14px; border-radius: 12px; border: 1px solid var(--page-line); background: var(--page); transition: border-color .2s; }
.ts-fv:focus-within { border-color: var(--c); box-shadow: 0 0 0 3px color-mix(in srgb, var(--c) 22%, transparent); }
.ts-fv input { flex: 1; min-width: 0; height: 46px; border: 0; outline: 0; background: none; color: var(--page-text); font: 600 17px/1 var(--mono); font-variant-numeric: tabular-nums; }
.ts-pre, .ts-suf { font: 500 14px/1 var(--mono); color: var(--page-faint); }
.ts-range { -webkit-appearance: none; appearance: none; width: 100%; height: 44px; margin: 0; background: none; cursor: pointer; touch-action: pan-y; }
.ts-range::-webkit-slider-runnable-track { height: 6px; border-radius: 6px; background: linear-gradient(90deg, var(--c) var(--fill, 50%), var(--page-line) var(--fill, 50%)); }
.ts-range::-moz-range-track { height: 6px; border-radius: 6px; background: linear-gradient(90deg, var(--c) var(--fill, 50%), var(--page-line) var(--fill, 50%)); }
.ts-range::-webkit-slider-thumb { -webkit-appearance: none; width: 26px; height: 26px; margin-top: -10px; border-radius: 50%; background: var(--page); border: 3px solid var(--c); box-shadow: 0 4px 12px -4px rgba(5,8,15,.4); }
.ts-range::-moz-range-thumb { width: 22px; height: 22px; border-radius: 50%; background: var(--page); border: 3px solid var(--c); }
.ts-range:focus-visible { outline: 2px solid var(--c); outline-offset: 2px; border-radius: 8px; }
.ts-ser textarea { width: 100%; box-sizing: border-box; min-height: 120px; padding: 12px 14px; border-radius: 12px; border: 1px solid var(--page-line); background: var(--page); color: var(--page-text); font: 500 15px/1.6 var(--mono); resize: vertical; }
.ts-ser textarea:focus-visible { outline: 2px solid var(--c); outline-offset: 1px; }
.ts-help { margin: 0; font-size: 13px; line-height: 1.45; color: var(--page-faint); }
.ts-seg { display: flex; flex-wrap: wrap; gap: 8px; }
.ts-seg button, .ts-seg label { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 0 16px; border-radius: 999px; border: 1px solid var(--page-line); background: var(--page); color: var(--page-text); font: 600 14px/1.2 Inter, "Inter Fallback", sans-serif; cursor: pointer; }
.ts-seg button[aria-pressed="true"] { background: var(--page-text); color: var(--page); border-color: var(--page-text); }
.ts-ref { margin: -2px 0 4px; padding: 12px; border-radius: 14px; background: var(--page); border: 1px dashed var(--page-line); }
.ts-refl { margin: 0 0 8px; font: 500 11px/1.4 var(--mono); letter-spacing: .1em; text-transform: uppercase; color: var(--page-faint); }
.ts-refb { display: flex; flex-wrap: wrap; gap: 8px; }
.ts-refb button { display: grid; gap: 2px; text-align: left; min-height: 44px; padding: 8px 12px; border-radius: 12px; border: 1px solid var(--page-line); background: var(--page-2); color: var(--page-text); cursor: pointer; }
.ts-refb button b { font: 600 14px/1.2 var(--mono); }
.ts-refb button small { font-size: 12px; color: var(--page-faint); }
.ts-refb button:hover { border-color: var(--c); }
.ts-sel { display: grid; gap: 6px; margin-top: 10px; font-size: 12.5px; font-weight: 600; color: var(--page-muted); }
.ts-sel select { min-height: 44px; padding: 0 12px; border-radius: 12px; border: 1px solid var(--page-line); background: var(--page-2); color: var(--page-text); font: 500 14px/1.2 Inter, "Inter Fallback", sans-serif; max-width: 100%; }
.ts-refm { margin: 8px 0 0; font-size: 12.5px; color: var(--page-muted); }
.ts-refm:empty { display: none; }
.ts-refn { margin: 8px 0 0; font-size: 12px; line-height: 1.45; color: var(--page-faint); }
.ts-out { min-width: 0; position: sticky; top: calc(var(--hdr) + 16px); }
.ts-cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.ts-card { display: grid; gap: 4px; align-content: start; padding: 12px 14px; border-radius: 14px; background: var(--page); border: 1px solid var(--page-line); min-width: 0; }
.ts-card.is-main { grid-column: 1 / -1; padding: 16px 18px; border-color: color-mix(in srgb, var(--c) 45%, var(--page-line)); background: color-mix(in srgb, var(--c) 8%, var(--page)); }
.ts-cl { font-size: 12.5px; line-height: 1.35; color: var(--page-muted); }
.ts-cv { font: 650 clamp(18px, 1.7vw, 22px)/1.15 var(--mono); letter-spacing: -0.02em; color: var(--page-text); font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.ts-card.is-main .ts-cv { font-size: clamp(30px, 3.6vw, 44px); }
.ts-card.is-good .ts-cv { color: var(--lm-green); } .ts-card.is-bad .ts-cv { color: var(--lm-red); }
.ts-cs { font-size: 12px; line-height: 1.4; color: var(--page-faint); }
.ts-chart { margin: 14px 0 0; padding: 12px 10px 6px; border-radius: 16px; background: var(--page); border: 1px solid var(--page-line); }
.ts-svg { display: block; width: 100%; height: auto; overflow: visible; }
.ts-grid line, .ts-svg .ts-grid { stroke: var(--page-line); stroke-width: 1; }
.ts-ax { font: 500 11px var(--mono); fill: var(--page-faint); }
.ts-bl { font: 600 12px Inter, "Inter Fallback", sans-serif; fill: var(--page-muted); }
.ts-bv, .ts-bvs { font: 600 12px var(--mono); fill: var(--page-text); }
.ts-line { fill: none; stroke-width: 2.6; stroke-linejoin: round; stroke-linecap: round; }
.ts-line.is-c { stroke: var(--c); } .ts-line.is-muted { stroke: var(--page-faint); stroke-dasharray: 5 5; } .ts-line.is-alt { stroke: var(--lm-amber); } .ts-line.is-bad { stroke: var(--lm-red); stroke-dasharray: 2 5; }
.ts-area { fill: color-mix(in srgb, var(--c) 12%, transparent); stroke: none; }
.ts-dot { stroke: var(--page); stroke-width: 2; }
.ts-dot.is-c, .ts-bar.is-c, .ts-seg.is-c { fill: var(--c); } .ts-dot.is-muted, .ts-bar.is-muted, .ts-seg.is-muted { fill: var(--page-faint); } .ts-dot.is-alt, .ts-bar.is-alt, .ts-seg.is-alt { fill: var(--lm-amber); } .ts-dot.is-bad, .ts-bar.is-bad, .ts-seg.is-bad { fill: var(--lm-red); }
.ts-svg .ts-seg { stroke: var(--page); stroke-width: 2; }
.ts-mark { stroke: var(--lm-red); stroke-width: 1.5; stroke-dasharray: 3 4; }
.ts.is-intro .ts-line.is-c, .ts.is-intro .ts-line.is-alt { animation: tsDraw .9s var(--ease) both; }
@keyframes tsDraw { from { stroke-dasharray: 1 1; stroke-dashoffset: 1; } to { stroke-dasharray: 1 1; stroke-dashoffset: 0; } }
.ts-leg { display: flex; flex-wrap: wrap; gap: 6px 14px; margin: 6px 4px 0; padding: 0; list-style: none; font-size: 12.5px; color: var(--page-muted); }
.ts-leg li { display: inline-flex; align-items: center; gap: 6px; }
.ts-leg i { width: 16px; height: 3px; border-radius: 3px; background: var(--page-faint); }
.ts-leg .is-c i { background: var(--c); } .ts-leg .is-alt i { background: var(--lm-amber); } .ts-leg .is-bad i { background: var(--lm-red); }
.ts-note { margin: 8px 4px 4px; font-size: 13px; line-height: 1.5; color: var(--page-muted); }
.ts-act { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-top: 14px; }
.ts-act .btn { min-height: 44px; }
.ts-said { font-size: 13px; color: var(--lm-green); overflow-wrap: anywhere; }
.tl-body { padding-top: clamp(30px, 5vw, 56px); }
.tl-body section { margin: 0 0 clamp(34px, 5vw, 54px); }
.tl-body h2 { margin: 8px 0 14px; font-weight: 700; font-size: clamp(24px, 2.4vw, 32px); line-height: 1.1; letter-spacing: -0.03em; }
.tl-body h3 { margin: 22px 0 6px; font-size: 18px; font-weight: 650; letter-spacing: -0.01em; }
.tl-body p, .tl-body li { font-size: 16.5px; line-height: 1.65; color: var(--page-text); }
.tl-body ul, .tl-body ol { padding-left: 1.2em; }
.tl-body li { margin: 0 0 6px; }
.tl-formula { display: grid; gap: 8px; margin: 18px 0 0; padding: 16px; border-radius: 16px; background: var(--lm-tint-blue); border: 1px solid color-mix(in srgb, var(--lm-blue) 20%, transparent); }
.tl-fl { margin: 0; font: 500 11px/1.4 var(--mono) !important; letter-spacing: .12em; text-transform: uppercase; color: var(--page-muted) !important; }
.tl-formula code { display: block; padding: 0; background: none; font: 500 14.5px/1.55 var(--mono); color: var(--page-text); overflow-wrap: anywhere; white-space: normal; }
.tl-ex { width: 100%; border-collapse: collapse; font-size: 14.5px; }
.tl-ex th, .tl-ex td { padding: 10px 14px; text-align: left; border-bottom: 1px solid var(--page-line); vertical-align: top; }
.tl-ex thead th { font: 600 11px/1.3 var(--mono); letter-spacing: .08em; text-transform: uppercase; color: var(--page-muted); background: var(--lm-tint-blue); }
.tl-ex tbody th { font-weight: 500; color: var(--page-muted); }
.tl-ex td { font: 600 14.5px/1.4 var(--mono); font-variant-numeric: tabular-nums; white-space: nowrap; }
.lm [hidden], .cp [hidden] { display: none !important; }
.tl-src-h { margin: 18px 0 6px; font: 500 11px/1.4 var(--mono) !important; letter-spacing: .1em; text-transform: uppercase; color: var(--page-faint) !important; }
.tl-src li { font-size: 14px !important; line-height: 1.5 !important; }
.tl-src a { display: inline-block; padding: 12px 0; color: var(--page-text); }
.tl-rel { padding: clamp(10px, 3vw, 30px) 0 clamp(50px, 7vw, 90px); }
.tl-rel-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 12px; margin-top: 20px; }
.tl-strat { display: grid; gap: 6px; align-content: start; padding: 16px 18px; border-radius: 16px; background: var(--page-2); border: 1px solid var(--page-line); border-top: 3px solid var(--c); color: var(--page-text); text-decoration: none; transition: transform .3s var(--ease), border-color .3s; }
.tl-strat:hover { transform: translateY(-2px); }
.tl-strat-t { font-size: 13.5px; line-height: 1.45; color: var(--page-muted); }
.tl-strat small { font-size: 12px; line-height: 1.45; color: var(--page-faint); }
.tl-more-h { margin: 26px 0 8px; font: 500 11px/1.4 var(--mono); letter-spacing: .1em; text-transform: uppercase; color: var(--page-faint); }
.tl-more { display: flex; flex-wrap: wrap; gap: 8px; }
.tl-more a { display: inline-flex; align-items: center; gap: 6px; min-height: 44px; padding: 0 14px; border-radius: 999px; border: 1px solid var(--page-line); background: var(--page-2); color: var(--page-text); font-size: 14px; font-weight: 600; text-decoration: none; }
.tl-more svg { width: 14px; height: 14px; }
.tt-bar { position: sticky; top: var(--hdr); z-index: 30; background: var(--page-glass); backdrop-filter: blur(18px) saturate(140%); -webkit-backdrop-filter: blur(18px) saturate(140%); border-bottom: 1px solid var(--page-line); }
.tt-bar-in { max-width: 1240px; margin: 0 auto; padding: 10px var(--pad); display: grid; grid-template-columns: minmax(0, 420px) minmax(0, 1fr); gap: 8px 16px; align-items: center; }
.tt-box input { font-size: 16px; }
.tt-jump { display: flex; gap: 6px; overflow-x: auto; scrollbar-width: none; }
.tt-jump::-webkit-scrollbar { display: none; }
.tt-jump a { flex-shrink: 0; display: inline-flex; align-items: center; min-height: 44px; padding: 0 12px; border-radius: 999px; border: 1px solid var(--page-line); background: var(--page-2); color: var(--page-text); font-size: 13px; font-weight: 600; text-decoration: none; }
.tt-bar .lx-status { grid-column: 1 / -1; margin: 0; font: 500 12px/1.4 var(--mono); color: var(--page-faint); }
.tt-feat { padding: clamp(36px, 5vw, 64px) 0 0; }
.tt-fgrid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-top: 20px; }
.tt-groups { padding-top: clamp(24px, 4vw, 40px); }
.tt-group { margin: 0 0 clamp(30px, 5vw, 52px); scroll-margin-top: calc(var(--hdr) + 130px); }
.tt-gh { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 6px 20px; padding: 0 0 12px; border-bottom: 1px solid var(--page-line); margin-bottom: 14px; }
.tt-gh h2 { margin: 0; font-size: clamp(22px, 2.2vw, 28px); font-weight: 700; letter-spacing: -0.025em; }
.tt-gh p { margin: 0; font-size: 14.5px; color: var(--page-muted); }
.tt-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 12px; }
.tt-card { position: relative; display: grid; gap: 6px; align-content: start; padding: 16px 18px 16px; border-radius: 18px; background: var(--page-2); border: 1px solid var(--page-line); color: var(--page-text); text-decoration: none; scroll-margin-top: calc(var(--hdr) + 140px); transition: transform .3s var(--ease), border-color .3s, box-shadow .3s; }
.tt-card:hover, .tt-card.is-target, .tt-card:target { border-color: var(--c); transform: translateY(-2px); box-shadow: 0 20px 40px -30px rgba(5,8,15,.5); }
.tt-card b { font-size: 17px; font-weight: 650; letter-spacing: -0.01em; padding-right: 26px; }
.tt-g { font: 500 11px/1.4 var(--mono); letter-spacing: .1em; text-transform: uppercase; color: var(--page-faint); }
.tt-d { font-size: 14px; line-height: 1.45; color: var(--page-muted); }
.tt-v { display: grid; gap: 2px; margin-top: 6px; padding-top: 10px; border-top: 1px dashed var(--page-line); font: 650 18px/1.2 var(--mono); color: var(--page-text); }
.tt-v small { font: 500 11px/1.3 var(--mono); letter-spacing: .08em; text-transform: uppercase; color: var(--page-faint); }
.tt-card i { position: absolute; top: 16px; right: 16px; width: 18px; height: 18px; color: var(--c); }
.tt-card.is-big { border-top: 4px solid var(--c); }
.tt-card.is-big .tt-v { font-size: 22px; }
.tt-card.is-hidden, .tt-group.is-hidden { display: none; }
.tt-none { max-width: 1240px; margin: 0 auto 40px; padding: 0 var(--pad); color: var(--page-muted); }
.tt-faq { padding-top: clamp(40px, 6vw, 70px); padding-bottom: clamp(50px, 7vw, 90px); }
.tt-faq h2 { margin: 8px 0 10px; font-size: clamp(24px, 2.4vw, 32px); letter-spacing: -0.03em; }

/* ---------- 10. quick check from json, check yourself, certificates, verify (Package L2) ---------- */
.lm-qload { margin: 0 0 18px; padding: 18px; border-radius: 16px; border: 1px dashed var(--page-line); color: var(--page-muted); font-size: 14.5px; }
.lm-hp { position: absolute !important; left: -9999px !important; width: 1px !important; height: 1px !important; opacity: 0; }
.lm-check { max-width: 1240px; margin: clamp(36px, 6vw, 64px) auto 0; padding: 0 var(--pad); }
.lm-ck { display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap: 8px; margin: 0; padding: 0; list-style: none; }
.lm-ck a { display: grid; grid-template-columns: 44px 1fr; grid-template-areas: "n t" "n s"; column-gap: 10px; align-items: center; min-height: 56px; padding: 10px 14px; border-radius: 14px; background: var(--page-2); border: 1px solid var(--page-line); color: var(--page-text); text-decoration: none; }
.lm-ck .lm-ck-n { grid-area: n; display: grid; place-items: center; width: 38px; height: 38px; border-radius: 50%; border: 2px solid var(--page-line); font: 600 12px/1 var(--mono); color: var(--page-muted); }
.lm-ck .lm-ck-t { grid-area: t; font-size: 14px; font-weight: 600; line-height: 1.3; }
.lm-ck .lm-ck-s { grid-area: s; font-size: 12.5px; color: var(--page-faint); }
.lm-ck li.is-here a { border-color: var(--c); }
.lm-ck li.is-done .lm-ck-n { background: color-mix(in srgb, var(--c) 55%, #05080F); border-color: transparent; color: #fff; }
.lm-ck li.is-done .lm-ck-s { color: var(--lm-green); font-weight: 600; }
.lm-nudge { margin: 14px 0 0; padding: 14px 16px; border-radius: 14px; background: var(--lm-tint-blue); font-size: 15px; line-height: 1.5; }
.lm-nudge a { color: var(--page-text); font-weight: 650; text-decoration: underline; text-underline-offset: 3px; display: inline-flex; align-items: center; gap: 6px; min-height: 44px; }
.lm-nudge svg { width: 14px; height: 14px; }
.lm-cert-id { margin: 12px 0 0; font-size: 13px; color: var(--page-muted); }
.lm-cert-id b { font: 600 14px var(--mono); color: var(--page-text); overflow-wrap: anywhere; }
.lm-cert .ctas { display: flex; flex-wrap: wrap; gap: 10px; }
.lm-cert-all a { display: inline-flex; align-items: center; gap: 6px; min-height: 44px; font-weight: 600; color: var(--page-text); }
.lm-cert-all svg { width: 14px; height: 14px; }
.cp-head { padding-bottom: 0; }
.cp-sample { max-width: 1240px; margin: clamp(22px, 4vw, 40px) auto 0; padding: 0 var(--pad); }
.cp-sample canvas { display: block; width: 100%; max-width: 980px; height: auto; border-radius: 14px; border: 1px solid var(--page-line); background: #fff; box-shadow: 0 30px 70px -45px rgba(5,8,15,.55); }
.cp-sample figcaption { margin-top: 10px; font-size: 13.5px; color: var(--page-muted); }
.cp-mine { padding: clamp(40px, 6vw, 70px) 0 0; }
.cp-list { display: grid; gap: 8px; margin: 20px 0 0; padding: 0; list-style: none; }
.cp-list li { display: grid; grid-template-columns: 40px minmax(0, 1fr) auto; grid-template-areas: "n t go" "n b go"; gap: 4px 12px; align-items: center; padding: 12px 14px; border-radius: 14px; background: var(--page-2); border: 1px solid var(--page-line); }
.cp-list .cp-n { grid-area: n; font: 600 13px var(--mono); color: var(--page-faint); }
.cp-t { grid-area: t; display: grid; gap: 2px; min-width: 0; }
.cp-t b { font-size: 15px; font-weight: 650; }
.cp-s { font-size: 12.5px; color: var(--page-muted); overflow-wrap: anywhere; }
.cp-bar, .ml-bar { grid-area: b; display: block; height: 6px; border-radius: 6px; background: var(--page-line); overflow: hidden; }
.cp-bar i, .ml-bar i { display: block; height: 100%; background: var(--c); transform: scaleX(0); transform-origin: 0 50%; transition: transform .8s var(--ease); }
.cp-go { grid-area: go; display: inline-flex; align-items: center; min-height: 44px; padding: 0 14px; border-radius: 999px; border: 1px solid var(--page-line); background: var(--page); color: var(--page-text); font: 600 13.5px/1 Inter, "Inter Fallback", sans-serif; text-decoration: none; cursor: pointer; white-space: nowrap; }
.cp-list li.is-cert { border-color: color-mix(in srgb, var(--c) 50%, var(--page-line)); }
.cp-list li.is-cert .cp-go { background: var(--page-text); color: var(--page); border-color: var(--page-text); }
.cp-master { margin: 18px 0 0; padding: 18px 20px; border-radius: 18px; border: 1px dashed var(--page-line); background: var(--page-2); }
.cp-master.is-open { border-style: solid; border-color: var(--c); }
.cp-master h3 { margin: 6px 0 6px; font-size: 20px; letter-spacing: -0.02em; }
.cp-master p { margin: 0 0 10px; color: var(--page-muted); }
.cp-view { margin-top: 22px; scroll-margin-top: calc(var(--hdr) + 20px); }
.cp-steps { padding-left: 1.2em; }
.cp-steps li { margin-bottom: 10px; }
.cp-table td { text-align: left; }
.cp-table th a { color: var(--page-text); display: inline-flex; gap: 8px; align-items: center; min-height: 44px; }
.cp-table .cp-n { font: 600 12px var(--mono); color: var(--page-faint); }
.cv-box { max-width: 1240px; margin: clamp(22px, 4vw, 36px) auto 0; padding: 0 var(--pad); }
.cv-form { max-width: 560px; padding: 18px; border-radius: 20px; background: var(--page-2); border: 1px solid var(--page-line); }
.cv-form input { font-family: var(--mono) !important; }
.cv-out { max-width: 560px; margin-top: 14px; padding: 16px 18px; border-radius: 18px; background: var(--page-2); border: 1px solid var(--page-line); }
.cv-ok b { color: var(--lm-green); } .cv-bad b { color: var(--lm-red); }
.cv-out p { margin: 0 0 10px; font-size: 15px; line-height: 1.5; }
.cv-note { color: var(--page-muted); font-size: 13.5px !important; }
.cv-facts { margin: 0 0 12px; padding: 0; list-style: none; }
.cv-facts li { display: flex; justify-content: space-between; gap: 12px; padding: 8px 0; border-bottom: 1px dashed var(--page-line); font-size: 14px; }
.cv-facts span { color: var(--page-muted); } .cv-facts b { text-align: right; font-family: var(--mono); overflow-wrap: anywhere; }
#rcCertPrint { display: none; }
@media print {
  html.cert-print body > *:not(#rcCertPrint) { display: none !important; }
  html.cert-print #rcCertPrint { display: block !important; }
  html.cert-print #rcCertPrint img { display: block; width: 100%; height: auto; }
  html.cert-print, html.cert-print body { background: #fff !important; margin: 0; }
  @page { size: A4 landscape; margin: 8mm; }
}

@media (max-width: 900px) {
  .tt-bar { position: static; }
  .tt-bar .lx-status { display: none; }
  .ts-grid { grid-template-columns: 1fr; }
  .ts-out { position: static; }
  .tt-fgrid { grid-template-columns: 1fr; }
  .tt-bar-in { grid-template-columns: 1fr; }
}
@media (max-width: 600px) {
  .tt-groups .tt-card .tt-d { display: none; }
  .tt-groups .tt-card { padding: 14px 16px; }
  .tt-groups .tt-v { margin-top: 2px; padding-top: 6px; }
}
@media (max-width: 480px) {
  .ts-grid { padding: 14px; border-radius: 20px; }
  .ts-cards { gap: 8px; }
  .ts-card { padding: 10px 12px; }
  .tl-body p, .tl-body li { font-size: 16px; }
  .cp-list li { grid-template-columns: 30px minmax(0, 1fr); grid-template-areas: "n t" "n b" "n go"; }
  .cp-go { justify-self: start; margin-top: 6px; }
}
@media (prefers-reduced-motion: reduce) { .ts.is-intro .ts-line { animation: none !important; } .tt-card, .tl-strat { transition: none; } .cp-bar i, .ml-bar i { transition: none; } }

.lm-try-more { display: flex; flex-wrap: wrap; gap: 8px; max-width: 760px; margin: 14px 0 0; }
.lm-try-more a { display: inline-flex; align-items: center; gap: 6px; min-height: 44px; padding: 0 16px; border-radius: 999px; border: 1px solid var(--page-line); background: var(--page-2); color: var(--page-text); font-size: 14px; font-weight: 600; text-decoration: none; }
.lm-try-more a:hover { border-color: var(--c); }
.lm-try-more svg { width: 14px; height: 14px; }

/* the default comparison line: a model, back tested index (TK, 12 Oct) */
.ts-line.is-cmp { stroke: var(--lm-purple); stroke-dasharray: 7 4; }
.ts-dot.is-cmp, .ts-bar.is-cmp { fill: var(--lm-purple); }
.ts-leg .is-cmp i { background: var(--lm-purple); }
.ts-card.is-cmp { grid-column: 1 / -1; border-style: dashed; border-color: color-mix(in srgb, var(--lm-purple) 45%, var(--page-line)); }
.ts-card.is-cmp .ts-cv { color: var(--lm-purple); }
.ts-reff button { border-color: color-mix(in srgb, var(--lm-purple) 40%, var(--page-line)); }

/* quick check options: the radio is the whole 44 px hit area at the start of the row, drawn as a ring (12 Oct) */
.lm-opts label { grid-template-columns: 30px 1fr; padding-left: 8px; }
.lm-opts input { width: 44px !important; height: 44px !important; margin: -11px 0 -11px -7px !important; border: 0 !important; border-radius: 50%; background: radial-gradient(circle, transparent 0 6.5px, var(--page-faint) 7px 9px, transparent 9.5px) !important; box-shadow: none !important; cursor: pointer; }
.lm-opts input:checked { background: radial-gradient(circle, var(--c) 0 4.5px, transparent 5px 6.5px, var(--c) 7px 9px, transparent 9.5px) !important; }

/* contrast fixes (12 Oct): the free access tag, and the unlit steps of the vis kit's flow (learn.css loads first, so these
   carry one more class than vis.css) */
.lm-body .acc-free, .lm .lm-body .acc-free { color: color-mix(in srgb, var(--lm-green) 72%, var(--page-text)); }
.lm .vis-flow.is-js > li:not(.is-on) > span, .lm .vis-flow.is-js > li:not(.is-on) > p { color: var(--page-muted); }
.lm .vis-flow.is-js > li:not(.is-on) > b { color: var(--page-text); opacity: .82; }


/* path colours (paths.json) */
.lm[data-path="1"], .lp[data-path="1"], [data-pc="1"] { --c: #3B7BE0; }
.lm[data-path="2"], .lp[data-path="2"], [data-pc="2"] { --c: #3880D5; }
.lm[data-path="3"], .lp[data-path="3"], [data-pc="3"] { --c: #3585CA; }
.lm[data-path="4"], .lp[data-path="4"], [data-pc="4"] { --c: #338BC0; }
.lm[data-path="5"], .lp[data-path="5"], [data-pc="5"] { --c: #3090B5; }
.lm[data-path="6"], .lp[data-path="6"], [data-pc="6"] { --c: #2D95AA; }
.lm[data-path="7"], .lp[data-path="7"], [data-pc="7"] { --c: #2A9A9F; }
.lm[data-path="8"], .lp[data-path="8"], [data-pc="8"] { --c: #279F94; }
.lm[data-path="9"], .lp[data-path="9"], [data-pc="9"] { --c: #25A58A; }
.lm[data-path="10"], .lp[data-path="10"], [data-pc="10"] { --c: #22AA7F; }
.lm[data-path="11"], .lp[data-path="11"], [data-pc="11"] { --c: #1FAF74; }
.lp-stops li:nth-child(1) { animation-delay: 0ms; }
.lp-stops li:nth-child(2) { animation-delay: 60ms; }
.lp-stops li:nth-child(3) { animation-delay: 120ms; }
.lp-stops li:nth-child(4) { animation-delay: 180ms; }
.lp-stops li:nth-child(5) { animation-delay: 240ms; }
.lp-stops li:nth-child(6) { animation-delay: 300ms; }
.lp-stops li:nth-child(7) { animation-delay: 360ms; }
.lp-stops li:nth-child(8) { animation-delay: 420ms; }
.lp-stops li:nth-child(9) { animation-delay: 480ms; }

/* generic fallbacks for the fragments' one off classes (generated from the class inventory) */
.lm-body .ohlcv-grid,.lm-body .stat-row,.lm-body .fs-row,.lm-body .ratio-grid,.lm-body .cc-row,.lm-body .tax-grid,.lm-body .bias-grid,.lm-body .ss-row,.lm-body .quality-grid,.lm-body .combo-grid,.lm-body .cycle-grid,.lm-body .evidence-grid,.lm-body .mpt-grid,.lm-body .sizing-grid,.lm-body .concept-grid,.lm-body .ml-grid,.lm-body .alt-grid,.lm-body .alt-row,.lm-body .action-grid,.lm-body .deriv-grid,.lm-body .bond-grid,.lm-body .gold-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin:18px 0}
.lm-body .exc-card,.lm-body .dt-node,.lm-body .ohlcv-card,.lm-body .ohlcv-cell,.lm-body .tl-item,.lm-body .stat-card,.lm-body .index-card,.lm-body .sv-card,.lm-body .fs-card,.lm-body .ratio-card,.lm-body .oc-card,.lm-body .cost-card,.lm-body .tax-card,.lm-body .bias-card,.lm-body .evidence-card,.lm-body .ff-card,.lm-body .factor-card,.lm-body .metric-card,.lm-body .checklist-item,.lm-body .formula-card,.lm-body .quality-card,.lm-body .theory-card,.lm-body .size-band,.lm-body .combo-card,.lm-body .cycle-card,.lm-body .mpt-card,.lm-body .sizing-card,.lm-body .perf-card,.lm-body .concept-card,.lm-body .ml-card,.lm-body .action-card,.lm-body .deriv-card,.lm-body .bond-card,.lm-body .gold-card,.lm-body .two-col,.lm-body .col-card{padding:14px 16px;border-radius:14px;background:var(--page-2);border:1px solid var(--page-line);min-width:0}
.lm-body .exc-tag,.lm-body .exc-name,.lm-body .fact-label,.lm-body .step-title,.lm-body .infographic-header,.lm-body .infographic-title,.lm-body .ticker-header,.lm-body .ticker-name,.lm-body .cell-label,.lm-body .tc-sym,.lm-body .tc-name,.lm-body .stat-label,.lm-body .ic-badge,.lm-body .ic-name,.lm-body .ic-stat-label,.lm-body .sv-name,.lm-body .sv-q,.lm-body .fs-header,.lm-body .section-head,.lm-body .fs-label,.lm-body .ratio-name,.lm-body .oc-name,.lm-body .oc-tag,.lm-body .cc-header,.lm-body .cc-label,.lm-body .tx-type,.lm-body .bias-name,.lm-body .ev-label,.lm-body .ff-label,.lm-body .factor-header,.lm-body .factor-name,.lm-body .metric-head,.lm-body .metric-title,.lm-body .metric-badge,.lm-body .bias2-name,.lm-body .ss-header,.lm-body .ss-name,.lm-body .ss-label,.lm-body .fc-label,.lm-body .tc-label,.lm-body .sb-label,.lm-body .combo-name,.lm-body .idx-name,.lm-body .mpt-label,.lm-body .insight-label,.lm-body .sc-head,.lm-body .sc-name,.lm-body .sc-tag,.lm-body .perf-label,.lm-body .cc-title,.lm-body .ml-head,.lm-body .ml-name,.lm-body .alt-name,.lm-body .access-tag,.lm-body .ac-title,.lm-body .dc-title,.lm-body .bc-title,.lm-body .gc-title{font-weight:650;letter-spacing:-0.01em;line-height:1.3;margin:0 0 6px}
.lm-body .exc-sub,.lm-body .step-desc,.lm-body .infographic-src,.lm-body .infographic-body,.lm-body .dt-note,.lm-body .ohlcv-note,.lm-body .ic-sub,.lm-body .ic-stat-label,.lm-body .fs-note,.lm-body .ratio-desc,.lm-body .oc-body,.lm-body .oc-use,.lm-body .cc-sub,.lm-body .cc-note,.lm-body .tx-rate,.lm-body .tx-desc,.lm-body .tx-threshold,.lm-body .bias-example,.lm-body .ev-finding,.lm-body .ev-source,.lm-body .ff-desc,.lm-body .ff-note,.lm-body .factor-tagline,.lm-body .factor-body,.lm-body .factor-signal,.lm-body .factor-desc,.lm-body .factor-india,.lm-body .metric-sub,.lm-body .metric-body,.lm-body .metric-desc,.lm-body .bias2-what,.lm-body .bias2-example,.lm-body .fc-desc,.lm-body .qc-desc,.lm-body .tc-theory,.lm-body .tc-reality,.lm-body .sb-note,.lm-body .combo-factors,.lm-body .combo-why,.lm-body .combo-benefit,.lm-body .cycle-when-good,.lm-body .cycle-when-bad,.lm-body .cycle-note,.lm-body .idx-note,.lm-body .sc-desc,.lm-body .sc-verdict,.lm-body .perf-note,.lm-body .cc-body,.lm-body .ml-verdict,.lm-body .ml-body,.lm-body .alt-body,.lm-body .ac-body,.lm-body .dc-body,.lm-body .bc-body,.lm-body .gc-body{font-size:14.5px;line-height:1.55;color:var(--page-muted);margin:0}
.lm-body .fact-val,.lm-body .step-num,.lm-body .ticker-price,.lm-body .ticker-change,.lm-body .cell-value,.lm-body .tl-time,.lm-body .ic-stat-value,.lm-body .sv-num,.lm-body .fs-value,.lm-body .ratio-formula,.lm-body .cc-value,.lm-body .metric-num,.lm-body .metric-formula,.lm-body .ss-value,.lm-body .fc-formula,.lm-body .qc-formula,.lm-body .sc-formula,.lm-body .perf-formula{font-family:"JetBrains Mono","JBM Fallback",monospace;font-weight:600;font-size:15px;color:var(--page-text)}
.lm-body .ratio-formula,.lm-body .metric-formula,.lm-body .fc-formula,.lm-body .qc-formula,.lm-body .sc-formula,.lm-body .perf-formula{display:block;padding:10px 12px;margin:8px 0;border-radius:10px;background:var(--lm-tint-blue);font-weight:500;font-size:14px;overflow-x:auto;white-space:nowrap}

/* lifted inline styles of the fragments (content/styles/_all.css, literals mapped to tokens) */
.lm-body .xs-012e13{background:var(--lm-red)}
.lm-body .xs-02e61e{color:var(--amber);font-weight:600}
.lm-body .xs-046678{width:100%}
.lm-body .xs-049a95{width:56%}
.lm-body .xs-05e321{width:100%;border-collapse:collapse;font-size:13px}
.lm-body .xs-061950{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--red);font-family:var(--mono);margin-bottom:8px}
.lm-body .xs-06b519{font-family:var(--mono);font-size:22px;font-weight:500;color:var(--page-text)}
.lm-body .xs-09d63f{width:33%}
.lm-body .xs-0a43e5{color:var(--lr-on)}
.lm-body .xs-0a82f3{background:var(--gold-light);border:1px solid var(--gold);border-radius:10px;padding:16px 18px}
.lm-body .xs-0aaa68{font-size:12px;color:var(--text-4);margin:0;font-family:var(--mono)}
.lm-body .xs-0bd77a{font-size:13px;color:var(--text-2);margin-bottom:6px}
.lm-body .xs-0d07df{background:var(--lm-tint-amber);color:var(--lm-amber)}
.lm-body .xs-0e321b{font-size:12px;color:var(--text-4);margin-top:16px;margin-bottom:0}
.lm-body .xs-102346{display:flex;align-items:stretch;gap:0;min-width:400px;flex-wrap:wrap;justify-content:center}
.lm-body .xs-1052dc{font-size:13px;color:var(--lr-on);font-weight:600}
.lm-body .xs-10f249{width:80%}
.lm-body .xs-116966{margin:0}
.lm-body .xs-117d8c{background:var(--navy-mid)}
.lm-body .xs-11a508{font-size:11px}
.lm-body .xs-11f570{margin-top:14px;font-size:13px;color:var(--text-3);text-align:center}
.lm-body .xs-12cef5{margin-top:16px;font-size:13px;color:var(--text-2);line-height:1.6}
.lm-body .xs-13eba0{font-family:var(--mono);font-weight:700;color:var(--lm-red)}
.lm-body .xs-142373{width:88%}
.lm-body .xs-14b4b5{display:flex;flex-direction:column;gap:6px}
.lm-body .xs-1538f3{background:var(--green-bg);border-radius:8px;padding:12px 14px}
.lm-body .xs-157efa{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--gold);font-family:var(--mono);margin-bottom:8px}
.lm-body .xs-167824{background:var(--lm-tint-blue);border-right:1px solid var(--navy)}
.lm-body .xs-169aea{background:var(--gold-light);padding:16px;border-radius:8px}
.lm-body .xs-16b2c4{background:var(--red-bg);border-radius:8px;padding:12px 14px}
.lm-body .xs-16e815{color:var(--lm-red)}
.lm-body .xs-185519{font-size:11px;font-weight:700;color:var(--text-3);letter-spacing:.06em;text-transform:uppercase;font-family:var(--mono);margin-bottom:8px}
.lm-body .xs-1b3935{font-size:16px;color:var(--blue);margin-bottom:14px}
.lm-body .xs-1c491b{background:var(--red-bg);padding:16px;border-radius:8px}
.lm-body .xs-1c75fc{width:84%}
.lm-body .xs-1cd23b{width:87%;background:var(--navy)}
.lm-body .xs-1ce663{width:96%}
.lm-body .xs-1dcc3b{background:var(--red-bg);border-radius:8px;overflow:hidden}
.lm-body .xs-1e1c2b{width:52%}
.lm-body .xs-1e5aeb{width:59%}
.lm-body .xs-1e96ed{background:var(--green-bg);border-color:var(--green)}
.lm-body .xs-1f0360{display:flex;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--lm-tint-red);font-size:13px}
.lm-body .xs-1f3826{font-size:13px;margin-top:4px;color:var(--lr-on-soft)}
.lm-body .xs-1f53a7{font-size:12px;font-weight:700;color:var(--lr-on-soft);margin-bottom:3px}
.lm-body .xs-1f5b71{font-size:14px;font-weight:700;color:var(--green)}
.lm-body .xs-2067ab{background:var(--lm-tint-blue);border-color:var(--lm-tint-blue)}
.lm-body .xs-20cac3{width:55%;background:var(--rule)}
.lm-body .xs-20da20{width:53%}
.lm-body .xs-215683{padding:12px 0}
.lm-body .xs-224924{font-size:11px;font-weight:700;color:var(--red);font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;margin-bottom:6px}
.lm-body .xs-2285bd{padding:10px 12px}
.lm-body .xs-22c41d{font-size:13px;color:var(--lm-red);line-height:1.6}
.lm-body .xs-2374b9{background:var(--lm-tint-red);border-right:1px solid var(--navy);border-top:1px solid var(--navy)}
.lm-body .xs-253c2a{color:var(--lm-amber)}
.lm-body .xs-25cefe{margin-top:8px;margin-bottom:0;font-size:13px;color:var(--text-3)}
.lm-body .xs-2677be{font-size:12px;font-weight:700;color:var(--text-3);margin-bottom:3px}
.lm-body .xs-26a65f{font-family:var(--mono);font-weight:700;color:var(--red)}
.lm-body .xs-280595{font-size:12px;font-weight:700;color:var(--blue);margin-bottom:3px}
.lm-body .xs-285582{color:var(--blue)}
.lm-body .xs-2aa48a{color:var(--green);font-weight:600}
.lm-body .xs-2c1a61{background:var(--ice);border-color:var(--blue)}
.lm-body .xs-2c9688{font-family:var(--mono);font-weight:700;color:var(--green-dark)}
.lm-body .xs-2cf51c{color:var(--red);font-weight:600}
.lm-body .xs-2e5f76{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.lm-body .xs-2e6632{background:var(--page-line)}
.lm-body .xs-31655b{width:100%;border-collapse:collapse;font-size:14px}
.lm-body .xs-3167e2{background:var(--lm-tint-green);color:var(--lm-green)}
.lm-body .xs-3240dc{background:var(--navy);border-radius:7px;padding:10px 14px}
.lm-body .xs-32b09b{background:var(--lr5)}
.lm-body .xs-32fe0e{background:var(--red-bg);border:1px solid var(--red);border-radius:10px;padding:16px 18px}
.lm-body .xs-330184{background:var(--lm-tint-blue)}
.lm-body .xs-3414b7{font-size:13px;color:var(--lm-amber);line-height:1.6}
.lm-body .xs-36a9d2{width:62%;background:var(--gold)}
.lm-body .xs-3a4f63{width:28%}
.lm-body .xs-3b0248{width:100%;background:var(--lm-blue);border-radius:4px 4px 0 0;height:55%}
.lm-body .xs-3bbbe0{width:32%}
.lm-body .xs-3c71e5{background:var(--gold-light);border-radius:10px;padding:16px;text-align:center}
.lm-body .xs-3da426{width:68%}
.lm-body .xs-3e3ab3{width:66%}
.lm-body .xs-3f5c33{background:var(--lm-tint-green);border-color:var(--lm-tint-green)}
.lm-body .xs-40d741{list-style:none;padding:0;margin:0}
.lm-body .xs-4194cd{background:var(--lm-tint-amber)}
.lm-body .xs-44f876{width:85%;background:var(--blue)}
.lm-body .xs-457f41{width:92%}
.lm-body .xs-45e7ae{color:var(--red)}
.lm-body .xs-46b44d{width:72%}
.lm-body .xs-472c9d{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:18px}
.lm-body .xs-477d66{width:10%}
.lm-body .xs-4808b7{width:46%;background:var(--lm-teal)}
.lm-body .xs-484782{background:var(--green);border-radius:6px;padding:10px 14px;display:flex;justify-content:space-between}
.lm-body .xs-4a5780{font-size:12.5px;color:var(--lm-blue);font-weight:600;font-family:Inter,sans-serif}
.lm-body .xs-4a58c3{width:78%;background:var(--lm-teal)}
.lm-body .xs-4a79ad{background:var(--lm-tint-blue);color:var(--lm-blue)}
.lm-body .xs-4aca71{border-color:var(--red)}
.lm-body .xs-4bd0f5{width:64%;background:var(--gold)}
.lm-body .xs-4d32b7{width:55%;background:var(--red)}
.lm-body .xs-4d4f30{text-align:left;padding:8px 12px;font-weight:700;color:var(--page-text)}
.lm-body .xs-4d8e58{width:100%;background:var(--lm-blue);border-radius:4px 4px 0 0;height:100%}
.lm-body .xs-4e330d{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.lm-body .xs-4ec7d3{font-size:11px;font-weight:700;color:var(--blue);font-family:var(--mono)}
.lm-body .xs-4f8574{text-align:center;padding:8px 12px;font-weight:700;color:var(--page-text)}
.lm-body .xs-50379a{width:70%}
.lm-body .xs-50c96f{text-align:center;padding:10px 12px}
.lm-body .xs-535f55{background:var(--rule);border-radius:7px;padding:10px 14px}
.lm-body .xs-54b783{background:var(--ice);padding:16px;border-radius:8px}
.lm-body .xs-55b2e1{width:18%}
.lm-body .xs-55ce09{width:90%;background:var(--blue)}
.lm-body .xs-55df5a{width:78%}
.lm-body .xs-562f14{font-family:var(--mono);font-weight:700;color:var(--green)}
.lm-body .xs-563170{font-size:11px;font-weight:700;color:var(--text-2);font-family:var(--mono)}
.lm-body .xs-5661dc{font-size:13px;margin-top:4px}
.lm-body .xs-578a8a{width:195%}
.lm-body .xs-57ab50{width:62%}
.lm-body .xs-58f4f7{background:var(--lm-tint-blue)}
.lm-body .xs-598515{width:90%;background:var(--red)}
.lm-body .xs-59d5cc{font-size:12.5px;color:var(--page-text);font-weight:600;font-family:Inter,sans-serif}
.lm-body .xs-59e6b4{text-align:center;margin-top:12px;font-size:12px;color:var(--text-4);font-family:var(--mono)}
.lm-body .xs-5b5b51{width:100%;background:var(--navy)}
.lm-body .xs-5bc972{background:var(--lm-green)}
.lm-body .xs-5c2a18{font-size:11px;font-weight:700;color:var(--green);font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;margin-bottom:6px}
.lm-body .xs-5db834{width:6%}
.lm-body .xs-5ea29b{width:77%}
.lm-body .xs-5f6c7c{width:78%;background:var(--blue)}
.lm-body .xs-62112a{font-family:var(--mono);font-size:28px;font-weight:700;color:var(--page-text)}
.lm-body .xs-63bf6e{background:var(--lm-tint-blue);border-left:1px solid var(--navy)}
.lm-body .xs-643455{background:var(--lm-blue)}
.lm-body .xs-6669a8{background:var(--page-line)}
.lm-body .xs-67dfc1{text-align:center;padding:10px 12px;font-weight:700;color:var(--lm-red)}
.lm-body .xs-67f4fc{display:flex;align-items:center;padding:0 6px;color:var(--text-4);font-size:16px}
.lm-body .xs-69a0fd{width:60%}
.lm-body .xs-69ebc3{width:70%;background:var(--gold)}
.lm-body .xs-6a92d9{width:2%;background:var(--lm-purple)}
.lm-body .xs-6ac132{width:42%}
.lm-body .xs-6b99de{display:none}
.lm-body .xs-6bd2d6{background:var(--green-bg);border-radius:10px;padding:16px;text-align:center}
.lm-body .xs-6bd687{font-size:11px;font-weight:700;color:var(--text-3);font-family:var(--mono)}
.lm-body .xs-6c55da{background:var(--red-bg)}
.lm-body .xs-6cf212{width:38%}
.lm-body .xs-6d33cb{width:100%;background:var(--lm-tint-blue);border-radius:4px 4px 0 0;height:30%}
.lm-body .xs-6da41b{font-size:22px;margin-bottom:8px}
.lm-body .xs-6ea7cf{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--green);font-family:var(--mono);margin-bottom:8px}
.lm-body .xs-709252{background:var(--navy);border-radius:6px;padding:10px 14px;display:flex;justify-content:space-between}
.lm-body .xs-710ba3{width:38%;background:var(--green)}
.lm-body .xs-7116cd{width:67%}
.lm-body .xs-726650{background:var(--green-bg);border-radius:8px;overflow:hidden}
.lm-body .xs-733c1b{width:65%;background:var(--red)}
.lm-body .xs-73a920{width:68%;background:var(--gold)}
.lm-body .xs-73aaf9{background:var(--green-bg);border:1px solid var(--green);border-radius:10px;padding:16px 18px}
.lm-body .xs-74f9cd{font-size:11px;font-weight:700;color:var(--green);letter-spacing:.06em;text-transform:uppercase;font-family:var(--mono);margin-bottom:10px}
.lm-body .xs-751390{font-family:var(--mono);font-size:22px;font-weight:500;color:var(--red)}
.lm-body .xs-75161c{background:var(--white);border:1px solid var(--rule);border-radius:8px;padding:16px}
.lm-body .xs-751cab{color:var(--lm-red)}
.lm-body .xs-7550a5{width:99%;background:var(--red)}
.lm-body .xs-7592fb{font-size:12px;font-weight:700;color:var(--green);margin-bottom:3px}
.lm-body .xs-766eb2{background:var(--page-line)}
.lm-body .xs-76abe0{width:25%;background:var(--red)}
.lm-body .xs-7757d9{font-size:13px;color:var(--lr-on-soft)}
.lm-body .xs-77d7fa{background:var(--bg);border:1px solid var(--rule);border-radius:10px;padding:16px 18px}
.lm-body .xs-77eb5c{background:var(--gold-light);border-color:var(--gold)}
.lm-body .xs-78aee6{width:94%}
.lm-body .xs-7b86b0{background:var(--green-bg);color:var(--green);padding:12px 16px;border-radius:0 8px 8px 0;text-align:center;flex:1;min-width:100px;border:1.5px solid var(--green)}
.lm-body .xs-7bae26{font-size:12px;color:var(--text-4);margin-top:14px;margin-bottom:0;font-family:var(--mono)}
.lm-body .xs-7ca236{color:var(--green-dark);font-weight:700;margin-bottom:4px}
.lm-body .xs-7f24e2{color:var(--green)}
.lm-body .xs-7f723c{background:var(--lr2)}
.lm-body .xs-7f823f{background:var(--green-bg);border-radius:7px;padding:10px 14px}
.lm-body .xs-7fbc3f{background:var(--teal)}
.lm-body .xs-81086b{width:75%;background:var(--navy)}
.lm-body .xs-8435ef{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);font-family:var(--mono);margin-bottom:8px}
.lm-body .xs-85f91f{width:36%}
.lm-body .xs-872b38{font-size:12px;color:var(--text-3);margin-top:4px}
.lm-body .xs-88b4c4{padding:10px 14px;font-size:12px;color:var(--green-dark)}
.lm-body .xs-894087{font-size:12.5px;color:var(--lm-purple);font-weight:600;font-family:Inter,sans-serif}
.lm-body .xs-8a77e5{margin-top:8px}
.lm-body .xs-8aed95{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.lm-body .xs-8ba78b{background:var(--lr4)}
.lm-body .xs-8bc595{padding:12px 0;border-bottom:1px solid var(--rule)}
.lm-body .xs-8c8cd3{width:48%}
.lm-body .xs-8c8f53{width:8%}
.lm-body .xs-8d65cc{color:var(--lm-green)}
.lm-body .xs-8d750a{width:65%}
.lm-body .xs-8ddd09{width:100%;background:var(--rule)}
.lm-body .xs-8f2537{font-size:11px;color:var(--text-4);font-family:var(--mono)}
.lm-body .xs-8f557a{display:inline-flex;align-items:center;gap:0;padding:2px 9px 2px 7px;border-radius:5px;border:1px solid var(--page-line);background:var(--lm-tint-blue);text-decoration:none;vertical-align:middle;white-space:nowrap;line-height:1.4}
.lm-body .xs-9032fa{text-align:center;margin-top:12px;font-size:12px;color:var(--text-4)}
.lm-body .xs-90c6c6{width:160%}
.lm-body .xs-911b26{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.lm-body .xs-919423{text-align:center;padding:10px 12px;color:var(--lm-red);font-weight:600}
.lm-body .xs-91a870{text-align:center}
.lm-body .xs-946723{font-size:13px;color:var(--text-2)}
.lm-body .xs-95ba31{font-size:11px;font-weight:700;color:var(--red);letter-spacing:.06em;text-transform:uppercase;font-family:var(--mono);margin-bottom:10px}
.lm-body .xs-9606c3{width:98%}
.lm-body .xs-964b91{width:76%}
.lm-body .xs-96d1ee{width:85%}
.lm-body .xs-97193d{font-size:13px;color:var(--text-2);line-height:1.9}
.lm-body .xs-985db8{text-align:center;padding:10px 12px;font-weight:600}
.lm-body .xs-98ade4{font-size:13px;color:var(--text-2);line-height:1.6}
.lm-body .xs-98e301{width:5%;background:var(--gold)}
.lm-body .xs-98f7e0{background:var(--lm-tint-green)}
.lm-body .xs-9972ce{font-size:16px;color:var(--green);margin-bottom:14px}
.lm-body .xs-9995c0{font-size:11px;color:var(--page-muted);font-weight:600;font-family:JetBrains Mono,monospace;letter-spacing:.03em}
.lm-body .xs-9a7d8e{color:var(--lm-amber)}
.lm-body .xs-9ad697{font-size:12.5px;color:var(--lm-blue);font-weight:600;font-family:Inter,sans-serif}
.lm-body .xs-9bf58d{width:93%;background:var(--red)}
.lm-body .xs-9ce9ae{width:4%}
.lm-body .xs-9eab45{background:var(--red-bg);border-radius:10px;padding:16px;text-align:center}
.lm-body .xs-a12e5b{width:93%}
.lm-body .xs-a19481{width:68%;background:var(--lr2)}
.lm-body .xs-a2663d{background:var(--navy);padding:14px 18px;font-family:var(--mono);font-size:13px;color:var(--lr-on);font-weight:600}
.lm-body .xs-a4419e{text-align:center;font-family:var(--mono);font-size:15px;font-weight:700;color:var(--page-text);padding:10px 0 18px;border-bottom:1px solid var(--rule)}
.lm-body .xs-a557d7{width:45%;background:var(--blue)}
.lm-body .xs-a9c5e7{width:45%}
.lm-body .xs-a9ef0f{font-size:11px;font-weight:700;font-family:var(--mono);letter-spacing:.04em}
.lm-body .xs-aa0e53{padding:10px 12px;font-weight:600}
.lm-body .xs-aa550a{width:55%}
.lm-body .xs-ab23bb{color:var(--text-3)}
.lm-body .xs-ab43a8{background:var(--lm-tint-blue);color:var(--lm-purple)}
.lm-body .xs-ad54bb{font-size:13px;color:var(--green-dark);line-height:1.6}
.lm-body .xs-ad93c8{width:100%;background:var(--lm-blue);border-radius:4px 4px 0 0;height:74%}
.lm-body .xs-b0664d{padding:10px 14px;font-size:12px;color:var(--lm-red)}
.lm-body .xs-b30e15{display:flex;align-items:flex-end;gap:8px;height:120px;margin-bottom:12px;padding-top:8px}
.lm-body .xs-b4ed24{border-bottom:2px solid var(--rule)}
.lm-body .xs-b576fa{width:82%}
.lm-body .xs-b5f326{font-size:13px;color:var(--lr-on-soft)}
.lm-body .xs-b60a1f{width:26%}
.lm-body .xs-b6183f{padding:8px;font-size:12px;color:var(--text-3)}
.lm-body .xs-b78d05{width:24%;background:var(--lm-amber)}
.lm-body .xs-b79a65{background:var(--lm-tint-green);border-left:1px solid var(--navy);border-top:1px solid var(--navy)}
.lm-body .xs-b840fc{width:44%}
.lm-body .xs-b89165{width:56%;background:var(--lm-purple)}
.lm-body .xs-b93cd9{font-size:13px;color:var(--lm-red)}
.lm-body .xs-bb1d98{padding:16px 18px}
.lm-body .xs-bc997f{background:var(--white);border:1px solid var(--rule);border-radius:10px;overflow:hidden}
.lm-body .xs-bc9f63{background:var(--page-muted);border-radius:6px;padding:10px 14px;display:flex;justify-content:space-between}
.lm-body .xs-bd1bc4{width:14%;background:var(--page-line)}
.lm-body .xs-be2c2b{background:var(--lm-tint-blue);border-color:var(--lm-tint-amber)}
.lm-body .xs-c071b4{margin-bottom:28px}
.lm-body .xs-c15f0e{width:81%}
.lm-body .xs-c250ec{width:64%}
.lm-body .xs-c28f1b{width:12%}
.lm-body .xs-c2e49e{width:22%}
.lm-body .xs-c2f371{background:var(--ice);border-radius:7px;padding:10px 14px}
.lm-body .xs-c34e06{font-size:11px;font-weight:700;color:var(--page-text);font-family:var(--mono)}
.lm-body .xs-c3b04d{background:var(--red-bg);color:var(--red);padding:12px 16px;text-align:center;flex:1;min-width:100px;border:1.5px solid var(--red)}
.lm-body .xs-c40e1a{font-family:var(--mono);font-size:22px;font-weight:500;color:var(--lm-amber)}
.lm-body .xs-c439f0{width:50%;background:var(--purple,var(--lm-purple))}
.lm-body .xs-c66ff2{width:30%}
.lm-body .xs-c69028{font-weight:700;color:var(--page-text);margin-bottom:8px}
.lm-body .xs-c9a516{width:54%}
.lm-body .xs-cabfde{background:var(--green-bg)}
.lm-body .xs-cd33c0{background:var(--lr3)}
.lm-body .xs-ce14a1{font-size:11px;color:var(--text-4)}
.lm-body .xs-ceee29{font-size:13px;color:var(--text-3);margin-bottom:6px}
.lm-body .xs-cf0679{width:100%;background:var(--lm-tint-blue);border-radius:4px 4px 0 0;height:21%}
.lm-body .xs-cf49a1{background:var(--lm-tint-blue);color:var(--lm-amber)}
.lm-body .xs-cf66ea{width:72%;background:var(--green)}
.lm-body .xs-d0caf3{width:1px;height:12px;background:var(--page-line);margin:0 6px;display:inline-block}
.lm-body .xs-d12bc8{width:5%;background:var(--green)}
.lm-body .xs-d3336c{font-size:11px;font-weight:700;color:var(--text-3);letter-spacing:.06em;text-transform:uppercase;font-family:var(--mono);margin-bottom:10px}
.lm-body .xs-d55dc9{color:var(--green-dark)}
.lm-body .xs-d61f3c{width:68%;background:var(--lm-purple)}
.lm-body .xs-d69d3b{background:var(--lr1)}
.lm-body .xs-d77e4d{font-family:var(--mono);font-size:13px;color:var(--lr-on);font-weight:700}
.lm-body .xs-d80ce8{font-size:12.5px;color:var(--lm-blue);font-weight:600;font-family:Inter,sans-serif}
.lm-body .xs-d85a11{width:71%}
.lm-body .xs-d92be9{width:90%}
.lm-body .xs-d9d416{font-size:12px;color:var(--text-4);margin-top:6px}
.lm-body .xs-db231c{text-align:center;padding:10px 12px;color:var(--green);font-weight:600}
.lm-body .xs-dd8255{width:36px;height:36px;border-radius:50%;background:var(--navy);display:flex;align-items:center;justify-content:center;color:var(--lr-on);font-size:13px;font-weight:700;font-family:var(--mono)}
.lm-body .xs-de6da7{border-bottom:1px solid var(--rule)}
.lm-body .xs-de8ed5{width:100%;background:var(--lr2);border-radius:4px 4px 0 0;height:85%}
.lm-body .xs-deba89{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:4px;flex:1;height:100%}
.lm-body .xs-df8e33{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}
.lm-body .xs-e08d0c{background:var(--lm-tint-blue)}
.lm-body .xs-e1e1a4{width:73%}
.lm-body .xs-e28d8e{display:flex;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--lm-tint-green);font-size:13px}
.lm-body .xs-e2c960{padding:8px}
.lm-body .xs-e30b4f{width:94%;background:var(--lm-green)}
.lm-body .xs-e39eba{color:var(--gold)}
.lm-body .xs-e3bda2{width:24%}
.lm-body .xs-e6cdc3{width:12%;background:var(--green)}
.lm-body .xs-e96499{background:var(--green-bg);padding:16px;border-radius:8px}
.lm-body .xs-ea93f4{width:74%}
.lm-body .xs-eb2b0a{background:var(--lm-amber)}
.lm-body .xs-ed3eff{background:var(--green);background:linear-gradient(135deg,var(--lm-green),var(--lm-green))}
.lm-body .xs-ee03a5{width:55%;background:var(--green)}
.lm-body .xs-efe9e8{width:31%}
.lm-body .xs-efea5f{margin:16px 0 0}
.lm-body .xs-f1a561{background:var(--navy);color:var(--lr-on);padding:12px 16px;border-radius:8px 0 0 8px;text-align:center;flex:1;min-width:100px}
.lm-body .xs-f38045{font-size:13px;color:var(--green-dark)}
.lm-body .xs-f3c21c{width:86%}
.lm-body .xs-f46962{padding:8px;font-weight:600;color:var(--page-text)}
.lm-body .xs-f84ad4{font-size:13px;color:var(--text-2);padding:10px;background:var(--ice);border-radius:8px;margin-top:8px}
.lm-body .xs-f91f66{width:34%}
.lm-body .xs-fcc4f9{width:58%}
.lm-body .xs-fd14ca{width:14%}
.lm-body .xs-fd3867{width:50%}
.lm-body .xs-fdf33f{margin-bottom:8px}
.lm-body .xs-ff6202{font-size:14px;color:var(--text-2);margin-bottom:12px}
.lm-body .xs-ff8798{font-size:11px;font-weight:700;color:var(--text-3);letter-spacing:.06em;text-transform:uppercase;font-family:var(--mono);margin-bottom:12px}
.lm-body .xs-ffb9ad{font-family:var(--mono);font-size:22px;font-weight:500;color:var(--green)}

/* lifted inline styles of the module calculators (learn-calculators.json) */
.xc-csni4w{grid-template-columns:1fr;gap:6px}
.xc-fizdz0{display:flex;align-items:center;gap:8px;padding:6px 0;font-size:13px;text-transform:none;letter-spacing:0;color:inherit}
.xc-1s2b2d{width:auto;margin-top:0}
