/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after{--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial}::backdrop{--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-amber-50:lab(98.6252% -.635922 8.42309);--color-amber-400:lab(80.1641% 16.6016 99.2089);--color-amber-900:lab(31.2288% 30.2627 40.0378);--color-emerald-900:lab(28.8637% -26.9249 5.45986);--color-slate-300:lab(84.7652% -1.94535 -7.93337);--color-slate-400:lab(65.5349% -2.25151 -14.5072);--color-slate-500:lab(48.0876% -2.03595 -16.5814);--color-slate-600:lab(35.5623% -1.74978 -15.4316);--color-slate-700:lab(26.9569% -1.47016 -15.6993);--color-slate-900:lab(7.78673% 1.82345 -15.0537);--color-slate-950:lab(1.76974% 1.32743 -9.28855);--color-white:#fff;--spacing:.25rem;--container-lg:32rem;--container-2xl:42rem;--container-3xl:48rem;--container-5xl:64rem;--container-6xl:72rem;--container-7xl:80rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--text-5xl:3rem;--text-5xl--line-height:1;--text-7xl:4.5rem;--text-7xl--line-height:1;--font-weight-bold:700;--font-weight-black:900;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.top-0{top:0}.z-30{z-index:30}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.mx-auto{margin-inline:auto}.my-5{margin-block:calc(var(--spacing) * 5)}.my-8{margin-block:calc(var(--spacing) * 8)}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-7{margin-top:calc(var(--spacing) * 7)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-7{margin-bottom:calc(var(--spacing) * 7)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.ml-auto{margin-left:auto}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.table{display:table}.h-16{height:calc(var(--spacing) * 16)}.min-h-24{min-height:calc(var(--spacing) * 24)}.min-h-28{min-height:calc(var(--spacing) * 28)}.min-h-\[520px\]{min-height:520px}.min-h-screen{min-height:100vh}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-5xl{max-width:var(--container-5xl)}.max-w-6xl{max-width:var(--container-6xl)}.max-w-7xl{max-width:var(--container-7xl)}.max-w-lg{max-width:var(--container-lg)}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-1{gap:var(--spacing)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-10{gap:calc(var(--spacing) * 10)}.gap-px{gap:1px}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}.rounded{border-radius:.25rem}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-4{border-style:var(--tw-border-style);border-width:4px}.border-y-2{border-block-style:var(--tw-border-style);border-block-width:2px}.border-t-2{border-top-style:var(--tw-border-style);border-top-width:2px}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-b-4{border-bottom-style:var(--tw-border-style);border-bottom-width:4px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-\[var\(--ink\)\]{border-color:var(--ink)}.border-amber-400{border-color:var(--color-amber-400)}.border-slate-300{border-color:var(--color-slate-300)}.border-slate-700{border-color:var(--color-slate-700)}.border-slate-950{border-color:var(--color-slate-950)}.bg-\[var\(--ink\)\],.bg-\[var\(--ink\)\]\/95{background-color:var(--ink)}@supports (color:color-mix(in lab, red, red)){.bg-\[var\(--ink\)\]\/95{background-color:color-mix(in oklab, var(--ink) 95%, transparent)}}.bg-\[var\(--paper\)\]{background-color:var(--paper)}.bg-amber-50{background-color:var(--color-amber-50)}.bg-emerald-900{background-color:var(--color-emerald-900)}.bg-slate-700{background-color:var(--color-slate-700)}.bg-slate-900\/60{background-color:#0f172b99}@supports (color:color-mix(in lab, red, red)){.bg-slate-900\/60{background-color:color-mix(in oklab, var(--color-slate-900) 60%, transparent)}}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-5{padding-block:calc(var(--spacing) * 5)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-10{padding-block:calc(var(--spacing) * 10)}.py-16{padding-block:calc(var(--spacing) * 16)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pt-5{padding-top:calc(var(--spacing) * 5)}.pt-12{padding-top:calc(var(--spacing) * 12)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pb-14{padding-bottom:calc(var(--spacing) * 14)}.text-center{text-align:center}.text-left{text-align:left}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[9px\]{font-size:9px}.leading-6{--tw-leading:calc(var(--spacing) * 6);line-height:calc(var(--spacing) * 6)}.leading-8{--tw-leading:calc(var(--spacing) * 8);line-height:calc(var(--spacing) * 8)}.leading-\[1\.06\]{--tw-leading:1.06;line-height:1.06}.font-black{--tw-font-weight:var(--font-weight-black);font-weight:var(--font-weight-black)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.tracking-\[\.2em\]{--tw-tracking:.2em;letter-spacing:.2em}.tracking-\[\.14em\]{--tw-tracking:.14em;letter-spacing:.14em}.tracking-\[\.22em\]{--tw-tracking:.22em;letter-spacing:.22em}.text-\[var\(--gold\)\]{color:var(--gold)}.text-\[var\(--ink\)\]{color:var(--ink)}.text-\[var\(--mint\)\]{color:var(--mint)}.text-\[var\(--paper\)\]{color:var(--paper)}.text-amber-900{color:var(--color-amber-900)}.text-slate-300{color:var(--color-slate-300)}.text-slate-400{color:var(--color-slate-400)}.text-slate-500{color:var(--color-slate-500)}.text-slate-600{color:var(--color-slate-600)}.text-white{color:var(--color-white)}.shadow-\[9px_9px_0_var\(--gold\)\]{--tw-shadow:9px 9px 0 var(--tw-shadow-color,var(--gold));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-4{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-\[var\(--gold\)\]{--tw-ring-color:var(--gold)}.backdrop-blur{--tw-backdrop-blur:blur(8px);-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}@media (min-width:40rem){.sm\:block{display:block}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:p-7{padding:calc(var(--spacing) * 7)}.sm\:px-6{padding-inline:calc(var(--spacing) * 6)}.sm\:px-8{padding-inline:calc(var(--spacing) * 8)}.sm\:text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.sm\:text-7xl{font-size:var(--text-7xl);line-height:var(--tw-leading,var(--text-7xl--line-height))}}@media (min-width:48rem){.md\:flex{display:flex}.md\:hidden{display:none}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width:64rem){.lg\:grid-cols-\[1\.08fr_\.92fr\]{grid-template-columns:1.08fr .92fr}.lg\:grid-cols-\[300px_1fr\]{grid-template-columns:300px 1fr}.lg\:grid-cols-\[340px_1fr\]{grid-template-columns:340px 1fr}.lg\:items-center{align-items:center}.lg\:pt-16{padding-top:calc(var(--spacing) * 16)}}}:root{--ink:#101827;--paper:#fffaf0;--gold:#ffc93c;--coral:#ff665a;--mint:#57e3bd}*{box-sizing:border-box}html{background:var(--ink)}body{margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Cascadia Mono,Noto Sans SC,monospace}button{font:inherit;cursor:pointer}html:not([data-hydrated=true]) button{pointer-events:none}.pixel-grid{background-image:linear-gradient(#ffffff08 1px,#0000 1px),linear-gradient(90deg,#ffffff08 1px,#0000 1px);background-size:28px 28px}.logo-mark{border:3px solid var(--paper);background:var(--coral);color:#fff;width:42px;height:42px;box-shadow:4px 4px 0 var(--gold);place-items:center;font-size:22px;font-weight:900;display:grid}.pixel-button{border:3px solid;padding:12px 16px;font-size:13px;font-weight:900;transition:transform .12s,box-shadow .12s}.pixel-button:hover{transform:translate(-2px,-2px)}.pixel-button.primary{border-color:var(--gold);background:var(--gold);color:var(--ink);box-shadow:5px 5px 0 var(--coral)}.pixel-button.secondary{border-color:var(--paper);color:var(--paper);background:0 0}.pixel-button.ghost{color:#cbd5e1;background:0 0;border-width:2px;border-color:#64748b;padding:9px 12px}.boss-badge{color:#b72f27;background:#fff0ee;border:2px solid #b72f27;padding:6px 8px;font-size:11px;font-weight:900;transform:rotate(3deg)}.track-row{width:100%;color:var(--ink);background:#fff;border:2px solid #cbd5e1;align-items:center;gap:12px;padding:12px;transition:all .12s;display:flex}.cast-card{border:3px solid var(--ink);background:#111827;margin-top:16px;position:relative;overflow:hidden}.cast-avatars{background:#0b1220;grid-template-columns:repeat(3,1fr);gap:4px;height:154px;padding:6px;display:grid}.cast-avatars img{object-fit:cover;object-position:center;border:2px solid #334155;width:100%;height:100%;display:block}.cast-card p{color:#fff;background:#101827e0;margin:0;padding:7px 9px;position:absolute;bottom:0;left:0;right:0}.cast-card p b,.cast-card p span{display:block}.cast-card p b{font-size:11px}.cast-card p span{color:#cbd5e1;font-size:8px}.track-row:hover,.track-row.active{border-color:var(--ink);box-shadow:4px 4px 0 var(--ink);background:#fff5cd;transform:translate(-2px,-2px)}.track-row small{color:#475569}.time-chip{border:2px solid var(--ink);background:var(--mint);min-width:64px;padding:7px 5px;font-size:10px;font-weight:900}.logo-mark.small{width:34px;height:34px;box-shadow:3px 3px 0 var(--gold);font-size:16px}.nav-link{color:#94a3b8;background:0 0;border:2px solid #0000;padding:10px 13px;font-size:12px;font-weight:800}.nav-link:hover,.nav-link.active{color:var(--paper);background:#1e293b;border-color:#475569}.status-chip{border:2px solid var(--mint);color:var(--mint);box-shadow:3px 3px 0 var(--mint);background:#57e3bd14;align-items:center;gap:8px;padding:9px 12px;font-size:11px;font-weight:900;display:inline-flex}.status-chip i{background:var(--coral);width:8px;height:8px}.mobile-nav{z-index:35;background:#101827;border-top:2px solid #475569;grid-template-columns:repeat(5,1fr);position:fixed;bottom:0;left:0;right:0}.mobile-nav button,.mobile-nav a{color:#94a3b8;text-align:center;place-items:center;min-height:46px;padding:10px 3px;font-size:10px;font-weight:900;text-decoration:none;display:grid}.mobile-nav button.active{color:var(--mint);background:#1e293b}.mobile-nav a{color:var(--gold)}.eyebrow{letter-spacing:.22em;color:var(--mint);font-size:10px;font-weight:900}.eyebrow.dark{color:#64748b}.paper-panel{border:4px solid var(--ink);background:var(--paper);color:var(--ink);box-shadow:7px 7px 0 var(--gold);padding:24px}.lesson-row{color:#cbd5e1;text-align:left;background:#111c2f;border:2px solid #475569;align-items:center;gap:14px;width:100%;padding:14px;display:flex}.lesson-row>b{color:#64748b;font-size:20px}.lesson-row span{flex:1;justify-content:space-between;display:flex}.lesson-row small{color:#64748b;font-size:10px}.lesson-row.active{border-color:var(--mint);color:#fff;box-shadow:4px 4px 0 var(--mint);background:#17352f}.lesson-row.active>b{color:var(--mint)}.lesson-row.active small{color:#d1fae5}.lesson-visual{background:#fff;border:3px dashed #cbd5e1;place-items:center;min-height:230px;margin-top:24px;padding:22px;display:grid}.mini-card{border:3px solid var(--ink);background:#fffaf0;flex-direction:column;justify-content:space-between;min-height:130px;padding:12px;display:flex;box-shadow:4px 4px #cbd5e1}.mini-card b{color:var(--coral);font-size:24px}.mini-card span{font-size:11px;font-weight:900}.flow-strip{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;display:flex}.flow-strip b{border:2px solid var(--ink);background:var(--mint);padding:12px}.flow-strip i{font-style:normal}.tip-card{border:2px solid var(--ink);flex-direction:column;min-height:130px;padding:14px;display:flex}.tip-card>b{color:var(--coral);font-size:24px}.tip-card strong{margin-top:auto}.tip-card span{color:#64748b;font-size:11px}.lesson-row:disabled{cursor:not-allowed;opacity:.45}.lesson-row.mastered{border-color:var(--mint)}.lesson-score{border:2px solid var(--ink);background:#fff5cd;flex:none;padding:7px 9px;font-size:10px;font-weight:900}.lesson-quiz{border:3px solid var(--ink);background:#fff;margin-top:22px;padding:20px;scroll-margin-top:82px}.lesson-quiz:before{content:"";aspect-ratio:8/3;border:2px solid var(--ink);width:100%;box-shadow:4px 4px 0 var(--gold);background:#07111f url(/course-storyboard.jpg) 50%/cover no-repeat;margin-bottom:18px;display:block}.lesson-scene{border-left:6px solid var(--gold);background:#fff8df;padding:14px;font-size:14px;font-weight:900;line-height:1.8}.lesson-quiz h3{margin:18px 0 12px;font-size:19px;font-weight:900}.lesson-options{gap:10px;display:grid}.lesson-option{border:2px solid var(--ink);min-height:48px;color:var(--ink);text-align:left;background:#f8fafc;padding:11px 14px;font-size:13px;font-weight:900;box-shadow:3px 3px #cbd5e1}.lesson-option:hover:not(:disabled){background:var(--mint);box-shadow:3px 3px 0 var(--ink)}.lesson-option:focus-visible{background:var(--mint);box-shadow:3px 3px 0 var(--ink)}.lesson-option:disabled{cursor:not-allowed;opacity:.55}.lesson-feedback{border:2px solid;margin-top:16px;padding:12px 14px}.lesson-feedback b{font-size:12px}.lesson-feedback p{margin-top:4px;font-size:12px;line-height:1.7}.lesson-feedback.correct{color:#065f46;background:#ecfdf5;border-color:#047857}.lesson-feedback.wrong{color:#9f1239;background:#fff1f2;border-color:#dc2626}.lesson-advance{margin-top:16px}.lesson-complete{color:#065f46;background:#ecfdf5;border:2px solid #047857;margin-top:16px;padding:12px;font-size:12px;font-weight:900}.mastery-list{color:#065f46;background:#ecfdf5;border:3px dashed #047857;gap:7px;margin-top:18px;padding:14px;font-size:11px;display:grid}.mastery-list b{font-size:13px}.mastery-list span{display:block}.pixel-button.dark{border-color:var(--ink);background:var(--ink);color:#fff}.pixel-button.coral{border-color:var(--ink);background:var(--coral);color:#fff;box-shadow:4px 4px 0 var(--ink)}.pixel-button.hint{border-color:var(--gold);color:var(--ink);box-shadow:3px 3px 0 var(--gold);background:#fff5cd}.pixel-button:disabled{cursor:not-allowed;opacity:.35;transform:none!important}.mode-chip{border:2px solid var(--mint);color:var(--mint);align-items:center;padding:7px 9px;font-size:10px;font-weight:900;display:inline-flex}.mode-chip.dark{border-color:var(--ink);color:var(--ink)}.speed-chip{background:#57e3bd14}.speed-chip:hover{background:var(--mint);color:var(--ink)}.smallbtn{padding:7px 9px}.mode-chip.urgent{border-color:var(--coral);color:var(--coral)}.login-notice{z-index:50;border:3px solid var(--ink);background:var(--mint);max-width:calc(100vw - 24px);color:var(--ink);box-shadow:5px 5px 0 var(--gold);gap:16px;padding:10px 14px;font-size:12px;font-weight:900;display:flex;position:fixed;top:76px;left:50%;transform:translate(-50%)}.login-notice button{font-size:18px;line-height:1}.game-shell{background:radial-gradient(circle at 50% 42%,#23604f 0 21%,#173e37 22% 45%,#102a27 46% 65%,#0e2222 66%);border:4px solid #080d16;min-height:690px;position:relative;overflow:hidden;box-shadow:8px 8px #334155}.game-shell:before{content:"";pointer-events:none;border:2px dashed #ffffff24;position:absolute;inset:20px}.live-history{z-index:7;color:#e2e8f0;background:#081519eb;border:2px solid #5eead4;width:235px;position:absolute;top:14px;left:14px;box-shadow:3px 3px #0000004d}.live-history summary{cursor:pointer;color:var(--mint);padding:8px 10px;font-size:10px;font-weight:900;list-style-position:inside}.live-history ol{max-height:210px;margin:0;padding:0 9px 8px;list-style:none;overflow-y:auto}.live-history li{border-top:1px dashed #94a3b847;grid-template-columns:55px 1fr;gap:6px;padding:6px 0;font-size:9px;display:grid}.live-history li b{text-overflow:ellipsis;white-space:nowrap;color:#fff;overflow:hidden}.live-history li span{text-overflow:ellipsis;white-space:nowrap;color:#94a3b8;overflow:hidden}.live-history>p{color:#94a3b8;margin:0;padding:2px 10px 10px;font-size:9px;line-height:1.5}.opponent{z-index:2;color:#fff;grid-template-columns:42px auto;align-items:center;gap:1px 8px;display:grid;position:absolute}.opponent .avatar{background:#1e293b;border:2px solid #94a3b8;grid-row:1/3;place-items:center;width:42px;height:42px;font-weight:900;display:grid}.opponent b{font-size:12px}.opponent span{color:#94a3b8;font-size:10px}.opponent.active .avatar{border-color:var(--gold);box-shadow:3px 3px 0 var(--gold)}.opponent.top{top:28px;left:50%;transform:translate(-50%)}.opponent.left{top:36%;left:28px}.opponent.right{top:36%;right:28px}.table-center{place-items:center;display:grid;position:absolute;top:35%;left:50%;transform:translate(-50%,-50%)}.last-play{color:#fff;border:2px dashed #ffffff40;flex-direction:column;justify-content:center;align-items:center;min-width:230px;min-height:120px;padding:12px;display:flex}.last-play>small{color:#a7f3d0;margin-bottom:8px}.last-play>b{font-size:22px}.played-cards{justify-content:center;display:flex}.turn-badge{background:var(--gold);color:var(--ink);box-shadow:3px 3px 0 var(--coral);margin-top:10px;padding:6px 10px;font-size:10px;font-weight:900}.self-seat{position:absolute;bottom:14px;left:12px;right:12px}.coach-bubble{border:2px solid var(--mint);color:#fff;background:#10221f;max-width:590px;margin:0 auto 12px;padding:9px 12px}.coach-bubble span{color:var(--mint);letter-spacing:.16em;font-size:9px;font-weight:900}.coach-bubble p{margin:3px 0 0;font-size:11px}.hand{justify-content:center;gap:12px;padding:24px 20px 3px;display:flex;overflow:auto hidden}.rank-group{flex:none;display:flex;position:relative}.rank-group .playing-card{margin-left:-22px}.rank-group .playing-card:first-child{margin-left:0}.rank-count{z-index:5;border:1px solid var(--ink);background:var(--gold);color:var(--ink);box-shadow:1px 1px 0 var(--ink);pointer-events:none;padding:2px 4px;font-size:8px;font-weight:900;position:absolute;top:-12px;right:-7px}.playing-card{color:#111827;background:#fffaf0;border:2px solid #101827;border-radius:3px;flex-direction:column;width:52px;min-width:52px;height:76px;padding:5px;transition:all .12s;display:flex;position:relative;box-shadow:2px 3px #00000059}.playing-card:hover,.playing-card.selected{z-index:3;transform:translateY(-13px)}.playing-card.red{color:#dc2626}.playing-card span{text-align:left;white-space:nowrap;font-size:11px;font-weight:900}.playing-card i{margin:auto;font-size:22px;font-style:normal}.playing-card.compact{width:40px;min-width:40px;height:58px;margin-left:-8px}.playing-card.compact:hover{transform:none}.action-bar{justify-content:center;align-items:center;gap:10px;margin-top:8px;display:flex}.group-hint{color:#94a3b8;border:1px dashed #64748b;padding:5px 7px;font-size:9px;font-weight:900}.result-modal{z-index:40;background:#030712cc;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.result-modal>.paper-panel{overscroll-behavior:contain;width:min(100%,32rem);max-height:calc(100dvh - 32px);overflow-y:auto}.result-actions{flex-wrap:wrap;gap:12px;display:flex}.review-privacy{color:#64748b;margin:10px 0;font-size:10px;line-height:1.6}.score-split{background:var(--ink);grid-template-columns:1fr 1fr;gap:2px;margin:18px 0;display:grid}.score-split div{text-align:center;background:#fff;padding:16px}.score-split b{color:var(--coral);font-size:34px;display:block}.score-split span{font-size:10px;font-weight:900}.memory-grid{grid-template-columns:repeat(3,1fr);gap:10px;margin:24px 0;display:grid}.memory-tile{border:3px solid var(--ink);min-height:105px;color:var(--ink);background:#fff;place-items:center;padding:8px;font-size:12px;font-weight:900;display:grid;box-shadow:3px 3px #94a3b8}.memory-tile:not(.static):not(:disabled):hover,.memory-tile.picked{background:var(--mint);box-shadow:3px 3px 0 var(--ink)}.memory-tile.static{min-height:70px}.replay-row{border:3px solid var(--ink);background:var(--paper);width:100%;color:var(--ink);box-shadow:4px 4px 0 var(--gold);text-align:left;align-items:center;gap:14px;padding:14px;display:flex}.replay-row span{flex-direction:column;gap:3px;display:flex}.replay-row small{color:#64748b;font-size:10px}.empty-state{text-align:center;color:#94a3b8;border:3px dashed #475569;padding:50px}.empty-state b{color:#fff}.empty-state p{margin-top:8px;font-size:12px}.drawer-backdrop{z-index:50;background:#030712bf;position:fixed;inset:0}.rule-drawer{background:var(--paper);width:min(620px,100%);height:100%;color:var(--ink);box-shadow:-8px 0 0 var(--gold);padding:0 24px 30px;position:absolute;top:0;right:0;overflow-y:auto}.close-btn{border:3px solid var(--ink);background:var(--coral);color:#fff;place-items:center;width:40px;height:40px;font-size:25px;font-weight:900;display:grid}.rule-section{border-bottom:2px dashed #cbd5e1;padding:18px 0}.rule-section h3{font-weight:900}.rule-section p{color:#475569;margin-top:7px;font-size:13px;line-height:1.9}.memory-tabs{gap:8px;margin-top:24px;display:flex}.memory-tabs button{color:#cbd5e1;background:#111c2f;border:2px solid #64748b;min-height:44px;padding:10px 14px;font-size:12px;font-weight:900}.memory-tabs button[aria-selected=true]{border-color:var(--mint);background:var(--mint);color:var(--ink);box-shadow:3px 3px 0 var(--gold)}.memory-panel{margin-top:12px}.memory-panel>div:first-child p{color:#64748b;margin-top:5px;font-size:11px}.count-events{gap:10px;margin:22px 0;display:grid}.count-event{border:2px solid var(--ink);color:#fff;background:#0f513f;grid-template-columns:90px 1fr;align-items:center;padding:10px;display:grid}.count-event>b{font-size:11px}.count-event .played-cards{justify-content:flex-start}.count-form{border-top:2px dashed #94a3b8;padding-top:18px}.count-form>p{font-size:12px;font-weight:900}.count-form>div{flex-wrap:wrap;gap:10px;margin:12px 0 18px;display:flex}.count-form>div button{border:3px solid var(--ink);min-width:72px;min-height:48px;color:var(--ink);background:#fff;font-size:16px;font-weight:900;box-shadow:3px 3px #cbd5e1}.count-form>div button.selected{background:var(--mint);box-shadow:3px 3px 0 var(--ink)}.memory-accuracy{color:#64748b;margin-top:18px;font-size:10px;font-weight:900}.puzzle-panel h2{margin-top:5px;font-size:28px;font-weight:900}.puzzle-counts{background:var(--ink);border:2px solid var(--ink);grid-template-columns:repeat(4,1fr);gap:2px;margin:20px 0;display:grid}.puzzle-counts span{text-align:center;background:#fff;flex-direction:column;justify-content:center;min-height:58px;padding:8px;font-size:10px;display:flex}.puzzle-counts b{font-size:12px}.puzzle-table{grid-template-columns:minmax(130px,.7fr) minmax(0,1.3fr);gap:10px;margin:16px 0;display:grid}.puzzle-table>div{border:3px solid var(--ink);color:#fff;background:#145345;flex-direction:column;justify-content:center;align-items:center;min-height:118px;padding:12px;display:flex}.puzzle-table small{color:#a7f3d0;margin-bottom:5px;font-size:9px;font-weight:900}.puzzle-hand{max-width:100%;padding:12px 6px 3px;overflow-x:auto}.puzzle-prompt{margin:18px 0 12px;font-size:18px;font-weight:900}.puzzle-panel .lesson-option{justify-content:space-between;align-items:center;gap:10px;display:flex}.puzzle-panel .lesson-option small{color:#64748b;border:1px solid #64748b;padding:3px 5px;font-size:8px}.puzzle-panel .lesson-option.puzzle-tried{background:#fff1f2;border-color:#dc2626}.puzzle-panel .lesson-option.puzzle-correct{background:#ecfdf5;border-color:#047857}.puzzle-next{border-top:2px dashed #94a3b8;margin-top:18px;padding-top:16px}.puzzle-next p{margin-bottom:12px;font-size:12px;font-weight:900;line-height:1.7}.site-footer{color:#94a3b8;border-top:2px solid #334155;justify-content:space-between;align-items:center;gap:16px;padding:24px max(20px,50vw - 608px);font-size:11px;display:flex}.site-footer b{color:var(--mint)}.site-footer div{flex-wrap:wrap;justify-content:flex-end;gap:14px;display:flex}.site-footer a,.site-footer button{color:var(--gold);background:0 0;border:0;font-weight:900;text-decoration:none}.support-backdrop{z-index:60;background:#030712d1;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.support-card{border:4px solid var(--ink);background:var(--paper);width:min(400px,100%);color:var(--ink);box-shadow:8px 8px 0 var(--gold);text-align:center;padding:28px;position:relative}.support-card>.close-btn{position:absolute;top:12px;right:12px}.support-card h2{margin-top:8px;font-size:25px;font-weight:900}.support-card>p:last-child{color:#64748b;margin-top:14px;font-size:11px;line-height:1.7}.support-qr{border:4px solid var(--ink);background:#fff;margin-top:18px;padding:12px;display:inline-grid}.share-wrap{align-items:center;gap:8px;display:inline-flex;position:relative}.share-status{max-width:150px;color:var(--mint);font-size:9px;font-weight:900}.footer-share .share-status{border:1px solid var(--mint);background:var(--ink);width:max-content;padding:4px 6px;position:absolute;bottom:calc(100% + 7px);right:0}.site-footer .share-wrap{display:inline-flex}.footer-share>button{align-items:center;min-height:44px;padding:8px;display:inline-flex}.opponent .avatar{background-position:50%;background-repeat:no-repeat;background-size:cover}.opponent .avatar-boss{background-image:url(/avatar-wang-v3.png)}.opponent .avatar-partner{background-image:url(/avatar-gu-v3.png)}.opponent .avatar-opponent{background-image:url(/avatar-lin-v3.png)}.swipe-hint{text-align:center;color:#94a3b8;font-size:9px;font-weight:900;display:none}.hand{justify-content:safe center}.opponent{display:block}.opponent summary{cursor:pointer;grid-template-columns:42px auto;align-items:center;gap:1px 8px;list-style:none;display:grid}.opponent summary::-webkit-details-marker{display:none}.opponent[open]{z-index:9}.persona-detail{border:2px solid var(--mint);color:#dbeafe;background:#071519;width:210px;margin:8px 0 0;padding:8px;font-size:9px;line-height:1.55;box-shadow:3px 3px #00000059}.persona-detail b{color:var(--mint);font-size:10px;display:block}.live-history li{grid-template-columns:62px 1fr}.live-history summary{white-space:nowrap}@media (max-width:640px){.pixel-button.ghost{padding:8px;font-size:10px}.training-card{box-shadow:7px 7px 0 var(--gold)!important}}@media (max-width:767px){main{padding-bottom:calc(72px + env(safe-area-inset-bottom))}.mobile-nav{padding-bottom:env(safe-area-inset-bottom);display:grid}.game-shell{min-height:720px}.live-history{width:172px;top:76px;left:8px}.live-history:not([open]){width:auto}.live-history ol{max-height:140px}.live-history li{grid-template-columns:43px 1fr}.opponent.left{left:12px}.opponent.right{right:12px}.opponent.top{top:18px}.opponent b{font-size:10px}.table-center{top:36%}.self-seat{bottom:56px}.swipe-hint{display:block}.hand{justify-content:flex-start;gap:10px;padding-left:20px}.rank-group .playing-card:first-child{margin-left:0}.playing-card{width:47px;min-width:47px;height:70px}.coach-bubble{margin-bottom:8px}.group-hint{display:none}.paper-panel{padding:16px}.lesson-quiz{padding:14px}.lesson-option{min-height:48px}.memory-tabs{grid-template-columns:1fr 1fr;display:grid}.count-event{grid-template-columns:1fr;gap:8px}.count-event .played-cards{padding-bottom:4px;overflow-x:auto}.memory-tile{min-height:82px}.flow-strip{gap:6px}.flow-strip b{padding:8px;font-size:10px}.rank-group .playing-card{margin-left:-3px}.puzzle-counts{grid-template-columns:1fr 1fr}.puzzle-table{grid-template-columns:1fr}.puzzle-table>div{min-height:100px}.puzzle-panel .lesson-option{flex-direction:column;align-items:flex-start}.puzzle-panel h2{font-size:23px}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.playing-card.wild-card{border-color:#f59e0b;box-shadow:0 0 0 2px #fde68a,2px 3px #00000059}.wild-badge{color:#7c2d12;background:#fbbf24;border:1px solid #7c2d12;padding:1px 2px;font-size:8px;font-weight:900;line-height:1;position:absolute;top:2px;right:2px}.replay-evidence{color:#64748b;margin-top:10px;font-size:10px}.replay-evidence summary{cursor:pointer;font-weight:900}.replay-evidence code{overflow-wrap:anywhere;margin-top:5px;display:block}.hand.grouped-hand{align-items:flex-end;padding-top:8px}.hand.grouped-hand .rank-group{flex-direction:column;justify-content:flex-end;min-width:52px;height:210px;display:flex}.hand.grouped-hand .rank-group .playing-card{margin-top:-58px;margin-left:0}.hand.grouped-hand .rank-group .playing-card:first-child{margin-top:0}.hand.grouped-hand .rank-group .playing-card:not(:last-of-type){clip-path:inset(0 0 58px)}.hand.grouped-hand .rank-group .playing-card:hover{transform:translate(8px)}.hand.grouped-hand .rank-group .playing-card.selected{z-index:0;transform:translate(28px)}.hand.grouped-hand .rank-count{top:auto;bottom:62px;right:-7px}.opponent .avatar{width:48px;height:48px}.memory-method-note,.memory-source-note{color:#64748b;margin-top:10px;font-size:10px;line-height:1.6}.opening-hand{margin-top:14px;padding:8px 4px 12px;display:flex;overflow-x:auto}.opening-hand .playing-card{flex:none;margin-left:-8px}.opening-hand .playing-card:first-child{margin-left:0}.memory-source-note a{text-decoration:underline}.memory-tile{align-content:center;gap:3px}.memory-tile b{font-size:11px}.memory-tile strong{font-size:26px}.memory-tile small{color:#64748b;font-size:8px}.memory-tile.correct{background:#bbf7d0}.memory-tile.wrong{background:#fecaca}.nine-grid-plays{gap:8px;margin:14px 0;display:grid}.nine-grid-plays>div{border:1px dashed #94a3b8;align-items:center;gap:10px;padding:6px;display:flex}.nine-grid-plays>div>span{min-width:48px;font-size:9px;font-weight:900}.nine-grid-plays .played-cards{justify-content:flex-start;overflow-x:auto}.online-hand{overscroll-behavior-x:contain;scrollbar-gutter:stable;max-width:100%}.online-actions{z-index:8;position:relative}@media (max-width:767px){.hand.grouped-hand .rank-group{min-width:47px;height:190px}.hand.grouped-hand .rank-group .playing-card{margin-top:-52px;margin-left:0}.hand.grouped-hand .rank-group .playing-card:not(:last-of-type){clip-path:inset(0 0 52px)}.hand.grouped-hand .rank-count{bottom:58px}.opponent .avatar{width:44px;height:44px}.memory-tile strong{font-size:22px}.nine-grid-plays>div{flex-direction:column;align-items:flex-start}.online-hand{scroll-snap-type:x proximity;margin-left:-16px;margin-right:-16px;padding-left:16px;padding-right:16px}.online-hand .rank-group{scroll-snap-align:start}.online-actions{bottom:calc(58px + env(safe-area-inset-bottom));border-top:2px solid var(--ink);background:#fffaf0f5;margin-left:-16px;margin-right:-16px;padding:10px 8px;position:sticky}.online-actions .pixel-button{min-height:46px}}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}
