/*! tailwindcss v4.3.0 | 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)))){*,::backdrop,:after,:before{--tw-border-style:solid;--tw-leading:initial;--tw-font-weight: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-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-content:"";--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0}}}@layer theme{:host,:root{--spacing:.25rem;--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);--font-weight-medium:500;--leading-snug:1.375;--radius-md:10px;--radius-4xl:2rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--default-mono-font-family:ui-monospace,"JetBrains Mono","SF Mono",Menlo,monospace;--color-card:var(--surface);--color-primary:var(--ink)}}@layer base{*,::backdrop,:after,:before{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}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{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{outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,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,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-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]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.\@container\/card-header{container:card-header/inline-size}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.top-0{top:calc(var(--spacing) * 0)}.right-2{right:calc(var(--spacing) * 2)}.bottom-0{bottom:calc(var(--spacing) * 0)}.isolate{isolation:isolate}.z-10{z-index:10}.z-50{z-index:50}.col-start-2{grid-column-start:2}.row-span-2{grid-row:span 2/span 2}.row-start-1{grid-row-start:1}.-mx-1{margin-inline:calc(var(--spacing) * -1)}.my-1{margin-block:calc(var(--spacing) * 1)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-7{width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-px{height:1px}.max-h-\(--available-height\){max-height:var(--available-height)}.w-\(--anchor-width\){width:var(--anchor-width)}.w-fit{width:fit-content}.w-full{width:100%}.min-w-0{min-width:calc(var(--spacing) * 0)}.min-w-36{min-width:calc(var(--spacing) * 36)}.flex-1{flex:1}.shrink-0{flex-shrink:0}.origin-\(--transform-origin\){transform-origin:var(--transform-origin)}.cursor-default{cursor:default}.scroll-my-1{scroll-margin-block:calc(var(--spacing) * 1)}.auto-rows-min{grid-auto-rows:min-content}.flex-col{flex-direction:column}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-\(--card-spacing\){gap:var(--card-spacing)}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.self-start{align-self:flex-start}.justify-self-end{justify-self:flex-end}.overflow-hidden{overflow:hidden}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.rounded-4xl{border-radius:var(--radius-4xl)}.rounded-\[min\(var\(--radius-md\)\,10px\)\]{border-radius:min(var(--radius-md),10px)}.rounded-\[min\(var\(--radius-md\)\,12px\)\]{border-radius:min(var(--radius-md),12px)}.rounded-full{border-radius:3.40282e+38px}.rounded-lg{border-radius:12px}.rounded-md{border-radius:10px}.rounded-xl{border-radius:16px}.rounded-t-xl{border-top-left-radius:16px;border-top-right-radius:16px}.rounded-b-xl{border-bottom-right-radius:16px;border-bottom-left-radius:16px}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-border,.border-input{border-color:var(--border)}.border-transparent{border-color:#0000}.bg-background{background-color:var(--bg)}.bg-border{background-color:var(--border)}.bg-card{background-color:var(--surface)}.bg-destructive\/10{background-color:var(--wrong)}@supports (color:color-mix(in lab,red,red)){.bg-destructive\/10{background-color:color-mix(in oklab,var(--wrong) 10%,transparent)}}.bg-muted\/50{background-color:var(--bg)}@supports (color:color-mix(in lab,red,red)){.bg-muted\/50{background-color:color-mix(in oklab,var(--bg) 50%,transparent)}}.bg-popover{background-color:var(--surface)}.bg-primary{background-color:var(--ink)}.bg-secondary{background-color:var(--gold-bg)}.bg-transparent{background-color:#0000}.bg-clip-padding{background-clip:padding-box}.p-\(--card-spacing\){padding:var(--card-spacing)}.p-1{padding:calc(var(--spacing) * 1)}.px-\(--card-spacing\){padding-inline:var(--card-spacing)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.py-\(--card-spacing\){padding-block:var(--card-spacing)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-2{padding-block:calc(var(--spacing) * 2)}.pr-2{padding-right:calc(var(--spacing) * 2)}.pr-8{padding-right:calc(var(--spacing) * 8)}.pl-1\.5{padding-left:calc(var(--spacing) * 1.5)}.pl-2\.5{padding-left:calc(var(--spacing) * 2.5)}.text-left{text-align:left}.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-\[0\.8rem\]{font-size:.8rem}.leading-none{--tw-leading:1;line-height:1}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.whitespace-nowrap{white-space:nowrap}.text-card-foreground{color:var(--ink)}.text-destructive{color:var(--wrong)}.text-foreground{color:var(--ink)}.text-muted-foreground{color:var(--ink3)}.text-popover-foreground,.text-primary{color:var(--ink)}.text-primary-foreground{color:var(--surface)}.text-secondary-foreground{color:var(--ink)}.uppercase{text-transform:uppercase}.italic{font-style:italic}.underline-offset-4{text-underline-offset:4px}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px var(--tw-shadow-color,#0000001a)}.ring-0,.shadow-md{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-0{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor)}.ring-1{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + 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-foreground\/10{--tw-ring-color:var(--ink)}@supports (color:color-mix(in lab,red,red)){.ring-foreground\/10{--tw-ring-color:color-mix(in oklab,var(--ink) 10%,transparent)}}.outline-hidden{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.outline-hidden{outline-offset:2px;outline:2px solid #0000}}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-100{--tw-duration:.1s;transition-duration:.1s}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.\[--card-spacing\:--spacing\(4\)\]{--card-spacing:calc(var(--spacing) * 4)}.group-data-\[disabled\=true\]\:pointer-events-none:is(:where(.group)[data-disabled=true] *){pointer-events:none}.group-data-\[disabled\=true\]\:opacity-50:is(:where(.group)[data-disabled=true] *){opacity:.5}.group-data-\[size\=default\]\/switch\:size-4:is(:where(.group\/switch)[data-size=default] *){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.group-data-\[size\=sm\]\/card\:text-sm:is(:where(.group\/card)[data-size=sm] *){font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.group-data-\[size\=sm\]\/switch\:size-3:is(:where(.group\/switch)[data-size=sm] *){width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.peer-disabled\:cursor-not-allowed:is(:where(.peer):disabled~*){cursor:not-allowed}.peer-disabled\:opacity-50:is(:where(.peer):disabled~*){opacity:.5}.file\:inline-flex::file-selector-button{display:inline-flex}.file\:h-6::file-selector-button{height:calc(var(--spacing) * 6)}.file\:border-0::file-selector-button{border-style:var(--tw-border-style);border-width:0}.file\:bg-transparent::file-selector-button{background-color:#0000}.file\:text-sm::file-selector-button{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.file\:font-medium::file-selector-button{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.file\:text-foreground::file-selector-button{color:var(--ink)}.placeholder\:text-muted-foreground::placeholder{color:var(--ink3)}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:-inset-x-3:after{content:var(--tw-content);inset-inline:calc(var(--spacing) * -3)}.after\:-inset-y-2:after{content:var(--tw-content);inset-block:calc(var(--spacing) * -2)}@media (hover:hover){.hover\:bg-\[color-mix\(in_oklch\,var\(--secondary\)\,var\(--foreground\)_5\%\)\]:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-\[color-mix\(in_oklch\,var\(--secondary\)\,var\(--foreground\)_5\%\)\]:hover{background-color:color-mix(in oklch,var(--secondary),var(--foreground) 5%)}}.hover\:bg-destructive\/20:hover{background-color:var(--wrong)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-destructive\/20:hover{background-color:color-mix(in oklab,var(--wrong) 20%,transparent)}}.hover\:bg-muted:hover{background-color:var(--bg)}.hover\:bg-primary\/80:hover{background-color:var(--ink)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-primary\/80:hover{background-color:color-mix(in oklab,var(--ink) 80%,transparent)}}.hover\:text-foreground:hover{color:var(--ink)}.hover\:text-muted-foreground:hover{color:var(--ink3)}.hover\:underline:hover{text-decoration-line:underline}}.focus\:bg-accent:focus{background-color:var(--gold-bg)}.focus\:text-accent-foreground:focus,:is(.not-data-\[variant\=destructive\]\:focus\:\*\*\:text-accent-foreground:not([data-variant=destructive]):focus *){color:var(--ink)}.focus-visible\:border-destructive\/40:focus-visible{border-color:var(--wrong)}@supports (color:color-mix(in lab,red,red)){.focus-visible\:border-destructive\/40:focus-visible{border-color:color-mix(in oklab,var(--wrong) 40%,transparent)}}.focus-visible\:border-ring:focus-visible{border-color:var(--gold)}.focus-visible\:ring-3:focus-visible,.focus-visible\:ring-\[3px\]:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + 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)}.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:var(--wrong)}@supports (color:color-mix(in lab,red,red)){.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:color-mix(in oklab,var(--wrong) 20%,transparent)}}.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:var(--gold)}@supports (color:color-mix(in lab,red,red)){.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:color-mix(in oklab,var(--gold) 50%,transparent)}}.active\:not-aria-\[haspopup\]\:translate-y-px:active:not([aria-haspopup]){--tw-translate-y:1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:bg-input\/50:disabled{background-color:var(--border)}@supports (color:color-mix(in lab,red,red)){.disabled\:bg-input\/50:disabled{background-color:color-mix(in oklab,var(--border) 50%,transparent)}}.disabled\:opacity-50:disabled{opacity:.5}:where([data-slot=button-group]) .in-data-\[slot\=button-group\]\:rounded-lg{border-radius:12px}.has-data-\[icon\=inline-end\]\:pr-1\.5:has([data-icon=inline-end]){padding-right:calc(var(--spacing) * 1.5)}.has-data-\[icon\=inline-end\]\:pr-2:has([data-icon=inline-end]){padding-right:calc(var(--spacing) * 2)}.has-data-\[icon\=inline-start\]\:pl-1\.5:has([data-icon=inline-start]){padding-left:calc(var(--spacing) * 1.5)}.has-data-\[icon\=inline-start\]\:pl-2:has([data-icon=inline-start]){padding-left:calc(var(--spacing) * 2)}.has-data-\[slot\=card-action\]\:grid-cols-\[1fr_auto\]:has([data-slot=card-action]){grid-template-columns:1fr auto}.has-data-\[slot\=card-description\]\:grid-rows-\[auto_auto\]:has([data-slot=card-description]){grid-template-rows:auto auto}.has-data-\[slot\=card-footer\]\:pb-0:has([data-slot=card-footer]){padding-bottom:calc(var(--spacing) * 0)}.has-\[\>img\:first-child\]\:pt-0:has(>img:first-child){padding-top:calc(var(--spacing) * 0)}.aria-expanded\:bg-muted[aria-expanded=true]{background-color:var(--bg)}.aria-expanded\:bg-secondary[aria-expanded=true]{background-color:var(--gold-bg)}.aria-expanded\:text-foreground[aria-expanded=true],.aria-expanded\:text-secondary-foreground[aria-expanded=true]{color:var(--ink)}.aria-invalid\:border-destructive[aria-invalid=true]{border-color:var(--wrong)}.aria-invalid\:ring-3[aria-invalid=true]{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + 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)}.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:var(--wrong)}@supports (color:color-mix(in lab,red,red)){.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:color-mix(in oklab,var(--wrong) 20%,transparent)}}.data-checked\:bg-primary[data-checked]{background-color:var(--ink)}.group-data-\[size\=default\]\/switch\:data-checked\:translate-x-\[calc\(100\%-2px\)\]:is(:where(.group\/switch)[data-size=default] *)[data-checked],.group-data-\[size\=sm\]\/switch\:data-checked\:translate-x-\[calc\(100\%-2px\)\]:is(:where(.group\/switch)[data-size=sm] *)[data-checked]{--tw-translate-x:calc(100% - 2px);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-disabled\:pointer-events-none[data-disabled]{pointer-events:none}.data-disabled\:cursor-not-allowed[data-disabled]{cursor:not-allowed}.data-disabled\:opacity-50[data-disabled]{opacity:.5}.data-placeholder\:text-muted-foreground[data-placeholder]{color:var(--ink3)}.data-unchecked\:bg-input[data-unchecked]{background-color:var(--border)}.group-data-\[size\=default\]\/switch\:data-unchecked\:translate-x-0:is(:where(.group\/switch)[data-size=default] *)[data-unchecked],.group-data-\[size\=sm\]\/switch\:data-unchecked\:translate-x-0:is(:where(.group\/switch)[data-size=sm] *)[data-unchecked]{--tw-translate-x:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[align-trigger\=true\]\:animate-none[data-align-trigger=true]{animation:none}.data-\[size\=default\]\:h-8[data-size=default]{height:calc(var(--spacing) * 8)}.data-\[size\=default\]\:h-\[18\.4px\][data-size=default]{height:18.4px}.data-\[size\=default\]\:w-\[32px\][data-size=default]{width:32px}.data-\[size\=sm\]\:h-7[data-size=sm]{height:calc(var(--spacing) * 7)}.data-\[size\=sm\]\:h-\[14px\][data-size=sm]{height:14px}.data-\[size\=sm\]\:w-\[24px\][data-size=sm]{width:24px}.data-\[size\=sm\]\:rounded-\[min\(var\(--radius-md\)\,10px\)\][data-size=sm]{border-radius:min(var(--radius-md),10px)}.data-\[size\=sm\]\:\[--card-spacing\:--spacing\(3\)\][data-size=sm]{--card-spacing:calc(var(--spacing) * 3)}.data-\[size\=sm\]\:has-data-\[slot\=card-footer\]\:pb-0[data-size=sm]:has([data-slot=card-footer]){padding-bottom:calc(var(--spacing) * 0)}:is(.\*\:data-\[slot\=select-value\]\:line-clamp-1>*)[data-slot=select-value]{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}:is(.\*\:data-\[slot\=select-value\]\:flex>*)[data-slot=select-value]{display:flex}:is(.\*\:data-\[slot\=select-value\]\:items-center>*)[data-slot=select-value]{align-items:center}:is(.\*\:data-\[slot\=select-value\]\:gap-1\.5>*)[data-slot=select-value]{gap:calc(var(--spacing) * 1.5)}@media (min-width:48rem){.md\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}@media (prefers-color-scheme:dark){.dark\:border-input{border-color:var(--border)}.dark\:bg-destructive\/20{background-color:var(--wrong)}@supports (color:color-mix(in lab,red,red)){.dark\:bg-destructive\/20{background-color:color-mix(in oklab,var(--wrong) 20%,transparent)}}.dark\:bg-input\/30{background-color:var(--border)}@supports (color:color-mix(in lab,red,red)){.dark\:bg-input\/30{background-color:color-mix(in oklab,var(--border) 30%,transparent)}}@media (hover:hover){.dark\:hover\:bg-destructive\/30:hover{background-color:var(--wrong)}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-destructive\/30:hover{background-color:color-mix(in oklab,var(--wrong) 30%,transparent)}}.dark\:hover\:bg-input\/50:hover{background-color:var(--border)}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-input\/50:hover{background-color:color-mix(in oklab,var(--border) 50%,transparent)}}.dark\:hover\:bg-muted\/50:hover{background-color:var(--bg)}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-muted\/50:hover{background-color:color-mix(in oklab,var(--bg) 50%,transparent)}}}.dark\:focus-visible\:ring-destructive\/40:focus-visible{--tw-ring-color:var(--wrong)}@supports (color:color-mix(in lab,red,red)){.dark\:focus-visible\:ring-destructive\/40:focus-visible{--tw-ring-color:color-mix(in oklab,var(--wrong) 40%,transparent)}}.dark\:disabled\:bg-input\/80:disabled{background-color:var(--border)}@supports (color:color-mix(in lab,red,red)){.dark\:disabled\:bg-input\/80:disabled{background-color:color-mix(in oklab,var(--border) 80%,transparent)}}.dark\:aria-invalid\:border-destructive\/50[aria-invalid=true]{border-color:var(--wrong)}@supports (color:color-mix(in lab,red,red)){.dark\:aria-invalid\:border-destructive\/50[aria-invalid=true]{border-color:color-mix(in oklab,var(--wrong) 50%,transparent)}}.dark\:aria-invalid\:ring-destructive\/40[aria-invalid=true]{--tw-ring-color:var(--wrong)}@supports (color:color-mix(in lab,red,red)){.dark\:aria-invalid\:ring-destructive\/40[aria-invalid=true]{--tw-ring-color:color-mix(in oklab,var(--wrong) 40%,transparent)}}.dark\:data-checked\:bg-primary-foreground[data-checked]{background-color:var(--surface)}.dark\:data-unchecked\:bg-foreground[data-unchecked]{background-color:var(--ink)}.dark\:data-unchecked\:bg-input\/80[data-unchecked]{background-color:var(--border)}@supports (color:color-mix(in lab,red,red)){.dark\:data-unchecked\:bg-input\/80[data-unchecked]{background-color:color-mix(in oklab,var(--border) 80%,transparent)}}}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3 svg:not([class*=size-]){width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3\.5 svg:not([class*=size-]){width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\.border-b\]\:pb-\(--card-spacing\).border-b{padding-bottom:var(--card-spacing)}@media (hover:hover){.\[a\]\:hover\:bg-destructive\/20:is(a):hover{background-color:var(--wrong)}@supports (color:color-mix(in lab,red,red)){.\[a\]\:hover\:bg-destructive\/20:is(a):hover{background-color:color-mix(in oklab,var(--wrong) 20%,transparent)}}.\[a\]\:hover\:bg-muted:is(a):hover{background-color:var(--bg)}.\[a\]\:hover\:bg-primary\/80:is(a):hover{background-color:var(--ink)}@supports (color:color-mix(in lab,red,red)){.\[a\]\:hover\:bg-primary\/80:is(a):hover{background-color:color-mix(in oklab,var(--ink) 80%,transparent)}}.\[a\]\:hover\:bg-secondary\/80:is(a):hover{background-color:var(--gold-bg)}@supports (color:color-mix(in lab,red,red)){.\[a\]\:hover\:bg-secondary\/80:is(a):hover{background-color:color-mix(in oklab,var(--gold-bg) 80%,transparent)}}.\[a\]\:hover\:text-muted-foreground:is(a):hover{color:var(--ink3)}}:is(.\*\:\[img\:first-child\]\:rounded-t-xl>*):is(img:first-child){border-top-left-radius:16px;border-top-right-radius:16px}:is(.\*\:\[img\:last-child\]\:rounded-b-xl>*):is(img:last-child){border-bottom-right-radius:16px;border-bottom-left-radius:16px}:is(.\*\:\[span\]\:last\:flex>*):is(span):last-child{display:flex}:is(.\*\:\[span\]\:last\:items-center>*):is(span):last-child{align-items:center}:is(.\*\:\[span\]\:last\:gap-2>*):is(span):last-child{gap:calc(var(--spacing) * 2)}.\[\&\>svg\]\:pointer-events-none>svg{pointer-events:none}.\[\&\>svg\]\:size-3\!>svg{width:calc(var(--spacing) * 3)!important;height:calc(var(--spacing) * 3)!important}}:root{--bg:#f7f5f0;--surface:#fff;--ink:#1a1814;--ink2:#6b6760;--ink3:#a8a5a0;--correct:#2d5a3d;--correct-bg:#eef5f1;--correct-border:#c5dfd0;--wrong:#7a2020;--wrong-bg:#f8eeee;--wrong-border:#dfbdbd;--gold:#b8860b;--gold-bg:#fbf6e6;--gold-border:#e6d49a;--border:#e8e5e0;--border2:#d0ccc5;--pill-classic:#1a1814;--pill-quick:#b8860b;--serif:"Instrument Serif","DM Serif Display",Georgia,serif;--sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--mono:ui-monospace,"JetBrains Mono","SF Mono",Menlo,monospace;color-scheme:light;font-family:var(--sans);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility}*{box-sizing:border-box;margin:0;padding:0}#root,body,html{background:var(--bg);min-height:100vh}body{padding:24px 16px calc(112px + env(safe-area-inset-bottom));justify-content:center;align-items:flex-start;display:flex}#root{width:100%;max-width:560px;padding-bottom:16px}button{cursor:pointer;color:inherit;background:0 0;border:none;font-family:inherit}.admin-layout{flex-direction:column;gap:16px;display:flex}.admin-nav{white-space:nowrap;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:8px;padding:0 4px;display:flex;overflow-x:auto}.admin-nav::-webkit-scrollbar{display:none}.admin-nav-link{color:var(--ink2);background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:8px 16px;font-size:13px;font-weight:600;text-decoration:none;transition:background .15s,color .15s,border-color .15s}.admin-nav-link:hover{border-color:var(--ink3);color:var(--ink)}.admin-nav-link.active{background:var(--ink);color:var(--surface);border-color:var(--ink)}.stats-section{margin-bottom:24px}.admin-stats-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}@media (max-width:480px){.admin-stats-grid{grid-template-columns:repeat(2,1fr)}}.admin-stat-card{background:var(--surface);border:1px solid var(--border);text-align:center;border-radius:14px;padding:16px 14px;box-shadow:0 2px 8px #1a18140a}.admin-stat-value{font-family:var(--serif);color:var(--ink);font-variant-numeric:tabular-nums;margin-bottom:4px;font-size:28px;line-height:1.1}.admin-stat-label{letter-spacing:.1em;text-transform:uppercase;color:var(--ink3);font-size:10px;font-weight:600}.admin-chart{background:var(--surface);border:1px solid var(--border);border-radius:14px;flex-direction:column;gap:10px;padding:14px 16px;display:flex;box-shadow:0 2px 8px #1a18140a}.admin-chart-row{grid-template-columns:120px 1fr 48px;align-items:center;gap:10px;display:grid}@media (max-width:480px){.admin-chart-row{grid-template-columns:100px 1fr 40px;gap:8px}}.admin-chart-label{color:var(--ink);align-items:center;gap:6px;font-size:13px;font-weight:500;display:flex}.admin-chart-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.admin-chart-name{text-transform:capitalize;flex:1}.admin-chart-pct{color:var(--ink3);font-size:11px;font-weight:600}.admin-chart-bar-wrap{background:var(--bg);border-radius:4px;height:8px;overflow:hidden}.admin-chart-bar{border-radius:4px;height:100%;transition:width .5s cubic-bezier(.16,1,.3,1)}.admin-chart-count{color:var(--ink2);text-align:right;font-variant-numeric:tabular-nums;font-size:12px;font-weight:600}.admin-signup-list{flex-direction:column;gap:8px;display:flex}.admin-signup-row{background:var(--surface);border:1px solid var(--border);border-radius:12px;align-items:center;gap:10px;padding:10px 14px;display:flex;box-shadow:0 2px 8px #1a18140a}.admin-signup-avatar{background:var(--gold-bg);border:1px solid var(--gold-border);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:22px;display:inline-flex}.admin-signup-meta{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.admin-signup-meta strong{color:var(--ink);font-size:14px;font-weight:600}.admin-signup-meta .muted{color:var(--ink3);text-align:left;padding:0;font-size:12px}.admin-signup-date{color:var(--ink3);white-space:nowrap;font-size:11px;font-weight:500}@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-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-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}.app{width:100%;max-width:560px}@keyframes pop{0%{transform:scale(.94);opacity:0}to{transform:scale(1);opacity:1}}.screen.card{background:var(--surface);border:1px solid var(--border);border-radius:22px;overflow:hidden}.eyebrow{font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink3);margin-bottom:14px}.main-title{font-family:var(--serif);font-size:44px;line-height:1.04;letter-spacing:-.01em;color:var(--ink);margin-bottom:10px}.main-title em{font-style:italic;color:var(--ink2)}.tagline{font-size:14px;color:var(--ink2);margin-top:8px}.start-top{padding:44px 36px 32px;border-bottom:1px solid var(--border)}.start-body{padding:24px 28px 28px}.bank-start-body{padding-bottom:40px}.hs-grid{display:grid;grid-template-columns:1fr 1fr;background:var(--gold-bg);border:1px solid var(--gold-border);border-radius:14px;margin-bottom:22px;overflow:hidden}.hs-cell{padding:16px 18px;text-align:left}.hs-cell-divider{border-left:1px solid var(--gold-border)}.hs-cell-label{font-size:10.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);margin-bottom:2px}.hs-cell-val{font-family:var(--serif);font-size:30px;color:var(--gold);line-height:1.1}.hs-cell-sub{font-size:11px;color:var(--ink2);margin-top:2px}.modes{display:flex;flex-direction:column;gap:10px;margin-bottom:18px}.mode-card{width:100%;text-align:left;padding:18px 20px;background:var(--bg);border:1.5px solid var(--border);border-radius:14px;transition:transform .15s ease,border-color .15s ease,background .15s ease}.mode-card:hover{transform:translateY(-2px);border-color:var(--ink);background:var(--surface)}.mode-card:active{transform:translateY(0)}.mode-card-alt:hover{border-color:var(--gold)}.mode-header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:4px}.mode-name{font-family:var(--serif);font-size:24px;color:var(--ink)}.mode-time{font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink3)}.mode-desc{font-size:13px;color:var(--ink2);margin-bottom:10px}.mode-rules{display:flex;gap:16px;font-size:12px;color:var(--ink2);align-items:center}.mode-rules span{display:inline-flex;align-items:center;gap:6px}.dot{width:7px;height:7px;border-radius:50%;display:inline-block}.dot-correct{background:var(--correct)}.dot-wrong{background:var(--wrong)}.dot-neutral{background:var(--ink3)}.btn-primary{width:100%;padding:15px;background:var(--ink);color:#fff;border-radius:12px;font-size:14px;font-weight:500;letter-spacing:.02em;transition:opacity .15s,transform .12s}.btn-primary:hover{opacity:.88;transform:translateY(-1px)}.btn-primary:active{transform:translateY(0);opacity:1}.ghost-btn{width:100%;padding:14px;background:transparent;color:var(--ink);border:1.5px solid var(--border2);border-radius:12px;font-size:14px;font-weight:500;transition:background .15s,border-color .15s}.ghost-btn:hover{background:var(--bg);border-color:var(--ink)}.ghost-btn:disabled{opacity:.5;cursor:default}.ghost-btn:disabled:hover{background:transparent;border-color:var(--border2)}.ghost-btn-danger{border-color:var(--wrong);color:var(--wrong)}.ghost-btn-danger:hover{background:var(--wrong-bg);border-color:var(--wrong)}.ghost-btn-sm{background:transparent;border:1px solid var(--border2);border-radius:8px;padding:4px 10px;font-size:13px;cursor:pointer;color:var(--muted);line-height:1}.ghost-btn-sm:hover{border-color:var(--wrong);color:var(--wrong)}.parent-num-row{display:flex;gap:8px;align-items:center}.parent-num-row input{flex:1}.confirm-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.game-header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:16px 24px;border-bottom:1px solid var(--border);gap:12px}.game-brand{text-align:left}.mode-pill{display:inline-block;padding:4px 10px;border-radius:100px;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#fff}.mode-pill-classic{background:var(--pill-classic)}.mode-pill-quick{background:var(--pill-quick)}.mode-pill-profile{background:var(--profile-accent,var(--ink));color:#fff}.timer{font-family:var(--mono);font-size:16px;font-weight:500;color:var(--ink);padding:6px 14px;border:1px solid var(--border);border-radius:100px;background:var(--bg);letter-spacing:.04em;font-variant-numeric:tabular-nums;transition:color .2s,border-color .2s,background .2s}.timer-low{color:var(--gold);border-color:var(--gold-border);background:var(--gold-bg)}.timer-very-low{color:var(--wrong);border-color:var(--wrong-border);background:var(--wrong-bg);animation:pulse 1s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.score-chip{display:inline-flex;align-items:baseline;gap:4px;justify-self:end}.score-num{font-family:var(--serif);font-size:24px;color:var(--ink);font-variant-numeric:tabular-nums}.score-suffix{font-size:11px;color:var(--ink3);font-weight:500;letter-spacing:.08em;text-transform:uppercase}.progress-bar{height:2px;background:var(--border)}.progress-fill{height:100%;background:var(--ink);transition:width .5s cubic-bezier(.16,1,.3,1)}.game-body{padding:32px 28px 24px}.q-meta{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.q-counter{font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ink3)}.hs-mini{font-size:12px;color:var(--ink3);font-weight:500}.hs-mini span{color:var(--gold);font-size:15px;margin-left:2px}.hs-mini span,.q-text{font-family:var(--serif)}.q-text{font-size:30px;line-height:1.2;color:var(--ink);margin-bottom:24px;min-height:72px;letter-spacing:-.01em}.feedback{font-size:13px;font-weight:500;padding:10px 16px;border-radius:10px;margin-bottom:14px;letter-spacing:.01em}.feedback.show{animation:pop .2s ease}.feedback.fc{background:var(--correct-bg);color:var(--correct)}.feedback.fw{background:var(--wrong-bg);color:var(--wrong)}.options{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}.opt-btn{padding:14px 18px;background:var(--bg);border:1.5px solid var(--border);border-radius:12px;font-size:15px;text-align:left;color:var(--ink);transition:border-color .15s,background .15s,transform .1s;font-family:inherit;font-variant-numeric:tabular-nums}.opt-btn:hover:not(:disabled){border-color:var(--border2);background:#EFEDE8;transform:translateX(2px)}.opt-btn:disabled{cursor:default}.opt-btn.correct{background:var(--correct-bg);border-color:var(--correct);color:var(--correct);font-weight:500}.opt-btn.wrong{background:var(--wrong-bg);border-color:var(--wrong);color:var(--wrong)}.opt-btn.reveal{background:var(--correct-bg);border-color:var(--correct);color:var(--correct);font-weight:500}.next-btn{width:100%;padding:13px;background:var(--ink);color:#fff;border-radius:12px;font-size:14px;font-weight:500;letter-spacing:.01em;transition:opacity .15s,transform .12s}.next-btn:hover{opacity:.88;transform:translateY(-1px)}.next-btn.show{animation:pop .25s ease}.quit-btn{width:100%;margin-top:10px;padding:10px;font-size:12px;color:var(--ink3);letter-spacing:.04em}.quit-btn:hover{color:var(--ink)}.end-top{padding:40px 32px 28px;border-bottom:1px solid var(--border);text-align:center}.end-label{font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--ink3);margin-bottom:8px}.end-grade{font-family:var(--serif);font-size:84px;line-height:1;color:var(--ink);margin-bottom:16px;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.end-title{font-family:var(--serif);font-size:28px;color:var(--ink);margin-bottom:6px}.end-sub{font-size:13px;color:var(--ink2)}.new-hs-tag{margin-top:16px;padding:7px 16px;background:var(--gold-bg);border:1px solid var(--gold-border);border-radius:100px;font-size:11px;letter-spacing:.1em;color:var(--gold);text-transform:uppercase}.new-hs-tag,.streak-tag{display:inline-block;font-weight:600}.streak-tag{margin-top:10px;padding:6px 14px;background:rgba(255,122,41,.1);border:1px solid rgba(255,122,41,.35);border-radius:100px;font-size:12px;color:#ff7a29}.streak-badge{font-weight:600;color:#ff7a29}.seed-row{display:grid;grid-template-columns:1fr 1fr;padding:14px 28px;border-bottom:1px solid var(--border);background:var(--bg);gap:16px}.seed-line{display:flex;align-items:center;justify-content:space-between;gap:10px}.seed-label{font-size:10.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--ink3)}.seed-val{font-family:var(--mono);font-size:13px;font-weight:500;color:var(--ink2);letter-spacing:.06em;background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:3px 8px}.stats-row{display:grid;grid-template-columns:1fr 1fr 1fr;border-bottom:1px solid var(--border)}.stat{padding:20px 16px;text-align:center;border-right:1px solid var(--border)}.stat:last-child{border-right:none}.stat-val{font-family:var(--serif);font-size:32px;color:var(--ink);margin-bottom:2px;line-height:1.1;font-variant-numeric:tabular-nums}.stat-lbl{font-size:10.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ink3)}.chart-section{padding:18px 24px 4px;border-bottom:1px solid var(--border)}.accuracy-chart{width:100%;background:var(--bg);border:1px solid var(--border);border-radius:14px;padding:12px 12px 10px}.accuracy-chart svg{display:block;width:100%;height:auto;overflow:visible}.accuracy-chart-tick line{stroke:var(--border);stroke-width:1}.accuracy-chart-labels text,.accuracy-chart-tick text{fill:var(--ink3);font-family:var(--mono);font-size:10px}.accuracy-chart-line{fill:none;stroke:var(--correct);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.accuracy-chart-point circle{fill:var(--surface);stroke:var(--correct);stroke-width:2}.accuracy-chart-point text{fill:var(--ink2);font-family:var(--mono);font-size:10px;text-anchor:middle}.chart-empty{font-size:13px;padding:20px 16px;background:var(--bg);border:1px solid var(--border);border-radius:14px}.chart-empty,.chart-note{color:var(--ink3);text-align:center}.chart-note{margin-top:8px;font-size:12px}.review-wrap{padding:22px 28px 26px}.review-heading{font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink3);margin-bottom:14px}.review-list{gap:8px;margin-bottom:24px}.review-list,.topic-breakdown{display:flex;flex-direction:column}.topic-breakdown{padding:18px 24px 4px;gap:14px}.bank-start-body .topic-breakdown{padding:32px 20px 8px}.topic-columns{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media (max-width:480px){.topic-columns{grid-template-columns:1fr}}.topic-group{border-radius:12px;padding:12px 14px;background:var(--bg)}.topic-group-strong{border-left:3px solid #2d5a3d}.topic-group-weak{border-left:3px solid #b43f3f}.topic-group-label{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink3);margin-bottom:8px}.topic-row{display:flex;justify-content:space-between;align-items:center;padding:5px 0;font-size:13px}.topic-name{color:var(--ink);font-weight:500}.topic-meta{color:var(--ink3);font-variant-numeric:tabular-nums;font-size:12px}.topic-empty{font-size:13px;color:var(--ink3);padding:16px;text-align:center;background:var(--bg);border-radius:12px}.bank-start-body .topic-empty{padding:18px 20px}.review-empty{font-size:13px;color:var(--ink3);text-align:center;padding:32px 16px;background:var(--bg);margin-bottom:24px}.review-empty,.ri{border-radius:12px}.ri{padding:12px 16px;border:1px solid}.ri.rc{background:var(--correct-bg);border-color:var(--correct-border)}.ri.rw{background:var(--wrong-bg);border-color:var(--wrong-border)}.ri-q{font-size:13px;color:var(--ink);margin-bottom:4px;line-height:1.4}.ri-ans,.ri-q{font-weight:500}.ri-ans{font-size:12px}.rc .ri-ans{color:var(--correct)}.rw .ri-ans{color:var(--wrong)}.ri-ca{font-size:12px;color:var(--ink3);margin-top:3px}.end-actions{display:flex;flex-direction:column;gap:8px}.end-action-bar{position:fixed;left:0;right:0;bottom:0;z-index:50;padding:16px 16px calc(16px + env(safe-area-inset-bottom));background:linear-gradient(to bottom,rgba(247,245,240,0) 0,var(--bg) 35%);display:flex;justify-content:center;pointer-events:none}.end-action-bar-inner{width:100%;max-width:560px;display:flex;flex-direction:column;gap:8px;pointer-events:auto;background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:10px;box-shadow:0 8px 24px rgba(26,24,20,.06)}.review-wrap-padded{padding-bottom:140px!important}@media (max-width:480px){.review-wrap-padded{padding-bottom:150px!important}}.h-summary{padding:22px 28px 0}.history-list{display:flex;flex-direction:column;gap:10px;margin-bottom:22px}.h-item{padding:14px 16px;background:var(--bg);border:1px solid var(--border);border-radius:12px}.h-item-head{display:flex;align-items:center;gap:8px;margin-bottom:10px;flex-wrap:wrap}.h-item-date{font-size:12px;color:var(--ink2);flex:1}.h-item-high{font-size:10px;font-weight:700;color:var(--gold);letter-spacing:.1em;background:var(--gold-bg);border:1px solid var(--gold-border);padding:2px 8px;border-radius:100px}.h-item-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:8px}.h-stat{text-align:left}.h-stat-val{font-family:var(--serif);font-size:20px;color:var(--ink);line-height:1.1;font-variant-numeric:tabular-nums}.h-stat-sub{font-size:13px;color:var(--ink3)}.h-stat-lbl{font-size:10px;font-weight:600;color:var(--ink3);letter-spacing:.08em;text-transform:uppercase;margin-top:1px}.h-item-seed{font-size:11px;color:var(--ink3);font-weight:500;letter-spacing:.04em}.h-item-seed span{font-family:var(--mono);color:var(--ink2);letter-spacing:.08em}.profile-card{width:100%;text-align:left;padding:22px 22px 18px;background:var(--surface);border:1.5px solid var(--border);border-radius:18px;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;position:relative;overflow:hidden}.profile-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--profile-accent);opacity:.85}.profile-card:hover{transform:translateY(-2px);border-color:var(--ink2);box-shadow:0 10px 28px rgba(26,24,20,.08)}.profile-card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.profile-card-name{font-family:var(--serif);font-size:30px;color:var(--ink);line-height:1;letter-spacing:-.01em}.profile-card-accent{width:10px;height:10px;border-radius:50%;background:var(--profile-accent)}.profile-card-title{font-size:13px;color:var(--ink2);margin-bottom:4px;font-weight:500}.profile-card-eyebrow{font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--profile-accent);margin-bottom:14px}.profile-card-stats{display:flex;gap:18px;font-size:12px;color:var(--ink3);font-weight:500;flex-wrap:wrap}.profile-card-stats strong{color:var(--ink);font-family:var(--serif);font-size:16px;font-weight:400;margin-left:4px;letter-spacing:-.01em}.back-link{display:inline-block;font-size:12px;font-weight:500;color:var(--ink3);letter-spacing:.02em;margin-bottom:18px;transition:color .15s}.back-link:hover{color:var(--ink)}.hs-grid-profile{background:color-mix(in srgb,var(--profile-accent,var(--gold)) 12%,#fff);border-color:color-mix(in srgb,var(--profile-accent,var(--gold)) 35%,var(--border))}.hs-grid-profile .hs-cell-divider{border-left-color:color-mix(in srgb,var(--profile-accent,var(--gold)) 35%,var(--border))}.hs-grid-profile .hs-cell-label,.hs-grid-profile .hs-cell-val{color:var(--profile-accent,var(--gold))}.hs-grid-history .hs-pair{display:inline-flex;align-items:baseline;gap:2px;margin-right:12px}.hs-grid-history .hs-pair small{font-family:var(--sans);font-size:10px;font-weight:600;letter-spacing:.08em;color:var(--ink3)}.hs-grid-history .hs-cell-val{display:flex;align-items:baseline;gap:4px;color:var(--profile-accent,var(--ink))}.hs-grid-history .hs-cell-label{color:var(--profile-accent,var(--ink2))}.hs-grid-history{background:color-mix(in srgb,var(--profile-accent,var(--gold)) 8%,#fff);border-color:color-mix(in srgb,var(--profile-accent,var(--gold)) 25%,var(--border))}.hs-grid-history .hs-cell-divider{border-left-color:color-mix(in srgb,var(--profile-accent,var(--gold)) 25%,var(--border))}.hs-grid-single{grid-template-columns:1fr!important}.filter-row{display:flex;gap:6px;margin-top:14px;padding:0;flex-wrap:wrap}.filter-chip{padding:7px 14px;background:var(--bg);border:1px solid var(--border);border-radius:100px;font-size:12px;font-weight:500;color:var(--ink2);transition:background .15s,border-color .15s,color .15s;letter-spacing:.02em}.filter-chip:hover{border-color:var(--ink3);color:var(--ink)}.filter-chip.active{background:var(--profile-accent,var(--ink));border-color:var(--profile-accent,var(--ink));color:#fff}.filter-chip.active:hover{opacity:.9}.resume-bar{position:fixed;left:0;right:0;bottom:0;z-index:60;padding:14px 16px calc(14px + env(safe-area-inset-bottom));display:flex;justify-content:center;pointer-events:none;background:linear-gradient(to bottom,rgba(247,245,240,0) 0,var(--bg) 35%)}.resume-bar-inner{width:100%;max-width:560px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 12px 12px 18px;background:var(--surface);border:1px solid var(--border);border-left:4px solid var(--profile-accent,var(--ink));border-radius:14px;box-shadow:0 10px 28px rgba(26,24,20,.08);pointer-events:auto}.resume-info{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.resume-meta{display:flex;gap:6px;align-items:center}.mode-pill-resume{background:var(--bg);color:var(--ink);border:1px solid var(--border)}.resume-text{font-size:12.5px;color:var(--ink2);font-weight:500;font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.resume-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.resume-btn{padding:9px 16px;background:var(--profile-accent,var(--ink));color:#fff;border-radius:100px;font-size:13px;font-weight:500;letter-spacing:.02em;transition:opacity .15s}.resume-btn:hover{opacity:.88}.resume-dismiss{width:30px;height:30px;border-radius:50%;font-size:20px;line-height:1;color:var(--ink3);transition:color .15s,background .15s}.resume-dismiss:hover{color:var(--ink);background:var(--bg)}@media (max-width:480px){.resume-bar-inner{padding:10px 10px 10px 14px}.resume-btn{padding:8px 14px;font-size:12.5px}.main-title{font-size:36px}.q-text{font-size:24px}.end-grade{font-size:68px}.start-top{padding:36px 24px 26px}.start-body{padding:22px 22px 24px}.bank-start-body{padding-bottom:36px}.game-body{padding:26px 22px 22px}.review-wrap{padding:22px}.game-header{padding:14px 18px}.seed-row{padding:14px 22px}}.bottom-nav{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:space-around;padding:8px 0 calc(8px + env(safe-area-inset-bottom));background:color-mix(in srgb,var(--surface) 94%,transparent);border-top:1px solid var(--border);z-index:100;backdrop-filter:blur(14px)}.bottom-nav-item{display:flex;flex-direction:column;align-items:center;gap:4px;padding:4px 12px;color:var(--ink3);text-decoration:none;font-size:12px}.bottom-nav-item.active{color:var(--ink)}.bottom-nav-item .icon{font-size:20px}.primary-btn{appearance:none;border:none;cursor:pointer;background:var(--ink);color:var(--surface);font-family:inherit;font-size:15px;font-weight:600;padding:14px 22px;border-radius:12px;width:100%;transition:opacity .15s ease,transform .05s ease}.primary-btn:disabled{opacity:.5;cursor:not-allowed}.primary-btn:not(:disabled):hover{opacity:.9}.primary-btn:not(:disabled):active{transform:translateY(1px)}.muted{color:var(--ink3);font-size:13px;text-align:center;padding:12px 0}.error-text{color:#b54b3d;font-size:13px;margin-top:8px;text-align:left}.error-list{display:flex;flex-direction:column;gap:4px;padding:12px 14px;background:rgba(181,75,61,.07);border:1px solid rgba(181,75,61,.25);border-radius:10px;margin:8px 0}.config-banner{font-size:13px;background:var(--gold-bg);border:1px solid var(--gold-border);border-radius:10px;padding:12px 14px;margin-bottom:14px;color:var(--ink2)}.config-banner code{background:rgba(0,0,0,.05);padding:1px 5px;border-radius:4px;font-size:12px}.standard-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:18px}.class-switcher{display:inline-flex;gap:4px;cursor:pointer}.class-switcher-select{appearance:none;-webkit-appearance:none;background:rgba(0,0,0,.05);border:1px solid var(--border);color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;padding:1px 16px 1px 6px;border-radius:4px;cursor:pointer;background-image:linear-gradient(45deg,transparent 50%,currentColor 0),linear-gradient(135deg,currentColor 50%,transparent 0);background-position:calc(100% - 8px) 50%,calc(100% - 4px) 50%;background-size:4px 4px,4px 4px;background-repeat:no-repeat}.class-switcher-select:disabled{opacity:.5;cursor:wait}.standard-chip{appearance:none;border:1px solid var(--border);background:var(--surface);color:var(--ink);font-family:inherit;font-size:13px;font-weight:600;padding:10px 6px;border-radius:10px;cursor:pointer;transition:all .15s ease}.standard-chip:hover{border-color:var(--ink3)}.standard-chip.active{background:var(--ink);color:var(--surface);border-color:var(--ink)}.bank-actions{display:flex;gap:8px;margin-bottom:16px}.bank-actions .primary-btn{flex:1}.bank-list{display:flex;flex-direction:column;gap:10px;margin-bottom:16px}.bank-card{display:flex;border:1px solid var(--border);border-radius:14px;overflow:hidden;background:var(--surface)}.bank-card-main{flex:1;appearance:none;border:none;background:transparent;text-align:left;cursor:pointer;padding:14px 16px;font-family:inherit;color:var(--ink)}.bank-card-main:hover{background:rgba(0,0,0,.02)}.bank-card-side{appearance:none;border:none;background:var(--gold-bg);border-left:1px solid var(--border);cursor:pointer;width:52px;font-size:22px}.bank-card-side:hover{background:var(--gold-border)}.bank-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:4px}.bank-card-name{font-weight:700;font-size:15px}.tag{font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:3px 8px;border-radius:999px;color:var(--ink2);background:rgba(0,0,0,.05)}.tag-shared{background:var(--gold-bg);color:var(--gold)}.tag-private{background:rgba(0,0,0,.06)}.bank-card-meta{font-size:12px;color:var(--ink3);margin-bottom:4px}.bank-card-desc{font-size:13px;color:var(--ink2);margin-bottom:6px}.bank-card-stats{display:flex;gap:14px;font-size:12px;color:var(--ink3)}.bank-card-stats strong{color:var(--ink);font-weight:700}.empty-state{font-size:13px;color:var(--ink3);text-align:center;padding:22px;border:1px dashed var(--border);border-radius:12px;margin-bottom:16px}.bottom-row{display:flex;gap:8px;margin-top:14px}.bottom-row .ghost-btn{flex:1}.form-body{flex-direction:column}.form-body,.form-row{display:flex;gap:12px}.form-row{align-items:center}.form-row>span{flex:0 0 110px;font-size:13px;color:var(--ink3);font-weight:600}.form-row input,.form-row select,.form-row textarea{flex:1;appearance:none;border:1px solid var(--border);background:var(--surface);color:var(--ink);font-family:inherit;font-size:14px;padding:10px 12px;border-radius:10px}.form-row textarea{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12.5px;line-height:1.4}.form-row-stack{flex-direction:column;align-items:stretch}.form-row-stack>span{flex:none;margin-bottom:4px}.form-row-stack small{margin-top:6px}.form-row-stack code{background:rgba(0,0,0,.05);padding:1px 4px;border-radius:4px;font-size:11.5px}.img-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:8px;margin-top:10px}.img-chip{position:relative;width:100%;aspect-ratio:1/1;border-radius:8px;overflow:hidden;border:1px solid var(--border);background:var(--surface)}.img-chip img{width:100%;height:100%;object-fit:cover;display:block}.img-chip button{position:absolute;top:2px;right:2px;width:22px;height:22px;border-radius:50%;border:none;background:rgba(0,0,0,.66);color:#fff;font-size:16px;line-height:22px;text-align:center;cursor:pointer;padding:0}.img-chip button:disabled{opacity:.5;cursor:not-allowed}.pdf-list{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}.pdf-chip{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.pdf-icon{font-size:20px;line-height:1}.pdf-meta{display:flex;flex-direction:column;min-width:0;flex:1}.pdf-name{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pdf-size{font-size:12px}.pdf-chip button{width:26px;height:26px;border-radius:50%;border:none;background:rgba(0,0,0,.66);color:#fff;font-size:16px;line-height:26px;text-align:center;cursor:pointer;padding:0;flex-shrink:0}.pdf-chip button:disabled{opacity:.5;cursor:not-allowed}.mode-toggle{display:flex;border:1px solid var(--border);border-radius:10px;overflow:hidden;margin-bottom:16px}.mode-toggle-btn{flex:1;appearance:none;border:none;background:var(--surface);color:var(--ink2);font-family:inherit;font-size:13px;font-weight:600;padding:10px 0;cursor:pointer}.mode-toggle-btn.active{background:var(--ink);color:var(--surface)}.leaderboard{list-style:none;padding:0;margin:0 0 12px;display:flex;flex-direction:column;gap:6px}.leaderboard li{display:grid;grid-template-columns:36px 1fr auto;align-items:center;gap:10px;padding:10px 14px;border:1px solid var(--border);border-radius:10px;font-size:14px}.leaderboard li.me{background:var(--gold-bg);border-color:var(--gold-border)}.leaderboard .rank{font-weight:700;color:var(--ink3)}.leaderboard .name{color:var(--ink)}.leaderboard .score{font-weight:700}.save-state{font-size:12px;margin-top:10px}.avatar-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin:4px 0 16px;width:100%}.avatar-chip{appearance:none;border:1px solid var(--border);background:var(--surface);font-family:inherit;cursor:pointer;border-radius:12px;aspect-ratio:1;display:flex;align-items:center;justify-content:center;transition:all .15s ease;padding:0}.avatar-chip span{font-size:22px;line-height:1}.avatar-chip:hover{border-color:var(--ink3);transform:scale(1.04)}.avatar-chip.active{border-color:var(--ink);background:var(--gold-bg);border-width:2px}.series-block{margin-bottom:22px}.series-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:4px;padding:0 2px}.series-label{font-family:var(--serif);font-style:italic;font-size:18px;color:var(--ink)}.series-meta{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink3)}.series-topics{font-size:12px;color:var(--ink3);line-height:1.5;padding:0 2px 10px}.standard-section{margin-bottom:8px}.standard-head{font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ink3);border-bottom:1px solid var(--border);padding:0 2px 6px;margin-bottom:12px}.bank-card-name-extra{font-weight:400;color:var(--ink3);font-size:13px}.migrate-cta{width:100%;margin-bottom:14px;background:var(--gold-bg);border:1px solid var(--gold-border)}.migration-summary{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.migration-row{padding:12px 14px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.migration-row-head{display:flex;justify-content:space-between;gap:10px;margin-bottom:4px;font-size:14px}.muted-inline{font-size:12px;color:var(--ink3)}.privacy-toggle{display:flex;align-items:center;gap:10px;padding:12px 14px;border:1px solid var(--border);border-radius:12px;background:var(--surface);cursor:pointer;font-size:14px}.privacy-toggle input{width:18px;height:18px;margin:0}.modal-backdrop{position:fixed;inset:0;background:rgba(26,24,20,.45);display:flex;align-items:center;justify-content:center;padding:20px;z-index:100}.modal-card{background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:22px;width:100%;max-width:420px;max-height:82vh;overflow-y:auto;box-shadow:0 24px 70px rgba(0,0,0,.28)}.modal-title{font-weight:800;font-size:19px;color:var(--ink)}.modal-sub{font-size:13px;color:var(--ink2);margin:6px 0 4px}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:18px}.share-link-block{display:flex;flex-direction:column;gap:10px;margin:14px 0 4px}.share-link-label{font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ink3)}.share-link-input{width:100%;padding:11px 12px;border:1px solid var(--border);border-radius:10px;background:var(--bg);font-family:var(--mono);font-size:12px;color:var(--ink2)}.share-link-actions{display:flex;gap:8px}.share-link-actions .ghost-btn,.share-link-actions .primary-btn{flex:1}.share-divider{text-align:center;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink3);margin:18px 0 10px}.share-saved-note{background:var(--correct-bg);color:var(--correct);border:1px solid var(--correct-border);border-radius:10px;padding:8px 12px;font-size:13px;font-weight:600;margin-bottom:14px}.profile-hero{display:flex;align-items:center;gap:16px;margin-top:8px}.profile-avatar{font-size:44px;width:72px;height:72px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--gold-bg);border:1px solid var(--gold-border)}.profile-name{font-size:32px;line-height:1.05;margin-bottom:4px}.profile-tabs{display:flex;border:1px solid var(--border);border-radius:12px;overflow:hidden;margin-bottom:18px;background:var(--surface)}.profile-tab{flex:1;appearance:none;border:none;background:var(--surface);color:var(--ink2);font-family:inherit;font-size:13px;font-weight:700;padding:11px 12px;cursor:pointer;transition:background .18s ease,color .18s ease}.profile-tab+.profile-tab{border-left:1px solid var(--border)}.profile-tab.active{background:var(--ink);color:var(--surface)}.profile-details{display:flex;flex-direction:column;gap:10px;margin-bottom:26px}.profile-detail-row{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border:1px solid var(--border);border-radius:12px;background:var(--surface);font-size:14px}.profile-locked{text-align:center;padding:28px 18px;border:1px dashed var(--border);border-radius:16px;margin-bottom:18px}.profile-locked-icon{font-size:32px;margin-bottom:8px}.profile-locked-title{font-family:var(--serif);font-size:20px;margin-bottom:6px}.activity-section,.invite-panel{margin-bottom:26px}.invite-panel{display:flex;flex-direction:column;gap:18px}.invite-panel .form-row-stack{gap:10px}.invite-section{display:flex;flex-direction:column;gap:10px}.invite-section-title{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--ink3)}.s-history-btn{margin-top:8px}.activity-list{margin-bottom:0}.activity-mode-pill{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink2);background:var(--surface);border:1px solid var(--border);border-radius:100px;padding:3px 8px}.report-card-section{display:flex;flex-direction:column;gap:14px;margin-bottom:18px}.report-card-section .topic-breakdown{padding:18px 0 4px}.bank-accordion-list{display:flex;flex-direction:column;gap:10px}.bank-accordion{background:var(--surface);border:1px solid var(--border);border-radius:14px;overflow:hidden}.bank-accordion-header{width:100%;appearance:none;border:none;background:var(--surface);color:var(--ink);display:grid;grid-template-columns:minmax(0,1fr) auto 24px;align-items:center;gap:12px;padding:14px 16px;text-align:left;cursor:pointer;font-family:inherit}.bank-accordion-title{font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bank-accordion-meta{display:flex;gap:8px;color:var(--ink3);font-size:12px;font-weight:600;white-space:nowrap}.bank-accordion-arrow{justify-self:end;color:var(--ink3);font-size:13px;font-weight:800;transition:transform .2s ease}.bank-accordion.open .bank-accordion-arrow{transform:rotate(180deg)}.bank-accordion-body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .24s ease}.bank-accordion.open .bank-accordion-body{grid-template-rows:1fr}.bank-accordion-body-inner{min-height:0;overflow:hidden;border-top:1px solid transparent}.bank-accordion.open .bank-accordion-body-inner{border-top-color:var(--border);padding:14px 16px 16px}.bank-accordion-body .topic-breakdown{padding:16px 0 0}@media (max-width:520px){.profile-tabs{flex-direction:column}.profile-tab+.profile-tab{border-left:none;border-top:1px solid var(--border)}.bank-accordion-header{grid-template-columns:minmax(0,1fr) 24px}.bank-accordion-meta{grid-column:1/-1;grid-row:2;flex-wrap:wrap}.bank-accordion-arrow{grid-column:2;grid-row:1}}.student-list{display:flex;flex-direction:column;gap:10px}.student-card{display:flex;align-items:flex-start;gap:14px;padding:16px;background:var(--surface);border:1.5px solid var(--border);border-radius:14px;text-align:left;cursor:pointer;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.student-card:hover{transform:translateY(-2px);border-color:var(--ink2);box-shadow:0 8px 24px rgba(26,24,20,.06)}.student-avatar{font-size:32px;width:48px;height:48px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--gold-bg);border:1px solid var(--gold-border);flex-shrink:0}.student-info{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.student-name{font-size:15px;font-weight:600;color:var(--ink);display:flex;align-items:center;gap:6px;flex-wrap:wrap}.student-meta{font-size:12px;color:var(--ink2)}.student-stats{display:flex;gap:14px;font-size:12px;color:var(--ink3);flex-wrap:wrap}.student-report-link,.student-stats strong{color:var(--ink);font-weight:600}.student-report-link{align-self:flex-start;margin-top:4px;padding:4px 10px;font-size:12px;background:var(--gold-bg);border:1px solid var(--gold-border);border-radius:999px;cursor:pointer;transition:border-color .15s ease,background .15s ease}.student-report-link:hover{border-color:var(--ink2)}.student-report-empty{margin-top:4px;font-size:12px;color:var(--ink3)}.admin-table{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:12px;overflow:hidden;background:var(--surface)}.admin-table-header{display:grid;grid-template-columns:1.5fr 1.5fr 1fr .8fr .8fr 1fr;gap:8px;padding:10px 14px;background:var(--bg);border-bottom:1px solid var(--border);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink3)}.admin-table-header-cell{text-align:left;background:none;border:none;color:inherit;font:inherit;cursor:default;padding:0}.admin-table-header-cell.sortable{cursor:pointer;transition:color .15s}.admin-table-header-cell.sortable.active,.admin-table-header-cell.sortable:hover{color:var(--ink)}.sort-indicator{margin-left:4px;font-weight:700}.admin-table-body{display:flex;flex-direction:column}.admin-table-row{display:grid;grid-template-columns:1.5fr 1.5fr 1fr .8fr .8fr 1fr;gap:8px;padding:12px 14px;align-items:center;text-align:left;background:none;border:none;border-bottom:1px solid var(--border);color:inherit;font:inherit;cursor:pointer;font-size:13px;transition:background .12s}.admin-table-row:last-child{border-bottom:none}.admin-table-row:hover{background:var(--bg)}.admin-table-cell{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-filter-row{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap}.admin-search{flex:1;min-width:160px;padding:9px 12px}.admin-search,.admin-select{appearance:none;border:1px solid var(--border);background:var(--surface);color:var(--ink);font-family:inherit;font-size:13px;border-radius:10px}.admin-select{-webkit-appearance:none;padding:9px 28px 9px 12px;cursor:pointer;background-image:linear-gradient(45deg,transparent 50%,currentColor 0),linear-gradient(135deg,currentColor 50%,transparent 0);background-position:calc(100% - 10px) 50%,calc(100% - 6px) 50%;background-size:4px 4px,4px 4px;background-repeat:no-repeat}.admin-load-more{margin-top:14px;text-align:center}.admin-access-tool{display:flex;flex-direction:column;gap:10px;margin-top:18px;padding:14px;border:1px solid var(--border);border-radius:12px;background:var(--bg)}.admin-access-tool .muted{padding:4px 0 0;text-align:left}.admin-access-controls{display:grid;grid-template-columns:minmax(180px,1fr) auto auto auto;gap:8px;align-items:center}.admin-access-check{display:inline-flex;align-items:center;gap:8px;min-height:38px;color:var(--ink2);font-size:13px;font-weight:600;white-space:nowrap}.admin-access-check input{width:16px;height:16px;accent-color:var(--ink)}.admin-access-submit{width:auto;min-width:92px;padding:10px 16px;border-radius:10px;font-size:13px}@media (max-width:640px){.admin-access-controls{grid-template-columns:1fr}.admin-access-submit{width:100%}}.role-badge{display:inline-block;padding:3px 10px;border-radius:100px;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:capitalize}.role-student{background:#EEF5F1;color:#2D5A3D}.role-teacher{background:#F0EDF7;color:#5B4A8C}.role-parent{background:#F7F0E8;color:#8B5A2B}.role-admin{background:#F8EEEE;color:#B43F3F}.success-text{color:#2D5A3D;font-size:13px;margin-top:8px;text-align:left}.tab-bar{display:flex;gap:4px;margin-top:18px;background:var(--bg);border:1px solid var(--border);border-radius:12px;padding:4px;overflow:hidden}.tab-btn{flex:1;appearance:none;border:none;background:transparent;color:var(--ink2);font-family:inherit;font-size:13px;font-weight:600;padding:9px 14px;border-radius:10px;cursor:pointer;transition:background .18s ease,color .18s ease}.tab-btn.active{background:var(--ink);color:var(--surface)}.filter-bar{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.filter-bar .class-switcher-select{min-width:120px}.trend-chart{display:flex;align-items:flex-end;gap:8px;height:140px;padding:12px 8px;background:var(--bg);border:1px solid var(--border);border-radius:14px;overflow-x:auto}.trend-bar-wrap{display:flex;flex-direction:column;align-items:center;gap:6px;flex:1;min-width:32px}.trend-bar{width:100%;max-width:28px;min-height:4px;border-radius:4px 4px 0 0;transition:height .5s cubic-bezier(.16,1,.3,1)}.trend-label{font-size:9px;color:var(--ink3);font-family:var(--mono);text-align:center;white-space:nowrap;transform:rotate(-30deg);transform-origin:top left;margin-top:4px}@media (max-width:640px){.admin-table-header,.admin-table-row{grid-template-columns:1.5fr 1fr .8fr .8fr 1fr}.admin-table-cell:nth-child(2),.admin-table-header-cell:nth-child(2){display:none}}@media (max-width:520px){.admin-table-header,.admin-table-row{grid-template-columns:1.5fr .8fr .8fr 1fr}.admin-table-cell:nth-child(3),.admin-table-header-cell:nth-child(3){display:none}}@media (max-width:480px){.filter-bar,.tab-bar{flex-direction:column}.filter-bar{align-items:stretch}.filter-bar .class-switcher-select{width:100%}}.start-top{position:relative}.header-bell{position:absolute;top:16px;right:16px;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border:1px solid var(--border);border-radius:50%;background:var(--surface);font-size:17px;line-height:1;text-decoration:none;transition:border-color .15s,background .15s}.header-bell:hover{border-color:var(--ink3)}.notification-bell-icon-wrap{position:relative;display:inline-block}.notification-bell-badge{position:absolute;top:-6px;right:-10px;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:var(--wrong);color:#fff;font-size:10px;font-weight:700;line-height:16px;text-align:center}.notification-list-container{display:flex;flex-direction:column;gap:8px}.notification-list-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.notification-list-title{font-size:13px;font-weight:600;color:var(--ink2)}.notification-item{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;border:1px solid var(--border);border-radius:12px;background:var(--surface);text-align:left;font:inherit;color:inherit;cursor:pointer;transition:background .12s,border-color .12s}.notification-item:hover{background:var(--bg)}.notification-item.unread{border-color:var(--gold-border);background:var(--gold-bg)}.notification-icon{font-size:20px;line-height:1.2}.notification-content{flex:1;min-width:0}.notification-title{font-weight:600;font-size:14px}.notification-body{font-size:13px;color:var(--ink2);margin-top:2px}.notification-time{font-size:11px;color:var(--ink3);margin-top:4px}.notification-dot{width:8px;height:8px;border-radius:50%;background:var(--gold);margin-top:6px;flex-shrink:0}.personalized-badge{display:inline-block;margin-left:6px;padding:1px 7px;border-radius:999px;background:var(--gold-bg);border:1px solid var(--gold-border);color:var(--gold);font-size:10px;font-weight:700;letter-spacing:.02em;vertical-align:middle;white-space:nowrap}.weekly-report-content{font-size:13px;line-height:1.65;color:var(--ink)}.weekly-report-content .wr-h1{font-family:var(--serif);font-size:20px;margin:12px 0 6px}.weekly-report-content .wr-h2{font-family:var(--serif);font-size:17px;margin:12px 0 4px}.weekly-report-content .wr-h3{font-size:14px;font-weight:700;margin:10px 0 4px}.weekly-report-content .wr-p{margin:4px 0}.weekly-report-content .wr-ol,.weekly-report-content .wr-ul{margin:6px 0;padding-left:22px}.weekly-report-content .wr-hr{border:none;border-top:1px solid var(--border);margin:12px 0}.weekly-report-content .wr-code{font-family:var(--mono);font-size:12px;background:var(--bg);padding:1px 5px;border-radius:4px}.weekly-report-content .wr-table{width:100%;border-collapse:collapse;margin:8px 0;font-size:12px}.weekly-report-content .wr-table td,.weekly-report-content .wr-table th{border:1px solid var(--border);padding:5px 8px;text-align:left}.weekly-report-content .wr-table th{background:var(--bg);font-weight:600}.settings-section-card{gap:10px;padding:0;border:0;background:transparent;box-shadow:none;overflow:visible}.settings-back-button{align-self:flex-start;height:auto;padding:0}.settings-tabs{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px;margin-bottom:18px}.settings-tab-button{width:100%}.settings-tab-panel{display:flex;flex-direction:column;gap:14px}.settings-avatar-button{width:100%;min-height:48px}.settings-avatar-button span{font-size:22px;line-height:1}.settings-actions{display:flex;flex-direction:column;gap:8px;margin-top:14px}.settings-divider{border:0;border-top:1px solid var(--border);margin:18px 0}.settings-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.settings-toggle-label{display:flex;flex-direction:column;gap:2px;font-size:14px;color:var(--ink);font-weight:500}.settings-toggle-label small{font-size:12px;color:var(--ink3);font-weight:400}.invite-list{display:flex;flex-direction:column;gap:8px}.invite-row{justify-content:space-between;gap:10px;padding:10px 14px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.invite-meta,.invite-row{display:flex;align-items:center}.invite-meta{gap:8px;flex-wrap:wrap;font-size:14px;color:var(--ink);min-width:0;flex:1}.guardian-card{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.guardian-avatar{font-size:26px;line-height:1;width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--gold-bg);border:1px solid var(--gold-border);flex-shrink:0}.guardian-meta{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.guardian-meta strong{font-size:14px;color:var(--ink)}.guardian-meta .muted{font-size:12px;color:var(--ink3);text-align:left;padding:0}.dashboard-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:16px;flex-wrap:wrap}.dashboard-header-title{font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ink3)}.dashboard-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:14px}@media (max-width:480px){.dashboard-cards{grid-template-columns:1fr}}.dashboard-card{background:var(--surface);border:1.5px solid var(--border);border-radius:14px;padding:18px 16px 14px;cursor:pointer;text-align:left;font-family:inherit;color:inherit;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.dashboard-card:hover{transform:translateY(-2px);border-color:var(--ink2);box-shadow:0 8px 24px rgba(26,24,20,.06)}.dashboard-card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.dashboard-card-name{font-family:var(--serif);font-size:22px;color:var(--ink);line-height:1}.dashboard-card-count{font-size:13px;font-weight:600;color:var(--ink3)}.dashboard-card-stats{display:flex;gap:16px;font-size:12px;color:var(--ink3);font-weight:500;flex-wrap:wrap}.dashboard-card-stats strong{color:var(--ink);font-family:var(--serif);font-size:15px;font-weight:400;margin-left:4px}.class-switcher{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.add-class-btn{display:inline-flex;align-items:center;gap:4px;padding:7px 14px;border:1px dashed var(--border2);border-radius:10px;background:transparent;color:var(--ink2);font-family:inherit;font-size:13px;font-weight:500;cursor:pointer;transition:border-color .15s,color .15s,background .15s}.add-class-btn:hover{border-color:var(--ink);color:var(--ink);background:var(--bg)}.standard-chip-wrap{position:relative;display:inline-flex;align-items:center}.standard-chip-remove{position:absolute;top:-6px;right:-6px;width:20px;height:20px;border-radius:50%;background:var(--surface);border:1px solid var(--border);color:var(--ink3);font-size:12px;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:color .15s,border-color .15s;padding:0}.standard-chip-remove:hover{color:var(--wrong);border-color:var(--wrong)}.available-count,.back-to-overview{font-size:12px;color:var(--ink3);font-weight:500}.back-to-overview{display:inline-flex;align-items:center;gap:4px;cursor:pointer;padding:4px 0;margin-bottom:10px;border:none;background:transparent;font-family:inherit;transition:color .15s}.back-to-overview:hover{color:var(--ink)}.drilldown-heading{font-family:var(--serif);font-size:22px;color:var(--ink);margin-bottom:4px}.drilldown-sub{font-size:12px;color:var(--ink3);margin-bottom:14px}.assign-prompt{text-align:center;margin-bottom:16px}.assign-prompt-title{font-family:var(--serif);font-size:20px;color:var(--ink);margin-bottom:6px}.assign-prompt-sub{font-size:13px;color:var(--ink2);margin-bottom:4px}