@import url('anatomy.css');
:root{color-scheme:light;--bg:#f2f5f5;--paper:#fff;--ink:#172b34;--muted:#4b636d;--line:#cddbdd;--accent:#126558;--soft:#eaf4ef;--wrong:#9c342d;--focus:#a74c00}
html[data-theme="dark"]{color-scheme:dark;--bg:#111b20;--paper:#1b2a30;--ink:#f1f6f4;--muted:#b4c8cd;--line:#3e555d;--accent:#83d8bc;--soft:#263b38;--wrong:#ffb2a9;--focus:#ffb45c}
*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--bg);font:17px/1.65 system-ui,sans-serif}h1,h2,h3,p,figure{margin-top:0}a{color:var(--accent)}h1,h2,h3{line-height:1.2}h1{font-size:clamp(2.4rem,6vw,4.4rem);letter-spacing:-.045em;margin:24px 0}h1 span{display:block;font-size:.64em;font-weight:550;letter-spacing:-.025em;margin-top:12px}h2{font-size:1.65rem}h3{font-size:1.4rem}.hero,main{max-width:1400px;margin:auto;padding:28px 28px 0}.hero{padding-top:32px;padding-bottom:28px}.top,.actions,.chips,.workshop-title,.figure-top,.figure-bottom{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.top,.workshop-title,.figure-top,.figure-bottom{justify-content:space-between}.eyebrow{font-size:.76rem;text-transform:uppercase;letter-spacing:.13em;font-weight:750;color:var(--muted);margin:20px 0 10px}.lead{max-width:850px;font-size:1.15rem;color:var(--muted)}.chips span{background:var(--soft);color:var(--accent);border:1px solid var(--line);padding:5px 12px;border-radius:24px;font-size:.83rem;font-weight:700}.card{background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:26px;margin:0 0 24px}.intro{display:grid;grid-template-columns:1.2fr 1fr;gap:36px}.intro p{margin-bottom:10px}.timeline{list-style:none;margin:0;padding:0}.timeline li{padding:7px 0;border-bottom:1px solid var(--line)}.timeline strong{display:inline-block;min-width:70px;color:var(--accent)}summary{cursor:pointer;font-weight:750;line-height:1.5}details[open]>summary{margin-bottom:18px}.formula-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:22px 0}.formula-grid>div,.example{padding:18px;background:var(--soft);border-radius:12px}.formula-grid h3{font-size:1rem}.formula-grid .katex-display{padding:6px!important;margin:8px 0!important}.workshop{padding-top:16px}.workshop-title #progress{color:var(--accent);font-weight:750}#levels{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 20px}button{font:inherit;cursor:pointer;color:var(--accent);background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:10px 15px;font-weight:650;line-height:1.4;min-height:44px}button:hover{background:var(--soft)}button[aria-current="step"],.primary{background:var(--accent);color:var(--paper);border-color:var(--accent)}button[aria-current="step"]:hover,.primary:hover{filter:brightness(.93)}button:disabled{opacity:.5;cursor:not-allowed}button:focus-visible,input:focus-visible,a:focus-visible,summary:focus-visible,.iso-stage:focus-visible{outline:3px solid var(--focus);outline-offset:4px}.workspace{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:24px;align-items:start}.iso{background:var(--anatomy-card);color:var(--anatomy-strong);position:sticky;top:20px;padding:22px 22px 16px}.figure-top{font-family:var(--anatomy-mono);font-size:.78rem;gap:6px}.figure-top>span{color:var(--anatomy-muted)}.figure-bottom{font-size:.7rem;line-height:1.5;gap:7px;margin-top:0;color:var(--anatomy-text)}.figure-bottom output{font-weight:700}.iso-stage{width:100%;cursor:ew-resize;touch-action:pan-y}.iso-svg{max-height:410px}.range-label{font-size:.82rem;display:block;margin-top:14px}input[type="range"]{width:100%;accent-color:var(--accent);min-height:34px}.iso .actions{margin:10px 0}.iso button{font-size:.8rem}.iso figcaption{font-size:.8rem;line-height:1.6;color:var(--anatomy-text);border-top:1px solid var(--anatomy-faint);padding-top:12px;margin-top:16px}.credit{font-size:.68rem;color:var(--anatomy-muted);margin:12px 0 0}.credit a{color:inherit}.surface{fill:var(--anatomy-top);stroke:var(--anatomy-hi);stroke-width:1.3;transition:fill .65s}.applied .surface{fill:var(--anatomy-lit-shade);stroke:var(--anatomy-lit);stroke-width:2}.reference{fill:none;stroke:var(--anatomy-mid);stroke-width:.7;display:none}.parts-line{display:none}.show-reference .reference,.show-reference .parts-line{display:block}.math-board{padding:26px}.math-board h3{margin-bottom:18px}#statement p{margin-bottom:14px}.formula .katex-display{padding:12px 8px!important;margin:14px 0!important}label{display:block;font-size:.9rem;font-weight:650;margin-bottom:8px}.answer-row{margin:20px 0}.input-unit{display:flex;align-items:center;gap:12px}.input-unit input{min-width:0;width:100%}input[type="text"]{font:inherit;font-size:1.1rem;background:var(--bg);color:var(--ink);border:1px solid var(--line);border-radius:9px;padding:12px;min-height:48px}input[aria-invalid="true"]{border:2px solid var(--wrong)}#feedback,#exit-feedback{padding:12px 15px;border-left:3px solid var(--line);font-size:.92rem;min-height:48px;margin:18px 0}#feedback.error,#exit-feedback.error{border-color:var(--wrong);color:var(--wrong)}#feedback.success,#exit-feedback.success{border-color:var(--accent);background:var(--soft)}.hint{padding:14px;background:var(--soft);border-radius:9px;margin-top:18px}.apply{margin-top:20px;width:100%;border:2px solid var(--accent)}#next{margin-top:12px;width:100%}.muted{color:var(--muted);font-size:.84rem}.katex-display{max-width:100%}#exit-form{display:flex;gap:12px;align-items:center;flex-wrap:wrap}#exit-form label{width:100%}#exit-form input{flex:1;min-width:180px}footer{text-align:center;color:var(--muted);font-size:.8rem;padding:12px 0 35px}[hidden]{display:none!important}
@media(max-width:1000px){.workspace{grid-template-columns:1fr}.iso{position:static}.iso-svg{max-height:430px}.intro{gap:20px}.figure-bottom{font-size:.78rem}}
@media(max-width:600px){body{font-size:16px}.hero,main{padding-left:14px;padding-right:14px}.hero{padding-top:20px}.card{padding:20px 16px;border-radius:15px}.intro{grid-template-columns:1fr;gap:15px}.formula-grid{grid-template-columns:1fr}.figure-top{font-size:.7rem}.iso-svg{max-height:none}#levels button{font-size:.8rem;padding:10px}.actions{gap:8px}.actions button{font-size:.85rem}.workspace{gap:0}h2{font-size:1.45rem}.math-board{padding:22px 18px}.workshop-title{gap:0}.eyebrow{font-size:.7rem}.katex{font-size:1.05em}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
@media print{body{background:white;color:black;font-size:11pt}.hero,main{padding:0;max-width:none}.hero h1{font-size:26pt}.top,.workshop,.chips,.skip-link,#exit-form,#exit-feedback,footer{display:none}.intro{display:block}.card{border:0;padding:8px 0;margin:14px 0}.timeline{display:none}.formula-grid{grid-template-columns:1fr 1fr}.example{background:white;border:1px solid #aaa}.katex-display{background:white!important;padding:5px!important;margin:8px 0!important}}
/* Els botons principals conserven el contrast també quan hi ha el punter. */
.primary:hover,button[aria-current="step"]:hover{background:var(--accent);color:var(--paper)}
.chip-action{background:var(--accent)!important;color:#fff!important;border:1px solid var(--accent)!important;text-decoration:none!important;display:inline-flex;align-items:center;gap:6px;transition:filter .15s}
.chip-action:hover{filter:brightness(.92);color:#fff!important}
.scoreboard{padding:14px 18px;margin:0;min-width:290px;background:var(--soft);border:1px solid var(--line);border-radius:14px}
.score-header{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:6px}
.score-label{font-size:.78rem;font-weight:750;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}
.score-value{font-size:1.1rem;color:var(--ink);font-weight:700}
.score-value strong{font-size:1.4rem;color:var(--accent);font-weight:800}
.score-total{font-size:.85rem;color:var(--muted)}
.score-bar-track{width:100%;height:10px;background:var(--paper);border:1px solid var(--line);border-radius:999px;overflow:hidden;margin:6px 0}
.score-bar-fill{height:100%;width:0%;background:linear-gradient(90deg,var(--accent),#25a28c);border-radius:999px;transition:width .4s ease}
.score-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:.78rem;color:var(--muted);font-weight:600}
@media(max-width:768px){.workshop-title{flex-direction:column;align-items:stretch}.scoreboard{min-width:auto;width:100%}}

#machine-card.iso[data-theme="dark"]{--anatomy-card:#17262d;--anatomy-paper:#17262d;--anatomy-top:#24363e;--anatomy-face:#2a3e47;--anatomy-shade-0:#142028;--anatomy-shade-1:#192a32;--anatomy-shade-2:#20313a;--anatomy-shade-3:#253842;--anatomy-hi:#e0ebed;--anatomy-mid:#9aafb6;--anatomy-lo:#627982;--anatomy-faint:#3c535c;--anatomy-lit-top:#3a515b;--anatomy-lit-shade:#344b55;--anatomy-text:#c0cdd2;--anatomy-muted:#a4b8bf;--anatomy-weight:.7px}

.creative-intro{grid-column:1/-1;background:var(--soft);border-radius:12px;padding:20px}.creative-intro p:last-child{margin-bottom:0}.printed-ink{fill:var(--anatomy-lo);stroke:none}.applied .printed-ink{fill:var(--anatomy-hi)}
