:root{--bg:#0d0f13;--bg-elev:#14171d;--bg-sunken:#0a0c0f;--line:#232830;--line-soft:#1b1f26;--text:#e7eaf0;--text-dim:#9aa3b2;--text-faint:#6b7484;--accent:#d3a75d;--accent-dim:#8a6d38;--ok:#4ade80;--ok-bg:#10261a;--bad:#f87171;--bad-bg:#2a1416;--radius:10px;--mono:ui-monospace, "SF Mono", "JetBrains Mono", Menlo, monospace;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-color-scheme:light){:root{--bg:#f7f7f5;--bg-elev:#fff;--bg-sunken:#efefec;--line:#dedcd6;--line-soft:#e9e8e3;--text:#16181d;--text-dim:#5c6270;--text-faint:#878d99;--accent:#8a6209;--accent-dim:#b99a5c;--ok:#17803d;--ok-bg:#e8f6ec;--bad:#b91c1c;--bad-bg:#fbeaea;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Inter,sans-serif;font-size:15px;line-height:1.55}h1,h2,h3,h4{letter-spacing:-.015em;margin:0;font-weight:600}button{font:inherit;color:inherit;cursor:pointer}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.home{max-width:1100px;margin:0 auto;padding:clamp(3rem,9vh,6rem) 1.25rem 4rem}.eyebrow{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin:0 0 .9rem;font-size:.72rem}.home-head h1{max-width:20ch;font-size:clamp(1.9rem,4.4vw,3rem);line-height:1.1}.lede{max-width:62ch;color:var(--text-dim);margin:1.1rem 0 0;font-size:1.02rem}.cards{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;margin:3rem 0 2rem;display:grid}.card{text-align:left;background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;align-items:stretch;gap:.55rem;padding:1.4rem 1.3rem 1.2rem;transition:border-color .15s,transform .15s,background .15s;display:flex}.card:hover{border-color:var(--accent-dim)}.card-tag{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--text-faint);font-size:.68rem}.card-title{letter-spacing:-.02em;font-size:1.25rem;font-weight:600}.card-blurb{color:var(--text-dim);font-size:.9rem}.card-points{color:var(--text-faint);font-size:.82rem;font-family:var(--mono);flex-direction:column;gap:.3rem;margin:.5rem 0 0;padding:0;list-style:none;display:flex}.card-points li:before{content:"·  ";color:var(--accent-dim)}.card-cta{text-align:left;border:1px solid var(--accent-dim);width:100%;color:var(--accent);background:0 0;border-radius:7px;margin-top:.9rem;padding:.55rem .8rem;font-size:.85rem;display:block}.card-cta:hover{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 10%, transparent)}.card-cta+.card-cta{margin-top:.45rem}.card-cta.is-full{border-color:var(--line);color:var(--text-dim)}.card-cta.is-full:hover{border-color:var(--accent-dim);color:var(--text);background:0 0}.card-locked{border:1px dashed var(--line);color:var(--text-faint);border-radius:7px;margin:.45rem 0 0;padding:.55rem .8rem;font-size:.82rem}.card-locked:before{content:"🔒  "}.unlock{background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--radius);max-width:640px;margin:1rem 0 2.5rem;padding:1.5rem 1.4rem}.unlock h2{font-size:1.05rem}.unlock p{color:var(--text-dim);max-width:60ch;margin:.4rem 0 0;font-size:.9rem}.unlock.is-open{border-color:color-mix(in srgb, var(--ok) 45%, transparent)}.unlock.is-open h2{color:var(--ok)}.unlock-points{font-family:var(--mono);color:var(--text-faint);grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:.25rem 1rem;margin:.9rem 0 0;padding:0;font-size:.78rem;list-style:none;display:grid}.unlock-points li:before{content:"·  ";color:var(--accent-dim)}.unlock-form{flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:1.2rem;display:flex}.unlock-form label{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-faint);font-size:.72rem}.unlock-form input{background:var(--bg-sunken);border:1px solid var(--line);min-width:0;color:var(--text);font:inherit;border-radius:7px;flex:10rem;padding:.55rem .7rem}.unlock-form input:focus{border-color:var(--accent);outline:none}.unlock-form input[aria-invalid=true]{border-color:var(--bad)}.unlock-error{min-height:1.2rem;font-size:.83rem;color:var(--bad)!important;margin:.5rem 0 0!important}.variant-tabs{flex-wrap:wrap;gap:.5rem;display:flex}.variant-tab{text-align:left;background:var(--bg-elev);border:1px solid var(--line);border-radius:8px;flex-direction:column;flex:12rem;gap:.1rem;padding:.6rem .85rem;display:flex}.variant-tab:hover{border-color:var(--accent-dim)}.variant-tab.is-active{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 8%, var(--bg-elev))}.variant-n{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-faint);font-size:.68rem}.variant-tab.is-active .variant-n{color:var(--accent)}.variant-label{font-size:.9rem}.home-foot{color:var(--text-faint);max-width:60ch;font-size:.83rem}.runner{flex-direction:column;gap:1.25rem;max-width:900px;margin:0 auto;padding:2rem 1.25rem 5rem;display:flex}.runner-head{border-bottom:1px solid var(--line);grid-template-columns:auto 1fr auto;align-items:start;gap:1rem;padding-bottom:1.1rem;display:grid}.runner-title h1{font-size:1.15rem}.runner-title p{color:var(--text-faint);margin:.15rem 0 0;font-size:.85rem}.link-btn{color:var(--text-dim);background:0 0;border:0;padding:.2rem 0;font-size:.85rem}.link-btn:hover{color:var(--text)}.ghost-btn{border:1px solid var(--line);color:var(--text-dim);white-space:nowrap;background:0 0;border-radius:7px;padding:.4rem .8rem;font-size:.84rem}.ghost-btn:hover{border-color:var(--accent-dim);color:var(--text)}.primary-btn{background:var(--accent);color:#14100a;border:0;border-radius:7px;padding:.6rem 1.15rem;font-size:.9rem;font-weight:600}.primary-btn:disabled{opacity:.35;cursor:not-allowed}.primary-btn:not(:disabled):hover{filter:brightness(1.08)}.prompt-card,.step-card{background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--radius);padding:1.35rem 1.35rem 1.5rem}.prompt-card h2{font-size:1.3rem}.subhead{color:var(--text-dim);max-width:70ch;margin:.35rem 0 1.2rem;font-size:.92rem}.step-meta{align-items:baseline;gap:.7rem;margin-bottom:.6rem;display:flex}.step-nav{gap:.25rem;margin-left:auto;display:flex}.step-nav button{border:1px solid var(--line);width:1.9rem;height:1.9rem;color:var(--text-dim);background:0 0;border-radius:6px;place-items:center;font-size:1rem;line-height:1;display:grid}.step-nav button:not(:disabled):hover{border-color:var(--accent-dim);color:var(--text)}.step-nav button:disabled{opacity:.3;cursor:not-allowed}.step-track{gap:.3rem;margin:0 0 1.1rem;padding:0;list-style:none;display:flex}.track-pip{background:var(--line);border:0;border-radius:3px;width:26px;height:5px;padding:0;transition:background .15s,box-shadow .15s;display:block}.track-pip.ok{background:var(--ok)}.track-pip.bad{background:var(--bad)}.track-pip:disabled{cursor:not-allowed;opacity:.55}.track-pip:not(:disabled):hover{box-shadow:0 0 0 2px var(--accent-dim)}.track-pip.is-current{box-shadow:0 0 0 2px var(--accent)}.step-count{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--accent);font-size:.7rem}.step-name{color:var(--text-faint);font-size:.82rem}.step-prompt{max-width:68ch;margin:0 0 .7rem;font-size:1.05rem;font-weight:500}.step-hint{max-width:72ch;margin:0 0 1.1rem}.step-hint>summary{cursor:pointer;width:fit-content;font-family:var(--mono);letter-spacing:.09em;text-transform:uppercase;color:var(--text-faint);border-radius:5px;align-items:center;gap:.4rem;padding:.15rem .1rem;font-size:.74rem;list-style:none;transition:color .15s;display:inline-flex}.step-hint>summary::-webkit-details-marker{display:none}.step-hint>summary:hover{color:var(--text-dim)}.step-hint>summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.step-hint>summary:before{content:"";border-bottom:1.5px solid;border-right:1.5px solid;width:.5rem;height:.5rem;transition:transform .18s;transform:rotate(-45deg)translate(-1px,-1px)}.step-hint[open]>summary:before{transform:rotate(45deg)translate(-1px,-1px)}.step-hint>p{color:var(--text-dim);margin:.5rem 0 0;font-size:.87rem}.step-actions{flex-wrap:wrap;gap:.6rem;margin-top:1.35rem;display:flex}.table-grid{grid-template-columns:repeat(auto-fit,minmax(310px,1fr));align-items:start;gap:.9rem;margin:1.1rem 0;display:grid}.table{background:var(--bg-sunken);border:1px solid var(--line-soft);border-radius:8px;padding:.85rem .95rem}.table-title{font-family:var(--mono);letter-spacing:.11em;text-transform:uppercase;color:var(--text-faint);margin-bottom:.55rem;font-size:.68rem}.table-rows{margin:0}.table-row{border-bottom:1px solid #0000;justify-content:space-between;align-items:baseline;gap:1rem;padding:.22rem 0;font-size:.85rem;display:flex}.table-row dt{color:var(--text-dim);flex:auto;min-width:9ch;margin:0}.table-row dd{font-family:var(--mono);font-variant-numeric:tabular-nums;text-align:right;overflow-wrap:anywhere;flex:0 auto;min-width:0;margin:0;font-size:.82rem}.table-row.is-strong{border-top:1px solid var(--line);margin-top:.2rem;padding-top:.35rem}.table-row.is-strong dt{color:var(--text);font-weight:500}.table-row.is-strong dd{color:var(--accent)}.table-row.is-muted{opacity:.5}.single-answer{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.answer-input{background:var(--bg-sunken);border:1px solid var(--line);border-radius:8px;align-items:center;gap:.35rem;padding:.15rem .7rem;transition:border-color .15s;display:inline-flex}.answer-input:focus-within{border-color:var(--accent)}.answer-input .affix{color:var(--text-faint);font-family:var(--mono);font-size:.85rem}.answer-input input{color:var(--text);font-family:var(--mono);font-variant-numeric:tabular-nums;background:0 0;border:0;outline:none;width:9ch;padding:.45rem 0;font-size:1rem}.answer-input input::placeholder{color:var(--text-faint);opacity:.5}.answer-input.state-correct{border-color:var(--ok);background:var(--ok-bg)}.answer-input.state-wrong{border-color:var(--bad);background:var(--bad-bg)}.answer-input.is-disabled{opacity:.9}.tol,.correct-value{font-family:var(--mono);color:var(--text-faint);font-size:.76rem}.correct-value{color:var(--ok)}.grid-answer{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;display:grid}.grid-group h4{font-family:var(--mono);letter-spacing:.11em;text-transform:uppercase;color:var(--text-faint);margin-bottom:.5rem;font-size:.68rem}.grid-field{justify-content:space-between;align-items:center;gap:.6rem;padding:.22rem 0;display:flex}.grid-field label{color:var(--text-dim);font-size:.85rem}.grid-field-input{align-items:center;gap:.4rem;display:flex}.grid-field .answer-input input{width:6.5ch;font-size:.9rem}.choices{border:0;flex-direction:column;gap:.45rem;margin:0;padding:0;display:flex}.choice{background:var(--bg-sunken);border:1px solid var(--line);cursor:pointer;border-radius:8px;align-items:center;gap:.65rem;padding:.65rem .85rem;font-size:.92rem;display:flex}.choice:hover{border-color:var(--accent-dim)}.choice.is-selected{border-color:var(--accent)}.choice.is-answer{border-color:var(--ok);background:var(--ok-bg)}.choice.is-wrong{border-color:var(--bad);background:var(--bad-bg)}.choice input{accent-color:var(--accent)}.classify{flex-direction:column;gap:.4rem;display:flex}.classify-row{border:1px solid var(--line);background:var(--bg-sunken);border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem;margin:0;padding:.6rem .8rem;display:flex}.classify-row.is-correct{border-color:color-mix(in srgb, var(--ok) 45%, transparent)}.classify-row.is-wrong{border-color:var(--bad);background:var(--bad-bg)}.classify-label{float:none;color:var(--text);flex-wrap:wrap;align-items:baseline;gap:.6rem;padding:0;font-size:.87rem;display:flex}.classify-detail{font-family:var(--mono);color:var(--text-faint);font-size:.78rem}.classify-options{gap:.3rem;display:flex}.seg{border:1px solid var(--line);color:var(--text-dim);cursor:pointer;white-space:nowrap;border-radius:6px;padding:.32rem .7rem;font-size:.79rem;position:relative}.seg input{opacity:0;pointer-events:none;position:absolute}.seg:hover{border-color:var(--accent-dim)}.seg.is-selected{background:var(--accent);border-color:var(--accent);color:#14100a;font-weight:600}.seg.is-answer{outline:2px solid var(--ok);outline-offset:1px}.verdict{border:1px solid var(--line);background:var(--bg-sunken);border-radius:8px;margin-top:1.3rem;padding:.95rem 1.05rem;font-size:.9rem}.verdict:focus-visible{outline:2px solid var(--text-faint);outline-offset:3px}.verdict.is-correct{border-color:color-mix(in srgb, var(--ok) 45%, transparent)}.verdict.is-wrong{border-color:color-mix(in srgb, var(--bad) 45%, transparent)}.verdict strong{margin-bottom:.35rem;display:block}.verdict.is-correct strong{color:var(--ok)}.verdict.is-wrong strong{color:var(--bad)}.verdict p{color:var(--text-dim);max-width:76ch;margin:0}.notes{flex-direction:column;gap:.55rem;margin:.9rem 0 0;padding:0;list-style:none;display:flex}.notes li{border-left:2px solid var(--line);background:var(--bg-elev);border-radius:0 6px 6px 0;grid-template-columns:1fr auto;gap:.2rem .8rem;padding:.55rem .7rem;display:grid}.notes li.ok{border-left-color:var(--ok)}.notes li.bad{border-left-color:var(--bad)}.note-label{font-size:.84rem;font-weight:500}.note-answer{font-family:var(--mono);color:var(--accent);text-transform:uppercase;letter-spacing:.06em;font-size:.75rem}.note-body{color:var(--text-dim);grid-column:1/-1;max-width:76ch;font-size:.83rem}.score-bar{gap:.3rem;margin:.4rem 0 1.5rem;display:flex}.pip{background:var(--bad);border-radius:3px;width:26px;height:5px}.pip.ok{background:var(--ok)}.solution-heading{color:var(--text-dim);font-size:.95rem}@media (width<=640px){.runner-head{grid-template-columns:1fr auto}.runner-title{order:3;grid-column:1/-1}.classify-row{flex-direction:column;align-items:flex-start}.classify-options{width:100%}.seg{text-align:center;flex:1}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.loading{color:var(--text-faint);margin:0;font-size:.9rem}.load-error p{color:var(--bad);margin:0 0 .9rem}.step-error{color:var(--bad);margin:.8rem 0 0;font-size:.87rem}.unlock-actions{margin-top:1.2rem}.unlock-form{border-top:1px solid var(--line-soft);margin-top:1rem;padding-top:1rem}.foot-links{gap:1rem;margin-top:.6rem;display:flex}.home-foot p{margin:0}.legal{max-width:720px;margin:0 auto;padding:2.5rem 1.25rem 5rem}.legal-head{border-bottom:1px solid var(--line);margin-bottom:1.8rem;padding-bottom:1.2rem}.legal-head h1{margin-top:.9rem;font-size:1.6rem}.legal-updated{color:var(--text-faint);font-size:.82rem;font-family:var(--mono);margin:.3rem 0 0}.legal-body h2{font-size:.75rem;font-family:var(--mono);letter-spacing:.11em;text-transform:uppercase;color:var(--accent);margin:2rem 0 .6rem}.legal-body h2:first-child{margin-top:0}.legal-body p{color:var(--text-dim);margin:0 0 .9rem;font-size:.95rem}.legal-body strong{color:var(--text)}.legal-foot{border-top:1px solid var(--line);margin-top:2.5rem;padding-top:1.5rem}.pay-status{border:1px solid var(--accent-dim);background:color-mix(in srgb, var(--accent) 8%, transparent);color:var(--text-dim);border-radius:8px;max-width:70ch;margin:0 0 1.5rem;padding:.8rem 1rem;font-size:.9rem}.pay-status.is-failed{border-color:var(--bad);background:var(--bad-bg);color:var(--text)}.wordmark{letter-spacing:-.01em;color:var(--accent);margin:0 0 1.1rem;font-size:.95rem;font-weight:600}
