:where(html){--ease-1:cubic-bezier(.25,0,.5,1);--ease-2:cubic-bezier(.25,0,.4,1);--ease-3:cubic-bezier(.25,0,.3,1);--ease-4:cubic-bezier(.25,0,.2,1);--ease-5:cubic-bezier(.25,0,.1,1);--ease-in-1:cubic-bezier(.25,0,1,1);--ease-in-2:cubic-bezier(.5,0,1,1);--ease-in-3:cubic-bezier(.7,0,1,1);--ease-in-4:cubic-bezier(.9,0,1,1);--ease-in-5:cubic-bezier(1,0,1,1);--ease-out-1:cubic-bezier(0,0,.75,1);--ease-out-2:cubic-bezier(0,0,.5,1);--ease-out-3:cubic-bezier(0,0,.3,1);--ease-out-4:cubic-bezier(0,0,.1,1);--ease-out-5:cubic-bezier(0,0,0,1);--ease-in-out-1:cubic-bezier(.1,0,.9,1);--ease-in-out-2:cubic-bezier(.3,0,.7,1);--ease-in-out-3:cubic-bezier(.5,0,.5,1);--ease-in-out-4:cubic-bezier(.7,0,.3,1);--ease-in-out-5:cubic-bezier(.9,0,.1,1);--ease-elastic-out-1:cubic-bezier(.5,.75,.75,1.25);--ease-elastic-out-2:cubic-bezier(.5,1,.75,1.25);--ease-elastic-out-3:cubic-bezier(.5,1.25,.75,1.25);--ease-elastic-out-4:cubic-bezier(.5,1.5,.75,1.25);--ease-elastic-out-5:cubic-bezier(.5,1.75,.75,1.25);--ease-elastic-in-1:cubic-bezier(.5,-.25,.75,1);--ease-elastic-in-2:cubic-bezier(.5,-.5,.75,1);--ease-elastic-in-3:cubic-bezier(.5,-.75,.75,1);--ease-elastic-in-4:cubic-bezier(.5,-1,.75,1);--ease-elastic-in-5:cubic-bezier(.5,-1.25,.75,1);--ease-elastic-in-out-1:cubic-bezier(.5,-.1,.1,1.5);--ease-elastic-in-out-2:cubic-bezier(.5,-.3,.1,1.5);--ease-elastic-in-out-3:cubic-bezier(.5,-.5,.1,1.5);--ease-elastic-in-out-4:cubic-bezier(.5,-.7,.1,1.5);--ease-elastic-in-out-5:cubic-bezier(.5,-.9,.1,1.5);--ease-step-1:steps(2);--ease-step-2:steps(3);--ease-step-3:steps(4);--ease-step-4:steps(7);--ease-step-5:steps(10);--ease-elastic-1:var(--ease-elastic-out-1);--ease-elastic-2:var(--ease-elastic-out-2);--ease-elastic-3:var(--ease-elastic-out-3);--ease-elastic-4:var(--ease-elastic-out-4);--ease-elastic-5:var(--ease-elastic-out-5);--ease-squish-1:var(--ease-elastic-in-out-1);--ease-squish-2:var(--ease-elastic-in-out-2);--ease-squish-3:var(--ease-elastic-in-out-3);--ease-squish-4:var(--ease-elastic-in-out-4);--ease-squish-5:var(--ease-elastic-in-out-5);--ease-spring-1:linear(0,.006,.025 2.8%,.101 6.1%,.539 18.9%,.721 25.3%,.849 31.5%,.937 38.1%,.968 41.8%,.991 45.7%,1.006 50.1%,1.015 55%,1.017 63.9%,1.001);--ease-spring-2:linear(0,.007,.029 2.2%,.118 4.7%,.625 14.4%,.826 19%,.902,.962,1.008 26.1%,1.041 28.7%,1.064 32.1%,1.07 36%,1.061 40.5%,1.015 53.4%,.999 61.6%,.995 71.2%,1);--ease-spring-3:linear(0,.009,.035 2.1%,.141 4.4%,.723 12.9%,.938 16.7%,1.017,1.077,1.121,1.149 24.3%,1.159,1.163,1.161,1.154 29.9%,1.129 32.8%,1.051 39.6%,1.017 43.1%,.991,.977 51%,.974 53.8%,.975 57.1%,.997 69.8%,1.003 76.9%,1);--ease-spring-4:linear(0,.009,.037 1.7%,.153 3.6%,.776 10.3%,1.001,1.142 16%,1.185,1.209 19%,1.215 19.9% 20.8%,1.199,1.165 25%,1.056 30.3%,1.008 33%,.973,.955 39.2%,.953 41.1%,.957 43.3%,.998 53.3%,1.009 59.1% 63.7%,.998 78.9%,1);--ease-spring-5:linear(0,.01,.04 1.6%,.161 3.3%,.816 9.4%,1.046,1.189 14.4%,1.231,1.254 17%,1.259,1.257 18.6%,1.236,1.194 22.3%,1.057 27%,.999 29.4%,.955 32.1%,.942,.935 34.9%,.933,.939 38.4%,1 47.3%,1.011,1.017 52.6%,1.016 56.4%,1 65.2%,.996 70.2%,1.001 87.2%,1);--ease-bounce-1:linear(0,.004,.016,.035,.063,.098,.141,.191,.25,.316,.391 36.8%,.563,.766,1 58.8%,.946,.908 69.1%,.895,.885,.879,.878,.879,.885,.895,.908 89.7%,.946,1);--ease-bounce-2:linear(0,.004,.016,.035,.063,.098,.141 15.1%,.25,.391,.562,.765,1,.892 45.2%,.849,.815,.788,.769,.757,.753,.757,.769,.788,.815,.85,.892 75.2%,1 80.2%,.973,.954,.943,.939,.943,.954,.973,1);--ease-bounce-3:linear(0,.004,.016,.035,.062,.098,.141 11.4%,.25,.39,.562,.764,1 30.3%,.847 34.8%,.787,.737,.699,.672,.655,.65,.656,.672,.699,.738,.787,.847 61.7%,1 66.2%,.946,.908,.885 74.2%,.879,.878,.879,.885 79.5%,.908,.946,1 87.4%,.981,.968,.96,.957,.96,.968,.981,1);--ease-bounce-4:linear(0,.004,.016 3%,.062,.141,.25,.391,.562 18.2%,1 24.3%,.81,.676 32.3%,.629,.595,.575,.568,.575,.595,.629,.676 48.2%,.811,1 56.2%,.918,.86,.825,.814,.825,.86,.918,1 77.2%,.94 80.6%,.925,.92,.925,.94 87.5%,1 90.9%,.974,.965,.974,1);--ease-bounce-5:linear(0,.004,.016 2.5%,.063,.141,.25 10.1%,.562,1 20.2%,.783,.627,.534 30.9%,.511,.503,.511,.534 38%,.627,.782,1 48.7%,.892,.815,.769 56.3%,.757,.753,.757,.769 61.3%,.815,.892,1 68.8%,.908 72.4%,.885,.878,.885,.908 79.4%,1 83%,.954 85.5%,.943,.939,.943,.954 90.5%,1 93%,.977,.97,.977,1);--ease-circ-in:cubic-bezier(.6,.04,.98,.335);--ease-circ-in-out:cubic-bezier(.785,.135,.15,.86);--ease-circ-out:cubic-bezier(.075,.82,.165,1);--ease-cubic-in:cubic-bezier(.55,.055,.675,.19);--ease-cubic-in-out:cubic-bezier(.645,.045,.355,1);--ease-cubic-out:cubic-bezier(.215,.61,.355,1);--ease-expo-in:cubic-bezier(.95,.05,.795,.035);--ease-expo-in-out:cubic-bezier(1,0,0,1);--ease-expo-out:cubic-bezier(.19,1,.22,1);--ease-quad-in:cubic-bezier(.55,.085,.68,.53);--ease-quad-in-out:cubic-bezier(.455,.03,.515,.955);--ease-quad-out:cubic-bezier(.25,.46,.45,.94);--ease-quart-in:cubic-bezier(.895,.03,.685,.22);--ease-quart-in-out:cubic-bezier(.77,0,.175,1);--ease-quart-out:cubic-bezier(.165,.84,.44,1);--ease-quint-in:cubic-bezier(.755,.05,.855,.06);--ease-quint-in-out:cubic-bezier(.86,0,.07,1);--ease-quint-out:cubic-bezier(.23,1,.32,1);--ease-sine-in:cubic-bezier(.47,0,.745,.715);--ease-sine-in-out:cubic-bezier(.445,.05,.55,.95);--ease-sine-out:cubic-bezier(.39,.575,.565,1)}:where(html){--animation-fade-in:fade-in .5s var(--ease-3);--animation-fade-in-bloom:fade-in-bloom 2s var(--ease-3);--animation-fade-out:fade-out .5s var(--ease-3);--animation-fade-out-bloom:fade-out-bloom 2s var(--ease-3);--animation-scale-up:scale-up .5s var(--ease-3);--animation-scale-down:scale-down .5s var(--ease-3);--animation-slide-out-up:slide-out-up .5s var(--ease-3);--animation-slide-out-down:slide-out-down .5s var(--ease-3);--animation-slide-out-right:slide-out-right .5s var(--ease-3);--animation-slide-out-left:slide-out-left .5s var(--ease-3);--animation-slide-in-up:slide-in-up .5s var(--ease-3);--animation-slide-in-down:slide-in-down .5s var(--ease-3);--animation-slide-in-right:slide-in-right .5s var(--ease-3);--animation-slide-in-left:slide-in-left .5s var(--ease-3);--animation-shake-x:shake-x .75s var(--ease-out-5);--animation-shake-y:shake-y .75s var(--ease-out-5);--animation-shake-z:shake-z 1s var(--ease-in-out-3);--animation-spin:spin 2s linear infinite;--animation-ping:ping 5s var(--ease-out-3) infinite;--animation-blink:blink 1s var(--ease-out-3) infinite;--animation-float:float 3s var(--ease-in-out-3) infinite;--animation-bounce:bounce 2s var(--ease-squish-2) infinite;--animation-pulse:pulse 2s var(--ease-out-3) infinite}@keyframes fade-in{to{opacity:1}}@keyframes fade-in-bloom{0%{filter:brightness(1) blur(20px);opacity:0}10%{filter:brightness(2) blur(10px);opacity:1}to{filter:brightness(1) blur(0);opacity:1}}@keyframes fade-out{to{opacity:0}}@keyframes fade-out-bloom{to{filter:brightness(1) blur(20px);opacity:0}10%{filter:brightness(2) blur(10px);opacity:1}0%{filter:brightness(1) blur(0);opacity:1}}@keyframes scale-up{to{transform:scale(1.25)}}@keyframes scale-down{to{transform:scale(.75)}}@keyframes slide-out-up{to{transform:translateY(-100%)}}@keyframes slide-out-down{to{transform:translateY(100%)}}@keyframes slide-out-right{to{transform:translate(100%)}}@keyframes slide-out-left{to{transform:translate(-100%)}}@keyframes slide-in-up{0%{transform:translateY(100%)}}@keyframes slide-in-down{0%{transform:translateY(-100%)}}@keyframes slide-in-right{0%{transform:translate(-100%)}}@keyframes slide-in-left{0%{transform:translate(100%)}}@keyframes shake-x{0%,to{transform:translate(0)}20%{transform:translate(-5%)}40%{transform:translate(5%)}60%{transform:translate(-5%)}80%{transform:translate(5%)}}@keyframes shake-y{0%,to{transform:translateY(0)}20%{transform:translateY(-5%)}40%{transform:translateY(5%)}60%{transform:translateY(-5%)}80%{transform:translateY(5%)}}@keyframes shake-z{0%,to{transform:rotate(0)}20%{transform:rotate(-2deg)}40%{transform:rotate(2deg)}60%{transform:rotate(-2deg)}80%{transform:rotate(2deg)}}@keyframes spin{to{transform:rotate(1turn)}}@keyframes ping{90%,to{opacity:0;transform:scale(2)}}@keyframes blink{0%,to{opacity:1}50%{opacity:.5}}@keyframes float{50%{transform:translateY(-25%)}}@keyframes bounce{25%{transform:translateY(-20%)}40%{transform:translateY(-3%)}0%,60%,to{transform:translateY(0)}}@keyframes pulse{50%{transform:scale(.9)}}@media (prefers-color-scheme:dark){@keyframes fade-in-bloom{0%{filter:brightness(1) blur(20px);opacity:0}10%{filter:brightness(.5) blur(10px);opacity:1}to{filter:brightness(1) blur(0);opacity:1}}}@media (prefers-color-scheme:dark){@keyframes fade-out-bloom{to{filter:brightness(1) blur(20px);opacity:0}10%{filter:brightness(.5) blur(10px);opacity:1}0%{filter:brightness(1) blur(0);opacity:1}}}:where(html){--size-000:-.5rem;--size-00:-.25rem;--size-1:.25rem;--size-2:.5rem;--size-3:1rem;--size-4:1.25rem;--size-5:1.5rem;--size-6:1.75rem;--size-7:2rem;--size-8:3rem;--size-9:4rem;--size-10:5rem;--size-11:7.5rem;--size-12:10rem;--size-13:15rem;--size-14:20rem;--size-15:30rem;--size-px-000:-8px;--size-px-00:-4px;--size-px-1:4px;--size-px-2:8px;--size-px-3:16px;--size-px-4:20px;--size-px-5:24px;--size-px-6:28px;--size-px-7:32px;--size-px-8:48px;--size-px-9:64px;--size-px-10:80px;--size-px-11:120px;--size-px-12:160px;--size-px-13:240px;--size-px-14:320px;--size-px-15:480px;--size-fluid-1:max(.5rem,min(1vw,1rem));--size-fluid-2:max(1rem,min(2vw,1.5rem));--size-fluid-3:max(1.5rem,min(3vw,2rem));--size-fluid-4:max(2rem,min(4vw,3rem));--size-fluid-5:max(4rem,min(5vw,5rem));--size-fluid-6:max(5rem,min(7vw,7.5rem));--size-fluid-7:max(7.5rem,min(10vw,10rem));--size-fluid-8:max(10rem,min(20vw,15rem));--size-fluid-9:max(15rem,min(30vw,20rem));--size-fluid-10:max(20rem,min(40vw,30rem));--size-content-1:20ch;--size-content-2:45ch;--size-content-3:60ch;--size-header-1:20ch;--size-header-2:25ch;--size-header-3:35ch;--size-xxs:240px;--size-xs:360px;--size-sm:480px;--size-md:768px;--size-lg:1024px;--size-xl:1440px;--size-xxl:1920px;--size-relative-000:-.5ch;--size-relative-00:-.25ch;--size-relative-1:.25ch;--size-relative-2:.5ch;--size-relative-3:1ch;--size-relative-4:1.25ch;--size-relative-5:1.5ch;--size-relative-6:1.75ch;--size-relative-7:2ch;--size-relative-8:3ch;--size-relative-9:4ch;--size-relative-10:5ch;--size-relative-11:7.5ch;--size-relative-12:10ch;--size-relative-13:15ch;--size-relative-14:20ch;--size-relative-15:30ch}:where(html){--border-size-1:1px;--border-size-2:2px;--border-size-3:5px;--border-size-4:10px;--border-size-5:25px;--radius-1:2px;--radius-2:5px;--radius-3:1rem;--radius-4:2rem;--radius-5:4rem;--radius-6:8rem;--radius-drawn-1:255px 15px 225px 15px/15px 225px 15px 255px;--radius-drawn-2:125px 10px 20px 185px/25px 205px 205px 25px;--radius-drawn-3:15px 255px 15px 225px/225px 15px 255px 15px;--radius-drawn-4:15px 25px 155px 25px/225px 150px 25px 115px;--radius-drawn-5:250px 25px 15px 20px/15px 80px 105px 115px;--radius-drawn-6:28px 100px 20px 15px/150px 30px 205px 225px;--radius-round:1e5px;--radius-blob-1:30% 70% 70% 30%/53% 30% 70% 47%;--radius-blob-2:53% 47% 34% 66%/63% 46% 54% 37%;--radius-blob-3:37% 63% 56% 44%/49% 56% 44% 51%;--radius-blob-4:63% 37% 37% 63%/43% 37% 63% 57%;--radius-blob-5:49% 51% 48% 52%/57% 44% 56% 43%;--radius-conditional-1:clamp(0px, calc(100vw - 100%) * 1e5,var(--radius-1));--radius-conditional-2:clamp(0px, calc(100vw - 100%) * 1e5,var(--radius-2));--radius-conditional-3:clamp(0px, calc(100vw - 100%) * 1e5,var(--radius-3));--radius-conditional-4:clamp(0px, calc(100vw - 100%) * 1e5,var(--radius-4));--radius-conditional-5:clamp(0px, calc(100vw - 100%) * 1e5,var(--radius-5));--radius-conditional-6:clamp(0px, calc(100vw - 100%) * 1e5,var(--radius-6))}:root{--color-bg: #0b0b0d;--color-felt: radial-gradient( ellipse 90% 60% at 50% 0%, color-mix(in srgb, var(--color-hot) 6%, var(--color-bg)) 0%, var(--color-bg) 60% );--color-surface-1: #16161a;--color-surface-2: #1f1f24;--color-surface-3: #2a2a31;--color-line: rgba(255, 255, 255, .08);--color-line-strong: rgba(255, 255, 255, .16);--color-edge-highlight: rgba(255, 255, 255, .06);--color-text: #f5f5f5;--color-text-muted: rgba(245, 245, 245, .62);--color-text-faint: rgba(245, 245, 245, .38);--color-on-brand: #07070a;--color-on-dark: #f7f7f9;--color-accent: #ff6a3d;--color-commit: #4ade80;--color-bad: #ef4848;--color-hot: #ff3d7f;--color-acid: #d4ff00;--color-chrome: #c0c4cc;--group-0: #f97316;--group-0-tint: color-mix(in srgb, #f97316 12%, transparent);--group-1: #06b6d4;--group-1-tint: color-mix(in srgb, #06b6d4 12%, transparent);--group-2: #a855f7;--group-2-tint: color-mix(in srgb, #a855f7 12%, transparent);--group-3: #facc15;--group-3-tint: color-mix(in srgb, #facc15 12%, transparent);--group-4: #ec4899;--group-4-tint: color-mix(in srgb, #ec4899 12%, transparent);--group-5: #22c55e;--group-5-tint: color-mix(in srgb, #22c55e 12%, transparent);--bg: var(--color-bg);--panel: var(--color-surface-1);--panel-2: var(--color-surface-2);--line: var(--color-line);--text: var(--color-text);--muted: var(--color-text-muted);--accent: var(--color-accent);--commit: var(--color-commit);--bad: var(--color-bad);--hot: var(--color-hot);--acid: var(--color-acid);--chrome: var(--color-chrome);--on-brand: var(--color-on-brand);--on-dark: var(--color-on-dark);--shadow-lift: 0 .125rem .5rem rgba(0, 0, 0, .35);--shadow-pop: 0 .5rem 1.25rem rgba(0, 0, 0, .45);--shadow-drop: 0 1.5rem 3.75rem rgba(0, 0, 0, .55);--shadow-edge-top: inset 0 1px 0 var(--color-edge-highlight);--shadow-die-selected: 0 .25rem .5rem rgba(0, 0, 0, .5);--shadow-die-auto: 0 .25rem .5rem rgba(74, 222, 128, .4);--glow-accent: 0 0 1.5rem color-mix(in srgb, var(--color-accent) 50%, transparent);--glow-hot: 0 0 1.5rem color-mix(in srgb, var(--color-hot) 60%, transparent);--glow-commit: 0 0 1.5rem color-mix(in srgb, var(--color-commit) 50%, transparent);--glow-player: 0 0 1.5rem color-mix(in srgb, var(--player-color, var(--color-accent)) 55%, transparent);--scrim: rgba(0, 0, 0, .55);--scrim-strong: rgba(0, 0, 0, .78);--scrim-soft: rgba(0, 0, 0, .45);--font-display: "Archivo Black", "Helvetica Neue", system-ui, sans-serif;--font-body: "Inter", system-ui, -apple-system, sans-serif;--type-spotlight: clamp(3.5rem, 2.4rem + 5.5vw, 6rem);--type-hero: clamp(2.25rem, 1.7rem + 2.6vw, 3.5rem);--type-feature: clamp(1.375rem, 1.15rem + 1vw, 1.75rem);--type-body-lg: clamp(1.0625rem, 1rem + .4vw, 1.25rem);--type-body: clamp(.9375rem, .91rem + .2vw, 1rem);--type-meta: clamp(.8125rem, .78rem + .2vw, .875rem);--type-caption: clamp(.6875rem, .65rem + .2vw, .75rem);--track-loose: .18em;--track-wide: .06em;--track-snug: .02em;--track-tight: -.01em;--track-display: -.02em;--leading-tight: .95;--leading-snug: 1.15;--leading-body: 1.45;--t-xs: var(--type-caption);--t-sm: var(--type-meta);--t-base: var(--type-body);--t-lg: var(--type-body-lg);--t-xl: var(--type-feature);--t-2xl: var(--type-hero);--t-3xl: var(--type-hero);--t-hero: var(--type-spotlight);--space-0: 0;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--gap-inline: var(--space-2);--gap-stack: var(--space-3);--gap-section: var(--space-6);--pad-control: .6em 1em;--pad-card: var(--space-3) var(--space-4);--s-1: var(--space-1);--s-2: var(--space-2);--s-3: var(--space-3);--s-4: var(--space-4);--s-5: var(--space-5);--s-6: var(--space-6);--s-8: var(--space-8);--s-10: var(--space-10);--s-12: var(--space-12);--w-app: min(28rem, 100vw);--w-card: min(24rem, 92vw);--radius-xs: .25rem;--radius-sm: .5rem;--radius-md: .875rem;--radius-lg: 1.125rem;--radius-xl: 1.5rem;--radius-sheet: 1.5rem 1.5rem 0 0;--radius-pill: 999px;--radius-circle: 50%;--r-xs: var(--radius-xs);--r-sm: var(--radius-sm);--r-md: var(--radius-md);--r-lg: var(--radius-lg);--r-xl: var(--radius-xl);--r-sheet: var(--radius-sheet);--r-pill: var(--radius-pill);--r-circle: var(--radius-circle);--border-hairline: 1px solid var(--color-line);--border-strong: 1px solid var(--color-line-strong);--border-die: .1875rem solid transparent;--bw-thin: 1px;--bw-die: .1875rem;--dur-snap: .08s;--dur-fast: .16s;--dur-base: .28s;--dur-slow: .48s;--dur-theater: .85s;--ease-snap: var(--ease-3);--ease-settle: var(--ease-out-3);--ease-bounce: var(--ease-elastic-out-2);--ease-spring: cubic-bezier(.22, 1.05, .36, 1);--ease-die-settle: linear( 0, .29 10%, .68 20%, .9 30%, .99 40%, 1.015 50%, 1.012 60%, 1.005 70%, 1.002 80%, 1 );color-scheme:dark}@media (prefers-reduced-motion: no-preference){:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-sm)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:16px;line-height:var(--leading-body);font-feature-settings:"ss01","cv11";overscroll-behavior-y:contain;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;height:100%}body{background:var(--color-felt) fixed;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);height:100svh;height:100dvh}#app{height:100%}.hot-mark{font-family:var(--font-display);font-style:italic;letter-spacing:var(--track-snug);text-transform:uppercase;display:inline-block;transform:skew(-8deg)}.app{max-width:var(--w-app);margin-inline:auto;padding:var(--space-2) var(--space-3) var(--space-1);display:flex;flex-direction:column;gap:var(--gap-stack);height:100%;transition:transform var(--dur-slow) var(--ease-settle)}.app.flipped,.app.flipped .camera-sheet{transform:rotate(180deg);transform-origin:center center}.surface{background:var(--color-surface-1);border:var(--border-hairline);border-radius:var(--radius-md);box-shadow:var(--shadow-edge-top),var(--shadow-lift)}.scoreboard{display:flex;gap:var(--gap-inline);align-items:stretch;flex:0 0 auto}.scoreboard .chip{flex:1 1 0;background:var(--color-surface-1);border:var(--border-hairline);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);position:relative;display:flex;flex-direction:column;justify-content:center;min-width:0;overflow:hidden;opacity:.45;box-shadow:var(--shadow-edge-top);transition:background var(--dur-slow) ease,border-color var(--dur-slow) ease,opacity var(--dur-slow) ease,flex-grow var(--dur-slow) ease,box-shadow var(--dur-slow) ease,transform var(--dur-snap) var(--ease-snap);cursor:pointer;text-align:left;font-family:inherit;color:inherit}.scoreboard .chip:active{transform:scale(.97)}.scoreboard .chip-badge{position:absolute;top:var(--space-1);right:var(--space-1);display:flex;align-items:center;gap:.1875rem;padding:.125rem .375rem;border-radius:var(--radius-pill);background:var(--color-bg);border:var(--border-hairline);font-size:var(--type-caption);color:var(--color-text-muted);pointer-events:none;line-height:1}.scoreboard .chip-badge-mode{font-family:var(--font-display);font-style:italic;letter-spacing:.04em;transform:skew(-6deg);display:inline-block}.scoreboard .chip-badge-flip{color:var(--color-hot);font-size:.75rem;display:inline-flex;align-items:center}.scoreboard .chip-badge-gear{font-size:.75rem;margin-inline-start:.0625rem;opacity:.8;display:inline-flex;align-items:center}.scoreboard .chip.current .chip-badge{background:var(--color-bg);border-color:color-mix(in srgb,var(--player-color, var(--color-accent)) 50%,var(--color-line));color:var(--player-color, var(--color-accent))}.scoreboard .chip-stripe{position:absolute;left:0;top:0;bottom:0;width:.25rem;background:var(--player-color, var(--color-line));opacity:.5;transition:opacity var(--dur-slow) ease,width var(--dur-slow) ease}.scoreboard .chip.current{flex-grow:2.2;opacity:1;background:linear-gradient(180deg,color-mix(in srgb,var(--player-color, var(--color-accent)) 22%,var(--color-surface-2)),color-mix(in srgb,var(--player-color, var(--color-accent)) 8%,var(--color-surface-1)));border-color:color-mix(in srgb,var(--player-color, var(--color-accent)) 60%,var(--color-line-strong));box-shadow:var(--shadow-edge-top),0 0 0 1px color-mix(in srgb,var(--player-color, var(--color-accent)) 35%,transparent),var(--glow-player);animation:chip-handoff .7s var(--ease-bounce)}.scoreboard .chip.current .chip-stripe{width:.375rem;opacity:1;box-shadow:0 0 .75rem var(--player-color)}@keyframes chip-handoff{0%{transform:scale(.95)}60%{transform:scale(1.04)}to{transform:scale(1)}}.scoreboard .chip-name{font-size:var(--type-caption);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:var(--track-wide);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:600}.scoreboard .chip.current .chip-name{color:var(--player-color, var(--color-accent));letter-spacing:var(--track-wide)}.scoreboard .chip-score{font-size:var(--type-feature);font-weight:700;font-variant-numeric:tabular-nums;line-height:var(--leading-tight)}.scoreboard .chip.current .chip-score{font-family:var(--font-display);font-style:italic;font-size:var(--type-hero);letter-spacing:var(--track-tight);color:var(--player-color, var(--color-accent));text-shadow:0 0 1.5rem color-mix(in srgb,var(--player-color, var(--color-accent)) 60%,transparent);transform:skew(-4deg);display:inline-block}.scoreboard .chip-not-in{font-size:var(--type-caption);color:var(--color-text-muted)}.scoreboard .chip-farkles{position:absolute;top:.25rem;right:.5rem;color:var(--color-bad);font-size:1rem;letter-spacing:.125rem}.scoreboard .gear{flex:0 0 2.75rem;background:transparent;border:var(--border-hairline);border-radius:var(--radius-md);color:var(--color-text-muted);font-size:var(--type-body-lg);cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.scoreboard .gear svg{width:1.1em;height:1.1em}.meta{display:flex;align-items:center;justify-content:space-between;gap:var(--gap-stack);flex:0 0 auto;font-size:var(--type-body);padding:var(--space-2) var(--space-3);background:var(--color-surface-1);border:var(--border-hairline);border-radius:var(--radius-md);box-shadow:var(--shadow-edge-top)}.meta-left{display:flex;align-items:center;gap:var(--gap-stack);flex-wrap:wrap}.meta-dice{color:var(--color-text-muted);font-size:var(--type-meta);text-transform:uppercase;letter-spacing:var(--track-wide);font-weight:600}.meta-dice strong{color:var(--color-text);font-family:var(--font-display);font-size:var(--type-feature);font-variant-numeric:tabular-nums;margin-inline-end:.25rem;letter-spacing:var(--track-tight)}.meta-right{display:flex;gap:var(--gap-inline);align-items:center;margin-inline-start:auto}.icon-btn{width:2.25rem;height:2.25rem;border-radius:var(--radius-md);border:var(--border-hairline);background:transparent;color:var(--color-text-muted);font-size:var(--type-body);cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;transition:background var(--dur-fast) ease,color var(--dur-fast) ease}.icon-btn:hover,.icon-btn[aria-pressed=true]{background:var(--color-surface-2);color:var(--color-text)}.icon-btn svg{width:1.1em;height:1.1em}.at-risk{display:inline-flex;align-items:center;gap:var(--gap-inline);padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);background:var(--color-bg);border:var(--border-hairline);font-variant-numeric:tabular-nums;font-size:var(--type-meta);transition:background var(--dur-base) ease,border-color var(--dur-base) ease,color var(--dur-base) ease,box-shadow var(--dur-base) ease}.at-risk.idle{color:var(--color-text-faint)}.at-risk.idle .risk-stack{display:none}.at-risk-label{font-size:var(--type-caption);text-transform:uppercase;letter-spacing:var(--track-wide);color:var(--color-text-muted);font-weight:600}.at-risk-num{font-family:var(--font-display);font-size:var(--type-body-lg);font-style:italic;font-weight:700;letter-spacing:var(--track-tight)}.risk-stack{display:inline-flex;align-items:flex-end;height:.875rem;width:1.75rem;position:relative}.risk-chip{position:absolute;left:calc(var(--i) * .0938rem);bottom:0;width:.625rem;height:calc(.1875rem + var(--i) * .0375rem);border-radius:.125rem;background:currentColor;opacity:.85;animation:chip-stack var(--dur-base) var(--ease-settle)}@keyframes chip-stack{0%{transform:translateY(-.375rem);opacity:0}to{transform:translateY(0);opacity:.85}}.at-risk.tier-1{color:var(--color-accent);border-color:color-mix(in srgb,var(--color-accent) 40%,transparent)}.at-risk.tier-2{color:#facc15;border-color:color-mix(in srgb,#facc15 50%,transparent);background:color-mix(in srgb,#facc15 8%,var(--color-surface-1))}.at-risk.tier-3{color:#a855f7;border-color:color-mix(in srgb,#a855f7 55%,transparent);background:color-mix(in srgb,#a855f7 10%,var(--color-surface-1));box-shadow:0 0 .75rem color-mix(in srgb,#a855f7 25%,transparent)}.at-risk.tier-4{color:var(--color-acid);border-color:var(--color-hot);background:linear-gradient(90deg,color-mix(in srgb,var(--color-accent) 30%,var(--color-surface-1)),color-mix(in srgb,var(--color-hot) 30%,var(--color-surface-1)));box-shadow:0 0 1rem color-mix(in srgb,var(--color-hot) 40%,transparent);animation:risk-pulse 1.4s ease-in-out infinite}.at-risk.tier-4 .at-risk-num{font-family:var(--font-display);font-style:italic;letter-spacing:var(--track-tight)}@keyframes risk-pulse{0%,to{filter:brightness(1)}50%{filter:brightness(1.15)}}.meta-hot{font-family:var(--font-display);background:linear-gradient(135deg,var(--color-accent),var(--color-hot));color:var(--color-on-brand);padding:.125rem .5rem .0625rem;border-radius:var(--radius-xs);font-size:var(--type-caption);letter-spacing:.05em;font-style:italic;transform:skew(-8deg);display:inline-block;animation:hot-wiggle 1.4s ease-in-out infinite;text-shadow:0 0 .75rem color-mix(in srgb,var(--color-hot) 60%,transparent)}@keyframes hot-wiggle{0%,to{transform:skew(-8deg) translateY(0)}50%{transform:skew(-8deg) translateY(-1px)}}.meta-tag-along{color:var(--color-accent)}.modes{display:flex;gap:.25rem;flex:0 0 auto}.mode-pill{width:1.75rem;height:1.75rem;border-radius:var(--radius-sm);background:var(--color-surface-1);border:var(--border-hairline);color:var(--color-text-muted);font-size:var(--type-caption);font-weight:700;cursor:pointer;padding:0}.mode-pill.active{background:var(--color-text);color:var(--color-on-brand);border-color:var(--color-text)}.tray{flex:1 1 auto;display:flex;align-items:center;justify-content:center;min-height:0;padding:.25rem 0}.tray-empty .placeholder{width:100%;text-align:center;color:var(--color-text-muted);font-size:var(--type-meta)}.tray-hero{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--gap-stack);background:radial-gradient(ellipse 60% 50% at 50% 30%,color-mix(in srgb,var(--player-color, var(--color-accent)) 18%,transparent),transparent 70%),linear-gradient(180deg,color-mix(in srgb,var(--player-color, var(--color-accent)) 8%,var(--color-surface-1)),var(--color-surface-1) 80%);border:var(--border-hairline);border-color:color-mix(in srgb,var(--player-color, var(--color-accent)) 25%,var(--color-line));border-radius:var(--radius-xl);color:inherit;font-family:inherit;cursor:pointer;padding:var(--space-4);position:relative;overflow:hidden;box-shadow:var(--shadow-edge-top),inset 0 -1px #0000004d,var(--shadow-lift);transition:transform var(--dur-fast) var(--ease-settle),border-color var(--dur-base) ease,box-shadow var(--dur-base) ease;animation:tray-hero-in var(--dur-slow) var(--ease-settle)}.tray-hero:active{transform:scale(.98);box-shadow:var(--shadow-edge-top),inset 0 -1px #0000004d,var(--shadow-lift)}.tray-hero:hover{border-color:color-mix(in srgb,var(--player-color, var(--color-accent)) 50%,var(--color-line-strong))}.tray-hero-cta{display:flex;flex-direction:column;align-items:center;gap:.125rem;position:relative}.tray-hero-eyebrow{font-size:var(--type-caption);text-transform:uppercase;letter-spacing:var(--track-loose);color:var(--color-text-muted);font-weight:700}.tray-hero-num{font-family:var(--font-display);font-style:italic;font-size:var(--type-spotlight);line-height:var(--leading-tight);letter-spacing:var(--track-display);transform:skew(-6deg);color:var(--player-color, var(--color-accent));text-shadow:0 0 1.5rem color-mix(in srgb,var(--player-color, var(--color-accent)) 60%,transparent),0 .25rem 1rem rgba(0,0,0,.5)}.tray-hero-label{font-size:var(--type-meta);text-transform:uppercase;letter-spacing:var(--track-loose);color:var(--color-text-muted);font-weight:700}.tray-hero-kept{display:flex;flex-direction:column;align-items:center;gap:.5rem;position:relative}.tray-hero-kept-label{font-size:var(--type-caption);text-transform:uppercase;letter-spacing:var(--track-loose);color:var(--color-text-muted);opacity:.7;font-weight:600}.kept-die.hot{box-shadow:var(--shadow-lift),var(--glow-hot)}.kept-die.hot svg{width:92%;height:92%}.tray-hero-kept-dice{position:relative;width:min(85vw,20rem);height:5rem}.kept-die{position:absolute;width:3.25rem;height:3.25rem;display:inline-flex;align-items:center;justify-content:center;background:var(--color-text);border:.125rem solid var(--color-text);border-radius:var(--radius-md);opacity:.85;transform:translate(-50%,-50%) rotate(var(--rot, 0deg));box-shadow:var(--shadow-lift)}.kept-die svg{width:86%;height:86%;display:block}.kept-die svg circle{fill:var(--color-bg)}@keyframes tray-hero-in{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}.tray-hero.hot{background:radial-gradient(ellipse 70% 60% at 50% 30%,color-mix(in srgb,var(--color-acid) 14%,transparent),transparent 60%),linear-gradient(180deg,color-mix(in srgb,var(--color-hot) 22%,var(--color-surface-1)),color-mix(in srgb,var(--color-accent) 8%,var(--color-surface-1)));border-color:var(--color-hot);box-shadow:var(--shadow-edge-top),inset 0 -1px #0000004d,var(--glow-hot)}.tray-hero.hot .tray-hero-num{color:var(--color-hot);text-shadow:0 0 1.5rem color-mix(in srgb,var(--color-hot) 70%,transparent),0 .25rem 1rem rgba(0,0,0,.5)}.tray-hero.hot .tray-hero-eyebrow{color:var(--color-acid);letter-spacing:.22em}.tray-flow{display:grid;grid-template-columns:repeat(6,1fr);gap:var(--space-2);width:100%}.tray-grouped{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.875rem;width:100%}.tray-easy{display:flex;flex-direction:column;gap:var(--gap-stack);width:100%}.group-legend{display:flex;flex-wrap:wrap;gap:var(--gap-inline);justify-content:center}.legend-chip{font-size:var(--type-caption);font-weight:700;letter-spacing:var(--track-snug);padding:.25rem .625rem;border-radius:var(--radius-pill);background:var(--color-surface-1);border:1px solid;text-transform:uppercase}.legend-chip.legend-0{color:var(--group-0);border-color:var(--group-0);background:var(--group-0-tint)}.legend-chip.legend-1{color:var(--group-1);border-color:var(--group-1);background:var(--group-1-tint)}.legend-chip.legend-2{color:var(--group-2);border-color:var(--group-2);background:var(--group-2-tint)}.legend-chip.legend-3{color:var(--group-3);border-color:var(--group-3);background:var(--group-3-tint)}.legend-chip.legend-4{color:var(--group-4);border-color:var(--group-4);background:var(--group-4-tint)}.legend-chip.legend-5{color:var(--group-5);border-color:var(--group-5);background:var(--group-5-tint)}.tray-grid-2row{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(2,1fr);gap:var(--gap-stack);width:100%;max-width:min(22.5rem,80vw);margin-inline:auto}.tray-grid-2row .die.leftover{opacity:.45}.tray-grid-2row .die.group-0{border-color:var(--group-0)}.tray-grid-2row .die.group-1{border-color:var(--group-1)}.tray-grid-2row .die.group-2{border-color:var(--group-2)}.tray-grid-2row .die.group-3{border-color:var(--group-3)}.tray-grid-2row .die.group-4{border-color:var(--group-4)}.tray-grid-2row .die.group-5{border-color:var(--group-5)}.tray-scatter{position:relative;width:min(100%,22.5rem);aspect-ratio:1;margin-inline:auto;background:radial-gradient(ellipse 70% 60% at 50% 50%,color-mix(in srgb,var(--color-accent) 4%,transparent),transparent 80%);border:1px dashed color-mix(in srgb,var(--color-accent) 18%,transparent);border-radius:var(--radius-md)}.tray-scatter .die{aspect-ratio:1;height:auto}.dice-group{display:flex;flex-direction:column;gap:.25rem;padding:.375rem .375rem .5rem;border-radius:var(--radius-md);flex:0 1 auto;align-items:center}.dice-group .dice-row{display:flex;gap:.375rem;align-items:center}.group-label{font-size:var(--type-caption);text-transform:uppercase;letter-spacing:var(--track-wide);font-weight:700;color:var(--color-text);text-align:center;white-space:nowrap}.dice-group.leftover .group-label{color:var(--color-text-muted)}.dice-group.scoring{background:color-mix(in srgb,var(--color-accent) 8%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--color-accent) 40%,transparent)}.dice-group.scoring.group-0{box-shadow:inset 0 0 0 2px var(--group-0);background:var(--group-0-tint)}.dice-group.scoring.group-1{box-shadow:inset 0 0 0 2px var(--group-1);background:var(--group-1-tint)}.dice-group.scoring.group-2{box-shadow:inset 0 0 0 2px var(--group-2);background:var(--group-2-tint)}.dice-group.scoring.group-3{box-shadow:inset 0 0 0 2px var(--group-3);background:var(--group-3-tint)}.dice-group.scoring.group-4{box-shadow:inset 0 0 0 2px var(--group-4);background:var(--group-4-tint)}.dice-group.scoring.group-5{box-shadow:inset 0 0 0 2px var(--group-5);background:var(--group-5-tint)}.dice-group.leftover{opacity:.45}.tray-grouped .die{width:3.25rem}.die{--rot: 0deg;--lift: 0px;--flip-x: 0px;--flip-y: 0px;--die-bg: #f5f5f5;--die-pip: #1a1a1a;aspect-ratio:1;background:linear-gradient(180deg,color-mix(in srgb,var(--die-bg) 100%,white 6%),var(--die-bg) 70%);border:var(--border-die);border-radius:var(--radius-md);padding:0;cursor:pointer;box-shadow:inset 0 1px #fff9,var(--shadow-lift);transition:transform .55s var(--ease-spring),border-color .1s;transition-timing-function:var(--ease-die-settle);transform:translate(var(--flip-x),var(--flip-y)) translateY(var(--lift)) rotate(var(--rot))}.die svg{width:100%;height:100%;display:block}.die svg circle{fill:var(--die-pip)}.die.hint-0{border-color:var(--group-0)}.die.hint-1{border-color:var(--group-1)}.die.hint-2{border-color:var(--group-2)}.die.hint-3{border-color:var(--group-3)}.die.hint-4{border-color:var(--group-4)}.die.hint-5{border-color:var(--group-5)}.die.selected{--lift: 0px;filter:drop-shadow(var(--shadow-die-selected))}.die.auto{--lift: -4px;filter:drop-shadow(var(--shadow-die-auto))}.die:disabled{opacity:.7}.die.dead{outline:2px dashed var(--bad);outline-offset:2px;animation:die-dead-pulse 1.2s ease-in-out infinite}@keyframes die-dead-pulse{0%,to{outline-color:var(--bad)}50%{outline-color:color-mix(in srgb,var(--bad) 40%,transparent)}}.preview-row{flex:0 0 auto;display:flex;align-items:center;justify-content:center;gap:var(--gap-inline);font-size:var(--type-meta);font-variant-numeric:tabular-nums;min-height:1.5lh}.preview-row.hidden{display:none}.preview-row.valid .preview-points{color:var(--color-commit);font-weight:700;font-size:var(--type-body)}.preview-row .preview-desc{color:var(--color-text-muted)}.preview-row .preview-hint{color:var(--color-text-muted);font-style:italic}.preview-row.invalid .preview-hint{color:var(--color-bad);font-style:normal}.actions{display:flex;gap:var(--gap-inline);flex-wrap:wrap;flex:0 0 auto;padding-top:var(--space-1)}.actions .btn-primary{flex:1;min-height:4.5rem;border-radius:var(--radius-lg);border:none;background:linear-gradient(180deg,color-mix(in srgb,var(--color-accent) 100%,white 12%),var(--color-accent));color:var(--color-on-brand);font-family:var(--font-display);font-style:italic;font-size:var(--type-hero);font-weight:800;font-variant-numeric:tabular-nums;cursor:pointer;letter-spacing:var(--track-tight);transform:skew(-3deg);position:relative;box-shadow:inset 0 1px #ffffff59,inset 0 -2px #0003,0 .5rem 1.25rem -.25rem color-mix(in srgb,var(--color-accent) 60%,transparent),var(--shadow-pop);transition:transform var(--dur-snap) var(--ease-snap),box-shadow var(--dur-snap) var(--ease-snap),background var(--dur-base) ease}.actions .btn-primary:active:not(:disabled){transform:skew(-3deg) translateY(2px) scale(.98);box-shadow:inset 0 1px #ffffff40,inset 0 -1px #00000026,0 .25rem .75rem -.25rem color-mix(in srgb,var(--color-accent) 60%,transparent),var(--shadow-lift)}.actions .btn-primary.commit{background:linear-gradient(180deg,color-mix(in srgb,var(--color-commit) 100%,white 14%),var(--color-commit));box-shadow:inset 0 1px #fff6,inset 0 -2px #0003,0 .5rem 1.25rem -.25rem color-mix(in srgb,var(--color-commit) 60%,transparent),var(--shadow-pop)}.actions .btn-primary:disabled{opacity:.35;cursor:not-allowed;box-shadow:none}.actions .btn-secondary{flex:0 0 auto;min-height:3.5rem;padding-inline:var(--space-4);border-radius:var(--radius-lg);background:var(--color-surface-1);border:var(--border-hairline);color:var(--color-text);font-size:var(--type-body);font-weight:500;cursor:pointer;box-shadow:var(--shadow-edge-top),var(--shadow-lift);transition:transform var(--dur-snap) var(--ease-snap)}.actions .btn-secondary:active{transform:translateY(1px) scale(.99)}.actions-note{flex-basis:100%;text-align:center;font-size:var(--type-caption);color:var(--color-text-faint);margin-top:.125rem}.tertiary{flex-basis:100%;display:flex;justify-content:center;gap:var(--space-4)}.tertiary-btn{background:transparent;border:none;color:var(--color-text-muted);font-size:var(--type-caption);letter-spacing:var(--track-wide);text-transform:uppercase;padding:var(--space-1) 0;cursor:pointer;display:inline-flex;align-items:center;gap:.25rem}.tertiary-btn svg{width:1.1em;height:1.1em}.review-actions .review-retake{display:inline-flex;align-items:center;gap:.375rem}.review-actions .review-retake svg{width:1.1em;height:1.1em}.review-pill .check-glyph{display:inline-flex;align-items:center;vertical-align:-.1em}.pc-footnote-icon{display:inline-flex;align-items:center;vertical-align:-.15em}.onboarding-icon{display:inline-flex;align-items:center;vertical-align:-.15em;font-size:1.2em}.log-peek{flex:0 0 auto;display:flex;align-items:center;gap:var(--s-2);padding-block:var(--s-2);background:transparent;border:none;color:var(--muted);font-size:var(--t-xs);text-align:left;cursor:pointer;border-top:1px solid var(--line)}.log-peek .chev{flex:0 0 auto;color:var(--accent)}.log-peek .log-peek-text{flex:1 1 auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.log-sheet{position:fixed;inset:auto 0 0 0;background:var(--panel);border-top:1px solid var(--line);border-radius:var(--r-sheet);max-height:70vh;display:flex;flex-direction:column;z-index:15;padding:8px 12px env(safe-area-inset-bottom)}.log-sheet header{display:flex;justify-content:space-between;align-items:center}.log-sheet header h2{margin:0;font-size:16px}.log-sheet header button{background:transparent;border:none;color:var(--text);font-size:24px;width:36px;height:36px}.log-list{overflow-y:auto;display:flex;flex-direction:column;gap:4px;padding:8px 0;font-size:13px;color:var(--text)}.log-line{color:var(--muted)}.player-config{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;display:flex;align-items:flex-end;justify-content:center;pointer-events:none}.pc-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--scrim);pointer-events:auto;animation:pc-fade var(--dur-fast) ease-out}@keyframes pc-fade{0%{opacity:0}to{opacity:1}}.pc-sheet{position:relative;pointer-events:auto;width:100%;max-width:var(--w-app);background:var(--panel);border-radius:var(--r-sheet);border-top:1px solid var(--line);border-inline:1px solid var(--line);display:flex;flex-direction:column;max-height:85vh;animation:pc-slide var(--dur-base) var(--ease-settle);padding-bottom:env(safe-area-inset-bottom)}@keyframes pc-slide{0%{transform:translateY(100%)}to{transform:translateY(0)}}.pc-sheet header{display:flex;align-items:center;gap:var(--s-3);padding:var(--s-3) var(--s-4);position:relative}.pc-stripe{width:4px;align-self:stretch;border-radius:var(--r-pill);background:var(--player-color)}.pc-title{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.pc-sheet h2{margin:0;font-size:var(--t-xl);font-weight:700;color:var(--player-color)}.pc-subtitle{margin:0;font-size:var(--t-xs);color:var(--muted);line-height:1.4}.pc-sheet header button[data-close]{background:transparent;border:none;color:var(--muted);font-size:28px;width:36px;height:36px;cursor:pointer}.pc-body{padding:0 var(--s-4) var(--s-4);display:flex;flex-direction:column;gap:var(--s-4);overflow-y:auto}.pc-field{display:flex;flex-direction:column;gap:var(--s-2)}.pc-field>span:first-child,.pc-field>span>strong{font-size:var(--t-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:600}.pc-label{display:flex;flex-direction:column;gap:3px}.pc-label>small{font-size:var(--t-xs);text-transform:none;letter-spacing:0;font-weight:400;color:var(--muted);line-height:1.4}.pc-field input[type=text]{background:var(--bg);border:1px solid var(--line);color:var(--text);padding:var(--s-2) var(--s-3);border-radius:var(--r-md);font-size:var(--t-base);font-family:inherit}.pc-field input[type=text]:focus{outline:none;border-color:var(--player-color)}.pc-colors{display:grid;grid-template-columns:repeat(6,1fr);gap:var(--s-2)}.pc-color-swatch{aspect-ratio:1;border-radius:var(--r-md);border:2px solid transparent;cursor:pointer;padding:0;transition:transform var(--dur-fast) ease,border-color var(--dur-base) ease}.pc-color-swatch.active{border-color:var(--text);transform:scale(1.05)}.pc-modes{display:flex;flex-direction:column;gap:var(--s-2)}.pc-mode-pill{background:var(--bg);border:1px solid var(--line);border-radius:var(--r-md);padding:var(--s-3);display:grid;grid-template-columns:64px 1fr;align-items:center;gap:var(--s-3);cursor:pointer;font-family:inherit;color:var(--text);text-align:left}.pc-mode-pill strong{font-family:var(--font-display);font-style:italic;font-size:var(--t-lg);letter-spacing:.02em;transform:skew(-6deg);justify-self:start}.pc-mode-pill span{font-size:var(--t-sm);color:var(--muted);line-height:1.4}.pc-mode-pill.active{background:var(--player-color);border-color:var(--player-color);color:var(--on-brand)}.pc-mode-pill.active span{color:#000000a6}.pc-toggle{flex-direction:row;align-items:center;justify-content:space-between;cursor:pointer}.pc-toggle>span{display:flex;flex-direction:column;gap:2px;text-transform:none;letter-spacing:0}.pc-toggle>span>strong{text-transform:none;font-size:var(--t-base);letter-spacing:0;color:var(--text);font-weight:600}.pc-toggle>span>small{font-size:var(--t-xs);color:var(--muted)}.pc-toggle input[type=checkbox]{width:24px;height:24px;accent-color:var(--player-color);flex-shrink:0}.pc-sheet footer{padding:var(--s-3) var(--s-4) var(--s-4);border-top:1px solid var(--line);display:flex;flex-direction:column;gap:var(--s-2)}.pc-footnote{margin:0;font-size:var(--t-xs);color:var(--muted);text-align:center;line-height:1.4}.pc-done{width:100%;min-height:max(48px,3rem);background:var(--player-color);color:var(--on-brand);border:none;border-radius:var(--r-lg);font-size:var(--t-base);font-weight:700;cursor:pointer}.onboarding{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-felt);z-index:25;display:flex;align-items:center;justify-content:center;padding:env(safe-area-inset-top) var(--space-4) env(safe-area-inset-bottom)}.onboarding-card{max-width:var(--w-card);width:100%;background:var(--color-surface-1);border:var(--border-hairline);border-radius:var(--radius-xl);padding:var(--space-8) var(--space-6);text-align:center;box-shadow:var(--shadow-edge-top),var(--shadow-drop)}.onboarding-emoji{font-size:4rem;line-height:1;margin-bottom:var(--space-2)}.onboarding-card h1{margin:0 0 var(--space-1);font-family:var(--font-display);font-style:italic;font-size:var(--type-spotlight);letter-spacing:var(--track-display);line-height:var(--leading-tight);background:linear-gradient(135deg,var(--color-accent),var(--color-hot));background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;transform:skew(-6deg);display:inline-block}.onboarding-tag{margin:0 0 var(--space-5);color:var(--color-text-muted);font-size:var(--type-meta);text-transform:uppercase;letter-spacing:var(--track-loose);font-weight:600}.onboarding-list{list-style:none;margin:0 0 var(--space-6);padding:0;text-align:left;display:flex;flex-direction:column;gap:var(--space-3);font-size:var(--type-meta);line-height:var(--leading-snug)}.onboarding-list li{color:var(--color-text)}.onboarding-list strong{color:var(--color-accent);font-family:var(--font-display);font-style:italic}.onboarding-names{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-4);text-align:left}.onboarding-names span{font-size:var(--type-caption);text-transform:uppercase;letter-spacing:var(--track-wide);color:var(--color-text-muted);font-weight:600}.onboarding-names input{background:var(--color-bg);border:var(--border-hairline);color:var(--color-text);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--type-body);font-family:inherit}.onboarding-names input:focus{outline:none;border-color:var(--color-accent)}.onboarding-go{width:100%;min-height:3.5rem;border:none;border-radius:var(--radius-lg);background:linear-gradient(180deg,color-mix(in srgb,var(--color-accent) 100%,white 12%),var(--color-accent));color:var(--color-on-brand);font-family:var(--font-display);font-style:italic;font-size:var(--type-body-lg);font-weight:700;letter-spacing:var(--track-snug);cursor:pointer;box-shadow:inset 0 1px #ffffff59,inset 0 -2px #0003,var(--shadow-pop)}.onboarding-install{margin-bottom:var(--space-4);padding:var(--space-3);border-radius:var(--radius-md);background:color-mix(in srgb,var(--color-accent) 10%,var(--color-surface-1));border:1px solid color-mix(in srgb,var(--color-accent) 30%,var(--color-line));text-align:left}.onboarding-install-title{font-size:var(--type-meta);font-weight:700;color:var(--color-accent);margin-bottom:var(--space-1);text-transform:uppercase;letter-spacing:var(--track-wide)}.onboarding-install-body{font-size:var(--type-caption);color:var(--color-text);line-height:var(--leading-body)}.onboarding-install-body strong{color:var(--color-accent)}.toast{position:fixed;bottom:calc(env(safe-area-inset-bottom) + 28px);left:50%;transform:translate(-50%);background:var(--scrim-strong);color:var(--on-dark);padding:10px 18px;border-radius:var(--r-pill);font-size:13px;z-index:50;animation:toast-in .18s ease-out;pointer-events:none}.toast.toast-out{opacity:0;transition:opacity .32s ease-in}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%)}}.fx{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;pointer-events:none;display:flex;align-items:center;justify-content:center;animation:fx-in .2s ease-out;transition:opacity .28s ease-in,transform .28s ease-in}.fx.fx-out{opacity:0;transform:scale(1.05)}@keyframes fx-in{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.fx-card{text-align:center;padding:28px 36px;border-radius:var(--r-xl);background:var(--scrim-strong);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.08);box-shadow:var(--shadow-drop)}.fx-emoji{font-size:56px;line-height:1;margin-bottom:4px}.fx-title{font-family:var(--font-display);font-style:italic;font-size:var(--t-3xl);letter-spacing:.02em;font-variant-numeric:tabular-nums;transform:skew(-6deg);line-height:1}.fx-sub{font-size:12px;color:var(--muted);margin-top:6px;text-transform:uppercase;letter-spacing:.18em;font-weight:600}.fx-hot .fx-card{background:radial-gradient(circle at 20% 0%,rgba(255,255,255,.18),transparent 50%),linear-gradient(135deg,var(--accent),var(--hot));color:var(--on-dark);padding:36px 48px;box-shadow:0 0 0 1px #ffffff14,0 24px 60px #ff3d7f73,0 8px 20px #ff5e3a66}.fx-hot .fx-emoji{display:none}.fx-hot .fx-title{font-size:var(--t-hero);letter-spacing:-.02em;text-shadow:0 6px 24px rgba(0,0,0,.35);line-height:.95}.fx-hot .fx-sub{color:#000000b3;font-weight:800;font-size:14px;letter-spacing:.32em;margin-top:12px}.fx-farkle .fx-card{background:linear-gradient(135deg,#ef4444f5,#500000f2);color:var(--on-dark);box-shadow:0 24px 60px #ef444466}.fx-farkle .fx-title{font-size:clamp(2.5rem,2rem + 2.5vw,4rem);letter-spacing:-.01em;text-shadow:0 4px 16px rgba(0,0,0,.4)}.fx-farkle .fx-sub{color:#ffffffb3}.fx-penalty .fx-card{background:linear-gradient(135deg,#ef4444eb,#3c0000f2);color:var(--on-dark)}.fx-penalty .fx-title{color:var(--on-dark)}.fx-tier .fx-card{background:#242424eb;border:1px solid rgba(255,255,255,.1)}.fx-tier .fx-title{font-size:32px}.fx-tier .fx-sub{letter-spacing:.04em}.fx-tier-1 .fx-card{padding:18px 26px;background:linear-gradient(135deg,#ff8a3dd9,#b4501ee0);color:var(--on-dark)}.fx-tier-1 .fx-title{color:var(--on-dark);font-size:28px}.fx-tier-1 .fx-emoji{font-size:36px}.fx-tier-2 .fx-card{background:linear-gradient(135deg,#facc15eb,#f59e0beb);color:var(--panel)}.fx-tier-2 .fx-title{color:var(--panel);font-size:36px;font-weight:800}.fx-tier-2 .fx-sub{color:#0000008c}.fx-tier-2 .fx-emoji{font-size:44px}.fx-tier-3 .fx-card{padding:32px 44px;background:linear-gradient(135deg,#a855f7eb,#ec4899eb);color:var(--on-dark);box-shadow:0 0 0 4px #ffffff0d,0 24px 60px #a855f773}.fx-tier-3 .fx-title{font-size:44px;letter-spacing:.04em;text-shadow:0 2px 10px rgba(0,0,0,.3)}.fx-tier-3 .fx-emoji{font-size:56px}.fx-tier-4 .fx-card{padding:40px 52px;background:radial-gradient(circle at 30% 20%,rgba(212,255,0,.5),transparent 55%),linear-gradient(135deg,var(--hot) 0%,var(--accent) 50%,var(--acid) 100%);color:#0a0a0a;box-shadow:0 0 0 4px #d4ff0026,0 32px 80px #ff3d7f8c;animation:fx-in .3s ease-out,fx-shimmer 1.4s ease-in-out}.fx-tier-4 .fx-title{font-size:64px;letter-spacing:-.01em;text-shadow:0 4px 20px rgba(255,255,255,.25)}.fx-tier-4 .fx-emoji{font-size:64px}.fx-tier-4 .fx-sub{color:#0a0a0a}@keyframes fx-shimmer{0%,to{filter:brightness(1)}50%{filter:brightness(1.15) saturate(1.15)}}.game-over{flex:1;display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-4) var(--space-4) var(--space-6);overflow-y:auto;max-width:30rem;margin:0 auto;width:100%}.story-header{text-align:center;padding:var(--space-4) 0 0}.story-eyebrow{font-size:var(--type-caption);letter-spacing:var(--track-loose);text-transform:uppercase;color:var(--color-text-muted);margin-bottom:.375rem;font-weight:600}.story-winner{margin:0;font-family:var(--font-display);font-style:italic;font-size:var(--type-spotlight);letter-spacing:var(--track-display);line-height:var(--leading-tight);transform:skew(-6deg);display:inline-block;color:var(--player-color, var(--color-accent));text-shadow:0 0 1.5rem color-mix(in srgb,var(--player-color, var(--color-accent)) 50%,transparent)}.story-winner-line{margin:.375rem 0 0;font-size:var(--type-meta);color:var(--color-text-muted)}.final-board.story-board{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.375rem}.final-board.story-board li{display:grid;grid-template-columns:1.5rem 1fr auto;align-items:center;gap:var(--space-3);background:var(--color-surface-1);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-variant-numeric:tabular-nums;border-left:.25rem solid var(--player-color, var(--color-line));box-shadow:var(--shadow-edge-top)}.final-board.story-board li.first{background:linear-gradient(90deg,color-mix(in srgb,var(--player-color, var(--color-commit)) 18%,var(--color-surface-1)),var(--color-surface-1) 100%);border-color:var(--player-color, var(--color-commit));font-weight:700;box-shadow:var(--shadow-edge-top),var(--glow-player)}.final-board.story-board .rank{font-family:var(--font-display);font-style:italic;font-size:var(--type-meta);color:var(--color-text-muted);text-align:center}.final-board.story-board .board-score{font-family:var(--font-display);font-style:italic;font-size:var(--type-feature);letter-spacing:var(--track-tight)}.story-cards{display:flex;flex-direction:column;gap:.625rem}.story-card{background:var(--color-surface-1);border:var(--border-hairline);border-left:.25rem solid var(--player-color, var(--color-line));border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);box-shadow:var(--shadow-edge-top)}.story-card header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.375rem}.story-card-name{font-weight:700;color:var(--player-color, var(--color-text));text-transform:uppercase;letter-spacing:var(--track-wide);font-size:var(--type-meta)}.story-card-score{font-family:var(--font-display);font-style:italic;font-variant-numeric:tabular-nums;font-weight:700;font-size:var(--type-body-lg);letter-spacing:var(--track-tight)}.story-card ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.125rem;font-size:var(--type-meta);color:var(--color-text-muted)}.story-card ul strong{color:var(--color-text);font-variant-numeric:tabular-nums}.story-pb{margin-top:.375rem;font-size:var(--type-caption);color:var(--color-commit);font-weight:700;text-transform:uppercase;letter-spacing:var(--track-wide)}.story-actions{display:flex;gap:var(--space-2);margin-top:auto}.game-over .btn-primary{flex:1;min-height:3.5rem;border:none;border-radius:var(--radius-lg);background:linear-gradient(180deg,color-mix(in srgb,var(--color-commit) 100%,white 14%),var(--color-commit));color:var(--color-on-brand);font-family:var(--font-display);font-style:italic;font-size:var(--type-body-lg);font-weight:700;cursor:pointer;box-shadow:inset 0 1px #fff6,inset 0 -2px #0003,var(--shadow-pop)}.btn-share{min-height:3.5rem;padding:0 var(--space-5);border-radius:var(--radius-lg);background:var(--color-surface-1);border:var(--border-hairline);color:var(--color-text);font-size:var(--type-body);font-weight:600;cursor:pointer;box-shadow:var(--shadow-edge-top)}.camera-sheet{flex:1 1 auto;min-height:0;background:#000;border-radius:var(--r-lg);overflow:hidden;display:flex;flex-direction:column;position:relative}.camera-sheet header{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;color:var(--on-dark);font-size:13px;flex:0 0 auto}.vf-count{display:flex;align-items:baseline;gap:8px;background:#0000008c;padding:6px 14px;border-radius:var(--r-pill);border:1px solid rgba(255,255,255,.14)}.vf-count-num{font-family:var(--font-display);font-style:italic;font-size:28px;color:var(--accent);letter-spacing:.02em;transform:skew(-6deg);line-height:1}.vf-count-label{font-size:13px;text-transform:uppercase;letter-spacing:.16em;color:var(--on-dark);opacity:.85}.camera-sheet header button{background:transparent;border:none;color:var(--on-dark);font-size:22px;width:32px;height:32px}.viewfinder{flex:1 1 auto;display:flex;flex-direction:column;min-height:0}.vf-stage{flex:1 1 auto;position:relative;overflow:hidden;background:#000;min-height:0}.vf-stage video{width:100%;height:100%;object-fit:cover;display:block}.frame-guide{position:absolute;left:var(--x);top:var(--y);width:var(--w);height:var(--h);border:2px solid var(--accent);border-radius:var(--r-md);box-shadow:0 0 0 9999px var(--scrim-soft);pointer-events:none}.vf-hint{position:absolute;bottom:8px;left:0;right:0;text-align:center;color:var(--on-dark);font-size:13px;text-shadow:0 1px 2px rgba(0,0,0,.8);pointer-events:none}.capture-row{padding:12px;display:flex;justify-content:center;flex:0 0 auto}.shutter{width:56px;height:56px;border-radius:var(--r-circle);background:var(--on-dark);border:3px solid var(--on-dark);box-shadow:0 0 0 2px #000 inset}.review{flex:1 1 auto;display:flex;flex-direction:column;gap:var(--s-3);background:var(--bg);color:var(--text);min-height:0;padding:var(--s-3)}.review-header{display:flex;flex-direction:column;gap:var(--s-2);flex:0 0 auto}.review-title-row{display:flex;align-items:center;justify-content:space-between}.review-title{margin:0;font-family:var(--font-display);font-style:italic;font-size:var(--t-xl);letter-spacing:.02em;transform:skew(-6deg);display:inline-block}.review-status{display:flex;align-items:center;gap:var(--s-2)}.review-header button[data-close]{background:transparent;border:none;color:var(--text);font-size:28px;width:36px;height:36px}.review-pill{font-family:var(--font-display);font-style:italic;font-size:var(--t-xl);padding:4px 12px 3px;border-radius:var(--r-sm);letter-spacing:.02em;transform:skew(-6deg);display:inline-block;font-variant-numeric:tabular-nums}.review-pill.ok{background:var(--commit);color:var(--on-brand)}.review-pill.over{background:var(--bad);color:var(--on-dark)}.review-pill.under{background:var(--hot);color:var(--on-brand);animation:hot-wiggle 1.4s ease-in-out infinite}.review-msg{font-size:var(--t-sm);color:var(--muted)}.review-msg strong{color:var(--accent);font-weight:700}.review-stage{overflow:visible}.review .review-stage.tray-scatter{width:min(260px,50vh,85vw);margin-inline:auto}.review-die{--rot: 0deg;--die-bg: #f5f5f5;--die-pip: #1a1a1a;position:absolute;aspect-ratio:1;transform:rotate(var(--rot))}.review-die-body{width:100%;height:100%;padding:0;border:var(--bw-die) solid transparent;border-radius:var(--r-md);background:var(--die-bg);cursor:pointer;display:block}.review-die-body svg{width:100%;height:100%;display:block}.review-die-body svg circle{fill:var(--die-pip)}.review-die.manual .review-die-body{border-color:var(--hot);box-shadow:0 0 12px #ff3d7f80}.review-die.flagged .review-die-body{border-color:var(--bad);box-shadow:0 0 12px #ef44448c;animation:flagged-pulse 1.2s ease-in-out infinite}@keyframes flagged-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}.review-die-rm{position:absolute;top:-8px;right:-8px;width:22px;height:22px;border-radius:var(--r-circle);border:2px solid var(--bg);background:var(--bad);color:var(--on-dark);font-size:16px;font-weight:700;line-height:1;padding:0;cursor:pointer;z-index:1}.review-fallback{display:flex;gap:var(--s-2);flex-wrap:wrap;padding:var(--s-2)}.review-die-flat{position:relative;width:56px;height:56px}.review-die-flat [data-cycle]{width:100%;height:100%;padding:0;border:0;border-radius:var(--r-md);background:#f5f5f5}.review-die-flat [data-rm]{position:absolute;top:-6px;right:-6px;width:20px;height:20px;border-radius:var(--r-circle);background:var(--bad);color:var(--on-dark);border:2px solid var(--bg);font-size:14px;padding:0}.review-actions{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto auto;gap:var(--s-2);flex:0 0 auto}.review-actions .review-confirm{grid-column:1 / -1;min-height:max(56px,3.5rem);border:none;border-radius:var(--r-lg);background:var(--panel);color:var(--muted);font-size:var(--t-lg);font-weight:700;font-variant-numeric:tabular-nums;cursor:pointer;transition:background var(--dur-base) ease,color var(--dur-base) ease}.review-actions .review-confirm.ready{background:var(--commit);color:var(--on-brand)}.review-actions .review-confirm:disabled{cursor:not-allowed}.review-actions .review-add,.review-actions .review-retake{min-height:max(48px,3rem);border-radius:var(--r-md);border:1px solid var(--line);background:var(--panel);color:var(--text);font-size:var(--t-base);font-weight:600;cursor:pointer}.review-actions .review-add.pulsing{background:var(--hot);color:var(--on-brand);border-color:var(--hot);animation:add-pulse 1.4s ease-in-out infinite}@keyframes add-pulse{0%,to{box-shadow:0 0 #ff3d7f80}50%{box-shadow:0 0 0 8px #ff3d7f00}}.review .hint{padding:8px 16px;text-align:center;font-size:14px}.review .hint.warn{color:var(--bad)}.die-row{display:flex;align-items:center;gap:12px;background:var(--panel);border:1px solid var(--line);border-radius:var(--r-md);padding:8px}.die-row .die-mini{width:56px;height:56px;background:transparent;border:none;padding:0}.die-row .die-mini svg{width:100%;height:100%}.die-row .die-mini svg rect{fill:#f5f5f5}.die-row .die-mini svg circle{fill:#1a1a1a}.die-row .row-num{font-size:12px;color:var(--muted);width:24px;text-align:right}.die-row .value{flex:1;font-size:24px;font-weight:700}.die-row [data-action=remove]{background:transparent;border:none;color:var(--muted);font-size:24px;width:36px;height:36px}.diag{padding:8px 16px}.diag summary{font-size:13px;color:var(--accent);cursor:pointer}.overlay-wrap{position:relative;margin-top:8px;border-radius:var(--r-sm);overflow:hidden;background:#000}.overlay-wrap img{width:100%;display:block}.overlay-wrap svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.overlay-wrap svg .det{fill:none;stroke:#ff8a3d;stroke-width:4;vector-effect:non-scaling-stroke}.overlay-wrap svg .det-label{fill:var(--on-dark);font:700 32px system-ui;paint-order:stroke;stroke:#000;stroke-width:6;stroke-linejoin:round}.review .actions{display:flex;gap:8px;padding:16px}.review .actions button{flex:1;min-height:48px;background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:var(--r-md);font-size:16px}.review .actions .primary{background:var(--accent);border-color:var(--accent);color:var(--on-brand);font-weight:700}.review .actions button:disabled{opacity:.4}.status{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;color:var(--text);font-size:16px}.status.error .msg{color:var(--bad);padding:0 24px;text-align:center}.status button{background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:var(--r-md);padding:12px 24px}.status button.link{background:transparent;border:none;color:var(--muted);text-decoration:underline;padding:8px 12px;font-size:13px}.admin-sheet{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg);display:flex;flex-direction:column;z-index:10;padding:env(safe-area-inset-top) 12px env(safe-area-inset-bottom)}.admin-sheet header{display:flex;justify-content:space-between;align-items:center;padding:8px 0}.admin-sheet header h2{margin:0}.admin-sheet header button{background:transparent;border:none;color:var(--text);font-size:28px}.admin-body{overflow-y:auto;padding-bottom:60px;display:flex;flex-direction:column;gap:8px}.admin-body h3{margin:16px 0 4px;font-size:14px;color:var(--muted);text-transform:uppercase}.admin-body .field{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 0}.admin-body .field span{flex:1;font-size:14px}.admin-body .field input{flex:0 0 120px;background:var(--panel);border:1px solid var(--line);color:var(--text);padding:6px 8px;border-radius:var(--r-sm);font-size:14px;text-align:right}.admin-body .field input[type=text]{flex-basis:200px;text-align:left}.admin-body .field.toggle{padding:12px 0}.admin-body .field input[type=checkbox]{width:24px;height:24px;flex:0 0 24px;accent-color:var(--accent)}.admin-body .primary{margin-top:16px;padding:12px;background:var(--accent);border:none;border-radius:var(--r-md);font-size:16px;font-weight:700;color:var(--on-brand)}.model-section{display:flex;flex-direction:column;gap:8px;padding:12px;background:var(--panel);border:1px solid var(--line);border-radius:var(--r-md)}.model-status{font-size:14px;display:flex;align-items:center;gap:8px}.model-status .dot{width:8px;height:8px;border-radius:var(--r-circle);background:var(--muted)}.model-status .dot.on{background:var(--commit)}.hint{font-size:12px;color:var(--muted);margin:0}.instructions{font-size:13px;padding-left:20px;color:var(--text)}.instructions a{color:var(--accent)}details summary{font-size:13px;color:var(--accent);cursor:pointer;padding:4px 0}.model-actions{display:flex;gap:8px;align-items:center}.model-actions .upload{flex:1;background:var(--accent);color:var(--on-brand);font-weight:600;font-size:14px;padding:10px 12px;border-radius:var(--r-md);text-align:center;cursor:pointer}.model-actions .upload input{display:none}.model-actions [data-model-remove]{background:transparent;border:1px solid var(--line);color:var(--text);padding:10px 14px;border-radius:var(--r-md);font-size:14px}.model-actions [data-model-remove]:disabled{opacity:.4}.bests-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.bests-list li{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-md);padding:10px 12px}.bests-name{font-weight:600}.bests-meta{font-size:12px;color:var(--muted);margin-top:2px}.bests-clear{margin-top:8px;background:transparent;border:1px solid var(--line);color:var(--muted);padding:8px 12px;border-radius:var(--r-sm);font-size:13px;cursor:pointer}
