:root{
  --red:#D5161D; --red-deep:#C4151C; --on-red:#FFFFFF;   /* item 13, founder GO 6 Oct: AA contrast; brand files untouched (#ED1C24 stays in the logo) */
  --bg:#F7F5F2; --card:#FFFFFF; --text:#231F20; --sub:#756E6C;
  --line:#E4DFDA; --tint:#FBEAEB; --good:#1E7F4F; --good-tint:#E7F4EC;
  --gold:#9A6F1B; --gold-tint:#F7EFDD; --lock:#B8B1AD;
  --serif:"Source Serif 4",Georgia,'Times New Roman',serif;
  --sans:"Source Sans 3","Helvetica Neue",Arial,sans-serif;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --bg:#1C1919; --card:#272323; --text:#F2EEEB; --sub:#A99F9B;
    --line:#3B3535; --tint:#3D2325; --good:#5BBE8A; --good-tint:#22352B;
    --gold:#D3A64C; --gold-tint:#38301D; --lock:#5C5450;
    --red:#FF5A60; --red-deep:#FF6B70; --on-red:#1C1919;
  }
}
:root[data-theme="dark"]{
  --bg:#1C1919; --card:#272323; --text:#F2EEEB; --sub:#A99F9B;
  --line:#3B3535; --tint:#3D2325; --good:#5BBE8A; --good-tint:#22352B;
  --gold:#D3A64C; --gold-tint:#38301D; --lock:#5C5450;
  --red:#FF5A60; --red-deep:#FF6B70; --on-red:#1C1919;
}
*{box-sizing:border-box}
body{background:var(--bg);color:var(--text);font-family:var(--sans);font-size:16.5px;line-height:1.55;margin:0}
.wrap{max-width:960px;margin:0 auto;padding-inline:20px}
a{color:inherit}
h1,h2,h3{font-family:var(--serif);text-wrap:balance;margin:0 0 .35em}
h1{font-size:2.1rem;font-weight:700;line-height:1.15}
h2{font-size:1.45rem;font-weight:700}
h3{font-size:1.1rem;font-weight:600}
p{margin:.3em 0 .9em}
.sub{color:var(--sub)}
.small{font-size:.85rem}

/* beta ribbon */
.beta{background:var(--text);color:var(--bg);font-size:.78rem;letter-spacing:.04em;text-align:center;padding:6px 16px}
.beta b{color:var(--red)}

/* header */
header.top{border-bottom:1px solid var(--line);background:var(--card);position:sticky;top:env(safe-area-inset-top,0px);z-index:10}
.bar{display:flex;align-items:center;gap:18px;padding-block:12px;flex-wrap:wrap}
.mark{cursor:pointer;user-select:none}
.mark .wordmark{display:block;height:36px;width:auto}
.mark .sig{font-weight:400;color:var(--sub);font-size:.72rem;display:block;letter-spacing:.14em;text-transform:uppercase;margin-top:3px;font-family:var(--sans)}
/* dark-mode legibility: the charcoal fills of the final wordmark switch to the light text
   colour; geometry is the designer's original, untouched. The red glyph stays red. */
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]) .wordmark path[fill^="rgb(13"]{fill:var(--text)}
}
:root[data-theme="dark"] .wordmark path[fill^="rgb(13"]{fill:var(--text)}
nav{display:flex;gap:4px;flex-wrap:wrap;margin-left:auto}
nav button{background:none;border:0;font:inherit;font-weight:600;color:var(--sub);padding:7px 11px;border-radius:6px;cursor:pointer}
nav button:hover{color:var(--text)}
nav button.on{color:var(--red)}
nav button:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,label:focus-within{outline:2px solid var(--red);outline-offset:2px}
.eulos{font-weight:700;color:var(--gold);background:var(--gold-tint);border-radius:999px;padding:4px 12px;font-size:.9rem;white-space:nowrap;display:inline-flex;align-items:center;gap:.38em}
/* the live Ei ticker (Ei brief §1.6): always on screen, updating as problems complete.
   Badge format on narrow screens, Standard format from 760px; tap opens the full breakdown. */
.eitick{font-family:var(--serif);font-weight:700;font-size:.9rem;color:var(--red);background:var(--tint);border:0;border-radius:999px;padding:5px 13px;cursor:pointer;white-space:nowrap;font-variant-numeric:tabular-nums;transition:transform .3s}
.eitick:hover{background:var(--red);color:var(--on-red)}
.eitick .ts{display:none}
@media(min-width:760px){.eitick .tb{display:none}.eitick .ts{display:inline}}
.band{display:inline-block;font-family:var(--sans,system-ui,sans-serif);font-weight:600;font-size:.72rem;line-height:1;color:var(--red);background:var(--tint);border-radius:999px;padding:3px 8px;vertical-align:middle;white-space:nowrap}
.eitick .band{background:var(--card);margin-left:6px}
.eitick:hover .band{color:var(--red)}
.eitick.pulse{animation:eip .5s ease-out}
@keyframes eip{30%{transform:translateY(-2px)}}
@media (prefers-reduced-motion:reduce){.eitick.pulse{animation:none}}
/* password fields: the founder's eye (show/hide) — build 11 */
.pwrap{position:relative;vertical-align:middle}
.pwrap input{width:100%;box-sizing:border-box}
.pwrap input{padding-right:44px}
.pwrap .eye{position:absolute;right:6px;top:50%;transform:translateY(-50%);background:none;border:0;cursor:pointer;padding:6px;color:var(--sub);border-radius:6px;line-height:0}
.pwrap .eye:hover{color:var(--text)}
/* UAT-07: the candidate PIN is a text field masked here, never a password field a manager would adopt */
.pinfield{-webkit-text-security:disc;letter-spacing:.08em}
.pinfield.shown{-webkit-text-security:none;letter-spacing:0}
/* the Euler ID — E-BBRR-XXXXX-C, always visible, ARC-17 */
.eid{font-family:var(--serif);font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:.02em;background:var(--gold-tint);color:var(--gold);border-radius:6px;padding:2px 9px;white-space:nowrap}
.boardrow .eidc{font-size:.82rem;color:var(--sub);font-variant-numeric:tabular-nums;white-space:nowrap;flex:none}
.btabs{display:flex;gap:6px;margin:8px 0 4px;flex-wrap:wrap}
.btabs button{font:inherit;font-weight:600;font-size:.85rem;border:1.5px solid var(--line);background:var(--card);color:var(--sub);border-radius:999px;padding:5px 14px;cursor:pointer}
.btabs button.on{border-color:var(--red);background:var(--tint);color:var(--text)}
/* the Eulos currency mark — founder-chosen Option C ("The Continental"), 19 Sep 2026:
   geometric monoline sigma struck through by two close-set bars, the € gesture.
   Drawn inline, stroke=currentColor, so it wears the gold in both themes. */
.emark{height:.95em;width:auto;flex:none;display:block}

main{padding-block:34px 60px}
section[data-view]{max-width:960px}

/* buttons */
.btn{font:inherit;font-weight:700;border:0;border-radius:8px;padding:11px 22px;cursor:pointer;background:var(--red);color:var(--on-red)}
.btn:hover{background:var(--red-deep)}
.btn[disabled]{background:var(--lock);cursor:not-allowed}
.btn.ghost{background:none;color:var(--text);border:1.5px solid var(--line)}
.btn.ghost:hover{border-color:var(--sub)}

/* cards */
.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:22px}
.grid{display:grid;gap:16px}
@media(min-width:640px){.g2{grid-template-columns:1fr 1fr}.g4{grid-template-columns:repeat(4,1fr)}}
.homecard{cursor:pointer;transition:border-color .15s}
.homecard:hover{border-color:var(--red)}
.homecard .kicker{font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--red);font-weight:700}

.hero{padding-block:16px 30px}
.hero .lede{font-size:1.15rem;max-width:34em}
.factline{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.roads{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:18px}
.roadslead{font-family:var(--serif,"Source Serif 4",serif);font-size:1rem;color:var(--text);margin-right:4px}
.chip.road{color:var(--text);border-color:var(--red);background:var(--card)}
.chip.road b{color:var(--red);margin-right:5px}
.chip.road i{font-style:italic;margin-left:2px}
.chip{border:1px solid var(--line);border-radius:999px;padding:4px 13px;font-size:.85rem;color:var(--sub);background:var(--card)}

/* wizard */
.steps{display:flex;gap:6px;margin:18px 0 22px;flex-wrap:wrap}
.steps div{flex:1;min-width:70px;height:5px;border-radius:3px;background:var(--line)}
.steps div.done{background:var(--red)}
.field{margin-bottom:14px}
.field label{display:block;font-weight:600;font-size:.9rem;margin-bottom:4px}
input[type=text],input[type=email],input[type=password],select,textarea{width:100%;font:inherit;color:var(--text);background:var(--bg);border:1.5px solid var(--line);border-radius:8px;padding:10px 12px}
textarea{min-height:130px;resize:vertical}
.tickrow{display:flex;gap:12px;align-items:flex-start;padding:10px 12px;border:1px solid var(--line);border-radius:8px;margin-bottom:8px;cursor:pointer;background:var(--card)}
.tickrow>input{margin-top:4px;accent-color:var(--red);width:18px;height:18px;flex:none}
.tickrow.on{border-color:var(--good);background:var(--good-tint)}
/* UAT-09: option cards (school choice) — a 22 px radio drawn by us so every browser sizes it alike, the whole card clickable, the chosen card painted */
.tickrow.opt{align-items:flex-start}
.tickrow.opt>input[type=radio]{-webkit-appearance:none;appearance:none;width:22px;height:22px;margin:1px 0 0;border:2px solid var(--sub);border-radius:50%;background:var(--bg);display:inline-grid;place-content:center;cursor:pointer;flex:none}
.tickrow.opt>input[type=radio]::before{content:"";width:12px;height:12px;border-radius:50%;background:var(--red);transform:scale(0);transition:transform .1s}
.tickrow.opt>input[type=radio]:checked{border-color:var(--red)}
.tickrow.opt>input[type=radio]:checked::before{transform:scale(1)}
.tickrow.opt>input[type=radio]:focus-visible{outline:2px solid var(--red);outline-offset:2px}
.tickrow.opt:has(>input:checked),.tickrow.opt.on{border-color:var(--red);background:var(--tint)}
.tickrow.opt .optbody{flex:1 1 240px;min-width:0}
.campus{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:8px;margin-bottom:8px;background:var(--card)}
.campus.off{opacity:.55}
.campus .sw{position:relative;width:44px;height:26px;flex:none}
.campus .sw input{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer;margin:0}
.campus .sw i{position:absolute;inset:0;border-radius:13px;background:#c9c4c5;transition:background .15s}
.campus .sw i:after{content:'';position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;transition:left .15s}
.campus .sw input:checked+i{background:var(--good)}
.campus .sw input:checked+i:after{left:21px}
.notice{border-left:3px solid var(--red);background:var(--tint);border-radius:0 8px 8px 0;padding:12px 16px;margin:14px 0}
.notice.ok{border-left-color:var(--good);background:var(--good-tint)}

/* journey */
.lvl{display:flex;align-items:center;gap:18px;padding:16px 18px}
.lvl .art{flex:none;width:64px;height:64px}
.lvl .n{font-family:var(--serif);font-weight:700;color:var(--sub);font-size:.85rem}
.lvl h3{margin:0}
.lvl .go{margin-left:auto;display:flex;flex-direction:column;gap:6px;align-items:flex-end}
.lvl.locked{opacity:.55}
.lvl.locked .lockword{font-size:.8rem;color:var(--sub);margin-left:auto;white-space:nowrap}
.stub{font-size:.78rem;color:var(--sub);border:1px dashed var(--line);border-radius:999px;padding:2px 11px;white-space:nowrap}

/* adventure */
.advhead{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:18px}
.dots{display:flex;gap:6px;margin-left:auto}
.dots i{width:11px;height:11px;border-radius:50%;background:var(--line);display:block}
.dots i.done{background:var(--good)}
.dots i.bad{background:var(--red);opacity:.55}
.dots i.now{background:var(--red)}
.problem{min-height:300px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:26px 20px 34px;gap:8px}
.problem .stage{font-family:var(--serif);font-size:2.5rem;font-weight:600;letter-spacing:.03em;font-variant-numeric:tabular-nums;line-height:1.3}
.problem .stage .q{color:var(--red)}
.scene{width:min(320px,86%);display:block;margin:0 auto 10px;opacity:.95}
.answer{display:flex;gap:10px;justify-content:center;align-items:center;margin-top:20px;flex-wrap:wrap}
.answer input{width:150px;font-family:var(--serif);font-size:1.6rem;text-align:center;padding:8px}
.calcnote{display:inline-flex;align-items:center;gap:8px;font-size:.85rem;color:var(--sub);border:1px dashed var(--line);border-radius:999px;padding:4px 14px}
.shake{animation:sh .3s}
@keyframes sh{25%{transform:translateX(-7px)}75%{transform:translateX(7px)}}
.arrive{animation:arr .35s ease-out}
@keyframes arr{from{opacity:0;transform:translateY(7px)}}
@media (prefers-reduced-motion:reduce){.shake,.arrive{animation:none}}
.msq{display:grid;grid-template-columns:repeat(3,72px);gap:6px;justify-content:center}
.msq div{border:1.5px solid var(--line);border-radius:8px;font-family:var(--serif);font-size:1.7rem;font-weight:600;padding:12px 0;background:var(--card)}
.msq div.q{color:var(--red);border-color:var(--red)}

/* mistakes: free worked solution + paid coach (F3) */
.missrow{border-top:1px solid var(--line);padding:6px 0}
.missact{display:flex;gap:8px;flex-wrap:wrap;padding-left:2.6em}
.missact .btn{padding:6px 12px;font-size:.85rem;display:inline-flex;gap:6px;align-items:center}
.solbox{margin:8px 0 4px 2.6em;background:var(--good-tint);border-radius:8px;padding:10px 14px;font-size:.95rem}
/* insights */
.stat{padding:16px 18px}
.stat .big{font-family:var(--serif);font-size:1.9rem;font-weight:700;line-height:1.1}
.stat .lab{font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:var(--sub);display:flex;align-items:flex-end;min-height:2.6em}
.story{font-family:var(--serif);font-size:1.3rem;max-width:26em;margin:0 auto;line-height:1.5}
.hist{width:100%;border-collapse:collapse;font-size:.9rem;margin-top:8px}
.hist td{padding:6px 8px;border-top:1px solid var(--line)}
.hist td:last-child{text-align:right;font-weight:700;color:var(--gold)}
.boardrow{display:flex;gap:10px;align-items:center;padding:6px 10px;border-top:1px solid var(--line);font-size:.9rem}
.boardhead{display:flex;gap:10px;padding:4px 10px;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--sub)}
.boardhead .rk{width:2em}.boardhead .eidc{min-width:9.5em}
.boardhead a{color:inherit;text-decoration:underline;text-underline-offset:2px}.boardhead b{color:var(--text)}
.boardrow .eulostrip{color:var(--gold);font-weight:700;white-space:nowrap;font-variant-numeric:tabular-nums}
.candbar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}
.candbar button{font:inherit;font-weight:700;border:1.5px solid var(--line);background:var(--card);color:var(--text);border-radius:999px;padding:6px 14px;cursor:pointer;display:inline-flex;gap:8px;align-items:center}
.candbar button.on{border-color:var(--red);background:var(--tint)}
.whochip{font-size:.8rem;color:var(--sub);border:1px solid var(--line);border-radius:999px;padding:3px 10px;white-space:nowrap}
.hdrout{font:inherit;font-size:.8rem;cursor:pointer;padding:3px 10px;color:var(--red);border-color:var(--red)}
.hdrout:hover{background:var(--tint)}
.boardrow .rk{width:2em;color:var(--sub);font-variant-numeric:tabular-nums}
.boardrow.you{background:var(--gold-tint);border-radius:6px;font-weight:700}
.bars{display:grid;gap:10px;margin-top:6px}
.bars .row{display:grid;grid-template-columns:110px 1fr 44px;gap:10px;align-items:center;font-size:.92rem}
.bars .tr{height:10px;background:var(--line);border-radius:5px;overflow:hidden}
.bars .fl{height:100%;background:var(--red);border-radius:5px}
.tier{padding:18px}
.tier .price{font-family:var(--serif);font-size:1.5rem;font-weight:700}
.tier.locked{border-style:dashed}
.tag{display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;border-radius:4px;padding:2px 8px}
.tag.now{background:var(--good-tint);color:var(--good)}
.tag.soon{background:var(--line);color:var(--sub)}

/* euler index toggle */
.switchrow{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.switch{position:relative;width:52px;height:30px;flex:none}
.switch input{position:absolute;inset:0;opacity:0;cursor:pointer;margin:0;width:100%;height:100%}
.switch .knob{position:absolute;inset:0;border-radius:999px;background:var(--lock);transition:background .15s;pointer-events:none}
.switch .knob::after{content:"";position:absolute;top:3px;left:3px;width:24px;height:24px;border-radius:50%;background:#fff;transition:left .15s}
.switch input:checked + .knob{background:var(--good)}
.switch input:checked + .knob::after{left:25px}
.switch input:focus-visible + .knob{outline:2px solid var(--red);outline-offset:2px}

/* faculty preview */
.fprev{display:flex;gap:16px;align-items:flex-start}
.avatar{flex:none;width:64px;height:64px;border-radius:50%;background:var(--tint);color:var(--red);display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:1.6rem;font-weight:700}
.ftags{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}
.ftags span{font-size:.78rem;border:1px solid var(--line);border-radius:999px;padding:2px 10px;color:var(--sub)}

footer{border-top:1px solid var(--line);padding-block:26px 40px;color:var(--sub);font-size:.85rem}
footer .wrap{display:flex;gap:8px 26px;flex-wrap:wrap}
.linklike{background:none;border:0;font:inherit;color:inherit;text-decoration:underline;cursor:pointer;padding:0}
.linklike:hover{color:var(--text)}

/* about page */
.aboutcols{display:grid;gap:16px}
@media(min-width:640px){.aboutcols{grid-template-columns:1fr 1fr}}
.aboutcols h3{display:flex;align-items:center;gap:8px}
.aboutcols ul{margin:.2em 0 0;padding-left:1.2em}
.aboutcols li{margin-bottom:.45em}
.hr{border:0;border-top:1px solid var(--line);margin:26px 0}
.bctas{display:flex;gap:12px;flex-wrap:wrap;margin-top:8px}

.pyr{display:flex;flex-direction:column;align-items:center;gap:6px}
.pyr .r{display:flex;gap:6px}
.pyr b{display:flex;align-items:center;justify-content:center;width:66px;height:52px;border:1.5px solid var(--line);border-radius:8px;font-family:var(--serif);font-size:1.5rem;font-weight:600;background:var(--card)}
.pyr b.q{color:var(--red);border-color:var(--red)}
.mach{display:flex;align-items:center;gap:14px;justify-content:center;font-family:var(--serif);font-size:2rem;font-weight:600}
.mach .box{border:2px solid var(--text);border-radius:10px;padding:8px 18px;background:var(--card)}
svg .ink{stroke:var(--text)} svg .inkf{fill:var(--text)}
svg text{fill:var(--text);font-family:"Source Serif 4",Georgia,serif;font-weight:600}

/* build 16 — the adventure report (ARC-35), review-tier chips (ARC-33), Faculty record and honours (ARC-32)
   build 17 — Leo, the AI tutor, named and marked (ARC-37, founder 2 Oct 2026): Ask Leo pill, hint-panel header, honesty label, Bernoulli doctrine in the payload, Coach me with Leo, Meet Leo on the Profile, About card
   build 18 — the Leo lockup on the About page is the outlined (font-free) copy, Brand/Leo/Leo_lockup_outlined_FINAL.svg (3 Oct 2026) */
.rp{border-top:1px solid var(--line);margin-top:12px;padding-top:10px}
.rp .rphead{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap;margin-bottom:6px}
.rp .rphead b{font-family:var(--serif);font-size:1.05rem}
.rprow{display:grid;grid-template-columns:2em minmax(140px,1.4fr) 1fr 1fr 2.2em minmax(3em,auto) 3.4em auto auto;gap:8px;align-items:center;padding:7px 4px;border-top:1px solid var(--line);font-size:.88rem}
.rprow.head{color:var(--sub);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;border-top:0}
.rprow .rpn{color:var(--sub);font-variant-numeric:tabular-nums}
.rp-prob{zoom:.55;-moz-transform:scale(.55);-moz-transform-origin:left center;pointer-events:none}
.rp-prob .stage{font-size:2.2rem}.rp-prob svg{max-width:300px;height:auto}.rp-prob .pyr,.rp-prob .msq{justify-content:flex-start;align-items:flex-start}.rp-prob .mach{justify-content:flex-start}
.rp-prob p.story{font-size:1.5rem;margin:0}
.rp-prob .stub{display:none}
.rprow .ok{color:var(--good);font-weight:700}.rprow .bad{color:var(--red);font-weight:700}
.rtier{display:inline-block;font-size:.7rem;font-weight:600;letter-spacing:.04em;border:1.5px solid var(--text);border-radius:999px;padding:1px 9px;white-space:nowrap;color:var(--text);background:var(--card)}
.rtier.peer,.rtier.panel{background:var(--good-tint);border-color:var(--good);color:var(--good)}
.rtier.placeholder{border-style:dashed;border-color:var(--sub);color:var(--sub)}
.flagbtn{font:inherit;font-size:.78rem;background:none;border:1px solid var(--line);border-radius:6px;padding:3px 8px;color:var(--sub);cursor:pointer;white-space:nowrap}
.flagbtn.on{border-color:var(--text);color:var(--text);font-weight:600}
.mlab{display:none;font-style:normal;color:var(--sub);font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;margin-right:4px}
@media (max-width:720px){.rprow{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center}.rprow.head{display:none}.rprow .rp-prob{flex:1 0 85%;text-align:left}.rprow .rpn{flex:0 0 1.5em}.mlab{display:inline}.flagbtn{white-space:normal;text-align:left}}
.lvlcells{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin:8px 0}
.lvlcells div{border:1px solid var(--line);border-radius:8px;padding:6px 4px;text-align:center}
.lvlcells .lab{font-size:.66rem;letter-spacing:.06em;text-transform:uppercase;color:var(--sub)}
.lvlcells .n{font-family:var(--serif);font-size:1.25rem;font-weight:700}
.hon{display:grid;grid-template-columns:2em minmax(120px,1.3fr) minmax(90px,1fr) repeat(7,minmax(44px,1fr));gap:4px;align-items:center;padding:5px 4px;border-top:1px solid var(--line);font-size:.84rem;font-variant-numeric:tabular-nums}
.hon.head{border-top:0;color:var(--sub);font-size:.66rem;letter-spacing:.06em;text-transform:uppercase}
.hon .cr{text-align:center;white-space:nowrap}
.hon .cr i{font-style:normal;color:var(--sub)}
.honwrap{overflow-x:auto}
.state{display:inline-block;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;border-radius:4px;padding:1px 7px;background:var(--line);color:var(--sub)}
.state.accepted,.state.live,.state.calibrating{background:var(--good-tint);color:var(--good)}
.state.returned{background:var(--tint);color:var(--red)}

/* STELLA live tutor */
.stellacard{margin-top:16px;padding:18px}
.stellahead{display:flex;gap:12px;align-items:flex-start}
.stellabadge{flex:none;width:40px;height:40px;border-radius:50%;background:var(--tint);color:var(--red);display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-weight:700;font-size:1.25rem}
.tag.live{background:var(--tint);color:var(--red)}
.stellalog{display:flex;flex-direction:column;gap:8px;margin:12px 0 4px;max-height:320px;overflow:auto}
.bub{max-width:85%;padding:9px 13px;border-radius:12px;font-size:.95rem;white-space:pre-wrap;overflow-wrap:break-word}
.bub.you{align-self:flex-end;background:var(--tint);border-bottom-right-radius:4px}
.bub.stella{align-self:flex-start;background:var(--bg);border:1px solid var(--line);border-bottom-left-radius:4px}
.bub.thinking{color:var(--sub);font-style:italic}
.stellarow{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}
.stellarow input{flex:1;min-width:180px}
/* Leo — the AI tutor (ARC-37, founder 2 Oct 2026). Charcoal disc, white Sickle, one red star; on dark grounds the disc goes white. */
.leoroundel{flex:none;width:40px;height:40px;display:block}
.leoroundel.lg{width:56px;height:56px}
.leodisc{fill:#231F20}.leoline{stroke:#fff}.leostars{fill:#fff}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .leodisc{fill:#fff}:root:not([data-theme="light"]) .leoline{stroke:#231F20}:root:not([data-theme="light"]) .leostars{fill:#231F20}}
:root[data-theme="dark"] .leodisc{fill:#fff}:root[data-theme="dark"] .leoline{stroke:#231F20}:root[data-theme="dark"] .leostars{fill:#231F20}
.leohead{display:flex;gap:12px;align-items:flex-start}
.leohead .leoname{font-family:var(--serif);font-weight:600;font-size:1.2rem;letter-spacing:-.01em}
.leolabel{font-size:.78rem;color:var(--sub);margin-top:1px}
.leobtn{display:inline-flex;align-items:center;gap:8px;font:inherit;font-weight:700;border:1.5px solid var(--text);border-radius:999px;padding:9px 18px 9px 13px;cursor:pointer;background:var(--text);color:var(--card);font-size:.95rem}
.leobtn:hover{filter:brightness(1.15)}
.leobtn .leoglyph{width:15px;height:22px;display:block}
.leobtn.out{background:transparent;color:var(--text)}
.leobtn[disabled]{opacity:.6;cursor:default}
.leoask{display:flex;gap:12px;align-items:center;flex-wrap:wrap;justify-content:center;margin-top:16px}
.leolockup{width:240px;max-width:100%;height:auto;display:block;color:var(--text)}
.leocard{border-color:var(--text)}


/* ARC-55: Steepness after the attempt — the results list on the finish screen, the arithmetic table on the parent's Ei card */
.results{margin:10px auto 0;max-width:36em;text-align:left}.results>summary{display:inline-block;list-style:none;cursor:pointer}.results>summary::-webkit-details-marker{display:none}
.reslist{list-style:none;margin:8px 0 0;padding:0}.resrow{display:flex;gap:10px;align-items:center;padding:4px 0;border-top:1px solid var(--line);font-size:.92rem}.resrow .rk{width:1.4em;text-align:center;font-weight:700}.resrow .ok{color:var(--good)}.resrow .bad{color:var(--red)}.resrow .steep{margin-left:auto}
.arith{margin-top:10px}.arith>summary{display:inline-block;list-style:none;cursor:pointer}.arith>summary::-webkit-details-marker{display:none}
table.arith{font-size:.85rem;margin-top:4px}table.arith td,table.arith th{padding:3px 8px;text-align:left}table.arith .ok{color:var(--good);font-weight:700}table.arith .bad{color:var(--red);font-weight:700}
:root{--build-euler:"2daac0a399a9611f22c34ed56d43baaa5662345c"}
