/*! 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,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--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-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-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;--tw-duration:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", "PingFang SC", "Microsoft YaHei", "Helvetica Neue", Arial, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-white:#fff;--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-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--font-weight-black:900;--radius-sm:.25rem;--radius-xl:.75rem;--radius-2xl:1rem;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-brand-500:#0a84ff;--color-brand-600:#0071e3;--color-brand-700:#0062c4;--color-study-purple:#8b5cf6}}@layer base{*,:after,:before,::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]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}[v-cloak]{display:none}button,[role=button],a{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--accent,#0071e3)}@supports (color:color-mix(in lab, red, red)){:focus-visible{outline:3px solid color-mix(in srgb, var(--accent,#0071e3) 32%, transparent)}}:focus-visible{outline-offset:3px}}@layer components{.ui-squircle{border-radius:1.25rem}.ui-glass{background:var(--ui-surface,#fff)}@supports (color:color-mix(in lab, red, red)){.ui-glass{background:color-mix(in srgb, var(--ui-surface,#fff) 82%, transparent)}}.ui-glass{border:1px solid var(--border,#0f172a1a);-webkit-backdrop-filter:saturate(150%)blur(22px);backdrop-filter:saturate(150%)blur(22px);box-shadow:0 16px 45px #0f172a14}}@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-x-3{inset-inline:calc(var(--spacing) * 3)}.right-0{right:0}.-bottom-\[1px\]{bottom:-1px}.left-0{left:0}.isolate{isolation:isolate}.z-50{z-index:50}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.mx-auto{margin-inline:auto}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-auto{margin-left:auto}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.size-2{width:calc(var(--spacing) * 2);height:calc(var(--spacing) * 2)}.size-3\.5{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.size-10{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.size-\[17px\]{width:17px;height:17px}.size-\[18px\]{width:18px;height:18px}.h-0\.5{height:calc(var(--spacing) * .5)}.h-9{height:calc(var(--spacing) * 9)}.max-h-72{max-height:calc(var(--spacing) * 72)}.min-h-\[68px\]{min-height:68px}.w-60{width:calc(var(--spacing) * 60)}.w-64{width:calc(var(--spacing) * 64)}.w-full{width:100%}.max-w-48{max-width:calc(var(--spacing) * 48)}.max-w-\[1440px\]{max-width:1440px}.min-w-0{min-width:0}.flex-shrink,.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.border-collapse{border-collapse:collapse}.origin-top-left{transform-origin:0 0}.-translate-y-1{--tw-translate-y:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-2{--tw-translate-y:calc(var(--spacing) * -2);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-0{--tw-translate-y:0px;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-1{--tw-translate-y:var(--spacing);translate:var(--tw-translate-x) var(--tw-translate-y)}.scale-95{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}.scale-100{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-pointer{cursor:pointer}.resize{resize:both}.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}.justify-between{justify-content:space-between}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-\[13px\]{border-radius:13px}.rounded-\[14px\]{border-radius:14px}.rounded-\[18px\]{border-radius:18px}.rounded-\[20px\]{border-radius:20px}.rounded-full{border-radius:3.40282e38px}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-\[var\(--border\)\]{border-color:var(--border)}.bg-\[var\(--ui-blue-soft\)\]{background-color:var(--ui-blue-soft)}.bg-\[var\(--ui-surface\)\]{background-color:var(--ui-surface)}.bg-\[var\(--ui-surface-muted\)\]{background-color:var(--ui-surface-muted)}.bg-brand-600{background-color:var(--color-brand-600)}.bg-study-purple{background-color:var(--color-study-purple)}.bg-gradient-to-br{--tw-gradient-position:to bottom right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-brand-500{--tw-gradient-from:var(--color-brand-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-brand-700{--tw-gradient-to:var(--color-brand-700);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.p-2{padding:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.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-\[9px\]{font-size:9px}.text-\[10px\]{font-size:10px}.text-\[13px\]{font-size:13px}.text-\[15px\]{font-size:15px}.leading-none{--tw-leading:1;line-height:1}.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)}.font-extrabold{--tw-font-weight:var(--font-weight-extrabold);font-weight:var(--font-weight-extrabold)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[-0\.02em\]{--tw-tracking:-.02em;letter-spacing:-.02em}.tracking-\[0\.15em\]{--tw-tracking:.15em;letter-spacing:.15em}.text-\[var\(--muted\)\]{color:var(--muted)}.text-\[var\(--text\)\]{color:var(--text)}.text-\[var\(--ui-blue\)\]{color:var(--ui-blue)}.text-\[var\(--ui-red\)\]{color:var(--ui-red)}.text-white{color:var(--color-white)}.no-underline{text-decoration-line:none}.underline{text-decoration-line:underline}.opacity-0{opacity:0}.opacity-100{opacity:1}.shadow-\[0_8px_20px_rgba\(0\,113\,227\,0\.2\)\]{--tw-shadow:0 8px 20px var(--tw-shadow-color,#0071e333);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[0_8px_22px_rgba\(0\,113\,227\,0\.24\)\]{--tw-shadow:0 8px 22px var(--tw-shadow-color,#0071e33d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);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,)}.invert{--tw-invert:invert(100%);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,)}.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,)}.backdrop-filter{-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,)}.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-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}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.ease-in{--tw-ease:var(--ease-in);transition-timing-function:var(--ease-in)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}@media (hover:hover){.group-hover\:-translate-y-0\.5:is(:where(.group):hover *){--tw-translate-y:calc(var(--spacing) * -.5);translate:var(--tw-translate-x) var(--tw-translate-y)}.hover\:border-brand-500:hover{border-color:var(--color-brand-500)}.hover\:bg-\[var\(--ui-red-soft\)\]:hover{background-color:var(--ui-red-soft)}.hover\:bg-\[var\(--ui-surface-muted\)\]:hover{background-color:var(--ui-surface-muted)}.hover\:bg-brand-700:hover{background-color:var(--color-brand-700)}.hover\:text-\[var\(--text\)\]:hover{color:var(--text)}.hover\:text-\[var\(--ui-red\)\]:hover{color:var(--ui-red)}.hover\:text-brand-600:hover{color:var(--color-brand-600)}}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}@media (width>=40rem){.sm\:block{display:block}.sm\:px-6{padding-inline:calc(var(--spacing) * 6)}}@media (width>=64rem){.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:px-8{padding-inline:calc(var(--spacing) * 8)}}@media (width>=80rem){.xl\:block{display:block}}}:root{--bg:#f8fafc;--bg-deep:#f1f5f9;--panel:#fff;--panel-glass:#ffffffb3;--ink:#0f172a;--sub:#64748b;--line:#e2e8f0;--line-light:#e2e8f080;--accent:#f97316;--accent-glow:#f973164d;--accent-deep:#ea580c;--accent-soft:#fff7ed;--secondary:#6366f1;--secondary-soft:#eef2ff;--ok:#10b981;--ok-soft:#ecfdf5;--danger:#ef4444;--danger-soft:#fef2f2;--warn:#f59e0b;--warn-soft:#fffbeb;--elev-sm:0 1px 3px #0000001a;--elev:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--elev-lg:0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000001a;--radius:16px;--radius-xl:24px;--radius-sm:8px;--gap:16px;--blur:blur(12px)}.theme-dark,html.theme-dark{--bg:#0f172a;--bg-deep:#020617;--panel:#1e293b;--panel-glass:#1e293bb3;--ink:#f8fafc;--sub:#94a3b8;--line:#334155;--line-light:#33415580;--accent:#fb923c;--accent-glow:#fb923c33;--accent-soft:#fb923c1a;--secondary:#818cf8;--secondary-soft:#818cf81a}html.theme-dark{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body{color:var(--ink);background:radial-gradient(circle at 0% 0%, var(--accent-soft) 0%, transparent 40%), radial-gradient(circle at 100% 100%, var(--secondary-soft) 0%, transparent 40%), var(--bg);min-height:100vh;font-family:var(--ui-font,-apple-system, BlinkMacSystemFont, "PingFang SC", sans-serif);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;line-height:1.6;transition:background-color .4s,color .4s}h1,h2,h3{font-family:var(--ui-font,-apple-system, BlinkMacSystemFont, "PingFang SC", sans-serif);letter-spacing:.01em}.brand-block h1{color:#0000;text-shadow:0 0 24px #ffab8c38;background:linear-gradient(120deg,#fff 0%,#ffd3bf 30%,#fff 58%,#b4d3ff 100%) 0 0/220% 220%;-webkit-background-clip:text;background-clip:text;animation:7s ease-in-out infinite brandFlow}@keyframes brandFlow{0%,to{background-position:0%}50%{background-position:100%}}a{color:var(--accent-deep)}.site-header{z-index:100;-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);background:var(--panel-glass);border-bottom:1px solid var(--line-light);padding:12px 0;transition:all .3s cubic-bezier(.4,0,.2,1);position:sticky;top:0}.site-header .container{max-width:1100px;padding-left:18px;padding-right:18px}.header-top{justify-content:space-between;align-items:flex-start;gap:14px;max-width:1140px;margin:0 auto;display:flex}.brand-block h1{white-space:nowrap;background:linear-gradient(135deg, var(--accent), var(--secondary));color:#0000;-webkit-background-clip:text;background-clip:text;margin:0;font-size:1.5rem;font-weight:700}.brand-eyebrow{color:var(--accent);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;margin:0;font-size:.75rem;font-weight:600}.brand-subtitle{color:var(--sub);margin:0;font-size:.875rem}.container{max-width:900px;margin:0 auto;padding:0 18px}.header-main{justify-content:space-between;align-items:center;gap:32px;min-height:58px;display:flex;position:relative}.header-main>.brand-block{flex-shrink:0;margin-left:0}.header-main>.user-controls{white-space:nowrap;flex-shrink:0}.nav-links{flex:1;justify-content:center;align-items:center;gap:8px;display:flex}.nav-item{color:var(--sub);white-space:nowrap;border-radius:12px;padding:8px 16px;font-size:.9375rem;font-weight:500;text-decoration:none;transition:all .2s}.nav-item:hover{background:var(--bg-deep);color:var(--ink)}.nav-item.active{background:var(--accent-soft);color:var(--accent);font-weight:600}.nav-more{flex:none;position:relative}.nav-more summary{color:var(--sub);white-space:nowrap;cursor:pointer;border-radius:12px;padding:8px 13px;font-size:.9375rem;font-weight:500;list-style:none}.nav-more summary::-webkit-details-marker{display:none}.nav-more summary:hover,.nav-more.active summary,.nav-more[open] summary{background:var(--bg-deep);color:var(--ink)}.nav-more.active summary{background:var(--accent-soft);color:var(--accent);font-weight:600}.nav-more-menu{z-index:180;border:1px solid var(--line-light);background:var(--panel);width:158px;box-shadow:var(--elev-lg);border-radius:13px;padding:7px;position:absolute;top:calc(100% + 8px);right:0}.nav-more-menu a{color:var(--ink);border-radius:9px;padding:9px 10px;font-size:12px;text-decoration:none;display:block}.nav-more-menu a:hover{background:var(--bg-deep);color:var(--accent-deep)}.user-controls{align-items:center;gap:16px;display:flex}.nav-logout{background:var(--danger-soft);color:var(--danger);border-radius:12px;padding:8px 16px;font-size:.875rem;font-weight:600;text-decoration:none;transition:all .2s}.nav-logout:hover{background:var(--danger);color:#fff}.topline{align-items:center;gap:12px;display:flex}.topline select{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg-deep);width:auto;min-width:140px;margin-top:0;padding:8px 12px;font-size:.875rem}.main-nav{flex-wrap:wrap;gap:8px;display:flex}.main-nav-primary{align-items:center}.main-nav-secondary{padding-top:8px}.nav-pill{color:var(--sub);background:var(--bg-deep);border:1px solid var(--line);border-radius:9999px;padding:8px 16px;font-size:.875rem;font-weight:500;text-decoration:none;transition:all .2s}.nav-pill:hover{background:var(--line);color:var(--ink);transform:translateY(-1px)}.nav-pill-primary{background:var(--accent);border-color:var(--accent);color:#fff}.nav-pill-primary:hover{background:var(--accent-deep);border-color:var(--accent-deep);color:#fff;box-shadow:0 4px 12px var(--accent-glow)}.nav-pill-danger{background:#d5393940;border-color:#ffadad80}.nav-more{background:#ffffff0f;border:1px solid #fff3;border-radius:14px;padding:0 10px 8px}.nav-more summary{cursor:pointer;-webkit-user-select:none;user-select:none;letter-spacing:.04em;color:#ffffffd6;padding:8px 0 4px;font-size:12px}.nav-more[open]{background:#ffffff1c}.auth-nav{align-items:center;gap:10px;display:flex}h2{margin:0 0 10px;font-size:clamp(22px,2.8vw,30px);line-height:1.15}h3{margin:0 0 10px;font-size:18px}.cards{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;display:grid}.cards-focus{margin-top:16px}.page-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.page-header h2{margin:0;font-size:2rem}.search-filter-belt{flex-direction:column;gap:16px;margin-bottom:32px;display:flex}@media (width>=992px){.search-filter-belt{flex-direction:row;justify-content:space-between;align-items:center}}.search-bar{flex:1;max-width:480px;position:relative}.search-bar .search-icon{opacity:.5;position:absolute;top:50%;left:16px;transform:translateY(-50%)}.search-bar input{padding-left:44px}.filter-group{align-items:center;gap:8px;padding-bottom:4px;display:flex;overflow-x:auto}.filter-chip{background:var(--panel);border:1px solid var(--line);color:var(--sub);white-space:nowrap;border-radius:9999px;padding:6px 14px;font-size:.875rem;font-weight:500;text-decoration:none;transition:all .2s}.filter-chip:hover{border-color:var(--accent);background:var(--bg-deep)}.filter-chip.active{background:var(--accent);color:#fff;border-color:var(--accent)}.words-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px;display:grid}.word-card{padding:0;overflow:hidden}.word-card-top{background:#00000005;justify-content:space-between;align-items:center;padding:8px 14px;display:flex}.word-card-mid{padding:14px}.word-title-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.word-title-row .word-title{margin:0}.word-edit-btn{flex-shrink:0}.meta.word-memory-tip{color:#d4380d;margin-top:6px;font-weight:600;line-height:1.5}.words-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.words-actions .btn{min-height:40px}.answer-panel summary{cursor:pointer;padding:8px 0}.word-card-stats{border-top:1px solid var(--line-light);background:#00000003;display:flex}.stat-item{border-right:1px solid var(--line-light);flex-direction:column;flex:1;align-items:center;padding:8px 6px;display:flex}.batch-assign-panel summary::-webkit-details-marker{display:none}.batch-select{border:1px solid var(--line-light,#d1d5db);background:var(--input-bg,#fff);border-radius:8px;min-width:120px;padding:5px 8px;font-size:.85rem}.batch-input{border:1px solid var(--line-light,#d1d5db);background:var(--input-bg,#fff);border-radius:8px;min-width:130px;padding:5px 8px;font-size:.85rem}.batch-select:focus,.batch-input:focus{border-color:var(--accent);outline:none}.stat-item:last-child{border-right:none}.stat-item .val{color:var(--ink);font-size:.9375rem;font-weight:700;font-family:var(--ui-font,-apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif)}.stat-item .lbl{color:var(--sub);text-transform:uppercase;letter-spacing:.05em;margin-top:2px;font-size:.625rem;font-weight:600}.mission-card,.progress,.study-card{background:var(--panel);border-radius:var(--radius-xl);border:1px solid var(--line);box-shadow:var(--elev);margin-top:16px;padding:32px;transition:all .3s cubic-bezier(.4,0,.2,1)}.study-card{text-align:center;background:linear-gradient(145deg, var(--panel), var(--bg-deep));max-width:600px;margin-left:auto;margin-right:auto}.study-card h2{letter-spacing:-.02em;word-break:break-word;overflow-wrap:break-word;margin-bottom:.5rem;font-size:2.5rem;font-weight:700}.mission-card{border-radius:var(--radius-xl);background:linear-gradient(135deg, var(--panel) 0%, var(--accent-soft) 100%);border:1px solid var(--accent-soft);box-shadow:var(--elev-lg);margin-top:0;padding:32px;position:relative;overflow:hidden}.mission-card:before{content:"";background:radial-gradient(circle, var(--accent-glow) 0%, transparent 70%);z-index:0;width:300px;height:300px;position:absolute;top:-50%;right:-20%}.mission-card:after{content:"";pointer-events:none;background:radial-gradient(circle,#ff875b4d 0%,#ff875b00 70%);border-radius:50%;width:260px;height:260px;position:absolute;top:-70px;right:-65px}.mission-kicker{text-transform:uppercase;letter-spacing:.08em;color:var(--accent-deep);margin:0 0 8px;font-size:12px;font-weight:700}.mission-copy{max-width:760px;color:var(--sub);margin:0}.mission-progress{margin-top:12px}.mission-actions{margin-top:14px}.dashboard-grid{grid-template-columns:1.2fr 1fr;gap:12px;margin-top:16px;display:grid}.bar{background:var(--line-light);border-radius:9999px;height:12px;position:relative;overflow:hidden}.bar span{background:linear-gradient(90deg, var(--accent), var(--secondary));height:100%;box-shadow:0 0 10px var(--accent-glow);border-radius:9999px;transition:width 1s cubic-bezier(.34,1.56,.64,1);display:block}.btn,button{background:linear-gradient(140deg, var(--accent) 0%, #ff7a45 100%);color:#fff;cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;padding:10px 15px;font-weight:700;text-decoration:none;transition:transform .18s,box-shadow .18s,filter .18s;display:inline-flex}.btn:hover,button:hover{filter:saturate(1.04);transform:translateY(-1px);box-shadow:0 8px 18px #ff5a1f47}.btn:focus-visible,button:focus-visible{outline:3px solid var(--accent);outline-offset:2px;box-shadow:0 0 0 5px #ff5a1f2e}.btn-primary{min-width:126px}.btn-xl{min-width:170px;padding:12px 22px}.btn-soft,button.ghost{color:#2b3443;box-shadow:none;background:#fff;border:1px solid #d9e0ea}.btn-soft:hover,button.ghost:hover{box-shadow:0 4px 12px #141c291a}button:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;transform:none}.badge-dot{vertical-align:middle;background:#ff4d4f;border-radius:50%;width:10px;height:10px;margin-left:6px;display:inline-block}.stack label{color:var(--sub);margin-bottom:20px;font-weight:600;display:block}.stack input,.stack select{margin-top:8px}.battle-hero{border-radius:var(--radius-xl);color:#fff;background:linear-gradient(135deg,#1e1b4b 0%,#4f46e5 45%,#dc2626 100%);margin-bottom:24px;padding:48px 32px;position:relative;overflow:hidden;box-shadow:0 8px 32px #4f46e54d,0 2px 8px #dc262633}.battle-hero:after{content:"";opacity:.7;background:radial-gradient(circle,#dc262659 0%,#0000 70%);width:400px;height:400px;position:absolute;top:-50%;right:-10%}.battle-hero h2{background:linear-gradient(135deg, #fff, var(--accent));color:#0000;-webkit-background-clip:text;background-clip:text;margin:0;font-size:2.5rem}.battle-hero .meta{color:#ffffffb3;margin-top:12px;font-size:1.125rem}.battle-stats-link{margin-top:24px}.battle-form{margin-top:20px}.battle-main-cta{width:100%;margin-top:12px}.battle-rooms-table{margin-top:12px}.battle-row-enter{min-width:84px}input,textarea,select{width:100%;color:var(--ink);font:inherit;background:#fff;border:1px solid #cfd7e4;border-radius:12px;margin-top:6px;padding:10px 11px}input:focus,textarea:focus,select:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #ff5a1f24}.spell-input{letter-spacing:.5px;background:#fffdfa;border-width:1.5px;max-width:380px;font-size:18px}.flash{margin:10px 0;padding:0;list-style:none}.flash li{color:#63320f;background:#fff4e8;border:1px solid #ffddbf;border-radius:12px;margin-bottom:8px;padding:9px 12px}table{border-collapse:collapse;background:#fff;border:1px solid #dde3ec;border-radius:14px;width:100%;overflow:hidden}th,td{text-align:left;border-bottom:1px solid #edf1f6;padding:11px 12px;font-size:13px}th{background:#f7f9fd;font-weight:700}.inline-form{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px;display:flex}.quick-actions{flex-wrap:wrap;gap:10px;margin-top:12px;display:flex}.quick-actions .btn{min-height:40px}.rating{grid-template-columns:repeat(2,1fr);gap:12px;margin-top:24px;display:grid}@media (width>=640px){.rating{grid-template-columns:repeat(4,1fr)}}.rating button{flex-direction:column;height:64px;padding:8px;font-size:.875rem;display:flex}.rating .rating-key{opacity:.7;margin-bottom:2px;font-size:.75rem}.bad{background:#c9473f}.good{background:#23985f}.meta{color:var(--sub);font-size:13px}.auth-wrap{justify-content:center;margin-top:18px;display:flex}.auth-grid{grid-template-columns:1.05fr .95fr;align-items:stretch;gap:14px;width:100%;display:grid}.auth-intro{background:linear-gradient(135deg, var(--panel), var(--secondary-soft));border-color:var(--secondary-soft)}.auth-benefits{gap:12px;margin:20px 0 0;padding:0;list-style:none;display:grid}.auth-benefits li{color:var(--sub);padding-left:24px;font-size:.9375rem;position:relative}.auth-benefits li:before{content:"✦";color:var(--accent);font-weight:700;position:absolute;left:0}.auth-benefits strong{color:var(--ink);font-weight:600}.auth-card{width:100%;max-width:470px;box-shadow:var(--elev);background:#fff;border:1px solid #e1e7ef;border-radius:18px;padding:24px}.auth-card h2{margin:0 0 7px}.auth-card button{margin-top:4px}.auth-register input,.auth-login input{padding:11px 12px}.result-pop{margin-top:10px;font-weight:700;animation:.35s popIn}.result-ok{color:var(--ok)}.result-bad{color:var(--danger)}@keyframes popIn{0%{opacity:.24;transform:scale(.86)}to{opacity:1;transform:scale(1)}}@keyframes revealUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.mission-card,.cards,.progress,.study-card{animation:.4s both revealUp}.round-transition{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:9000;background:#0006;justify-content:center;align-items:center;animation:.3s fadeIn;display:flex;position:fixed;inset:0}.round-transition-card{background:var(--panel);border-radius:var(--radius-xl);text-align:center;box-shadow:var(--elev-lg);flex-direction:column;align-items:center;gap:16px;padding:40px;display:flex}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.chat-box{border-radius:var(--radius);background:var(--bg-deep);scroll-behavior:smooth;flex-direction:column;gap:8px;height:300px;padding:16px;display:flex;overflow-y:auto}.chat-line{background:var(--panel);max-width:85%;box-shadow:var(--elev-sm);border-radius:12px;align-self:flex-start;padding:8px 12px;font-size:.875rem;line-height:1.4;position:relative}.chat-line.mine{background:var(--accent);color:#fff;align-self:flex-end}.chat-line.mention{border:1px solid var(--accent);background:var(--accent-soft)}.chat-line strong{opacity:.7;margin-bottom:2px;font-size:.75rem;display:block}.chat-line .meta{opacity:.6;text-align:right;margin-top:4px;font-size:.625rem;display:block}.mention-tag{color:#af5200;font-weight:700}.room-meta-line{flex-wrap:wrap;align-items:center;gap:8px 12px;margin:10px 0;display:flex}.link-share-row{align-items:center;gap:8px;margin:10px 0;display:flex}.link-share-row span{white-space:nowrap}.link-share-row input{margin-top:0}.token-reset-form{margin:0;display:inline-flex}.battle-room-head{margin-top:12px;margin-bottom:12px;padding:16px}.battle-room-head .link-share-row{border:1px solid var(--line);background:var(--bg-deep);border-radius:12px;padding:8px 10px}.calendar-grid{grid-template-columns:repeat(10,1fr);gap:8px;margin-top:12px;display:grid}.calendar-grid .cell{text-align:center;background:#f1f4f9;border-radius:8px;padding:8px 0;font-size:12px}.calendar-grid .lv1{background:#ffd5bf}.calendar-grid .lv2{background:#ffae87}.calendar-grid .lv3{color:#fff;background:#f17846}.mcq-card{max-width:760px;margin:18px auto 0}.mcq-title{margin-bottom:14px;font-size:28px}.mcq-options{gap:6px;margin:8px 0 10px;display:grid}.mcq-option{cursor:pointer;background:#fff;border:1px solid #d8e0eb;border-radius:12px;grid-template-columns:34px 1fr;align-items:center;gap:10px;padding:12px;transition:all .16s;display:grid}.mcq-option:hover{background:#fff8f3;border-color:#f2b18f}.mcq-option input{opacity:0;width:0;height:0;margin:0}.mcq-badge{width:30px;height:30px;color:var(--accent-deep);background:#ffece2;border-radius:50%;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.mcq-text{color:var(--ink)}.mcq-option input:checked+.mcq-badge{background:var(--accent);color:#fff}.mcq-option:has(input:checked){border-color:var(--accent);background:#fff3ec;box-shadow:inset 0 0 0 2px #ff5a1f29}.mcq-submit{width:180px}@media (width<=980px){.dashboard-grid{grid-template-columns:1fr}}@media (width<=768px){.site-header .container{padding-left:10px;padding-right:10px}body{font-size:16px;line-height:1.65}.container{padding:0 16px}.site-header{position:sticky}.auth-grid{grid-template-columns:1fr}.header-top{flex-direction:column;align-items:flex-start}.header-main{flex-wrap:wrap;gap:12px}.nav-item{min-height:44px;font-size:1rem}.nav-logout{min-height:44px;padding:10px 14px}.user-controls{flex-wrap:wrap;gap:10px}.topline{justify-content:flex-start;min-width:0}.topline select{min-width:140px;max-width:100%}.search-filter-belt{gap:12px}.filter-group{-webkit-overflow-scrolling:touch;gap:10px;padding-bottom:6px}.filter-chip{min-height:44px;padding:10px 16px;font-size:.95rem}.rating{grid-template-columns:1fr 1fr}.rating button{height:auto;min-height:72px;font-size:1rem}.btn,button{touch-action:manipulation;min-height:44px;padding:12px 16px}a{-webkit-tap-highlight-color:#0000}input,textarea,select{min-height:44px;padding:12px 14px;font-size:16px}textarea{resize:vertical;min-height:96px}.inline-form{flex-direction:column;align-items:stretch;gap:12px}.inline-form .btn,.inline-form button,.inline-form input,.inline-form select,.inline-form textarea{width:100%}.quick-actions{flex-direction:column;align-items:stretch;gap:12px}.quick-actions .btn,.quick-actions button{width:100%}.battle-hero{border-radius:18px;padding:28px 18px}.battle-hero h2{font-size:1.9rem}.battle-hero .meta{font-size:1rem}.spell-input{max-width:100%;font-size:18px}.mcq-card{margin:14px auto 0}.mcq-title{font-size:22px;line-height:1.25}.mcq-option{grid-template-columns:40px 1fr;min-height:56px;padding:14px}.mcq-badge{width:34px;height:34px}.mcq-submit{width:100%}.room-meta-line{gap:10px}.link-share-row{flex-wrap:wrap;align-items:stretch}.link-share-row span,.link-share-row input,.link-share-row button{width:100%}.battle-room-head{padding:14px}.battle-room-head .link-share-row{padding:10px}.words-actions{justify-content:flex-start;width:100%}.words-actions .btn,.words-actions .file-import-form,.words-actions .file-import-form .btn{width:100%}.word-title-row{align-items:flex-start}.word-edit-btn{min-width:88px}}@media (width<=540px){.brand-block h1{background-size:140% 140%}.cards{grid-template-columns:1fr;gap:14px}.mission-card,.progress,.study-card,.auth-card{border-radius:14px;padding:18px}.page-header{flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:18px}.page-header h2{font-size:1.6rem}.study-card h2{font-size:2rem}.btn-xl{width:100%}.main-nav{gap:6px}table{-webkit-overflow-scrolling:touch;display:block;overflow-x:auto}.calendar-grid{-webkit-overflow-scrolling:touch;padding-bottom:6px;overflow-x:auto}.chat-line{max-width:92%}.word-title-row{flex-direction:column;align-items:stretch;gap:8px}.word-edit-btn{width:100%}}@media (width<=420px){.container{padding:0 14px}.nav-item,.nav-logout{padding:8px 10px;font-size:.85rem}.search-bar{max-width:100%}.word-card-top{padding:12px 14px}.word-card-mid{padding:18px 14px}th,td{padding:12px 10px;font-size:13px}}.fx-bg{pointer-events:none;z-index:-1;position:fixed;inset:0;overflow:hidden}.fx-blob{filter:blur(20px);opacity:.28;border-radius:999px;width:220px;height:220px;animation:14s ease-in-out infinite floatBlob;position:absolute}.fx-blob.b1{background:#ffb088;animation-delay:0s;top:18%;left:8%}.fx-blob.b2{background:#a7c7ff;animation-delay:-4s;top:12%;left:70%}.fx-blob.b3{background:#ffd7a5;animation-delay:-8s;top:68%;left:58%}@keyframes floatBlob{0%,to{transform:translate(0)scale(1)}25%{transform:translate(16px,-12px)scale(1.05)}50%{transform:translate(-8px,14px)scale(.96)}75%{transform:translate(12px,8px)scale(1.02)}}.btn,button{position:relative;overflow:hidden}.ripple{pointer-events:none;background:#ffffff73;border-radius:50%;animation:.56s ease-out ripple;position:absolute;transform:scale(0)}@keyframes ripple{to{opacity:0;transform:scale(4)}}.page-enter{animation:.32s both pageIn}.page-leave{animation:.18s both pageOut}@keyframes pageIn{0%{opacity:0;filter:blur(2px);transform:translateY(6px)}to{opacity:1;filter:blur();transform:translateY(0)}}@keyframes pageOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(4px)}}.reveal-on-scroll{opacity:0;transition:opacity .45s,transform .45s;transform:translateY(10px)}.reveal-on-scroll.in{opacity:1;transform:translateY(0)}::selection{color:#1f2530;background:#ff713d47}main{padding-bottom:10px}.card,.mission-card,.progress,.study-card,.auth-card,table{-webkit-backdrop-filter:saturate(1.08)blur(2px);backdrop-filter:saturate(1.08)blur(2px)}.card,.progress,.study-card,.auth-card{transition:transform .2s,box-shadow .2s,border-color .2s;position:relative}.card:hover,.progress:hover,.study-card:hover,.auth-card:hover{border-color:#c8d4e4;transform:translateY(-2px);box-shadow:0 8px 24px #141a2617,0 0 0 1px #ff99761f}.nav-pill{box-shadow:inset 0 0 0 1px #ffffff05}.nav-pill:active,.btn:active,button:active{transform:translateY(0)}.flash{max-width:560px;margin:10px auto;padding:0 16px}.flash li{border-radius:14px;box-shadow:0 8px 20px #7848161a}#confetti-canvas{pointer-events:none;z-index:9998;position:fixed;inset:0}.achievement-modal{z-index:9999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#090c1273;justify-content:center;align-items:center;display:none;position:fixed;inset:0}.achievement-modal.show{display:flex}.achievement-card{background:#fff;border:1px solid #e7edf6;border-radius:18px;width:min(92vw,430px);padding:20px;animation:.3s popIn;box-shadow:0 24px 60px #0a101b40}.achievement-card h3{margin-bottom:8px}.achievement-actions{justify-content:flex-end;margin-top:12px;display:flex}table{border-radius:16px}tbody tr:nth-child(2n){background:#fcfdff}tbody tr:hover{background:#fff5ef}input,textarea,select{transition:border-color .18s,box-shadow .18s,background .18s}input:hover,textarea:hover,select:hover{border-color:#c2cde0}::-webkit-scrollbar-track{background:#eef2f8;border-radius:999px}body.theme-dark{--bg:#0b111b;--panel:#121a27;--ink:#e9eef8;--sub:#a0aec6;--line:#253248;--accent:#ff7a45;--accent-deep:#ff9a6f;--accent-soft:#2a1b16;background:radial-gradient(60vw 44vh at 100% -20%,#3d2030 0%,#0000 60%),radial-gradient(60vw 38vh at -10% 8%,#16243f 0%,#0000 62%),#0b111b}body.theme-dark table,body.theme-dark .auth-card,body.theme-dark .card,body.theme-dark .mission-card,body.theme-dark .progress,body.theme-dark .study-card{background:#121a27}body.theme-dark th{background:#1b2638}body.theme-dark tbody tr:nth-child(2n){background:#131d2d}body.theme-dark tbody tr:hover{background:#1d2738}body.theme-dark .flash li{color:#ffd9c6;background:#2a1d15;border-color:#6d4a37}body.theme-dark input,body.theme-dark textarea,body.theme-dark select{color:#e6edf7;background:#101827;border-color:#2a3750}body.theme-dark .auth-intro{background:radial-gradient(120% 120% at 95% 5%,#ff84592e 0%,#0000 52%),linear-gradient(160deg,#152133 0%,#101827 100%);border-color:#2d3d58}body.theme-dark .auth-benefits{color:#c4d0e4}body.theme-dark .auth-benefits strong{color:#eaf1ff}body.motion-off *,body.motion-off :before,body.motion-off :after{transition:none!important;animation:none!important}body.motion-off .fx-bg{display:none}.state-badge{letter-spacing:.02em;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600;line-height:1.5;display:inline-block}.state-badge.state-new{background:var(--accent-soft);color:var(--accent-deep)}.state-badge.state-learning{background:var(--warn-soft);color:var(--warn)}.state-badge.state-review{color:#3b6ecc;background:#eef3ff}.state-badge.state-mastered{background:var(--ok-soft);color:var(--ok)}.words-toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;display:flex}.words-search{flex:1;gap:8px;min-width:200px;display:flex}.words-search input[type=text]{flex:1;margin-top:0;padding:8px 12px;font-size:13px}.words-filters{flex-wrap:wrap;gap:4px;display:flex}.filter-pill{border:1px solid var(--line);background:var(--panel);color:var(--sub);cursor:pointer;border-radius:999px;align-items:center;padding:5px 12px;font-size:12px;font-weight:600;text-decoration:none;transition:all .16s;display:inline-flex}.filter-pill:hover{border-color:var(--accent);color:var(--accent-deep);background:var(--accent-soft)}.filter-pill.active{background:var(--accent);color:#fff;border-color:var(--accent)}.pagination{flex-wrap:wrap;justify-content:center;gap:6px;margin:20px 0;display:flex}.pagination .page-btn{border:1px solid var(--line);background:var(--panel);color:var(--sub);cursor:pointer;border-radius:10px;align-items:center;padding:4px 10px;font-size:13px;font-weight:600;text-decoration:none;transition:all .16s;display:inline-flex}.pagination .page-btn:hover{border-color:var(--accent);color:var(--accent-deep)}.pagination .page-btn.current{background:var(--accent);color:#fff;border-color:var(--accent)}.pagination .page-ellipsis{color:var(--sub);padding:6px 4px;font-size:13px}.pagination-belt{justify-content:center;align-items:center;gap:12px;margin:24px 0;display:flex}.pagination-info{color:var(--sub);font-size:.875rem}.btn-sm{border-radius:10px;padding:6px 12px;font-size:.875rem}.fav-btn{cursor:pointer;color:#ccc;border-radius:6px;padding:2px 4px;font-size:1.3em;line-height:1;transition:transform .18s,color .18s;background:0 0!important;border:none!important}.fav-btn:hover{color:var(--accent);transform:scale(1.2)}.fav-btn.is-fav,.fav-btn[data-fav="1"]{color:var(--accent)}table{margin-top:12px}th{text-transform:uppercase;letter-spacing:.04em;color:var(--sub);font-size:12px;font-weight:700}td{vertical-align:middle}details summary{cursor:pointer;color:var(--accent);border-radius:var(--radius);background:var(--bg-deep);border:1px dashed var(--line);padding:16px;font-weight:600;list-style:none;transition:all .2s}details summary::-webkit-details-marker{display:none}details summary:hover{background:var(--accent-soft);border-color:var(--accent)}details[open] summary{background:var(--accent);color:#fff;border-style:solid;margin-bottom:16px}#wordDefinition{color:var(--ink);margin:12px 0;font-size:1.25rem;display:block}#wordExample{background:var(--bg-deep);border-left:4px solid var(--accent);border-radius:0 var(--radius-sm) var(--radius-sm) 0;padding:12px;font-style:italic}.rating button{letter-spacing:.02em;border-radius:10px;padding:12px 8px;font-size:13px}.rating .bad{background:linear-gradient(140deg,#d94040 0%,#c03524 100%)}.rating .bad:hover{box-shadow:0 6px 16px #c035244d}.rating .good{background:linear-gradient(140deg,#27a866 0%,#1a8a50 100%)}.rating .good:hover{box-shadow:0 6px 16px #1a8a504d}.science-tip{background:var(--accent-soft);border-radius:var(--radius);text-align:left;color:#5a3e2a;margin-bottom:20px;padding:14px 18px;font-size:.92em;line-height:1.6}.science-tip strong{color:var(--accent-deep)}body.theme-dark .science-tip strong{color:var(--accent)}.site-footer{border:1px solid var(--line-light);background:var(--panel);border-radius:16px;justify-content:space-between;align-items:center;gap:20px;width:min(980px,100% - 32px);margin:8px auto 28px;padding:16px 20px;display:flex}@supports (color:color-mix(in lab, red, red)){.site-footer{background:color-mix(in srgb, var(--panel) 86%, transparent)}}.site-footer{color:var(--sub);box-shadow:0 12px 32px #0f172a0d}.footer-message{max-width:760px;margin:0;font-size:12px;line-height:1.7}.footer-message strong{color:var(--ink);font-weight:700}.footer-icp{color:var(--sub);white-space:nowrap;flex:none;font-size:12px;text-decoration:none}.footer-icp:hover{color:var(--accent-deep);text-decoration:underline}body.theme-dark .filter-pill{color:var(--sub);background:#1a2332;border-color:#253248}body.theme-dark .filter-pill:hover{border-color:var(--accent);background:#2a1b16}body.theme-dark .filter-pill.active{background:var(--accent);color:#fff}body.theme-dark .page-btn{color:var(--sub);background:#1a2332;border-color:#253248}body.theme-dark .state-badge.state-new{color:var(--accent);background:#2a1b16}body.theme-dark .state-badge.state-learning{color:#d4a628;background:#2a2410}body.theme-dark .state-badge.state-review{color:#6e9eff;background:#131d30}body.theme-dark .state-badge.state-mastered{color:#3dd18c;background:#0f2318}body.theme-dark .fav-btn{color:#3a4760}body.theme-dark .fav-btn:hover,body.theme-dark .fav-btn.is-fav{color:var(--accent)}body.theme-dark .science-tip{color:#e8c9b5;background:#2a1b16}kbd{color:var(--ink);vertical-align:baseline;background:#f0f3f7;border:1px solid #d1d8e3;border-radius:4px;padding:1px 6px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;display:inline-block;box-shadow:0 1px #c4ccd8}body.theme-dark kbd{color:var(--ink);background:#1a2332;border-color:#2a3750;box-shadow:0 1px #0f1827}.rating-key{text-align:center;background:#fff3;border-radius:5px;width:20px;height:20px;margin-right:4px;font-size:11px;font-weight:700;line-height:20px;display:inline-block}.form-hint{min-height:16px;margin-top:4px;font-size:12px;transition:color .16s;display:block}@keyframes correctBounce{0%{transform:scale(1)}20%{transform:scale(1.15)}40%{transform:scale(.95)}60%{transform:scale(1.05)}80%{transform:scale(.98)}to{transform:scale(1)}}@keyframes correctGlow{0%{box-shadow:0 0 #12825866}50%{box-shadow:0 0 20px 8px #12825826}to{box-shadow:0 0 #12825800}}.anim-correct{animation:.5s correctBounce,.8s correctGlow}@keyframes wrongShake{0%,to{transform:translate(0)}10%,50%,90%{transform:translate(-6px)}30%,70%{transform:translate(6px)}}@keyframes wrongFlash{0%{box-shadow:0 0 #c0352466}50%{box-shadow:0 0 16px 6px #c0352426}to{box-shadow:0 0 #c0352400}}.anim-wrong{animation:.5s wrongShake,.6s wrongFlash}@keyframes resultSlideIn{0%{opacity:0;transform:translateY(10px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.result-slide-in{animation:.35s cubic-bezier(.22,1,.36,1) both resultSlideIn}@keyframes streakPulse{0%{transform:scale(1)}50%{color:var(--accent);transform:scale(1.2)}to{transform:scale(1)}}.anim-streak-pulse{animation:.4s streakPulse}.mcq-option{transition:all .2s cubic-bezier(.22,1,.36,1)}.mcq-option:hover{background:#fff8f3;border-color:#f2b18f;transform:translate(4px)}.mcq-option:active{transform:translate(2px)scale(.99)}.mcq-option:has(input:checked){animation:.3s correctBounce}.nav-pill{transition:transform .2s cubic-bezier(.22,1,.36,1),background .2s,border-color .2s,box-shadow .2s}.nav-pill:hover{transform:translateY(-2px)scale(1.03)}.nav-pill:active{transition-duration:80ms;transform:translateY(0)scale(.97)}.btn:active,button:active{transition-duration:80ms;transform:translateY(0)scale(.96)}.cards .card:first-child{animation-delay:0s}.cards .card:nth-child(2){animation-delay:60ms}.cards .card:nth-child(3){animation-delay:.12s}.cards .card:nth-child(4){animation-delay:.18s}.cards .card{animation:.5s cubic-bezier(.22,1,.36,1) both revealUp}.card p{transition:transform .2s,color .2s}.card:hover p{color:var(--accent-deep);transform:scale(1.06)}.fav-btn{transition:transform .2s cubic-bezier(.22,1,.36,1),color .2s}.fav-btn:active{transform:scale(.8)}@keyframes favPop{0%{transform:scale(1)}30%{transform:scale(1.4)}60%{transform:scale(.9)}to{transform:scale(1)}}.anim-fav-pop{animation:.35s favPop}tbody tr{transition:background .2s,transform .2s}tbody tr:hover{background:#fff5ef;transform:translate(2px)}body.theme-dark tbody tr:hover{background:#1d2738;transform:translate(2px)}@keyframes flashSlideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.flash li{animation:.35s both flashSlideDown}.flash li:nth-child(2){animation-delay:80ms}.flash li:nth-child(3){animation-delay:.16s}details[open]>:not(summary){animation:.25s both resultSlideIn}.filter-pill{transition:all .2s cubic-bezier(.22,1,.36,1)}.filter-pill:active{transform:scale(.92)}@keyframes barLoad{0%{width:0}}.bar span{animation:.8s cubic-bezier(.22,1,.36,1) both barLoad}.bar span:after{content:"";background:linear-gradient(90deg,#0000,#ffffff59,#0000);width:50%;height:100%;animation:2.5s ease-in-out infinite barShimmer;position:absolute;top:0;left:-50%}.bar{position:relative}.bar span{position:relative;overflow:hidden}@keyframes barShimmer{0%{left:-50%}to{left:150%}}@keyframes countUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.anim-count-up{animation:.4s both countUp}@keyframes levelUp{0%{text-shadow:none;transform:scale(1)}25%{text-shadow:0 0 20px #ff5a1f99;transform:scale(1.3)}50%{text-shadow:0 0 10px #ff5a1f4d;transform:scale(1.1)}to{text-shadow:none;transform:scale(1)}}.anim-level-up{animation:.8s levelUp}@keyframes fireGlow{0%,to{text-shadow:0 0 4px #ff5a1f4d}50%{text-shadow:0 0 12px #ff5a1f99,0 0 24px #ffa60033}}.streak-fire{color:var(--accent);animation:2s ease-in-out infinite fireGlow}@keyframes achievementEntrance{0%{opacity:0;transform:scale(.6)translateY(20px)}50%{transform:scale(1.05)translateY(-5px)}to{opacity:1;transform:scale(1)translateY(0)}}.achievement-card{animation:.5s cubic-bezier(.22,1,.36,1) both achievementEntrance}.calendar-grid .cell{cursor:default;transition:transform .2s,box-shadow .2s}.calendar-grid .cell:hover{transform:translateY(-2px)scale(1.08);box-shadow:0 4px 12px #0000001a}@keyframes badgeCheck{0%{transform:rotate(0)scale(1)}50%{transform:rotate(10deg)scale(1.15)}to{transform:rotate(0)scale(1)}}.mcq-option input:checked+.mcq-badge{animation:.3s badgeCheck}.rating button:first-child{animation:.3s 50ms both revealUp}.rating button:nth-child(2){animation:.3s .1s both revealUp}.rating button:nth-child(3){animation:.3s .15s both revealUp}.rating button:nth-child(4){animation:.3s .2s both revealUp}.pomo-widget{z-index:9999;width:220px;font-family:var(--ui-font,-apple-system, BlinkMacSystemFont, "PingFang SC", sans-serif);border-radius:var(--radius);background:var(--panel);border:1px solid var(--line);box-shadow:var(--elev-lg);color:var(--ink);transition:opacity .3s,transform .3s cubic-bezier(.22,1,.36,1);position:fixed;top:80px;right:20px;overflow:hidden}.pomo-widget.pomo-hidden{display:none}.pomo-header{background:var(--accent-soft);border-bottom:1px solid var(--line-light);cursor:move;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;padding:8px 14px;display:flex}.pomo-header-title{letter-spacing:.04em;color:var(--accent);align-items:center;gap:6px;font-size:12px;font-weight:700;display:flex}.pomo-header-title .pomo-icon{font-size:14px}.pomo-header-btns{gap:2px;display:flex}.pomo-header-btns button{color:var(--sub);cursor:pointer;border-radius:4px;padding:2px 5px;font-size:15px;line-height:1;transition:color .15s,background .15s;background:0 0!important;border:none!important}.pomo-header-btns button:hover{color:var(--ink);box-shadow:none;transform:none;background:var(--bg-deep)!important}.pomo-body{padding:14px 16px 12px}.pomo-ring-wrap{justify-content:center;margin-bottom:10px;display:flex;position:relative}.pomo-ring-svg{width:120px;height:120px;transform:rotate(-90deg)}.pomo-ring-bg{fill:none;stroke:var(--line-light);stroke-width:5px}.pomo-ring-progress{fill:none;stroke:var(--accent);stroke-width:5px;stroke-linecap:round;transition:stroke-dashoffset .8s cubic-bezier(.22,1,.36,1)}.pomo-ring-glow{fill:none;stroke:var(--accent-glow);stroke-width:10px;stroke-linecap:round;filter:blur(4px);transition:stroke-dashoffset .8s cubic-bezier(.22,1,.36,1)}.pomo-time-overlay{text-align:center;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.pomo-time{font-variant-numeric:tabular-nums;color:var(--ink);letter-spacing:1px;font-size:28px;font-weight:700}.pomo-status{color:var(--sub);letter-spacing:.08em;text-transform:uppercase;margin-top:2px;font-size:10px}@keyframes pomoPulse{0%,to{opacity:1}50%{opacity:.7}}.pomo-widget.pomo-running .pomo-time{color:var(--accent);animation:2s ease-in-out infinite pomoPulse}@keyframes pomoBlink{0%,to{opacity:1}50%{opacity:.35}}.pomo-widget.pomo-paused .pomo-time{color:var(--warn);animation:1.2s ease-in-out infinite pomoBlink}.pomo-actions{grid-template-columns:1fr 1fr;gap:6px;margin-bottom:10px;display:grid}.pomo-btn{cursor:pointer;text-align:center;font-weight:600;transition:all .15s;border:1px solid var(--line)!important;border-radius:var(--radius-sm)!important;background:var(--bg-deep)!important;color:var(--ink)!important;padding:7px 0!important;font-size:11px!important}.pomo-btn-start{background:var(--accent-soft)!important;color:var(--accent-deep)!important;border-color:var(--accent)!important}.pomo-btn-start:hover{box-shadow:none;transform:none;background:var(--accent)!important;color:#fff!important}.pomo-btn-stop{background:var(--danger-soft)!important;color:var(--danger)!important;border-color:var(--danger)!important}.pomo-btn-stop:hover{box-shadow:none;transform:none;background:var(--danger)!important;color:#fff!important}.pomo-btn-pause{background:var(--warn-soft)!important;color:var(--warn)!important;border-color:var(--warn)!important}.pomo-btn-pause:hover{box-shadow:none;transform:none;background:var(--warn)!important;color:#fff!important}.pomo-stats{border-top:1px solid var(--line-light);grid-template-columns:1fr 1fr;gap:6px;padding:10px 0 4px;display:grid}.pomo-stat{text-align:center}.pomo-stat-num{font-variant-numeric:tabular-nums;font-size:20px;font-weight:700}.pomo-stat-num.stat-done{color:var(--ok)}.pomo-stat-num.stat-stopped{color:var(--danger)}.pomo-stat-label{color:var(--sub);letter-spacing:.05em;font-size:10px}.pomo-auto-indicator{color:var(--sub);justify-content:center;align-items:center;gap:5px;padding:6px 0 2px;font-size:10px;display:flex}.pomo-auto-dot{background:var(--line);border-radius:50%;width:6px;height:6px;transition:all .3s}.pomo-auto-dot.active{background:var(--ok);box-shadow:0 0 6px var(--ok);animation:1.5s ease-in-out infinite autoDotPulse}@keyframes autoDotPulse{0%,to{box-shadow:0 0 3px var(--ok)}50%{box-shadow:0 0 10px var(--ok)}}.pomo-mini{z-index:9999;cursor:pointer;background:var(--panel);border:2px solid var(--accent);width:52px;height:52px;box-shadow:var(--elev);font-family:var(--ui-font,-apple-system, BlinkMacSystemFont, "PingFang SC", sans-serif);border-radius:50%;justify-content:center;align-items:center;transition:transform .2s,box-shadow .2s;display:flex;position:fixed;top:80px;right:20px}.pomo-mini:hover{box-shadow:var(--elev-lg);transform:scale(1.08)}.pomo-mini.pomo-hidden{display:none}.pomo-fab{z-index:9999;cursor:pointer;background:var(--panel);border:1.5px solid var(--line);width:44px;height:44px;box-shadow:var(--elev);color:var(--accent);opacity:.8;border-radius:50%;justify-content:center;align-items:center;font-size:18px;transition:transform .2s,box-shadow .2s,border-color .2s;display:flex;position:fixed;bottom:24px;right:20px}.pomo-fab:hover{opacity:1;border-color:var(--accent);box-shadow:var(--elev-lg);transform:scale(1.1)}.pomo-fab.pomo-hidden{display:none}.pomo-mini-time{color:var(--accent);font-variant-numeric:tabular-nums;font-size:12px;font-weight:700}.pomo-mini-idle{color:var(--accent);font-size:20px}@keyframes miniOrbit{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.pomo-mini:before{content:"";border:2px solid #0000;border-top-color:var(--accent);border-right-color:var(--secondary);opacity:0;border-radius:50%;transition:opacity .3s;position:absolute;inset:-3px}.pomo-mini.pomo-running:before{opacity:1;animation:3s linear infinite miniOrbit}.pomo-mini.pomo-paused:before{opacity:1;border-top-color:var(--warn);border-right-color:var(--warn);animation:4s linear infinite miniOrbit}@keyframes borderGlow{0%,to{box-shadow:var(--elev-lg)}50%{box-shadow:var(--elev-lg),0 0 16px var(--accent-glow)}}.pomo-widget.pomo-running{border-color:var(--accent);animation:3s ease-in-out infinite borderGlow}@keyframes pomoComplete{0%{box-shadow:0 0 0 0 var(--accent-glow)}50%{box-shadow:0 0 40px 12px var(--accent-glow)}to{box-shadow:var(--elev-lg)}}.pomo-widget.pomo-complete-flash{animation:1s pomoComplete}.nav-grid{grid-template-columns:repeat(4,1fr);gap:12px;padding:16px;display:grid}.nav-grid-item{background:var(--panel);border:1px solid var(--line);border-radius:16px;flex-direction:column;justify-content:center;align-items:center;min-height:80px;padding:16px 8px;text-decoration:none;transition:all .2s;display:flex}.nav-grid-item:hover{border-color:var(--accent);transform:translateY(-4px);box-shadow:0 8px 24px #0000001f}.nav-icon{margin-bottom:6px;font-size:28px;display:block}.nav-label{color:var(--ink);font-size:13px;font-weight:600}.nav-grid-item-danger{background:#d539391a;border-color:#d539394d}.nav-grid-item-danger:hover{background:#d5393933;border-color:#d5393980}@media (width<=768px){.nav-grid{grid-template-columns:repeat(3,1fr);gap:8px;padding:12px}.nav-grid-item{min-height:70px;padding:12px 4px}.nav-icon{font-size:24px}.nav-label{font-size:11px}}@media (width<=480px){.nav-grid{grid-template-columns:repeat(3,1fr)}}.nav-tab-bar{background:var(--panel);border-top:1px solid var(--line);padding:8px 0;padding-bottom:calc(8px + env(safe-area-inset-bottom));z-index:1000;justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 20px #00000014}.nav-tab-item{border-radius:12px;flex-direction:column;flex:1;align-items:center;padding:6px 16px;text-decoration:none;transition:all .2s;display:flex}.nav-tab-item:hover{background:#0000000d}.nav-tab-icon{margin-bottom:2px;font-size:22px;display:block}.nav-tab-label{color:var(--sub);font-size:11px;font-weight:600}.nav-tab-item.active .nav-tab-label{color:var(--accent)}.nav-tab-item.active .nav-tab-icon{transform:scale(1.1)}@media (width<=600px){.nav-tab-bar{padding:6px 0}.nav-tab-item{padding:4px 8px}.nav-tab-icon{font-size:20px}.nav-tab-label{font-size:10px}}main{margin-bottom:70px}.nav-top-bar{background:var(--panel);border-bottom:1px solid var(--line);z-index:100;justify-content:space-between;align-items:center;padding:12px 24px;display:flex;position:sticky;top:0}.nav-brand{color:var(--accent);font-size:18px;font-weight:700}.nav-links-two-col{flex-wrap:wrap;grid-template-columns:repeat(6,1fr);gap:4px 8px;max-width:100%;display:grid}.nav-top-item{color:var(--sub);border-radius:20px;padding:4px 10px;font-size:13px;font-weight:500;text-decoration:none;transition:all .2s}.nav-top-item:hover{color:var(--ink);background:#0000000d}.nav-top-item.active{background:var(--accent);color:#fff}.nav-user{align-items:center;gap:12px;font-size:13px;display:flex}.nav-logout{color:var(--danger);background:#d539391a;border-radius:12px;padding:4px 10px;text-decoration:none}.nav-logout:hover{background:#d5393933}@media (width<=768px){.nav-top-bar{flex-wrap:wrap;gap:10px;padding:10px 12px}.nav-links-two-col{order:3;justify-content:flex-start;width:100%;padding-bottom:4px;overflow-x:auto}.nav-top-item{white-space:nowrap;padding:4px 10px;font-size:13px}.nav-brand{font-size:16px}main{margin-bottom:0}}.assets-grid{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px;display:grid}.asset-card{background:var(--panel);border-radius:var(--radius);border:1px solid var(--line);flex-direction:column;justify-content:center;align-items:center;padding:24px;text-decoration:none;transition:all .3s;display:flex;position:relative;overflow:hidden}.asset-card:hover{box-shadow:var(--elev-lg);border-color:var(--accent);transform:translateY(-4px)}.asset-icon{margin-bottom:8px;font-size:28px}.asset-value{color:var(--ink);font-size:1.75rem;font-weight:700;font-family:var(--ui-font,-apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);margin:4px 0}.asset-label{color:var(--sub);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-weight:600}.asset-card-success{background:linear-gradient(135deg,#e8f5e9,#c8e6c9);border-color:#4caf50}.asset-card-success .asset-value{color:#2e7d32}.asset-card-warning{background:linear-gradient(135deg,#fff3e0,#ffe0b2);border-color:#ff9800}.asset-card-warning .asset-value{color:#ef6c00}.asset-card-info{background:linear-gradient(135deg,#e3f2fd,#bbdefb);border-color:#2196f3}.asset-card-info .asset-value{color:#1565c0}@media (width<=600px){.assets-grid{grid-template-columns:repeat(2,1fr)}}.assets-chart-wrapper{align-items:center;gap:24px;margin-bottom:16px;display:flex}.assets-chart{flex-shrink:0;width:180px;height:180px}.assets-legend{flex-direction:column;flex:1;gap:12px;display:flex}.legend-item{align-items:center;gap:10px;display:flex}.legend-color{border-radius:4px;width:14px;height:14px}.legend-label{color:var(--sub);flex:1;font-size:14px}.legend-value{color:var(--ink);font-size:18px;font-weight:700}@media (width<=600px){.assets-chart-wrapper{flex-direction:column}}.asset-card-danger{background:linear-gradient(135deg,#ffebee,#ffcdd2);border-color:#f44336}.asset-card-danger .asset-value{color:#c62828}.text-today{font-weight:700;color:#f44336!important}.word-ebb-curve{gap:2px;margin-top:8px;display:flex}.ebb-point{background:#e0e0e0;border-radius:2px;width:8px;height:20px;position:relative}.ebb-point.active{background:var(--accent)}.ebb-point:after{content:attr(data-interval);color:var(--sub);font-size:8px;position:absolute;bottom:-14px;left:50%;transform:translate(-50%)}.section-title h3{text-transform:uppercase;letter-spacing:.06em;color:var(--sub);margin:0;font-size:14px;font-weight:700}.mcq-option.state-correct{background:#16a34a14!important;border:2px solid #16a34a!important}.mcq-option.state-wrong{background:#dc262614!important;border:2px solid #dc2626!important}body.theme-dark .mcq-option.state-correct{background:#4ade801a!important;border-color:#4ade80!important}body.theme-dark .mcq-option.state-wrong{background:#f871711a!important;border-color:#f87171!important}.mission-content{z-index:1;position:relative}.progress-info{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.card-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.card-header h3{margin:0}.badges-row{flex-wrap:wrap;gap:6px;display:flex}.badge-tag{background:var(--accent-soft);color:var(--accent-deep);border:1px solid var(--line);white-space:nowrap;border-radius:9999px;align-items:center;padding:3px 10px;font-size:.78rem;font-weight:600;display:inline-flex}body.theme-dark .badge-tag{color:var(--accent);background:#ff5a1f26;border-color:#ff5a1f40}.count-num{letter-spacing:-.02em;color:var(--text);margin:6px 0 4px;font-size:2.4rem;font-weight:700;line-height:1}.action-group{flex-wrap:wrap;align-items:center;gap:8px;display:flex}@media (prefers-reduced-motion:reduce){body:not(.auth-page) *,body:not(.auth-page) :before,body:not(.auth-page) :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}body:not(.auth-page) .fx-bg{display:none}body:not(.auth-page) .bar span{transition:none!important;animation:none!important}}@media (width<=480px){.container{padding:12px}h2{font-size:20px!important}h3{font-size:16px!important}.mission-card{margin-bottom:16px;padding:16px}.mission-content h2{margin:8px 0;font-size:18px}.mission-copy{font-size:14px;line-height:1.5}.quick-actions{margin-top:16px}.btn-xl{width:100%;margin-bottom:10px;padding:14px 20px;font-size:16px}.action-group{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.action-group .btn{padding:12px 8px;font-size:14px}.cards{grid-template-columns:repeat(2,1fr);gap:10px}.card{padding:14px 10px}.card strong{font-size:13px}.count-num{margin:8px 0;font-size:28px!important}.meta{font-size:12px}.progress{margin-bottom:12px;padding:14px}.progress-info{font-size:12px}.assets-grid{grid-template-columns:repeat(2,1fr);gap:8px}.asset-card{padding:12px 8px}.asset-value{font-size:22px}.asset-label{font-size:12px}.nav-tab-bar{padding:6px 0}.nav-tab-icon{font-size:20px}.nav-tab-label{font-size:10px}input,textarea,select{padding:12px!important;font-size:16px!important}.btn{padding:12px 16px;font-size:14px}.section-title h3{margin:16px 0 12px;font-size:16px}.leaderboard-item{padding:12px 8px}.study-card{padding:16px}.word-display{font-size:28px!important}.definition-text{font-size:16px}.option-btn{margin-bottom:8px;padding:14px 12px;font-size:14px}.book-item{margin-bottom:8px;padding:12px}.battle-room-container{padding:12px}.chat-message{max-width:85%;padding:10px 12px}}@media (width<=360px){.cards{grid-template-columns:1fr 1fr;gap:8px}.action-group{grid-template-columns:1fr}.btn-xl{padding:12px 16px}}@media (width<=768px){a,button,.btn,input,select,textarea,label{-webkit-tap-highlight-color:#0000;touch-action:manipulation}input,select,textarea{min-height:44px;font-size:16px}button,.btn,.nav-item,.nav-top-item,.nav-tab-item,.filter-chip{min-height:44px}.nav-top-item{justify-content:center;align-items:center;padding:10px 14px;display:inline-flex}.nav-tab-item{padding:8px 10px}.nav-grid-item{min-height:84px;padding:14px 8px}}@media (width<=360px){.cards{grid-template-columns:1fr}}@media (width<=768px){.battle-home-grid{gap:12px}.battle-form-card{padding:20px}.battle-rooms-card{padding:18px}.battle-rooms-table td code{font-size:12px}.battle-row-enter{min-width:72px}}body{font-family:var(--ui-font,-apple-system, BlinkMacSystemFont, "PingFang SC", sans-serif);line-height:1.7}.container{max-width:1040px}main{max-width:1040px;margin:24px auto 52px;padding:0 28px}.site-header{-webkit-backdrop-filter:saturate(180%)blur(20px);backdrop-filter:saturate(180%)blur(20px);box-shadow:none;background:#ffffffd9;border-bottom:1px solid #00000012;padding:8px 0}body.theme-dark .site-header{background:#0b111be0;border-bottom-color:#ffffff12}.card{background:var(--panel);border:1px solid var(--line);border-radius:18px;flex-direction:column;padding:20px 22px 18px;display:flex;box-shadow:0 1px 2px #0000000a,0 4px 14px #0000000d}.card-icon{margin-bottom:8px;font-size:1.5rem;line-height:1;display:block}.card strong{color:var(--sub);text-transform:uppercase;letter-spacing:.08em;margin-bottom:10px;font-size:11px;font-weight:700;display:block}.card .count-num{color:var(--ink);letter-spacing:-.035em;font-variant-numeric:tabular-nums;font-feature-settings:"tnum";margin:0 0 6px;font-size:2.6rem;font-weight:800;line-height:1}.card>p:not(.count-num){color:var(--ink);letter-spacing:-.02em;margin:0 0 6px;font-size:1.7rem;font-weight:700;line-height:1}.card:hover{border-color:#0000001f;box-shadow:0 2px 8px #0000000f,0 12px 28px #00000014}body.theme-dark .card{box-shadow:none;border-color:#ffffff12}body.theme-dark .card:hover{border-color:#ffffff24;box-shadow:0 8px 24px #0000004d}.section-title{margin:28px 0 12px}.section-title h3{color:var(--sub);text-transform:uppercase;letter-spacing:.09em;margin:0;font-size:11px;font-weight:700}body{background:radial-gradient(ellipse 70% 35% at 0% 0%, #f973160e 0%, transparent 65%), radial-gradient(ellipse 60% 40% at 100% 100%, #6366f10d 0%, transparent 65%), var(--bg)}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#00000026;border:none;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:#00000042}body.theme-dark ::-webkit-scrollbar-thumb{background:#ffffff21}body.theme-dark ::-webkit-scrollbar-thumb:hover{background:#ffffff38}p,.meta{line-height:1.65}.mission-card{padding:28px 32px}.dashboard-grid{gap:14px;margin-top:14px}.cards{gap:14px}.today-summary-grid{grid-template-columns:repeat(2,1fr);gap:12px;margin-top:14px;display:grid}.today-summary-item{background:var(--bg-deep);border-radius:12px;padding:14px 16px}.today-summary-item .ts-label{color:var(--sub);margin-bottom:4px;font-size:12px}.today-summary-item .ts-num{color:var(--ink);letter-spacing:-.02em;margin:0 0 3px;font-size:22px;font-weight:700}.today-summary-item .ts-detail{color:var(--sub);font-size:12px}.today-summary-total{background:#f973160f;border-radius:10px;justify-content:space-between;align-items:center;margin-top:10px;padding:10px 14px;display:flex}.today-summary-total .ts-total-label{color:var(--sub);font-size:13px}.today-summary-total .ts-total-val{color:var(--ink);font-size:14px;font-weight:600}body.theme-dark .today-summary-item{background:#ffffff0a}@media (width>=1024px){.cards{grid-template-columns:repeat(4,1fr)}}#toast-container{z-index:9999;pointer-events:none;flex-direction:column;gap:10px;width:min(720px,100vw - 32px);max-width:92vw;display:flex;position:fixed;top:80px;left:50%;transform:translate(-50%)}.toast{background:var(--panel-glass);-webkit-backdrop-filter:saturate(180%) var(--blur);border-radius:var(--radius-xl);box-shadow:var(--elev-lg);border:1px solid var(--line-light);pointer-events:all;font-family:var(--ui-font,-apple-system, BlinkMacSystemFont, "PingFang SC", sans-serif);animation:.4s cubic-bezier(.34,1.56,.64,1) forwards toast-in;position:relative;overflow:hidden}.toast.toast-out{animation:.25s ease-in forwards toast-out}.toast:before{content:"";border-radius:var(--radius-xl) 0 0 var(--radius-xl);width:3px;position:absolute;top:0;bottom:0;left:0}.toast-success:before{background:linear-gradient(180deg, var(--ok), #34d399)}.toast-saved:before{background:linear-gradient(#10b981,#22c55e)}.toast-farewell:before{background:linear-gradient(180deg, var(--warn), #fcd34d)}.toast-info:before{background:linear-gradient(180deg, var(--accent), var(--accent-deep))}.toast-edit:before{background:linear-gradient(180deg, var(--secondary), #a5b4fc)}.toast-success{background:linear-gradient(135deg, var(--ok-soft) 0%, var(--panel-glass) 55%)}.toast-saved{background:linear-gradient(135deg, #10b9812e 0%, var(--panel-glass) 58%)}.toast-farewell{background:linear-gradient(135deg, var(--warn-soft) 0%, var(--panel-glass) 55%)}.toast-info{background:linear-gradient(135deg, var(--accent-soft) 0%, var(--panel-glass) 55%)}.toast-edit{background:linear-gradient(135deg, var(--secondary-soft) 0%, var(--panel-glass) 55%)}@keyframes toast-in{0%{opacity:0;transform:translateY(-20px)scale(.93)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes toast-out{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-10px)scale(.95)}}.toast-body{align-items:center;gap:12px;padding:15px 16px 11px 18px;display:flex}.toast-saved .toast-body{min-height:58px;padding:13px 16px 10px 18px}.toast-icon{flex-shrink:0;font-size:26px;line-height:1}.toast-saved .toast-icon{color:#fff;background:#10b981;border-radius:999px;place-items:center;width:34px;height:34px;font-size:18px;font-weight:800;display:grid;box-shadow:0 10px 22px #10b9813d}.toast-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.toast-saved .toast-text{flex-direction:row;align-items:baseline;gap:12px}.toast-title{font-family:var(--ui-font,-apple-system, BlinkMacSystemFont, "PingFang SC", sans-serif);color:var(--ink);letter-spacing:.01em;font-size:14px;font-weight:700;line-height:1.3}.toast-sub{color:var(--sub);font-size:12px;line-height:1.5}.toast-saved .toast-title{font-size:15px}.toast-saved .toast-sub{color:var(--ink-soft);font-size:13px}.toast-close{background:var(--line-light);color:var(--sub);cursor:pointer;border-radius:var(--radius-sm);opacity:.75;border:none;flex-shrink:0;padding:5px 7px;font-size:11px;line-height:1;transition:opacity .15s,background .15s}.toast-close:hover{opacity:1;background:var(--line)}.toast-progress-bar{background:var(--line-light);border-radius:10px;height:2px;margin:0 18px 12px;overflow:hidden}.toast-progress-fill{border-radius:10px;width:100%;height:100%;transition:width linear;display:block}.toast-success .toast-progress-fill{background:linear-gradient(90deg, var(--ok), #34d399)}.toast-saved .toast-progress-fill{background:linear-gradient(90deg,#10b981,#22c55e)}.toast-farewell .toast-progress-fill{background:linear-gradient(90deg, var(--warn), #fcd34d)}.toast-info .toast-progress-fill{background:linear-gradient(90deg, var(--accent), var(--accent-deep))}.toast-edit .toast-progress-fill{background:linear-gradient(90deg, var(--secondary), #a5b4fc)}@media (width<=640px){#toast-container{width:calc(100vw - 24px);max-width:calc(100vw - 24px);top:70px}.toast-saved .toast-text{flex-direction:column;gap:2px}}.due-groups-section{background:var(--panel-glass);-webkit-backdrop-filter:saturate(180%) var(--blur);border-radius:var(--radius);border:1px solid var(--line-light);box-shadow:var(--elev-sm);margin:0 0 20px;padding:16px 20px 18px}.due-groups-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.due-groups-label{letter-spacing:.06em;text-transform:uppercase;color:var(--accent,#f97316);font-size:12px;font-weight:600}.due-unit-block{margin-bottom:4px}.due-unit-name{font-family:var(--ui-font,-apple-system, BlinkMacSystemFont, "PingFang SC", sans-serif);letter-spacing:.05em;text-transform:uppercase;color:var(--sub);margin-bottom:8px;font-size:11px;font-weight:600}.due-unit-divider{background:var(--line-light);height:1px;margin:12px 0}.due-groups-list{flex-wrap:wrap;gap:8px;display:flex}.due-group-chip{background:var(--accent-soft);border:1px solid var(--line);cursor:pointer;border-radius:100px;align-items:center;gap:8px;padding:6px 12px;text-decoration:none;transition:background .18s,border-color .18s,transform .15s,box-shadow .15s;display:inline-flex}.due-group-chip:hover{border-color:var(--accent);box-shadow:var(--elev-sm), 0 0 0 2px var(--accent-glow);background:#f973161f;transform:translateY(-1px)}.due-group-name{color:var(--ink);font-size:13px;font-weight:500}.due-group-badges{gap:4px;display:flex}.due-badge{border-radius:100px;padding:2px 7px;font-size:11px;font-weight:600;line-height:1.5}.due-badge-review{background:var(--accent-soft);color:var(--accent-deep)}.due-badge-new{background:var(--secondary-soft);color:var(--secondary)}.due-badge-learning{background:var(--ok-soft);color:var(--ok)}.ew-layout{align-items:flex-start;gap:24px;display:flex}.ew-main{flex:1;min-width:0}.ew-actions{flex-wrap:wrap;gap:10px;display:flex}.ew-nav-arrows{flex-wrap:wrap;gap:10px;margin-top:8px;display:flex}.ew-group-section{margin-top:16px;font-size:.9em}.ew-group-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.ew-group-label{color:var(--sub)}.ew-tag{background:var(--bg-deep);border-radius:6px;margin-right:4px;padding:2px 10px;font-size:.9em}.ew-tag-empty{color:var(--sub);opacity:.6}.ew-prev-group{background:var(--bg);border:1px solid var(--line);border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;padding:8px 12px;display:flex}.ew-prev-group-hint{color:var(--sub);font-size:.88em}.ew-prev-group-tag{background:var(--secondary-soft);color:var(--secondary);border-radius:6px;padding:2px 10px;font-size:.9em}.ew-same-group-btn{color:var(--secondary);border-color:var(--secondary-soft)}.ew-assign-panel{flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;display:none}.ew-assign-panel.ew-assign-open{display:flex}.ew-select{border:1px solid var(--line);background:var(--panel);border-radius:6px;padding:5px 8px;font-size:.9em}.ew-clear-btn{color:var(--sub)}.ew-nearby{flex-shrink:0;align-self:flex-start;width:280px;position:sticky;top:80px}.ew-nearby-title{color:var(--sub);letter-spacing:.03em;margin-bottom:8px;font-size:.8em}.ew-nearby-cols{border:1px solid var(--line);border-radius:8px;font-size:.88em;display:flex;overflow:hidden}.ew-nearby-col{flex:1;min-width:0}.ew-nearby-header{background:var(--bg-deep);color:var(--sub);border-bottom:1px solid var(--line);padding:5px 10px;font-size:.8em}.ew-nearby-link{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;border-bottom:1px solid var(--line-light);padding:5px 10px;text-decoration:none;transition:background .15s;display:block;overflow:hidden}.ew-nearby-link:hover{background:var(--secondary-soft)}.ew-nearby-divider{background:linear-gradient(to bottom, var(--line), var(--secondary), var(--line));flex-shrink:0;width:2px}.ew-nearby-empty{color:var(--sub);opacity:.5;padding:8px 10px;font-size:.85em}@media (width<=768px){.ew-layout{flex-direction:column}.ew-nearby{width:100%;position:static}}.wb-header-actions{flex-shrink:0;gap:8px;display:flex}.wb-module-select{width:auto;margin-top:0;padding:8px 12px;font-size:.875rem}.wb-list{flex-direction:column;gap:6px;display:flex}.wb-card{background:var(--panel);border:1px solid var(--line-light);border-radius:8px;justify-content:space-between;align-items:flex-start;gap:12px;padding:10px 14px;transition:border-color .15s;display:flex}.wb-card:hover{border-color:var(--line)}.wb-card-left{flex:1;min-width:0}.wb-word{font-size:.95rem;font-weight:600}.wb-phonetic{color:var(--sub);font-size:.8em;font-weight:400}.wb-def{color:var(--sub);margin-top:2px;font-size:.85rem}.wb-card-right{color:var(--sub);flex-shrink:0;align-items:center;gap:10px;font-size:.8rem;display:flex}.wb-lapses{color:var(--danger);font-weight:600}.wb-empty{text-align:center;color:var(--sub);padding:48px 16px;font-size:1.1rem}.pb-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;display:grid}.pb-card{background:var(--panel);border:1px solid var(--line-light);border-radius:10px;flex-direction:column;justify-content:space-between;padding:14px 16px;transition:border-color .15s,box-shadow .15s;display:flex}.pb-card:hover{border-color:var(--line);box-shadow:0 2px 8px #0000000a}.pb-card-body{margin-bottom:10px}.pb-name{margin-bottom:4px;font-size:1rem;font-weight:600}.pb-meta{color:var(--sub);gap:8px;font-size:.82rem;display:flex}.pb-own-tag{background:var(--accent-soft);color:var(--accent);border-radius:4px;padding:0 6px;font-size:.78rem;font-weight:600}.pb-card-actions{gap:8px;display:flex}.pb-copy-form{display:inline-block}.pb-empty{text-align:center;color:var(--sub);padding:48px 16px;font-size:1.1rem}.pbd-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.pbd-list{border:1px solid var(--line-light);background:var(--panel);border-radius:10px;overflow:hidden}.pbd-row{border-bottom:1px solid var(--line-light);align-items:baseline;gap:10px;padding:8px 14px;display:flex}.pbd-row:last-child{border-bottom:none}.pbd-num{text-align:right;width:28px;color:var(--sub);opacity:.5;flex-shrink:0;font-size:.75rem}.pbd-body{flex-shrink:0;min-width:120px}.pbd-word{font-size:.92rem;font-weight:600}.pbd-phonetic{color:var(--sub);margin-left:4px;font-size:.78rem}.pbd-def{min-width:0;color:var(--sub);flex:1;font-size:.85rem}.adm-stats-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px;display:grid}.adm-stat-card{background:var(--panel);border:1px solid var(--line-light);text-align:center;border-radius:12px;padding:20px}.adm-stat-num{color:var(--ink);font-size:2rem;font-weight:700}.adm-stat-label{color:var(--sub);margin-top:4px;font-size:.85rem}.adm-stat-link{color:var(--secondary);margin-top:8px;font-size:.82rem;text-decoration:none;display:inline-block}.adm-stat-link:hover{text-decoration:underline}.adm-list{flex-direction:column;gap:6px;display:flex}.adm-row{background:var(--panel);border:1px solid var(--line-light);border-radius:8px;flex-wrap:wrap;align-items:center;gap:12px;padding:10px 14px;display:flex}.adm-row-main{flex:1;align-items:center;gap:8px;min-width:0;display:flex}.adm-row-id{color:var(--sub);opacity:.6;font-size:.78rem}.adm-row-name{font-size:.92rem;font-weight:600}.adm-row-meta{color:var(--sub);flex-shrink:0;gap:10px;font-size:.8rem;display:flex}.adm-row-actions{flex-shrink:0;gap:6px;display:flex}.adm-row-self{color:var(--sub);opacity:.5;font-size:.8rem}.adm-badge-admin{background:var(--secondary-soft);color:var(--secondary);border-radius:4px;padding:1px 8px;font-size:.72rem;font-weight:600}.adm-badge-vis{background:var(--bg-deep);color:var(--sub);border-radius:4px;padding:1px 8px;font-size:.72rem;font-weight:600}.adm-badge-vis.adm-vis-public{background:var(--ok-soft);color:var(--ok)}.adm-btn-danger{color:var(--danger)!important;border-color:var(--danger-soft)!important}.adm-btn-danger:hover{background:var(--danger-soft)!important}.study-group-picker{margin-bottom:12px}.study-group-picker>summary{cursor:pointer;list-style:none}.study-group-picker>summary::-webkit-details-marker{display:none}.study-group-units{max-height:260px;margin-top:8px;overflow-y:auto}.study-unit-section{margin-bottom:10px}.study-unit-label{color:var(--sub);margin-bottom:4px;font-size:.78rem;font-weight:600}.study-group-list{flex-wrap:wrap;gap:6px;padding:2px 0;display:flex}.study-group-chip{background:var(--bg-deep);color:var(--ink);border:1px solid var(--line-light);border-radius:6px;padding:4px 12px;font-size:.82rem;text-decoration:none;transition:background .15s,border-color .15s;display:inline-block}.study-group-chip:hover{border-color:var(--secondary);background:var(--secondary-soft)}.study-group-active{background:var(--secondary-soft);color:var(--secondary);border-color:var(--secondary);font-weight:600}.study-group-all{color:var(--sub)}.grp-row-selected{background:var(--secondary-soft,#e8f0fe);border-radius:6px}.hamburger{cursor:pointer;z-index:200;background:0 0;border:none;flex-direction:column;justify-content:center;gap:5px;width:36px;height:36px;padding:6px;display:none}.hamburger span{background:var(--ink);border-radius:2px;width:100%;height:2px;transition:transform .25s,opacity .2s;display:block}.hamburger.open span:first-child{transform:translateY(7px)rotate(45deg)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.grp-mobile-tabs{display:none}.grp-layout{align-items:flex-start;gap:14px;min-height:70vh;display:flex}.grp-col-left{flex-direction:column;flex-shrink:0;align-self:flex-start;gap:8px;width:240px;max-height:calc(100vh - 100px);display:flex;position:sticky;top:80px;overflow-y:auto}.grp-col-mid{flex-direction:column;flex:1.4;gap:8px;min-width:0;display:flex}.grp-col-right{flex:1;align-self:flex-start;min-width:280px;position:sticky;top:80px}.ls-layout{align-items:flex-start;gap:16px;display:flex}.ls-col-main{flex:1;min-width:0}.ls-col-side{flex-shrink:0;align-self:flex-start;width:300px;position:sticky;top:80px}@media (width<=768px){.container{padding:0 14px}.header-main>.brand-block{text-align:left;pointer-events:auto;width:auto;margin:0;position:static;transform:none}.hamburger{display:flex}.header-main{position:relative}.nav-links{background:var(--panel,#fff);border-radius:0 0 var(--radius-sm) var(--radius-sm);box-shadow:var(--elev);z-index:150;flex-direction:column;gap:2px;max-height:75vh;padding:8px;display:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.nav-links.nav-open{display:flex}.nav-item{text-align:left;border-radius:var(--radius-sm);width:100%;padding:12px 16px}.nav-more{width:100%}.nav-more summary{border-radius:var(--radius-sm);width:100%;padding:12px 16px}.nav-more-menu{border:0;border-left:2px solid var(--accent-soft);width:auto;box-shadow:none;background:0 0;border-radius:0;margin:2px 8px 7px;position:static}.nav-more-menu a{padding:10px 12px}.user-controls{flex-wrap:wrap}.topline{gap:6px}.topline select{max-width:120px}.grp-mobile-tabs{gap:4px;margin-bottom:10px;display:flex;overflow-x:auto}.grp-tab{border:1px solid var(--line,#e2e8f0);border-radius:var(--radius-sm);background:var(--panel,#fff);color:var(--sub);cursor:pointer;white-space:nowrap;flex:1;min-height:auto;padding:8px 12px;font-size:.85rem;font-weight:600}.grp-tab.active{background:var(--secondary);color:#fff;border-color:var(--secondary)}.grp-layout{flex-direction:column;min-height:auto}.grp-col-left,.grp-col-mid,.grp-col-right{flex:none;max-height:none;position:static;width:100%!important;min-width:0!important}.grp-col-left{display:flex}.grp-col-mid,.grp-col-right{display:none}.grp-col-left.grp-mobile-show,.grp-col-mid.grp-mobile-show,.grp-col-right.grp-mobile-show{display:flex!important}.grp-col-left:not(.grp-mobile-show):not(:first-child),.grp-col-mid:not(.grp-mobile-show),.grp-col-right:not(.grp-mobile-show){display:none!important}.ls-layout{flex-direction:column}.ls-col-side{width:100%;position:static}.ls-col-hide-mobile{display:none!important}.settings-2col,.today-summary-grid{grid-template-columns:1fr!important}.words-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.batch-select,.batch-input{width:100%;min-width:0}.pb-grid{grid-template-columns:1fr}.wb-card{flex-direction:column;gap:8px}.wb-card-right{flex-wrap:wrap;justify-content:flex-start;width:100%}.mcq-submit{width:100%}.spell-input{max-width:100%}.adm-row{flex-wrap:wrap;gap:6px}.adm-row-main{flex:1;min-width:0}.adm-row-meta{order:3;width:100%}.adm-row-book{order:4;width:100%}.adm-row-actions{order:5;width:100%}.study-group-picker{font-size:.85rem}.pbd-row{flex-wrap:wrap;gap:4px}.pbd-body{min-width:0}.pbd-def{width:100%;padding-left:38px}.pbd-actions{flex-wrap:wrap}.card-section table,.container>table{-webkit-overflow-scrolling:touch;display:block;overflow-x:auto}.pagination-belt{flex-wrap:wrap;gap:8px}.pagination-belt form{width:100%}.batch-assign-panel form{flex-direction:column;align-items:stretch}.wb-header-actions{flex-wrap:wrap;gap:8px}.due-group-chip{flex-direction:row;justify-content:space-between;align-items:center;width:100%;margin-bottom:2px}.study-card{border-radius:14px;margin-top:8px;padding:16px!important}.study-card h2{margin-bottom:2px;font-size:1.8rem}.answer-panel{margin-top:8px}.answer-panel summary{padding:8px 0;font-size:.9rem}.answer-panel p{margin:6px 0}.rating{gap:8px;margin-top:12px}.rating button{height:52px;font-size:.82rem}.study-card .inline-form{gap:6px;margin-top:6px!important}.study-card .inline-form small{display:none}.study-group-picker{margin-bottom:6px}.study-group-units{max-height:200px}.study-card .bar{max-width:none}.mission-card{padding:18px}.mission-card h2{font-size:1.2rem}.mission-copy{font-size:.85rem}.mission-progress,.mission-actions{margin-top:10px}.cards{gap:8px;margin-top:10px}.card{padding:12px}.card-icon{font-size:1.2rem}.card .count-num{font-size:1.3rem}.pomo-widget{max-height:50vh;overflow-y:auto;border-radius:16px 16px 0 0!important;width:100%!important;inset:auto 0 0!important}.pomo-body{padding:10px 14px 14px}.pomo-ring-wrap{margin:0 auto}.pomo-ring-svg{width:90px!important;height:90px!important}.pomo-time{font-size:1rem!important}.pomo-status{font-size:.7rem}.pomo-actions{gap:6px;margin-top:8px}.pomo-btn{padding:6px 12px!important;font-size:.75rem!important}.pomo-stats{margin-top:6px}.pomo-auto-indicator{margin-top:4px;font-size:.7rem}.pomo-mini{width:44px;height:44px;bottom:12px;right:12px;top:auto!important}.pomo-mini-time{font-size:11px}.pomo-fab{width:44px!important;height:44px!important;bottom:12px!important;right:12px!important}}@media (width<=480px){.brand-block h1{font-size:1.2rem}.brand-eyebrow{font-size:.65rem}.study-card{padding:12px!important}.study-card h2{font-size:1.5rem}.answer-panel p{font-size:.9rem}.rating{gap:6px}.rating button{height:46px;font-size:.8rem}.rating{grid-template-columns:1fr 1fr}.cards{gap:6px}.card{padding:10px}.card .count-num{font-size:1.2rem}.card strong{font-size:.78rem}.card .meta{font-size:.7rem}.words-grid{grid-template-columns:1fr!important}.site-footer{text-align:left;width:calc(100% - 32px);margin-bottom:22px;padding:14px 16px;display:block}.footer-message{font-size:.75rem}.footer-icp{margin-top:8px;font-size:.72rem;display:inline-block}.adm-row-actions{flex-wrap:wrap}.adm-row-actions .btn{text-align:center;flex:1;min-width:0}}.adm-row-book{flex-shrink:0;align-items:center;gap:6px;display:flex}.adm-book-select{border:1px solid var(--line,#e2e8f0);background:var(--panel,#fff);color:var(--ink);border-radius:6px;max-width:200px;min-height:32px;padding:4px 8px;font-size:.82rem;transition:border-color .3s}.adm-book-select:focus{border-color:var(--accent);outline:none}.bh-rank-list{flex-direction:column;gap:4px;display:flex}.bh-rank-item{background:var(--bg-deep);border-radius:8px;align-items:center;gap:12px;padding:10px 14px;display:flex}.bh-rank-pos{text-align:center;width:28px;color:var(--sub);font-size:.9rem;font-weight:700}.bh-rank-name{flex:1;font-weight:500}.bh-rank-elo{color:var(--accent);font-weight:700}.bh-match-list{flex-direction:column;gap:8px;display:flex}.bh-match-card{color:var(--ink);background:var(--bg-deep);border:1px solid var(--line-light);border-radius:10px;padding:12px 14px;text-decoration:none;transition:border-color .15s;display:block}.bh-match-card:hover{border-color:var(--secondary)}.bh-match-top{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.bh-match-code{font-size:.85rem;font-weight:600}.bh-match-result{font-size:.82rem;font-weight:600}.bh-win{color:var(--ok)}.bh-lose{color:var(--danger)}.bh-draw{color:var(--sub)}.bh-match-players{margin-bottom:4px;font-size:.9rem}.bh-match-bottom{justify-content:space-between;align-items:center;display:flex}.bh-match-score{font-size:1rem;font-weight:700}.br-room-list{flex-direction:column;gap:8px;display:flex}.br-room-card{color:var(--ink);background:var(--bg-deep);border:1px solid var(--line-light);border-radius:10px;padding:12px 14px;text-decoration:none;transition:border-color .15s;display:block}.br-room-card:hover{border-color:var(--secondary)}.br-room-top{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.br-room-code{font-size:.9rem;font-weight:600}.br-room-status{border-radius:10px;padding:2px 10px;font-size:.78rem;font-weight:600}.br-status-waiting{background:var(--warn-soft);color:var(--warn)}.br-status-playing{background:var(--ok-soft);color:var(--ok)}.br-status-done{background:var(--bg-deep);color:var(--sub)}.br-room-players{margin-bottom:4px;font-size:.9rem}.br-room-bottom{gap:12px;display:flex}.ch-rank-list{flex-direction:column;gap:4px;display:flex}.ch-rank-item{background:var(--bg-deep);border-radius:8px;align-items:center;gap:12px;padding:10px 14px;display:flex}.ch-rank-pos{text-align:center;width:28px;color:var(--sub);font-size:.9rem;font-weight:700}.ch-rank-top{color:var(--accent)}.ch-rank-name{flex:1;font-weight:500}.ch-rank-scores{text-align:right}.ch-rank-total{font-size:1rem;font-weight:700}.cal-grid-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}.cal-day{font-size:.85rem;font-weight:600;display:block}.cal-count{color:var(--sub);font-size:.7rem;display:block}.focus-card{text-align:center}.focus-timer{font-size:3.5rem;font-weight:700;font-family:var(--ui-font,-apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);letter-spacing:.05em;margin:16px 0}.focus-btns{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.bk-list{flex-direction:column;gap:8px;display:flex}.bk-item{background:var(--bg-deep);border:1px solid var(--line-light);border-radius:10px;padding:12px 14px}.bk-item-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px;margin-bottom:8px;display:flex}.bk-item-name{font-size:.95rem}.bk-item-meta{align-items:center;gap:8px;display:flex}.bk-item-actions{flex-wrap:wrap;gap:6px;display:flex}.bk-rename-row{border-top:1px solid var(--line-light);margin-top:8px;padding-top:8px}.grammar-page{padding-bottom:36px}.grammar-hero{border:1px solid var(--line);border-radius:var(--radius-xl);background:linear-gradient(135deg, #fff7edeb, #eef2ffe6), var(--panel);box-shadow:var(--elev-lg);grid-template-columns:minmax(0,1fr) 300px;align-items:stretch;gap:18px;margin-top:0;padding:30px;display:grid}.grammar-hero h2{color:var(--ink);margin:0;font-size:clamp(1.8rem,4vw,3rem);line-height:1.08}.grammar-hero-copy{max-width:720px;color:var(--sub);margin:14px 0 0;font-size:1rem}.grammar-hero-panel{border-radius:var(--radius);background:#ffffffb8;border:1px solid #ffffffdb;grid-template-columns:repeat(2,minmax(0,1fr));align-content:center;gap:8px;padding:16px;display:grid}.grammar-hero-panel span{border-radius:var(--radius-sm);background:var(--panel);min-height:42px;color:var(--ink);box-shadow:var(--elev-sm);justify-content:center;align-items:center;padding:8px;font-size:.82rem;font-weight:800;display:flex}.grammar-practice-strip{border-radius:var(--radius);background:var(--panel);border:1px solid var(--line);box-shadow:var(--elev-sm);justify-content:space-between;align-items:center;gap:16px;margin-top:14px;padding:16px 18px;display:flex}.grammar-practice-strip p{margin:4px 0 0}.grammar-modules{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:14px;display:grid}.grammar-module{border-radius:var(--radius);border:1px solid var(--line);background:var(--panel);box-shadow:var(--elev);padding:22px}.grammar-module-head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.grammar-module h3{margin:0;font-size:1.25rem}.grammar-stage{color:var(--accent-deep);white-space:nowrap;font-size:.78rem;font-weight:900}.grammar-focus{color:var(--ink);margin:10px 0 0;font-weight:700}.grammar-points{color:var(--sub);margin:14px 0 0;padding-left:20px}.grammar-points li+li{margin-top:6px}.grammar-example,.grammar-analysis{border-radius:var(--radius-sm);background:var(--bg);border:1px solid var(--line-light);margin-top:14px;padding:12px 14px}.grammar-example span,.grammar-analysis span{color:var(--accent-deep);margin-bottom:4px;font-size:.78rem;font-weight:900;display:block}.grammar-example p,.grammar-analysis p{margin:0}.grammar-example p{font-family:var(--ui-font,-apple-system, BlinkMacSystemFont, "PingFang SC", sans-serif);font-weight:700}.grammar-check-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px;display:grid}.grammar-check-grid label{border-radius:var(--radius-sm);background:var(--bg);border:1px solid var(--line-light);color:var(--ink);align-items:flex-start;gap:9px;padding:12px;font-weight:700;display:flex}.grammar-check-grid input{accent-color:var(--accent);margin-top:5px}body.theme-dark .grammar-hero{background:linear-gradient(135deg, #fb923c1f, #818cf81f), var(--panel)}body.theme-dark .grammar-hero-panel{border-color:var(--line);background:#0f172a57}@media (width<=540px){.focus-timer{font-size:2.8rem}.focus-btns{flex-direction:column}.focus-btns .btn{width:100%}.calendar-grid{grid-template-columns:repeat(6,1fr)!important}.wr-cards{grid-template-columns:repeat(2,1fr)!important}.room-meta-line{flex-direction:column;gap:4px}.link-share-row{flex-direction:column;gap:6px}.link-share-row input{width:100%}.heatmap{grid-template-columns:repeat(8,1fr)!important}.focus-stats-header{grid-template-columns:repeat(2,1fr);gap:8px}.stat-num{font-size:24px}.bk-item-head{flex-direction:column;align-items:flex-start}.bk-item-actions{width:100%}.bk-item-actions .btn{text-align:center;flex:1}.grammar-hero{grid-template-columns:1fr;padding:22px}.grammar-hero-panel,.grammar-modules,.grammar-check-grid{grid-template-columns:1fr}.grammar-practice-strip{flex-direction:column;align-items:stretch}.grammar-practice-strip .btn{width:100%}.grammar-module-head{flex-direction:column;align-items:flex-start}}.brand-block h1{border:1px solid var(--line);border-radius:12px;margin:0;padding:8px 14px;font-size:1rem;line-height:1.2;display:inline-block;background:var(--bg-deep)!important;color:var(--ink)!important;text-shadow:none!important;-webkit-background-clip:border-box!important;background-clip:border-box!important;animation:none!important}.header-main>.brand-block{display:none!important}.header-main{justify-content:center}.word-etymology{color:var(--text,#0f172a);background:#0891b20e;border:1px solid #0e74902e;border-radius:10px;margin-top:10px;padding:10px 12px}.word-etymology summary{cursor:pointer;color:#0e7490;font-size:12px;font-weight:800}.word-etymology p{white-space:pre-line;margin:8px 0 0;font-size:12px;line-height:1.7}.word-etymology-source{color:#0e7490;margin-top:7px;font-size:9px;text-decoration:none;display:inline-block}.word-etymology.is-loading{opacity:.72}.word-etymology-links{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.word-etymology-title{color:#0f172a;width:100%;font-size:12px;font-weight:800}.word-etymology-link{color:#0e7490;background:#ffffffad;border:1px solid #0e74902e;border-radius:7px;padding:5px 8px;font-size:11px;font-weight:700;text-decoration:none;display:inline-block}.word-etymology-link:hover{background:#0891b21a;border-color:#0e74906b}.theme-dark .word-etymology-title{color:#e2e8f0}.theme-dark .word-etymology{background:#0891b217;border-color:#67e8f92e}.word-root-analysis{color:inherit;gap:7px;display:grid;margin-top:8px!important}.word-root-analysis-title{color:var(--muted,#64748b);letter-spacing:.08em;font-size:11px;font-weight:900}.word-root-part{border:1px solid #0000;border-radius:9px;padding:8px 10px;font-size:12px;line-height:1.65;display:block}.word-root-part strong{font-weight:900}.word-root-part.is-build{color:#92400e;background:#fffbeb;border-color:#fde68a}.word-root-part.is-meaning{color:#1e40af;background:#eff6ff;border-color:#bfdbfe}.word-root-part.is-origin{color:#166534;background:#f0fdf4;border-color:#bbf7d0}.word-root-part.is-memory,.word-root-part.is-related{color:#6b21a8;background:#faf5ff;border-color:#e9d5ff}.theme-dark .word-root-part.is-build{color:#fde68a;background:#92400e38;border-color:#fbbf244d}.theme-dark .word-root-part.is-meaning{color:#bfdbfe;background:#1e40af38;border-color:#60a5fa4d}.theme-dark .word-root-part.is-origin{color:#bbf7d0;background:#16653438;border-color:#4ade804d}.theme-dark .word-root-part.is-memory,.theme-dark .word-root-part.is-related{color:#e9d5ff;background:#6b21a838;border-color:#c084fc4d}.battle-typing-hint{min-height:18px}.battle-mt-sm{margin-top:8px}.flash-data-store{display:none}.pomo-auto-toggle-clickable{cursor:pointer}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ui-bg:#f5f5f7;--ui-bg-top:#fafafc;--ui-surface:#fff;--ui-surface-raised:#ffffffeb;--ui-surface-muted:#f0f1f4;--ui-surface-hover:#e9ebef;--ui-ink:#1d1d1f;--ui-ink-2:#3a3a3c;--ui-muted:#6e6e73;--ui-faint:#8e8e93;--ui-line:#3c3c4324;--ui-line-strong:#3c3c433b;--ui-blue:#0071e3;--ui-blue-hover:#0077ed;--ui-blue-pressed:#0068d1;--ui-blue-soft:#0071e31a;--ui-blue-fill:#0071e3;--ui-blue-fill-hover:#0068d1;--ui-hero-bg:#1d1d1f;--ui-hero-ink:#fff;--ui-green:#248a3d;--ui-green-soft:#248a3d1c;--ui-orange:#c93400;--ui-orange-soft:#c934001a;--ui-red:#d70015;--ui-red-soft:#d7001517;--ui-red-fill:#d70015;--ui-gold:#9a6700;--ui-gold-soft:#9a67001a;--ui-purple:#7b45b8;--ui-purple-soft:#7b45b81a;--ui-pink:#b4236d;--ui-pink-soft:#b4236d17;--ui-teal:#007c83;--ui-teal-soft:#007c831a;--ui-radius-xs:8px;--ui-radius-sm:11px;--ui-radius-md:15px;--ui-radius-lg:20px;--ui-radius-xl:26px;--ui-pill:999px;--ui-shadow-1:0 1px 2px #00000009;--ui-shadow-2:0 8px 28px #0001;--ui-shadow-3:0 22px 60px #0000001c;--ui-focus:0 0 0 4px #0071e32e;--ui-content:1120px;--ui-shell:1280px;--ui-header-height:66px;--ui-font:-apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Display", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", sans-serif;--ui-reading-font:"Iowan Old Style", "Baskerville", "Songti SC", "STSong", serif;--ui-ease:cubic-bezier(.2, .8, .2, 1);--bg:var(--ui-bg);--bg-deep:var(--ui-surface-muted);--panel:var(--ui-surface);--panel-glass:var(--ui-surface-raised);--ink:var(--ui-ink);--text:var(--ui-ink);--sub:var(--ui-muted);--muted:var(--ui-muted);--line:var(--ui-line);--line-light:var(--ui-line);--border:var(--ui-line);--card-bg:var(--ui-surface);--card-bg2:var(--ui-surface-muted);--input-bg:var(--ui-surface);--accent:var(--ui-blue);--accent-deep:var(--ui-blue);--accent-soft:var(--ui-blue-soft);--accent-glow:#0071e32e;--secondary:var(--ui-ink-2);--secondary-soft:var(--ui-surface-muted);--ok:var(--ui-green);--ok-soft:var(--ui-green-soft);--danger:var(--ui-red);--danger-soft:var(--ui-red-soft);--warn:var(--ui-gold);--warn-soft:var(--ui-gold-soft);--radius:var(--ui-radius-md);--radius-sm:var(--ui-radius-sm);--radius-xl:var(--ui-radius-xl);--r-sm:var(--ui-radius-xs);--r-md:var(--ui-radius-sm);--r-lg:var(--ui-radius-md);--r-xl:var(--ui-radius-lg);--elev-sm:var(--ui-shadow-1);--elev:var(--ui-shadow-2);--elev-lg:var(--ui-shadow-3);--shadow-sm:var(--ui-shadow-1);--shadow:var(--ui-shadow-2);--shadow-lg:var(--ui-shadow-3);--blur:blur(24px) saturate(150%)}html.theme-dark,body.theme-dark{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ui-bg:#111214;--ui-bg-top:#17181b;--ui-surface:#1c1d20;--ui-surface-raised:#1e1f23eb;--ui-surface-muted:#27282c;--ui-surface-hover:#303136;--ui-ink:#f5f5f7;--ui-ink-2:#e5e5ea;--ui-muted:#aeaeb2;--ui-faint:#8e8e93;--ui-line:#ebebf51f;--ui-line-strong:#ebebf533;--ui-blue:#0a84ff;--ui-blue-hover:#409cff;--ui-blue-pressed:#0071e3;--ui-blue-soft:#0a84ff26;--ui-blue-fill:#0071e3;--ui-blue-fill-hover:#0068d1;--ui-hero-bg:#1d1d1f;--ui-hero-ink:#fff;--ui-green:#30d158;--ui-green-soft:#30d15821;--ui-orange:#ff9f0a;--ui-orange-soft:#ff9f0a21;--ui-red:#ff453a;--ui-red-soft:#ff453a21;--ui-red-fill:#d70015;--ui-gold:#ffd60a;--ui-gold-soft:#ffd60a1f;--ui-purple:#bf5af2;--ui-purple-soft:#bf5af224;--ui-pink:#ff6482;--ui-pink-soft:#ff648224;--ui-teal:#64d2ff;--ui-teal-soft:#64d2ff21;--ui-shadow-1:0 1px 2px #00000038;--ui-shadow-2:0 10px 32px #0000003d;--ui-shadow-3:0 24px 72px #00000061;--ui-focus:0 0 0 4px #0a84ff3d}body.app-shell .skip-link{z-index:10050;border-radius:var(--ui-radius-sm);color:#fff;background:var(--ui-blue-fill);box-shadow:var(--ui-shadow-2);transition:transform .16s var(--ui-ease);padding:9px 14px;position:fixed;top:10px;left:12px;transform:translateY(-160%)}body.app-shell .skip-link:focus{color:#fff;transform:translateY(0)}html{background:var(--ui-bg);min-width:320px;scroll-padding-top:calc(var(--ui-header-height) + 20px)}body.app-shell{min-width:320px;min-height:100vh;color:var(--ui-ink);background:linear-gradient(180deg, var(--ui-bg-top) 0, var(--ui-bg) 340px);font-family:var(--ui-font);font-feature-settings:"kern", "liga", "calt";letter-spacing:-.006em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;margin:0;font-size:15px;line-height:1.55}body.app-shell:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(circle at 18% -35%,#0071e312,#0000 46%),radial-gradient(circle at 84% -45%,#34c7590b,#0000 42%);height:300px;position:fixed;inset:0 0 auto}body.app-shell.auth-page:before{background:radial-gradient(circle at 18% 5%,#0071e31a,#0000 32rem),radial-gradient(circle at 90% 80%,#34c7590e,#0000 30rem);height:100%}body.app-shell .fx-bg,body.app-shell .ripple{display:none!important}body.app-shell,body.app-shell button,body.app-shell input,body.app-shell select,body.app-shell textarea{font-family:var(--ui-font)}body.app-shell :where(h1,h2,h3,h4,h5,h6){color:var(--ui-ink);font-family:var(--ui-font);letter-spacing:-.035em;text-wrap:balance;margin-top:0;font-weight:700}body.app-shell h1{font-size:clamp(2rem,4.5vw,3.5rem);line-height:1.04}body.app-shell h2{font-size:clamp(1.55rem,3vw,2.25rem);line-height:1.12}body.app-shell h3{font-size:clamp(1.08rem,2vw,1.35rem);line-height:1.24}body.app-shell :where(p,li,dd){text-wrap:pretty}body.app-shell a{color:var(--ui-blue);text-underline-offset:.18em;text-decoration-color:#0071e359;transition:color .14s,opacity .14s,text-decoration-color .14s}body.app-shell a:hover{color:var(--ui-blue-hover);text-decoration-color:currentColor}body.app-shell :focus-visible{outline:2px solid var(--ui-blue);outline-offset:3px;box-shadow:var(--ui-focus)}body.app-shell ::selection{color:inherit;background:#0071e32e}body.app-shell .meta,body.app-shell .text-muted,body.app-shell small{color:var(--ui-muted)}body.app-shell hr{border:0;border-top:1px solid var(--ui-line);opacity:1;margin:24px 0}body.app-shell .site-header{z-index:1000;min-height:var(--ui-header-height);border:0;border-bottom:1px solid var(--ui-line);background:var(--ui-bg);padding:8px 0;position:sticky;top:0}@supports (color:color-mix(in lab, red, red)){body.app-shell .site-header{background:color-mix(in srgb, var(--ui-bg) 82%, transparent)}}body.app-shell .site-header{box-shadow:none;-webkit-backdrop-filter:blur(24px)saturate(160%);transform:none!important}body.app-shell .site-header .app-header-container{width:min(100% - 28px, var(--ui-shell));max-width:var(--ui-shell);padding:0}body.app-shell .header-main{gap:18px;min-height:49px}body.app-shell .app-brand{color:var(--ui-ink);flex:none;align-items:center;gap:10px;text-decoration:none;display:inline-flex}body.app-shell .app-brand:hover{color:var(--ui-ink)}body.app-shell .app-brand-mark{background:var(--ui-ink);width:36px;height:36px;color:var(--ui-surface);box-shadow:var(--ui-shadow-1);font-family:var(--ui-reading-font);border-radius:11px;place-items:center;font-size:17px;font-weight:700;display:grid}body.app-shell .app-brand-copy{line-height:1;display:grid}body.app-shell .app-brand-copy strong{color:var(--ui-ink);letter-spacing:-.03em;font-size:14px;font-weight:720}body.app-shell .app-brand-copy small{color:var(--ui-faint);letter-spacing:.14em;margin-top:5px;font-size:7px;font-weight:700}body.app-shell .nav-links{flex:auto;justify-content:center;align-items:center;gap:2px;min-width:0;display:flex}body.app-shell .nav-item,body.app-shell .nav-more>summary{border-radius:var(--ui-pill);min-height:36px;color:var(--ui-muted);letter-spacing:-.015em;background:0 0;border:0;padding:8px 11px;font-size:13px;font-weight:600;line-height:20px;text-decoration:none;transition:color .15s,background-color .15s}body.app-shell .nav-item:hover,body.app-shell .nav-more>summary:hover,body.app-shell .nav-more[open]>summary{color:var(--ui-ink);background:var(--ui-surface-muted)}body.app-shell .nav-item.active,body.app-shell .nav-more.active>summary{color:var(--ui-ink);background:var(--ui-surface);box-shadow:0 0 0 1px var(--ui-line), var(--ui-shadow-1)}body.app-shell .nav-more{background:0 0;border:0;border-radius:0;padding:0;position:relative}body.app-shell .nav-more>summary{list-style:none;display:list-item}body.app-shell .nav-more>summary::-webkit-details-marker{display:none}body.app-shell .nav-more-menu{z-index:1100;border:1px solid var(--ui-line);border-radius:var(--ui-radius-md);background:var(--ui-surface-raised);width:224px;box-shadow:var(--ui-shadow-3);-webkit-backdrop-filter:blur(28px)saturate(160%);padding:7px;position:absolute;top:calc(100% + 10px);right:0;overflow:hidden}body.app-shell .nav-more-menu a{border-radius:var(--ui-radius-sm);color:var(--ui-ink);gap:2px;padding:10px 11px;text-decoration:none;display:grid}body.app-shell .nav-more-menu a:hover{color:var(--ui-ink);background:var(--ui-surface-muted)}body.app-shell .nav-more-menu a span{font-size:13px;font-weight:650}body.app-shell .nav-more-menu a small{font-size:10px}body.app-shell .user-controls,body.app-shell .topline{flex:none;gap:7px}body.app-shell .book-switch{margin:0;display:block}body.app-shell #book-switcher{border:1px solid var(--ui-line);border-radius:var(--ui-pill);width:124px;min-width:0;min-height:36px;color:var(--ui-ink-2);background-color:var(--ui-surface);box-shadow:var(--ui-shadow-1);text-overflow:ellipsis;margin:0;padding:6px 28px 6px 11px;font-size:12px;font-weight:600}body.app-shell .app-icon-button{border:1px solid var(--ui-line);width:36px;height:36px;min-height:36px;color:var(--ui-ink-2);background:var(--ui-surface);box-shadow:var(--ui-shadow-1);cursor:pointer;border-radius:50%;flex:none;place-items:center;padding:0;display:inline-grid}body.app-shell .app-icon-button:hover{color:var(--ui-ink);background:var(--ui-surface-muted)}body.app-shell .theme-toggle-icon{font-size:18px;line-height:1}body.app-shell .nav-logout{border:1px solid var(--ui-line);border-radius:var(--ui-pill);min-height:36px;color:var(--ui-muted);background:0 0;align-items:center;padding:7px 12px;font-size:12px;font-weight:650;text-decoration:none;display:inline-flex}body.app-shell .nav-logout:hover{color:var(--ui-red);background:var(--ui-red-soft);border-color:#d7001538}body.app-shell .auth-nav{gap:7px;margin-left:auto}body.app-shell .nav-pill{border:1px solid var(--ui-line);min-height:38px;color:var(--ui-ink);background:var(--ui-surface);box-shadow:var(--ui-shadow-1);justify-content:center;align-items:center;padding:8px 15px;font-size:13px;font-weight:650;text-decoration:none;display:inline-flex;border-radius:var(--ui-pill)!important}body.app-shell .nav-pill-primary{border-color:var(--ui-blue-fill);color:#fff;background:var(--ui-blue-fill)}body.app-shell .nav-pill-primary:hover{border-color:var(--ui-blue-fill-hover);color:#fff;background:var(--ui-blue-fill-hover)}body.app-shell .hamburger{display:none}body.app-shell .app-main{width:min(100%, var(--ui-shell));max-width:var(--ui-shell);min-height:calc(100vh - 220px);margin:0 auto;padding:30px 18px 56px}body.app-shell.auth-page .app-main{width:100%;max-width:none;min-height:calc(100vh - 132px);margin:0;padding:28px 18px 48px}body.app-shell .app-main>.container,body.app-shell .app-main>[class*=-container]{width:min(100%, var(--ui-content));max-width:var(--ui-content);margin-left:auto;margin-right:auto;padding-left:0;padding-right:0}body.app-shell .site-footer{width:min(100% - 36px, var(--ui-shell));border-top:1px solid var(--ui-line);color:var(--ui-muted);background:0 0;margin:0 auto;padding:28px 0 34px}body.app-shell .site-footer-inner{justify-content:space-between;align-items:flex-start;gap:32px;display:flex}body.app-shell .site-footer strong{color:var(--ui-ink-2);font-size:13px}body.app-shell .site-footer-meta{text-align:right;justify-items:end;gap:3px;display:grid}body.app-shell .footer-message{color:var(--ui-muted);margin:3px 0 0;font-size:11px;line-height:1.55}body.app-shell .footer-icp{color:var(--ui-faint);margin-top:3px;font-size:10px;text-decoration:none}body.app-shell.auth-page .site-footer{width:min(100% - 32px,980px);padding:10px 0 max(12px, env(safe-area-inset-bottom));text-align:center}body.app-shell.auth-page .site-footer-inner{justify-content:center;justify-items:center;gap:5px;display:grid}body.app-shell.auth-page .site-footer-inner>div:first-child{flex-wrap:wrap;justify-content:center;align-items:baseline;gap:4px 10px;display:flex}body.app-shell.auth-page .site-footer-inner>div:first-child strong{font-size:12px}body.app-shell.auth-page .site-footer-meta{text-align:center;flex-wrap:wrap;justify-content:center;place-items:center;gap:3px 12px;display:flex}body.app-shell.auth-page .footer-message,body.app-shell.auth-page .footer-icp{margin:0;font-size:9px;line-height:1.4}body.app-shell .site-footer.site-footer-plain{width:100%;max-width:none;padding:14px 14px max(16px, env(safe-area-inset-bottom));color:var(--ui-muted);box-shadow:none;box-sizing:border-box;text-align:center;background:0 0;border:0;margin:0 auto}body.app-shell .site-footer-plain .site-footer-plain-inner{justify-content:center;justify-items:center;gap:10px;width:100%;display:grid}body.app-shell .site-footer-plain .site-footer-brand-line,body.app-shell .site-footer-plain .site-footer-meta{text-align:center;place-items:center;width:100%;display:grid}body.app-shell .site-footer-plain .site-footer-brand-line{gap:3px}body.app-shell .site-footer-plain .site-footer-meta{gap:5px}body.app-shell .site-footer-plain .site-footer-brand-line>*,body.app-shell .site-footer-plain .site-footer-meta>*{text-align:center;width:100%;display:block}body.app-shell .site-footer-plain .site-footer-brand-line{font-size:10px}body.app-shell .site-footer-plain .site-footer-brand-line strong,body.app-shell .site-footer-plain .site-footer-meta,body.app-shell .site-footer-plain .footer-icp{color:var(--ui-muted);margin:0;font-size:9px;line-height:1.55}body.app-shell .site-footer-plain .footer-icp{text-decoration:none}body.app-shell .site-footer.site-footer-home{border-top:0;width:100%;max-width:none;margin:0;padding:0}body.app-shell .footer-home-panel{color:#f7f9fc;isolation:isolate;background:radial-gradient(circle at 92% -8%,#0a84ff4d,#0000 34%),radial-gradient(circle at 8% 118%,#30d15821,#0000 30%),linear-gradient(126deg,#111722 0%,#10141c 58%,#14233a 100%);border:0;border-top:1px solid #ffffff1a;border-radius:28px 28px 0 0;padding:0;position:relative;overflow:hidden;box-shadow:0 30px 74px #0d16242e}body.app-shell .footer-home-panel:before{content:"";z-index:-1;opacity:.22;pointer-events:none;background-image:linear-gradient(#ffffff0d 1px,#0000 1px),linear-gradient(90deg,#ffffff0d 1px,#0000 1px);background-size:42px 42px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#0000,#000 48%,#000);mask-image:linear-gradient(90deg,#0000,#000 48%,#000)}body.app-shell .footer-home-orbit{pointer-events:none;border:1px solid #93c5fd2e;border-radius:50%;width:330px;height:330px;position:absolute;top:-118px;right:-92px}body.app-shell .footer-home-orbit:before,body.app-shell .footer-home-orbit:after{content:"";border-radius:inherit;border:1px solid #93c5fd1f;position:absolute}body.app-shell .footer-home-orbit:before{inset:46px}body.app-shell .footer-home-orbit:after{background:#0a84ff14;inset:94px}body.app-shell .footer-home-main{grid-template-columns:minmax(0,1fr) minmax(260px,330px);align-items:end;gap:clamp(40px,7vw,92px);display:grid;position:relative}body.app-shell .footer-home-brand{align-items:center;gap:11px;display:inline-flex}body.app-shell .footer-home-mark{color:#fff;background:#ffffff17;border:1px solid #ffffff29;border-radius:13px;place-items:center;width:38px;height:38px;font-size:14px;font-weight:820;display:grid;box-shadow:inset 0 1px #ffffff1c}body.app-shell .footer-home-brand strong{color:#fff;letter-spacing:-.01em;font-size:14px;font-weight:760;display:block}body.app-shell .footer-home-brand small{color:#e2e8f085;letter-spacing:.17em;margin-top:4px;font-size:8px;font-weight:760;display:block}body.app-shell .footer-home-bottom{border-top:1px solid #ffffff17;justify-content:space-between;align-items:center;gap:28px;margin-top:38px;padding-top:18px;display:flex;position:relative}body.app-shell .footer-home-contact{color:#e2e8f094;font:inherit;cursor:pointer;background:#ffffff0b;border:1px solid #ffffff1a;border-radius:999px;grid-template-columns:auto auto auto;align-items:center;gap:7px;padding:6px 8px 6px 11px;transition:border-color .16s,background .16s;display:inline-grid}body.app-shell .footer-home-contact span{font-size:9px}body.app-shell .footer-home-contact strong{color:#ffffffe0;font-size:10px}body.app-shell .footer-home-contact small{color:#9ccaff;background:#0a84ff24;border-radius:999px;padding:3px 7px;font-size:8px}body.app-shell .footer-home-contact:hover,body.app-shell .footer-home-contact.is-copied{background:#64d2ff14;border-color:#64d2ff57}body.app-shell .footer-home-panel.footer-home-panel-compact{padding:0}body.app-shell .footer-home-content{width:min(100% - 36px, var(--ui-shell));padding:14px 26px max(8px, env(safe-area-inset-bottom));margin:0 auto}body.app-shell .footer-home-main.footer-home-main-compact{grid-template-columns:auto auto;justify-content:center;place-items:center;gap:20px}body.app-shell .footer-home-identity{justify-content:center;align-items:center;gap:16px;min-width:0;display:flex;position:relative}body.app-shell .footer-home-panel-compact .footer-home-mark{border-radius:10px;width:32px;height:32px;font-size:12px}body.app-shell .footer-home-brand-copy strong{color:#fff;font-family:var(--ui-reading-font);letter-spacing:-.035em;font-size:17px;font-weight:720}body.app-shell .footer-home-brand-copy small{color:#93c5fdb3;letter-spacing:.2em;margin-top:2px;font-size:8px}body.app-shell .footer-home-tagline{color:#e2e8f0a8;font-family:var(--ui-reading-font);letter-spacing:-.02em;margin:0;font-size:12px;line-height:1.45}body.app-shell .footer-home-contact.footer-home-contact-card{text-align:center;border-radius:13px;grid-template-columns:auto auto;min-width:220px;padding:7px 10px}body.app-shell .footer-home-contact-card span{color:#e2e8f080;letter-spacing:.05em;grid-column:1/-1;font-size:9px}body.app-shell .footer-home-contact-card strong{color:#fff;letter-spacing:.01em;text-align:left;font-size:12px}body.app-shell .footer-home-contact-card small{justify-self:end}body.app-shell .footer-home-panel-compact .footer-home-bottom{color:#e2e8f061;text-align:center;justify-content:center;gap:5px 14px;margin-top:9px;padding-top:7px;font-size:9px}body.app-shell .footer-home-panel-compact .footer-home-bottom a{color:#e2e8f07a;text-decoration:none}body.app-shell .footer-home-panel-compact .footer-home-bottom a:hover{color:#fff}body.app-shell .page-header{justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:22px;padding:0;display:flex}body.app-shell .page-header-text{min-width:0}body.app-shell .page-header-text h2,body.app-shell .page-header>h2{color:var(--ui-ink);letter-spacing:-.045em;margin:0 0 5px;font-size:clamp(1.65rem,3vw,2.35rem);font-weight:750}body.app-shell .page-header-text .meta,body.app-shell .page-header>.meta{margin:0;font-size:13px}body.app-shell :where(.cards,.stats-grid,.summary-grid,.dashboard-grid){gap:14px}body.app-shell :where(.card,.glass-card,.panel,.study-card,.mission-card,.book-card,.summary-card,.stat-card,.dashboard-card,[class$=-card],[class*=-card\ ]){border:1px solid var(--ui-line);border-radius:var(--ui-radius-md);color:var(--ui-ink);background:var(--ui-surface);box-shadow:var(--ui-shadow-1);background-image:none}body.app-shell :where(a.card,a.glass-card,a.book-card,a.course-card,a[class$=-card]){color:var(--ui-ink);transition:transform .18s var(--ui-ease), border-color .18s ease, box-shadow .18s var(--ui-ease), background-color .18s ease;text-decoration:none}body.app-shell :where(a.card,a.glass-card,a.book-card,a.course-card,a[class$=-card]):hover{border-color:var(--ui-line-strong);color:var(--ui-ink);background:var(--ui-surface-raised);box-shadow:var(--ui-shadow-2);transform:translateY(-2px)}body.app-shell :where(.hero,[class$=-hero],[class*=-hero\ ]){border-color:var(--ui-line);border-radius:var(--ui-radius-lg);box-shadow:var(--ui-shadow-1)}body.app-shell :where(.empty-state,[class$=-empty],[class*=-empty\ ]){border-color:var(--ui-line);border-radius:var(--ui-radius-md);color:var(--ui-muted);background-color:var(--ui-surface-muted)}body.app-shell :where(.btn,.button,[class$=-btn],[class*=-btn\ ]){min-height:42px;box-shadow:none;font-family:var(--ui-font);letter-spacing:-.01em;justify-content:center;align-items:center;gap:7px;padding:9px 15px;font-size:13px;font-weight:650;line-height:1.2;text-decoration:none;display:inline-flex;border-radius:var(--ui-radius-sm)!important;transition:transform .14s var(--ui-ease), color .14s ease, border-color .14s ease, background-color .14s ease, box-shadow .14s ease!important}body.app-shell :where(.btn-sm,[class*=btn-sm]){min-height:34px;padding:7px 11px;font-size:11px;border-radius:var(--ui-radius-xs)!important}body.app-shell :where(.btn-primary,.primary,[class$=-primary],[class*=-primary\ ]){border:1px solid var(--ui-blue-fill);color:#fff;background:var(--ui-blue-fill);background-image:none}body.app-shell :where(.btn-primary,.primary,[class$=-primary],[class*=-primary\ ]):hover:not(:disabled){border-color:var(--ui-blue-fill-hover);color:#fff;background:var(--ui-blue-fill-hover);transform:translateY(-1px);box-shadow:0 5px 16px #0071e32e}body.app-shell :where(.btn-soft,.btn-ghost,.ghost,.btn-outline-secondary,[class$=-ghost],[class*=-ghost\ ]){border:1px solid var(--ui-line);color:var(--ui-ink-2);background:var(--ui-surface)}body.app-shell :where(.btn-soft,.btn-ghost,.ghost,.btn-outline-secondary,[class$=-ghost],[class*=-ghost\ ]):hover:not(:disabled){border-color:var(--ui-line-strong);color:var(--ui-ink);background:var(--ui-surface-muted);transform:translateY(-1px)}body.app-shell :where(.btn-danger,.danger,[class$=-danger],[class*=-danger\ ]){border-color:var(--ui-red-fill);color:#fff;background:var(--ui-red-fill)}body.app-shell :where(.btn,.button,[class$=-btn],[class*=-btn\ ]):active:not(:disabled){transform:scale(.985)}body.app-shell :where(.btn,.button,[class$=-btn],[class*=-btn\ ]):disabled,body.app-shell :where(.btn,.button,[class$=-btn],[class*=-btn\ ])[aria-disabled=true]{cursor:not-allowed;opacity:.48;transform:none}body.app-shell :where(input:not([type=checkbox]):not([type=radio]):not([type=file]),textarea,select,.form-control,.form-select){border:1px solid var(--ui-line-strong);border-radius:var(--ui-radius-sm);width:100%;min-height:44px;color:var(--ui-ink);background-color:var(--ui-surface);font-family:var(--ui-font);margin-top:0;padding:10px 12px;font-size:14px;line-height:1.4;transition:border-color .14s,background-color .14s,box-shadow .14s;box-shadow:inset 0 1px 1px #00000005}body.app-shell textarea{resize:vertical;min-height:112px}body.app-shell :where(input:not([type=checkbox]):not([type=radio]):not([type=file]),textarea,select,.form-control,.form-select):hover:not(:disabled){border-color:var(--ui-line-strong)}@supports (color:color-mix(in lab, red, red)){body.app-shell :where(input:not([type=checkbox]):not([type=radio]):not([type=file]),textarea,select,.form-control,.form-select):hover:not(:disabled){border-color:color-mix(in srgb, var(--ui-line-strong) 75%, var(--ui-ink))}}body.app-shell :where(input:not([type=checkbox]):not([type=radio]):not([type=file]),textarea,select,.form-control,.form-select):focus{box-shadow:var(--ui-focus);outline:none;border-color:var(--ui-blue)!important}body.app-shell :where(input,textarea)::placeholder{color:var(--ui-faint);opacity:.8}body.app-shell :where(input[type=checkbox],input[type=radio]){accent-color:var(--ui-blue)}body.app-shell :where(label,legend,.form-label){color:var(--ui-ink-2);letter-spacing:-.006em;font-size:12px;font-weight:650}body.app-shell fieldset{min-width:0}body.app-shell .input-group-text{border-color:var(--ui-line-strong);color:var(--ui-muted);background:var(--ui-surface-muted)}body.app-shell table{border-color:var(--ui-line);width:100%;color:var(--ui-ink);background:var(--ui-surface);box-shadow:none!important}body.app-shell table :where(th,td){border-color:var(--ui-line);vertical-align:middle;padding:12px 14px}body.app-shell table th{color:var(--ui-muted);background:var(--ui-surface-muted);letter-spacing:.06em;text-transform:uppercase;font-size:10px;font-weight:750}body.app-shell table tbody tr{transition:background-color .12s}body.app-shell table tbody tr:hover>*{background:var(--ui-surface-muted)}@supports (color:color-mix(in lab, red, red)){body.app-shell table tbody tr:hover>*{background:color-mix(in srgb, var(--ui-surface-muted) 65%, transparent)}}body.app-shell :where(.list-group,.list-group-item){border-color:var(--ui-line)}body.app-shell .list-group-item{color:var(--ui-ink);background:var(--ui-surface)}body.app-shell :where(.progress,[class$=-progress],[class*=-progress\ ]){border-radius:var(--ui-pill);background:var(--ui-surface-muted);border:0;overflow:hidden;box-shadow:none!important}body.app-shell :where(.progress-bar,[class$=-bar]>span){border-radius:inherit;background:var(--ui-blue)}body.app-shell :where(.badge,.chip,.filter-chip,[class$=-badge],[class*=-badge\ ],[class$=-chip],[class*=-chip\ ]){border:1px solid var(--ui-line);border-radius:var(--ui-pill);color:var(--ui-ink-2);background:var(--ui-surface-muted);box-shadow:none;font-size:11px;font-weight:650}body.app-shell .filter-chip{align-items:center;min-height:34px;padding:7px 12px;text-decoration:none;display:inline-flex}body.app-shell .filter-chip:hover{border-color:var(--ui-line-strong);color:var(--ui-ink);background:var(--ui-surface-hover)}body.app-shell :where(.filter-chip.active,.badge-primary){border-color:var(--ui-blue-fill);color:#fff;background:var(--ui-blue-fill)}body.app-shell :where(.alert,[class$=-alert],[class*=-alert\ ]){border:1px solid var(--ui-line);border-radius:var(--ui-radius-sm);color:var(--ui-ink-2);background:var(--ui-surface-muted)}body.app-shell :where(.alert-success,.is-success){color:var(--ui-green);background:var(--ui-green-soft);border-color:#248a3d33}body.app-shell :where(.alert-danger,.is-error){color:var(--ui-red);background:var(--ui-red-soft);border-color:#d7001533}body.app-shell .dropdown-menu{border:1px solid var(--ui-line);border-radius:var(--ui-radius-md);background:var(--ui-surface-raised);box-shadow:var(--ui-shadow-3);-webkit-backdrop-filter:blur(28px)saturate(160%);backdrop-filter:blur(28px)saturate(160%);padding:7px}body.app-shell .dropdown-item{border-radius:var(--ui-radius-xs);color:var(--ui-ink);padding:9px 11px;font-size:13px}body.app-shell .dropdown-item:hover,body.app-shell .dropdown-item:focus{color:var(--ui-ink);background:var(--ui-surface-muted)}body.app-shell .modal-content,body.app-shell .offcanvas,body.app-shell .toast{border:1px solid var(--ui-line);border-radius:var(--ui-radius-lg);color:var(--ui-ink);background:var(--ui-surface-raised);box-shadow:var(--ui-shadow-3);-webkit-backdrop-filter:blur(32px)saturate(160%);backdrop-filter:blur(32px)saturate(160%)}body.app-shell .modal-header,body.app-shell .modal-footer,body.app-shell .offcanvas-header{border-color:var(--ui-line)}body.app-shell .accordion-item,body.app-shell .accordion-button{border-color:var(--ui-line);color:var(--ui-ink);background:var(--ui-surface)}body.app-shell .accordion-button:not(.collapsed){color:var(--ui-ink);background:var(--ui-blue-soft);box-shadow:inset 0 -1px 0 var(--ui-line)}body.app-shell #toast-container{top:calc(var(--ui-header-height) + 14px);z-index:1400;gap:9px;width:min(360px,100vw - 32px);display:grid;position:fixed;right:16px}body.app-shell #toast-container>*{border:1px solid var(--ui-line);border-radius:var(--ui-radius-sm);background:var(--ui-surface-raised);box-shadow:var(--ui-shadow-3);-webkit-backdrop-filter:blur(24px)saturate(160%);backdrop-filter:blur(24px)saturate(160%)}body.app-shell .achievement-modal{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#00000042}body.app-shell .achievement-card{border-radius:var(--ui-radius-lg);background:var(--ui-surface);box-shadow:var(--ui-shadow-3)}body.app-shell #confetti-canvas{pointer-events:none}body.app-shell .search-filter-belt{border:1px solid var(--ui-line);border-radius:var(--ui-radius-md);background:var(--ui-surface);box-shadow:var(--ui-shadow-1);gap:12px;margin-bottom:20px;padding:12px}body.app-shell .search-bar input{border-radius:var(--ui-pill);background:var(--ui-surface-muted);min-height:44px}body.app-shell .pagination-belt{border:1px solid var(--ui-line);border-radius:var(--ui-radius-md);background:var(--ui-surface);margin-top:22px;padding:13px}body.app-shell.auth-page{background:var(--ui-bg)}body.app-shell.auth-page :where(.auth-shell,.mobile-login-page){width:min(100%,1080px);margin:0 auto}body.app-shell.auth-page :where(.auth-card,.auth-panel,.auth-form-card){border:1px solid var(--ui-line);border-radius:var(--ui-radius-xl);background:var(--ui-surface-raised);box-shadow:var(--ui-shadow-3);-webkit-backdrop-filter:blur(24px)saturate(140%);backdrop-filter:blur(24px)saturate(140%)}body.app-shell.auth-page :where(.auth-input,.auth-card input){border-radius:var(--ui-radius-sm);min-height:48px}body.app-shell.auth-page :where(.auth-submit,.auth-btn){min-height:48px;border-radius:var(--ui-radius-sm)!important}body.app-shell .page-enter{animation:uiPageIn .26s var(--ui-ease) both}body.app-shell .page-leave{opacity:0;transition:opacity .1s,transform .1s;transform:translateY(2px)}@keyframes uiPageIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}html.motion-off *,body.motion-off *{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}@media (prefers-reduced-motion:reduce){body.app-shell *,body.app-shell :before,body.app-shell :after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}@media (width<=1120px){body.app-shell .app-brand-copy{display:none}body.app-shell .nav-item,body.app-shell .nav-more>summary{padding-left:9px;padding-right:9px;font-size:12px}body.app-shell #book-switcher{width:108px}}@media (width<=920px){:root{--ui-header-height:62px}body.app-shell .header-main{min-height:45px}body.app-shell .hamburger{border:1px solid var(--ui-line);background:var(--ui-surface);width:38px;height:38px;box-shadow:var(--ui-shadow-1);border-radius:50%;flex:none;order:3;place-content:center;gap:4px;padding:0;display:grid;position:relative}body.app-shell .hamburger span{background:var(--ui-ink);border-radius:2px;width:15px;height:1.5px;transition:transform .16s,opacity .16s;display:block}body.app-shell .hamburger.open span:first-child{transform:translateY(5.5px)rotate(45deg)}body.app-shell .hamburger.open span:nth-child(2){opacity:0}body.app-shell .hamburger.open span:nth-child(3){transform:translateY(-5.5px)rotate(-45deg)}body.app-shell .nav-links{z-index:1200;border:1px solid var(--ui-line);border-radius:var(--ui-radius-lg);background:var(--ui-surface-raised);max-height:calc(100vh - 90px);box-shadow:var(--ui-shadow-3);-webkit-backdrop-filter:blur(30px)saturate(160%);backdrop-filter:blur(30px)saturate(160%);align-items:stretch;padding:8px;display:none;position:absolute;top:calc(100% + 9px);left:0;right:0;overflow:auto}body.app-shell .nav-links.nav-open{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;display:grid}body.app-shell .nav-item,body.app-shell .nav-more>summary{border-radius:var(--ui-radius-sm);justify-content:flex-start;min-height:44px;padding:11px 13px;font-size:13px}body.app-shell .nav-item.active,body.app-shell .nav-more.active>summary{background:var(--ui-blue-soft);box-shadow:none}body.app-shell .nav-more{position:static}body.app-shell .nav-more-menu{border-radius:var(--ui-radius-sm);background:var(--ui-surface-muted);width:auto;box-shadow:none;border:0;margin-top:3px;padding:4px;position:static}body.app-shell .user-controls{margin-left:auto}body.app-shell .nav-logout{display:none}}@media (width<=640px){body.app-shell{font-size:14px}body.app-shell .site-header .app-header-container{width:min(100% - 20px, var(--ui-shell))}body.app-shell .app-brand-mark{border-radius:10px;width:34px;height:34px;font-size:16px}body.app-shell #book-switcher{width:92px;height:34px;min-height:34px;padding-left:10px;font-size:11px}body.app-shell .app-icon-button{width:34px;height:34px;min-height:34px}body.app-shell .hamburger{width:34px;height:34px}body.app-shell .nav-links.nav-open{grid-template-columns:1fr}body.app-shell .app-main,body.app-shell.auth-page .app-main{padding:20px 10px 42px}body.app-shell .app-main>.container,body.app-shell .app-main>[class*=-container]{width:100%}body.app-shell .page-header{align-items:flex-start;margin-bottom:17px}body.app-shell .page-header-text h2,body.app-shell .page-header>h2{font-size:1.65rem}body.app-shell :where(.card,.glass-card,.panel,.study-card,[class$=-card],[class*=-card\ ]){border-radius:var(--ui-radius-sm)}body.app-shell table :where(th,td){padding:10px}body.app-shell .site-footer{width:calc(100% - 20px);padding:22px 0 28px}body.app-shell .site-footer-inner{gap:16px;display:grid}body.app-shell .site-footer-meta{text-align:left;justify-items:start}body.app-shell .site-footer.site-footer-home{width:100%;margin:0;padding:0}body.app-shell .footer-home-panel{border-radius:22px 22px 0 0;padding:0}body.app-shell .footer-home-main{grid-template-columns:1fr;align-items:stretch;gap:28px}body.app-shell .footer-home-bottom{gap:15px;margin-top:28px;display:grid}body.app-shell .footer-home-contact{border-radius:16px;grid-template-columns:auto auto;justify-self:start}body.app-shell .footer-home-contact span{grid-column:1/-1}body.app-shell .footer-home-panel.footer-home-panel-compact{padding:0}body.app-shell .footer-home-content{width:100%;padding:14px 16px max(9px, env(safe-area-inset-bottom))}body.app-shell .footer-home-main.footer-home-main-compact{grid-template-columns:1fr;gap:10px}body.app-shell .footer-home-identity{gap:12px}body.app-shell .footer-home-contact.footer-home-contact-card{width:100%;min-width:0}body.app-shell .footer-home-panel-compact .footer-home-bottom{justify-content:center;gap:4px 12px;margin-top:9px;display:flex}}@media print{body.app-shell{color:#000;background:#fff}body.app-shell .site-header,body.app-shell .site-footer,body.app-shell #toast-container,body.app-shell #confetti-canvas,body.app-shell .pomo-widget,body.app-shell .pomo-mini,body.app-shell .pomo-fab{display:none!important}body.app-shell .app-main{width:100%;max-width:none;padding:0}body.app-shell :where(.card,.glass-card,.panel,[class$=-card]){break-inside:avoid;box-shadow:none;border-color:#bbb}}body.app-shell.auth-page .auth-shell{min-height:calc(100vh - 164px);padding:24px 0}body.app-shell.auth-page .auth-grid-new{grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);align-items:center;gap:clamp(36px,7vw,82px);width:min(100%,980px);display:grid}body.app-shell.auth-page .auth-intro-card{padding:24px 0}body.app-shell.auth-page .auth-badge{border-radius:var(--ui-pill);color:var(--ui-blue);background:var(--ui-blue-soft);letter-spacing:.12em;border:1px solid #0071e324;margin:0 0 22px;padding:6px 10px;font-size:9px;font-weight:750;display:inline-flex}body.app-shell.auth-page .auth-headline{color:var(--ui-ink);letter-spacing:-.06em;margin:0 0 16px;font-size:clamp(2.4rem,5vw,4rem);font-weight:760;line-height:1.08}body.app-shell.auth-page .auth-headline-grad{color:var(--ui-blue);-webkit-text-fill-color:currentColor;background:0 0}body.app-shell.auth-page .auth-tagline{max-width:520px;color:var(--ui-muted);margin:0 0 28px;font-size:15px;line-height:1.72}body.app-shell.auth-page .auth-feat-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}body.app-shell.auth-page .auth-feat{border:1px solid var(--ui-line);border-radius:var(--ui-radius-sm);background:var(--ui-surface);grid-template-columns:36px minmax(0,1fr);align-items:start;gap:11px;padding:13px;display:grid}@supports (color:color-mix(in lab, red, red)){body.app-shell.auth-page .auth-feat{background:color-mix(in srgb, var(--ui-surface) 78%, transparent)}}body.app-shell.auth-page .auth-feat{box-shadow:none}body.app-shell.auth-page .auth-feat:hover{border-color:var(--ui-line-strong)}body.app-shell.auth-page .auth-feat-icon{width:36px;height:36px;color:var(--ui-blue);background:var(--ui-blue-soft);filter:grayscale();background-image:none;border:0;border-radius:10px;place-items:center;font-size:17px;display:grid}body.app-shell.auth-page .auth-feat-title{color:var(--ui-ink);font-size:12px;font-weight:700}body.app-shell.auth-page .auth-feat-sub{color:var(--ui-muted);margin-top:3px;font-size:10px;line-height:1.5}body.app-shell.auth-page .auth-form-card{border:1px solid var(--ui-line);border-radius:var(--ui-radius-xl);background:var(--ui-surface-raised);box-shadow:var(--ui-shadow-3);flex-direction:column;gap:15px;padding:34px;display:flex}body.app-shell.auth-page .auth-form-title{color:var(--ui-ink);margin:0;font-size:1.65rem;font-weight:750}body.app-shell.auth-page .auth-form-sub{color:var(--ui-muted);margin:-8px 0 4px;font-size:13px}body.app-shell.auth-page .auth-field{gap:7px;display:grid}body.app-shell.auth-page .auth-field-label{color:var(--ui-ink-2);font-size:11px;font-weight:680}body.app-shell.auth-page .auth-input{border:1px solid var(--ui-line-strong);border-radius:var(--ui-radius-sm);min-height:48px;color:var(--ui-ink);background:var(--ui-surface);padding:12px 14px}body.app-shell.auth-page .auth-input:focus{border-color:var(--ui-blue);box-shadow:var(--ui-focus)}body.app-shell.auth-page .auth-submit{border:1px solid var(--ui-blue-fill);border-radius:var(--ui-radius-sm);color:#fff;background:var(--ui-blue-fill);min-height:48px;box-shadow:none;background-image:none;margin-top:3px;font-size:14px;font-weight:700}body.app-shell.auth-page .auth-submit:hover{background:var(--ui-blue-fill-hover);box-shadow:0 6px 18px #0071e32e}body.app-shell.auth-page .auth-phone-entry{border:1px solid var(--ui-line);border-radius:var(--ui-radius-sm);min-height:46px;color:var(--ui-ink-2);background:var(--ui-surface-muted);justify-content:center;align-items:center;padding:11px 14px;font-size:13px;font-weight:650;text-decoration:none;display:flex}body.app-shell.auth-page .auth-phone-entry:hover{border-color:var(--ui-line-strong);color:var(--ui-ink);background:var(--ui-surface-hover)}body.app-shell.auth-page .auth-link{color:var(--ui-muted);margin:3px 0 0;font-size:12px}body.app-shell.auth-page .auth-link a{color:var(--ui-blue);font-weight:650}body.app-shell.auth-page .auth-hint,body.app-shell.auth-page .auth-form-status{min-height:15px;color:var(--ui-muted);font-size:10px}body.app-shell.auth-page .mobile-login-page{--ml-ink:var(--ui-ink);--ml-green:var(--ui-blue);--ml-mint:var(--ui-blue-soft);--ml-line:var(--ui-line);background:0 0;min-height:calc(100vh - 164px);padding:26px 0}body.app-shell.auth-page .mobile-login-frame{gap:clamp(30px,7vw,76px);width:min(100%,980px)}body.app-shell.auth-page .mobile-login-story{color:var(--ui-ink)}body.app-shell.auth-page .story-mark{color:#fff;background:var(--ui-hero-bg);box-shadow:var(--ui-shadow-1)}body.app-shell.auth-page .mobile-login-story em,body.app-shell.auth-page .story-eyebrow,body.app-shell.auth-page .mobile-login-badge{color:var(--ui-blue)}body.app-shell.auth-page .mobile-login-story i{color:var(--ui-green);background:var(--ui-green-soft)}body.app-shell.auth-page .mobile-login-card{border:1px solid var(--ui-line);border-radius:var(--ui-radius-xl);color:var(--ui-ink);background:var(--ui-surface-raised);box-shadow:var(--ui-shadow-3)}body.app-shell.auth-page .field-shell{border-color:var(--ui-line-strong);border-radius:var(--ui-radius-sm);background:var(--ui-surface)}body.app-shell.auth-page .phone-submit{border-radius:var(--ui-radius-sm);background:var(--ui-blue-fill);box-shadow:none}body.app-shell.auth-page .phone-submit:hover{background:var(--ui-blue-fill-hover)}body.app-shell .hm-container{gap:16px;display:grid}body.app-shell .hm-lookup{border-radius:var(--ui-radius-lg);background:var(--ui-surface);box-shadow:var(--ui-shadow-1);grid-template-columns:minmax(0,.9fr) minmax(360px,1.1fr);align-items:center;gap:18px 30px;padding:26px;display:grid}body.app-shell .hm-lookup-kicker,body.app-shell .hm-card-meta,body.app-shell .hm-hub-kicker{color:var(--ui-blue);letter-spacing:.13em;font-size:9px;font-weight:760}body.app-shell .hm-lookup-copy h2{letter-spacing:-.045em;margin:7px 0;font-size:clamp(1.55rem,3vw,2.2rem)}body.app-shell .hm-lookup-copy>p{color:var(--ui-muted);margin:0;font-size:13px}body.app-shell .hm-lookup-membership{color:var(--ui-muted);margin-top:14px;font-size:11px}body.app-shell .hm-lookup-membership__dot{background:var(--ui-green);box-shadow:none}body.app-shell .hm-lookup-membership a{color:var(--ui-blue)}body.app-shell .hm-lookup-form{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}body.app-shell .hm-lookup-input-wrap{border-radius:var(--ui-pill);background:var(--ui-surface-muted);box-shadow:inset 0 0 0 1px var(--ui-line);border:0}body.app-shell .hm-lookup-input-wrap:focus-within{box-shadow:inset 0 0 0 1px var(--ui-blue), var(--ui-focus)}body.app-shell .hm-lookup-input-wrap input{border-radius:var(--ui-pill);min-height:48px;box-shadow:none;background:0 0;border:0}body.app-shell .hm-lookup-form button{border:1px solid var(--ui-blue-fill);border-radius:var(--ui-pill);color:#fff;background:var(--ui-blue-fill);min-height:48px;padding:0 19px;font-weight:680}body.app-shell .hm-lookup-form button:hover{background:var(--ui-blue-fill-hover)}body.app-shell .hm-lookup-sources{border-top:1px solid var(--ui-line);color:var(--ui-muted);grid-column:1/-1;padding-top:14px}body.app-shell .hm-lookup-sources a{color:var(--ui-muted)}body.app-shell .hm-lookup-result{border:1px solid var(--ui-line);border-radius:var(--ui-radius-md);background:var(--ui-surface-muted);grid-column:1/-1;padding:18px}body.app-shell .hm-hero{border:1px solid var(--ui-line);border-radius:var(--ui-radius-lg);background:var(--ui-hero-bg);min-height:245px;box-shadow:var(--ui-shadow-2);align-items:center;padding:30px;display:flex;overflow:hidden}body.app-shell .hm-hero:before,body.app-shell .hm-hero:after{opacity:.18}body.app-shell .hm-hero-kicker{color:#fff9;letter-spacing:.08em;font-size:10px;font-weight:700}body.app-shell .hm-hero-title{color:#fff;margin:9px 0;font-size:clamp(2rem,4.3vw,3.3rem);font-weight:730}body.app-shell .hm-hero-copy{color:#ffffffad}body.app-shell .hm-hero-num{color:#fff}body.app-shell .hm-cta-primary{border-radius:var(--ui-pill);min-height:44px;color:var(--ui-ink);box-shadow:none;background:#fff;border:0;align-items:center;padding:10px 17px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}body.app-shell .hm-cta-primary:hover{color:var(--ui-ink);box-shadow:none;background:#f2f2f7}body.app-shell .hm-ring-progress{stroke:#fff}body.app-shell .hm-ring-pct,body.app-shell .hm-ring-meta{color:#fff}body.app-shell .hm-card{border:1px solid var(--ui-line);border-radius:var(--ui-radius-md);background:var(--ui-surface);box-shadow:var(--ui-shadow-1);padding:22px}body.app-shell .hm-card-head{gap:14px;margin-bottom:16px}body.app-shell .hm-card-title{color:var(--ui-ink);font-size:14px;font-weight:700}body.app-shell .hm-card-head p,body.app-shell .hm-level-meta{color:var(--ui-muted)}body.app-shell .hm-segmented-progress,body.app-shell .hm-today-progress,body.app-shell .hm-bar,body.app-shell .hm-consolidation-bar{background:var(--ui-surface-muted)}body.app-shell .hm-segment-learned,body.app-shell .hm-today-progress span,body.app-shell .hm-bar span,body.app-shell .hm-consolidation-bar i{background:var(--ui-blue)}body.app-shell .hm-segment-unlearned{background:var(--ui-line-strong)}body.app-shell .hm-progress-legend>div,body.app-shell .hm-consolidation-rounds>div,body.app-shell .hm-today-cell{border-color:var(--ui-line);border-radius:var(--ui-radius-sm);background:var(--ui-surface-muted)}body.app-shell .hm-stats{gap:12px}body.app-shell .hm-stat{border:1px solid var(--ui-line);border-radius:var(--ui-radius-md);background:var(--ui-surface);min-height:126px;box-shadow:var(--ui-shadow-1);padding:18px}body.app-shell .hm-stat-icon{filter:grayscale();opacity:.55}body.app-shell .hm-stat-num{color:var(--ui-ink);-webkit-text-fill-color:currentColor;background:0 0}body.app-shell .hm-chip,body.app-shell .hm-asset,body.app-shell .hm-hub-card,body.app-shell .hm-method-guide-body li{border-color:var(--ui-line);border-radius:var(--ui-radius-sm);color:var(--ui-ink);background:var(--ui-surface-muted);box-shadow:none}body.app-shell .hm-chip:hover,body.app-shell .hm-asset:hover{border-color:var(--ui-line-strong);color:var(--ui-ink);background:var(--ui-surface-hover)}body.app-shell .hm-asset-num,body.app-shell .hm-level-num{color:var(--ui-ink);-webkit-text-fill-color:currentColor;background:0 0}body.app-shell .hm-badge,body.app-shell .hm-medal,body.app-shell .hm-consolidation-status{border-color:var(--ui-line);color:var(--ui-ink-2);background:var(--ui-surface-muted)}body.app-shell .hm-course-entry,body.app-shell .hm-method-guide{border-color:var(--ui-line);border-radius:var(--ui-radius-md);color:var(--ui-ink);background:var(--ui-surface);box-shadow:var(--ui-shadow-1)}body.app-shell .hm-course-entry:hover{border-color:var(--ui-line-strong);color:var(--ui-ink);box-shadow:var(--ui-shadow-2)}body.app-shell .hm-course-entry-icon{border-radius:var(--ui-radius-sm);color:#fff;background:var(--ui-hero-bg)}body.app-shell .hm-method-guide summary i,body.app-shell .hm-course-entry-copy small,body.app-shell .hm-card-link{color:var(--ui-blue)}body.app-shell .hm-stat{position:relative;overflow:hidden}body.app-shell .hm-stat:before{content:"";background:var(--stat-accent,var(--ui-blue));height:3px;position:absolute;inset:0 0 auto}body.app-shell .hm-stat-icon{width:34px;height:28px;color:var(--stat-accent,var(--ui-blue));background:var(--stat-soft,var(--ui-blue-soft));filter:none;opacity:1;border-radius:8px;place-items:center;font-size:10px;font-weight:760;display:inline-grid}body.app-shell .hm-stat-num{color:var(--stat-accent,var(--ui-blue))}body.app-shell .hm-stat-due{--stat-accent:var(--ui-orange);--stat-soft:var(--ui-orange-soft);background:var(--ui-orange-soft)}@supports (color:color-mix(in lab, red, red)){body.app-shell .hm-stat-due{background:color-mix(in srgb, var(--ui-orange-soft) 42%, var(--ui-surface))}}body.app-shell .hm-stat-new{--stat-accent:var(--ui-blue);--stat-soft:var(--ui-blue-soft);background:var(--ui-blue-soft)}@supports (color:color-mix(in lab, red, red)){body.app-shell .hm-stat-new{background:color-mix(in srgb, var(--ui-blue-soft) 42%, var(--ui-surface))}}body.app-shell .hm-stat-streak{--stat-accent:var(--ui-teal);--stat-soft:var(--ui-teal-soft);background:var(--ui-teal-soft)}@supports (color:color-mix(in lab, red, red)){body.app-shell .hm-stat-streak{background:color-mix(in srgb, var(--ui-teal-soft) 42%, var(--ui-surface))}}body.app-shell .hm-stat-level{--stat-accent:var(--ui-purple);--stat-soft:var(--ui-purple-soft);background:var(--ui-purple-soft)}@supports (color:color-mix(in lab, red, red)){body.app-shell .hm-stat-level{background:color-mix(in srgb, var(--ui-purple-soft) 42%, var(--ui-surface))}}body.app-shell .hm-asset-new{border-color:var(--ui-blue)}@supports (color:color-mix(in lab, red, red)){body.app-shell .hm-asset-new{border-color:color-mix(in srgb, var(--ui-blue) 22%, var(--ui-line))}}body.app-shell .hm-asset-new{background:var(--ui-blue-soft)}body.app-shell .hm-asset-warn{border-color:var(--ui-orange)}@supports (color:color-mix(in lab, red, red)){body.app-shell .hm-asset-warn{border-color:color-mix(in srgb, var(--ui-orange) 22%, var(--ui-line))}}body.app-shell .hm-asset-warn{background:var(--ui-orange-soft)}body.app-shell .hm-asset-ok{border-color:var(--ui-green)}@supports (color:color-mix(in lab, red, red)){body.app-shell .hm-asset-ok{border-color:color-mix(in srgb, var(--ui-green) 22%, var(--ui-line))}}body.app-shell .hm-asset-ok{background:var(--ui-green-soft)}body.app-shell .hm-asset-bad{border-color:var(--ui-red)}@supports (color:color-mix(in lab, red, red)){body.app-shell .hm-asset-bad{border-color:color-mix(in srgb, var(--ui-red) 22%, var(--ui-line))}}body.app-shell .hm-asset-bad{background:var(--ui-red-soft)}body.app-shell .hm-asset-new .hm-asset-num{color:var(--ui-blue)}body.app-shell .hm-asset-warn .hm-asset-num{color:var(--ui-orange)}body.app-shell .hm-asset-ok .hm-asset-num{color:var(--ui-green)}body.app-shell .hm-asset-bad .hm-asset-num{color:var(--ui-red)}body.app-shell .hm-badge-due,body.app-shell .hm-consolidation-status.is-pending{border-color:var(--ui-orange)}@supports (color:color-mix(in lab, red, red)){body.app-shell .hm-badge-due,body.app-shell .hm-consolidation-status.is-pending{border-color:color-mix(in srgb, var(--ui-orange) 24%, transparent)}}body.app-shell .hm-badge-due,body.app-shell .hm-consolidation-status.is-pending{color:var(--ui-orange);background:var(--ui-orange-soft)}body.app-shell .hm-badge-new{border-color:var(--ui-blue)}@supports (color:color-mix(in lab, red, red)){body.app-shell .hm-badge-new{border-color:color-mix(in srgb, var(--ui-blue) 24%, transparent)}}body.app-shell .hm-badge-new{color:var(--ui-blue);background:var(--ui-blue-soft)}body.app-shell .hm-badge-learn{border-color:var(--ui-purple)}@supports (color:color-mix(in lab, red, red)){body.app-shell .hm-badge-learn{border-color:color-mix(in srgb, var(--ui-purple) 24%, transparent)}}body.app-shell .hm-badge-learn{color:var(--ui-purple);background:var(--ui-purple-soft)}body.app-shell .hm-consolidation.is-complete .hm-consolidation-status{border-color:var(--ui-green)}@supports (color:color-mix(in lab, red, red)){body.app-shell .hm-consolidation.is-complete .hm-consolidation-status{border-color:color-mix(in srgb, var(--ui-green) 24%, transparent)}}body.app-shell .hm-consolidation.is-complete .hm-consolidation-status{color:var(--ui-green);background:var(--ui-green-soft)}body.app-shell .hm-today-cell:first-child{border-top:3px solid var(--ui-blue)}body.app-shell .hm-today-cell:nth-child(2){border-top:3px solid var(--ui-purple)}body.app-shell .hm-today-cell:nth-child(3){border-top:3px solid var(--ui-teal)}body.app-shell .hm-today-cell:nth-child(4){border-top:3px solid var(--ui-orange)}body.app-shell .hm-course-entry-icon{background:var(--ui-purple)}body.app-shell.study-editorial .app-main{max-width:1380px;padding-top:22px}body.app-shell .study-stage{width:min(100%,1320px);margin:0 auto}body.app-shell .study-card{box-shadow:none;background:0 0;border:0;border-radius:0;overflow:visible}body.app-shell .study-head{gap:18px;margin-bottom:14px;padding:0 2px}body.app-shell .study-encourage{color:var(--ui-muted);font-family:var(--ui-font);font-size:12px}body.app-shell .study-font-picker,body.app-shell .study-group-picker>summary{border-color:var(--ui-line);border-radius:var(--ui-pill);color:var(--ui-muted);background:var(--ui-surface);box-shadow:var(--ui-shadow-1)}body.app-shell .study-font-picker select{width:auto;min-height:32px;box-shadow:none;background:0 0;border:0}body.app-shell .study-group-units{border:1px solid var(--ui-line);border-radius:var(--ui-radius-md);background:var(--ui-surface-raised);box-shadow:var(--ui-shadow-3);-webkit-backdrop-filter:blur(28px);backdrop-filter:blur(28px)}body.app-shell .study-group-chip{border-color:var(--ui-line);border-radius:var(--ui-pill);color:var(--ui-ink-2);background:var(--ui-surface-muted)}body.app-shell .study-group-chip:hover,body.app-shell .study-group-active{border-color:var(--ui-blue);color:var(--ui-blue);background:var(--ui-blue-soft)}body.app-shell .study-workspace{grid-template-columns:minmax(0,1fr) minmax(280px,.38fr);align-items:stretch;gap:16px;display:grid}body.app-shell .study-workspace-main,body.app-shell .study-root-panel{border:1px solid var(--ui-line);border-radius:var(--ui-radius-lg);background:var(--ui-surface);box-shadow:var(--ui-shadow-1)}body.app-shell .study-workspace-main{padding:clamp(22px,4vw,40px)}body.app-shell .study-root-panel{padding:22px}body.app-shell .word-stage{min-height:330px;box-shadow:none;background:0 0;border:0;padding:0}body.app-shell .word-heading{align-items:center;gap:12px}body.app-shell .word-heading h2{color:var(--ui-ink);font-family:var(--ui-reading-font);letter-spacing:-.055em;font-size:clamp(3rem,8vw,6.3rem);font-weight:500}body.app-shell .mastery-badge{border-radius:var(--ui-pill);filter:saturate(.65);padding:5px 9px;font-size:10px;font-weight:700}body.app-shell #wordPhonetic{color:var(--ui-muted);font-family:var(--ui-reading-font);font-size:17px}body.app-shell .study-toolbar{gap:7px}body.app-shell .study-toolbar-btn{min-height:36px;border-radius:var(--ui-pill)!important}body.app-shell .answer-panel{border:1px solid var(--ui-line);border-radius:var(--ui-radius-md);background:var(--ui-surface-muted);margin-top:24px;overflow:hidden}body.app-shell .answer-panel summary{color:var(--ui-blue);padding:14px 16px;font-size:13px;font-weight:680}body.app-shell .answer-content{border-top:1px solid var(--ui-line);color:var(--ui-ink);background:var(--ui-surface);padding:18px}body.app-shell .answer-content strong{font-family:var(--ui-reading-font);font-size:clamp(1.3rem,3vw,1.85rem);font-weight:600}body.app-shell .word-metrics{border:1px solid var(--ui-line);border-radius:var(--ui-radius-sm);background:var(--ui-surface-muted);gap:0;margin:18px 0;overflow:hidden}body.app-shell .word-metric{border-right:1px solid var(--ui-line);padding:11px 13px}body.app-shell .word-metric:last-child{border-right:0}body.app-shell .metric-label{color:var(--ui-muted);font-size:9px}body.app-shell .metric-value{color:var(--ui-ink);font-size:12px;font-weight:650}body.app-shell .rating{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}body.app-shell .rating button{border:1px solid var(--ui-line);border-radius:var(--ui-radius-sm);min-height:54px;color:var(--ui-ink);background:var(--ui-surface-muted);box-shadow:none;font-size:13px;font-weight:680}body.app-shell .rating button:hover{border-color:var(--ui-blue);color:var(--ui-blue);background:var(--ui-blue-soft);transform:translateY(-1px)}body.app-shell .rating button.bad:hover{border-color:var(--ui-red);color:var(--ui-red);background:var(--ui-red-soft)}body.app-shell .rating button.good:hover{border-color:var(--ui-green);color:var(--ui-green);background:var(--ui-green-soft)}body.app-shell .rating-key{border:1px solid var(--ui-line-strong);min-width:21px;height:21px;color:var(--ui-muted);background:var(--ui-surface);border-radius:6px;place-items:center;font-size:9px;display:inline-grid}body.app-shell .study-root-kicker{color:var(--ui-blue);letter-spacing:.12em;font-size:9px}body.app-shell .study-root-head h3{margin-top:7px;font-size:1.15rem}body.app-shell .study-related a,body.app-shell .study-root-analysis{border-color:var(--ui-line);border-radius:var(--ui-radius-sm);color:var(--ui-ink);background:var(--ui-surface-muted)}body.app-shell .top-progress .bar{background:var(--ui-surface-muted)}body.app-shell .top-progress .bar span{background:var(--ui-blue)}body.app-shell .words-actions,body.app-shell .wb-header-actions{flex-wrap:wrap;justify-content:flex-end;gap:7px;display:flex}body.app-shell .words-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,310px),1fr));gap:12px}body.app-shell .word-card{--word-state-accent:var(--ui-orange);--word-state-soft:var(--ui-orange-soft);border:1px solid var(--ui-line);border-top:3px solid var(--word-state-accent);border-radius:var(--ui-radius-md);background:var(--ui-surface);box-shadow:var(--ui-shadow-1);flex-direction:column;display:flex;overflow:hidden}body.app-shell .word-state-new{--word-state-accent:var(--ui-orange);--word-state-soft:var(--ui-orange-soft)}body.app-shell .word-state-learning{--word-state-accent:var(--ui-gold);--word-state-soft:var(--ui-gold-soft)}body.app-shell .word-state-review{--word-state-accent:var(--ui-blue);--word-state-soft:var(--ui-blue-soft)}body.app-shell .word-state-mastered{--word-state-accent:var(--ui-green);--word-state-soft:var(--ui-green-soft)}body.app-shell .word-card:hover{border-color:var(--word-state-accent)}@supports (color:color-mix(in lab, red, red)){body.app-shell .word-card:hover{border-color:color-mix(in srgb, var(--word-state-accent) 42%, var(--ui-line))}}body.app-shell .word-card:hover{border-top-color:var(--word-state-accent);box-shadow:var(--ui-shadow-2);transform:translateY(-2px)}body.app-shell .word-card-top,body.app-shell .word-card-stats{border-color:var(--word-state-accent)}@supports (color:color-mix(in lab, red, red)){body.app-shell .word-card-top,body.app-shell .word-card-stats{border-color:color-mix(in srgb, var(--word-state-accent) 12%, var(--ui-line))}}body.app-shell .word-card-top,body.app-shell .word-card-stats{background:var(--word-state-soft)}@supports (color:color-mix(in lab, red, red)){body.app-shell .word-card-top,body.app-shell .word-card-stats{background:color-mix(in srgb, var(--word-state-soft) 56%, var(--ui-surface-muted))}}body.app-shell .word-card-mid{flex:auto;padding:18px}body.app-shell .word-card-stats{flex:none;margin-top:auto}body.app-shell .word-title,body.app-shell .wb-word,body.app-shell .fav-word,body.app-shell .pbd-word{color:var(--ui-ink);font-family:var(--ui-reading-font);letter-spacing:-.025em;font-size:1.55rem;font-weight:600}body.app-shell .word-def,body.app-shell .wb-def,body.app-shell .fav-def,body.app-shell .pbd-def{color:var(--ui-ink-2)}body.app-shell .word-etymology{color:var(--ui-blue)}body.app-shell .state-badge{border:1px solid var(--word-state-accent,var(--ui-blue))}@supports (color:color-mix(in lab, red, red)){body.app-shell .state-badge{border:1px solid color-mix(in srgb, var(--word-state-accent,var(--ui-blue)) 24%, transparent)}}body.app-shell .state-badge{border-radius:var(--ui-pill);color:var(--word-state-accent,var(--ui-blue));background:var(--word-state-soft,var(--ui-blue-soft));font-weight:720}body.app-shell .filter-chip.state-new{border-color:var(--ui-orange)}@supports (color:color-mix(in lab, red, red)){body.app-shell .filter-chip.state-new{border-color:color-mix(in srgb, var(--ui-orange) 20%, var(--ui-line))}}body.app-shell .filter-chip.state-new{color:var(--ui-orange);background:var(--ui-orange-soft)}body.app-shell .filter-chip.state-learning{border-color:var(--ui-gold)}@supports (color:color-mix(in lab, red, red)){body.app-shell .filter-chip.state-learning{border-color:color-mix(in srgb, var(--ui-gold) 20%, var(--ui-line))}}body.app-shell .filter-chip.state-learning{color:var(--ui-gold);background:var(--ui-gold-soft)}body.app-shell .filter-chip.state-review{border-color:var(--ui-blue)}@supports (color:color-mix(in lab, red, red)){body.app-shell .filter-chip.state-review{border-color:color-mix(in srgb, var(--ui-blue) 20%, var(--ui-line))}}body.app-shell .filter-chip.state-review{color:var(--ui-blue);background:var(--ui-blue-soft)}body.app-shell .filter-chip.state-mastered{border-color:var(--ui-green)}@supports (color:color-mix(in lab, red, red)){body.app-shell .filter-chip.state-mastered{border-color:color-mix(in srgb, var(--ui-green) 20%, var(--ui-line))}}body.app-shell .filter-chip.state-mastered{color:var(--ui-green);background:var(--ui-green-soft)}body.app-shell .filter-chip.state-new.active{color:#fff;background:#c93400;border-color:#c93400}body.app-shell .filter-chip.state-learning.active{color:#fff;background:#8a5a00;border-color:#8a5a00}body.app-shell .filter-chip.state-review.active{color:#fff;background:#0071e3;border-color:#0071e3}body.app-shell .filter-chip.state-mastered.active{color:#fff;background:#248a3d;border-color:#248a3d}body.app-shell .fav-btn{color:var(--ui-muted)}body.app-shell .fav-btn.is-fav{color:var(--ui-gold)}body.app-shell .external-search-card{border-color:var(--ui-line);border-radius:var(--ui-radius-md);background:var(--ui-surface)}body.app-shell .external-search-card a{color:var(--ui-blue);background:var(--ui-blue-soft);border-color:#0071e329}body.app-shell .words-batch-form,body.app-shell .batch-assign-panel{border-color:var(--ui-line);border-radius:var(--ui-radius-sm);background:var(--ui-surface)}body.app-shell .bk-create,body.app-shell .bk-item,body.app-shell .aw-form,body.app-shell .ew-form,body.app-shell .ew-group-section,body.app-shell .ew-nearby,body.app-shell .settings-section,body.app-shell .settings-nav-link,body.app-shell .settings-tile{border:1px solid var(--ui-line);border-radius:var(--ui-radius-md);color:var(--ui-ink);background:var(--ui-surface);box-shadow:var(--ui-shadow-1)}body.app-shell .bk-create,body.app-shell .aw-form,body.app-shell .ew-form,body.app-shell .settings-section{padding:22px}body.app-shell .bk-list,body.app-shell .wb-list,body.app-shell .fav-list{gap:10px}body.app-shell .bk-item{padding:17px 18px}body.app-shell .bk-item-name,body.app-shell .settings-nav-title,body.app-shell .settings-row-label,body.app-shell .goal-row-label{color:var(--ui-ink)}body.app-shell .bk-active-badge,body.app-shell .ew-tag,body.app-shell .ew-mini-btn-active{color:var(--ui-blue);background:var(--ui-blue-soft);border-color:#0071e329}body.app-shell .aw-input,body.app-shell .ew-input,body.app-shell .ew-select,body.app-shell .gm-input,body.app-shell .goal-input{border-color:var(--ui-line-strong);border-radius:var(--ui-radius-sm);color:var(--ui-ink);background:var(--ui-surface)}body.app-shell .aw-input:focus,body.app-shell .ew-input:focus,body.app-shell .ew-select:focus,body.app-shell .gm-input:focus,body.app-shell .goal-input:focus{border-color:var(--ui-blue);box-shadow:var(--ui-focus)}body.app-shell .aw-save,body.app-shell .ew-btn-stay,body.app-shell .settings-save-btn{border-color:var(--ui-blue-fill);color:#fff;background:var(--ui-blue-fill)}body.app-shell .ew-layout{gap:14px}body.app-shell .ew-nearby{top:calc(var(--ui-header-height) + 16px)}body.app-shell .ew-prev-group{background:var(--ui-gold-soft);border-color:#9a67002e}body.app-shell .ew-prev-tag{color:var(--ui-gold);background:0 0}body.app-shell .ew-assign-panel{border-color:var(--ui-line);border-radius:var(--ui-radius-sm);background:var(--ui-surface-muted)}body.app-shell .ew-nearby-link:hover,body.app-shell .ew-nav-link:hover{color:var(--ui-blue);background:var(--ui-blue-soft)}body.app-shell .wb-card,body.app-shell .fav-card{border:1px solid var(--ui-line);border-radius:var(--ui-radius-md);background:var(--ui-surface);box-shadow:var(--ui-shadow-1);padding:18px}body.app-shell .wb-lapses-badge{color:var(--ui-red);background:var(--ui-red-soft);border-color:#d700152e}body.app-shell .wb-drill-row{border-color:var(--ui-line)}body.app-shell .wb-drill-input{background:var(--ui-surface-muted)}body.app-shell .settings-container{max-width:620px}body.app-shell .settings-nav-link:hover,body.app-shell .settings-tile:hover{border-color:var(--ui-line-strong);color:var(--ui-ink);background:var(--ui-surface-raised);box-shadow:var(--ui-shadow-2)}body.app-shell .settings-row,body.app-shell .goal-row{border-color:var(--ui-line);border-radius:var(--ui-radius-sm);background:var(--ui-surface-muted)}body.app-shell .goal-preview{border-left-color:var(--ui-blue);color:var(--ui-blue);background:var(--ui-blue-soft)}body.app-shell .sw-toggle input:checked+.sw-slider{background:var(--ui-green)}body.app-shell .grp-layout{gap:10px}body.app-shell .grp-col-left,body.app-shell .grp-col-mid,body.app-shell .grp-col-right{border:1px solid var(--ui-line);border-radius:var(--ui-radius-md);background:var(--ui-surface);box-shadow:var(--ui-shadow-1)}body.app-shell .gm-unit-block{border-color:var(--ui-line);border-radius:var(--ui-radius-sm);background:var(--ui-surface-muted)}body.app-shell .gm-group-row:hover,body.app-shell #ungrouped-tbody tr:hover{background:var(--ui-surface-hover)}body.app-shell .gm-group-row.active,body.app-shell #ungrouped-tbody tr.selected{color:var(--ui-blue);background:var(--ui-blue-soft)}body.app-shell .gm-icon-btn{width:28px;height:28px;color:var(--ui-muted);opacity:.7;background:0 0;border:0;border-radius:8px;place-items:center;padding:0;display:inline-grid}body.app-shell .gm-icon-btn:hover{color:var(--ui-ink);background:var(--ui-surface-hover);opacity:1}body.app-shell .gm-assign-bar,body.app-shell .gm-remove-bar,body.app-shell .gm-picker-toolbar{border-color:var(--ui-line);border-radius:var(--ui-radius-sm);background:var(--ui-surface-muted)}body.app-shell .gm-detail-placeholder{color:var(--ui-muted)}body.app-shell .gm-overlay,body.app-shell .gm-rename-overlay{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#00000047}body.app-shell .gm-modal-box,body.app-shell .gm-rename-box{border:1px solid var(--ui-line);border-radius:var(--ui-radius-lg);color:var(--ui-ink);background:var(--ui-surface-raised);box-shadow:var(--ui-shadow-3)}body.app-shell .grp-mobile-tabs{border-color:var(--ui-line);border-radius:var(--ui-radius-sm);background:var(--ui-surface-muted)}body.app-shell .grp-tab{color:var(--ui-muted);background:0 0}body.app-shell .grp-tab.active{color:var(--ui-ink);background:var(--ui-surface);box-shadow:var(--ui-shadow-1)}body.app-shell :where(.spell-container,.mcq-container,.dict-container){max-width:760px}body.app-shell .test-shell{border:1px solid var(--ui-line);border-radius:var(--ui-radius-lg);background:var(--ui-surface);box-shadow:var(--ui-shadow-2);padding:clamp(22px,5vw,42px)}body.app-shell .test-mode-label{color:var(--ui-blue);letter-spacing:.1em;font-size:10px;font-weight:750}body.app-shell .test-stats{color:var(--ui-muted);background:var(--ui-surface-muted)}body.app-shell .test-question,body.app-shell .mcq-word{color:var(--ui-ink);font-family:var(--ui-reading-font);letter-spacing:-.05em;font-size:clamp(2.7rem,8vw,5.6rem);font-weight:500}body.app-shell .test-phonetic,body.app-shell .mcq-phonetic{color:var(--ui-muted);font-family:var(--ui-reading-font)}body.app-shell .test-input{border-radius:var(--ui-radius-sm);min-height:54px;font-family:var(--ui-reading-font);text-align:center;font-size:20px}body.app-shell .test-submit-btn{border-color:var(--ui-blue-fill);color:#fff;background:var(--ui-blue-fill);min-height:50px}body.app-shell .test-actions{gap:8px}body.app-shell .test-example,body.app-shell .test-result-msg{border-color:var(--ui-line);border-radius:var(--ui-radius-sm);color:var(--ui-ink-2);background:var(--ui-surface-muted)}body.app-shell .mcq-options{gap:9px}body.app-shell .mcq-opt{border:1px solid var(--ui-line);border-radius:var(--ui-radius-sm);min-height:54px;color:var(--ui-ink);background:var(--ui-surface);box-shadow:var(--ui-shadow-1);padding:12px 14px}body.app-shell .mcq-opt:hover{border-color:var(--ui-blue);color:var(--ui-blue);background:var(--ui-blue-soft);transform:translateY(-1px)}body.app-shell .mcq-opt-letter{border:1px solid var(--ui-line-strong);color:var(--ui-muted);background:var(--ui-surface-muted)}body.app-shell .dict-play-area{border-color:var(--ui-line);border-radius:var(--ui-radius-md);background:var(--ui-surface-muted)}body.app-shell .dict-play-btn{color:#fff;background:var(--ui-hero-bg);box-shadow:var(--ui-shadow-2)}body.app-shell .dc-shell,body.app-shell .dc-overview,body.app-shell .dc-quiz,body.app-shell .dc-finish{border:1px solid var(--ui-line);border-radius:var(--ui-radius-lg);background:var(--ui-surface);box-shadow:var(--ui-shadow-2)}body.app-shell .dc-kicker,body.app-shell .dc-mode-icon{color:var(--ui-blue)}body.app-shell .dc-mode,body.app-shell .dc-option,body.app-shell .dc-result,body.app-shell .dc-empty{border-color:var(--ui-line);border-radius:var(--ui-radius-sm);color:var(--ui-ink);background:var(--ui-surface-muted)}body.app-shell .dc-option:hover{border-color:var(--ui-blue);color:var(--ui-blue);background:var(--ui-blue-soft)}body.app-shell .dc-primary,body.app-shell .dc-submit{border-color:var(--ui-blue-fill);color:#fff;background:var(--ui-blue-fill)}body.app-shell .dc-bar,body.app-shell .dc-quiz-bar{background:var(--ui-surface-muted)}body.app-shell .dc-bar span,body.app-shell .dc-quiz-bar span{background:var(--ui-blue)}body.app-shell .done-page-container,body.app-shell .gd-container,body.app-shell .empty-page-container{max-width:760px}body.app-shell .done-card,body.app-shell .cg-quick-card,body.app-shell .cg-section,body.app-shell .empty-card{border:1px solid var(--ui-line);border-radius:var(--ui-radius-lg);background:var(--ui-surface);box-shadow:var(--ui-shadow-2)}body.app-shell .done-card,body.app-shell .empty-card{padding:clamp(28px,6vw,52px)}body.app-shell .done-icon,body.app-shell .empty-icon,body.app-shell .cg-empty-icon{filter:grayscale();opacity:.62}body.app-shell .done-tip,body.app-shell .empty-tip{border-color:var(--ui-line);border-radius:var(--ui-radius-sm);color:var(--ui-muted);background:var(--ui-surface-muted)}body.app-shell .done-test-row,body.app-shell .done-test-btns{border-color:var(--ui-line)}body.app-shell .cg-quick-card,body.app-shell .cg-section{padding:22px}body.app-shell .cg-grid{gap:9px}body.app-shell .cg-tile{border:1px solid var(--ui-line);border-radius:var(--ui-radius-sm);color:var(--ui-ink);background:var(--ui-surface-muted);box-shadow:none}body.app-shell .cg-tile:hover{border-color:var(--ui-blue);color:var(--ui-blue);background:var(--ui-blue-soft)}body.app-shell .cg-quick-btn{border-color:var(--ui-blue-fill);color:#fff;background:var(--ui-blue-fill)}body.app-shell .ls-layout{gap:12px}body.app-shell .ls-table-wrap,body.app-shell .ls-panel-content,body.app-shell .wr-hero,body.app-shell .wr-section,body.app-shell .wr-chart-card,body.app-shell .cal-wrap,body.app-shell .focus-shell,body.app-shell .focus-log-wrap,body.app-shell .fs-hero,body.app-shell .fs-card,body.app-shell .ch-level-card,body.app-shell .ch-rank-card{border:1px solid var(--ui-line);border-radius:var(--ui-radius-md);color:var(--ui-ink);background:var(--ui-surface);box-shadow:var(--ui-shadow-1)}body.app-shell .ls-unit-title,body.app-shell .ls-panel-head,body.app-shell .wr-section-title,body.app-shell .fs-card-title,body.app-shell .ch-rank-header{border-color:var(--ui-line);color:var(--ui-ink);background:var(--ui-surface-muted)}body.app-shell .ls-row,body.app-shell .ls-word-row,body.app-shell .wr-wrong-item,body.app-shell .fs-hist-item,body.app-shell .ch-rank-item{border-color:var(--ui-line)}body.app-shell .ls-row-clickable:hover,body.app-shell .ls-word-row:hover,body.app-shell .wr-wrong-item:hover{background:var(--ui-surface-muted)}body.app-shell .ls-row-clickable.active{color:var(--ui-blue);background:var(--ui-blue-soft)}body.app-shell .ls-bar-wrap,body.app-shell .ch-xp-bar-wrap{background:var(--ui-surface-muted)}body.app-shell .ls-bar,body.app-shell .ch-xp-fill{background:var(--ui-blue)}body.app-shell .ls-new,body.app-shell .ls-learning,body.app-shell .ls-review,body.app-shell .ls-mastered{color:var(--ui-ink-2)}body.app-shell .wr-hero{color:#fff;background:var(--ui-hero-bg);box-shadow:var(--ui-shadow-2)}body.app-shell .wr-hero :where(h2,.wr-hero-label,.wr-hero-num){color:#fff}body.app-shell .wr-mode-item,body.app-shell .cal-sum-item,body.app-shell .fs-stat,body.app-shell .ch-streak-item{border-color:var(--ui-line);border-radius:var(--ui-radius-sm);color:var(--ui-ink);background:var(--ui-surface-muted)}body.app-shell .wr-mode-icon,body.app-shell .ch-streak-icon{filter:grayscale();opacity:.62}body.app-shell .wr-suggestions{color:var(--ui-ink-2);background:var(--ui-blue-soft);border-color:#0071e329}body.app-shell .cal-grid{gap:5px}body.app-shell .cal-cell{border:1px solid var(--ui-line);background:var(--ui-surface-muted);border-radius:7px}body.app-shell .cal-cell[data-level="1"],body.app-shell .fs-l1{background:var(--ui-blue)}@supports (color:color-mix(in lab, red, red)){body.app-shell .cal-cell[data-level="1"],body.app-shell .fs-l1{background:color-mix(in srgb, var(--ui-blue) 18%, var(--ui-surface))}}body.app-shell .cal-cell[data-level="2"],body.app-shell .fs-l2{background:var(--ui-blue)}@supports (color:color-mix(in lab, red, red)){body.app-shell .cal-cell[data-level="2"],body.app-shell .fs-l2{background:color-mix(in srgb, var(--ui-blue) 36%, var(--ui-surface))}}body.app-shell .cal-cell[data-level="3"],body.app-shell .fs-l3{background:var(--ui-blue)}@supports (color:color-mix(in lab, red, red)){body.app-shell .cal-cell[data-level="3"],body.app-shell .fs-l3{background:color-mix(in srgb, var(--ui-blue) 58%, var(--ui-surface))}}body.app-shell .cal-cell[data-level="4"],body.app-shell .fs-l4{background:var(--ui-blue)}body.app-shell .cal-tooltip{border:1px solid var(--ui-line);border-radius:var(--ui-radius-xs);background:var(--ui-surface-raised);box-shadow:var(--ui-shadow-2)}body.app-shell .focus-page-container{max-width:820px}body.app-shell .focus-shell{padding:clamp(26px,6vw,54px)}body.app-shell .focus-tabs{border-radius:var(--ui-pill);background:var(--ui-surface-muted);padding:4px}body.app-shell .focus-tab{border-radius:var(--ui-pill);color:var(--ui-muted);background:0 0;border:0}body.app-shell .focus-tab.active{color:var(--ui-ink);background:var(--ui-surface);box-shadow:var(--ui-shadow-1)}body.app-shell .focus-ring{stroke:var(--ui-blue)}body.app-shell .focus-time{color:var(--ui-ink);font-variant-numeric:tabular-nums}body.app-shell .focus-ctrl-btn{border-color:var(--ui-blue-fill);color:#fff;background:var(--ui-blue-fill)}body.app-shell .focus-ctrl-ghost{border-color:var(--ui-line);color:var(--ui-ink-2);background:var(--ui-surface-muted)}body.app-shell .fs-badge,body.app-shell .ch-level-lbl{color:var(--ui-blue);background:var(--ui-blue-soft)}body.app-shell .ch-ring-prog{stroke:var(--ui-blue)}body.app-shell .ch-level-num,body.app-shell .ch-total-xp{color:var(--ui-ink);-webkit-text-fill-color:currentColor;background:0 0}body.app-shell .history-container>div,body.app-shell .history-container>section{border-color:var(--ui-line)}body.app-shell .course-hero,body.app-shell .grammar-hero,body.app-shell .ke-hero,body.app-shell .kec-hero,body.app-shell .ras-hero,body.app-shell .pb-private,body.app-shell .rl-hero{border:1px solid var(--ui-line);border-radius:var(--ui-radius-lg);color:var(--ui-ink);background:radial-gradient(circle at 92% 0, var(--ui-blue-soft), transparent 18rem), var(--ui-surface);box-shadow:var(--ui-shadow-1)}body.app-shell .course-card,body.app-shell .grammar-module,body.app-shell .ke-lesson,body.app-shell .kec-course,body.app-shell .ras-chapter,body.app-shell .ivq-card,body.app-shell .pb-card,body.app-shell .pbd-card,body.app-shell .rw-card,body.app-shell .rl-card,body.app-shell .cl-item{border:1px solid var(--ui-line);border-radius:var(--ui-radius-md);color:var(--ui-ink);background:var(--ui-surface);box-shadow:var(--ui-shadow-1);background-image:none}body.app-shell a.course-card:hover,body.app-shell .kec-course:hover,body.app-shell .pb-card:hover,body.app-shell .rl-card:hover{border-color:var(--ui-line-strong);color:var(--ui-ink);background:var(--ui-surface-raised);box-shadow:var(--ui-shadow-2);transform:translateY(-2px)}body.app-shell .course-icon,body.app-shell .course-number,body.app-shell .ke-lesson-num,body.app-shell .kec-course-num,body.app-shell .ras-mark,body.app-shell .rl-card-icon{border-radius:var(--ui-radius-sm);color:#fff;background:var(--ui-hero-bg);box-shadow:none;filter:none;background-image:none}body.app-shell .course-card-politics,body.app-shell .course-card-ielts,body.app-shell .course-card-roots{border-color:var(--ui-line);background:var(--ui-surface)}body.app-shell .course-card-main{border-color:var(--ui-teal)}@supports (color:color-mix(in lab, red, red)){body.app-shell .course-card-main{border-color:color-mix(in srgb, var(--ui-teal) 20%, var(--ui-line))}}body.app-shell .course-card-main{background:var(--ui-teal-soft)}@supports (color:color-mix(in lab, red, red)){body.app-shell .course-card-main{background:color-mix(in srgb, var(--ui-teal-soft) 58%, var(--ui-surface))}}body.app-shell .course-card-politics{border-color:var(--ui-pink)}@supports (color:color-mix(in lab, red, red)){body.app-shell .course-card-politics{border-color:color-mix(in srgb, var(--ui-pink) 18%, var(--ui-line))}}body.app-shell .course-card-politics{background:var(--ui-pink-soft)}@supports (color:color-mix(in lab, red, red)){body.app-shell .course-card-politics{background:color-mix(in srgb, var(--ui-pink-soft) 50%, var(--ui-surface))}}body.app-shell .course-card-roots{border-color:var(--ui-orange)}@supports (color:color-mix(in lab, red, red)){body.app-shell .course-card-roots{border-color:color-mix(in srgb, var(--ui-orange) 18%, var(--ui-line))}}body.app-shell .course-card-roots{background:var(--ui-orange-soft)}@supports (color:color-mix(in lab, red, red)){body.app-shell .course-card-roots{background:color-mix(in srgb, var(--ui-orange-soft) 50%, var(--ui-surface))}}body.app-shell .course-card-ielts{border-color:var(--ui-purple)}@supports (color:color-mix(in lab, red, red)){body.app-shell .course-card-ielts{border-color:color-mix(in srgb, var(--ui-purple) 18%, var(--ui-line))}}body.app-shell .course-card-ielts{background:var(--ui-purple-soft)}@supports (color:color-mix(in lab, red, red)){body.app-shell .course-card-ielts{background:color-mix(in srgb, var(--ui-purple-soft) 50%, var(--ui-surface))}}body.app-shell .course-card-main :where(.course-icon,.course-number){color:var(--ui-teal);background:var(--ui-teal-soft)}body.app-shell .course-card-politics :where(.course-icon,.course-number){color:var(--ui-pink);background:var(--ui-pink-soft)}body.app-shell .course-card-roots :where(.course-icon,.course-number){color:var(--ui-orange);background:var(--ui-orange-soft)}body.app-shell .course-card-ielts :where(.course-icon,.course-number){color:var(--ui-purple);background:var(--ui-purple-soft)}body.app-shell .course-number{opacity:.62}body.app-shell .course-practice,body.app-shell .grammar-practice-strip,body.app-shell .grammar-hero-panel,body.app-shell .grammar-example,body.app-shell .grammar-analysis,body.app-shell .ke-drill,body.app-shell .ke-rule,body.app-shell .kec-filters,body.app-shell .kec-reader-shell,body.app-shell .ras-search,body.app-shell .ras-prefix-node,body.app-shell .ivq-options,body.app-shell .pb-search,body.app-shell .rw-compose,body.app-shell .rl-tips{border-color:var(--ui-line);border-radius:var(--ui-radius-sm);color:var(--ui-ink-2);background:var(--ui-surface-muted)}body.app-shell .course-practice{border-color:var(--ui-blue)}@supports (color:color-mix(in lab, red, red)){body.app-shell .course-practice{border-color:color-mix(in srgb, var(--ui-blue) 18%, var(--ui-line))}}body.app-shell .course-practice{background:var(--ui-blue-soft)}@supports (color:color-mix(in lab, red, red)){body.app-shell .course-practice{background:color-mix(in srgb, var(--ui-blue-soft) 44%, var(--ui-surface))}}body.app-shell .grammar-stage,body.app-shell .grammar-focus,body.app-shell .ke-kicker,body.app-shell .kec-kicker,body.app-shell .ras-eyebrow,body.app-shell .ivq-label,body.app-shell .rl-tag{color:var(--ui-blue)}body.app-shell .grammar-hero-panel span,body.app-shell .grammar-check-grid label,body.app-shell .ke-track,body.app-shell .kec-group,body.app-shell .ras-entry,body.app-shell .ras-prefix-main,body.app-shell .ivq-option,body.app-shell .pbd-row,body.app-shell .rw-comment{border-color:var(--ui-line);border-radius:var(--ui-radius-sm);color:var(--ui-ink);background:var(--ui-surface)}body.app-shell .ke-primary,body.app-shell .kec-reader-tabs button.active,body.app-shell .ivq-next,body.app-shell .pb-btn,body.app-shell .pbd-copy-btn,body.app-shell .rw-submit{border-color:var(--ui-blue-fill);color:#fff;background:var(--ui-blue-fill)}body.app-shell .ke-secondary,body.app-shell .ras-back,body.app-shell .ivq-back{border-color:var(--ui-line);color:var(--ui-ink-2);background:var(--ui-surface)}body.app-shell .kec-reader{color:var(--ui-ink);background:var(--ui-surface)}body.app-shell .kec-reader-content,body.app-shell .ras-content{color:var(--ui-ink-2);font-family:var(--ui-reading-font);font-size:17px;line-height:1.88}body.app-shell .ras-prefix-branch:before,body.app-shell .ras-prefix-branch:after{border-color:var(--ui-line-strong)}body.app-shell .pb-search-bar,body.app-shell .pb-search-input{background:var(--ui-surface)}body.app-shell .pb-badge-mine{color:var(--ui-blue);background:var(--ui-blue-soft)}body.app-shell .pb-meta,body.app-shell .pbd-phonetic,body.app-shell .rw-time,body.app-shell .cl-date{color:var(--ui-muted)}body.app-shell .rw-order{border-radius:var(--ui-pill);background:var(--ui-surface-muted);padding:4px}body.app-shell .rw-order-btn{border-radius:var(--ui-pill);color:var(--ui-muted);background:0 0;border:0}body.app-shell .rw-order-btn.active{color:var(--ui-ink);background:var(--ui-surface);box-shadow:var(--ui-shadow-1)}body.app-shell .rw-avatar{color:#fff;background:var(--ui-hero-bg)}body.app-shell .cl-timeline:before{background:var(--ui-line)}body.app-shell .cl-tag{border-color:var(--ui-line);color:var(--ui-ink-2);background:var(--ui-surface-muted)}body.app-shell .bt-hero,body.app-shell .bh-hero{border:1px solid var(--ui-line);border-radius:var(--ui-radius-lg);color:#fff;background:var(--ui-hero-bg);box-shadow:var(--ui-shadow-2)}body.app-shell .bt-hero :where(h1,h2,h3,p,a),body.app-shell .bh-hero :where(h1,h2,h3,p){color:inherit}body.app-shell .bt-hero-icon,body.app-shell .bt-card-icon{filter:grayscale()}body.app-shell .bt-hero-btn{color:#fff;background:#ffffff1a;border-color:#ffffff40}body.app-shell .bt-card,body.app-shell .bt-rooms,body.app-shell .bt-room,body.app-shell .bh-card,body.app-shell .bh-match,body.app-shell .bh-rank-row,body.app-shell .bb-card,body.app-shell .bb-row,body.app-shell .rp-card,body.app-shell .rp-round,body.app-shell .battle-layout>.card,body.app-shell .battle-room-grid>.card{border:1px solid var(--ui-line);border-radius:var(--ui-radius-md);color:var(--ui-ink);background:var(--ui-surface);box-shadow:var(--ui-shadow-1)}body.app-shell .bt-submit,body.app-shell .bb-unban{border-color:var(--ui-blue-fill);color:#fff;background:var(--ui-blue-fill)}body.app-shell .bt-input,body.app-shell .bb-search-input{border-color:var(--ui-line-strong);color:var(--ui-ink);background:var(--ui-surface)}body.app-shell .bt-room:hover,body.app-shell .bh-match:hover,body.app-shell .bb-row:hover{border-color:var(--ui-line-strong);background:var(--ui-surface-raised)}body.app-shell .bt-room-code,body.app-shell .bb-code,body.app-shell .rp-code{color:var(--ui-blue);background:var(--ui-blue-soft)}body.app-shell .bh-stat,body.app-shell .bh-rank-row,body.app-shell .rp-table-wrap{border-color:var(--ui-line);background:var(--ui-surface-muted)}body.app-shell .bh-stat-num,body.app-shell .bh-rank-elo{color:var(--ui-ink)}body.app-shell .bb-avatar,body.app-shell .rp-icon{color:#fff;background:var(--ui-hero-bg)}body.app-shell .adm-stats-grid{gap:12px}body.app-shell .adm-stat-card,body.app-shell .adm-row{border:1px solid var(--ui-line);border-radius:var(--ui-radius-md);color:var(--ui-ink);background:var(--ui-surface);box-shadow:var(--ui-shadow-1)}body.app-shell .adm-stat-card:hover,body.app-shell .adm-row:hover{border-color:var(--ui-line-strong);color:var(--ui-ink);box-shadow:var(--ui-shadow-2)}body.app-shell .adm-stat-num{color:var(--ui-ink)}body.app-shell .adm-badge-admin,body.app-shell .adm-badge-vis{color:var(--ui-blue);background:var(--ui-blue-soft)}body.app-shell .adm-btn-danger{color:var(--ui-red);background:var(--ui-red-soft);border-color:#d7001533}body.app-shell .membership-shell{gap:16px;width:min(100%,1120px);margin:0 auto 16px}body.app-shell .membership-pass{border-radius:var(--ui-radius-xl);color:#fff;min-height:460px;box-shadow:var(--ui-shadow-3);background:radial-gradient(circle at 90% 5%,#0a84ff38,#0000 29%),#1d1d1f;border:1px solid #ffffff21;padding:34px}body.app-shell .membership-pass__grain{opacity:.055}body.app-shell .membership-pass__brand,body.app-shell .membership-eyebrow,body.app-shell .membership-checkout__kicker{color:#8fc7ff}body.app-shell .membership-pass h1,body.app-shell .membership-benefits strong{color:#fff;font-family:var(--ui-font)}body.app-shell .membership-lead,body.app-shell .membership-benefits small,body.app-shell .membership-price>small{color:#fff9}body.app-shell .membership-price{color:#fff}body.app-shell .membership-price>strong{font-family:var(--ui-font);font-weight:720}body.app-shell .membership-pass__rule{color:#ffffff40}body.app-shell .membership-pass__rule span{background:#ffffff1f}body.app-shell .membership-benefits>div{border-radius:var(--ui-radius-sm);background:#ffffff0e;border-color:#ffffff1c}body.app-shell .membership-benefit-icon{color:#8fc7ff;background:#0a84ff24;border-radius:10px}body.app-shell .membership-badge{color:#ffffffc2;background:#ffffff12;border-color:#ffffff29}body.app-shell .membership-checkout{border:1px solid var(--ui-line);border-radius:var(--ui-radius-xl);background:var(--ui-surface);box-shadow:var(--ui-shadow-2);padding:28px}body.app-shell .membership-plan-grid{gap:8px}body.app-shell .membership-plan-option{border:1px solid var(--ui-line);border-radius:var(--ui-radius-sm);background:var(--ui-surface-muted);min-height:70px;box-shadow:none;padding:13px}body.app-shell .membership-plan-option:hover{border-color:var(--ui-line-strong);background:var(--ui-surface-hover)}body.app-shell .membership-plan-option:has(input:checked){border-color:var(--ui-blue);background:var(--ui-blue-soft);box-shadow:0 0 0 3px #0071e31a}body.app-shell .membership-plan-option__copy strong{color:var(--ui-ink)}body.app-shell .membership-plan-option__price,body.app-shell .membership-order-total strong,body.app-shell .membership-back-link{color:var(--ui-blue);font-family:var(--ui-font)}body.app-shell .membership-plan-option__tag{color:#fff;background:var(--ui-hero-bg);border-radius:0 10px 0 8px}body.app-shell .membership-order-line,body.app-shell .membership-payment-note{border-color:var(--ui-line)}body.app-shell .membership-pay-button{border-color:var(--ui-blue-fill);border-radius:var(--ui-radius-sm);color:#fff;background:var(--ui-blue-fill);min-height:50px;box-shadow:none;background-image:none}body.app-shell .membership-pay-button:not(:disabled):hover{background:var(--ui-blue-fill-hover);box-shadow:0 7px 20px #0071e32e}body.app-shell .membership-free-note{border-color:var(--ui-line);border-radius:var(--ui-radius-md);background:var(--ui-surface);width:min(100%,1120px)}body.app-shell .alipay-callback-card{border:1px solid var(--ui-line);border-radius:var(--ui-radius-xl);color:var(--ui-ink);background:var(--ui-surface);box-shadow:var(--ui-shadow-3)}body.app-shell .alipay-callback-mark{color:#fff;background:var(--ui-blue-fill)}body.app-shell .alipay-callback-kicker{color:var(--ui-blue)}@media (width<=900px){body.app-shell.auth-page .auth-grid-new,body.app-shell .hm-lookup,body.app-shell .study-workspace{grid-template-columns:1fr}body.app-shell.auth-page .auth-grid-new{width:min(100%,540px)}body.app-shell.auth-page .auth-intro-card{display:none}body.app-shell .hm-lookup-sources,body.app-shell .hm-lookup-result{grid-column:auto}body.app-shell .study-root-panel{min-height:0}body.app-shell .grp-layout{grid-template-columns:1fr}body.app-shell .grp-mobile-tabs{display:grid}}@media (width<=680px){body.app-shell.auth-page .auth-form-card{border-radius:var(--ui-radius-lg);padding:25px 20px}body.app-shell .hm-lookup,body.app-shell .hm-hero,body.app-shell .hm-card,body.app-shell .study-workspace-main,body.app-shell .study-root-panel,body.app-shell .membership-checkout{padding:19px}body.app-shell .hm-lookup-form{grid-template-columns:1fr}body.app-shell .hm-lookup-form button{width:100%}body.app-shell .hm-hero{gap:24px;min-height:0;display:grid}body.app-shell .hm-ring-wrap{justify-self:center}body.app-shell .hm-stats{grid-template-columns:repeat(2,minmax(0,1fr))}body.app-shell .hm-grid-2,body.app-shell .hm-today-grid,body.app-shell .hm-asset-grid{grid-template-columns:1fr 1fr}body.app-shell .word-heading h2{font-size:clamp(2.6rem,17vw,4.5rem)}body.app-shell .study-toolbar{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}body.app-shell .study-toolbar-btn{width:100%}body.app-shell .study-shortcut{grid-column:1/-1}body.app-shell .word-metrics{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}body.app-shell .word-metric{border-right:0;border-bottom:1px solid var(--ui-line)}body.app-shell .rating{grid-template-columns:repeat(2,minmax(0,1fr))}body.app-shell .page-header{display:grid}body.app-shell .words-actions,body.app-shell .wb-header-actions{justify-content:flex-start}body.app-shell .membership-pass{border-radius:var(--ui-radius-lg);min-height:0;padding:24px 20px}body.app-shell .membership-plan-grid{grid-template-columns:1fr}body.app-shell .membership-free-note{display:grid}}@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}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@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-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-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}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}
