:root{color-scheme:light dark;--color-surface: oklch(.981 .008 80);--color-surface-raised: oklch(1 0 0);--color-surface-sunken: oklch(.945 .012 80);--color-text: oklch(.26 .022 55);--color-text-muted: oklch(.475 .022 55);--color-border: oklch(.8 .018 55);--color-border-strong: oklch(.625 .022 55);--color-accent: oklch(.52 .16 45);--color-accent-hover: oklch(.45 .17 45);--color-on-accent: oklch(.99 .006 80);--color-focus: oklch(.45 .18 45);--heat-1: oklch(.545 .1 85);--heat-2: oklch(.54 .11 78);--heat-3: oklch(.535 .12 70);--heat-4: oklch(.53 .13 63);--heat-5: oklch(.52 .14 55);--heat-6: oklch(.515 .15 48);--heat-7: oklch(.51 .16 40);--heat-8: oklch(.5 .17 33);--heat-9: oklch(.495 .18 25);--heat-10: oklch(.49 .19 18);--card-1: oklch(1 0 80);--card-2: oklch(.996 .002 76);--card-3: oklch(.992 .004 72);--card-4: oklch(.988 .006 68);--card-5: oklch(.984 .008 64);--card-6: oklch(.979 .01 61);--card-7: oklch(.975 .012 57);--card-8: oklch(.971 .014 53);--card-9: oklch(.967 .016 49);--card-10: oklch(.963 .018 45);--ground-1: oklch(.981 .008 80);--ground-2: oklch(.977 .01 76);--ground-3: oklch(.974 .012 72);--ground-4: oklch(.97 .014 68);--ground-5: oklch(.966 .016 64);--ground-6: oklch(.963 .018 61);--ground-7: oklch(.959 .02 57);--ground-8: oklch(.955 .022 53);--ground-9: oklch(.952 .024 49);--ground-10: oklch(.948 .026 45);--font-display: "Literata Variable", ui-serif, Georgia, serif;--font-body: "Public Sans Variable", system-ui, sans-serif;--text-xs: .8125rem;--text-sm: .875rem;--text-base: 1rem;--text-md: 1.25rem;--text-lg: 1.5625rem;--text-xl: 1.9375rem;--leading-tight: 1.25;--leading-base: 1.5;--text-question: clamp(1.5625rem, 1.1rem + 2.4vw, 2.75rem);--measure: 34ch;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-6: 1.5rem;--space-8: 2rem;--space-12: 3rem;--space-16: 4rem;--radius-sm: .5rem;--radius-md: 1.125rem;--radius-pill: 9999px;--color-backdrop: oklch(.15 .02 55 / .55);--shadow-raised: 0 1px 2px oklch(.26 .022 55 / .07), 0 6px 20px oklch(.26 .022 55 / .06);--focus-ring: 3px;--focus-offset: 3px;--ease: cubic-bezier(.16, 1, .3, 1);--duration-fast: .14s;--duration-slow: .38s;--target: 2.75rem}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--color-surface: oklch(.185 .016 55);--color-surface-raised: oklch(.245 .018 55);--color-surface-sunken: oklch(.145 .014 55);--color-text: oklch(.945 .013 85);--color-text-muted: oklch(.755 .018 75);--color-border: oklch(.34 .018 55);--color-border-strong: oklch(.565 .022 55);--color-accent: oklch(.78 .14 60);--color-accent-hover: oklch(.85 .13 65);--color-on-accent: oklch(.185 .03 50);--color-focus: oklch(.82 .14 62);--heat-1: oklch(.86 .12 90);--heat-2: oklch(.85 .12 82);--heat-3: oklch(.84 .13 74);--heat-4: oklch(.83 .13 67);--heat-5: oklch(.815 .14 59);--heat-6: oklch(.8 .14 51);--heat-7: oklch(.79 .15 43);--heat-8: oklch(.78 .15 36);--heat-9: oklch(.765 .15 28);--heat-10: oklch(.755 .15 20);--card-1: oklch(.245 .018 55);--card-2: oklch(.251 .025 53);--card-3: oklch(.256 .032 51);--card-4: oklch(.262 .039 48);--card-5: oklch(.267 .046 46);--card-6: oklch(.273 .052 44);--card-7: oklch(.278 .059 42);--card-8: oklch(.284 .066 39);--card-9: oklch(.289 .073 37);--card-10: oklch(.295 .08 35);--ground-1: oklch(.185 .016 55);--ground-2: oklch(.189 .022 53);--ground-3: oklch(.193 .028 51);--ground-4: oklch(.197 .033 48);--ground-5: oklch(.201 .039 46);--ground-6: oklch(.204 .045 44);--ground-7: oklch(.208 .051 42);--ground-8: oklch(.212 .056 39);--ground-9: oklch(.216 .062 37);--ground-10: oklch(.22 .068 35);--shadow-raised: 0 1px 2px oklch(.05 0 0 / .5), 0 6px 20px oklch(.05 0 0 / .4)}}:root[data-theme=dark]{--color-surface: oklch(.185 .016 55);--color-surface-raised: oklch(.245 .018 55);--color-surface-sunken: oklch(.145 .014 55);--color-text: oklch(.945 .013 85);--color-text-muted: oklch(.755 .018 75);--color-border: oklch(.34 .018 55);--color-border-strong: oklch(.565 .022 55);--color-accent: oklch(.78 .14 60);--color-accent-hover: oklch(.85 .13 65);--color-on-accent: oklch(.185 .03 50);--color-focus: oklch(.82 .14 62);--heat-1: oklch(.86 .12 90);--heat-2: oklch(.85 .12 82);--heat-3: oklch(.84 .13 74);--heat-4: oklch(.83 .13 67);--heat-5: oklch(.815 .14 59);--heat-6: oklch(.8 .14 51);--heat-7: oklch(.79 .15 43);--heat-8: oklch(.78 .15 36);--heat-9: oklch(.765 .15 28);--heat-10: oklch(.755 .15 20);--card-1: oklch(.245 .018 55);--card-2: oklch(.251 .025 53);--card-3: oklch(.256 .032 51);--card-4: oklch(.262 .039 48);--card-5: oklch(.267 .046 46);--card-6: oklch(.273 .052 44);--card-7: oklch(.278 .059 42);--card-8: oklch(.284 .066 39);--card-9: oklch(.289 .073 37);--card-10: oklch(.295 .08 35);--ground-1: oklch(.185 .016 55);--ground-2: oklch(.189 .022 53);--ground-3: oklch(.193 .028 51);--ground-4: oklch(.197 .033 48);--ground-5: oklch(.201 .039 46);--ground-6: oklch(.204 .045 44);--ground-7: oklch(.208 .051 42);--ground-8: oklch(.212 .056 39);--ground-9: oklch(.216 .062 37);--ground-10: oklch(.22 .068 35);--shadow-raised: 0 1px 2px oklch(.05 0 0 / .5), 0 6px 20px oklch(.05 0 0 / .4)}@media(prefers-reduced-motion:reduce){:root{--duration-fast: 0ms;--duration-slow: 0ms}}@font-face{font-family:Literata Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/literata-cyrillic-ext-opsz-normal-C5tfwALZ.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Literata Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/literata-cyrillic-opsz-normal-DgmypKXX.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Literata Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/literata-greek-ext-opsz-normal-DGm64vGR.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Literata Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/literata-greek-opsz-normal-DFglUmAd.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Literata Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/literata-vietnamese-opsz-normal-Gqw5JQlq.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Literata Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/literata-latin-ext-opsz-normal-STiTPs0F.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Literata Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/literata-latin-opsz-normal-BHZsWIlc.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Public Sans Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/public-sans-vietnamese-wght-normal-CtlIRbEm.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Public Sans Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/public-sans-latin-ext-wght-normal-MQgHevqp.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Public Sans Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/public-sans-latin-wght-normal-DdeTHZLK.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;min-height:100vh;min-height:100svh;display:flex;flex-direction:column;background:var(--ground, var(--color-surface));transition:background-color var(--duration-slow) var(--ease);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base);line-height:var(--leading-base);-webkit-font-smoothing:antialiased}[hidden]{display:none!important}h1,h2,p,ol,ul,figure{margin:0}ol,ul{padding:0;list-style:none}button{font:inherit;color:inherit}:where(a,button,select,[tabindex]):focus-visible{outline:var(--focus-ring) solid var(--color-focus);outline-offset:var(--focus-offset);border-radius:var(--radius-sm)}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip-link{position:absolute;top:var(--space-2);left:var(--space-2);z-index:10;padding:var(--space-2) var(--space-4);transform:translateY(-200%);background:var(--color-surface-raised);color:var(--color-text);border-radius:var(--radius-sm);box-shadow:var(--shadow-raised);text-decoration-thickness:.08em;text-underline-offset:.2em}.skip-link:focus{transform:translateY(0)}.linkish{padding:var(--space-1) var(--space-2);min-height:var(--target);border:0;background:none;color:var(--color-text-muted);font-size:var(--text-sm);text-decoration:underline;text-underline-offset:.2em;cursor:pointer}.linkish:hover{color:var(--color-text)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--target);padding:var(--space-2) var(--space-4);border:1px solid transparent;border-radius:var(--radius-sm);background:none;font-size:var(--text-base);font-weight:600;line-height:var(--leading-tight);cursor:pointer;text-decoration:none;color:inherit;transition:background-color var(--duration-fast) var(--ease),border-color var(--duration-fast) var(--ease),color var(--duration-fast) var(--ease),transform var(--duration-fast) var(--ease)}.btn:active:not(:disabled){transform:scale(.98)}.btn:disabled{cursor:not-allowed;opacity:.45}.btn--primary{background:var(--color-accent);color:var(--color-on-accent)}.btn--primary:hover:not(:disabled){background:var(--color-accent-hover)}.btn--ghost{border-color:var(--color-border-strong);color:var(--color-text)}.btn--ghost:hover:not(:disabled){background:var(--color-surface-sunken)}.btn--quiet{padding:var(--space-2) var(--space-3);color:var(--color-text-muted);font-weight:500}.btn--quiet:hover{color:var(--color-text);background:var(--color-surface-sunken)}.btn--wide{width:100%}.btn--icon{min-width:var(--target);padding:var(--space-2);color:var(--color-text-muted)}.btn--icon:hover:not(:disabled){color:var(--color-text);background:var(--color-surface-sunken)}.btn[aria-disabled=true]{cursor:not-allowed}.btn[aria-disabled=true]:active{transform:none}.btn--primary[aria-disabled=true]{position:relative;overflow:hidden}.btn--primary[aria-disabled=true]:after{content:"";position:absolute;inset-inline-start:0;inset-block-end:0;block-size:3px;inline-size:100%;background:var(--color-on-accent);transform-origin:left center;animation:pause-fill var(--pause-duration, 2.5s) linear both}@keyframes pause-fill{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@media(prefers-reduced-motion:reduce){.btn--primary[aria-disabled=true]:after{animation:none}}.topbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-3) clamp(var(--space-3),4vw,var(--space-8))}.wordmark{font-family:var(--font-display);font-size:var(--text-md);font-weight:600;letter-spacing:-.01em}.topbar__actions{display:flex;align-items:center;gap:var(--space-1)}.stage{flex:1;width:100%;max-width:44rem;margin:0 auto;padding:var(--space-4) clamp(var(--space-4),4vw,var(--space-8)) var(--space-12);display:flex;flex-direction:column;justify-content:center;gap:var(--space-6)}.intro{display:flex;flex-direction:column;gap:var(--space-6)}.intro__title{font-family:var(--font-display);font-size:var(--text-xl);font-weight:600;line-height:var(--leading-tight)}.intro__lead{color:var(--color-text-muted);max-width:46ch}.intro__block{display:flex;flex-direction:column;gap:var(--space-2)}.intro__block-title{font-weight:700}.intro__rules{display:flex;flex-direction:column;gap:var(--space-2)}.landing-level{display:flex;flex-direction:column;gap:var(--space-1)}.landing-level__name{font-weight:700}.landing-level__blurb{font-size:var(--text-sm);color:var(--color-text-muted);text-wrap:pretty}.warning{border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface-sunken);padding:var(--space-4) var(--space-6);display:flex;flex-direction:column;gap:var(--space-2)}.warning__title{font-weight:700}.config{display:flex;flex-direction:column;gap:var(--space-4)}.config__field{display:flex;flex-direction:column;gap:var(--space-1)}.config__field label{font-size:var(--text-sm);font-weight:600;color:var(--color-text-muted)}.config__field select{min-height:var(--target);padding:var(--space-2) var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface-raised);color:var(--color-text);font:inherit;font-size:var(--text-base)}.heat__scale{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--space-1);align-items:end}@media(min-width:33rem){.heat__scale{grid-template-columns:repeat(10,minmax(0,1fr))}}.heat__button{display:flex;align-items:flex-end;justify-content:center;width:100%;min-height:var(--target);padding:var(--space-1) 0;border:0;background:none;cursor:pointer}.heat__bar{display:block;width:100%;height:var(--bar-height);border-radius:var(--radius-pill);background:none;box-shadow:inset 0 0 0 2px var(--color-border-strong);transition:background-color var(--duration-slow) var(--ease),box-shadow var(--duration-slow) var(--ease),height var(--duration-slow) var(--ease)}.heat__button[data-reached=true] .heat__bar{background:var(--heat);box-shadow:none}.heat__button[aria-current=step] .heat__bar{box-shadow:0 0 0 2px var(--ground, var(--color-surface)),0 0 0 4px var(--heat)}.heat__button:disabled{cursor:not-allowed}.heat__button:disabled .heat__bar{height:3px;background:var(--color-border);box-shadow:none;opacity:.6}.heat__button:hover:not(:disabled) .heat__bar{background:color-mix(in oklab,var(--heat) 45%,transparent)}.heat__button[data-reached=true]:hover:not(:disabled) .heat__bar{background:var(--heat)}.level{display:flex;flex-direction:column;gap:var(--space-1);animation:level-in var(--duration-slow) var(--ease) both}@keyframes level-in{0%{opacity:0;transform:translateY(.25rem)}}.level__name{font-family:var(--font-display);font-size:var(--text-lg);font-weight:600;line-height:var(--leading-tight);color:var(--heat)}.level__blurb{color:var(--color-text-muted);max-width:46ch}.card{background:var(--card, var(--color-surface-raised));touch-action:pan-y pinch-zoom;transition:background-color var(--duration-slow) var(--ease);border-radius:var(--radius-md);box-shadow:var(--shadow-raised);padding:clamp(var(--space-6),5vw,var(--space-12));min-height:15rem;display:flex;align-items:center}.card__body{width:100%}.card__meta{display:flex;align-items:start;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-4)}.card__where{display:flex;flex-direction:column;gap:var(--space-1)}.card__where-row{display:flex;align-items:center;gap:var(--space-2)}.card__note:not(:empty){font-size:var(--text-sm);color:var(--color-text-muted)}.card__count{font-size:var(--text-sm);font-weight:600;letter-spacing:.04em;text-transform:lowercase;color:var(--heat)}.card__question{font-family:var(--font-display);font-optical-sizing:auto;font-size:var(--text-question);font-weight:500;line-height:1.22;letter-spacing:-.015em;text-wrap:pretty;max-width:var(--measure);animation:question-in var(--duration-slow) var(--ease) both}@keyframes question-in{0%{opacity:0;transform:translateY(.4rem)}}.judge{display:flex;justify-content:flex-end;gap:var(--space-1);flex:none}.judge__button[aria-pressed=true]{color:var(--color-text);background:var(--color-surface-sunken)}.judge__button[aria-pressed=true] svg{fill:currentColor}.card__spent-line{font-family:var(--font-display);font-size:var(--text-md);margin-bottom:var(--space-6);max-width:40ch}.card__spent-actions{display:flex;flex-wrap:wrap;gap:var(--space-3)}.controls{display:flex;flex-direction:column;gap:var(--space-3)}.controls__steps{display:flex;align-items:start;gap:var(--space-3)}.controls__step{flex:1;display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.controls__note,.controls__hint{font-size:var(--text-sm);color:var(--color-text-muted);text-wrap:pretty}@media(pointer:coarse){.controls__hint{display:none}}.footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-4) clamp(var(--space-4),4vw,var(--space-8)) var(--space-6);max-width:44rem;width:100%;margin:0 auto;color:var(--color-text-muted);font-size:var(--text-sm)}.sheet{width:min(32rem,calc(100vw - 2 * var(--space-4)));padding:clamp(var(--space-6),5vw,var(--space-8));border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-raised);color:var(--color-text);box-shadow:var(--shadow-raised)}.sheet::backdrop{background:var(--color-backdrop)}.sheet__title{font-family:var(--font-display);font-size:var(--text-lg);font-weight:600;margin-bottom:var(--space-4)}.sheet__rules{display:flex;flex-direction:column;gap:var(--space-3);counter-reset:rule}.sheet__rules li{display:flex;gap:var(--space-3);counter-increment:rule}.sheet__rules li:before{content:counter(rule);flex:none;width:1.5rem;font-variant-numeric:tabular-nums;font-weight:700;color:var(--color-accent)}.sheet__note{margin-top:var(--space-6);font-size:var(--text-sm);color:var(--color-text-muted);text-wrap:pretty}.sheet__close{margin-top:var(--space-6)}
