/* MyMockfolio — "practice simple" */
:root {
  color-scheme: light dark;
  --bg:#edf3ef;
  --surface:#ffffff;
  --surface-2:#f5f8f6;
  --ink:#10231e;
  --muted:#536861;
  --line:#cdd9d3;
  --green:#0b6b4f;
  --green-dark:#0b2f26;
  --green-soft:#dceee6;
  --lime:#b9f264;
  --red:#b83c3c;
  --amber:#a26105;
  --shadow:0 18px 50px rgba(10,48,38,.10);
}
@media (prefers-color-scheme: dark) {
  :root {
    --bg:#07110e;
    --surface:#0d1d18;
    --surface-2:#112620;
    --ink:#f0f7f3;
    --muted:#a9bdb5;
    --line:#2a4038;
    --green:#42c697;
    --green-dark:#061d17;
    --green-soft:#173b30;
    --lime:#b9f264;
    --red:#ff8e8e;
    --amber:#efb45e;
    --shadow:0 22px 55px rgba(0,0,0,.3);
  }
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:Manrope,system-ui,sans-serif;line-height:1.55}
button,input{font:inherit}
button{cursor:pointer}
a{color:inherit}
.mono{font-family:"IBM Plex Mono",monospace}
.wrap{width:min(1180px,calc(100% - 32px));margin-inline:auto}
.api-warn{background:#3d2c07;color:#ffd98a;border:1px solid var(--amber);border-radius:10px;padding:12px 16px;margin:14px auto 0;font-size:.82rem;font-weight:700;max-width:1180px;width:calc(100% - 32px)}
.api-warn[hidden]{display:none}
.topline{display:flex;justify-content:flex-end;align-items:center;gap:22px;padding:18px 0;font-size:.85rem;font-weight:700;color:var(--muted)}
.wordmark{margin-right:auto;color:var(--ink);font-size:1rem;font-weight:800;letter-spacing:-.025em}
.topline a{text-decoration:none}.topline a:hover{color:var(--green)}
.small-cta{padding:9px 14px;border-radius:9px;background:var(--green-dark);color:#fff!important}
.hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:56px;align-items:center;padding:74px 0 68px}
.kicker{display:inline-flex;align-items:center;gap:9px;color:var(--green);font-size:.82rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.kicker:before{content:"";width:28px;height:2px;background:currentColor}
h1{font-size:clamp(2.7rem,6vw,5.6rem);line-height:.96;letter-spacing:-.065em;margin:18px 0 24px;max-width:820px}
.hero-copy{font-size:clamp(1.05rem,2vw,1.3rem);max-width:680px;color:var(--muted);margin:0 0 30px}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.btn{border:0;border-radius:10px;padding:13px 18px;font-weight:800;background:var(--green);color:#fff;transition:transform .16s ease,filter .16s ease}
.btn:hover{filter:brightness(1.06)} .btn:active{transform:translateY(1px)}
.btn.alt{background:transparent;color:var(--ink);border:1px solid var(--line)}
.btn:disabled{opacity:.45;cursor:not-allowed}
.hero-note{font-size:.78rem;color:var(--muted);margin-top:14px}
.week-card{background:var(--green-dark);color:#f4fff9;padding:28px;border-radius:24px 6px 24px 6px;box-shadow:var(--shadow);position:relative;overflow:hidden;min-height:330px}
.week-card:after{content:"";position:absolute;width:180px;height:180px;border:44px solid rgba(185,242,100,.15);border-radius:50%;right:-58px;bottom:-72px}
.week-top{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}
.live-pill{font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;background:var(--lime);color:#10231e;padding:6px 9px;border-radius:999px}
.week-card h2{font-size:1.15rem;margin:4px 0 0}
.starting{margin:50px 0 4px;color:#c6d8d1;font-size:.82rem}
.hero-money{font:600 clamp(3.1rem,7vw,4.9rem)/1 "IBM Plex Mono",monospace;letter-spacing:-.07em;margin:0}
.week-rules{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:48px;position:relative;z-index:1}
.week-rules div{border-top:1px solid rgba(255,255,255,.2);padding-top:11px;font-size:.74rem;color:#c6d8d1}.week-rules b{display:block;color:white;font-size:.88rem;margin-bottom:2px}
.ad-slot{display:flex;min-height:92px;align-items:center;justify-content:center;text-align:center;border-block:1px solid var(--line);color:var(--muted);font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;margin:10px auto 74px}
section{padding:76px 0}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:32px}
.section-head h2{font-size:clamp(2rem,4.2vw,3.5rem);letter-spacing:-.05em;line-height:1.03;margin:0;max-width:750px}
.section-head p{margin:0;color:var(--muted);max-width:390px}
.eyebrow{color:var(--green);font-weight:800;font-size:.76rem;letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px}
.identity-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.panel{background:var(--surface);border:1px solid var(--line);box-shadow:0 8px 26px rgba(10,48,38,.05)}
.identity-form{padding:30px;border-radius:6px 22px 6px 22px}
label{display:block;font-size:.78rem;font-weight:800;margin-bottom:8px}
input{width:100%;border:1px solid var(--line);background:var(--surface-2);color:var(--ink);border-radius:9px;padding:13px 14px;outline:none}
input:focus{border-color:var(--green);box-shadow:0 0 0 3px var(--green-soft)}
.form-row{display:flex;gap:10px}.form-row input{flex:1}.form-row .btn{white-space:nowrap}
.fine{font-size:.76rem;color:var(--muted);margin:14px 0 0}
.player-card{padding:30px;border-radius:22px 6px 22px 6px;background:var(--green-dark);color:#f7fff9;display:flex;flex-direction:column;justify-content:space-between;min-height:220px;position:relative;overflow:hidden}
.player-card:before{content:"MF";position:absolute;font:700 8rem/1 "IBM Plex Mono";right:-15px;bottom:-24px;color:rgba(255,255,255,.05)}
.card-label{font-size:.67rem;letter-spacing:.1em;text-transform:uppercase;color:#b8ccc4}
.player-name{font-size:1.3rem;font-weight:800;margin-top:6px}
.player-code{font:600 clamp(1.8rem,4vw,2.6rem)/1 "IBM Plex Mono",monospace;letter-spacing:.02em;margin:30px 0 20px}
.card-actions{display:flex;gap:10px;align-items:center;position:relative;z-index:1}.card-actions button{padding:9px 12px;border:1px solid rgba(255,255,255,.25);background:transparent;color:#fff;border-radius:8px;font-weight:700;font-size:.78rem}.saved-msg{font-size:.72rem;color:var(--lime);min-height:1em}
.returning{margin-top:24px;border-top:1px solid var(--line);padding-top:20px}
.returning h3{margin:0 0 6px;font-size:1rem}
.returning p{margin:0 0 14px;font-size:.8rem;color:var(--muted)}
.return-msg{font-size:.78rem;font-weight:700;min-height:1.1em;margin:10px 0 0!important;color:var(--muted)}
.return-msg.error{color:var(--red)}.return-msg.ok{color:var(--green)}
.save-panel{margin-top:22px;background:rgba(185,242,100,.13);border:1.5px solid var(--lime);border-radius:12px;padding:18px;position:relative;z-index:1}
.save-panel[hidden]{display:none}
.save-panel h3{margin:0 0 10px;font-size:1.02rem;color:#fff;display:flex;gap:8px;align-items:center}
.save-panel h3 svg{flex:none}
.save-points{margin:0 0 16px;padding-left:20px;font-size:.84rem;color:#e6f3ec}
.save-points li{margin-bottom:8px}.save-points li:last-child{margin-bottom:0}
.save-points b{color:#fff}
.saved-btn{width:100%;border:0;border-radius:9px;padding:12px 14px;font-weight:800;background:var(--lime);color:#10231e}
.saved-btn:disabled{background:rgba(255,255,255,.16);color:#cfe3d9;cursor:default}
.saved-note{font-size:.78rem;color:var(--lime);margin:10px 0 0;min-height:1em;font-weight:700}
.desk-section{background:var(--green-dark);color:#effaf5;padding:82px 0}
.desk-section .section-head p{color:#b8ccc4}.desk-section .eyebrow{color:var(--lime)}
.desk{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(310px,.9fr);gap:16px}
.desk-panel{background:#0f3b30;border:1px solid #29594a;border-radius:14px;padding:22px}
.desk-title{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-bottom:18px}.desk-title h3{margin:0;font-size:1rem}.sim-tag{font:600 .65rem "IBM Plex Mono";letter-spacing:.08em;color:var(--lime)}
.ticker-search{margin-bottom:12px;background:#092d24;border-color:#315e50;color:white}
.ticker-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:22px}
.ticker{background:#0a3027;color:#dbe9e3;border:1px solid #315e50;border-radius:8px;padding:10px;text-align:left}.ticker b{display:block;font-family:"IBM Plex Mono";font-size:.85rem}.ticker span{font-size:.7rem;color:#a9bdb5}.ticker.active{border-color:var(--lime);background:#173f33;color:var(--lime)}
.quote{display:flex;justify-content:space-between;align-items:end;border-block:1px solid #315e50;padding:19px 0;margin-bottom:18px}.quote-symbol{font:600 1.35rem "IBM Plex Mono"}.quote-name{font-size:.72rem;color:#a9bdb5}.quote-price{font:600 1.8rem "IBM Plex Mono";text-align:right}.quote-change{font-size:.73rem;color:#86d4b7}
.trade-controls{display:grid;grid-template-columns:1fr auto auto;gap:9px;align-items:end}.trade-controls label{color:#c1d1cb}.trade-controls input{background:#092d24;border-color:#315e50;color:#fff;min-width:0}.trade-btn{border:0;border-radius:8px;padding:13px 17px;font-weight:800}.buy{background:var(--lime);color:#10231e}.sell{background:#e6eee9;color:#17342b}.trade-btn:disabled{opacity:.45;cursor:not-allowed}
.order-estimate{font:500 .72rem "IBM Plex Mono";color:#a9bdb5;margin:12px 0 0}.status{margin-top:12px;min-height:22px;font-size:.78rem;color:var(--lime)}.status.error{color:#ffb1b1}
.summary-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.metric{background:#092d24;border-radius:9px;padding:14px}.metric span{display:block;font-size:.68rem;color:#a9bdb5}.metric strong{display:block;font:600 1.18rem "IBM Plex Mono";margin-top:5px}.metric.wide{grid-column:1/-1;background:var(--lime);color:#10231e}.metric.wide span{color:#3f5c52}.positive{color:#83dea9!important}.negative{color:#ff9c9c!important}
.positions{margin-top:16px}.positions h4{font-size:.75rem;margin:0 0 8px;color:#b8ccc4}.position-row{display:grid;grid-template-columns:1fr auto auto;gap:12px;border-top:1px solid #315e50;padding:11px 0;font-size:.77rem}.position-row b{font-family:"IBM Plex Mono"}.empty{font-size:.8rem;color:#a9bdb5;padding:25px 0;text-align:center;border:1px dashed #315e50;border-radius:8px}
.tick-btn{width:100%;margin-top:13px;padding:10px;border:1px solid #315e50;border-radius:8px;background:transparent;color:#e8f1ed;font-weight:700}.tick-btn:hover{border-color:var(--lime)}
.scoreboard-wrap{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:24px;align-items:start}
.leaderboard{background:var(--surface);border:1px solid var(--line);border-radius:5px 20px 5px 20px;overflow:hidden}
.leader-head,.leader-row{display:grid;grid-template-columns:54px minmax(140px,1fr) auto;gap:12px;align-items:center;padding:14px 18px}.leader-head{background:var(--surface-2);color:var(--muted);font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.leader-row{border-top:1px solid var(--line);font-size:.85rem}.leader-row.top{background:color-mix(in srgb,var(--green-soft) 55%,var(--surface))}.rank{font:600 .86rem "IBM Plex Mono"}.player-cell b{display:block}.player-cell span{font-size:.7rem;color:var(--muted)}.value{font-family:"IBM Plex Mono";text-align:right}.up{color:var(--green);font-weight:700}.leader-row.you{outline:2px solid var(--green);outline-offset:-2px}
.reset-card{background:var(--green-dark);color:#f3fff8;padding:24px;border-radius:18px 5px 18px 5px;position:sticky;top:16px}.reset-card .big{font:600 3.2rem/1 "IBM Plex Mono";color:var(--lime);margin:14px 0 9px}.reset-card p{color:#c0d0c9;font-size:.82rem;margin:0}.reset-card hr{border:0;border-top:1px solid rgba(255,255,255,.15);margin:20px 0}.reset-card b{font-size:.85rem}.reset-card ul{padding-left:18px;color:#c0d0c9;font-size:.77rem}
.ad-dark{margin:0;min-height:110px;border-color:rgba(255,255,255,.18);color:#8da89d}
.week-card .week-rules{margin-top:30px}
.goal-line{margin:24px 0 0;font:600 1.3rem "IBM Plex Mono",monospace;color:var(--lime);position:relative;z-index:1}
.goal-line span{display:block;font-family:Manrope,sans-serif;font-size:.74rem;font-weight:600;color:#c6d8d1;margin-bottom:3px}
.run-rule{margin-top:22px;border:1.5px solid var(--amber);background:var(--surface-2);border-radius:12px;padding:16px 18px}
.run-rule h3{margin:0 0 6px;font-size:.95rem;color:var(--amber)}
.run-rule p{margin:0;font-size:.84rem}
.run-rule .sim-note{margin-top:9px;font-size:.72rem;color:var(--muted)}
.run-bar{display:flex;flex-wrap:wrap;gap:8px 26px;align-items:center;background:#092d24;border:1px solid #315e50;border-radius:12px;padding:14px 18px;margin-bottom:16px;font-size:.84rem;color:#dbe9e3}
.run-dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--lime);margin-right:8px}
.run-bar .sim-note{flex-basis:100%;font-size:.7rem;color:#8da89d}
.complete-banner{background:var(--lime);color:#10231e;border-radius:12px;padding:20px;margin-bottom:16px}
.complete-banner[hidden]{display:none}
.complete-banner h3{margin:0 0 6px;font-size:1.2rem}
.complete-banner p{margin:0 0 14px;font-size:.88rem;max-width:560px}
.complete-banner .btn{background:#10231e;color:#fff}
.goal-progress{margin-top:16px}
.gp-top{display:flex;justify-content:space-between;gap:12px;font-size:.72rem;color:#a9bdb5;margin-bottom:7px}
.gp-track{height:10px;border-radius:99px;background:#092d24;overflow:hidden}
.gp-fill{height:100%;width:50%;background:var(--lime);border-radius:99px;transition:width .3s ease}
.tick-btn.danger{color:#ffcf9c;border-color:#7a5a24}
.tick-btn.danger:hover{border-color:#efb45e}
.board-note{font-size:.74rem;color:var(--muted);padding:12px 18px;border-top:1px solid var(--line);background:var(--surface-2)}
.leader-row .days{font-size:.95rem;font-weight:600}
.archive-list{margin:10px 0 0;padding:0;list-style:none}
.archive-list li{border-top:1px solid rgba(255,255,255,.12);padding:9px 0;font-size:.76rem;color:#c0d0c9}
.archive-list li b{color:#fff;font-size:.76rem}
.mode-picker-wrap{border:0;padding:0;margin:18px 0 2px;min-width:0}
.mode-picker-wrap legend{font-size:.78rem;font-weight:800;padding:0;margin-bottom:8px}
.mode-picker{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.mode-opt{position:relative;display:block}
.mode-opt input{position:absolute;top:14px;right:14px;width:18px;height:18px;padding:0;margin:0;border:0;background:transparent;accent-color:var(--green);cursor:pointer;z-index:1}
.mode-opt label{display:block;border:1.5px solid var(--line);border-radius:12px;padding:13px 42px 13px 14px;cursor:pointer;margin:0;background:var(--surface-2);font-weight:600}
.mode-opt input:checked+label{border-color:var(--green);background:var(--green-soft)}
.mode-opt input:focus-visible+label{box-shadow:0 0 0 3px var(--green-soft)}
.mode-opt b{display:block;font-size:.92rem;font-weight:800;margin-bottom:2px}
.mode-opt span{font-size:.74rem;color:var(--muted);line-height:1.45;display:block}
.run-rule.learn-mode{border-color:var(--green)}
.run-rule.learn-mode h3{color:var(--green)}
.run-switch{margin-left:auto;background:transparent;border:1px solid #315e50;color:#dbe9e3;border-radius:8px;padding:7px 11px;font-weight:700;font-size:.76rem}
.run-switch:hover{border-color:var(--lime)}
@media(max-width:560px){.mode-picker{grid-template-columns:1fr}.run-switch{margin-left:0}}
.universe{display:grid;grid-template-columns:.8fr 1.2fr;gap:42px;align-items:start}.universe h2{font-size:clamp(2rem,4vw,3.4rem);line-height:1.05;letter-spacing:-.05em;margin:0 0 18px}.universe p{color:var(--muted)}
.asset-list{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line)}.asset-item{padding:20px 0;border-bottom:1px solid var(--line)}.asset-item:nth-child(odd){padding-right:20px}.asset-item:nth-child(even){padding-left:20px;border-left:1px solid var(--line)}.asset-item b{font:600 1rem "IBM Plex Mono";display:block}.asset-item span{font-size:.78rem;color:var(--muted)}
.learn{margin-top:60px;padding:28px;background:var(--green-soft);border-radius:5px 20px 5px 20px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:28px}.learn h3{margin:0;font-size:1.05rem}.learn p{font-size:.78rem;color:var(--muted);margin:8px 0 0}.num{font:600 .7rem "IBM Plex Mono";color:var(--green);margin-bottom:10px}
footer{padding:32px 0 46px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:24px;color:var(--muted);font-size:.72rem}footer p{margin:0;max-width:720px}.footer-tag{font-weight:800;color:var(--green)}
.toast{position:fixed;left:50%;bottom:22px;transform:translate(-50%,24px);background:var(--ink);color:var(--surface);padding:11px 15px;border-radius:8px;font-size:.78rem;font-weight:700;opacity:0;pointer-events:none;transition:.22s ease;z-index:30;box-shadow:var(--shadow)}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:820px){
  .hero,.identity-grid,.desk,.scoreboard-wrap,.universe{grid-template-columns:1fr}.hero{gap:34px;padding-top:46px}.section-head{display:block}.section-head p{margin-top:16px}.reset-card{position:static}.universe{gap:20px}.learn{grid-template-columns:1fr}.topline a:not(.small-cta){display:none}
}
@media(max-width:560px){
  .wrap{width:min(100% - 22px,1180px)}
  .hero{padding-top:34px}.week-card{min-height:300px;padding:22px}.week-rules{margin-top:40px}.hero-money{font-size:3.15rem}
  section,.desk-section{padding:58px 0}.identity-form,.player-card,.desk-panel{padding:19px}.form-row{display:block}.form-row .btn{width:100%;margin-top:9px}
  .ticker-grid{grid-template-columns:repeat(2,1fr)}.trade-controls{grid-template-columns:1fr 1fr}.trade-controls label{grid-column:1/-1}.trade-btn{padding-inline:10px}
  .leader-head{display:none}.leader-row{grid-template-columns:38px 1fr auto;padding:14px 12px}
  .asset-list{grid-template-columns:1fr}.asset-item:nth-child(odd),.asset-item:nth-child(even){padding:16px 0;border-left:0}.learn{padding:22px}footer{display:block}.footer-tag{display:block;margin-top:12px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Explainer video */
.explainer{margin:34px 0}
.explainer-video{display:block;width:100%;max-width:420px;margin:0 auto;border-radius:14px;border:1px solid #1f4d3f;box-shadow:0 8px 30px rgba(0,0,0,.35)}

/* Buy wizard — 6-page guided buy flow */
body.buy-open{overflow:hidden}
.buy-wizard{position:fixed;inset:0;z-index:40;background:var(--bg);overflow-y:auto;-webkit-overflow-scrolling:touch}
.buy-wizard[hidden]{display:none}
.buy-top{display:flex;justify-content:space-between;align-items:center;padding:16px 0}
.buy-close{font-size:.8rem;font-weight:800;color:var(--muted);text-decoration:none;border:1px solid var(--line);border-radius:8px;padding:8px 12px}
.buy-close:hover{color:var(--green);border-color:var(--green)}
.buy-page{padding:6px 0 46px}
.buy-page[hidden]{display:none}
.buy-back{display:inline-block;margin-bottom:16px;font-weight:700;color:var(--muted);text-decoration:none;font-size:.85rem}
.buy-back:hover{color:var(--green)}
.buy-head{margin-bottom:24px}
.buy-head h2{font-size:clamp(1.9rem,4.5vw,3rem);letter-spacing:-.045em;line-height:1.05;margin:0 0 10px}
.buy-head p{color:var(--muted);max-width:580px;margin:0}
.buy-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.buy-card{background:var(--surface);border:1.5px solid var(--line);border-radius:14px;padding:18px;text-align:left;color:var(--ink);transition:border-color .15s ease}
.buy-card:hover{border-color:var(--green)}
.buy-card b{font:600 1.05rem "IBM Plex Mono",monospace;display:block}
.buy-card-name{font-size:.78rem;color:var(--muted);display:block}
.buy-card-price{font:600 1.35rem "IBM Plex Mono",monospace;display:block;margin-top:10px}
.buy-card-at{font-size:.7rem;color:var(--muted);display:block;margin-top:2px}
.buy-quote{display:flex;justify-content:space-between;align-items:end;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:20px;margin-bottom:16px}
.buy-facts{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;margin-bottom:8px}
.buy-fact{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:16px}
.buy-fact b{display:block;font-size:.85rem;margin-bottom:6px}
.buy-fact p{margin:0;font-size:.8rem;color:var(--muted)}
.buy-amount-box{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:22px;max-width:460px}
.buy-amount-box input{font-size:1.2rem}
.buy-estimate{font:600 .95rem "IBM Plex Mono",monospace;margin-top:14px}
.buy-power{font-size:.8rem;color:var(--muted);margin-top:6px}
.buy-error{color:var(--red);font-weight:700;font-size:.82rem;min-height:1.3em;margin:12px 0 0}
.buy-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px;align-items:center}
.buy-actions .btn{text-decoration:none}
.buy-go{background:var(--lime);color:#10231e}
.checklist{display:grid;gap:12px;max-width:640px}
.check-item{display:flex;gap:14px;align-items:flex-start;background:var(--surface);border:1.5px solid var(--line);border-radius:12px;padding:16px;cursor:pointer;margin:0;font-weight:400;font-size:.9rem}
.check-item input{width:20px;height:20px;padding:0;margin-top:2px;accent-color:var(--green);flex:none}
.check-item b{display:block;font-size:.92rem;font-weight:800;margin-bottom:2px}
.check-item span span{font-size:.78rem;color:var(--muted);display:block;line-height:1.5}
.order-summary{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:8px 22px;max-width:520px}
.order-row{display:flex;justify-content:space-between;gap:16px;padding:13px 0;border-bottom:1px solid var(--line);font-size:.88rem}
.order-row:last-child{border-bottom:0}
.order-row span:first-child{color:var(--muted)}
.order-row b{font-family:"IBM Plex Mono",monospace;font-weight:600;text-align:right}
.order-row.total b{font-size:1.15rem;color:var(--green)}
.guided-buy{display:block;text-align:center;margin-top:12px;text-decoration:none}
.buy-edu{margin:30px 0 8px;max-width:680px}
.buy-edu h3{font-size:1.05rem;margin:0 0 10px;letter-spacing:-.02em}
.buy-edu p{font-size:.86rem;color:var(--muted);margin:0 0 12px;line-height:1.65}
.buy-edu p b{color:var(--ink)}
@media(max-width:820px){.buy-grid{grid-template-columns:repeat(2,1fr)}.buy-facts{grid-template-columns:1fr}}
@media(max-width:560px){.buy-grid{grid-template-columns:1fr}}

/* Learn center, lessons, and static info pages */
.learn-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:6px}
.learn-card{background:var(--surface);border:1.5px solid var(--line);border-radius:14px;padding:20px;text-decoration:none;color:var(--ink)}
.learn-card:hover{border-color:var(--green)}
.learn-card b{display:block;font-size:1rem;margin-bottom:4px}
.learn-card span{font-size:.8rem;color:var(--muted)}
.lesson{max-width:740px;margin:0 auto;padding:26px 0 8px}
.lesson h3{font-size:clamp(1.4rem,3vw,2rem);letter-spacing:-.03em;margin:0 0 6px}
.lesson .lesson-meta{font-size:.74rem;color:var(--muted);margin-bottom:16px}
.lesson p{font-size:.92rem;line-height:1.75;margin:0 0 14px}
.static-page{max-width:760px}
.static-page h2{font-size:clamp(1.8rem,4vw,2.8rem);letter-spacing:-.04em;margin:0 0 18px}
.static-page h4{font-size:1rem;margin:24px 0 8px;color:var(--ink)}
.static-page p{font-size:.9rem;line-height:1.7;color:var(--muted);margin:0 0 12px}
.static-page p b{color:var(--ink)}
.placeholder-note{font-size:.75rem;color:var(--amber);font-weight:700}
.foot-links{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:14px}
.foot-links a{color:var(--muted);text-decoration:none;font-weight:700;font-size:.78rem}
.foot-links a:hover{color:var(--green)}
@media(max-width:820px){.learn-cards{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.learn-cards{grid-template-columns:1fr}}
