@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-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-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-ease:initial;--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-red-500:#fb2c36;--color-green-400:#05df72;--color-green-500:#00c758;--color-green-600:#00a544;--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-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--text-5xl:3rem;--font-weight-medium:500;--font-weight-semibold:600;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--shadow-sm:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;--ease-out:cubic-bezier(0,0,.2,1);--animate-spin:spin 1s linear infinite;--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)}@supports (color:lab(0% 0 0)){:root,:host{--color-red-500:lab(55.4814% 75.0732 48.8528);--color-green-400:lab(78.503% -64.9265 39.7492);--color-green-500:lab(70.5521% -66.5147 45.8073);--color-green-600:lab(59.0978% -58.6621 41.2579)}}}@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,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-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{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}}@layer components;@layer utilities{.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.mt-4{margin-top:calc(var(--spacing)*4)}.mt-6{margin-top:calc(var(--spacing)*6)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-3{margin-bottom:calc(var(--spacing)*3)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.ml-1{margin-left:calc(var(--spacing)*1)}.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}.h-9{height:calc(var(--spacing)*9)}.h-10{height:calc(var(--spacing)*10)}.h-11{height:calc(var(--spacing)*11)}.w-10{width:calc(var(--spacing)*10)}.w-full{width:100%}.flex-shrink{flex-shrink:1}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.animate-in{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.animate-spin{animation:var(--animate-spin)}.resize{resize:both}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:calc(var(--spacing)*1)}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*4)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-y-reverse)))}.rounded-md{border-radius:var(--radius-md)}.border{border-style:var(--tw-border-style);border-width:1px}.border-green-500{border-color:var(--color-green-500)}.border-red-500{border-color:var(--color-red-500)}.bg-green-500{background-color:var(--color-green-500)}.bg-red-500{background-color:var(--color-red-500)}.p-3{padding:calc(var(--spacing)*3)}.p-4{padding:calc(var(--spacing)*4)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-4{padding-inline:calc(var(--spacing)*4)}.px-8{padding-inline:calc(var(--spacing)*8)}.py-2{padding-block:calc(var(--spacing)*2)}.pl-2{padding-left:calc(var(--spacing)*2)}.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))}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.whitespace-nowrap{white-space:nowrap}.text-green-500{color:var(--color-green-500)}.text-green-600{color:var(--color-green-600)}.text-white{color:var(--color-white)}.italic{font-style:italic}.line-through{text-decoration-line:line-through}.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.opacity-50{opacity:.5}.opacity-90{opacity:.9}.opacity-100{opacity:1}.ring,.ring-1{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-green-500{--tw-ring-color:var(--color-green-500)}.ring-red-500{--tw-ring-color:var(--color-red-500)}.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,)}.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))}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.will-change-\[transform\,filter\,opacity\]{will-change:transform,filter,opacity}.fade-in{--tw-enter-opacity:0}.fade-out{--tw-exit-opacity:0}.slide-in-from-top-2{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}@media (hover:hover){.hover\:underline:hover{text-decoration-line:underline}}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.focus-visible\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:opacity-50:disabled{opacity:.5}@media (min-width:40rem){.sm\:inline{display:inline}}@media (prefers-color-scheme:dark){.dark\:text-green-400{color:var(--color-green-400)}}}:root{--font-manrope:"Manrope",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-inter:"Inter",sans-serif;--font-montserrat:"Montserrat",sans-serif;--font-roboto:"Roboto",sans-serif;--font-open-sans:"Open Sans",sans-serif;--font-ubuntu:"Ubuntu",sans-serif;--font-literata:"Literata",serif;--font-lora:"Lora",serif;--font-merriweather:"Merriweather",serif;--font-pt-serif:"PT Serif",serif;--font-bitter:"Bitter",serif;--font-jetbrains-mono:"JetBrains Mono",monospace;--font-oswald:"Oswald",sans-serif;--font-atkinson:"Atkinson Hyperlegible",sans-serif;--font-cinzel:"Cinzel RUS",serif;--font-cormorant-garamond:"Cormorant Garamond",serif;--font-forum:"Forum",serif;--font-open-dyslexic:var(--font-atkinson);--font-sans:var(--font-manrope);--font-mono:var(--font-jetbrains-mono);--font-notes:var(--font-sans);--font-cards:var(--font-sans);--notes-line-height:1.6;--cards-font-size:20px;--cards-line-height:1.6;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-md:var(--text-base);--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--font-size-base:var(--text-base);--font-light:300;--font-normal:400;--font-medium:500;--font-semibold:600;--font-bold:700;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-7:1.75rem;--space-8:2rem;--space-9:2.25rem;--space-10:2.5rem;--space-11:2.75rem;--space-12:3rem;--space-13:3.25rem;--space-14:3.5rem;--space-15:3.75rem;--space-16:4rem;--space-17:4.25rem;--space-18:4.5rem;--space-19:4.75rem;--space-20:5rem;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:24px;--radius-2xl:32px;--radius-3xl:40px;--radius-full:9999px;--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;--shadow-xl:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;--transition-fast:.15s ease;--transition-base:.2s ease;--transition-slow:.3s ease;--transition-spring:.3s cubic-bezier(.34,1.56,.64,1);--z-dropdown:100;--z-sticky:200;--z-modal-backdrop:300;--z-modal:400;--z-toast:500;--z-splash:1000;--breakpoint-xs:320px;--breakpoint-sm:480px;--breakpoint-md:768px;--breakpoint-lg:1024px;--breakpoint-xl:1400px;--touch-target-min:44px;--touch-target-comfortable:48px;--swipe-threshold:50px;--mobile-sidebar-width:280px;--mobile-header-height:56px;--mobile-bottom-nav-height:64px;--mobile-content-padding:var(--space-3);--sidebar-width:250px;--sidebar-collapsed-width:72px;--sidebar-width-effective:var(--sidebar-width);--content-padding:var(--space-8);--home-content-max-width:min(1000px,calc(100vw - var(--sidebar-width-effective) - var(--space-12)));--stats-max-width:var(--home-content-max-width);--modules-max-width:min(850px,calc(var(--home-content-max-width)*.9));--stat-card-padding:clamp(var(--space-2),1vw,var(--space-4));--stat-icon-size:clamp(28px,2.5vw,48px);--stat-value-size:clamp(var(--text-sm),1.2vw,var(--text-xl));--module-icon-size:clamp(36px,3vw,56px);--module-title-size:clamp(var(--text-sm),1.2vw,var(--text-xl));--flashcard-max-width:430px;--flashcard-max-height:573px;--flashcard-aspect-ratio:3/4;--review-category-width:120px;--review-btn-padding:var(--space-2);--review-btn-max-width:140px;--review-btn-min-height:40px;--mini-card-width:230px;--mini-card-height:300px;--text-bold-color:inherit;--text-bold-background:transparent;--text-bold-text-decoration:none;--text-bold-text-shadow:none;--text-bold-background-clip:unset;--text-bold-webkit-background-clip:unset;--text-bold-webkit-text-fill-color:unset;--text-italic-color:inherit;--text-italic-background:transparent;--text-italic-text-decoration:none;--text-italic-text-shadow:none;--text-italic-background-clip:unset;--text-italic-webkit-background-clip:unset;--text-italic-webkit-text-fill-color:unset;--text-underline-color:inherit;--text-underline-background:transparent;--text-underline-text-decoration:underline;--text-underline-text-shadow:none;--text-underline-background-clip:unset;--text-underline-webkit-background-clip:unset;--text-underline-webkit-text-fill-color:unset;--text-highlight-color:inherit;--text-highlight-background:#a7b7c8b3;--text-highlight-text-decoration:none;--text-highlight-text-shadow:none;--text-highlight-background-clip:unset;--text-highlight-webkit-background-clip:unset;--text-highlight-webkit-text-fill-color:unset;--ai-gradient:linear-gradient(135deg,#6366f1 10%,#a855f7 50%,#ec4899 100%);--brand-gradient:radial-gradient(circle at 50% 10%,#c4b5fd 0%,#a78bfa 70%,#8b5cf6 100%);--btn-gradient-start:#c4b5fd;--btn-gradient-mid:#a78bfa;--btn-gradient-end:#8b5cf6;--ai-gradient-start:#6366f1;--ai-gradient-mid:#a855f7;--ai-gradient-end:#ec4899;--color-delete:#991b1b;--color-delete-hover:#ef4444;--bg-primary:var(--color-bg);--bg-secondary:var(--color-surface);--bg-tertiary:var(--color-surface-variant);--text-primary:var(--color-text);--text-secondary:var(--color-text-secondary);--text-tertiary:var(--color-text-tertiary);--border-primary:var(--color-outline);--border-secondary:var(--color-outline-variant);--color-border:var(--color-outline);--color-on-surface:var(--color-text);--color-on-surface-variant:var(--color-text-secondary);--color-danger:var(--color-error);--color-surface-hover:var(--color-surface-variant)}@supports (color:color-mix(in lab, red, red)){:root{--color-surface-hover:color-mix(in srgb,var(--color-surface-variant)82%,var(--color-primary,#8b5cf6)18%)}}:root{--color-hover:var(--color-surface-hover)}[data-main-font=Manrope]{--font-sans:var(--font-manrope)}[data-main-font=Inter]{--font-sans:var(--font-inter)}[data-main-font=Montserrat]{--font-sans:var(--font-montserrat)}[data-main-font=Roboto]{--font-sans:var(--font-roboto)}[data-main-font=Open\ Sans]{--font-sans:var(--font-open-sans)}[data-main-font=Ubuntu]{--font-sans:var(--font-ubuntu)}[data-main-font=Literata]{--font-sans:var(--font-literata)}[data-main-font=Lora]{--font-sans:var(--font-lora)}[data-main-font=Merriweather]{--font-sans:var(--font-merriweather)}[data-main-font=PT\ Serif]{--font-sans:var(--font-pt-serif)}[data-main-font=Bitter]{--font-sans:var(--font-bitter)}[data-main-font=JetBrains\ Mono]{--font-sans:var(--font-jetbrains-mono)}[data-main-font=Oswald]{--font-sans:var(--font-oswald)}[data-main-font=Atkinson\ Hyperlegible]{--font-sans:var(--font-atkinson)}[data-main-font=Cinzel]{--font-sans:var(--font-cinzel)}[data-main-font=Cormorant\ Garamond]{--font-sans:var(--font-cormorant-garamond)}[data-main-font=Forum]{--font-sans:var(--font-forum)}[data-main-font=OpenDyslexic]{--font-sans:var(--font-open-dyslexic)}[data-notes-font=Manrope]{--font-notes:var(--font-manrope)}[data-notes-font=Inter]{--font-notes:var(--font-inter)}[data-notes-font=Montserrat]{--font-notes:var(--font-montserrat)}[data-notes-font=Roboto]{--font-notes:var(--font-roboto)}[data-notes-font=Open\ Sans]{--font-notes:var(--font-open-sans)}[data-notes-font=Ubuntu]{--font-notes:var(--font-ubuntu)}[data-notes-font=Literata]{--font-notes:var(--font-literata)}[data-notes-font=Lora]{--font-notes:var(--font-lora)}[data-notes-font=Merriweather]{--font-notes:var(--font-merriweather)}[data-notes-font=PT\ Serif]{--font-notes:var(--font-pt-serif)}[data-notes-font=Bitter]{--font-notes:var(--font-bitter)}[data-notes-font=JetBrains\ Mono]{--font-notes:var(--font-jetbrains-mono)}[data-notes-font=Oswald]{--font-notes:var(--font-oswald)}[data-notes-font=Atkinson\ Hyperlegible]{--font-notes:var(--font-atkinson)}[data-notes-font=Cinzel]{--font-notes:var(--font-cinzel)}[data-notes-font=Cormorant\ Garamond]{--font-notes:var(--font-cormorant-garamond)}[data-notes-font=Forum]{--font-notes:var(--font-forum)}[data-notes-font=OpenDyslexic]{--font-notes:var(--font-open-dyslexic)}[data-cards-font=Manrope]{--font-cards:var(--font-manrope)}[data-cards-font=Inter]{--font-cards:var(--font-inter)}[data-cards-font=Montserrat]{--font-cards:var(--font-montserrat)}[data-cards-font=Roboto]{--font-cards:var(--font-roboto)}[data-cards-font=Open\ Sans]{--font-cards:var(--font-open-sans)}[data-cards-font=Ubuntu]{--font-cards:var(--font-ubuntu)}[data-cards-font=Literata]{--font-cards:var(--font-literata)}[data-cards-font=Lora]{--font-cards:var(--font-lora)}[data-cards-font=Merriweather]{--font-cards:var(--font-merriweather)}[data-cards-font=PT\ Serif]{--font-cards:var(--font-pt-serif)}[data-cards-font=Bitter]{--font-cards:var(--font-bitter)}[data-cards-font=JetBrains\ Mono]{--font-cards:var(--font-jetbrains-mono)}[data-cards-font=Oswald]{--font-cards:var(--font-oswald)}[data-cards-font=Atkinson\ Hyperlegible]{--font-cards:var(--font-atkinson)}[data-cards-font=Cinzel]{--font-cards:var(--font-cinzel)}[data-cards-font=Cormorant\ Garamond]{--font-cards:var(--font-cormorant-garamond)}[data-cards-font=Forum]{--font-cards:var(--font-forum)}[data-cards-font=OpenDyslexic]{--font-cards:var(--font-open-dyslexic)}[data-theme=light]{--color-bg:#fafafc;--color-surface:#fcfcfe;--color-surface-rgb:252,252,254;--color-surface-variant:#f4f4f8;--color-surface-container:#f8f8fb;--color-surface-container-high:#efeff3;--color-surface-container-highest:#e8e8ed;--color-outline:#d0d0d8;--color-outline-variant:#e0e0e6;--color-text:#1a1a1f;--color-text-secondary:#454550;--color-text-tertiary:#70707a;--color-success:#22c55e;--color-success-container:#dcfce7;--color-warning:#f59e0b;--color-warning-container:#fef3c7;--color-error:#ef4444;--color-error-container:#fee2e2;--color-info:#3b82f6;--color-info-container:#dbeafe;--color-card:#fff;--color-card-border:#e8e8ed;--modal-backdrop:#0006;--shadow-card:0 1px 3px #00000014,0 1px 2px #0000000a;--shadow-card-hover:0 4px 12px #0000001a;--shadow-modal:0 25px 50px -12px #00000040;--brand-gradient:radial-gradient(circle,#6d28d9 0%,#4338ca 70%,#1e1b4b 100%);--btn-gradient-start:#6d28d9;--btn-gradient-mid:#4338ca;--btn-gradient-end:#1e1b4b}[data-theme=dark]{--color-bg:#050508;--color-surface:#0a0a0f;--color-surface-rgb:10,10,15;--color-surface-variant:#15151a;--color-surface-container:#101015;--color-surface-container-high:#1a1a20;--color-surface-container-highest:#24242a;--color-outline:#2f2f35;--color-outline-variant:#202026;--color-text:#e8e8ec;--color-text-secondary:#9999a5;--color-text-tertiary:#6a6a75;--color-success:#4ade80;--color-success-container:#14532d;--color-warning:#fbbf24;--color-warning-container:#713f12;--color-error:#ff5a5f;--color-error-container:#7f1d1d;--color-info:#60a5fa;--color-info-container:#1e3a5f;--color-card:#18181d;--color-card-border:#2a2a30;--modal-backdrop:#000000b3;--shadow-card:0 1px 3px #0000004d,0 1px 2px #0003;--shadow-card-hover:0 4px 12px #0006;--shadow-modal:0 25px 50px -12px #0009}[data-accent=violet]{--color-primary:#7c4dff;--color-primary-hover:#651fff;--color-primary-container:#7c4dff1f;--color-primary-container-hover:#7c4dff33;--color-on-primary:#fff}[data-theme=dark][data-accent=violet]{--color-primary:#9e7cff;--color-primary-hover:#b49fff;--color-primary-container:#9e7cff33}[data-accent=teal]{--color-primary:#00bfa5;--color-primary-hover:#00a896;--color-primary-container:#00bfa51f;--color-primary-container-hover:#00bfa533;--color-on-primary:#fff}[data-theme=dark][data-accent=teal]{--color-primary:#64ffda;--color-primary-hover:#7fffdf;--color-primary-container:#64ffda33}[data-accent=blue]{--color-primary:#2979ff;--color-primary-hover:#2962ff;--color-primary-container:#2979ff1f;--color-primary-container-hover:#2979ff33;--color-on-primary:#fff}[data-theme=dark][data-accent=blue]{--color-primary:#69a6ff;--color-primary-hover:#82b5ff;--color-primary-container:#69a6ff33}[data-accent=orange]{--color-primary:#ff9100;--color-primary-hover:#ff6d00;--color-primary-container:#ff91001f;--color-primary-container-hover:#ff910033;--color-on-primary:#fff}[data-theme=dark][data-accent=orange]{--color-primary:#ffab40;--color-primary-hover:#ffbd60;--color-primary-container:#ffab4033}[data-accent=pink]{--color-primary:#ff4081;--color-primary-hover:#f50057;--color-primary-container:#ff40811f;--color-primary-container-hover:#ff408133;--color-on-primary:#fff}[data-theme=dark][data-accent=pink]{--color-primary:#ff80ab;--color-primary-hover:#ff99bc;--color-primary-container:#ff80ab33}[data-accent=coral]{--color-primary:#ff6b6b;--color-primary-hover:#ff5252;--color-primary-container:#ff6b6b1f;--color-primary-container-hover:#ff6b6b33;--color-on-primary:#fff}[data-theme=dark][data-accent=coral]{--color-primary:#ff8a8a;--color-primary-hover:#ffa0a0;--color-primary-container:#ff8a8a33}[data-accent=gold]{--color-primary:#ffd54f;--color-primary-hover:#ffc107;--color-primary-container:#ffd54f26;--color-primary-container-hover:#ffd54f40;--color-on-primary:#1a1a1f}[data-theme=dark][data-accent=gold]{--color-primary:#ffe082;--color-primary-hover:#ffe89f;--color-primary-container:#ffe08233;--color-on-primary:#1a1a1f}[data-accent=lime]{--color-primary:#76ff03;--color-primary-hover:#64dd17;--color-primary-container:#76ff031f;--color-primary-container-hover:#76ff0333;--color-on-primary:#1a1a1f}[data-theme=dark][data-accent=lime]{--color-primary:#b2ff59;--color-primary-hover:#c5ff7a;--color-primary-container:#b2ff5933;--color-on-primary:#1a1a1f}[data-accent=indigo]{--color-primary:#6366f1;--color-primary-hover:#4f46e5;--color-primary-container:#6366f11f;--color-primary-container-hover:#6366f133;--color-on-primary:#fff}[data-theme=dark][data-accent=indigo]{--color-primary:#818cf8;--color-primary-hover:#a5b4fc;--color-primary-container:#818cf833}:root{--color-again:#ef5350;--color-hard:#78909c;--color-good:#66bb6a;--color-easy:#42a5f5}[data-theme=light]{--color-again-container:#ffebee;--color-hard-container:#f5f5f5;--color-good-container:#e8f5e9;--color-easy-container:#e3f2fd}[data-theme=dark]{--color-again-container:#3d2020;--color-hard-container:#2a2d30;--color-good-container:#1b3d1f;--color-easy-container:#1a2f3d}[data-theme=light]{--color-new:#2196f3;--color-learning:#ff9800;--color-review:#4caf50;--color-mastered:#00c853}[data-theme=dark]{--color-new:#64b5f6;--color-learning:#ffb74d;--color-review:#81c784;--color-mastered:#69f0ae}:root{--folder-violet:#7c4dff;--folder-teal:#00bfa5;--folder-blue:#2979ff;--folder-orange:#ff9100;--folder-pink:#ff4081;--folder-green:#00e676;--folder-yellow:#ffd54f;--folder-coral:#ff6b6b}@media (min-width:1400px) and (min-height:900px){:root{--content-padding:var(--space-8);--flashcard-max-width:450px;--flashcard-max-height:600px;--flashcard-aspect-ratio:3/4;--review-category-width:130px;--review-btn-max-width:150px;--review-btn-min-height:45px;--mini-card-width:200px;--mini-card-height:267px}}@media (min-width:1200px) and (max-width:1399px) and (min-height:800px){:root{--content-padding:var(--space-6);--flashcard-max-width:400px;--flashcard-max-height:533px;--flashcard-aspect-ratio:3/4;--review-category-width:120px;--review-btn-max-width:140px;--review-btn-min-height:42px;--mini-card-width:180px;--mini-card-height:240px}}@media (min-width:1200px) and (min-height:600px) and (max-height:799px){:root{--content-padding:var(--space-4);--flashcard-max-width:300px;--flashcard-max-height:400px;--flashcard-aspect-ratio:3/4;--review-category-width:110px;--review-btn-max-width:130px;--review-btn-min-height:38px;--mini-card-width:150px;--mini-card-height:200px}}@media (min-width:1024px) and (max-width:1199px) and (min-height:700px){:root{--content-padding:var(--space-5);--flashcard-max-width:350px;--flashcard-max-height:467px;--flashcard-aspect-ratio:3/4;--review-category-width:110px;--review-btn-padding:var(--space-1)var(--space-3);--review-btn-max-width:130px;--review-btn-min-height:40px;--mini-card-width:160px;--mini-card-height:213px}}@media (min-width:1024px) and (max-width:1199px) and (min-height:550px) and (max-height:699px){:root{--content-padding:var(--space-3);--flashcard-max-width:280px;--flashcard-max-height:373px;--flashcard-aspect-ratio:3/4;--review-category-width:100px;--review-btn-max-width:120px;--review-btn-min-height:36px;--mini-card-width:130px;--mini-card-height:173px}}@media (min-width:768px) and (max-width:1023px) and (min-height:600px){:root{--content-padding:var(--space-4);--flashcard-max-width:320px;--flashcard-max-height:427px;--flashcard-aspect-ratio:3/4;--review-category-width:100px;--review-btn-padding:var(--space-1)var(--space-2);--review-btn-max-width:120px;--review-btn-min-height:38px;--mini-card-width:130px;--mini-card-height:173px}}@media (min-width:768px) and (max-width:1023px) and (max-height:599px){:root{--content-padding:var(--space-3);--flashcard-max-width:260px;--flashcard-max-height:347px;--flashcard-aspect-ratio:3/4;--review-category-width:90px;--review-btn-max-width:110px;--review-btn-min-height:36px;--mini-card-width:110px;--mini-card-height:147px}}@media (min-width:480px) and (max-width:767px){:root{--content-padding:var(--space-3);--flashcard-max-width:min(85vw,320px);--flashcard-max-height:min(55vh,420px);--flashcard-aspect-ratio:3/4;--review-category-width:80px;--review-btn-max-width:none;--review-btn-min-height:44px}}@media (min-width:375px) and (max-width:479px){:root{--content-padding:var(--space-2);--flashcard-max-width:calc(100vw - var(--space-4));--flashcard-max-height:min(50vh,380px);--flashcard-aspect-ratio:3/4;--review-category-width:70px;--review-btn-max-width:none;--review-btn-min-height:44px}}@media (max-width:374px){:root{--content-padding:var(--space-2);--flashcard-max-width:calc(100vw - var(--space-3));--flashcard-max-height:min(48vh,340px);--flashcard-aspect-ratio:3/4;--review-category-width:65px;--review-btn-max-width:none;--review-btn-min-height:42px}}@media (min-width:1400px) and (max-height:599px){:root{--flashcard-max-width:260px;--flashcard-max-height:347px;--mini-card-width:120px;--mini-card-height:160px}}@media (min-width:1400px) and (min-height:600px) and (max-height:899px){:root{--flashcard-max-width:320px;--flashcard-max-height:427px;--mini-card-width:160px;--mini-card-height:213px}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;scrollbar-gutter:stable;font-size:16px;overflow-y:auto}body{font-family:var(--font-sans);font-size:var(--text-base);font-weight:var(--font-normal);color:var(--color-text);background-color:var(--color-bg);min-height:100vh;transition:background-color var(--transition-base),color var(--transition-base);overscroll-behavior-x:none;overscroll-behavior-y:auto;touch-action:pan-y;line-height:1.6;overflow-x:hidden}@media (max-width:768px){html,body{-webkit-overflow-scrolling:touch;touch-action:pan-y pinch-zoom!important;overscroll-behavior-x:none!important;overscroll-behavior-y:auto!important}*{overscroll-behavior-x:none!important;touch-action:pan-y pinch-zoom!important}#app,.app-container{touch-action:pan-y pinch-zoom!important;overscroll-behavior-x:none!important}}h1,h2,h3,h4,h5,h6{font-weight:var(--font-semibold);color:var(--color-text);line-height:1.3}h1{font-size:var(--text-4xl)}h2{font-size:var(--text-3xl)}h3{font-size:var(--text-2xl)}h4{font-size:var(--text-xl)}h5{font-size:var(--text-lg)}h6{font-size:var(--text-base)}p{margin-bottom:var(--space-4);color:var(--color-text)}a{color:var(--color-primary);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--color-primary-hover)}strong{font-weight:var(--font-semibold);color:var(--color-text)}code{font-family:var(--font-mono);background:var(--color-surface-container-high);border-radius:var(--radius-sm);padding:.2em .4em;font-size:.9em}pre{font-family:var(--font-mono);background:var(--color-surface-container-highest);padding:var(--space-4);border-radius:var(--radius-lg);overflow-x:auto}pre code{background:0 0;padding:0}ul,ol{padding-left:var(--space-6);margin-bottom:var(--space-4)}li{margin-bottom:var(--space-2)}input,textarea,select{font-family:inherit;font-size:inherit}input[type=text],input[type=email],input[type=password],input[type=number],input[type=search],textarea,select{width:100%;padding:var(--space-3)var(--space-4);background:var(--color-surface);border:1px solid var(--color-outline-variant);border-radius:var(--radius-md);color:var(--color-text);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}select{padding-right:var(--space-10);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23666' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-3)center;appearance:none;cursor:pointer;background-size:20px}input:focus,textarea:focus,select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-container);outline:none}input::placeholder,textarea::placeholder{color:var(--color-text-tertiary)}label{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text-secondary);margin-bottom:var(--space-2);display:block}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--color-outline);border-radius:22px}::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary)}*{scrollbar-width:thin;scrollbar-color:var(--color-outline)transparent}::selection{background:var(--color-primary-container);color:var(--color-text)}body.home-page-active #main-content,body.notes-page-active #main-content,body.cards-page-active #main-content,body.tests-page-active #main-content{height:100vh!important;min-height:100vh!important;padding:0!important;overflow:hidden!important}:is(html:has(body.home-page-active),html:has(body.notes-page-active),html:has(body.cards-page-active),html:has(body.tests-page-active)){scrollbar-gutter:auto}@media (max-width:768px){body.home-page-active #main-content,body.notes-page-active #main-content,body.cards-page-active #main-content,body.tests-page-active #main-content{height:auto!important;min-height:auto!important;overflow:auto!important}body.mobile-sidebar-open{left:0;right:0;width:100%!important;height:100dvh!important;position:fixed!important;overflow:hidden!important}}.sidebar-file-header{padding:var(--space-6);border-bottom:1px solid var(--color-outline-variant)}@supports (color:color-mix(in lab, red, red)){.sidebar-file-header{border-bottom:1px solid color-mix(in srgb,var(--color-outline-variant)50%,transparent)}}.sidebar-file-header{justify-content:space-between;align-items:center;display:flex}.sidebar-file-title{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--color-text)}.sidebar-file-actions{gap:8px;margin-left:auto;display:flex}.sidebar-file-actions .btn-primary.btn-icon-text,.sidebar-file-actions .btn-secondary.btn-icon-text{width:auto;min-width:auto;height:auto;color:var(--color-text-secondary);transition:color var(--transition-fast);border:none;justify-content:center;align-items:center;padding:0;display:flex;background:0 0!important}.sidebar-file-actions .btn-primary.btn-icon-text:hover,.sidebar-file-actions .btn-secondary.btn-icon-text:hover{color:var(--color-primary);background:0 0;transform:none}.sidebar-file-actions .btn-primary.btn-icon-text:active,.sidebar-file-actions .btn-secondary.btn-icon-text:active{color:var(--color-primary);background:0 0}.sidebar-file-actions .btn-primary.btn-icon-text svg,.sidebar-file-actions .btn-secondary.btn-icon-text svg{width:20px;height:20px}.sidebar-file-content{padding:var(--space-4);flex:1;min-height:0;overflow-y:auto}.sidebar-file-search{align-items:center;gap:var(--space-1);padding:var(--space-1)var(--space-6);border-bottom:1px solid var(--color-outline-variant);display:flex}@supports (color:color-mix(in lab, red, red)){.sidebar-file-search{border-bottom:1px solid color-mix(in srgb,var(--color-outline-variant)50%,transparent)}}.sidebar-file-search-icon{width:16px;height:16px;color:var(--color-text-tertiary);transition:color var(--transition-fast);flex-shrink:0}.sidebar-file-search-input{color:var(--color-text);font-size:var(--text-sm);background:0 0;border-radius:0;outline:none;flex:1;padding:0;border:none!important}.sidebar-file-search-input::placeholder{color:var(--color-text-tertiary)}.sidebar-file-search-input:focus{box-shadow:none;border:none}.sidebar-file-search:focus-within .sidebar-file-search-icon{color:var(--color-primary)}.sidebar-file-footer{padding:var(--space-3)var(--space-4);padding-bottom:calc(var(--space-3));border-top:1px solid var(--color-outline-variant)}@supports (color:color-mix(in lab, red, red)){.sidebar-file-footer{border-top:1px solid color-mix(in srgb,var(--color-outline-variant)50%,transparent)}}.sidebar-file-footer{box-sizing:border-box;flex-shrink:0;justify-content:center;width:100%;display:flex}.sidebar-file-footer .btn-magic-ai{width:100%;max-width:240px;height:45px;font-weight:var(--font-semibold);box-sizing:border-box;gap:.625rem;font-size:1rem;line-height:1.1}.sidebar-file-footer .btn-magic-ai svg{width:20px;height:20px}[data-main-font=Cinzel] .sidebar-file-footer .btn-magic-ai,[data-main-font=Cinzel] .sidebar-file-footer .btn-magic-ai span{font-feature-settings:"smcp" 1,"c2sc" 1;letter-spacing:.015em;font-size:.95rem;font-variant-caps:small-caps}@media (max-width:1400px){.sidebar-file-header{padding:var(--space-5)}.sidebar-file-title{font-size:var(--text-xl)}.sidebar-file-content{padding:var(--space-3)}}@media (max-height:900px){.sidebar-file-header{padding:var(--space-5)}.sidebar-file-title{font-size:var(--text-xl)}.sidebar-file-content{padding:var(--space-2)}}.app-container{z-index:1;width:100%;min-height:100vh;display:flex;position:relative}.sidebar{width:var(--sidebar-width);background:var(--color-surface)}@supports (color:color-mix(in lab, red, red)){.sidebar{background:color-mix(in srgb,var(--color-surface)88%,transparent)}}.sidebar{-webkit-backdrop-filter:blur(20px);border-right:1px solid var(--color-outline-variant)}@supports (color:color-mix(in lab, red, red)){.sidebar{border-right:1px solid color-mix(in srgb,var(--color-outline-variant)50%,transparent)}}.sidebar{height:100dvh;z-index:var(--z-sticky);transition:width var(--transition-base),transform var(--transition-base)ease-out;flex-direction:column;display:flex;position:fixed;top:0;left:0}.sidebar-header{padding:var(--space-6);border-bottom:1px solid var(--color-outline-variant)}@supports (color:color-mix(in lab, red, red)){.sidebar-header{border-bottom:1px solid color-mix(in srgb,var(--color-outline-variant)45%,transparent)}}.logo{align-items:center;gap:var(--space-2);font-family:var(--font-cinzel);font-size:var(--text-2xl);font-weight:var(--font-bold);display:flex}.logo svg{width:30px;height:30px;color:var(--btn-gradient-mid);margin-left:var(--space-4);filter:drop-shadow(0 0 8px #a855f74d);transition:filter .3s}.logo:hover svg{filter:drop-shadow(0 0 12px #a855f780)}.logo span{background:var(--brand-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.sidebar-nav{padding:var(--space-3);gap:var(--space-3);flex-direction:column;flex:1;display:flex}.nav-item{align-items:center;gap:var(--space-4);padding:var(--space-4)var(--space-5);border-radius:var(--radius-lg);color:var(--color-text-secondary);font-size:var(--text-base);font-weight:var(--font-medium);cursor:pointer;transition:all var(--transition-fast);text-align:left;background:0 0;border:1px solid #0000;width:100%;text-decoration:none;display:flex}.nav-item svg{flex-shrink:0;width:22px;height:22px}.nav-item:hover{background:var(--color-primary-container)}@supports (color:color-mix(in lab, red, red)){.nav-item:hover{background:color-mix(in srgb,var(--color-primary-container)70%,transparent)}}.nav-item:hover{color:var(--color-primary);box-shadow:0 0 10px #0000001a}.nav-item.active{background:var(--color-primary-container)}@supports (color:color-mix(in lab, red, red)){.nav-item.active{background:color-mix(in srgb,var(--color-primary-container)80%,transparent)}}.nav-item.active{color:var(--color-primary)}.sidebar-footer{padding:var(--space-3);border-top:1px solid var(--color-outline-variant)}@supports (color:color-mix(in lab, red, red)){.sidebar-footer{border-top:1px solid color-mix(in srgb,var(--color-outline-variant)45%,transparent)}}.sidebar-footer{gap:var(--space-2);flex-direction:column;display:flex}.sidebar.collapsed{border-right:none;padding:0;overflow:hidden;width:0!important;min-width:0!important}.sidebar.collapsed .sidebar-header,.sidebar.collapsed .sidebar-nav,.sidebar.collapsed .sidebar-footer{opacity:0;visibility:hidden}.sidebar-resize-handle{cursor:ew-resize;width:8px;height:100%;z-index:calc(var(--z-sticky) + 1);transition:background-color .2s;position:absolute;top:0;right:-4px}.sidebar-resize-handle:hover,.sidebar-resize-handle.resizing{background:linear-gradient(to right,transparent,var(--color-primary-container)50%,transparent)}.sidebar-resize-handle:after{content:"";background:var(--color-outline-variant);opacity:0;border-radius:22px;width:4px;height:40px;transition:opacity .2s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.sidebar-resize-handle:hover:after,.sidebar-resize-handle.resizing:after{opacity:1;background:var(--color-primary)}.sidebar-width-indicator{padding:var(--space-1)var(--space-2);background:var(--color-surface-container-high);border:1px solid var(--color-outline-variant);border-radius:var(--radius-md);font-size:var(--text-xs);color:var(--color-text-secondary);opacity:.8;pointer-events:none;white-space:nowrap;z-index:calc(var(--z-sticky) + 2);animation:.2s fadeInIndicator;position:absolute;top:50%;right:-60px;transform:translateY(-50%)}@keyframes fadeInIndicator{0%{opacity:0;transform:translateY(-50%)translate(-10px)}to{opacity:.8;transform:translateY(-50%)translate(0)}}.sidebar-expand-btn{background:var(--color-surface);border:1px solid var(--color-outline-variant);border-radius:0 var(--radius-md)var(--radius-md)0;cursor:pointer;width:24px;height:48px;color:var(--color-text-secondary);z-index:var(--z-sticky);border-left:none;justify-content:center;align-items:center;transition:all .2s;display:flex;position:fixed;top:50%;left:0;transform:translateY(-50%)}.sidebar-expand-btn:hover{background:var(--color-primary-container);color:var(--color-primary);width:28px}.sidebar-resize-handle-right{cursor:ew-resize;width:8px;height:100%;z-index:calc(var(--z-sticky) + 1);transition:background-color .2s;position:absolute;top:0;left:-4px}.sidebar-resize-handle-right:hover,.sidebar-resize-handle-right.resizing{background:linear-gradient(to left,transparent,var(--color-primary-container)50%,transparent)}.sidebar-resize-handle-right:after{content:"";border-radius:var(--radius-full);background:var(--color-outline-variant);opacity:0;width:4px;height:40px;transition:opacity .2s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.sidebar-resize-handle-right:hover:after,.sidebar-resize-handle-right.resizing:after{opacity:1;background:var(--color-primary)}.sidebar-width-indicator-right{padding:var(--space-1)var(--space-2);background:var(--color-surface-container-high);border:1px solid var(--color-outline-variant);border-radius:var(--radius-md);font-size:var(--text-xs);color:var(--color-text-secondary);opacity:.8;pointer-events:none;white-space:nowrap;z-index:calc(var(--z-sticky) + 2);animation:.2s fadeInIndicatorRight;position:absolute;top:50%;left:-60px;transform:translateY(-50%)}@keyframes fadeInIndicatorRight{0%{opacity:0;transform:translateY(-50%)translate(10px)}to{opacity:.8;transform:translateY(-50%)translate(0)}}.sidebar-expand-btn-right{background:var(--color-surface);border:1px solid var(--color-outline-variant);border-radius:var(--radius-md)0 0 var(--radius-md);cursor:pointer;width:24px;height:48px;color:var(--color-text-secondary);z-index:var(--z-sticky);border-right:none;justify-content:center;align-items:center;transition:all .2s;display:flex;position:fixed;top:50%;right:0;transform:translateY(-50%)}.sidebar-expand-btn-right:hover{background:var(--color-primary-container);color:var(--color-primary);width:28px}.main-content{margin-left:var(--sidebar-width-effective,250px);width:calc(100% - var(--sidebar-width-effective,250px));padding:var(--content-padding);background:var(--color-bg);box-sizing:border-box;flex:1;min-height:100vh;overflow-x:hidden}.subscription-expiry-banner{top:var(--space-6);right:var(--space-6);z-index:calc(var(--z-toast) - 1);align-items:flex-start;gap:var(--space-3);width:min(420px,calc(100vw - var(--space-12)));padding:var(--space-4);background:linear-gradient(var(--color-surface),var(--color-surface))padding-box,linear-gradient(135deg,#f59e0b8c,#f9731638,#6366f12e)border-box;border-radius:var(--radius-xl);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);transform-origin:100% 0;border:1px solid #0000;transition:opacity .45s,transform .45s;display:flex;position:fixed;box-shadow:0 18px 40px #0f172a29,inset 0 0 0 1px #ffffff08}.subscription-expiry-banner--fading{opacity:0;pointer-events:none;transform:translateY(-8px)scale(.985)}.subscription-expiry-banner__icon{border-radius:var(--radius-full);color:#f59e0b;background:#f59e0b1f;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.subscription-expiry-banner__content{flex:1;min-width:0}.subscription-expiry-banner__eyebrow{font-size:var(--text-xs);font-weight:var(--font-semibold);letter-spacing:.04em;text-transform:uppercase;color:#f59e0b;margin-bottom:4px}.subscription-expiry-banner__title{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-text);margin-bottom:6px;line-height:1.45}.subscription-expiry-banner__text{font-size:var(--text-sm);color:var(--color-text-secondary);line-height:1.55}.subscription-expiry-banner__actions{align-items:stretch;gap:var(--space-2);flex-direction:column;flex-shrink:0;display:flex}.subscription-expiry-banner__button{color:var(--color-text);border-radius:var(--radius-lg);font-size:var(--text-xs);font-weight:var(--font-medium);white-space:nowrap;cursor:pointer;transition:transform var(--transition-fast),background var(--transition-fast),color var(--transition-fast);background:#f59e0b1f;border:none;padding:10px 12px}.subscription-expiry-banner__button:hover{background:#f59e0b2e;transform:translateY(-1px)}.subscription-expiry-banner__button--ghost{color:var(--color-text-tertiary);background:0 0}.subscription-expiry-banner__button--ghost:hover{background:var(--color-surface-variant);color:var(--color-text-secondary)}.splash-screen{background:var(--color-bg);width:100%;height:100%;z-index:var(--z-splash);justify-content:center;align-items:center;transition:opacity .5s,visibility .5s;display:flex;position:fixed;top:0;left:0}.splash-screen.hidden{opacity:0;visibility:hidden}.splash-content{text-align:center;font-family:var(--font-cinzel);font-feature-settings:"smcp" 1,"c2sc" 1;font-variant-caps:small-caps}.splash-logo{background:linear-gradient(var(--color-surface),var(--color-surface))padding-box,radial-gradient(circle at 50% 10%,var(--btn-gradient-start)0%,var(--btn-gradient-mid)30%,var(--btn-gradient-end)100%)border-box;border-radius:var(--radius-full);width:84px;height:84px;margin:0 auto var(--space-6);color:var(--btn-gradient-mid);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:2px solid #0000;justify-content:center;align-items:center;animation:2.4s ease-in-out infinite pulse-glow;display:flex;transform:perspective(1000px)rotateX(2deg)rotateY(-2deg);box-shadow:0 8px 20px #8b5cf640,0 0 24px #a78bfa2e,inset 0 1px #ffffff1f}.splash-icon{width:auto;height:auto;color:var(--btn-gradient-mid);margin:0 auto var(--space-1);filter:drop-shadow(0 0 12px #a78bfa59);animation:2.2s ease-in-out infinite splash-icon-glow;display:block}.splash-title{font-size:var(--text-4xl);font-weight:var(--font-bold);margin-bottom:var(--space-2);background:radial-gradient(circle at 50% 10%,var(--btn-gradient-start)0%,var(--btn-gradient-mid)30%,var(--btn-gradient-end)100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.splash-subtitle{font-size:var(--text-lg);color:var(--color-text-secondary);margin-bottom:var(--space-8)}.splash-loader{background:var(--color-outline-variant);border-radius:var(--radius-full);width:300px;height:7px;position:relative;overflow:hidden}.loader-bar{background:linear-gradient(90deg,var(--color-primary),var(--color-primary-hover));border-radius:var(--radius-full);width:0%;height:100%;animation:1.5s ease-in-out forwards loader}@keyframes loader{0%{width:0%}50%{width:70%}to{width:100%}}@keyframes pulse-glow{0%,to{filter:brightness();transform:scale(1)}50%{filter:brightness(1.2);transform:scale(1.08)}}@media (max-width:1400px){.sidebar{width:var(--sidebar-width-effective)}.sidebar-header{padding:var(--space-5)}.sidebar-nav{padding:var(--space-2);gap:var(--space-2)}.nav-item{padding:var(--space-3)var(--space-4);font-size:var(--text-sm)}.nav-item svg{width:20px;height:20px}.logo{font-size:var(--text-xl);gap:var(--space-3)}.logo svg{width:28px;height:28px}}@media (max-height:900px){.sidebar-header{padding:var(--space-4)}.sidebar-nav{padding:var(--space-2);gap:var(--space-2)}.nav-item{padding:var(--space-2)var(--space-3)}.sidebar-footer{padding:var(--space-2)}}@media (max-width:1400px){:root{--sidebar-width:260px}}@media (min-width:769px) and (max-width:1024px){.app-container{width:100%;max-width:100%}.main-content{width:100%!important;max-width:100%!important;margin-left:0!important}}@media (max-width:768px){.app-container{touch-action:pan-y;width:100%;max-width:100%}.sidebar{width:var(--mobile-sidebar-width,280px);height:100dvh;z-index:var(--z-modal);box-shadow:var(--shadow-xl);transition:transform .2s ease-out;position:fixed;top:0;left:0;transform:translate(-100%)}.sidebar.open{transform:translate(0)}.sidebar .logo span,.sidebar .nav-item span{display:inline}.main-content{padding:var(--space-4);overflow-x:hidden;width:100%!important;max-width:100%!important;margin-left:0!important}.subscription-expiry-banner{top:calc(var(--space-4) + env(safe-area-inset-top,0px) + 56px);left:var(--space-4);right:var(--space-4);transform-origin:top;flex-direction:column;width:auto}.subscription-expiry-banner__actions{flex-flow:wrap;width:100%}.subscription-expiry-banner__button{white-space:normal;flex:1;min-width:0}}.mobile-menu-btn{top:var(--space-4);left:var(--space-4);z-index:calc(var(--z-sticky) + 1);background:var(--color-surface);border:1px solid var(--color-outline-variant);border-radius:var(--radius-lg);padding:var(--space-3);cursor:pointer;transition:all var(--transition-fast);box-shadow:var(--shadow-sm);justify-content:center;align-items:center;display:none;position:fixed}.mobile-menu-btn:hover{background:var(--color-surface-container);box-shadow:var(--shadow-md)}.mobile-menu-btn svg{color:var(--color-text)}@media (max-width:768px){.mobile-menu-btn{box-shadow:none;padding:var(--space-2);background:0 0;border:none;justify-content:center;align-items:center;width:32px;min-height:32px;display:flex}.mobile-menu-btn:hover{box-shadow:none;background:0 0}.mobile-menu-btn--chevron{top:var(--space-1);width:auto;height:auto;box-shadow:none;padding:var(--space-2);z-index:var(--z-sticky);background:0 0;border:none;justify-content:center;align-items:center;display:flex;position:fixed;left:0;transform:translateY(0)}.mobile-menu-btn--chevron svg{color:var(--color-text-tertiary);width:16px;height:16px}.mobile-menu-btn--chevron:hover{background:0 0}.mobile-menu-btn--chevron:active{background:0 0;transform:scale(.95)}.mobile-menu-btn--hidden{display:none!important}}.sidebar-backdrop{z-index:var(--z-sticky);transition:opacity var(--transition-base)ease-out;animation:fadeIn var(--transition-fast)ease-out;background:#00000080;position:fixed;inset:0}.sidebar-panel{background:var(--color-surface)}@supports (color:color-mix(in lab, red, red)){.sidebar-panel{background:color-mix(in srgb,var(--color-surface)90%,transparent)}}.sidebar-panel{-webkit-backdrop-filter:blur(16px);height:100dvh;z-index:var(--z-sticky);border-right:1px solid var(--color-outline-variant);flex-direction:column;display:flex;position:fixed;top:0;overflow:visible}@supports (color:color-mix(in lab, red, red)){.sidebar-panel{border-right:1px solid color-mix(in srgb,var(--color-outline-variant)50%,transparent)}}.sidebar-panel{transition:width var(--transition-base)}.sidebar-panel--left{border-right:1px solid var(--color-outline-variant);left:0}@supports (color:color-mix(in lab, red, red)){.sidebar-panel--left{border-right:1px solid color-mix(in srgb,var(--color-outline-variant)50%,transparent)}}.sidebar-panel--right{border-left:1px solid var(--color-outline-variant);right:0}@supports (color:color-mix(in lab, red, red)){.sidebar-panel--right{border-left:1px solid color-mix(in srgb,var(--color-outline-variant)50%,transparent)}}.sidebar-panel--right{border-right:none}.sidebar-panel--collapsed{border-left:none;border-right:none;padding:0;overflow:hidden;width:0!important;min-width:0!important}.sidebar-panel--mobile{width:var(--mobile-sidebar-width,280px);box-shadow:var(--shadow-xl);z-index:var(--z-modal);-webkit-overflow-scrolling:touch;transition:none;position:fixed;overflow:hidden auto}.sidebar-panel--mobile .sidebar-resize-handle,.sidebar-panel--mobile .sidebar-resize-handle-right{display:none}@media (max-width:768px){.sidebar-panel.sidebar-panel--mobile.transition-enabled{transition:transform .2s ease-out}}.sidebar-panel--mobile.sidebar-panel--left{transform:translate(-100%)}.sidebar-panel--mobile.sidebar-panel--right{transform:translate(100%)}.sidebar-panel--mobile.sidebar-panel--open{transform:translate(0)}.mobile-sidebar-toggle{z-index:var(--z-sticky);background:var(--color-surface);border:1px solid var(--color-outline-variant);cursor:pointer;width:28px;height:56px;transition:all var(--transition-fast);box-shadow:var(--shadow-md);justify-content:center;align-items:center;display:none;position:fixed;top:50%;transform:translateY(-50%)}.mobile-sidebar-toggle--left{border-radius:0 var(--radius-lg)var(--radius-lg)0;border-left:none;left:0}.mobile-sidebar-toggle--right{border-radius:var(--radius-lg)0 0 var(--radius-lg);border-right:none;right:0}@media (max-width:768px){.mobile-sidebar-toggle--right{top:var(--space-1);box-shadow:none;width:auto;height:auto;padding:var(--space-2);background:0 0;border:none;transform:translateY(0)}.mobile-sidebar-toggle--right:active{background:0 0;transform:scale(.95)}}.mobile-sidebar-toggle:active{background:var(--color-primary-container);transform:translateY(-50%)scale(.95)}.mobile-sidebar-toggle svg{color:var(--color-text-tertiary);width:16px;height:16px}@media (max-width:768px){.mobile-sidebar-toggle{display:flex}.mobile-sidebar-toggle:active{transform:translateY(-50%)scale(.95)}.mobile-sidebar-toggle--right:active{background:0 0;transform:scale(.95)}}@media (hover:none) and (pointer:coarse){button:not(.pagination-dot):not(.nav-page-btn),.btn,.btn-icon,.btn-primary,.btn-secondary,.btn-ghost,a.btn{min-height:var(--touch-target-min);min-width:var(--touch-target-min)}input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea{min-height:var(--touch-target-min)}a[role=button]{min-height:var(--touch-target-min);align-items:center;display:inline-flex}button:hover,.btn:hover,.btn-icon:hover{transform:none}button:active,.btn:active,.btn-icon:active{opacity:.9;transform:scale(.98)}input[type=checkbox],input[type=radio]{cursor:pointer;width:24px;height:24px}*{-webkit-tap-highlight-color:transparent}button,.btn,.btn-icon,a[role=button]{-webkit-user-select:none;user-select:none}.scrollable,[data-scrollable],.overflow-auto,.overflow-y-auto,.overflow-x-auto{-webkit-overflow-scrolling:touch;scroll-behavior:smooth}button,a,input,select,textarea{touch-action:manipulation}}@media (max-width:768px){body{font-size:max(var(--text-base),16px)}.fixed-element,[data-fixed]{max-width:100vw}input:not([type=checkbox]):not([type=radio]),select,textarea{width:100%;max-width:100%}.container,.content-wrapper,main{padding-left:var(--mobile-content-padding);padding-right:var(--mobile-content-padding)}}@media (max-width:480px){.container,.content-wrapper,main{padding-left:var(--space-3);padding-right:var(--space-3)}}@media (max-width:360px){.container,.content-wrapper,main{padding-left:var(--space-2);padding-right:var(--space-2)}h1{font-size:var(--text-2xl)}h2{font-size:var(--text-xl)}h3{font-size:var(--text-lg)}}.test-questions-empty{text-align:center;padding:25vh var(--space-6)var(--space-16);flex-direction:column;justify-content:flex-start;align-items:center;width:100%;max-width:960px;min-height:100%;margin:0 auto;display:flex}.empty-state-content{justify-content:center;width:100%;display:flex}.test-questions-empty .empty-icon{margin-bottom:var(--space-8)}.test-questions-empty .empty-title{font-size:var(--text-3xl);font-weight:var(--font-bold);margin:0 0 var(--space-4)0;color:var(--color-text);line-height:1.2}.test-questions-empty h3.empty-title{margin:0 0 var(--space-4)0;line-height:1.2}.test-questions-empty .empty-description{font-size:var(--text-lg);color:var(--color-text-secondary);margin:0 0 var(--space-8)0;max-width:400px;line-height:1.6}.test-questions-empty-actions{gap:var(--space-4);flex-wrap:wrap;justify-content:center;align-items:stretch;display:flex}.test-questions-empty p{color:var(--color-text-secondary);margin-bottom:var(--space-4)}@media (max-width:768px){.test-questions-empty-actions{align-items:center;gap:var(--space-4);flex-direction:column}.test-questions-empty-actions button{text-align:center;justify-content:center}}.btn{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-3)var(--space-5);font-family:inherit;font-size:var(--text-sm);font-weight:var(--font-semibold);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;border:1px solid #0000;line-height:1;display:inline-flex}.btn svg{width:18px;height:18px}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-primary)}.btn-primary:hover:not(:disabled){background:var(--color-primary-container);border-color:var(--color-primary-hover);box-shadow:0 4px 12px var(--color-primary-container);transform:translateY(-1px)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-outline{color:var(--color-primary);border-color:var(--color-primary);background:0 0}.btn-outline:hover:not(:disabled){background:var(--color-primary-container)}.btn-ghost{color:var(--color-text-secondary);background:0 0;border-color:#0000}.btn-ghost:hover:not(:disabled){background:var(--color-surface-container-high);color:var(--color-text)}.btn-danger:hover:not(:disabled){background:#dc2626;border-color:#dc2626}.btn-danger-outline{color:var(--color-error);border-color:var(--color-error);background:0 0}.btn-danger-outline:hover:not(:disabled){background:var(--color-error-container)}.btn-sm{padding:var(--space-2)var(--space-3);font-size:var(--text-xs)}.btn-sm svg{width:14px;height:14px}.btn-lg{padding:var(--space-4)var(--space-6);font-size:var(--text-base)}.btn-lg svg{width:20px;height:20px}.btn-icon{padding:var(--space-3);border-radius:var(--radius-lg)}.btn-icon.rounded{border-radius:var(--radius-full)}.btn-icon-small{padding:var(--space-2);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);color:var(--color-text-secondary);min-width:38px;min-height:38px;box-shadow:none;background:0 0;border:none;justify-content:center;align-items:center;display:flex}.btn-icon-small:hover{color:var(--color-text);background:0 0;border-color:#0000}.btn-icon-small:disabled{opacity:.5;cursor:not-allowed}.btn-icon-minimal{padding:var(--space-2);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);color:var(--color-text-tertiary);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.btn-icon-minimal:hover:not(:disabled){color:var(--color-text)}.btn-icon-accent{color:var(--color-primary);background:0 0;border:none}.btn-icon-accent:hover:not(:disabled){color:var(--color-primary-hover);background:0 0;border-color:#0000;transform:translateY(-1px)}.btn-icon-magic{box-shadow:none;background:0 0;border:none}.btn-icon-magic svg{stroke:url(#magic-icon-gradient);fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px}.btn-icon-magic:hover:not(:disabled){transform:translateY(-1px)}.btn-icon-magic:hover:not(:disabled) svg{filter:drop-shadow(0 0 8px #6366f180)drop-shadow(0 0 12px #a855f759)drop-shadow(0 0 16px #ec489940)}.ai-icon-magic{stroke:url(#magic-icon-gradient);fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px}.ai-icon-purple{stroke:var(--color-primary,#a855f7);fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;transition:filter .2s}.ai-icon-purple:hover,:hover>.ai-icon-purple{filter:brightness(1.2)drop-shadow(0 0 6px var(--color-primary,#a855f7))}@supports (color:color-mix(in lab, red, red)){.ai-icon-purple:hover,:hover>.ai-icon-purple{filter:brightness(1.2)drop-shadow(0 0 6px color-mix(in srgb,var(--color-primary,#a855f7)50%,transparent))}}.ai-icon-gradient{stroke:#a855f7;fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px}.btn-icon-text{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-3)var(--space-4);border-radius:var(--radius-md);border:1px solid var(--color-outline-variant);background:var(--color-surface-variant);color:var(--color-text);font-size:var(--text-md);font-weight:var(--font-medium);cursor:pointer;transition:all var(--transition-fast);text-align:center;display:inline-flex}.btn-icon-text:hover:not(:disabled){background:var(--color-surface-container-high);border-color:var(--color-outline)}.btn-secondary.btn-icon-text{background:var(--color-surface-variant);color:var(--color-text);border:1px solid var(--color-outline-variant)}.btn-primary.btn-icon-text{background:var(--color-primary);color:var(--color-on-primary);border:1px solid var(--color-primary)}.btn-primary.btn-icon-text:hover:not(:disabled){background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.btn-magic-ai{background:linear-gradient(var(--color-surface),var(--color-surface))padding-box,radial-gradient(circle at 50% 10%,var(--btn-gradient-start)0%,var(--btn-gradient-mid)30%,var(--btn-gradient-end)100%)border-box;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:var(--radius-lg);font-weight:var(--font-semibold);cursor:pointer;padding:calc(var(--space-3) + 1px)var(--space-4);font-size:var(--text-md);justify-content:center;align-items:center;gap:var(--space-2);white-space:nowrap;border:2px solid #0000;transition:all .3s cubic-bezier(.4,0,.2,1);display:inline-flex;position:relative;box-shadow:0 4px 16px #8b5cf638,0 0 20px #a78bfa1f,inset 0 1px #ffffff1a}.btn-magic-ai span{background:radial-gradient(circle at 50% 10%,var(--btn-gradient-start)0%,var(--btn-gradient-mid)30%,var(--btn-gradient-end)100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}[data-theme=light] .btn-magic-ai{color:var(--btn-gradient-mid)}[data-theme=light] .btn-magic-ai span{background:0 0;-webkit-background-clip:initial;background-clip:initial;-webkit-text-fill-color:var(--btn-gradient-mid);color:var(--btn-gradient-mid)}.btn-magic-ai svg{stroke:url(#brand-btn-gradient);fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;flex-shrink:0}.btn-magic-ai svg.ai-icon-purple{stroke:#a855f7;fill:none}.btn-magic-ai svg.ai-icon-magic{stroke:url(#magic-icon-gradient);fill:none}.btn-magic-text{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:none}.btn-magic-text:hover:not(:disabled),.btn-magic-ai.btn-magic-text:hover:not(:disabled){box-shadow:none;transform:none}.btn-magic-ai:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 24px #8b5cf659,0 0 28px #a78bfa40,inset 0 1px #ffffff2e}.btn-magic-ai:hover:not(:disabled) span,.btn-magic-ai:hover:not(:disabled) svg{filter:drop-shadow(0 0 8px #a78bfa99)drop-shadow(0 0 12px #8b5cf666)drop-shadow(0 0 16px #c4b5fd4d)}.btn-magic-ai:active:not(:disabled){transform:translateY(0)}.btn-magic-ai:disabled{opacity:.5;cursor:not-allowed}.btn-magic-primary{border:2px solid var(--color-primary);color:var(--color-primary);background:linear-gradient(135deg,var(--color-primary),var(--color-primary));position:relative}@supports (color:color-mix(in lab, red, red)){.btn-magic-primary{background:linear-gradient(135deg,color-mix(in srgb,var(--color-primary)12%,transparent),color-mix(in srgb,var(--color-primary)5%,transparent))}}.btn-magic-primary{box-shadow:0 4px 16px var(--color-primary),0 0 20px var(--color-primary),inset 0 1px 0 #ffffff1a}@supports (color:color-mix(in lab, red, red)){.btn-magic-primary{box-shadow:0 4px 16px color-mix(in srgb,var(--color-primary)22%,transparent),0 0 20px color-mix(in srgb,var(--color-primary)12%,transparent),inset 0 1px 0 #ffffff1a}}.btn-magic-primary{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:var(--radius-lg);font-weight:var(--font-semibold);cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1)}.btn-magic-primary:hover:not(:disabled){background:linear-gradient(135deg,var(--color-primary),var(--color-primary))}@supports (color:color-mix(in lab, red, red)){.btn-magic-primary:hover:not(:disabled){background:linear-gradient(135deg,color-mix(in srgb,var(--color-primary)20%,transparent),color-mix(in srgb,var(--color-primary)12%,transparent))}}.btn-magic-primary:hover:not(:disabled){border-color:var(--color-primary-hover);box-shadow:0 8px 24px var(--color-primary),0 0 28px var(--color-primary),inset 0 1px 0 #ffffff2e}@supports (color:color-mix(in lab, red, red)){.btn-magic-primary:hover:not(:disabled){box-shadow:0 8px 24px color-mix(in srgb,var(--color-primary)35%,transparent),0 0 28px color-mix(in srgb,var(--color-primary)20%,transparent),inset 0 1px 0 #ffffff2e}}.btn-magic-primary:hover:not(:disabled){transform:translateY(-2px)}.btn-magic-primary:active:not(:disabled){transform:translateY(0)}.btn-magic-secondary{color:#94a3b8;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:var(--radius-lg);font-weight:var(--font-semibold);cursor:pointer;background:linear-gradient(135deg,#64748b1f,#64748b0d);border:2px solid #64748b;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;box-shadow:0 4px 16px #64748b33,0 0 20px #64748b1a,inset 0 1px #ffffff1a}.btn-magic-secondary:hover:not(:disabled){color:#cbd5e1;background:linear-gradient(135deg,#64748b33,#64748b1f);border-color:#94a3b8;transform:translateY(-2px);box-shadow:0 8px 24px #64748b4d,0 0 28px #64748b2e,inset 0 1px #ffffff2e}.btn-magic-secondary:active:not(:disabled){transform:translateY(0)}.btn-magic-cyan{color:#06b6d4;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:var(--radius-lg);font-weight:var(--font-semibold);cursor:pointer;background:linear-gradient(135deg,#06b6d41f,#06b6d40d);border:2px solid #06b6d4;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;box-shadow:0 4px 16px #06b6d438,0 0 20px #06b6d41f,inset 0 1px #ffffff1a}.btn-magic-cyan:hover:not(:disabled){background:linear-gradient(135deg,#06b6d433,#06b6d41f);border-color:#22d3ee;transform:translateY(-2px);box-shadow:0 8px 24px #06b6d459,0 0 28px #06b6d433,inset 0 1px #ffffff2e}.btn-magic-cyan:active:not(:disabled){transform:translateY(0)}.btn-magic-primary.btn-magic-text{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;color:var(--color-primary);background:0 0;border:none}.btn-magic-primary.btn-magic-text:hover:not(:disabled){box-shadow:none;color:var(--color-primary-hover);background:0 0;border:none;transform:none}.btn-magic-primary.btn-magic-text:hover:not(:disabled) svg,.btn-magic-primary.btn-magic-text:hover:not(:disabled) span{filter:drop-shadow(0 0 8px var(--color-primary))drop-shadow(0 0 12px var(--color-primary))}@supports (color:color-mix(in lab, red, red)){.btn-magic-primary.btn-magic-text:hover:not(:disabled) svg,.btn-magic-primary.btn-magic-text:hover:not(:disabled) span{filter:drop-shadow(0 0 8px color-mix(in srgb,var(--color-primary)60%,transparent))drop-shadow(0 0 12px color-mix(in srgb,var(--color-primary)40%,transparent))}}.btn-magic-secondary.btn-magic-text{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;color:var(--color-text-secondary);background:0 0;border:none}.btn-magic-secondary.btn-magic-text:hover:not(:disabled){box-shadow:none;color:var(--color-text);background:0 0;border:none;transform:none}.btn-magic-secondary.btn-magic-text:hover:not(:disabled) svg,.btn-magic-secondary.btn-magic-text:hover:not(:disabled) span{filter:drop-shadow(0 0 6px #64748b66)drop-shadow(0 0 10px #64748b40)}.btn-magic-cyan.btn-magic-text{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;color:#06b6d4;background:0 0;border:none}.btn-magic-cyan.btn-magic-text:hover:not(:disabled){box-shadow:none;color:#22d3ee;background:0 0;border:none;transform:none}.btn-magic-cyan.btn-magic-text:hover:not(:disabled) svg,.btn-magic-cyan.btn-magic-text:hover:not(:disabled) span{filter:drop-shadow(0 0 8px #06b6d499)drop-shadow(0 0 12px #06b6d466)}.btn-ghost-minimal{color:var(--color-text-secondary);padding:var(--space-3)var(--space-4);font-weight:var(--font-medium);cursor:pointer;background:0 0;border:none;transition:color .2s}.btn-ghost-minimal:hover:not(:disabled){color:var(--color-text);background:0 0}.btn-ghost-magic{color:var(--color-text-secondary);padding:var(--space-3)var(--space-4);font-weight:var(--font-medium);cursor:pointer;background:0 0;border:none;transition:all .2s}.btn-ghost-magic:hover:not(:disabled){color:var(--color-text);background:0 0}.btn-ghost-magic:hover:not(:disabled) svg,.btn-ghost-magic:hover:not(:disabled) span{filter:drop-shadow(0 0 4px #64748b4d)}.card{background:var(--color-card);border:1px solid var(--color-card-border);border-radius:var(--radius-lg);padding:var(--space-5);transition:all var(--transition-fast)}.card-hover:hover{border-color:var(--color-primary-container);box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}.card-clickable{cursor:pointer}.card-outline{background:var(--color-surface);border:1px solid var(--color-outline-variant)}.card-outline:hover{border-color:var(--color-primary)}.module-card{background:var(--color-card);border:2px solid var(--color-card-border);border-radius:var(--radius-xl);padding:var(--space-6);cursor:pointer;position:relative;overflow:hidden}.module-card-icon{background:var(--color-primary-container);border-radius:var(--radius-lg);width:56px;height:56px;margin-bottom:var(--space-4);justify-content:center;align-items:center;display:flex}.module-card-icon svg{width:28px;height:28px;color:var(--color-primary)}.module-card-title{font-size:var(--text-xl);font-weight:var(--font-semibold);margin-bottom:var(--space-2)}.module-card-description{font-size:var(--text-sm);color:var(--color-text-secondary);margin-bottom:var(--space-4)}.module-card-stats{gap:var(--space-4);display:flex}.module-stat{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--color-text-tertiary);display:flex}.module-stat svg{width:16px;height:16px}.deck-card{align-items:center;gap:var(--space-4);padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-outline-variant);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast);display:flex}.deck-card:hover{border-color:var(--color-primary);background:var(--color-primary-container)}.deck-color-bar{border-radius:var(--radius-sm);flex-shrink:0;width:4px;height:48px}.deck-info{flex:1;min-width:0}.deck-name{font-size:var(--text-base);font-weight:var(--font-medium);color:var(--color-text);margin-bottom:var(--space-1);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.deck-stats{gap:var(--space-4);font-size:var(--text-sm);display:flex}.deck-stat{align-items:center;gap:var(--space-1);display:flex}.deck-stat-value{font-weight:var(--font-medium)}.deck-stat-label{color:var(--color-text-tertiary)}.deck-chevron{color:var(--color-text-tertiary);opacity:.5}.deck-chevron svg{width:20px;height:20px}.flashcard{aspect-ratio:3/2;perspective:1000px;cursor:pointer;width:100%;max-width:600px;margin:0 auto}.flashcard.flipped .flashcard-inner{transform:rotateY(180deg)}.flashcard-front,.flashcard-back{backface-visibility:hidden;background:var(--color-card);border:1px solid var(--color-card-border);border-radius:var(--radius-xl);width:100%;height:100%;padding:var(--space-8);text-align:center;box-shadow:var(--shadow-lg);flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute}.flashcard-back{background:var(--color-surface-container);transform:rotateY(180deg)}.flashcard-label{top:var(--space-4);left:var(--space-4);font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.5px;position:absolute}.flashcard-content{font-size:var(--text-xl);line-height:1.5}.flashcard-hint{bottom:var(--space-4);font-size:var(--text-sm);color:var(--color-text-tertiary);position:absolute}.rating-buttons{gap:var(--space-3);grid-template-columns:repeat(4,1fr);max-width:500px;margin:0 auto;display:grid}.rating-btn{align-items:center;gap:var(--space-1);padding:var(--space-3)var(--space-2);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast);color:#fff;font-weight:var(--font-medium);border:none;flex-direction:column;display:flex}.rating-btn:hover{transform:scale(1.05)}.rating-btn:active{transform:scale(.98)}.rating-btn.again{background:var(--color-again)}.rating-btn.hard{background:var(--color-hard)}.rating-btn.good{background:var(--color-good)}.rating-btn.easy{background:var(--color-easy)}.rating-btn-label{font-size:var(--text-sm)}.rating-btn-interval{font-size:var(--text-xs);opacity:.8}.input-group{margin-bottom:var(--space-4)}.input-with-icon{position:relative}.input-with-icon input{padding-right:var(--space-10)}.input-toggle{right:var(--space-2);padding:var(--space-2);color:var(--color-text-tertiary);cursor:pointer;border-radius:var(--radius-md);transition:color var(--transition-fast);background:0 0;border:none;position:absolute;top:50%;transform:translateY(-50%)}.input-toggle:hover{color:var(--color-text)}.input-toggle svg{width:18px;height:18px}.radio-group,.checkbox-group{gap:var(--space-2);flex-direction:column;display:flex}.radio-option,.checkbox-option{align-items:center;gap:var(--space-3);padding:var(--space-4)var(--space-5);background:var(--color-surface);border:1px solid var(--color-outline-variant);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast);text-align:left;display:flex}.radio-option:hover,.checkbox-option:hover{border-color:var(--color-primary);background:var(--color-primary-container);transform:translateY(-2px);box-shadow:0 4px 12px #0000000d}.radio-option.selected,.checkbox-option.selected{border-color:var(--color-primary);background:var(--color-primary-container);box-shadow:0 2px 8px #00000014}.radio-circle{border:2px solid var(--color-outline);width:20px;min-width:20px;height:20px;min-height:20px;transition:all var(--transition-fast);box-sizing:border-box;border-radius:50%;flex-shrink:0;margin:0;padding:0;display:block;position:relative}.radio-option.selected .radio-circle{border-color:var(--color-primary);background:var(--color-surface)}.radio-option.selected .radio-circle:after{content:"";background:var(--color-primary);box-sizing:border-box;border-radius:50%;width:10px;height:10px;margin:0;padding:0;display:block;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.checkbox-box{border:2px solid var(--color-outline);border-radius:var(--radius-sm);width:24px;min-width:24px;height:24px;transition:all var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;margin-top:2px;display:flex}.checkbox-option.selected .checkbox-box{border-color:var(--color-primary);background:var(--color-primary)}.checkbox-option.selected .checkbox-box svg{width:14px;height:14px;color:var(--color-on-primary)}.option-content{flex:1;min-width:0}.option-label{font-weight:var(--font-semibold);font-size:var(--text-base);color:var(--color-text);margin-bottom:var(--space-1);line-height:1.4}.option-description{font-size:var(--text-sm);color:var(--color-text-secondary);line-height:1.5}.slider-container{padding:var(--space-2)0}.slider-input{appearance:none;background:var(--color-outline-variant);border-radius:var(--radius-full);outline:none;width:100%;height:6px}.slider-input::-webkit-slider-thumb{appearance:none;background:var(--color-primary);border-radius:var(--radius-full);cursor:pointer;width:20px;height:20px;transition:transform var(--transition-fast)}.slider-input::-webkit-slider-thumb:hover{transform:scale(1.1)}.slider-input::-moz-range-thumb{background:var(--color-primary);border-radius:var(--radius-full);cursor:pointer;border:none;width:20px;height:20px}.slider-labels{margin-top:var(--space-2);font-size:var(--text-sm);color:var(--color-text-tertiary);justify-content:space-between;display:flex}.slider-value{text-align:center;font-weight:var(--font-semibold);color:var(--color-primary);margin-top:var(--space-2)}.badge{align-items:center;gap:var(--space-1);padding:var(--space-1)var(--space-2);font-size:var(--text-xs);font-weight:var(--font-medium);border-radius:var(--radius-full);background:var(--color-primary-container);color:var(--color-primary);display:inline-flex}.badge-success{background:var(--color-success-container);color:var(--color-success)}.badge-warning{background:var(--color-warning-container);color:var(--color-warning)}.badge-error{background:var(--color-error-container);color:var(--color-error)}.icon-3d-effect{border:2px solid var(--color-primary);border-radius:var(--radius-full);width:100px;height:100px;margin-bottom:var(--space-6);color:var(--color-primary);box-shadow:0 4px 16px var(--color-primary),0 0 20px var(--color-primary),inset 0 1px 0 #ffffff1a;background:0 0;justify-content:center;align-items:center;display:flex;position:relative;transform:perspective(1000px)rotateX(2deg)rotateY(-2deg)}@supports (color:color-mix(in lab, red, red)){.icon-3d-effect{box-shadow:0 4px 16px color-mix(in srgb,var(--color-primary)22%,transparent),0 0 20px color-mix(in srgb,var(--color-primary)12%,transparent),inset 0 1px 0 #ffffff1a}}.icon-3d-effect{transition:transform .3s cubic-bezier(.4,0,.2,1),background .3s cubic-bezier(.4,0,.2,1),border-color .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1)}.icon-3d-effect:hover{border-color:var(--color-primary-hover);box-shadow:0 8px 24px var(--color-primary),0 0 28px var(--color-primary),inset 0 1px 0 #ffffff2e;background:0 0;transform:perspective(1000px)rotateX(0)rotateY(0)scale(1.03)}@supports (color:color-mix(in lab, red, red)){.icon-3d-effect:hover{box-shadow:0 8px 24px color-mix(in srgb,var(--color-primary)35%,transparent),0 0 28px color-mix(in srgb,var(--color-primary)20%,transparent),inset 0 1px 0 #ffffff2e}}.icon-3d-effect svg{width:50px;max-width:50px;height:50px;max-height:50px;filter:drop-shadow(0 2px 4px var(--color-primary));flex-shrink:0}@supports (color:color-mix(in lab, red, red)){.icon-3d-effect svg{filter:drop-shadow(0 2px 4px color-mix(in srgb,var(--color-primary)30%,transparent))}}.btn-empty-state{--empty-state-btn-font-size:var(--text-base);--empty-state-btn-gap:.4375rem;padding:var(--space-4);box-sizing:border-box;justify-content:center;align-items:center;gap:var(--empty-state-btn-gap);text-align:center;white-space:nowrap;flex-wrap:nowrap;width:200px;min-width:200px;max-width:200px;line-height:1.1;display:inline-flex;font-size:var(--empty-state-btn-font-size)!important;border:2px solid var(--color-primary)!important;background:0 0!important}[data-main-font=Cinzel] .btn-empty-state,[data-main-font=Cinzel] .btn-empty-state span{--empty-state-btn-font-size:.95rem;font-feature-settings:"smcp" 1,"c2sc" 1;letter-spacing:.015em;padding:.35rem .15rem;font-variant-caps:small-caps}.btn-empty-state svg{flex:none;width:18px;height:18px}.btn-empty-state span{min-width:0;line-height:inherit}.btn-primary.btn-empty-state{border:2px solid var(--color-primary);color:var(--color-primary);box-shadow:0 4px 16px var(--color-primary),0 0 20px var(--color-primary),inset 0 1px 0 #ffffff1a;background:0 0;position:relative}@supports (color:color-mix(in lab, red, red)){.btn-primary.btn-empty-state{box-shadow:0 4px 16px color-mix(in srgb,var(--color-primary)22%,transparent),0 0 20px color-mix(in srgb,var(--color-primary)12%,transparent),inset 0 1px 0 #ffffff1a}}.btn-primary.btn-empty-state{border-radius:var(--radius-lg);font-weight:var(--font-semibold);cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1)}.btn-primary.btn-empty-state:hover:not(:disabled){border-color:var(--color-primary-hover);box-shadow:0 8px 24px var(--color-primary),0 0 28px var(--color-primary),inset 0 1px 0 #ffffff2e;background:0 0}@supports (color:color-mix(in lab, red, red)){.btn-primary.btn-empty-state:hover:not(:disabled){box-shadow:0 8px 24px color-mix(in srgb,var(--color-primary)35%,transparent),0 0 28px color-mix(in srgb,var(--color-primary)20%,transparent),inset 0 1px 0 #ffffff2e}}.btn-primary.btn-empty-state:hover:not(:disabled){transform:translateY(-2px)}.btn-primary.btn-empty-state:active:not(:disabled){transform:translateY(0)}.btn-magic-primary.btn-empty-state{justify-content:center;align-items:center;gap:var(--empty-state-btn-gap);padding:var(--space-3)var(--space-4);display:inline-flex}.btn-magic-ai.btn-empty-state{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#0000;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 16px #8b5cf638,0 0 20px #a78bfa1f,inset 0 1px #ffffff1a;background:linear-gradient(var(--color-surface),var(--color-surface))padding-box,radial-gradient(circle at 50% 10%,var(--btn-gradient-start)0%,var(--btn-gradient-mid)30%,var(--btn-gradient-end)100%)border-box!important;border:2px solid #0000!important}.btn-magic-ai.btn-empty-state span{background:radial-gradient(circle at 50% 10%,var(--btn-gradient-start)0%,var(--btn-gradient-mid)30%,var(--btn-gradient-end)100%)!important;-webkit-text-fill-color:transparent!important;-webkit-background-clip:text!important;background-clip:text!important}.btn-magic-ai.btn-empty-state svg{stroke:url(#brand-btn-gradient)!important;color:#0000!important;fill:none!important}.btn-magic-ai.btn-empty-state svg.ai-icon-magic{stroke:url(#magic-icon-gradient)!important}.btn-magic-ai.btn-empty-state:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 24px #8b5cf659,0 0 28px #a78bfa40,inset 0 1px #ffffff2e}.btn-magic-ai.btn-empty-state:hover:not(:disabled) span,.btn-magic-ai.btn-empty-state:hover:not(:disabled) svg{filter:drop-shadow(0 0 8px #a78bfa99)drop-shadow(0 0 12px #8b5cf666)drop-shadow(0 0 16px #c4b5fd4d)!important}.empty-state{padding:var(--space-16);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.empty-state-icon{width:80px;height:80px;color:var(--color-outline);margin-bottom:var(--space-6)}.empty-state-title{font-size:var(--text-xl);font-weight:var(--font-semibold);margin-bottom:var(--space-2)}.empty-state-description{color:var(--color-text-secondary);margin-bottom:var(--space-6);max-width:400px}.empty-state-tabs{gap:var(--space-4);margin-bottom:var(--space-6);background:0 0;border-radius:0;width:fit-content;margin-left:auto;margin-right:auto;padding:0;display:flex;position:relative}.empty-state-tabs:after{content:"";background:linear-gradient(90deg,transparent 0%,var(--color-primary-container-hover)10%,var(--color-primary)50%,var(--color-primary-container-hover)90%,transparent 100%);height:1.5px;box-shadow:0 0 10px var(--color-primary-container-hover),0 0 18px var(--color-primary-container);z-index:1;position:absolute;bottom:0;left:-20px;right:-20px}.empty-state-tab{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-3)var(--space-4);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);z-index:2;white-space:nowrap;background:0 0;border:none;border-radius:0;display:flex;position:relative}.empty-state-tab span{white-space:nowrap}.empty-state-tab:hover:not(.active){color:var(--color-text)}.empty-state-tab.active{color:var(--color-primary);box-shadow:none;background:0 0}@media (max-width:768px){.empty-state-tabs{gap:var(--space-3)}.empty-state-tab{padding:var(--space-3)var(--space-3);gap:6px;font-size:clamp(11px,3.2vw,13px)}.empty-state-tab svg{flex-shrink:0;width:14px;height:14px}}@media (max-width:430px){.empty-state-tab svg{display:none}.empty-state-tab{gap:0}}.error-page,.loading-page{justify-content:center;align-items:center;gap:var(--space-4);min-height:60vh;padding:var(--space-8);text-align:center;color:var(--color-on-surface);flex-direction:column;display:flex}.error-content{align-items:center;gap:var(--space-4);flex-direction:column;max-width:400px;display:flex}.error-content h2{margin:0;font-size:1.25rem;font-weight:600}.error-content p{color:var(--color-on-surface-variant);margin:0;font-size:.9rem}.error-retry-btn{padding:var(--space-2)var(--space-6);border-radius:var(--radius-md);background:var(--color-primary);color:var(--color-on-primary,#fff);cursor:pointer;border:none;font-size:.9rem;font-weight:500;transition:opacity .15s}.error-retry-btn:hover{opacity:.85}.loading-page p{color:var(--color-on-surface-variant);margin:0;font-size:.9rem}.loading-spinner{border:3px solid var(--color-outline-variant);border-top-color:var(--color-primary);border-radius:var(--radius-full);width:40px;height:40px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.loading-dots{gap:var(--space-2);display:flex}.loading-dot{background:var(--color-primary);border-radius:var(--radius-full);width:8px;height:8px;animation:1.4s infinite bounce}.loading-dot:nth-child(2){animation-delay:.2s}.loading-dot:nth-child(3){animation-delay:.4s}@keyframes bounce{0%,to{animation-timing-function:cubic-bezier(.8,0,1,1);transform:translateY(-25%)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:none}}.tabs{gap:var(--space-1);background:var(--color-surface-container);padding:var(--space-1);border-radius:var(--radius-lg);display:flex}.tab{padding:var(--space-3)var(--space-4);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;flex:1}.tab:hover{color:var(--color-text)}.tab.active{background:var(--color-card);color:var(--color-primary);box-shadow:var(--shadow-sm)}.divider{background:var(--color-outline-variant);height:1px;margin:var(--space-4)0}.divider-vertical{background:var(--color-outline-variant);width:1px;height:100%}[data-tooltip]{--tooltip-delay:.5s;position:relative}[data-tooltip][data-tooltip-delay]{--tooltip-delay:attr(data-tooltip-delay ms,.5s)}[data-tooltip][data-tooltip-bg]:after{background:var(--color-surface-variant);border-radius:4px;padding:4px 8px}[data-tooltip]:after{content:attr(data-tooltip);color:var(--color-text);font-size:var(--text-xs);font-weight:var(--font-bold);white-space:nowrap;opacity:0;visibility:hidden;transition:all var(--transition-fast);pointer-events:none;z-index:10000;text-shadow:0 1px 2px #0000001a,0 0 10px var(--color-bg);background:0 0;padding:0;transition-delay:0s;position:absolute;transform:scale(.9)}[data-tooltip]:before{display:none!important}[data-tooltip]:hover:after,[data-tooltip]:focus-visible:after{opacity:1;visibility:visible;transition-delay:var(--tooltip-delay,1s);transform:scale(1)}[data-tooltip]:after{transition-delay:0s}[data-tooltip]:not([data-tooltip-pos]):after,[data-tooltip][data-tooltip-pos=top]:after{bottom:calc(100% + 5px);left:50%;transform:translate(-50%)scale(.9)}[data-tooltip]:not([data-tooltip-pos]):hover:after,[data-tooltip][data-tooltip-pos=top]:hover:after,[data-tooltip]:not([data-tooltip-pos]):focus-visible:after,[data-tooltip][data-tooltip-pos=top]:focus-visible:after{transform:translate(-50%)scale(1)}[data-tooltip][data-tooltip-pos=bottom]:after{top:calc(100% + 5px);left:50%;transform:translate(-50%)scale(.9)}[data-tooltip][data-tooltip-pos=bottom]:hover:after,[data-tooltip][data-tooltip-pos=bottom]:focus-visible:after{transform:translate(-50%)scale(1)}[data-tooltip][data-tooltip-pos=left]:after{top:50%;right:calc(100% + 5px);transform:translateY(-50%)scale(.9)}[data-tooltip][data-tooltip-pos=left]:hover:after,[data-tooltip][data-tooltip-pos=left]:focus-visible:after{transform:translateY(-50%)scale(1)}[data-tooltip][data-tooltip-pos=right]:after{top:50%;left:calc(100% + 5px);transform:translateY(-50%)scale(.9)}[data-tooltip][data-tooltip-pos=right]:hover:after,[data-tooltip][data-tooltip-pos=right]:focus-visible:after{transform:translateY(-50%)scale(1)}[data-tooltip][data-tooltip-pos=right-bottom]:after{top:calc(100% + 7px);left:calc(25% + 7px);transform:scale(.9)}[data-tooltip][data-tooltip-pos=right-bottom]:hover:after,[data-tooltip][data-tooltip-pos=right-bottom]:focus-visible:after{transform:scale(1)}[data-tooltip][data-tooltip-pos=right-top]:after{bottom:calc(100% + 7px);left:calc(25% + 7px);transform:scale(.9)}[data-tooltip][data-tooltip-pos=right-top]:hover:after,[data-tooltip][data-tooltip-pos=right-top]:focus-visible:after{transform:scale(1)}[data-tooltip][data-tooltip-pos=left-bottom]:after{top:calc(100% + 7px);right:calc(25% + 7px);transform:scale(.9)}[data-tooltip][data-tooltip-pos=left-bottom]:hover:after,[data-tooltip][data-tooltip-pos=left-bottom]:focus-visible:after{transform:scale(1)}[data-tooltip][data-tooltip-pos=left-top]:after{bottom:calc(100% + 7px);right:calc(25% + 7px);transform:scale(.9)}[data-tooltip][data-tooltip-pos=left-top]:hover:after,[data-tooltip][data-tooltip-pos=left-top]:focus-visible:after{transform:scale(1)}.source-type-tabs{gap:var(--space-1);background:var(--color-surface-container);padding:var(--space-1);border-radius:var(--radius-lg);margin-bottom:var(--space-4);display:flex}.source-type-tab{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-3)var(--space-4);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text-secondary);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;flex:1;display:flex}.source-type-tab:hover:not(.active){background:var(--color-surface-container-high);color:var(--color-text)}.source-type-tab.active{background:var(--color-surface);color:var(--color-primary);box-shadow:0 2px 8px #00000014}.source-type-tab svg{width:16px;height:16px}@media (max-width:480px){.source-type-tabs{gap:0}.source-type-tab{padding:var(--space-2)var(--space-2);font-size:var(--text-xs);gap:var(--space-1)}.source-type-tab svg{width:14px;height:14px}.source-type-tab span{white-space:nowrap}}.note-selector{width:100%;position:relative}.note-selector-trigger{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3)var(--space-4);background:var(--color-surface);border:1px solid var(--color-outline-variant);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);font-size:var(--text-sm);text-align:left;display:flex}.note-selector-trigger:hover{border-color:var(--color-outline);background:var(--color-surface-container)}.note-selector-trigger.active{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-container)}.note-selector-trigger.has-value{background:var(--color-primary-container);border-color:var(--color-primary-container)}.note-selector-placeholder{align-items:center;gap:var(--space-3);color:var(--color-text-tertiary);flex:1;display:flex}.note-selector-value{align-items:center;gap:var(--space-3);flex:1;min-width:0;display:flex}.note-selector-icon{color:var(--color-text-tertiary);flex-shrink:0}.note-selector-trigger.has-value .note-selector-icon{color:var(--color-primary)}.note-selector-title{text-overflow:ellipsis;white-space:nowrap;color:var(--color-text);flex:1;overflow:hidden}.note-selector-chevron{color:var(--color-text-tertiary);transition:transform var(--transition-fast);flex-shrink:0}.note-selector-trigger.active .note-selector-chevron{transform:rotate(180deg)}.note-selector-clear{background:var(--color-surface-container);border-radius:var(--radius-full);width:20px;height:20px;color:var(--color-text-tertiary);cursor:pointer;transition:all var(--transition-fast);border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.note-selector-clear:hover{background:var(--color-error-container);color:var(--color-error)}.note-selector-dropdown{top:calc(100% + var(--space-2));background:var(--color-surface);border:1px solid var(--color-outline-variant);border-radius:var(--radius-lg);z-index:100;animation:.2s ease-out noteDropdownIn;position:absolute;left:0;right:0;overflow:hidden;box-shadow:0 12px 32px #00000026}@keyframes noteDropdownIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.note-selector-search{align-items:center;gap:var(--space-3);padding:var(--space-3)var(--space-4);border-bottom:1px solid var(--color-outline-variant);background:var(--color-surface-container);display:flex}.note-selector-search svg{color:var(--color-text-tertiary);flex-shrink:0}.note-selector-search-input{font-size:var(--text-sm);color:var(--color-text);background:0 0;border:none;outline:none;flex:1}.note-selector-search-input::placeholder{color:var(--color-text-tertiary)}.note-selector-search-clear{border-radius:var(--radius-full);width:20px;height:20px;color:var(--color-text-tertiary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.note-selector-search-clear:hover{background:var(--color-surface-container-high);color:var(--color-text)}.note-selector-list{max-height:300px;padding:var(--space-2);overflow-y:auto}.note-selector-list::-webkit-scrollbar{width:6px}.note-selector-list::-webkit-scrollbar-track{background:0 0}.note-selector-list::-webkit-scrollbar-thumb{background:var(--color-outline-variant);border-radius:var(--radius-full)}.note-selector-empty{padding:var(--space-8)var(--space-4);color:var(--color-text-tertiary);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.note-selector-empty svg{margin-bottom:var(--space-3);opacity:.5}.note-selector-empty span{font-weight:var(--font-medium);margin-bottom:var(--space-1)}.note-selector-empty p{font-size:var(--text-sm);opacity:.7}.note-selector-item{align-items:flex-start;gap:var(--space-3);width:100%;padding:var(--space-3)var(--space-4);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);text-align:left;background:0 0;border:none;display:flex}.note-selector-item:hover{background:var(--color-surface-container)}.note-selector-item.selected{background:var(--color-primary-container)}.note-selector-item-icon{background:var(--color-surface-container);border-radius:var(--radius-md);width:36px;height:36px;color:var(--color-text-tertiary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.note-selector-item.selected .note-selector-item-icon{background:var(--color-primary);color:var(--color-on-primary)}.note-selector-item-content{flex:1;min-width:0}.note-selector-item-header{align-items:center;gap:var(--space-2);margin-bottom:var(--space-1);display:flex}.note-selector-item-title{font-weight:var(--font-medium);color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.note-selector-item-folder{align-items:center;gap:var(--space-1);padding:2px var(--space-2);font-size:var(--text-xs);color:var(--color-text-tertiary);background:var(--color-surface-container-high);border-radius:var(--radius-sm);flex-shrink:0;display:inline-flex}.note-selector-item-preview{font-size:var(--text-xs);color:var(--color-text-tertiary);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.note-selector-item-check{color:var(--color-primary);margin-top:var(--space-2);flex-shrink:0;justify-content:center;align-items:center;display:flex}.source-text-container{position:relative}.source-text-area{width:100%;min-height:150px;max-height:250px;padding:var(--space-4);font-size:var(--text-sm);color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-outline-variant);border-radius:var(--radius-md);resize:vertical;transition:all var(--transition-fast);font-family:inherit;line-height:1.6}.source-text-area:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-container);outline:none}.source-text-area::placeholder{color:var(--color-text-tertiary)}@media (max-width:480px){.source-text-area{min-height:100px;max-height:150px;padding:var(--space-3);font-size:var(--text-xs)}}.source-text-hint{margin-top:var(--space-2);font-size:var(--text-xs);color:var(--color-text-tertiary);justify-content:space-between;align-items:center;display:flex}.source-text-count{font-variant-numeric:tabular-nums}.bug-report-fab{bottom:var(--space-5);left:calc(var(--space-5) + var(--sidebar-width-effective,0px));z-index:900;border-radius:var(--radius-full);border:1px solid var(--color-outline-variant);background:var(--color-surface-container);width:40px;height:40px;color:var(--color-text-tertiary);cursor:pointer;transition:all var(--transition-fast);opacity:.6;justify-content:center;align-items:center;display:flex;position:fixed;box-shadow:0 2px 8px #0000001a}.bug-report-fab:hover{opacity:1;color:var(--color-primary);border-color:var(--color-primary-container);background:var(--color-surface-container-high);transform:translateY(-2px);box-shadow:0 4px 16px #00000026}.bug-report-fab:active{opacity:1;transform:translateY(0)}.bug-report-form{gap:var(--space-4);flex-direction:column;display:flex}.bug-report-page-badge{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-3);font-size:var(--text-xs);color:var(--color-text-secondary);background:var(--color-surface-container);border-radius:var(--radius-md);border:1px solid var(--color-outline-variant);width:fit-content;display:inline-flex}.bug-report-page-badge strong{color:var(--color-text);font-weight:var(--font-semibold)}.bug-report-field{gap:var(--space-2);flex-direction:column;display:flex}.bug-report-label{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text)}.bug-report-required{color:var(--color-error)}.bug-report-optional{font-weight:var(--font-normal);color:var(--color-text-tertiary);font-size:var(--text-xs)}.bug-report-input,.bug-report-textarea{width:100%;padding:var(--space-3);font-family:inherit;font-size:var(--text-sm);color:var(--color-text);background:var(--color-surface-container);border:1px solid var(--color-outline-variant);border-radius:var(--radius-md);transition:all var(--transition-fast);outline:none}.bug-report-input:focus,.bug-report-textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-container)}.bug-report-input::placeholder,.bug-report-textarea::placeholder{color:var(--color-text-tertiary)}.bug-report-input:disabled,.bug-report-textarea:disabled{opacity:.6;cursor:not-allowed}.bug-report-textarea{resize:vertical;min-height:80px;max-height:200px}.bug-report-spinner{animation:1s linear infinite spin}@media (max-width:480px){.bug-report-fab{bottom:var(--space-4);left:var(--space-4);width:36px;height:36px}.bug-report-fab svg{width:16px;height:16px}}.modal{width:100%;height:100%;z-index:var(--z-modal);pointer-events:none;justify-content:center;align-items:center;display:flex;position:fixed;top:0;left:0}.modal.active{pointer-events:auto}.modal-backdrop{background:var(--modal-backdrop);-webkit-backdrop-filter:blur(8px);cursor:pointer;z-index:0;width:100%;height:100%;position:absolute;top:0;left:0}.modal-container{z-index:1;background:var(--color-surface);background-image:linear-gradient(var(--color-surface),var(--color-surface)),linear-gradient(135deg,var(--color-primary)0%,transparent 30%,transparent 70%,var(--color-primary)100%);border-radius:var(--radius-xl);width:90%;max-width:500px;max-height:90vh;box-shadow:var(--shadow-modal),0 0 0 1px var(--color-primary-container),0 0 12px var(--color-primary-container),0 0 24px var(--color-primary-container);transition:transform var(--transition-spring),box-shadow var(--transition-base);pointer-events:auto;background-origin:border-box;background-clip:padding-box,border-box;border:2px solid #0000;flex-direction:column;min-height:0;display:flex;position:relative;overflow:hidden;transform:translateY(20px)scale(.95)translateZ(0)}.modal.active .modal-container{box-shadow:var(--shadow-modal),0 0 0 1px var(--color-primary-container-hover),0 0 16px var(--color-primary-container-hover),0 0 32px var(--color-primary-container);transform:translateY(0)scale(1)}.modal-small .modal-container,.modal-container.modal-small{max-width:380px}.modal-large .modal-container,.modal-container.modal-large{max-width:700px}.modal-container:not(.modal-small):not(.modal-large){max-height:90vh}.modal-header{padding:var(--space-5)var(--space-6);padding-top:var(--space-8);padding-bottom:var(--space-6);flex-grow:0;flex-shrink:0;justify-content:space-between;align-items:center;display:flex;position:relative}.modal-header:after{content:"";background:linear-gradient(90deg,transparent 0%,var(--color-primary-container-hover)10%,var(--color-primary)50%,var(--color-primary-container-hover)90%,transparent 100%);border-radius:var(--radius-full);width:85%;height:1.5px;box-shadow:0 0 12px var(--color-primary-container-hover),0 0 20px var(--color-primary-container);position:absolute;bottom:0;left:50%;transform:translate(-50%)}.modal-header:before{content:"";background:linear-gradient(90deg,transparent 0%,var(--color-primary-container)10%,var(--color-primary-container-hover)50%,var(--color-primary-container)90%,transparent 100%);border-radius:var(--radius-full);filter:blur(8px);z-index:-1;width:85%;height:12px;position:absolute;bottom:-5px;left:50%;transform:translate(-50%)}.modal-title{align-items:center;gap:var(--space-3);font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--color-text);display:flex}.modal-title svg{width:24px;height:24px;color:var(--color-primary)}.modal-close{top:var(--space-4);right:var(--space-4);z-index:10;border-radius:var(--radius-full);width:36px;height:36px;color:var(--color-text-tertiary);cursor:pointer;background:0 0;border:2px solid #0000;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex;position:absolute}.modal-close:hover,.modal-close:active{color:var(--color-error);box-shadow:none;background:0 0;border-color:#0000;transform:none}.modal-close svg{width:20px;height:20px}.modal-body{padding:var(--space-6);padding-top:calc(var(--space-6));-webkit-overflow-scrolling:touch;flex:auto;min-height:0;max-height:calc(90vh - 180px);position:relative;overflow:hidden auto}.modal-body::-webkit-scrollbar{width:8px}.modal-body::-webkit-scrollbar-track{background:0 0}.modal-body::-webkit-scrollbar-thumb{background:var(--color-outline-variant);border-radius:var(--radius-full)}.modal-body::-webkit-scrollbar-thumb:hover{background:var(--color-outline)}.modal-description{color:var(--color-text-secondary);margin-bottom:var(--space-5)}.modal-form-group{margin-bottom:0}.modal-label{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--color-text);margin-top:var(--space-4);margin-bottom:var(--space-5);display:block}.modal-form-group:first-child .modal-label{margin-top:0}.modal-input,.modal-textarea{width:100%;padding:var(--space-3)var(--space-4);background:var(--color-surface-variant);border:2px solid var(--color-outline-variant);border-radius:var(--radius-lg);color:var(--color-text);font-size:var(--text-base);font-family:var(--font-sans);transition:all var(--transition-fast)}.modal-input:focus,.modal-textarea:focus{border-color:var(--color-primary);background:var(--color-surface);box-shadow:0 0 0 3px var(--color-primary-container);outline:none}.modal-input::placeholder,.modal-textarea::placeholder{color:var(--color-text-tertiary)}.modal-textarea{resize:vertical;min-height:80px}.size-options-grid{gap:var(--space-3);grid-template-columns:repeat(3,1fr);display:grid}.size-option-btn{padding:var(--space-4);background:var(--color-surface);border:2px solid var(--color-outline-variant);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast);text-align:center;min-width:0;overflow:hidden}.size-option-btn:hover:not(:disabled){border-color:var(--color-primary);background:var(--color-primary-container);transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.size-option-btn.active{border-color:var(--color-primary);background:var(--color-primary-container);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb),.1)}.size-option-btn:disabled{opacity:.5;cursor:not-allowed}.size-option-title{font-weight:var(--font-semibold);color:var(--color-text);margin-bottom:var(--space-1);font-size:var(--text-base)}.size-option-desc{font-size:var(--text-sm);color:var(--color-text-tertiary)}@media (max-width:480px){.size-options-grid{gap:var(--space-2)}.size-option-btn{padding:var(--space-3)var(--space-2)}.size-option-title{font-size:var(--text-xs);margin-bottom:0}.size-option-desc{display:none}}.model-tier-selector{gap:var(--space-2);display:flex}.model-tier-btn{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-3)var(--space-4);background:var(--color-surface);border:2px solid var(--color-outline-variant);border-radius:var(--radius-lg);color:var(--color-text-secondary);font-size:var(--text-sm);font-weight:var(--font-medium);cursor:pointer;flex:1;transition:all .2s;display:flex}.model-tier-btn:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.model-tier-btn.active{border-color:var(--color-primary);background:var(--color-primary-container);color:var(--color-primary)}.model-tier-btn:disabled{opacity:.5;cursor:not-allowed}.model-tier-btn-locked{opacity:.4;cursor:not-allowed}.model-tier-btn-locked:hover{border-color:var(--color-outline-variant);color:var(--color-text-secondary)}.modal-label-row{margin-bottom:var(--space-2);justify-content:space-between;align-items:center;display:flex}.material-attach-wrapper{position:relative}.material-attach-btn{color:var(--color-text-tertiary);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;justify-content:center;align-items:center;padding:4px;transition:color .2s;display:inline-flex}.material-attach-btn:hover:not(:disabled){color:var(--color-primary)}.material-attach-btn:disabled{opacity:.4;cursor:not-allowed}.material-picker-dropdown{z-index:100;background:var(--color-surface-container);border:1px solid var(--color-outline-variant);border-radius:var(--radius-lg);min-width:260px;max-width:360px;padding:var(--space-3);animation:.15s ease-out fadeIn;position:absolute;top:calc(100% + 4px);right:0;box-shadow:0 8px 24px #00000026}.material-picker-title{font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-2);padding:0 var(--space-2)}.material-picker-list{flex-direction:column;gap:2px;max-height:200px;display:flex;overflow-y:auto}.material-picker-item{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-2);border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-sm);color:var(--color-text);transition:background .15s;display:flex}.material-picker-item:hover{background:var(--color-surface-variant)}.material-picker-item input[type=checkbox]{accent-color:var(--color-primary);flex-shrink:0;width:16px;height:16px}.material-picker-icon{color:var(--color-text-tertiary);flex-shrink:0}.material-picker-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.attached-materials-chips{gap:var(--space-2);margin-bottom:var(--space-2);flex-wrap:wrap;display:flex}.material-chip{align-items:center;gap:var(--space-1);background:var(--color-primary-container);color:var(--color-primary);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-medium);max-width:200px;padding:3px 8px 3px 6px;display:inline-flex}.material-chip span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.material-chip-remove{color:var(--color-primary);cursor:pointer;opacity:.6;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:1px;transition:opacity .15s;display:inline-flex}.material-chip-remove:hover{opacity:1}.progress-container{margin-top:var(--space-5);padding:var(--space-4);background:var(--color-surface-container);border-radius:var(--radius-lg);border:1px solid var(--color-outline-variant)}.progress-bar-track{background:var(--color-surface-variant);border-radius:var(--radius-full);width:100%;height:8px;overflow:hidden}.progress-bar-fill{background:linear-gradient(90deg,var(--color-primary),var(--color-primary-hover),var(--color-primary));border-radius:var(--radius-full);background-size:200% 100%;height:100%;transition:width .3s ease-out;animation:2s infinite shimmer}.section-separator{background:linear-gradient(90deg,transparent 0%,var(--color-primary-container-hover)10%,var(--color-primary)50%,var(--color-primary-container-hover)90%,transparent 100%);border-radius:var(--radius-full);height:1.5px;margin:var(--space-5)0;box-shadow:0 0 10px var(--color-primary-container-hover),0 0 18px var(--color-primary-container);position:relative}.section-separator:before{content:"";background:linear-gradient(90deg,transparent 0%,var(--color-primary-container)10%,var(--color-primary-container-hover)50%,var(--color-primary-container)90%,transparent 100%);border-radius:var(--radius-full);filter:blur(6px);z-index:-1;height:10px;position:absolute;top:-4px;left:0;right:0}.modal-footer{padding:var(--space-5)var(--space-6);padding-top:var(--space-6);justify-content:flex-end;align-items:center;gap:var(--space-3);flex-grow:0;flex-shrink:0;display:flex;position:relative}.modal-footer:before{content:"";background:linear-gradient(90deg,transparent 0%,var(--color-primary-container-hover)10%,var(--color-primary)50%,var(--color-primary-container-hover)90%,transparent 100%);border-radius:var(--radius-full);width:85%;height:1.5px;box-shadow:0 0 12px var(--color-primary-container-hover),0 0 20px var(--color-primary-container);position:absolute;top:0;left:50%;transform:translate(-50%)}.modal-footer:after{content:"";background:linear-gradient(90deg,transparent 0%,var(--color-primary-container)10%,var(--color-primary-container-hover)50%,var(--color-primary-container)90%,transparent 100%);border-radius:var(--radius-full);filter:blur(8px);z-index:-1;width:85%;height:12px;position:absolute;top:-5px;left:50%;transform:translate(-50%)}.onboarding-modal{max-width:600px}.modal-progress{gap:var(--space-2);padding-right:var(--space-10);flex-direction:column;flex:1;display:flex}.modal-progress .progress-bar{height:4px}.modal-progress .progress-fill{background:linear-gradient(90deg,var(--color-primary)0%,var(--color-primary-hover)50%,var(--color-primary)100%);box-shadow:0 0 12px var(--color-primary-container-hover),0 0 20px var(--color-primary-container);background-size:200% 100%;animation:2s infinite shimmer}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes text-shimmer{0%{background-position:-200%}to{background-position:200%}}.progress-text{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text-tertiary);letter-spacing:.01em}.onboarding-step{animation:fadeSlideIn var(--transition-base)ease-out}@keyframes fadeSlideIn{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.step-title{font-size:var(--text-2xl);font-weight:var(--font-bold);margin-bottom:var(--space-3);color:var(--color-text);letter-spacing:-.02em;line-height:1.2}.step-description{color:var(--color-text-secondary);margin-bottom:var(--space-6);font-size:var(--text-base);line-height:1.6}.step-hint{font-size:var(--text-sm);color:var(--color-text-tertiary);margin-top:var(--space-4);font-style:italic;line-height:1.5}.onboarding-text-input{width:100%;padding:var(--space-4)var(--space-5);background:var(--color-surface);border:2px solid var(--color-outline-variant);border-radius:var(--radius-lg);color:var(--color-text);font-size:var(--text-base);font-weight:var(--font-medium);transition:all var(--transition-fast)}.onboarding-text-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 4px var(--color-primary-container);outline:none}.onboarding-text-input::placeholder{color:var(--color-text-tertiary);font-weight:var(--font-normal)}.validation-error{color:var(--color-error);font-size:var(--text-sm);margin-top:var(--space-3);font-weight:var(--font-medium)}.onboarding-step select{padding:var(--space-4)var(--space-5);padding-right:var(--space-12);background-color:var(--color-surface);border:2px solid var(--color-outline-variant);border-radius:var(--radius-lg);color:var(--color-text);font-size:var(--text-base);font-weight:var(--font-medium);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-4)center;appearance:none;cursor:pointer;transition:all var(--transition-fast);background-size:20px}.onboarding-step select:hover{border-color:var(--color-primary)}.onboarding-step select:focus{border-color:var(--color-primary);box-shadow:0 0 0 4px var(--color-primary-container);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%236366f1' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");outline:none}.custom-select-wrapper{width:100%;position:relative}.custom-select-wrapper.open{z-index:calc(var(--z-sticky) + 3)}.custom-select-trigger{width:100%;padding:var(--space-4)var(--space-5);padding-right:var(--space-12);background:var(--color-surface);border:2px solid var(--color-outline-variant);border-radius:var(--radius-lg);color:var(--color-text);font-size:var(--text-base);font-weight:var(--font-medium);text-align:left;cursor:pointer;transition:all var(--transition-fast);justify-content:flex-start;align-items:center;display:flex;position:relative}.custom-select-trigger:hover{border-color:var(--color-primary)}.custom-select-trigger.open{border-color:var(--color-primary);border-bottom-right-radius:0;border-bottom-left-radius:0}.custom-select-value{flex:1}.custom-select-value .markdown-content,.custom-select-option .markdown-content{font-size:inherit;color:inherit;line-height:1.5}.custom-select-value .markdown-content img,.custom-select-option .markdown-content img{max-height:120px!important;margin-left:0!important;margin-right:auto!important}.custom-select-arrow{top:50%;right:var(--space-4);transition:transform var(--transition-fast);color:var(--color-text-tertiary);pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;transform:translateY(-50%)rotate(0)}.custom-select-arrow svg{display:block}.custom-select-trigger:hover .custom-select-arrow{color:var(--color-primary)}.custom-select-trigger.open .custom-select-arrow{color:var(--color-primary);transform:translateY(-50%)rotate(180deg)}.custom-select-dropdown{background:var(--color-surface);border:2px solid var(--color-primary);border-bottom-left-radius:var(--radius-lg);border-bottom-right-radius:var(--radius-lg);box-shadow:none;z-index:1000;border-top:none;max-height:240px;animation:.24s ease-out slideDown;position:absolute;top:calc(100% - 2px);left:0;right:0;overflow:hidden auto}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.custom-select-option{width:100%;padding:var(--space-3)var(--space-4);color:var(--color-text);font-size:var(--text-base);font-weight:var(--font-medium);text-align:left;cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:space-between;align-items:center;display:flex}.custom-select-option:hover{background:var(--color-primary-container)}.custom-select-option.selected{background:var(--color-primary-container);color:var(--color-primary)}.custom-select-option svg{color:var(--color-primary)}.ai-select-header{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.ai-select-header label{margin:0}.vault-select-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--color-text)}.ai-edit-presets-toggle{border-radius:var(--radius-sm);width:24px;height:24px;color:var(--color-text-tertiary);cursor:pointer;transition:color var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.ai-edit-presets-toggle:hover{color:var(--color-text)}.ai-edit-presets-toggle.active{color:var(--color-primary)}.ai-presets-edit-container{gap:var(--space-3);padding:var(--space-3);flex-direction:column;display:flex}.ai-preset-edit-item{gap:var(--space-2);padding-bottom:var(--space-2);flex-direction:column;display:flex}.ai-preset-edit-item:last-child{padding-bottom:0}.ai-preset-edit-header{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.ai-preset-edit-title{font-weight:var(--font-semibold)}.ai-preset-edit-actions{align-items:center;gap:var(--space-1);display:inline-flex}.ai-presets-add-btn{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-3);border-radius:var(--radius-md);border:1px dashed var(--color-outline-variant);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;display:inline-flex}.ai-presets-add-btn:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-container)}.vault-add-btn{border-radius:var(--radius-md);width:100%;padding:var(--space-2)var(--space-2);color:var(--color-text-secondary);border:none;justify-content:center}.vault-add-btn:hover{color:var(--color-primary);background:0 0}.divider-gray{height:1px;margin:var(--space-2)var(--space-3);background:linear-gradient(90deg,transparent 0%,var(--color-outline-variant)20%,var(--color-outline-variant)80%,transparent 100%)}.radio-group-compact{gap:var(--space-2);flex-flow:row;display:flex}.radio-option-compact{min-width:0;padding:var(--space-2)var(--space-3);text-align:center;white-space:nowrap;flex:1 1 0;justify-content:center}.radio-option-compact .radio-circle{display:none}.radio-option-compact .option-content{flex:none}.radio-option-compact .option-label{font-size:clamp(.72rem,2.6vw,var(--text-sm));font-weight:var(--font-semibold);margin-bottom:0}@media (max-width:768px){.radio-group-compact{flex-wrap:wrap}.radio-option-compact{flex:1 1 calc(50% - var(--space-2))}}.profile-info{gap:var(--space-3);flex-direction:column;display:flex}.profile-item{font-size:var(--text-base);color:var(--color-text);line-height:1.6}.profile-item strong{font-weight:var(--font-semibold);color:var(--color-text)}.confirm-icon{width:64px;height:64px;margin:0 auto var(--space-4);background:var(--color-warning-container);border-radius:var(--radius-full);justify-content:center;align-items:center;display:flex}.confirm-icon svg{width:32px;height:32px;color:var(--color-warning)}.confirm-icon.danger{background:var(--color-error-container)}.confirm-icon.danger svg{color:var(--color-error)}.confirm-icon.success{background:0 0}.confirm-icon.success svg{color:var(--color-warning)}.confirm-icon.reset{background:0 0}.confirm-icon.reset svg{color:var(--color-error)}.confirm-icon.test{background:var(--color-primary-container)}.confirm-icon.test svg{color:var(--color-primary)}.confirm-icon.exit{background:var(--color-error-container)}@supports (color:color-mix(in lab, red, red)){.confirm-icon.exit{background:color-mix(in srgb,var(--color-error-container)60%,var(--color-surface)40%)}}.confirm-icon.exit svg{color:var(--color-error)}.confirm-title{font-size:var(--text-lg);font-weight:var(--font-semibold);text-align:center;margin-bottom:var(--space-2)}.confirm-message{text-align:center;color:var(--color-text-secondary)}.modal-footer .btn-danger{border:2px solid var(--color-outline-variant);color:var(--color-text-secondary);background:0 0!important}.modal-footer .btn-danger:hover:not(:disabled){border-color:var(--color-error);color:var(--color-error);background:0 0!important}.modal-footer .btn-danger:hover:not(:disabled) svg{color:var(--color-error)}.materials-modal{max-width:600px}.materials-content{padding:var(--space-8)var(--space-6)}.materials-title{font-size:var(--text-2xl);font-weight:var(--font-bold);margin-bottom:var(--space-3);color:var(--color-text);letter-spacing:-.02em}.materials-description{color:var(--color-text-secondary);margin-bottom:var(--space-6);font-size:var(--text-base);line-height:1.6}.upload-zone{padding:var(--space-10);border:2px dashed var(--color-outline);border-radius:var(--radius-lg);text-align:center;cursor:pointer;transition:all var(--transition-fast);background:var(--color-surface-variant);position:relative}.upload-zone:hover,.upload-zone.drag-over{border-color:var(--color-primary);background:var(--color-primary-container)}.upload-icon{width:48px;height:48px;color:var(--color-text-tertiary);margin:0 auto var(--space-3)}.upload-zone:hover .upload-icon,.upload-zone.drag-over .upload-icon{color:var(--color-primary)}.upload-text{font-weight:var(--font-medium);color:var(--color-text);margin-bottom:var(--space-1);font-size:var(--text-base)}.upload-link{color:var(--color-primary);cursor:pointer;text-decoration:underline}.upload-hint{font-size:var(--text-sm);color:var(--color-text-tertiary)}.upload-input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.uploaded-files{margin-top:var(--space-4);gap:var(--space-2);flex-direction:column;display:flex}.uploaded-file{align-items:center;gap:var(--space-3);padding:var(--space-3);background:var(--color-surface-container);border-radius:var(--radius-md);display:flex}.file-icon{background:var(--color-primary-container);border-radius:var(--radius-sm);justify-content:center;align-items:center;width:32px;height:32px;display:flex}.file-icon svg{width:18px;height:18px;color:var(--color-primary)}.file-info{flex:1;min-width:0}.file-name{font-size:var(--text-sm);font-weight:var(--font-medium);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.file-size{font-size:var(--text-xs);color:var(--color-text-tertiary)}.file-remove{padding:var(--space-2);color:var(--color-text-tertiary);cursor:pointer;border-radius:var(--radius-md);transition:all var(--transition-fast);background:0 0;border:none}.file-remove:hover{background:var(--color-error-container);color:var(--color-error)}.file-remove svg{width:16px;height:16px}.generate-progress-container{margin-top:var(--space-4);padding:var(--space-4);background:var(--color-surface-container);border-radius:var(--radius-lg)}.progress-header{margin-bottom:var(--space-3);justify-content:space-between;align-items:center;display:flex}.progress-bar{background:var(--color-surface-variant);border-radius:var(--radius-full);width:100%;height:8px;overflow:hidden}.progress-fill{background:linear-gradient(90deg,var(--color-primary)0%,var(--color-primary-hover)100%);border-radius:var(--radius-full);height:100%;transition:width var(--transition-base)}.toast-container{bottom:var(--space-6);right:var(--space-6);gap:var(--space-3);z-index:var(--z-toast);flex-direction:column;display:flex;position:fixed}.toast{align-items:center;gap:var(--space-3);padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-outline-variant);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);min-width:280px;max-width:400px;animation:slideInRight var(--transition-spring);display:flex}.toast.removing{animation:slideOutRight var(--transition-base)forwards}@keyframes slideInRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes slideOutRight{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(100%)}}.toast-icon{flex-shrink:0;width:24px;height:24px}.toast.success .toast-icon{color:var(--color-success)}.toast.warning .toast-icon{color:var(--color-warning)}.toast.error .toast-icon{color:var(--color-error)}.toast.info .toast-icon{color:var(--color-info)}.toast-content{flex:1}.toast-title{font-weight:var(--font-medium);margin-bottom:var(--space-1)}.toast-message{font-size:var(--text-sm);color:var(--color-text-secondary)}.toast-close{padding:var(--space-1);color:var(--color-text-tertiary);cursor:pointer;border-radius:var(--radius-sm);transition:color var(--transition-fast);background:0 0;border:none}.toast-close:hover{color:var(--color-error)}.toast-close svg{width:16px;height:16px}@media (max-width:640px){.modal-container{width:95%;max-height:95vh;margin:auto}.onboarding-modal{max-width:none}.modal-header,.modal-body,.modal-footer{padding-left:var(--space-4);padding-right:var(--space-4)}.toast-container{left:var(--space-4);right:var(--space-4);bottom:var(--space-4)}.toast{min-width:auto;max-width:none}}.form-input{width:100%;padding:var(--space-3)var(--space-4);background:var(--color-surface-variant);border:2px solid var(--color-outline-variant);border-radius:var(--radius-lg);color:var(--color-text);font-size:var(--text-base);font-family:var(--font-sans);transition:all var(--transition-fast)}.form-input:focus{border-color:var(--color-primary);background:var(--color-surface);box-shadow:0 0 0 3px var(--color-primary-container);outline:none}.count-option{padding:var(--space-3);background:var(--color-surface);border:2px solid var(--color-outline-variant);border-radius:var(--radius-lg);color:var(--color-text);font-weight:var(--font-medium);cursor:pointer;transition:all var(--transition-fast);flex:1}.count-option:hover{border-color:var(--color-primary);background:var(--color-primary-container)}.count-option.active{border-color:var(--color-primary);background:var(--color-primary-container);color:var(--color-primary)}.form-radio-group .radio-option{min-width:120px;padding:var(--space-3);background:var(--color-surface);border:2px solid var(--color-outline-variant);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast);flex:1;justify-content:center;align-items:center;display:flex}.form-radio-group .radio-option:hover{border-color:var(--color-primary);background:var(--color-primary-container)}.form-radio-group .radio-option.active{border-color:var(--color-primary);background:var(--color-primary-container);color:var(--color-primary)}.form-radio-group .radio-option span{font-weight:var(--font-medium);font-size:var(--text-sm)}.generate-progress{text-align:center;padding:var(--space-6)}.generate-progress-icon{margin:0 auto var(--space-4);color:var(--color-primary);justify-content:center;align-items:center;display:flex}.generate-progress h3{font-size:var(--text-xl);font-weight:var(--font-semibold);margin-bottom:var(--space-2);color:var(--color-text)}.generate-progress-bar{background:var(--color-surface-variant);border-radius:var(--radius-full);width:100%;height:8px;margin-bottom:var(--space-2);overflow:hidden}.generate-progress-text{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-primary)}.animate-spin{animation:1s linear infinite spin}.profile-info-card{padding:var(--space-4);background:linear-gradient(135deg,var(--color-primary-container)0%,var(--color-primary-container-hover)100%);border:1px solid var(--color-primary);border-radius:var(--radius-lg);margin-bottom:var(--space-5)}.profile-info-header{align-items:center;gap:var(--space-2);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-primary);margin-bottom:var(--space-2);display:flex}.profile-info-header svg{width:16px;height:16px}.profile-info-details{gap:var(--space-2);font-size:var(--text-sm);color:var(--color-text-secondary);flex-wrap:wrap;display:flex}@media (max-width:480px){.profile-info-card{padding:var(--space-3);margin-bottom:var(--space-3)}.profile-info-header,.profile-info-details{font-size:var(--text-xs)}}.unlimited-checkbox,.shuffle-checkbox{align-items:center;gap:var(--space-3);padding:var(--space-3)var(--space-4);background:var(--color-surface);border:2px solid var(--color-outline-variant);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text);-webkit-user-select:none;user-select:none;margin-top:var(--space-2);display:flex}.unlimited-checkbox input[type=checkbox],.shuffle-checkbox input[type=checkbox]{display:none}.unlimited-checkbox svg,.shuffle-checkbox svg{color:var(--color-text-secondary);vertical-align:middle;flex-shrink:0;width:20px;height:20px;margin-right:0;transition:all .5s cubic-bezier(.4,0,.2,1);display:inline-block}.unlimited-checkbox:hover,.shuffle-checkbox:hover{border-color:var(--color-primary);background:var(--color-primary-container)}:is(.unlimited-checkbox:has(input:checked),.shuffle-checkbox:has(input:checked)){background:var(--color-primary-container);border-color:var(--color-primary)}:is(.unlimited-checkbox:has(input:checked) svg,.shuffle-checkbox:has(input:checked) svg){color:var(--color-primary)}.unlimited-checkbox:has(input:checked) svg{transform:rotate(180deg)}.shuffle-checkbox:has(input:checked) svg{transform:scaleY(-1)}.form-slider-group{margin-bottom:var(--space-4)}.form-slider-label{margin-bottom:var(--space-2);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text-secondary);justify-content:space-between;align-items:center;display:flex}.form-slider-value{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--color-primary);text-align:center;margin-bottom:var(--space-3)}.form-slider{appearance:none;cursor:pointer;background:0 0;outline:none;width:100%;height:20px}.form-slider::-webkit-slider-thumb{appearance:none;border-radius:var(--radius-full);background:var(--color-primary);cursor:pointer;width:20px;height:20px;transition:all var(--transition-fast);margin-top:-7px}.form-slider::-webkit-slider-thumb:hover{box-shadow:0 0 0 8px var(--color-primary-container);transform:scale(1.2)}.form-slider::-moz-range-thumb{border-radius:var(--radius-full);background:var(--color-primary);cursor:pointer;width:20px;height:20px;transition:all var(--transition-fast);border:none}.form-slider::-moz-range-thumb:hover{box-shadow:0 0 0 8px var(--color-primary-container);transform:scale(1.2)}.form-slider::-webkit-slider-runnable-track{border-radius:var(--radius-full);background:var(--color-surface-variant);height:6px}.form-slider::-moz-range-track{border-radius:var(--radius-full);background:var(--color-surface-variant);height:6px}.form-slider:focus{box-shadow:none;outline:none}.ai-modal.modal-container{max-width:520px}.ai-modal-body{gap:var(--space-4);flex-direction:column;display:flex}.ai-explain-section,.ai-edit-section,.ai-translate-section{gap:var(--space-2);flex-direction:column;display:flex}.ai-explain-label,.ai-edit-label,.ai-translate-label{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-text)}.ai-modal-textarea{width:100%;min-height:100px;padding:var(--space-3)var(--space-4);background:var(--color-surface-variant);border:2px solid var(--color-outline-variant);border-radius:var(--radius-lg);color:var(--color-text);font-size:var(--text-base);font-family:var(--font-sans);resize:vertical;transition:all var(--transition-fast)}.ai-modal-textarea:focus{border-color:var(--color-primary);background:var(--color-surface);box-shadow:0 0 0 3px var(--color-primary-container);outline:none}.ai-modal-input{width:100%;padding:var(--space-3)var(--space-4);background:var(--color-surface-variant);border:2px solid var(--color-outline-variant);border-radius:var(--radius-lg);color:var(--color-text);font-size:var(--text-base);font-family:var(--font-sans);transition:all var(--transition-fast)}.ai-modal-input:focus{border-color:var(--color-primary);background:var(--color-surface);box-shadow:0 0 0 3px var(--color-primary-container);outline:none}.ai-options-column{gap:var(--space-4);flex-direction:column;display:flex}.ai-loading-container{align-items:center;gap:var(--space-3);padding:var(--space-6);color:var(--color-text-secondary);flex-direction:column;display:flex}.ai-loading-spinner{border:3px solid var(--color-surface-variant);border-top-color:var(--color-primary);border-radius:50%;width:32px;height:32px;animation:1s linear infinite spin}.ai-result-container{padding:var(--space-4);background:var(--color-surface-container);border-radius:var(--radius-lg);border:1px solid var(--color-outline-variant)}.ai-result-header{margin-bottom:var(--space-3);justify-content:space-between;align-items:center;display:flex}.ai-result-title{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-primary)}.ai-result-content{font-size:var(--text-base);color:var(--color-text);line-height:1.6}.ai-preset-action-btn{border-radius:var(--radius-sm);width:24px;height:24px;color:var(--color-text-tertiary);cursor:pointer;transition:color var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.ai-preset-action-btn:hover{color:var(--color-text)}.ai-preset-action-btn.delete{color:var(--color-error)}@supports (color:color-mix(in lab, red, red)){.ai-preset-action-btn.delete{color:color-mix(in srgb,var(--color-error)60%,transparent)}}.ai-preset-action-btn.delete{transition:color var(--transition-fast)}.ai-preset-action-btn.delete svg{color:currentColor}.ai-preset-action-btn.delete:hover{color:var(--color-error)}.ai-preset-action-btn.delete.confirm{color:var(--color-error-container);border:1px solid var(--color-error-container);background:0 0;justify-content:space-between;min-width:56px;padding:0 6px}.ai-preset-action-btn.delete.confirm:hover{border-color:var(--color-error)}.ai-preset-action-btn.delete.confirm .cancel-btn{color:var(--color-text-secondary);margin-left:4px;animation:.6s cubic-bezier(.4,0,.2,1) slideInRight}.ai-preset-action-btn.delete.confirm .cancel-btn:hover{color:var(--color-text)}.ai-chat-panel{bottom:var(--space-6);right:var(--space-6);background:var(--color-surface);background-image:linear-gradient(var(--color-surface),var(--color-surface)),linear-gradient(135deg,var(--color-primary)0%,transparent 30%,transparent 70%,var(--color-primary)100%);border-radius:var(--radius-xl);width:420px;max-height:600px;box-shadow:var(--shadow-modal),0 0 0 1px var(--color-primary-container),0 0 20px var(--color-primary-container);z-index:var(--z-modal);background-origin:border-box;background-clip:padding-box,border-box;border:2px solid #0000;flex-direction:column;display:flex;position:fixed}.ai-chat-panel-header{padding:var(--space-4)var(--space-5);border-bottom:1px solid var(--color-outline-variant);background:linear-gradient(135deg,var(--color-primary-container)0%,var(--color-surface)100%);justify-content:space-between;align-items:center;display:flex}.ai-chat-panel-title{align-items:center;gap:var(--space-3);font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--color-text);display:flex}.ai-chat-panel-subtitle{font-size:var(--text-xs);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.05em}.ai-chat-panel-close{border-radius:var(--radius-full);width:32px;height:32px;color:var(--color-text-tertiary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;padding:0;display:flex}.ai-chat-panel-close:hover{color:var(--color-error);background:0 0;border-color:#0000}.ai-chat-panel-body{min-height:0;padding:var(--space-4);flex-direction:column;flex:1;display:flex;overflow:hidden}.ai-chat-messages{gap:var(--space-4);padding-right:var(--space-2);margin-bottom:var(--space-4);z-index:1;flex-direction:column;flex:1;display:flex;position:relative;overflow-y:auto}.ai-chat-messages::-webkit-scrollbar-thumb{background:var(--color-outline-variant);border-radius:var(--radius-full)}.ai-chat-empty{text-align:center;height:100%;padding:var(--space-6);flex-direction:column;justify-content:center;align-items:center;display:flex}.ai-chat-empty-icon{border-radius:var(--radius-full);background:var(--color-primary-container);width:56px;height:56px;margin-bottom:var(--space-4);justify-content:center;align-items:center;display:flex}.ai-chat-empty-icon svg{width:28px;height:28px;color:var(--color-primary);opacity:.7}.ai-chat-empty-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--color-text);margin-bottom:var(--space-2)}.ai-chat-empty-desc{font-size:var(--text-sm);color:var(--color-text-secondary);margin-bottom:var(--space-4);max-width:280px}.ai-chat-hints{gap:var(--space-2);flex-wrap:wrap;justify-content:center;display:flex}.ai-chat-hint-btn{padding:var(--space-2)var(--space-4);background:var(--color-surface);border:1px solid var(--color-outline-variant);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast)}.ai-chat-hint-btn:hover{border-color:var(--color-primary);background:var(--color-primary-container)}.ai-chat-hint-btn.active{background:var(--color-primary-container);border-color:var(--color-primary)}.ai-chat-hint-icon{flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;display:flex}.ai-chat-hint-icon svg{width:18px;height:18px}.ai-chat-hint-btn.active .ai-chat-hint-icon svg{color:var(--color-primary)}.ai-chat-hint-btn span:last-child{text-align:left;flex:1}.ai-chat-hints-grid{gap:var(--space-2);grid-template-columns:repeat(2,1fr);display:grid}.user-message-bubble{max-width:85%;padding:var(--space-3)var(--space-4);background:var(--color-primary);color:#fff;border-radius:var(--radius-lg)var(--radius-lg)var(--radius-sm)var(--radius-lg);margin-left:auto}.assistant-message-bubble{max-width:85%;padding:var(--space-3)var(--space-4);background:var(--color-surface-container);border:1px solid var(--color-outline-variant);border-radius:var(--radius-lg)var(--radius-lg)var(--radius-lg)var(--radius-sm)}.ai-chat-input-area{border-top:1px solid var(--color-outline-variant);padding-top:var(--space-4)}.ai-chat-toggles{gap:var(--space-2);margin-bottom:var(--space-3);display:flex}.ai-chat-toggle{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-3);background:var(--color-surface);border:1px solid var(--color-outline-variant);border-radius:var(--radius-lg);font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);display:flex}.ai-chat-toggle.active{background:var(--color-primary-container);border-color:var(--color-primary);color:var(--color-primary)}.ai-chat-toggle svg{width:14px;height:14px}.ai-chat-input-wrapper{position:relative}.ai-chat-window .ai-chat-input-wrapper{gap:var(--space-2);padding:var(--space-3)var(--space-4)var(--space-4);background:var(--color-surface-container);border:1px solid var(--color-outline-variant);border-radius:var(--radius-lg);flex-direction:column;flex:1;width:100%;margin:0;transition:border-color .15s;display:flex;position:relative}.ai-chat-window .ai-chat-input-wrapper.ai-chat-input-wrapper--drag-over{border-color:var(--color-primary);background:var(--color-primary-container)}@supports (color:color-mix(in lab, red, red)){.ai-chat-window .ai-chat-input-wrapper.ai-chat-input-wrapper--drag-over{background:color-mix(in srgb,var(--color-primary-container)30%,var(--color-surface-container))}}.ai-chat-textarea-row{align-items:flex-start;gap:var(--space-2);margin-top:var(--space-1);width:100%;display:flex}.ai-chat-input-bottom-row{margin-top:var(--space-2);justify-content:space-between;align-items:center;padding:0;display:flex}.ai-chat-input-bottom-left{align-items:center;gap:var(--space-1);display:flex}.ai-chat-window .ai-chat-input-bottom-left{position:static;bottom:auto;left:auto}.ai-chat-input-bottom-right{align-items:center;gap:var(--space-2);margin-left:auto;display:flex}.ai-chat-input{width:100%;color:var(--color-text);font-size:var(--text-sm);font-family:var(--font-sans);resize:none;min-height:28px;transition:all var(--transition-fast);box-shadow:none!important;background:0 0!important;border:none!important;border-radius:0!important}.ai-chat-window .ai-chat-input{max-height:120px;padding:0 0 0 var(--space-2);flex:1;overflow-y:auto;box-shadow:none!important;background:0 0!important;border:none!important;border-radius:0!important}.ai-chat-input:focus{box-shadow:none!important;-webkit-tap-highlight-color:transparent!important;appearance:none!important;background:0 0!important;border:none!important;outline:none!important}.ai-chat-send-btn{color:var(--color-primary);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:4px;transition:transform .2s,opacity .2s;display:inline-flex}.ai-chat-window .ai-chat-send-btn,.ai-chat-window .ai-chat-stop-btn{width:auto;height:auto;position:static;transform:none}.ai-chat-send-btn:hover:not(:disabled){background:0 0;transform:scale(1.15)}.ai-chat-stop-btn:hover:not(:disabled){transform:scale(1.05)}.ai-chat-send-btn:disabled{opacity:.3;cursor:not-allowed}.ai-chat-send-btn svg{width:18px;height:18px}.ai-chat-clear-btn{color:var(--color-text-tertiary)}.ai-chat-clear-btn:hover{color:var(--color-danger);background:var(--color-danger)}@supports (color:color-mix(in lab, red, red)){.ai-chat-clear-btn:hover{background:color-mix(in srgb,var(--color-danger)10%,transparent)}}.ai-chat-stop-btn{background:0 0;border:none;justify-content:center;align-items:center;width:34px;height:34px;padding:0;transition:none;display:flex;transform:translateY(-50%)}.ai-chat-stop-ring{background:var(--color-primary);border-radius:50%;width:30px;height:30px}@supports (color:color-mix(in lab, red, red)){.ai-chat-stop-ring{background:color-mix(in srgb,var(--color-primary)12%,transparent)}}.ai-chat-stop-ring{justify-content:center;align-items:center;display:flex}.ai-chat-stop-square{background:var(--color-primary);width:10px;height:10px;box-shadow:0 0 6px var(--color-primary);border-radius:3px}@supports (color:color-mix(in lab, red, red)){.ai-chat-stop-square{box-shadow:0 0 6px color-mix(in srgb,var(--color-primary)50%,transparent)}}.ai-chat-backdrop{background:var(--modal-backdrop);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);width:100%;height:100%;z-index:calc(var(--z-modal) - 1);animation:.2s ease-out fadeIn;position:fixed;top:0;left:0}.ai-chat-window{background:var(--color-surface);background-image:linear-gradient(rgba(var(--color-surface-rgb),.95),rgba(var(--color-surface-rgb),.95)),linear-gradient(to bottom,var(--color-primary)0%,var(--color-primary-hover)25%,var(--color-primary-hover)75%,var(--color-primary)100%);border:2px solid #0000;flex-direction:column;display:flex}@supports (color:color-mix(in lab, red, red)){.ai-chat-window{background-image:linear-gradient(rgba(var(--color-surface-rgb),.95),rgba(var(--color-surface-rgb),.95)),linear-gradient(to bottom,color-mix(in srgb,var(--color-primary)60%,transparent)0%,color-mix(in srgb,var(--color-primary-hover)10%,transparent)25%,color-mix(in srgb,var(--color-primary-hover)10%,transparent)75%,color-mix(in srgb,var(--color-primary)60%,transparent)100%)}}.ai-chat-window{box-shadow:0 20px 50px -12px #0006,0 0 0 1px var(--color-primary);background-origin:border-box;background-clip:padding-box,border-box;border-radius:12px}@supports (color:color-mix(in lab, red, red)){.ai-chat-window{box-shadow:0 20px 50px -12px #0006,0 0 0 1px color-mix(in srgb,var(--color-primary)15%,transparent)}}.ai-chat-window{-webkit-backdrop-filter:blur(24px)saturate(180%);transition:opacity .4s,transform .4s cubic-bezier(.34,1.56,.64,1),box-shadow .3s;animation:.4s cubic-bezier(.34,1.56,.64,1) fadeIn;overflow:hidden}.ai-chat-window:focus-within{box-shadow:0 25px 60px -15px #00000059,0 0 0 2px var(--color-primary),0 0 40px var(--color-primary-hover)}@supports (color:color-mix(in lab, red, red)){.ai-chat-window:focus-within{box-shadow:0 25px 60px -15px #00000059,0 0 0 2px color-mix(in srgb,var(--color-primary)20%,transparent),0 0 40px color-mix(in srgb,var(--color-primary-hover)25%,transparent)}}.ai-chat-window:focus-within{transform:translateY(-2px)}.ai-chat-window.ai-chat-fullscreen{box-shadow:none;background-image:none;background:var(--color-surface);border:none;border-radius:0;width:100vw!important;height:100vh!important;top:0!important;left:0!important}.ai-chat-window.ai-chat-fullscreen .ai-chat-messages,.ai-chat-window.ai-chat-fullscreen .ai-chat-window-footer{width:100%;max-width:760px;margin:0 auto}.ai-chat-window.ai-chat-fullscreen .ai-chat-empty{max-width:760px;margin:0 auto}.ai-chat-window.ai-chat-fullscreen .ai-chat-resize-handle{display:none}.ai-chat-window-header{padding:var(--space-4)var(--space-5);-webkit-user-select:none;user-select:none;z-index:10;background:0 0;border-bottom:none;flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.ai-chat-window-header-left{align-items:center;gap:var(--space-3);flex:1;min-width:0;display:flex}.ai-chat-window-title{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;margin:0;overflow:hidden}.ai-chat-note-title{font-size:var(--text-sm);color:var(--color-text-secondary);font-weight:var(--font-normal)}.ai-chat-window-header-right{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.ai-chat-header-divider{background:linear-gradient(to bottom,transparent 0%,rgba(var(--color-primary-rgb,99,102,241),.3)20%,rgba(var(--color-primary-rgb,99,102,241),.3)80%,transparent 100%);width:1px;height:20px;margin:0 var(--space-1);flex-shrink:0;align-self:center}.ai-chat-close-btn{margin-left:var(--space-1);position:static!important}.ai-chat-header-btn{padding:var(--space-2);background:var(--color-surface);border:1px solid var(--color-outline-variant);border-radius:var(--radius-full);width:32px;height:32px;font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);justify-content:center;align-items:center;display:flex}.ai-chat-header-btn:hover,.ai-chat-header-btn.active{background:var(--color-primary-container);border-color:var(--color-primary);color:var(--color-primary)}.ai-chat-header-btn svg{flex-shrink:0;width:16px;height:16px}.ai-chat-window-body{background:0 0;flex-direction:column;flex:1;min-height:0;padding:0;display:flex;overflow:hidden}.ai-chat-messages{gap:var(--space-5);padding:var(--space-6);scroll-behavior:smooth;flex-direction:column;flex:1;display:flex;overflow-y:auto}.ai-chat-messages::-webkit-scrollbar{width:5px}.ai-chat-messages::-webkit-scrollbar-track{background:0 0}.ai-chat-messages::-webkit-scrollbar-thumb{background:linear-gradient(to bottom,var(--color-primary),var(--color-primary-hover));border-radius:var(--radius-full);opacity:.3}.ai-chat-message{word-wrap:break-word;overflow-wrap:break-word;z-index:1;max-width:95%;margin-bottom:var(--space-3);flex-direction:column;display:flex;position:relative}@keyframes messageIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.ai-chat-message.ai-chat-user{align-self:flex-end}.ai-chat-message.ai-chat-assistant{max-width:100%;margin-bottom:var(--space-2);align-self:flex-start}.ai-chat-message-header{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-tertiary);justify-content:space-between;align-items:center;gap:var(--space-2);margin-bottom:2px;font-size:11px;font-weight:600;line-height:1;display:flex}.ai-chat-message-wrapper{flex-direction:column;width:100%;margin-bottom:24px;display:flex;position:relative}@media (max-width:768px){.ai-chat-window{width:100dvw!important;max-width:none!important;height:100dvh!important;max-height:none!important;box-shadow:none!important;border:none!important;border-radius:0!important;position:fixed!important;top:0!important;left:0!important;transform:none!important}.ai-chat-window-header{padding:var(--space-4)var(--space-5);border-radius:0}.ai-chat-window-body{height:calc(100dvh - 140px)}.ai-chat-messages{height:100%}.ai-chat-window-footer{padding:var(--space-4)var(--space-5)}.ai-chat-resize-handle{display:none!important}.ai-chat-header-btn{border:none;background:0 0!important}.ai-chat-fullscreen-btn{display:none!important}}.ai-chat-copy-btn{opacity:1;cursor:pointer;color:var(--color-text-tertiary);border-radius:var(--radius-sm);background:0 0;border:none;justify-content:center;align-items:center;padding:4px;transition:all .2s;display:inline-flex;position:absolute;bottom:-25px;right:15px}.ai-chat-copy-btn:hover{background:var(--color-surface-container-high);color:var(--color-primary);transform:scale(1.1)}.ai-chat-copy-btn:active{transform:scale(.95)}.ai-chat-message-content{padding:var(--space-4)var(--space-5);font-size:clamp(13px,2.8vw,15px);line-height:1.6;position:relative;box-shadow:0 4px 15px #00000014}.ai-chat-user .ai-chat-message-content{background:var(--color-surface)!important;color:var(--color-text)!important;background-image:linear-gradient(rgba(var(--color-surface-rgb),.95),rgba(var(--color-surface-rgb),.95)),linear-gradient(to bottom,var(--color-primary)0%,var(--color-primary-hover)25%,var(--color-primary-hover)75%,var(--color-primary)100%)!important;border:1px solid #0000!important}@supports (color:color-mix(in lab, red, red)){.ai-chat-user .ai-chat-message-content{background-image:linear-gradient(rgba(var(--color-surface-rgb),.95),rgba(var(--color-surface-rgb),.95)),linear-gradient(to bottom,color-mix(in srgb,var(--color-primary)60%,transparent)0%,color-mix(in srgb,var(--color-primary-hover)10%,transparent)25%,color-mix(in srgb,var(--color-primary-hover)10%,transparent)75%,color-mix(in srgb,var(--color-primary)60%,transparent)100%)!important}}.ai-chat-user .ai-chat-message-content{-webkit-backdrop-filter:blur(24px)saturate(180%)!important;background-origin:border-box!important;background-clip:padding-box,border-box!important;border-radius:12px 12px 2px!important;box-shadow:0 4px 15px #0000001a!important}.ai-chat-user-message{background:var(--color-surface);color:var(--color-text);background-image:linear-gradient(rgba(var(--color-surface-rgb),.95),rgba(var(--color-surface-rgb),.95)),linear-gradient(to bottom,var(--color-primary)0%,var(--color-primary-hover)25%,var(--color-primary-hover)75%,var(--color-primary)100%);border:1px solid #0000}@supports (color:color-mix(in lab, red, red)){.ai-chat-user-message{background-image:linear-gradient(rgba(var(--color-surface-rgb),.95),rgba(var(--color-surface-rgb),.95)),linear-gradient(to bottom,color-mix(in srgb,var(--color-primary)60%,transparent)0%,color-mix(in srgb,var(--color-primary-hover)10%,transparent)25%,color-mix(in srgb,var(--color-primary-hover)10%,transparent)75%,color-mix(in srgb,var(--color-primary)60%,transparent)100%)}}.ai-chat-user-message{-webkit-backdrop-filter:blur(24px)saturate(180%);background-origin:border-box;background-clip:padding-box,border-box;border-radius:12px 12px 4px;box-shadow:0 4px 15px #0000001a}.ai-chat-assistant .ai-chat-message-content{word-break:break-word;overflow-wrap:break-word;width:100%;box-shadow:none!important;color:var(--color-text)!important;background:0 0!important;border:none!important;border-radius:0!important;padding:0!important}.ai-chat-assistant .ai-chat-message-content.prose{word-wrap:break-word;overflow-wrap:break-word;max-width:100%}.ai-chat-assistant .ai-chat-message-content.prose>:first-child{margin-top:0}.ai-chat-assistant .ai-chat-message-content.prose>:last-child{margin-bottom:0}.ai-chat-assistant .ai-chat-message-content.prose p{margin:.6em 0;line-height:1.6}.ai-chat-assistant .ai-chat-message-content.prose p:first-of-type{margin-top:0}.ai-chat-assistant .ai-chat-message-content.prose p:last-of-type{margin-bottom:0}.ai-chat-assistant .ai-chat-message-content.prose p:only-child{margin:0}.ai-chat-assistant .ai-chat-message-content.prose ul,.ai-chat-assistant .ai-chat-message-content.prose ol{margin:.6em 0;padding-left:1.5em}.ai-chat-assistant .ai-chat-message-content.prose li{margin:.2em 0;line-height:1.6}.ai-chat-assistant .ai-chat-message-content.prose h1,.ai-chat-assistant .ai-chat-message-content.prose h2,.ai-chat-assistant .ai-chat-message-content.prose h3,.ai-chat-assistant .ai-chat-message-content.prose h4,.ai-chat-assistant .ai-chat-message-content.prose h5,.ai-chat-assistant .ai-chat-message-content.prose h6{margin-top:1em;margin-bottom:.5em;line-height:1.3}.ai-chat-assistant .ai-chat-message-content.prose hr{margin:1.5em 0}.ai-chat-assistant .ai-chat-message-content.prose pre{border-radius:var(--radius-md);margin:.6em 0;overflow-x:auto}.ai-chat-assistant .ai-chat-message-content.prose code{word-break:break-word}.ai-chat-assistant .ai-chat-message-content.prose blockquote{border-left:3px solid var(--color-outline-variant);margin:.6em 0;padding-left:1em}.ai-chat-assistant .ai-chat-message-content.prose li>p,.ai-chat-assistant .ai-chat-message-content.prose li>ul,.ai-chat-assistant .ai-chat-message-content.prose li>ol{margin:.2em 0}.ai-chat-assistant .ai-chat-message-content.prose li:first-child{margin-top:0}.ai-chat-assistant .ai-chat-message-content.prose li:last-child{margin-bottom:0}.ai-chat-message.ai-chat-loading{align-self:flex-start;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--color-text-secondary);box-shadow:none;background:0 0;border:none;border-radius:0;flex-direction:row;padding:0;display:flex}.ai-chat-empty{justify-content:center;align-items:center;gap:var(--space-4);color:var(--color-text-tertiary);text-align:center;padding:var(--space-8);flex-direction:column;flex:1;display:flex}.ai-chat-window-footer{padding:var(--space-3)var(--space-5)var(--space-4);z-index:10;background:0 0;border-top:none;position:relative}.ai-chat-model-dropdown-wrapper{flex-shrink:0;position:relative}.ai-chat-model-dropdown-btn{border-radius:var(--radius-sm);color:var(--color-text-tertiary);font-size:var(--text-xs);font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;background:0 0;border:none;align-items:center;gap:3px;padding:4px 6px;display:flex}.ai-chat-model-dropdown-btn:hover:not(:disabled){color:var(--color-text-secondary)}.ai-chat-model-dropdown-btn:disabled{opacity:.5;cursor:not-allowed}.ai-chat-model-chevron{transition:transform .2s}.ai-chat-model-chevron-open{transform:rotate(180deg)}.ai-chat-model-dropdown-menu{background:var(--color-surface);border:1px solid var(--color-outline-variant);border-radius:var(--radius-md);min-width:120px;padding:var(--space-1);z-index:100;animation:.15s fadeIn;position:absolute;bottom:calc(100% + 6px);right:0;box-shadow:0 8px 24px #0003}.ai-chat-model-dropdown-item{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2)var(--space-3);border-radius:var(--radius-sm);color:var(--color-text-secondary);font-size:var(--text-sm);font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;display:flex}.ai-chat-model-dropdown-item:hover:not(:disabled){color:var(--color-text)}.ai-chat-model-dropdown-item.active{color:var(--color-primary)}.ai-chat-model-dropdown-item.locked{opacity:.4;cursor:not-allowed}.ai-chat-fullscreen-btn{box-shadow:none!important;background:0 0!important;border:none!important}.ai-chat-suggestions{gap:var(--space-2);margin-top:var(--space-2);flex-wrap:wrap;justify-content:center;display:flex}.ai-chat-suggestions button{padding:var(--space-3)var(--space-5);background:var(--color-surface);border:1px solid var(--color-outline-variant);border-radius:var(--radius-full);font-size:var(--text-sm);color:var(--color-text-secondary);cursor:pointer;font-weight:600;transition:all .25s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 8px #0000000d}.ai-chat-suggestions button:hover{background:linear-gradient(135deg,var(--color-primary),var(--color-primary-hover))}@supports (color:color-mix(in lab, red, red)){.ai-chat-suggestions button:hover{background:linear-gradient(135deg,color-mix(in srgb,var(--color-primary)10%,transparent),color-mix(in srgb,var(--color-primary-hover)10%,transparent))}}.ai-chat-suggestions button:hover{color:var(--color-primary);border-color:var(--color-primary);box-shadow:0 6px 15px var(--color-primary);transform:translateY(-2px)scale(1.02)}@supports (color:color-mix(in lab, red, red)){.ai-chat-suggestions button:hover{box-shadow:0 6px 15px color-mix(in srgb,var(--color-primary)15%,transparent)}}.ai-chat-resize-handle{z-index:10;background:0 0;position:absolute}.ai-chat-resize-handle:hover{background:rgba(var(--color-primary-rgb,159,122,234),.1)}.ai-chat-resize-nw,.ai-chat-resize-ne,.ai-chat-resize-sw,.ai-chat-resize-se{width:4px;height:4px}.ai-chat-resize-nw{cursor:nwse-resize;top:0;left:0}.ai-chat-resize-ne{cursor:nesw-resize;top:0;right:0}.ai-chat-resize-sw{cursor:nesw-resize;bottom:0;left:0}.ai-chat-resize-se{cursor:nwse-resize;bottom:0;right:0}.ai-chat-resize-n,.ai-chat-resize-s{height:3px;left:0;right:0}.ai-chat-resize-n{cursor:ns-resize;top:0}.ai-chat-resize-s{cursor:ns-resize;bottom:0}.ai-chat-resize-e,.ai-chat-resize-w{width:3px;top:0;bottom:0}.ai-chat-resize-e{cursor:ew-resize;right:0}.ai-chat-resize-w{cursor:ew-resize;left:0}.media-dropzone{padding:var(--space-4);border:2px dashed var(--color-outline);border-radius:var(--radius-lg);text-align:center;cursor:pointer;transition:all var(--transition-fast)}.media-dropzone:hover,.media-dropzone--active{border-color:var(--color-primary);background:var(--color-primary-container)}.media-dropzone--uploading{opacity:.7;pointer-events:none}.media-dropzone__content{align-items:center;gap:var(--space-2);flex-direction:column;display:flex}.media-dropzone__hint{font-size:var(--text-sm);color:var(--color-text-tertiary)}.media-dropzone__uploading{font-size:var(--text-sm);color:var(--color-primary)}.unified-side-input{gap:var(--space-3);padding:var(--space-3)var(--space-3)var(--space-2);border:2px dashed var(--color-outline-variant);border-radius:var(--radius-lg);transition:all var(--transition-fast);background:0 0;flex-direction:column;min-height:0;display:flex;position:relative}.unified-side-input:hover,.unified-side-input.active{border-color:var(--color-primary);background:var(--color-primary-container)}.unified-side-input__textarea{resize:vertical;width:100%;min-height:72px;color:var(--color-text);font-size:var(--text-base);background:0 0;border:none;outline:none;padding:0;line-height:1.5}.unified-side-input__textarea:focus{box-shadow:none;outline:none}.unified-side-input__upload{right:var(--space-3);bottom:var(--space-3);width:40px;height:40px;color:var(--color-on-primary);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex;position:absolute}.unified-side-input__upload:hover{box-shadow:none;color:var(--color-primary);background:0 0;transform:none}.unified-side-input__preview{padding-right:calc(40px + var(--space-3))}.media-drop-input-container{gap:var(--space-2);flex-direction:column;display:flex}.media-row{gap:var(--space-4);align-items:flex-start;display:flex}.media-group{flex:1;min-width:0}.media-group label{justify-content:center;align-items:center;gap:var(--space-1);margin-bottom:var(--space-1);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text);display:flex}.media-drop-input{align-items:center;gap:var(--space-2);padding:var(--space-2);border:2px dashed var(--color-outline-variant);border-radius:var(--radius-lg);transition:all var(--transition-fast);background:0 0;display:flex}.media-drop-input:hover,.media-drop-input.active{border-color:var(--color-primary);background:var(--color-primary-container)}.media-text-input{padding:var(--space-2)var(--space-3);border:1px solid var(--color-outline);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font-size:var(--text-sm);transition:all var(--transition-fast);outline:none;flex:1}.media-text-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-container)}.media-upload-btn{background:var(--color-primary);width:40px;height:40px;color:var(--color-on-primary);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:flex}.media-upload-btn:hover{background:var(--color-primary-hover);box-shadow:0 2px 8px var(--color-primary-container);transform:translateY(-1px)}.media-drop-hint{font-size:var(--text-xs);color:var(--color-text-tertiary);align-items:center;gap:var(--space-1);padding-left:var(--space-1);display:flex}@media (max-width:768px){.media-row{gap:var(--space-3);flex-direction:column}}.media-preview-list{gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.media-preview-item{border-radius:var(--radius-md);border:1px solid var(--color-outline-variant);width:80px;height:80px;position:relative;overflow:hidden}.media-preview-img{object-fit:cover;width:100%;height:100%}.media-preview-video-placeholder{background:var(--color-surface-variant);width:100%;height:100%;color:var(--color-text-tertiary);justify-content:center;align-items:center;display:flex}.media-preview-remove{top:var(--space-1);right:var(--space-1);background:var(--color-error);width:20px;height:20px;padding:0;position:absolute}@supports (color:color-mix(in lab, red, red)){.media-preview-remove{background:color-mix(in srgb,var(--color-error)90%,transparent)}}.media-preview-remove{border-radius:var(--radius-full);color:#fff;cursor:pointer;opacity:0;transition:opacity var(--transition-fast);border:none;justify-content:center;align-items:center;display:flex}.media-preview-item:hover .media-preview-remove{opacity:1}.media-preview-loading{background:var(--color-surface-variant);justify-content:center;align-items:center;display:flex}.options-list-edit{gap:var(--space-2);margin-bottom:var(--space-3);flex-direction:column;display:flex}.option-edit-row{align-items:center;gap:var(--space-2);display:flex}.option-select-btn{background:var(--color-surface);border:2px solid var(--color-outline-variant);border-radius:var(--radius-md);width:28px;height:28px;color:var(--color-text-tertiary);cursor:pointer;transition:all var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;padding:0;display:flex}.option-select-btn .dot{background:var(--color-outline-variant);border-radius:var(--radius-full);width:8px;height:8px}.option-select-btn:hover{border-color:var(--color-primary);background:var(--color-primary-container)}.option-select-btn.active{border-color:var(--color-success);background:var(--color-success);color:#fff}.option-select-btn.active .dot{display:none}.btn-remove{border-radius:var(--radius-md);width:28px;height:28px;color:var(--color-error);cursor:pointer;transition:all var(--transition-fast);opacity:.6;background:0 0;border:none;padding:0}.btn-remove:hover{opacity:1;background:var(--color-error-container)}.ai-chat-brand-icon{stroke:url(#ai-chat-gradient);fill:none;filter:drop-shadow(0 0 8px var(--color-primary-hover))}@supports (color:color-mix(in lab, red, red)){.ai-chat-brand-icon{filter:drop-shadow(0 0 8px color-mix(in srgb,var(--color-primary-hover)30%,transparent))}}[data-theme=dark] .ai-chat-brand-icon{filter:drop-shadow(0 0 12px var(--color-primary-hover))}@supports (color:color-mix(in lab, red, red)){[data-theme=dark] .ai-chat-brand-icon{filter:drop-shadow(0 0 12px color-mix(in srgb,var(--color-primary-hover)50%,transparent))}}.text-style-presets{margin-bottom:var(--space-4)}.text-style-preset-grid{gap:var(--space-2);margin-top:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(110px,1fr));display:grid}.text-style-preset-btn{padding:var(--space-3)var(--space-4);background:var(--color-surface);border:1px solid var(--color-outline-variant);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text);cursor:pointer;transition:all var(--transition-fast);text-align:center}.text-style-preset-btn:hover{border-color:var(--color-outline);background:var(--color-surface-container)}.text-style-preset-btn.active{background:var(--color-primary-container);border-color:var(--color-primary);color:var(--color-primary)}.text-style-config-group{margin-top:var(--space-5)}.text-style-mode-grid{gap:var(--space-2);margin-top:var(--space-2);grid-template-columns:repeat(2,1fr);display:grid}.text-style-mode-btn{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-3);background:var(--color-surface);border:1px solid var(--color-outline-variant);border-radius:var(--radius-md);font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);display:flex}.text-style-mode-btn:hover{border-color:var(--color-outline);background:var(--color-surface-container);color:var(--color-text)}.text-style-mode-btn.active{background:var(--color-primary-container);border-color:var(--color-primary);color:var(--color-primary)}.text-style-mode-btn svg{flex-shrink:0;width:16px;height:16px}.text-style-color-trigger{align-items:center;gap:var(--space-3);padding:var(--space-3)var(--space-4);background:var(--color-surface);border:1px solid var(--color-outline-variant);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);width:100%;font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text);margin-top:var(--space-3);max-height:46px;display:flex}.text-style-color-trigger:hover{border-color:var(--color-primary);background:var(--color-primary-container)}.text-style-color-preview{background:var(--preview-color);border:1px solid var(--color-outline);border-radius:50%;flex-shrink:0;width:24px;height:24px}.gradient-editor{margin-top:var(--space-3);padding:var(--space-4);border:1px solid var(--color-outline-variant);border-radius:var(--radius-md)}.gradient-editor-header{margin-bottom:var(--space-3);justify-content:space-between;align-items:center;display:flex}.gradient-colors-list{gap:var(--space-2);flex-wrap:wrap;margin:0;display:flex}.gradient-color-item{align-items:center;gap:var(--space-2);display:flex;position:relative}.gradient-color-preview{border:2px solid var(--color-outline);cursor:pointer;width:32px;height:32px;transition:all var(--transition-fast);border-radius:50%}.gradient-color-preview:hover{border-color:var(--color-primary);transform:scale(1.1)}.gradient-color-remove{border-radius:var(--radius-full);background:var(--color-error-container);width:20px;height:20px;color:var(--color-error);cursor:pointer;transition:all var(--transition-fast);border:none;justify-content:center;align-items:center;font-size:16px;line-height:1;display:flex;position:absolute;top:-8px;right:-8px}.gradient-color-remove:hover{background:var(--color-error);color:#fff}.gradient-add-color-btn{padding:var(--space-2);background:var(--color-primary-container);color:var(--color-primary);border:1px dashed var(--color-primary);justify-content:center;align-items:center;gap:var(--space-2);cursor:pointer;transition:all var(--transition-fast);border-radius:50%;width:32px;height:32px;display:flex}.gradient-add-color-btn:hover{background:var(--color-primary);color:#fff;border-style:solid}.gradient-preview-text{font-size:var(--text-sm);font-weight:var(--font-medium);margin-top:var(--space-3);text-align:right;width:100%;display:inline-block}.gradient-preview{margin-top:var(--space-4);padding:var(--space-6);border-radius:var(--radius-md);text-align:center;font-weight:var(--font-bold);color:#fff;text-shadow:0 2px 4px #0000004d}@media (max-width:768px){.modal{align-items:stretch;padding:8px 0}.modal-container{border-radius:var(--radius-xl);flex-direction:column;width:100%;max-width:100%;height:calc(100dvh - 16px);max-height:calc(100dvh - 16px);margin:0;display:flex;overflow:hidden;transform:translateY(100%)}.modal-container>form{flex-direction:column;flex:auto;min-height:0;display:flex;overflow:hidden}.modal.active .modal-container{transform:translateY(0)}.modal-small .modal-container,.modal-container.modal-small,.modal-large .modal-container,.modal-container.modal-large{max-width:100%;height:calc(100dvh - 16px);max-height:calc(100dvh - 16px)}.modal-header{padding:var(--space-5)var(--space-4);padding-top:var(--space-4);flex-shrink:0;align-items:center}.modal-title{font-size:var(--text-lg);line-height:1.4}.modal-close{width:var(--touch-target-min);height:var(--touch-target-min);top:var(--space-3);right:var(--space-3);justify-content:center;align-items:center;display:flex}.modal-close:hover{transform:none}.modal-close:active{opacity:1;transform:none}.modal-body{padding:var(--space-3)var(--space-4);-webkit-overflow-scrolling:touch;flex:auto;min-height:0;max-height:none;overflow:hidden auto}.modal-footer{padding:var(--space-3)var(--space-4);padding-bottom:calc(var(--space-3) + env(safe-area-inset-bottom,0px));gap:var(--space-2);border-top:1px solid var(--color-outline-variant);background:var(--color-surface);flex-flow:row;flex-shrink:0;justify-content:stretch}.onboarding-modal .modal-footer{gap:var(--space-2);flex-flow:row;justify-content:space-between}.onboarding-modal .modal-footer button{flex:1 1 0;width:auto;min-width:0}.modal-footer button{width:auto;min-height:var(--touch-target-min);padding:var(--space-2)var(--space-3);flex:auto;justify-content:center}.modal-footer-actions{gap:var(--space-2);flex-direction:row;width:100%}.modal-footer-actions button{flex:1}.modal-container:before{display:none}.confirm-dialog .modal-container{height:calc(100dvh - 16px);max-height:calc(100dvh - 16px)}.confirm-dialog-content{padding:var(--space-4)}.confirm-dialog-icon{width:56px;height:56px}.confirm-dialog-title{font-size:var(--text-lg)}.confirm-dialog-message{font-size:var(--text-sm)}.confirm-dialog-actions{gap:var(--space-2);flex-direction:column;width:100%}.confirm-dialog-actions button{width:100%;min-height:var(--touch-target-comfortable)}.color-picker-modal .modal-container{height:calc(100dvh - 16px);max-height:calc(100dvh - 16px)}.color-picker-grid{gap:var(--space-2);grid-template-columns:repeat(6,1fr)}.color-swatch{width:var(--touch-target-min);height:var(--touch-target-min)}.help-modal .modal-container{height:calc(100dvh - 16px);max-height:calc(100dvh - 16px)}.help-shortcut-grid{gap:var(--space-2);grid-template-columns:1fr}.help-shortcut-item{padding:var(--space-3)}.text-style-modal .modal-container{height:calc(100dvh - 16px);max-height:calc(100dvh - 16px)}.text-style-options{gap:var(--space-2)}.text-style-option{min-height:var(--touch-target-comfortable);padding:var(--space-3)}}.quick-presets-group{margin-top:var(--space-3)}.quick-presets-grid{gap:var(--space-2);flex-wrap:wrap;display:flex}.quick-preset-btn{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-3);background:var(--color-surface);border:1px solid var(--color-outline-variant);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);font-size:var(--text-xs);color:var(--color-text-secondary);display:flex}.quick-preset-btn:hover,.quick-preset-btn.active{background:var(--color-primary-container);border-color:var(--color-primary);color:var(--color-primary)}.quick-preset-btn.active svg{color:var(--color-primary)}.quick-preset-label{white-space:nowrap}.custom-select-option-row{align-items:center;gap:var(--space-2);padding:var(--space-3)var(--space-4);border-radius:var(--radius-md);transition:background var(--transition-fast),color var(--transition-fast);display:flex}.custom-select-option-row:hover,.custom-select-option-row.selected{background:var(--color-primary-container)}.custom-select-option-row .custom-select-option{background:0 0;border-radius:0;flex:1;padding:0}.custom-select-option-row .custom-select-option:hover,.custom-select-option-row:hover .custom-select-option,.custom-select-option-row.selected .custom-select-option{background:0 0}.custom-select-option-row:hover .custom-select-option-label,.custom-select-option-row.selected .custom-select-option-label{color:var(--color-primary)}.custom-select-option-actions{align-items:center;gap:var(--space-2);display:flex}.ai-preset-delete-btn{color:var(--color-delete)!important}.ai-preset-delete-btn:hover{color:var(--color-delete-hover)!important;background:0 0!important}.delete-confirm-btn{animation:.25s forwards fadeInPop;color:var(--color-delete)!important}.delete-confirm-btn:hover{color:var(--color-delete-hover)!important;background:0 0!important}.delete-cancel-btn{animation:.25s forwards fadeInPop;color:var(--color-text-tertiary)!important}.delete-cancel-btn:hover{color:var(--color-text)!important;background:0 0!important}.quick-preset-star{border-radius:var(--radius-md);width:32px;height:100%;min-height:40px;color:var(--color-text-tertiary);cursor:pointer;transition:all var(--transition-fast);margin-right:var(--space-2);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.quick-preset-star:hover{color:var(--color-warning)}.quick-preset-star.active,.quick-preset-star.active:hover{color:#0000}@media (max-width:480px){.modal-header{padding:var(--space-4)var(--space-3);padding-top:var(--space-4)}.modal-title{font-size:var(--text-base);line-height:1.4}.modal-close{top:var(--space-2);right:var(--space-2)}.modal-body{padding:var(--space-2)var(--space-3)}.modal-footer{padding:var(--space-2)var(--space-3);padding-bottom:calc(var(--space-2) + env(safe-area-inset-bottom,0px));gap:var(--space-2);flex-direction:row}.modal-footer button{padding:var(--space-2);font-size:var(--text-sm)}.unlimited-checkbox,.shuffle-checkbox{padding:var(--space-2)var(--space-3);font-size:var(--text-xs)}.unlimited-checkbox svg,.shuffle-checkbox svg{width:18px;height:18px}.color-picker-grid{grid-template-columns:repeat(5,1fr)}.color-swatch{width:var(--touch-target-min);height:var(--touch-target-min)}.settings-section-title{font-size:var(--text-sm)}.settings-option{padding:var(--space-3)}.settings-option-label{font-size:var(--text-sm)}.model-tier-selector{gap:var(--space-1)}.model-tier-btn{padding:var(--space-2)var(--space-3);font-size:var(--text-xs)}.material-picker-dropdown{min-width:220px;max-width:calc(100vw - 40px)}.material-picker-item{padding:var(--space-2);font-size:var(--text-xs)}.material-chip{max-width:160px;padding:2px 6px 2px 4px;font-size:10px}.modal-label-row{margin-bottom:var(--space-1)}.ai-chat-model-toggle{gap:1px}.ai-chat-model-btn{padding:2px 4px!important}.ai-chat-attached-chips{padding:0 var(--space-3)var(--space-1)}}@media (hover:none) and (pointer:coarse){.modal-close:hover{transform:none}.modal-close:active{opacity:1;transform:none}.modal-footer button:hover{transform:none}.modal-footer button:active{opacity:.9;transform:scale(.98)}.modal button,.modal input,.modal select,.modal textarea{min-height:var(--touch-target-min)}.modal input[type=checkbox],.modal input[type=radio]{width:24px;height:24px;min-height:auto}.modal *{-webkit-tap-highlight-color:transparent}}.vault-modal .modal-container{max-width:480px}.vault-modal__field{margin-bottom:var(--space-5)}.vault-modal__field:last-child{margin-bottom:0}.vault-modal__label{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text-secondary);margin-bottom:var(--space-2);display:block}.vault-modal__input{width:100%;padding:var(--space-3);font-family:inherit;font-size:var(--text-base);color:var(--color-text);background:var(--color-surface-container);border:1px solid var(--color-outline-variant);border-radius:var(--radius-md);transition:all var(--transition-fast)}.vault-modal__input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-container);outline:none}.vault-modal__input::placeholder{color:var(--color-text-tertiary)}.vault-modal__icons{gap:var(--space-2);flex-wrap:wrap;display:flex}.vault-modal__icon-btn{background:var(--color-surface-container);border-radius:var(--radius-md);cursor:pointer;width:40px;height:40px;transition:all var(--transition-fast);border:2px solid #0000;justify-content:center;align-items:center;font-size:20px;display:flex}.vault-modal__icon-btn:hover{background:var(--color-surface-container-high);transform:scale(1.05)}.vault-modal__icon-btn--active{border-color:var(--color-primary);background:var(--color-primary-container)}.vault-modal__colors{gap:var(--space-2);flex-wrap:wrap;display:flex}.vault-modal__color-btn{border-radius:var(--radius-full);cursor:pointer;width:32px;height:32px;transition:all var(--transition-fast);border:2px solid #0000}.vault-modal__color-btn:hover{transform:scale(1.1)}.vault-modal__color-btn--active{border-color:var(--color-text);box-shadow:0 0 0 2px var(--color-surface),0 0 0 4px currentColor}.vault-modal__preview{align-items:center;gap:var(--space-3);padding:var(--space-3);background:var(--color-surface-container);border-radius:var(--radius-lg);display:flex}.vault-modal__preview-icon{border-radius:var(--radius-md);justify-content:center;align-items:center;width:40px;height:40px;font-size:20px;display:flex}.vault-modal__preview-name{font-size:var(--text-base);font-weight:var(--font-medium);color:var(--color-text)}.vault-modal__footer-spacer{flex:1}.vault-modal__delete-confirm{text-align:center;padding:var(--space-4)}.vault-modal__delete-text{font-size:var(--text-base);color:var(--color-text);margin-bottom:var(--space-2)}.vault-modal__delete-warning{font-size:var(--text-sm);color:var(--color-text-tertiary);margin-bottom:var(--space-6)}.vault-modal__delete-actions{gap:var(--space-3);justify-content:center;display:flex}.btn-danger{background:var(--color-danger);color:#fff;border-color:var(--color-danger)}.btn-danger:hover:not(:disabled){background:var(--color-danger)}@supports (color:color-mix(in lab, red, red)){.btn-danger:hover:not(:disabled){background:color-mix(in srgb,var(--color-danger)85%,black)}}.btn-danger:hover:not(:disabled){border-color:var(--color-danger)}@supports (color:color-mix(in lab, red, red)){.btn-danger:hover:not(:disabled){border-color:color-mix(in srgb,var(--color-danger)85%,black)}}.btn-danger-text{color:var(--color-danger)}.btn-danger-text:hover:not(:disabled){background:var(--color-danger)}@supports (color:color-mix(in lab, red, red)){.btn-danger-text:hover:not(:disabled){background:color-mix(in srgb,var(--color-danger)10%,transparent)}}@media (max-width:480px){.vault-modal__icons{gap:var(--space-1)}.vault-modal__icon-btn{width:36px;height:36px;font-size:18px}.vault-modal__color-btn{width:28px;height:28px}}.create-vault-modal .modal-body{padding:var(--space-5)}.create-vault-description{gap:var(--space-3);padding:var(--space-4);background:var(--color-surface-container);border-radius:var(--radius-lg);margin-bottom:var(--space-4);display:flex}.create-vault-description .create-vault-icon{color:var(--color-primary);flex-shrink:0}.create-vault-description p{font-size:var(--text-sm);color:var(--color-text-secondary);margin:0;line-height:1.5}.create-vault-hint{margin-bottom:var(--space-5)}.create-vault-hint p{font-size:var(--text-sm);color:var(--color-text-tertiary);margin:0;line-height:1.5}.create-vault-form{gap:var(--space-2);flex-direction:column;display:flex}.create-vault-label{font-size:var(--text-sm);color:var(--color-text-secondary);font-weight:500}.create-vault-input{width:100%;padding:var(--space-3)var(--space-4);font-size:var(--text-base);color:var(--color-text);background:var(--color-surface-container);border:1px solid var(--color-outline-variant);border-radius:var(--radius-md);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);outline:none}.create-vault-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-container)}.create-vault-input::placeholder{color:var(--color-text-tertiary)}.vaults-modal .modal-body{padding:var(--space-5)}.vaults-description{gap:var(--space-3);padding:var(--space-4);background:var(--color-surface-container);border-radius:var(--radius-lg);margin-bottom:var(--space-5);display:flex}.vaults-description .vaults-icon{color:var(--color-primary);flex-shrink:0}.vaults-description p{font-size:var(--text-sm);color:var(--color-text-secondary);margin:0;line-height:1.5}.welcome-modal .modal-container{max-width:440px}.welcome-content{text-align:center;padding:var(--space-6)var(--space-6)var(--space-4);flex-direction:column;align-items:center;display:flex;position:relative}.welcome-close-btn{top:var(--space-3);right:var(--space-3);border-radius:var(--radius-full);width:32px;height:32px;color:var(--color-text-tertiary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex;position:absolute}.welcome-close-btn:hover{color:var(--color-error);background:0 0}.welcome-icon-wrapper{border-radius:var(--radius-full);background:linear-gradient(135deg,var(--color-primary-container),var(--color-secondary-container,var(--color-primary-container)));width:64px;height:64px;margin-bottom:var(--space-4);justify-content:center;align-items:center;display:flex}.welcome-icon{color:var(--color-primary)}.welcome-title{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--color-text);margin:0 0 var(--space-3)}.welcome-text{font-size:var(--text-sm);color:var(--color-text-secondary);margin:0 0 var(--space-4);line-height:1.6}.welcome-text strong{color:var(--color-text);font-weight:var(--font-medium)}.welcome-beta-block{align-items:center;gap:var(--space-3);padding:var(--space-3)var(--space-4);background:var(--color-surface-variant);border-radius:var(--radius-lg);text-align:left;width:100%;margin-bottom:var(--space-5);display:flex}.welcome-beta-icon{border-radius:var(--radius-md);background:var(--color-surface);width:36px;min-width:36px;height:36px;color:var(--color-text-secondary);border:1px solid var(--color-outline-variant);justify-content:center;align-items:center;display:flex}.welcome-beta-text{font-size:var(--text-sm);color:var(--color-text-secondary);margin:0;line-height:1.5}.welcome-bug-highlight{border-radius:var(--radius-sm);background:var(--color-surface);border:1px solid var(--color-outline-variant);vertical-align:middle;width:22px;height:22px;color:var(--color-text-secondary);justify-content:center;align-items:center;margin:0 2px;display:inline-flex}.page-header{margin-bottom:var(--space-8);justify-content:space-between;align-items:center;gap:var(--space-4);max-width:1200px;z-index:var(--z-sticky);margin-left:auto;margin-right:auto;display:flex;position:relative}.page-title{font-size:var(--text-3xl);font-weight:var(--font-bold);margin-bottom:var(--space-2);color:var(--color-text)}.page-subtitle{color:var(--color-text-secondary);font-size:var(--text-base);line-height:1.6}.page-actions{gap:var(--space-3);margin-top:var(--space-4);display:flex}@media (min-width:769px){body.home-page-active{overflow:hidden}body.home-page-active #main-content{flex-direction:column;justify-content:center;height:100vh;display:flex;overflow:hidden}}@media (max-width:768px){body.home-page-active{overflow:auto}body.home-page-active #main-content{height:auto;overflow:auto}}.home-page{width:100%;max-width:100%;padding:var(--space-8)clamp(var(--space-2),1vw,var(--space-4));box-sizing:border-box;flex-direction:column;justify-content:center;min-height:100%;display:flex;position:relative}.home-page .page-header,.home-page .quick-stats,.home-page .home-content{width:100%;max-width:min(1000px,100vw - 300px - 3rem);margin-left:auto;margin-right:auto}.home-page .page-header{margin-bottom:var(--space-8);text-align:center;flex-direction:column;align-items:center;display:flex}.home-page .header-content{width:100%}.home-page .home-greeting-row{justify-content:center;align-items:center;gap:var(--space-4);display:inline-flex}.home-page .header-auth{align-items:center;display:inline-flex;position:static}.home-page .page-title{font-size:clamp(var(--text-3xl),3vw,var(--text-5xl));font-weight:var(--font-bold);line-height:1.2}.home-page .page-subtitle{font-size:clamp(var(--text-lg),1.5vw,var(--text-xl));margin-top:var(--space-4);color:var(--color-text-tertiary)}.home-subject-divider{width:min(360px,75%);height:1px;margin:var(--space-4)auto 0;background:linear-gradient(90deg,transparent 0%,var(--color-primary-container-hover)20%,var(--color-primary)50%,var(--color-primary-container-hover)80%,transparent 100%)}@supports (color:color-mix(in lab, red, red)){.home-subject-divider{background:linear-gradient(90deg,transparent 0%,color-mix(in srgb,var(--color-primary-container-hover)50%,transparent)20%,color-mix(in srgb,var(--color-primary)55%,transparent)50%,color-mix(in srgb,var(--color-primary-container-hover)50%,transparent)80%,transparent 100%)}}.home-subject-divider{position:relative}.home-subject-divider:before{content:"";background:linear-gradient(90deg,transparent 0%,var(--color-primary-container)20%,var(--color-primary-container-hover)50%,var(--color-primary-container)80%,transparent 100%);height:5px;position:absolute;top:-2px;left:0;right:0}@supports (color:color-mix(in lab, red, red)){.home-subject-divider:before{background:linear-gradient(90deg,transparent 0%,color-mix(in srgb,var(--color-primary-container)50%,transparent)20%,color-mix(in srgb,var(--color-primary-container-hover)55%,transparent)50%,color-mix(in srgb,var(--color-primary-container)50%,transparent)80%,transparent 100%)}}.home-subject-divider:before{filter:blur(5px);pointer-events:none}.profile-quick-btn{flex-shrink:0}.home-stats-row{gap:var(--space-6);margin-bottom:var(--space-10);z-index:1;flex-wrap:wrap;justify-content:center;width:100%;max-width:min(1000px,100vw - 300px - 3rem);margin-left:auto;margin-right:auto;display:flex;position:relative}.home-stat-pill{align-items:center;gap:var(--space-3);padding:var(--space-2)var(--space-4);border-radius:var(--radius-full,9999px);cursor:pointer;-webkit-user-select:none;user-select:none;background:0 0;border:none;transition:all .25s;display:flex}.home-stat-pill:hover{opacity:.8;background:0 0;transform:translateY(-1px)}.home-stat-pill svg{flex-shrink:0}.home-stat-pill.notes svg{color:#8b5cf6}.home-stat-pill.cards svg{color:#3b82f6}.home-stat-pill.tests svg{color:#10b981}.home-stat-pill.streak svg{color:#f97316}.home-stat-pill-value{font-size:var(--text-base);font-weight:var(--font-bold);color:var(--color-text)}.home-stat-pill-label{font-size:var(--text-sm);color:var(--color-text-secondary)}.home-content{width:100%;display:block}.home-divider{background:linear-gradient(90deg,transparent,var(--color-primary),transparent);width:100px;height:2px}@supports (color:color-mix(in lab, red, red)){.home-divider{background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--color-primary)50%,transparent),transparent)}}.home-divider{margin:var(--space-8)auto}.modules-section{margin-top:0;margin-bottom:var(--space-6)}.home-modules-grid{gap:clamp(var(--space-3),2vw,var(--space-5));grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;max-width:min(900px,95vw - 285px - 2.85rem);margin:0 auto;display:grid}.home-module-card{text-align:center;align-items:center;gap:var(--space-3);padding:clamp(var(--space-5),3vw,var(--space-8))clamp(var(--space-4),2vw,var(--space-6));border-radius:var(--radius-xl,16px);background:var(--color-surface);flex-direction:column;display:flex;position:relative}@supports (color:color-mix(in lab, red, red)){.home-module-card{background:color-mix(in srgb,var(--color-surface)50%,transparent)}}.home-module-card{-webkit-backdrop-filter:blur(12px);border:1px solid var(--color-outline-variant)}@supports (color:color-mix(in lab, red, red)){.home-module-card{border:1px solid color-mix(in srgb,var(--color-outline-variant)25%,transparent)}}.home-module-card{cursor:pointer;color:inherit;font:inherit;text-decoration:none;transition:all .35s cubic-bezier(.4,0,.2,1);overflow:hidden}.home-module-card:hover{transform:translateY(-4px)}.home-module-card:active{transform:translateY(-1px)}.home-module-icon{z-index:1;transition:transform .3s;position:relative}.home-module-card:hover .home-module-icon{transform:scale(1.1)}.home-module-card.notes .home-module-icon{color:#8b5cf6}.home-module-card.cards .home-module-icon{color:#3b82f6}.home-module-card.tests .home-module-icon{color:#10b981}.home-module-body{z-index:1;gap:var(--space-2);flex-direction:column;flex:1;display:flex;position:relative}.home-module-title{font-size:clamp(var(--text-base),1.3vw,var(--text-xl));font-weight:var(--font-bold);color:var(--color-text);line-height:1.3}.home-module-desc{font-size:clamp(var(--text-sm),.95vw,var(--text-base));color:var(--color-text-secondary);line-height:1.55}.home-module-arrow{z-index:1;color:var(--color-text-tertiary);opacity:0;transition:all .3s;position:relative;transform:translate(-4px)}.home-module-card:hover .home-module-arrow{opacity:1;transform:translate(0)}.home-module-card.magic-bento-card--border-glow:before{content:"";border-radius:inherit;background:radial-gradient(circle at var(--glow-x,50%)var(--glow-y,50%),rgba(var(--magic-bento-glow-color,132,0,255),calc(.14*var(--glow-intensity,0)))0%,transparent 60%);pointer-events:none;z-index:0;opacity:1;transition:opacity .3s;position:absolute;inset:0}@media (max-width:768px){.home-page{padding:var(--space-3)var(--space-3)var(--space-4);box-sizing:border-box;width:100%;max-width:100%}.home-page .page-title{font-size:var(--text-3xl)}.home-page .page-header{margin-bottom:var(--space-3)}.home-stats-row{gap:var(--space-2);margin-bottom:var(--space-4);max-width:100%}.home-stat-pill{padding:var(--space-1)var(--space-3);font-size:var(--text-sm)}.home-stat-pill-label{display:none}.home-content{box-sizing:border-box;width:100%;max-width:100%}.modules-section{margin-bottom:var(--space-4);box-sizing:border-box;width:100%;max-width:100%}.home-modules-grid{gap:var(--space-2);grid-template-columns:repeat(3,minmax(0,1fr));max-width:100%}.home-module-card{text-align:center;min-width:0;padding:var(--space-3)var(--space-2);align-items:center;gap:var(--space-2);flex-direction:column}.home-module-icon{width:24px;height:24px}.home-module-body{gap:var(--space-1);width:100%;min-width:0}.home-module-title{font-size:clamp(14px,2.4vw,16px);line-height:1.2}.home-module-desc{display:none}.home-module-arrow{opacity:.5;width:16px;height:16px;transform:none}}@media (max-width:480px){.page-header{flex-direction:column;align-items:flex-start!important;gap:var(--space-3)!important}.home-stat-pill{padding:var(--space-1)var(--space-2);gap:var(--space-1)}.home-stat-pill-value{font-size:var(--text-sm)}.home-modules-grid{gap:6px}.home-module-card{border-radius:var(--radius-lg);padding:10px 6px}.home-module-icon{width:20px;height:20px}.home-module-title{font-size:13px}}@media (max-width:1024px){.home-page{max-width:100%;padding:var(--space-4)}.home-page .page-header,.home-page .quick-stats,.home-page .home-content{width:100%!important;max-width:100%!important}.home-page .page-header{text-align:center;align-items:center;gap:var(--space-4);flex-direction:column}.home-page .header-content{text-align:center;width:100%}.home-page .home-greeting-row{justify-content:center;width:100%}.home-page .header-auth{z-index:auto;position:static}}@media (max-width:768px){.home-page{padding:var(--space-3)}.home-page .page-header,.home-page .quick-stats,.home-page .home-content{width:100%!important;max-width:100%!important}.home-page .page-header{text-align:center;align-items:center;gap:var(--space-4);margin-top:var(--space-2);flex-direction:column;position:relative}.home-page .header-content{text-align:center;width:100%}.home-page .home-greeting-row{gap:var(--space-3);justify-content:center;width:100%}.home-page .header-auth{z-index:auto;align-items:center;width:auto;height:auto;display:flex;position:static;transform:none}}.notes-page{gap:var(--space-6);height:calc(100vh - var(--space-16));display:flex}.notes-main{flex-direction:column;flex:1;order:1;min-width:0;display:flex}.notes-sidebar{background:var(--color-surface);border:1px solid var(--color-outline-variant);border-radius:var(--radius-lg);flex-direction:column;flex-shrink:0;order:2;width:280px;display:flex}.notes-sidebar .sidebar-header{padding:var(--space-4);border-bottom:1px solid var(--color-outline-variant);justify-content:space-between;align-items:center;display:flex}.notes-sidebar .sidebar-header h2{font-size:var(--text-base);font-weight:var(--font-semibold)}.notes-sidebar .sidebar-actions{gap:var(--space-1);display:flex}.notes-sidebar .sidebar-footer{padding:var(--space-3);border-top:1px solid var(--color-outline-variant)}.tree-item{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-3);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);margin-bottom:var(--space-1);-webkit-user-select:none;user-select:none;display:flex}.tree-item:hover{background:var(--color-surface-container-high)}.tree-item.active{background:var(--color-primary-container);color:var(--color-primary)}.tree-item svg{flex-shrink:0;width:18px;height:18px}.tree-item-name{font-size:var(--text-sm);white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.tree-expand{width:16px;height:16px;color:var(--color-text-tertiary);transition:transform var(--transition-fast)}.tree-item.expanded .tree-expand{transform:rotate(90deg)}.tree-children{padding-left:var(--space-5)}.editor-header-bar{padding:var(--space-3)var(--space-4);border-bottom:1px solid var(--color-outline-variant);align-items:center;gap:var(--space-3);background:var(--color-surface);flex-shrink:0;display:flex}.note-title-input{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--color-text);padding:var(--space-2);border-radius:var(--radius-md);transition:background var(--transition-fast);background:0 0;border:none;flex:1}.note-title-input:hover{background:var(--color-surface-container)}.note-title-input:focus{background:var(--color-surface-container-high);outline:none}.header-actions{gap:var(--space-1);display:flex}.mode-toggle{position:relative}.mode-toggle.reading{color:var(--color-primary)}.mode-toggle.editing{color:var(--color-success)}.editor-unified-area{flex:1;position:relative;overflow-y:auto}.editor-unified-area.read-mode{cursor:text}.editor-unified-area.edit-mode{flex-direction:column;display:flex}.editor-unified-area .note-textarea{width:100%;padding:var(--space-5);resize:none;font-family:var(--font-mono);font-size:var(--text-sm);color:var(--color-text);background:0 0;border:none;flex:1;line-height:1.8}.editor-unified-area .note-textarea:focus{outline:none}.editor-unified-area .note-preview{padding:var(--space-5);line-height:1.8}.editor-bottom-toolbar{border-top:1px solid var(--color-outline-variant);background:var(--color-surface);transition:all var(--transition-base);flex-direction:column;flex-shrink:0;display:flex}.editor-bottom-toolbar.collapsed .toolbar-content{display:none}.toolbar-collapse-btn{width:100%;padding:var(--space-2);cursor:pointer;color:var(--color-text-tertiary);transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.toolbar-collapse-btn:hover{background:var(--color-surface-container);color:var(--color-text)}.toolbar-collapse-btn svg{width:16px;height:16px}.toolbar-content{padding:var(--space-3)var(--space-4);align-items:center;gap:var(--space-2);border-bottom:1px solid var(--color-outline-variant);flex-wrap:wrap;display:flex}.toolbar-content.disabled{opacity:.5;pointer-events:none}.toolbar-group{gap:var(--space-1);display:flex}.toolbar-divider{background:var(--color-outline-variant);width:1px;height:24px;margin:0 var(--space-2)}.format-btn{padding:var(--space-2);border-radius:var(--radius-md);cursor:pointer;color:var(--color-text-secondary);font-size:var(--text-sm);font-weight:var(--font-medium);transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;min-width:32px;height:32px;display:flex}.format-btn:hover:not(:disabled){background:var(--color-surface-container-high);color:var(--color-text)}.format-btn:active:not(:disabled){background:var(--color-primary-container);color:var(--color-primary)}.format-btn:disabled{opacity:.4;cursor:not-allowed}.format-btn svg{width:18px;height:18px}.format-btn.ai-btn{color:var(--color-primary,#818cf8)}.format-btn.ai-btn:hover:not(:disabled){background:var(--color-primary)}@supports (color:color-mix(in lab, red, red)){.format-btn.ai-btn:hover:not(:disabled){background:color-mix(in srgb,var(--color-primary)12%,transparent)}}.format-btn.ai-btn:hover:not(:disabled){color:var(--color-primary-hover,#6366f1)}.format-btn.ai-btn:active:not(:disabled){background:var(--color-primary)}@supports (color:color-mix(in lab, red, red)){.format-btn.ai-btn:active:not(:disabled){background:color-mix(in srgb,var(--color-primary)20%,transparent)}}.format-btn.ai-btn:active:not(:disabled){color:var(--color-primary-hover,#6366f1)}.toolbar-status{padding:var(--space-2)var(--space-4);align-items:center;gap:var(--space-4);font-size:var(--text-xs);color:var(--color-text-tertiary);display:flex}.toolbar-status .status-item{align-items:center;gap:var(--space-1);display:flex}.toolbar-status .status-item svg{width:14px;height:14px}.editor-header{padding:var(--space-3)var(--space-4);border-bottom:1px solid var(--color-outline-variant);justify-content:space-between;align-items:center;display:flex}.editor-tabs{gap:var(--space-1);display:flex}.editor-tab{padding:var(--space-2)var(--space-3);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none}.editor-tab:hover{color:var(--color-text)}.editor-tab.active{background:var(--color-primary-container);color:var(--color-primary)}.editor-toolbar{gap:var(--space-1);display:flex}.editor-content{flex:1;overflow-y:auto}.editor-textarea{width:100%;height:100%;padding:var(--space-5);resize:none;font-family:var(--font-mono);font-size:var(--text-sm);color:var(--color-text);background:0 0;border:none;line-height:1.7}.editor-textarea:focus{outline:none}.editor-preview{padding:var(--space-5);height:100%;overflow-y:auto}.markdown-preview{line-height:1.8}.markdown-preview h1{font-size:var(--text-3xl);margin-top:var(--space-6);margin-bottom:var(--space-4)}.markdown-preview h2{font-size:var(--text-2xl);margin-top:var(--space-5);margin-bottom:var(--space-3)}.markdown-preview h3{font-size:var(--text-xl);margin-top:var(--space-4);margin-bottom:var(--space-2)}.markdown-preview h4{font-size:var(--text-lg);margin-top:var(--space-4);margin-bottom:var(--space-2)}.markdown-preview p{margin-bottom:var(--space-4);color:var(--color-text)}.markdown-preview ul,.markdown-preview ol{margin-bottom:var(--space-4)}.markdown-preview blockquote{padding:var(--space-4);background:var(--color-surface-container);border-left:4px solid var(--color-primary);margin:var(--space-4)0;border-radius:0 var(--radius-md)var(--radius-md)0}.markdown-preview pre{margin:var(--space-4)0;border-radius:var(--radius-lg)}.markdown-preview table{border-collapse:collapse;width:100%;margin:var(--space-4)0}.markdown-preview th,.markdown-preview td{padding:var(--space-3);border:1px solid var(--color-outline-variant);text-align:left}.markdown-preview th{background:var(--color-surface-container);font-weight:var(--font-semibold)}.callout{padding:var(--space-4);border-radius:var(--radius-md);margin:var(--space-4)0;border:none;flex-direction:column;display:flex}.callout-title{font-weight:var(--font-semibold);align-items:center;gap:.75rem;margin-bottom:.75rem;font-size:1.1em;line-height:1.2;display:flex}.callout-icon{justify-content:center;align-items:center;font-size:1.25em;line-height:1;display:inline-flex}.callout-content{font-size:1em;line-height:1.6}.callout-content *{color:inherit!important}.callout-content strong,.callout-content b{font-weight:var(--font-bold);color:inherit!important}.callout-note,.callout-abstract,.callout-summary,.callout-tldr,.callout-info,.callout-glyph{color:#4483f2;background:#4483f21a}.callout-note *,.callout-abstract *,.callout-summary *,.callout-tldr *,.callout-info *,.callout-glyph *{color:#4483f2}.callout-tip,.callout-hint,.callout-success,.callout-check,.callout-done{color:#10b981;background:#10b98114}.callout-tip *,.callout-hint *,.callout-success *,.callout-check *,.callout-done *{color:#10b981}.callout-important,.callout-question,.callout-help,.callout-faq{color:#a855f7;background:#a855f71a}.callout-important *,.callout-question *,.callout-help *,.callout-faq *{color:#a855f7}.callout-warning,.callout-caution,.callout-attention{color:#fb923c;background:#fb923c1a}.callout-warning *,.callout-caution *,.callout-attention *{color:#fb923c}.callout-danger,.callout-failure,.callout-fail,.callout-missing,.callout-error,.callout-bug{color:#f43f5e;background:#f43f5e1a}.callout-danger *,.callout-failure *,.callout-fail *,.callout-missing *,.callout-error *,.callout-bug *{color:#f43f5e}.callout-example,.callout-quote,.callout-cite{color:#22d3ee;background:#22d3ee1a}.callout-example *,.callout-quote *,.callout-cite *{color:#22d3ee}.cards-page{gap:var(--space-6);height:calc(100vh - var(--space-16));display:flex}.cards-main{flex-direction:column;flex:1;order:1;min-width:0;display:flex}.decks-sidebar{background:var(--color-surface);border:1px solid var(--color-outline-variant);border-radius:var(--radius-lg);flex-direction:column;flex-shrink:0;order:2;width:320px;display:flex}.decks-list{gap:var(--space-3);padding:var(--space-3);flex-direction:column;flex:1;display:flex;overflow-y:auto}.review-screen{padding:var(--space-8);flex-direction:column;flex:1;justify-content:center;align-items:center;display:flex}.review-progress{width:100%;max-width:600px;margin-bottom:var(--space-6);align-items:center;gap:var(--space-4);display:flex}.review-stats{gap:var(--space-4);font-size:var(--text-sm);display:flex}.review-stat{align-items:center;gap:var(--space-1);display:flex}.review-stat-value{font-weight:var(--font-semibold)}.review-new{color:var(--color-new)}.review-learning{color:var(--color-learning)}.review-review{color:var(--color-review)}.cards-welcome{text-align:center;padding:var(--space-8);flex-direction:column;flex:1;justify-content:center;align-items:center;display:flex}.cards-welcome .welcome-icon{background:var(--color-primary-container);border-radius:var(--radius-xl);width:80px;height:80px;margin-bottom:var(--space-6);justify-content:center;align-items:center;display:flex}.cards-welcome .welcome-icon svg{width:40px;height:40px;color:var(--color-primary)}.cards-welcome h2{font-size:var(--text-2xl);margin-bottom:var(--space-2)}.cards-welcome>p{color:var(--color-text-secondary);margin-bottom:var(--space-6)}.cards-welcome .welcome-actions{gap:var(--space-3);margin-bottom:var(--space-8);display:flex}.today-stats-compact{gap:var(--space-6);padding:var(--space-4);background:var(--color-surface-container);border-radius:var(--radius-lg);display:flex}.today-stats-compact .stat{align-items:center;gap:var(--space-2);display:flex}.today-stats-compact .stat-value{font-size:var(--text-xl);font-weight:var(--font-bold)}.today-stats-compact .stat-value.due{color:var(--color-warning)}.today-stats-compact .stat-value.new{color:var(--color-info)}.today-stats-compact .stat-value.learned{color:var(--color-success)}.today-stats-compact .stat-label{font-size:var(--text-sm);color:var(--color-text-secondary)}.deck-content{flex-direction:column;flex:1;display:flex;overflow:hidden}.deck-header-main{padding-bottom:var(--space-4);margin-bottom:var(--space-4);border-bottom:1px solid var(--color-outline-variant);justify-content:space-between;align-items:center;display:flex}.deck-header-main h2{font-size:var(--text-2xl);font-weight:var(--font-semibold)}.deck-stats-main{gap:var(--space-4);margin-bottom:var(--space-6);display:flex}.deck-stats-main .stat{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-3);background:var(--color-surface-container);border-radius:var(--radius-md);font-size:var(--text-sm);display:flex}.deck-stats-main .stat svg{width:16px;height:16px;color:var(--color-text-tertiary)}.decks-sidebar-header{padding:var(--space-4);border-bottom:1px solid var(--color-outline-variant);justify-content:space-between;align-items:center;display:flex}.decks-sidebar-header h3{font-size:var(--text-base);font-weight:var(--font-semibold)}.deck-item{align-items:center;gap:var(--space-3);padding:var(--space-3);background:var(--color-surface);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);border:1px solid #0000;display:flex}.deck-item:hover{background:var(--color-surface-container);border-color:var(--color-outline-variant)}.deck-item.active{background:var(--color-primary-container);border-color:var(--color-primary)}.deck-item .deck-color{border-radius:var(--radius-sm);flex-shrink:0;width:4px;height:32px}.deck-item .deck-info{flex:1;min-width:0}.deck-item .deck-name{font-size:var(--text-sm);font-weight:var(--font-medium);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.deck-item .deck-meta{font-size:var(--text-xs);color:var(--color-text-tertiary);gap:var(--space-2);display:flex}.cards-grid-container{flex:1;overflow-y:auto}.card-item{background:var(--color-card);border:1px solid var(--color-card-border);border-radius:var(--radius-lg);padding:var(--space-4);transition:all var(--transition-fast)}.card-item:hover{border-color:var(--color-primary);box-shadow:var(--shadow-sm)}.card-item .card-front{font-weight:var(--font-medium);margin-bottom:var(--space-2);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.card-item .card-back{font-size:var(--text-sm);color:var(--color-text-secondary);-webkit-line-clamp:2;line-clamp:2;margin-bottom:var(--space-3);-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.card-item .card-actions{gap:var(--space-2);opacity:0;transition:opacity var(--transition-fast);display:flex}.card-item:hover .card-actions{opacity:1}.empty-deck{text-align:center;padding:var(--space-8);color:var(--color-text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;display:flex}.empty-deck svg{width:48px;height:48px;color:var(--color-outline);margin-bottom:var(--space-4)}.empty-deck h3{margin-bottom:var(--space-2);color:var(--color-text)}.empty-deck p{margin-bottom:var(--space-4)}.tests-page{max-width:900px}.test-config{background:var(--color-card);border:1px solid var(--color-card-border);border-radius:var(--radius-xl);padding:var(--space-6);margin-bottom:var(--space-6)}.config-section{margin-bottom:var(--space-6)}.config-section:last-child{margin-bottom:0}.config-title{font-size:var(--text-base);font-weight:var(--font-semibold);margin-bottom:var(--space-3)}.question-types{gap:var(--space-2);flex-wrap:wrap;display:flex}.type-chip{padding:var(--space-2)var(--space-4);background:var(--color-surface);border:1px solid var(--color-outline-variant);border-radius:var(--radius-full);font-size:var(--text-sm);cursor:pointer;transition:all var(--transition-fast)}.type-chip:hover{border-color:var(--color-primary)}.type-chip.active{background:var(--color-primary-container);border-color:var(--color-primary);color:var(--color-primary)}.test-question{background:var(--color-card);border:1px solid var(--color-card-border);border-radius:var(--radius-xl);padding:var(--space-6);margin-bottom:var(--space-4)}.question-header{margin-bottom:var(--space-4);justify-content:space-between;align-items:center;display:flex}.question-number{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-primary)}.question-type-badge{font-size:var(--text-xs);padding:var(--space-1)var(--space-2);background:var(--color-surface-container);border-radius:var(--radius-full);color:var(--color-text-secondary)}.question-text{font-size:var(--text-lg);font-weight:var(--font-medium);margin-bottom:var(--space-5)}.question-options{gap:var(--space-2);flex-direction:column;display:flex}.question-option{align-items:flex-start;gap:var(--space-3);padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-outline-variant);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast);display:flex}.question-option:hover{border-color:var(--color-primary)}.question-option.selected{border-color:var(--color-primary);background:var(--color-primary-container)}.question-option.correct{border-color:var(--color-success);background:var(--color-success-container)}.question-option.incorrect{border-color:var(--color-error);background:var(--color-error-container)}.option-marker{border:2px solid var(--color-outline);border-radius:var(--radius-full);width:24px;height:24px;font-size:var(--text-sm);font-weight:var(--font-medium);flex-shrink:0;justify-content:center;align-items:center;display:flex}.question-option.selected .option-marker{border-color:var(--color-primary);background:var(--color-primary);color:var(--color-on-primary)}.option-text{flex:1}.test-results{background:var(--color-card);border:1px solid var(--color-card-border);border-radius:var(--radius-xl);padding:var(--space-8);text-align:center}.results-score{font-size:var(--text-4xl);font-weight:var(--font-bold);color:var(--color-primary);margin-bottom:var(--space-2)}.results-label{color:var(--color-text-secondary);margin-bottom:var(--space-6)}.results-breakdown{justify-content:center;gap:var(--space-8);margin-bottom:var(--space-6);display:flex}.result-item{text-align:center}.result-value{font-size:var(--text-2xl);font-weight:var(--font-semibold)}.result-value.correct{color:var(--color-success)}.result-value.incorrect{color:var(--color-error)}.result-label{font-size:var(--text-sm);color:var(--color-text-secondary)}.question-explanation{margin-top:var(--space-4);padding:var(--space-4);background:var(--color-surface-container);border-radius:var(--radius-md);border-left:4px solid var(--color-info)}.explanation-title{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-info);margin-bottom:var(--space-2)}.explanation-text{font-size:var(--text-sm);color:var(--color-text-secondary)}.generate-section{background:var(--color-card);border:1px solid var(--color-card-border);border-radius:var(--radius-xl);padding:var(--space-6);margin-bottom:var(--space-6)}.generate-header{align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);display:flex}.generate-icon{background:linear-gradient(135deg,var(--color-primary),var(--color-primary-hover));border-radius:var(--radius-md);justify-content:center;align-items:center;width:40px;height:40px;display:flex}.generate-icon svg{width:20px;height:20px;color:var(--color-on-primary)}.generate-title{font-size:var(--text-lg);font-weight:var(--font-semibold)}.generate-subtitle{font-size:var(--text-sm);color:var(--color-text-secondary)}.generate-form{gap:var(--space-4);flex-direction:column;display:flex}.tests-page{height:100%}.tests-layout{gap:var(--space-4);height:100%;display:flex}.tests-list{padding:var(--space-2);flex:1;overflow-y:auto}.test-item{padding:var(--space-3);border-radius:var(--radius-md);margin-bottom:var(--space-2);cursor:pointer;transition:all var(--transition-fast);border:1px solid #0000;justify-content:space-between;align-items:center;display:flex}.test-item:hover{background:var(--color-hover)}.test-item.active{background:var(--color-primary-container);border-color:var(--color-primary)}.test-item-content{flex:1;min-width:0}.test-item-title{font-weight:var(--font-medium);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.test-item-meta{font-size:var(--text-xs);color:var(--color-text-secondary);gap:var(--space-2);display:flex}.test-score{font-weight:var(--font-semibold)}.test-score.excellent{color:var(--color-success)}.test-score.good{color:var(--color-primary)}.test-score.average{color:var(--color-warning)}.test-score.poor{color:var(--color-error)}.test-item-actions{gap:var(--space-1);opacity:0;transition:opacity var(--transition-fast);display:flex}.test-item:hover .test-item-actions{opacity:1}.tests-welcome{padding:var(--space-8);text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;display:flex}.tests-welcome .welcome-icon{background:var(--color-primary-container);border-radius:var(--radius-xl);width:80px;height:80px;margin-bottom:var(--space-6);justify-content:center;align-items:center;display:flex}.tests-welcome .welcome-icon svg{width:40px;height:40px;color:var(--color-primary)}.tests-welcome h2{font-size:var(--text-2xl);margin-bottom:var(--space-2)}.tests-welcome p{color:var(--color-text-secondary);margin-bottom:var(--space-6)}.test-create-form{flex-direction:column;height:100%;display:flex}.test-create-form .form-header{padding:var(--space-4)var(--space-6);border-bottom:1px solid var(--color-card-border);justify-content:space-between;align-items:center;display:flex}.test-create-form .form-header h2{font-size:var(--text-xl);font-weight:var(--font-semibold)}.test-create-form .form-body{padding:var(--space-6);gap:var(--space-6);flex-direction:column;flex:1;display:flex;overflow-y:auto}.test-create-form .form-footer{padding:var(--space-4)var(--space-6);border-top:1px solid var(--color-card-border);justify-content:flex-end;gap:var(--space-3);display:flex}.slider-container{align-items:center;gap:var(--space-4);display:flex}.slider-container input[type=range]{background:var(--color-hover);appearance:none;cursor:pointer;border-radius:2px;flex:1;height:4px}.slider-container input[type=range]::-webkit-slider-thumb{appearance:none;background:var(--color-primary);cursor:pointer;width:16px;height:16px;transition:transform var(--transition-fast);border-radius:50%}.slider-container input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.2)}.slider-value{text-align:center;min-width:40px;font-weight:var(--font-semibold);color:var(--color-primary)}.test-screen{flex-direction:column;height:100%;display:flex}.test-header{padding:var(--space-4)var(--space-6);border-bottom:1px solid var(--color-card-border)}.test-progress{background:var(--color-hover);height:4px;margin-bottom:var(--space-3);border-radius:2px;overflow:hidden}.test-progress-bar{background:var(--color-primary);height:100%;transition:width var(--transition-base);border-radius:2px}.test-info{justify-content:space-between;align-items:center;display:flex}.test-counter{font-size:var(--text-sm);color:var(--color-text-secondary)}.test-question{padding:var(--space-6);flex:1;overflow-y:auto}.question-type-badge{padding:var(--space-1)var(--space-2);font-size:var(--text-xs);font-weight:var(--font-medium);border-radius:var(--radius-sm);background:var(--color-primary-container);color:var(--color-primary);margin-bottom:var(--space-3);display:inline-block}.question-text{font-size:var(--text-xl);font-weight:var(--font-medium);margin-bottom:var(--space-6);line-height:1.5}.question-answers{gap:var(--space-3);flex-direction:column;display:flex}.answer-option{align-items:center;gap:var(--space-3);padding:var(--space-4);background:var(--color-card);border:2px solid var(--color-card-border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);display:flex}.answer-option:hover{border-color:var(--color-primary);background:var(--color-hover)}.answer-option.selected{border-color:var(--color-primary);background:var(--color-primary-container)}.answer-option input{display:none}.answer-marker{border:2px solid var(--color-card-border);width:20px;height:20px;transition:all var(--transition-fast);border-radius:50%;flex-shrink:0;position:relative}.answer-option.checkbox .answer-marker{border-radius:var(--radius-sm)}.answer-option.selected .answer-marker{border-color:var(--color-primary);background:var(--color-primary)}.answer-option.selected .answer-marker:after{content:"";background:var(--color-on-primary);border-radius:50%;width:8px;height:8px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.answer-option.checkbox.selected .answer-marker:after{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E") 50%/contain no-repeat;border-radius:0;width:10px;height:10px}.answer-text{flex:1}.matching-question{gap:var(--space-3);flex-direction:column;display:flex}.matching-item{align-items:center;gap:var(--space-4);padding:var(--space-3);background:var(--color-card);border:1px solid var(--color-card-border);border-radius:var(--radius-md);display:flex}.matching-text{font-weight:var(--font-medium);flex:1}.matching-select{min-width:200px;padding:var(--space-2)var(--space-3);background:var(--color-surface);border:1px solid var(--color-card-border);border-radius:var(--radius-sm);font-size:var(--text-sm)}.open-answer textarea{width:100%;padding:var(--space-4);background:var(--color-surface);border:2px solid var(--color-card-border);border-radius:var(--radius-md);font-size:var(--text-base);resize:vertical;min-height:120px;line-height:1.5}.open-answer textarea:focus{border-color:var(--color-primary);outline:none}.test-footer{padding:var(--space-4)var(--space-6);border-top:1px solid var(--color-card-border);justify-content:space-between;align-items:center;display:flex}.question-dots{gap:var(--space-2);flex-wrap:wrap;justify-content:center;display:flex}.question-dots .dot{background:var(--color-hover);cursor:pointer;width:10px;height:10px;transition:all var(--transition-fast);border-radius:50%}.question-dots .dot:hover{background:var(--color-text-secondary)}.question-dots .dot.current{background:var(--color-primary);transform:scale(1.2)}.question-dots .dot.answered{background:var(--color-success)}.test-results{flex-direction:column;height:100%;display:flex}.results-header{padding:var(--space-8);text-align:center;background:var(--color-primary-container)}.results-header.excellent{background:var(--color-success)}@supports (color:color-mix(in lab, red, red)){.results-header.excellent{background:color-mix(in srgb,var(--color-success)15%,transparent)}}.results-header.good{background:var(--color-primary-container)}.results-header.average{background:var(--color-warning)}@supports (color:color-mix(in lab, red, red)){.results-header.average{background:color-mix(in srgb,var(--color-warning)15%,transparent)}}.results-header.poor{background:var(--color-error)}@supports (color:color-mix(in lab, red, red)){.results-header.poor{background:color-mix(in srgb,var(--color-error)15%,transparent)}}.results-score{margin-bottom:var(--space-4)}.score-value{font-size:var(--text-5xl);font-weight:var(--font-bold);color:var(--color-text)}.score-label{color:var(--color-text-secondary);font-size:var(--text-sm);display:block}.results-stats{justify-content:center;gap:var(--space-6);display:flex}.results-stats .stat{align-items:center;gap:var(--space-2);color:var(--color-text-secondary);display:flex}.results-stats .stat svg{width:18px;height:18px}.results-body{padding:var(--space-6);flex:1;overflow-y:auto}.results-body h3{font-size:var(--text-lg);font-weight:var(--font-semibold);margin-bottom:var(--space-4)}.results-questions{gap:var(--space-4);flex-direction:column;display:flex}.result-question{padding:var(--space-4);border:1px solid var(--color-card-border);border-radius:var(--radius-md)}.result-question.correct{border-left:4px solid var(--color-success)}.result-question.incorrect{border-left:4px solid var(--color-error)}.result-question-header{margin-bottom:var(--space-2);justify-content:space-between;align-items:center;display:flex}.result-number{font-size:var(--text-sm);color:var(--color-text-secondary)}.result-status{align-items:center;gap:var(--space-1);font-size:var(--text-sm);font-weight:var(--font-medium);display:flex}.result-question.correct .result-status{color:var(--color-success)}.result-question.incorrect .result-status{color:var(--color-error)}.result-status svg{width:16px;height:16px}.result-question-text{margin-bottom:var(--space-3)}.result-answers{padding:var(--space-3);background:var(--color-hover);border-radius:var(--radius-sm);font-size:var(--text-sm)}.result-user-answer,.result-correct-answer{gap:var(--space-2);margin-bottom:var(--space-2);display:flex}.result-correct-answer{margin-bottom:0}.result-answers .label{color:var(--color-text-secondary);min-width:140px}.result-user-answer .value{color:var(--color-error)}.result-correct-answer .value{color:var(--color-success);font-weight:var(--font-medium)}.result-explanation{margin-top:var(--space-3);padding:var(--space-3);background:var(--color-primary-container);border-radius:var(--radius-sm);font-size:var(--text-sm);align-items:flex-start;gap:var(--space-2);display:flex}.result-explanation svg{width:16px;height:16px;color:var(--color-primary);flex-shrink:0;margin-top:2px}.results-footer{padding:var(--space-4)var(--space-6);border-top:1px solid var(--color-card-border);justify-content:flex-end;gap:var(--space-3);display:flex}.test-details{padding:var(--space-8);text-align:center}.test-details h2{font-size:var(--text-2xl);margin-bottom:var(--space-4)}.test-meta{justify-content:center;gap:var(--space-4);margin-bottom:var(--space-6);color:var(--color-text-secondary);display:flex}.test-meta span{align-items:center;gap:var(--space-2);display:flex}.test-meta svg{width:16px;height:16px}.test-actions{justify-content:center;display:flex}.generation-progress{padding:var(--space-8);text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;display:flex}.generation-progress h3{margin-top:var(--space-6);font-size:var(--text-xl)}.generation-progress p{color:var(--color-text-secondary);margin-top:var(--space-2)}@media (max-width:1024px){.home-page{width:100%;max-width:100%;padding-left:var(--space-4);padding-right:var(--space-4);box-sizing:border-box;max-height:100vh;margin-left:0;margin-right:0;overflow-y:auto}.home-page .page-header{text-align:center;align-items:center;gap:var(--space-4);flex-direction:column;width:100%!important;max-width:800px!important;margin-left:auto!important;margin-right:auto!important}.home-page .header-content{text-align:center;width:100%}.home-page .home-greeting-row{justify-content:center;width:100%}.home-page .header-auth{z-index:auto;position:static}.home-page .quick-stats,.home-page .home-content{width:100%!important;max-width:100%!important}.home-content{box-sizing:border-box;width:100%;max-width:100%}.home-page .quick-stats{box-sizing:border-box;grid-template-columns:repeat(2,1fr)!important;width:100%!important;max-width:500px!important;margin-left:auto!important;margin-right:auto!important}.quick-stats .stat-card{padding:clamp(var(--space-4),2vw,var(--space-6));text-align:center;justify-content:center;align-items:center;gap:var(--space-2);flex-direction:column;max-height:none}.quick-stats .stat-icon{width:clamp(40px,4vw,56px);height:clamp(40px,4vw,56px)}.quick-stats .stat-icon svg{width:clamp(24px,2.5vw,36px);height:clamp(24px,2.5vw,36px)}.quick-stats .stat-value{font-size:clamp(var(--text-lg),1.5vw,var(--text-2xl))}.quick-stats .stat-label{font-size:clamp(var(--text-sm),.8vw,var(--text-base))}.modules-grid{box-sizing:border-box;grid-template-columns:repeat(3,1fr);width:100%;max-width:100%}.notes-page,.cards-page,.tests-page{flex-direction:column;height:auto}.file-tree,.decks-sidebar,.tests-sidebar{width:100%;height:300px}.tests-layout{flex-direction:column}}@media (max-width:768px){.home-page{max-width:100%;padding:var(--space-3);justify-content:flex-start;padding-top:18vh}.home-page .page-header,.home-page .quick-stats,.home-page .home-content{width:100%!important;max-width:100%!important}.home-page .quick-stats{max-width:400px!important;margin-left:auto!important;margin-right:auto!important}.home-page .page-header{text-align:center;align-items:center;gap:var(--space-4);padding-top:calc(var(--space-4) + 40px);margin-top:var(--space-2);flex-direction:column;position:relative}.home-page .header-content{text-align:center;width:100%}.home-page .home-greeting-row{gap:var(--space-3);justify-content:center;width:100%}.home-page .header-auth{z-index:auto;align-items:center;width:auto;height:auto;display:flex;position:static;transform:none}.home-page .header-auth .auth-buttons{align-items:center;gap:var(--space-2);display:flex}.home-page .header-auth .user-menu{align-items:center;display:flex}.home-page .header-auth .auth-button{padding:var(--space-2)var(--space-3);font-size:var(--text-sm);align-items:center;gap:var(--space-1);min-height:32px;display:flex}.home-page .header-auth .auth-button span{font-size:.75rem}.home-page .header-auth .user-menu-trigger{padding:var(--space-2);align-items:center;gap:var(--space-1);min-height:32px;box-shadow:none;background:0 0;border:none;display:flex}.home-page .header-auth .user-menu-trigger:hover,.home-page .header-auth .user-menu-trigger:focus-visible{box-shadow:none;background:0 0;border:none}.home-page .header-auth .user-menu-chevron{width:14px;height:14px}.home-page .page-title{font-size:var(--text-xl);text-align:center}.home-page .page-subtitle{text-align:center}.quick-stats{grid-template-columns:repeat(2,1fr)}.modules-grid{gap:var(--space-2);margin:0 auto;grid-template-columns:repeat(3,1fr)!important;width:100%!important;max-width:100%!important}.module-card{min-width:0;max-width:100%;padding:var(--space-2)}}@media (max-width:1024px) and (min-width:769px){.notes-file-sidebar:not(.sidebar-panel--collapsed){width:var(--right-sidebar-width-real,250px)!important;max-width:none!important;height:100vh!important;max-height:none!important;z-index:var(--z-sticky)!important;border-left:1px solid var(--color-outline-variant)!important;position:fixed!important;inset:0 0 auto auto!important;transform:none!important}@supports (color:color-mix(in lab, red, red)){.notes-file-sidebar:not(.sidebar-panel--collapsed){border-left:1px solid color-mix(in srgb,var(--color-outline-variant)50%,transparent)!important}}.notes-file-sidebar:not(.sidebar-panel--collapsed){box-shadow:none!important;overflow:visible!important}.notes-file-sidebar.sidebar-panel--mobile:not(.sidebar-panel--collapsed){width:var(--right-sidebar-width-real,250px)!important;max-width:none!important;height:100vh!important;max-height:none!important;z-index:var(--z-sticky)!important;border-left:1px solid var(--color-outline-variant)!important;position:fixed!important;inset:0 0 auto auto!important;transform:none!important}@supports (color:color-mix(in lab, red, red)){.notes-file-sidebar.sidebar-panel--mobile:not(.sidebar-panel--collapsed){border-left:1px solid color-mix(in srgb,var(--color-outline-variant)50%,transparent)!important}}.notes-file-sidebar.sidebar-panel--mobile:not(.sidebar-panel--collapsed){box-shadow:none!important;overflow:visible!important}.notes-file-sidebar.sidebar-panel--open{transform:none!important}.notes-file-sidebar .mobile-sidebar-header,.notes-file-sidebar.sidebar-panel--mobile .mobile-sidebar-header,.notes-file-sidebar.sidebar-panel--mobile:before{display:none!important}.tests-sidebar{height:100vh!important;max-height:none!important}}@media (max-width:768px){.notes-container{flex-direction:column}.notes-main{width:100%;padding:var(--space-2);padding-bottom:0;background:0 0!important}.notes-center-content{background:0 0!important}.notes-editor-wrapper{flex-direction:column;height:100%;max-height:100%;display:flex;overflow:hidden}.notes-editor-container,.notes-content-wrapper{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.notes-editor-area{min-height:0;padding-bottom:calc(70px + var(--space-4));flex:1;overflow-y:auto}.mobile-bottom-toolbar{background:var(--color-surface);border-top:1px solid var(--color-outline-variant);padding:var(--space-2)var(--space-3);z-index:var(--z-sticky);flex-shrink:0;justify-content:center;align-items:center;height:50px;display:flex;position:fixed;bottom:0;left:0;right:0}.mobile-toolbar-scroll{justify-content:space-between;align-items:center;gap:var(--space-2);width:100%;max-width:400px;display:flex}.mobile-format-buttons{align-items:center;gap:var(--space-1);display:flex}.mobile-format-menu{flex-shrink:0;order:1;width:40px;min-width:40px;display:flex}.mobile-toolbar-btn{border-radius:var(--radius-full);width:40px;min-width:40px;height:40px;color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.mobile-toolbar-btn:hover{background:var(--color-surface-variant);color:var(--color-text)}.mobile-toolbar-btn:active{transform:scale(.95)}.mobile-toolbar-btn--ai{color:var(--color-primary)}.mobile-toolbar-btn--ai:hover{background:var(--color-primary)}@supports (color:color-mix(in lab, red, red)){.mobile-toolbar-btn--ai:hover{background:color-mix(in srgb,var(--color-primary)10%,transparent)}}.mobile-toolbar-btn--ai:hover{color:var(--color-primary)}.mobile-toolbar-btn--ai svg{stroke:currentColor}.mobile-toolbar-btn--chat svg{stroke:url(#magic-icon-gradient)}.mobile-toolbar-btn--menu{color:var(--color-text-secondary)}.mobile-ai-buttons{justify-content:center;align-items:center;gap:var(--space-2);flex:1;order:2;display:flex}.mobile-toolbar-divider{background:var(--color-outline-variant);width:1px;height:24px;margin:0 var(--space-2)}.notes-file-sidebar.sidebar-panel--mobile{height:100dvh;max-height:100dvh;z-index:var(--z-modal);background:var(--color-surface);box-shadow:var(--shadow-xl);border-left:none;flex-direction:column;transition:none;display:flex;position:fixed;inset:0;overflow:hidden;transform:translate(100%);width:100%!important;max-width:100%!important}.notes-file-sidebar.sidebar-panel--mobile .sidebar-file-content{flex:1;min-height:0;overflow-y:auto}.notes-file-sidebar.sidebar-panel--open{transform:translate(0)}.notes-file-sidebar.sidebar-panel--mobile .mobile-sidebar-header{padding:var(--space-4);border-bottom:1px solid var(--color-outline-variant);justify-content:space-between;align-items:center;display:flex}@supports (color:color-mix(in lab, red, red)){.notes-file-sidebar.sidebar-panel--mobile .mobile-sidebar-header{border-bottom:1px solid color-mix(in srgb,var(--color-outline-variant)50%,transparent)}}.notes-file-sidebar.sidebar-panel--mobile .mobile-sidebar-header{background:var(--color-surface);flex-shrink:0}.notes-file-sidebar.sidebar-panel--mobile .mobile-sidebar-header h2{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--color-text);flex:1;margin:0}.notes-file-sidebar.sidebar-panel--mobile .mobile-sidebar-header-actions{align-items:center;gap:var(--space-3);display:flex}.notes-file-sidebar.sidebar-panel--mobile .mobile-sidebar-header-actions .btn-icon{justify-content:center;align-items:center;width:40px;min-width:40px;height:40px;padding:0;display:flex}.notes-file-sidebar.sidebar-panel--mobile .mobile-sidebar-header-actions .btn-icon svg{width:20px;height:20px}.notes-file-sidebar.sidebar-panel--mobile .mobile-sidebar-header-actions .sort-selector-trigger{border-radius:var(--radius-md);width:40px;min-width:40px;height:40px;color:var(--color-text-secondary);transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex}.notes-file-sidebar.sidebar-panel--mobile .mobile-sidebar-header-actions .sort-selector-trigger:hover{background:rgba(var(--color-primary-rgb,99,102,241),.1);color:var(--color-primary)}.notes-file-sidebar.sidebar-panel--mobile .mobile-sidebar-header-actions .sort-selector-trigger.open{background:rgba(var(--color-primary-rgb,99,102,241),.1);color:var(--color-primary);height:20px}.notes-file-sidebar.sidebar-panel--mobile .mobile-sidebar-header-actions .btn-icon-minimal{justify-content:center;align-items:center;width:40px;min-width:40px;height:40px;padding:0;display:flex}.notes-file-sidebar.sidebar-panel--mobile .mobile-sidebar-header-actions .btn-icon-minimal svg{width:20px;height:20px}.notes-file-sidebar.sidebar-panel--mobile .mobile-sidebar-actions{display:none!important}.notes-content-wrapper{width:100%!important;max-width:100%!important;padding:var(--space-3)0!important;box-shadow:none!important;background:0 0!important;border-left:none!important;border-right:none!important}.notes-content-wrapper .cm-editor,.notes-content-wrapper .cm-scroller,.notes-content-wrapper .cm-content,.notes-editor-area .markdown-editor .cm-content{padding-left:0!important;padding-right:0!important}.editor-resize-handle{display:none!important}.mobile-toolbar-divider{display:none}.mobile-toolbar-scroll{justify-content:space-between;align-items:center;width:100%}.mobile-format-menu{flex-shrink:0;order:1}.mobile-ai-buttons{justify-content:center;gap:var(--space-2);flex:1;order:2}.mobile-chat-button{flex-shrink:0;order:3}.mobile-format-menu-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.mobile-format-menu-dropdown{background:var(--color-surface);border-radius:var(--radius-lg)var(--radius-lg)0 0;width:100%;max-width:400px;max-height:50vh;animation:.3s ease-out slideUp;overflow-y:auto}.mobile-format-menu-header{padding:var(--space-4)var(--space-4)var(--space-2);border-bottom:none;justify-content:space-between;align-items:center;display:flex;position:relative}.mobile-format-menu-header:after{content:"";left:var(--space-4);right:var(--space-4);background:linear-gradient(90deg,transparent,var(--color-outline-variant),transparent);height:1px;position:absolute;bottom:0}.mobile-format-menu-header h3{font-size:var(--text-lg);font-weight:var(--font-medium);color:var(--color-text);margin:0}.mobile-format-menu-close{color:var(--color-text-secondary);cursor:pointer;padding:var(--space-1);border-radius:var(--radius-md);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.mobile-format-menu-close:hover{color:var(--color-error)}.mobile-format-menu-btn:hover{background:var(--color-surface-variant);transform:translateY(-2px)}.mobile-format-menu-btn:active{transform:scale(.95)}.mobile-format-menu-btn svg{width:24px;height:24px;color:var(--color-text-secondary)}.mobile-format-menu-btn:hover svg{color:var(--color-primary)}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.ai-chat-fab{bottom:calc(var(--touch-target-comfortable) + var(--space-8))!important}.notes-empty-icon{width:100px;height:100px}.notes-empty-icon svg{width:48px;height:48px}.notes-empty-title{font-size:var(--text-xl)}.notes-empty-actions{align-items:center;gap:var(--space-4);flex-direction:row;width:100%}.notes-empty-actions button{text-align:center;justify-content:center}}@media (max-width:480px){.notes-empty-actions{align-items:center;gap:var(--space-4);flex-direction:column;width:100%}.notes-title-input{font-size:var(--text-lg)}.mobile-toolbar-btn{width:var(--touch-target-min);height:var(--touch-target-min)}}@media (max-width:360px){.mobile-sidebar-actions button span,.mobile-toolbar-divider{display:none}}:root{--magic-bento-spotlight:132,0,255;--magic-bento-stat-icon-size:clamp(36px,3vw,48px);--magic-bento-stat-icon-size-sm:clamp(22px,2.2vw,32px);--magic-bento-stat-value-size:clamp(var(--text-base),1.3vw,var(--text-2xl))}.magic-bento-grid{gap:clamp(var(--space-2),1vw,var(--space-4));isolation:isolate;display:grid;position:relative}.magic-bento-card{border-radius:var(--radius-2xl);padding:clamp(var(--space-3),1.2vw,var(--space-5));will-change:transform;min-height:auto;color:var(--color-text);--glow-x:50%;--glow-y:50%;--glow-intensity:0;--glow-radius:200px;--magic-bento-glow-color:var(--magic-bento-spotlight);background:0 0;border:none;flex-direction:column;justify-content:space-between;transition:transform .22s,box-shadow .22s;display:flex;position:relative;overflow:hidden}.magic-bento-card:before{content:"";background:radial-gradient(circle at var(--glow-x)var(--glow-y),rgba(var(--magic-bento-glow-color),.25),transparent 70%);opacity:0;pointer-events:none;transition:opacity .3s;position:absolute;inset:0}.magic-bento-card--border-glow:after{content:"";border-radius:inherit;background:radial-gradient(var(--glow-radius)circle at var(--glow-x)var(--glow-y),rgba(var(--magic-bento-glow-color),clamp(var(--glow-intensity),0,.9))0%,rgba(var(--magic-bento-glow-color),clamp(var(--glow-intensity),0,.4))30%,transparent 65%);opacity:0;pointer-events:none;z-index:1;-webkit-mask-composite:xor;-webkit-mask-composite:xor;-webkit-mask-source-type:auto,auto;-webkit-mask-composite:xor;-webkit-mask-source-type:auto,auto;padding:1px;transition:opacity .3s;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.magic-bento-card:hover{box-shadow:0 12px 28px rgba(var(--magic-bento-glow-color),.22)}.magic-bento-card:hover:before,.magic-bento-card:hover:after{opacity:1}.magic-bento-card>*{z-index:2;position:relative}.particle{pointer-events:none;z-index:5;position:absolute}.global-spotlight{mix-blend-mode:screen;pointer-events:none;will-change:transform,opacity}.magic-bento-grid.quick-stats{grid-template-columns:repeat(4,minmax(120px,1fr))}.magic-bento-card.home-stat-card{justify-content:center;align-items:center;gap:clamp(var(--space-1),.6vw,var(--space-2));padding:clamp(var(--space-2),.75vw,var(--space-3));border-radius:var(--radius-lg);text-align:center;flex-direction:row;min-height:auto}.magic-bento-card.home-stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 20px #6366f114;border-color:var(--color-primary-container-hover)!important}.magic-bento-card.deck-stat-card,.magic-bento-card.test-stat-card,.magic-bento-card.results-stat-card{align-items:center;gap:var(--space-3);width:auto;height:auto;min-height:auto;padding:var(--space-2);border-radius:var(--radius-lg);background:0 0;border:none;flex-direction:row;justify-content:flex-start}.magic-bento-card.deck-stat-card .stat-icon,.magic-bento-card.test-stat-card .stat-icon,.magic-bento-card.results-stat-card .stat-card-icon{z-index:1;width:var(--magic-bento-stat-icon-size);height:var(--magic-bento-stat-icon-size);border-radius:var(--radius-xl);box-shadow:none;background:0 0;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;position:relative}.magic-bento-card.deck-stat-card .stat-icon svg,.magic-bento-card.test-stat-card .stat-icon svg,.magic-bento-card.results-stat-card .stat-card-icon svg{width:var(--magic-bento-stat-icon-size-sm);height:var(--magic-bento-stat-icon-size-sm)}.magic-bento-card.deck-stat-card .stat-content,.magic-bento-card.test-stat-card .stat-content,.magic-bento-card.results-stat-card .stat-card-content{z-index:1;gap:var(--space-1);text-align:left;flex-direction:column;align-items:flex-start;min-width:0;display:flex;position:relative}.magic-bento-card.deck-stat-card .stat-value,.magic-bento-card.test-stat-card .stat-value,.magic-bento-card.results-stat-card .stat-card-value{font-size:var(--magic-bento-stat-value-size);font-weight:var(--font-bold);color:var(--color-text);line-height:1}.magic-bento-card.deck-stat-card .stat-label,.magic-bento-card.test-stat-card .stat-label,.magic-bento-card.results-stat-card .stat-card-label{font-size:var(--text-sm);color:var(--color-text-secondary);font-weight:var(--font-medium)}.magic-bento-grid.deck-stats-grid,.magic-bento-grid.results-stats-grid{gap:clamp(var(--space-2),1vw,var(--space-4));grid-template-columns:repeat(4,minmax(140px,1fr));width:100%;display:grid}.magic-bento-grid.test-stats-grid{gap:clamp(var(--space-2),1vw,var(--space-4));grid-template-columns:repeat(3,minmax(140px,1fr));width:100%;display:grid}.magic-bento-grid.results-stats-grid{animation:.5s ease-out .1s backwards slideUp}.deck-stat-card.new .stat-icon svg{color:#3b82f6}.deck-stat-card.due{--magic-bento-glow-color:16,185,129}.deck-stat-card.due .stat-icon svg{color:#10b981}.deck-stat-card.upcoming{--magic-bento-glow-color:139,92,246}.deck-stat-card.upcoming .stat-icon svg{color:#8b5cf6}.deck-stat-card.mastered{--magic-bento-glow-color:245,158,11}.deck-stat-card.mastered .stat-icon svg{color:#f59e0b}.stat-icon-gold svg{color:var(--color-warning)}.stat-icon-blue svg{color:var(--color-info)}.stat-icon-green svg{color:var(--color-success)}.stat-card-gold .stat-value{color:var(--color-warning)}.stat-card-blue .stat-value{color:var(--color-info)}.stat-card-green .stat-value{color:var(--color-success)}.stat-correct .stat-card-icon,.stat-correct .stat-card-value{color:#22c55e}.stat-incorrect .stat-card-icon,.stat-incorrect .stat-card-value{color:#f87171}.stat-time .stat-card-icon,.stat-time .stat-card-value{color:#3b82f6}.stat-score .stat-card-icon,.stat-score .stat-card-value{color:#f59e0b}.results-stat-card{gap:clamp(var(--space-1),.6vw,var(--space-2))}.deck-stat-card:hover,.test-stat-card:hover,.results-stat-card:hover{background:0 0;box-shadow:0 8px 24px #0000001a}@media (max-width:768px){.magic-bento-grid.test-stats-grid{gap:var(--space-2);flex-wrap:nowrap;justify-content:space-between;display:flex}.magic-bento-grid.test-stats-grid .test-stat-card{flex:1 1 0;min-width:0}.magic-bento-grid.deck-stats-grid,.magic-bento-grid.results-stats-grid{grid-template-columns:repeat(2,minmax(150px,1fr))}.magic-bento-card.deck-stat-card,.magic-bento-card.test-stat-card,.magic-bento-card.results-stat-card{padding:var(--space-2);flex-direction:column;justify-content:center;align-items:center}.magic-bento-card.deck-stat-card .stat-icon,.magic-bento-card.test-stat-card .stat-icon,.magic-bento-card.results-stat-card .stat-card-icon{display:none}.magic-bento-card.deck-stat-card .stat-content,.magic-bento-card.test-stat-card .stat-content,.magic-bento-card.results-stat-card .stat-card-content{text-align:center;align-items:center;width:100%}.magic-bento-card.deck-stat-card,.magic-bento-card.test-stat-card,.magic-bento-card.results-stat-card{text-align:center;justify-content:center}.magic-bento-card.deck-stat-card .stat-value,.magic-bento-card.test-stat-card .stat-value,.magic-bento-card.results-stat-card .stat-card-value{text-align:center;font-size:clamp(1rem,3.5vw,1.5rem)}.magic-bento-card.deck-stat-card .stat-label,.magic-bento-card.test-stat-card .stat-label,.magic-bento-card.results-stat-card .stat-card-label{text-align:center;font-size:clamp(.75rem,2.2vw,1rem)}.deck-stat-card.new .stat-value{color:#3b82f6}.deck-stat-card.due .stat-value{color:#ef4444}.deck-stat-card.upcoming .stat-value{color:#8b5cf6}.deck-stat-card.mastered .stat-value,.test-stat-card.best .stat-value{color:#f59e0b}.test-stat-card.average .stat-value{color:#3b82f6}.test-stat-card.attempts .stat-value,.results-stat-card.stat-correct .stat-card-value{color:#22c55e}.results-stat-card.stat-incorrect .stat-card-value{color:#f87171}.results-stat-card.stat-time .stat-card-value{color:#3b82f6}.results-stat-card.stat-score .stat-card-value{color:#f59e0b}.deck-stat-card:before{opacity:0!important}.magic-bento-card.test-stat-card.stat-card-gold .stat-value{color:var(--color-warning)}.magic-bento-card.test-stat-card.stat-card-blue .stat-value{color:var(--color-info)}.magic-bento-card.test-stat-card.stat-card-green .stat-value{color:var(--color-success)}.magic-bento-card.results-stat-card.stat-correct .stat-card-value{color:#22c55e}.magic-bento-card.results-stat-card.stat-incorrect .stat-card-value{color:#f87171}.magic-bento-card.results-stat-card.stat-time .stat-card-value{color:#3b82f6}.magic-bento-card.results-stat-card.stat-score .stat-card-value{color:#f59e0b}}@media (max-width:480px){.magic-bento-grid.deck-stats-grid,.magic-bento-grid.results-stats-grid,.magic-bento-grid.test-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.magic-bento-grid.test-stats-grid .test-stat-card{flex:initial}.magic-bento-card.deck-stat-card,.magic-bento-card.test-stat-card,.magic-bento-card.results-stat-card{padding:var(--space-1)var(--space-2);border-radius:var(--radius-sm)}.magic-bento-card.test-stat-card .stat-value,.magic-bento-card.results-stat-card .stat-card-value{font-size:var(--text-lg)}.magic-bento-card.test-stat-card .stat-label,.magic-bento-card.results-stat-card .stat-card-label{font-size:.65rem;line-height:1.2}.test-stat-card.best .stat-value{color:#f59e0b}.test-stat-card.average .stat-value{color:#3b82f6}.test-stat-card.attempts .stat-value{color:#22c55e}}.home-stat-icon{border-radius:var(--radius-xl);background:0 0;flex-shrink:0;justify-content:center;align-items:center;width:clamp(40px,3vw,48px);height:clamp(40px,3vw,48px);display:inline-flex}.home-stat-icon svg{width:clamp(22px,2.4vw,32px);height:clamp(22px,2.4vw,32px)}.home-stat-info{text-align:left;flex-direction:column;align-items:flex-start;gap:2px;min-width:0;display:flex}.home-stat-value{font-size:var(--stat-value-size);font-weight:var(--font-bold)}.home-stat-label{font-size:clamp(var(--text-xs),.9vw,var(--text-sm));color:var(--color-text-secondary)}.home-stat-card.notes .home-stat-icon svg{color:#8b5cf6}.home-stat-card.cards .home-stat-icon svg{color:#3b82f6}.home-stat-card.tests .home-stat-icon svg{color:#10b981}.home-stat-card.streak .home-stat-icon svg{color:#f97316}.magic-bento-grid.modules-grid{gap:clamp(var(--space-4),2vw,var(--space-6));grid-template-columns:repeat(3,minmax(0,1fr))}.magic-bento-card.module-card{text-align:center;padding:var(--space-2);border-radius:var(--radius-xl);cursor:pointer;align-items:center;gap:var(--space-3);z-index:1;pointer-events:auto;background:0 0;border-width:2px;border-color:#0000;width:100%;height:100%;min-height:auto;position:relative}.magic-bento-card.module-card:before,.magic-bento-card.module-card:after{pointer-events:none}.magic-bento-card.module-card>*{z-index:2;pointer-events:none;position:relative}.module-card h3{font-size:clamp(var(--text-base),1.1vw,var(--text-2xl));margin-bottom:var(--space-2)}.module-card p{color:var(--color-text-secondary);font-size:clamp(var(--text-sm),1vw,var(--text-base));line-height:1.6}.module-card .module-action{align-items:center;gap:var(--space-2);color:var(--color-text-tertiary);margin-top:auto;display:inline-flex}.module-card:hover .module-action{color:var(--color-primary)}.module-card .module-action svg{transition:transform .22s}.module-card:hover .module-action svg{transform:scale(1.08)}.home-stat-card.notes{--magic-bento-glow-color:139,92,246}.home-stat-card.cards{--magic-bento-glow-color:59,130,246}.home-stat-card.tests{--magic-bento-glow-color:16,185,129}.home-stat-card.streak{--magic-bento-glow-color:249,115,22}.module-card.notes{--magic-bento-glow-color:139,92,246}.module-card.cards{--magic-bento-glow-color:59,130,246}.module-card.tests{--magic-bento-glow-color:16,185,129}@media (max-width:1024px){.magic-bento-grid.quick-stats{grid-template-columns:repeat(2,minmax(140px,1fr));justify-content:center}.magic-bento-card.home-stat-card{flex-direction:row;justify-content:center;align-items:center}.home-stat-info{text-align:left;align-items:flex-start}.magic-bento-grid.modules-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:640px){.magic-bento-grid.quick-stats{grid-template-columns:repeat(2,1fr)}.magic-bento-grid.modules-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:420px){.magic-bento-grid.quick-stats{gap:var(--space-2);grid-template-columns:repeat(2,minmax(120px,1fr))}.magic-bento-card.home-stat-card{gap:var(--space-2);padding:var(--space-2)}.home-stat-icon{width:clamp(48px,3.5vw,60px);height:clamp(48px,3.5vw,60px)}.home-stat-icon svg{width:clamp(26px,3vw,36px);height:clamp(26px,3vw,36px)}.magic-bento-grid.modules-grid{gap:clamp(var(--space-1),1vw,var(--space-2));grid-template-columns:repeat(3,minmax(0,1fr))}.home-stat-info{text-align:left;align-items:flex-start}}.magic-particle-bg{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.magic-particle-bg canvas{display:block;width:100%!important;height:100%!important}.magic-particle-bg--hero{pointer-events:auto}.magic-particle-bg--ambient{opacity:.85}.magic-particle-bg--minimal{opacity:.6}.magic-particle-bg:after{content:"";pointer-events:none;z-index:1;position:absolute;inset:0}.magic-particle-bg--hero:after{background:radial-gradient(ellipse 90% 85% at 50% 50%,transparent 60%,var(--color-bg)100%)}.magic-particle-bg--ambient:after{background:radial-gradient(ellipse 85% 80% at 50% 50%,transparent 50%,var(--color-bg)100%)}.magic-particle-bg--minimal:after{background:radial-gradient(ellipse 75% 65% at 50% 50%,transparent 30%,var(--color-bg)100%)}@media (prefers-reduced-motion:reduce){.magic-particle-bg{display:none}}@media (max-width:768px){.magic-particle-bg--hero{pointer-events:none}.magic-particle-bg--ambient{opacity:.65}.magic-particle-bg--minimal{opacity:.4}}.arcanon-canvas{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.arcanon-canvas--hero{pointer-events:auto;cursor:crosshair}.arcanon-canvas--ambient,.arcanon-canvas--light{pointer-events:auto}@media (prefers-reduced-motion:reduce){.arcanon-canvas{display:none}}@media (max-width:768px){.arcanon-canvas--hero{pointer-events:none;cursor:default}.arcanon-canvas--ambient,.arcanon-canvas--light{pointer-events:none}}.landing{color:#e8e4ff;background:0 0;width:100%;min-height:100vh;position:relative;overflow-x:hidden}.landing-background{z-index:0;pointer-events:none;background:radial-gradient(120% 80% at 50% 30%,#110e24 0%,#0a0816 40%,#060510 100%);width:100%;height:100%;position:fixed;top:0;left:0}.landing-section{z-index:1;padding:clamp(6rem,12vh,10rem) clamp(1.5rem,5vw,4rem);position:relative}.landing-section-inner{z-index:2;max-width:1100px;margin:0 auto;position:relative}.landing-section-header{text-align:center;margin-bottom:clamp(3rem,6vh,5rem)}.scroll-reveal{margin:0}.scroll-reveal-text,.landing-scroll-reveal-text{color:#e8e4ff;letter-spacing:-.02em;font-size:clamp(1.6rem,3.5vw,2.75rem);font-weight:700;line-height:1.4}.scroll-reveal-word{display:inline-block}.landing-blur-subtitle{color:#e8e4ff8c;text-align:center;justify-content:center;font-size:clamp(.95rem,1.6vw,1.2rem);line-height:1.7}.landing-cta-title-blur{color:#e8e4ff;letter-spacing:-.02em;justify-content:center;font-size:clamp(1.75rem,4vw,2.5rem);font-weight:700}.landing-features:before,.landing-steps:before,.landing-advantages:before,.landing-cta:before{content:"";background:linear-gradient(90deg,#0000,#a78bfa33 20%,#a78bfa59 50%,#a78bfa33 80%,#0000);width:min(400px,60%);height:1px;position:absolute;top:0;left:50%;transform:translate(-50%)}.landing-hero{z-index:1;background:0 0;flex-direction:column;justify-content:center;align-items:center;min-height:100dvh;padding:2rem;display:flex;position:relative;overflow:hidden}.landing-hero-content{z-index:2;text-align:center;pointer-events:none;-webkit-user-select:none;user-select:none;flex-direction:column;align-items:center;gap:0;max-width:800px;animation:1.4s cubic-bezier(.16,1,.3,1) .3s both landing-hero-appear;display:flex;position:relative}.landing-hero-content>*{pointer-events:auto}@keyframes landing-hero-appear{0%{opacity:0;filter:blur(6px);transform:translateY(40px)scale(.96)}to{opacity:1;filter:blur();transform:translateY(0)scale(1)}}.landing-hero-brand{letter-spacing:.25em;-webkit-text-fill-color:transparent;background:linear-gradient(#fff,#b0a3f0,#5c37b3);-webkit-background-clip:text;background-clip:text;margin:0;font-family:Cinzel RUS,serif;font-size:clamp(3rem,8vw,6rem);font-weight:900;line-height:1.1}.landing-hero-tagline{text-transform:uppercase;letter-spacing:.6em;opacity:.55;text-shadow:0 0 10px #7864dc59;color:#e8e4ff;margin-top:1.2rem;font-family:Cinzel RUS,serif;font-size:clamp(.8rem,2vw,1.1rem);font-weight:400}.landing-hero-subtitle{text-align:center;justify-content:center;max-width:540px;margin:2.5rem auto 0;display:flex}.landing-hero-actions{gap:var(--space-3);margin-top:var(--space-5);flex-wrap:wrap;justify-content:center;display:flex}.landing-hero-btn{font-size:var(--text-base)!important;border-radius:var(--radius-lg)!important;padding:14px 32px!important}.landing-btn-ghost{align-items:center;gap:var(--space-2);border-radius:var(--radius-lg);font-size:var(--text-base);font-weight:var(--font-medium);font-family:var(--font-sans);cursor:pointer;color:#e8e4ff99;white-space:nowrap;background:0 0;border:none;padding:14px 24px;transition:all .3s cubic-bezier(.16,1,.3,1);display:inline-flex}.landing-btn-ghost:hover{color:#e8e4ff;text-shadow:0 0 12px #c4b5fd66}.landing-scroll-indicator{z-index:2;color:#c4b5fd66;cursor:pointer;padding:var(--space-2);border-radius:var(--radius-full);background:0 0;border:none;transition:color .3s;animation:2.5s ease-in-out infinite landing-scroll-bounce;position:absolute;bottom:2rem;left:50%;transform:translate(-50%)}.landing-scroll-indicator:hover{color:#c4b5fdcc}@keyframes landing-scroll-bounce{0%,to{opacity:.4;transform:translate(-50%)translateY(0)}50%{opacity:.9;transform:translate(-50%)translateY(10px)}}.landing-features-grid{gap:clamp(var(--space-4),2.5vw,var(--space-8));grid-template-columns:repeat(3,1fr);display:grid}.landing-feature-card{padding:clamp(var(--space-5),2.5vw,var(--space-8))clamp(var(--space-4),2vw,var(--space-6));text-align:center;align-items:center;gap:var(--space-4);-webkit-backdrop-filter:blur(12px);background:#ffffff05;border:1px solid #a78bfa14;border-radius:20px;flex-direction:column;transition:transform .5s cubic-bezier(.16,1,.3,1),border-color .4s,box-shadow .4s;display:flex;position:relative;overflow:hidden}.landing-feature-card:hover{border-color:#a78bfa33;transform:translateY(-8px);box-shadow:0 20px 50px #5c37b31f,0 0 30px #a78bfa0f}.landing-feature-card-glow{border-radius:inherit;opacity:0;pointer-events:none;background:radial-gradient(60% 50% at 50% 0,#a78bfa14,#0000 70%);transition:opacity .5s;position:absolute;inset:0}.landing-feature-card:hover .landing-feature-card-glow{opacity:1}.landing-feature-icon-bare{filter:drop-shadow(0 0 8px #a78bfa26);flex-shrink:0;transition:transform .4s cubic-bezier(.16,1,.3,1),filter .4s}.landing-feature-card:hover .landing-feature-icon-bare{filter:drop-shadow(0 0 16px #a78bfa59);transform:scale(1.12)}.landing-feature-icon--notes{color:#a78bfa}.landing-feature-icon--cards{color:#818cf8}.landing-feature-icon--tests{color:#6ee7b7}.landing-feature-title{font-size:clamp(var(--text-lg),1.3vw,var(--text-xl));font-weight:var(--font-bold);color:#e8e4ff}.landing-feature-desc{font-size:var(--text-sm);color:#e8e4ff66;flex:1;line-height:1.75}.landing-steps-timeline{justify-content:center;align-items:flex-start;gap:0;display:flex}.landing-step{text-align:center;align-items:center;gap:var(--space-3);max-width:280px;padding:0 var(--space-3);flex-direction:column;flex:1;display:flex}.landing-step-number{border-radius:var(--radius-full);color:#c4b5fd;width:40px;height:40px;font-size:var(--text-sm);font-weight:var(--font-bold);background:linear-gradient(135deg,#a78bfa26,#8b5cf640);border:1px solid #a78bfa4d;flex-shrink:0;justify-content:center;align-items:center;transition:box-shadow .3s,border-color .3s;display:flex;box-shadow:0 4px 20px #8b5cf626}.landing-step:hover .landing-step-number{border-color:#a78bfa80;box-shadow:0 4px 25px #8b5cf64d}.landing-step-body{align-items:center;gap:var(--space-3);flex-direction:column;display:flex}.landing-step-title{font-size:var(--text-lg);font-weight:var(--font-bold);color:#e8e4ff}.landing-step-desc{font-size:var(--text-sm);color:#e8e4ff66;line-height:1.7}.landing-steps-connector{flex-shrink:0;align-items:center;width:60px;padding-top:18px;display:flex}.landing-steps-line{transform-origin:0;background:linear-gradient(90deg,#0000,#a78bfa4d,#0000);width:100%;height:1px}.landing-advantages-grid{gap:clamp(var(--space-3),1.5vw,var(--space-5));grid-template-columns:repeat(2,1fr);max-width:900px;margin:0 auto;display:grid}.landing-advantage{gap:var(--space-3);padding:clamp(var(--space-3),1.2vw,var(--space-4));background:0 0;border:none;border-radius:14px;align-items:flex-start;transition:transform .4s cubic-bezier(.16,1,.3,1);display:flex}.landing-advantage:hover{transform:translate(6px)}.landing-advantage:hover .landing-advantage-icon{filter:drop-shadow(0 0 10px #c4b5fd80);transform:scale(1.15)}.landing-advantage-icon{color:#c4b5fd;filter:drop-shadow(0 0 4px #a78bfa26);flex-shrink:0;margin-top:2px;transition:filter .3s,transform .3s}.landing-advantage-text h3{font-size:var(--text-base);font-weight:var(--font-bold);color:#e8e4ff;margin-bottom:var(--space-1)}.landing-advantage-text p{font-size:var(--text-sm);color:#e8e4ff66;line-height:1.65}.landing-cta{padding:clamp(6rem,12vh,10rem) clamp(1.5rem,5vw,4rem)}.landing-cta-content{z-index:2;text-align:center;align-items:center;gap:var(--space-4);flex-direction:column;max-width:650px;margin:0 auto;display:flex;position:relative}.landing-cta-desc{color:#e8e4ff66;font-size:clamp(1rem,1.5vw,1.15rem);line-height:1.65}.landing-cta-actions{gap:var(--space-3);margin-top:var(--space-2);flex-wrap:wrap;justify-content:center;display:flex}.landing-footer{z-index:1;padding:var(--space-6)clamp(1.5rem,5vw,4rem);border-top:1px solid #a78bfa0f;position:relative}.landing-footer-inner{justify-content:space-between;align-items:center;gap:var(--space-4);max-width:1100px;margin:0 auto;display:flex}.landing-footer-brand{color:#e8e4ff73;font-family:Cinzel RUS,serif;font-weight:700;font-size:var(--text-base);letter-spacing:.15em}.landing-footer-copy{font-size:var(--text-sm);color:#e8e4ff33}@media (max-width:1023px){.landing-features-grid{grid-template-columns:1fr;max-width:440px;margin:0 auto}.landing-steps-timeline{flex-direction:column;align-items:center}.landing-steps-connector{width:1px;height:40px;padding-top:0}.landing-steps-line{transform-origin:top;background:linear-gradient(#0000,#a78bfa40,#0000);width:1px;height:100%}.landing-step{max-width:360px}.landing-advantages-grid{grid-template-columns:1fr;max-width:440px;margin:0 auto}}@media (max-width:640px){.landing-hero{min-height:100dvh;padding:1.5rem}.landing-hero-brand{letter-spacing:.15em;font-size:clamp(2rem,12vw,3.5rem)}.landing-hero-tagline{letter-spacing:.4em;font-size:clamp(.65rem,2.5vw,.85rem)}.landing-hero-actions{flex-direction:column;width:100%;max-width:300px}.landing-hero-btn,.landing-btn-ghost{justify-content:center;width:100%}.landing-section{padding:clamp(4rem,8vh,6rem)var(--space-4)}.landing-feature-card,.landing-advantage{-webkit-backdrop-filter:none}.scroll-reveal-text,.landing-scroll-reveal-text{font-size:clamp(1.3rem,5vw,1.8rem)}.landing-footer-inner{text-align:center;flex-direction:column}.landing-cta-actions{flex-direction:column;width:100%;max-width:300px}.landing-cta-actions .landing-hero-btn,.landing-cta-actions .landing-btn-ghost{justify-content:center;width:100%}}.inline-onboarding{z-index:2;justify-content:center;align-items:center;gap:var(--space-6);width:100%;max-width:560px;padding:var(--space-4)0;flex-direction:column;min-height:calc(100vh - 120px);margin:0 auto;animation:.5s ease-out inlineOnboardingFadeIn;display:flex;position:relative}@keyframes inlineOnboardingFadeIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.inline-onboarding-step-indicator{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text-tertiary);text-align:center;min-width:120px}.inline-onboarding-card{width:100%;padding:clamp(var(--space-5),4vw,var(--space-8));-webkit-backdrop-filter:none;background:0 0;border:none;border-radius:0;transition:opacity .2s,transform .2s}.inline-onboarding-card--animating{opacity:0;transform:translateY(8px)}.inline-onboarding-step{gap:var(--space-4);flex-direction:column;display:flex}.inline-onboarding-step--welcome{text-align:center;align-items:center}.inline-onboarding-title{font-size:clamp(var(--text-lg),2vw,var(--text-2xl));font-weight:var(--font-bold);color:var(--color-text);line-height:1.3}.inline-onboarding-desc{font-size:var(--text-sm);color:var(--color-text-secondary);line-height:1.6}.inline-onboarding-hint{font-size:var(--text-xs);color:var(--color-text-tertiary);font-style:italic}.inline-onboarding-error{font-size:var(--text-sm);color:var(--color-error,#ef4444);font-weight:var(--font-medium)}.inline-onboarding-input-group{gap:var(--space-2);flex-direction:column;display:flex}.inline-onboarding-input-group label{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text-secondary)}.inline-onboarding-text-input{width:100%;padding:var(--space-3)var(--space-4);border:1px solid var(--color-outline-variant)!important;background:0 0!important}@supports (color:color-mix(in lab, red, red)){.inline-onboarding-text-input{border:1px solid color-mix(in srgb,var(--color-outline-variant)50%,transparent)!important}}.inline-onboarding-text-input{border-radius:var(--radius-lg,12px);font-size:var(--text-base);color:var(--color-text);outline:none;transition:border-color .2s,box-shadow .2s}.inline-onboarding-text-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary)}@supports (color:color-mix(in lab, red, red)){.inline-onboarding-text-input:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary)15%,transparent)}}.inline-onboarding-text-input::placeholder{color:var(--color-text-tertiary)}.inline-onboarding-radio-group{gap:var(--space-2);flex-direction:column;display:flex}.inline-onboarding-radio-group--compact{gap:var(--space-2);flex-flow:wrap}.inline-onboarding-radio{align-items:center;gap:var(--space-3);padding:var(--space-3)var(--space-4);border:1px solid var(--color-outline-variant);background:0 0;display:flex}@supports (color:color-mix(in lab, red, red)){.inline-onboarding-radio{border:1px solid color-mix(in srgb,var(--color-outline-variant)40%,transparent)}}.inline-onboarding-radio{border-radius:var(--radius-lg,12px);cursor:pointer;text-align:left;color:inherit;font:inherit;transition:all .2s}.inline-onboarding-radio:hover{background:var(--color-surface-container)}@supports (color:color-mix(in lab, red, red)){.inline-onboarding-radio:hover{background:color-mix(in srgb,var(--color-surface-container)80%,transparent)}}.inline-onboarding-radio:hover{border-color:var(--color-outline-variant)}@supports (color:color-mix(in lab, red, red)){.inline-onboarding-radio:hover{border-color:color-mix(in srgb,var(--color-outline-variant)70%,transparent)}}.inline-onboarding-radio.selected{background:var(--color-primary)}@supports (color:color-mix(in lab, red, red)){.inline-onboarding-radio.selected{background:color-mix(in srgb,var(--color-primary)8%,transparent)}}.inline-onboarding-radio.selected{border-color:var(--color-primary)}@supports (color:color-mix(in lab, red, red)){.inline-onboarding-radio.selected{border-color:color-mix(in srgb,var(--color-primary)50%,transparent)}}.inline-onboarding-radio--compact{padding:var(--space-2)var(--space-3);align-items:center}.inline-onboarding-radio-ring{--radio-ring-size:20px;width:var(--radio-ring-size);height:var(--radio-ring-size);aspect-ratio:1;min-width:var(--radio-ring-size);min-height:var(--radio-ring-size);flex:0 0 var(--radio-ring-size);box-sizing:border-box;flex-shrink:0;place-items:center;margin:0;padding:0;line-height:0;display:grid}.inline-onboarding-radio-icon{width:100%;height:100%;display:block;overflow:visible}.inline-onboarding-radio-icon-outer{fill:none;stroke:var(--color-outline-variant)}@supports (color:color-mix(in lab, red, red)){.inline-onboarding-radio-icon-outer{stroke:color-mix(in srgb,var(--color-outline-variant)65%,transparent)}}.inline-onboarding-radio-icon-outer{stroke-width:2px;vector-effect:non-scaling-stroke;transition:stroke .2s,filter .2s}.inline-onboarding-radio-icon-inner{fill:var(--color-primary);opacity:0;transform-box:fill-box;transform-origin:50%;transition:transform .2s,opacity .2s;transform:scale(0)}.inline-onboarding-radio.selected .inline-onboarding-radio-icon-outer{stroke:var(--color-primary);filter:drop-shadow(0 0 8px var(--color-primary))}@supports (color:color-mix(in lab, red, red)){.inline-onboarding-radio.selected .inline-onboarding-radio-icon-outer{filter:drop-shadow(0 0 8px color-mix(in srgb,var(--color-primary)35%,transparent))}}.inline-onboarding-radio.selected .inline-onboarding-radio-icon-inner{opacity:1;transform:scale(1)}.inline-onboarding-radio-content{flex-direction:column;gap:2px;display:flex}.inline-onboarding-radio-label{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text)}.inline-onboarding-radio-desc{font-size:var(--text-xs);color:var(--color-text-tertiary)}.inline-onboarding-select-wrapper{position:relative}.inline-onboarding-select-trigger{width:100%;padding:var(--space-3)var(--space-4);background:var(--color-surface-container);justify-content:space-between;align-items:center;display:flex}@supports (color:color-mix(in lab, red, red)){.inline-onboarding-select-trigger{background:color-mix(in srgb,var(--color-surface-container)70%,transparent)}}.inline-onboarding-select-trigger{border:1px solid var(--color-outline-variant)}@supports (color:color-mix(in lab, red, red)){.inline-onboarding-select-trigger{border:1px solid color-mix(in srgb,var(--color-outline-variant)50%,transparent)}}.inline-onboarding-select-trigger{border-radius:var(--radius-lg,12px);font-size:var(--text-base);color:var(--color-text);cursor:pointer;transition:border-color .2s}.inline-onboarding-select-trigger:hover,.inline-onboarding-select-trigger.open{border-color:var(--color-primary)}.inline-onboarding-select-arrow{color:var(--color-text-tertiary);transition:transform .2s}.inline-onboarding-select-trigger.open .inline-onboarding-select-arrow{transform:rotate(180deg)}.inline-onboarding-select-dropdown{top:calc(100% + var(--space-1));background:var(--color-surface);border:1px solid var(--color-outline-variant);border-radius:var(--radius-lg,12px);z-index:10;box-shadow:var(--shadow-lg,0 10px 25px #00000026);position:absolute;left:0;right:0;overflow:hidden}.inline-onboarding-select-option{width:100%;padding:var(--space-3)var(--space-4);font-size:var(--text-sm);color:var(--color-text);cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;transition:background .15s;display:flex}.inline-onboarding-select-option:hover{background:var(--color-surface-container)}.inline-onboarding-select-option.selected{color:var(--color-primary);font-weight:var(--font-medium)}.inline-onboarding-upload-zone{align-items:center;gap:var(--space-2);padding:var(--space-6)var(--space-4);border:2px dashed var(--color-outline-variant);flex-direction:column;display:flex}@supports (color:color-mix(in lab, red, red)){.inline-onboarding-upload-zone{border:2px dashed color-mix(in srgb,var(--color-outline-variant)60%,transparent)}}.inline-onboarding-upload-zone{border-radius:var(--radius-xl,16px);cursor:pointer;text-align:center;transition:all .2s}.inline-onboarding-upload-zone:hover,.inline-onboarding-upload-zone.drag-over{border-color:var(--color-primary);background:var(--color-primary)}@supports (color:color-mix(in lab, red, red)){.inline-onboarding-upload-zone:hover,.inline-onboarding-upload-zone.drag-over{background:color-mix(in srgb,var(--color-primary)5%,transparent)}}.inline-onboarding-upload-icon{color:var(--color-text-tertiary)}.inline-onboarding-upload-text{font-size:var(--text-sm);color:var(--color-text-secondary)}.inline-onboarding-upload-link{color:var(--color-primary);font-weight:var(--font-medium);text-underline-offset:2px;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.inline-onboarding-upload-hint{font-size:var(--text-xs);color:var(--color-text-tertiary)}.inline-onboarding-files{gap:var(--space-2);flex-direction:column;display:flex}.inline-onboarding-file{align-items:center;gap:var(--space-3);padding:var(--space-2)var(--space-3);background:var(--color-surface-container);display:flex}@supports (color:color-mix(in lab, red, red)){.inline-onboarding-file{background:color-mix(in srgb,var(--color-surface-container)50%,transparent)}}.inline-onboarding-file{border-radius:var(--radius-md,8px)}.inline-onboarding-file svg:first-child{color:var(--color-primary);flex-shrink:0}.inline-onboarding-file-info{flex-direction:column;flex:1;min-width:0;display:flex}.inline-onboarding-file-name{font-size:var(--text-sm);font-weight:var(--font-medium);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.inline-onboarding-file-size{font-size:var(--text-xs);color:var(--color-text-tertiary)}.inline-onboarding-file-remove{padding:var(--space-1);color:var(--color-text-tertiary);cursor:pointer;border-radius:var(--radius-sm,4px);background:0 0;border:none;flex-shrink:0;transition:all .15s}.inline-onboarding-file-remove:hover{background:var(--color-error,#ef4444)}@supports (color:color-mix(in lab, red, red)){.inline-onboarding-file-remove:hover{background:color-mix(in srgb,var(--color-error,#ef4444)10%,transparent)}}.inline-onboarding-file-remove:hover{color:var(--color-error,#ef4444)}.inline-onboarding-welcome-icon{background:var(--color-primary);border-radius:50%;width:64px;height:64px}@supports (color:color-mix(in lab, red, red)){.inline-onboarding-welcome-icon{background:color-mix(in srgb,var(--color-primary)12%,transparent)}}.inline-onboarding-welcome-icon{color:var(--color-primary);margin-bottom:var(--space-2);justify-content:center;align-items:center;display:flex}.inline-onboarding-actions{justify-content:space-between;align-items:center;gap:var(--space-3);width:100%;display:flex}.inline-onboarding-actions-left,.inline-onboarding-actions-right{align-items:center;gap:var(--space-2);display:flex}.inline-onboarding-btn{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-5);border-radius:var(--radius-full,9999px);font-size:var(--text-sm);font-weight:var(--font-medium);cursor:pointer;white-space:nowrap;border:none;transition:all .2s;display:inline-flex}.inline-onboarding-btn--primary{background:var(--color-primary);color:#fff}.inline-onboarding-btn--primary:hover{opacity:.9;transform:translateY(-1px)}.inline-onboarding-btn--primary.disabled{opacity:.4;cursor:not-allowed;transform:none}.inline-onboarding-btn--back{color:var(--color-text-secondary);background:0 0;border:none}.inline-onboarding-btn--back:hover{color:var(--color-text)}.inline-onboarding-btn--ghost{color:var(--color-text-tertiary);background:0 0}.inline-onboarding-btn--ghost:hover{color:var(--color-text-secondary)}@media (max-width:768px){.inline-onboarding{padding:var(--space-2)0;gap:var(--space-4)}.inline-onboarding-card{padding:var(--space-4)}.inline-onboarding-radio-group--compact{flex-direction:column}.inline-onboarding-actions{flex-wrap:wrap;justify-content:center}.inline-onboarding-actions-left,.inline-onboarding-actions-right{justify-content:center;width:100%}.inline-onboarding-step-indicator{order:3}.inline-onboarding-btn{padding:var(--space-2)var(--space-4)}}@media (max-width:480px){.inline-onboarding-title{font-size:var(--text-lg)}.inline-onboarding-upload-zone{padding:var(--space-4)var(--space-3)}.inline-onboarding-welcome-icon{width:48px;height:48px}.inline-onboarding-welcome-icon svg{width:24px;height:24px}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInPop{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideLeft{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes slideRight{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes scaleOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.9)}}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-4px)}20%,40%,60%,80%{transform:translate(4px)}}@keyframes pulse{50%{opacity:.5}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes pulse-bounce{0%,to{transform:scale(1)translateY(0)}25%{transform:scale(1.1)translateY(-4px)}50%{transform:scale(1.05)translateY(-8px)}75%{transform:scale(1.1)translateY(-4px)}}@keyframes rotate-bounce{0%,to{transform:translateY(0)rotate(0)}25%{transform:translateY(-6px)rotate(5deg)}50%{transform:translateY(-10px)rotate(0)}75%{transform:translateY(-6px)rotate(-5deg)}}@keyframes rotate-smooth{0%{transform:rotate(0)scale(1)}25%{transform:rotate(90deg)scale(1.05)}50%{transform:rotate(180deg)scale(1.1)}75%{transform:rotate(270deg)scale(1.05)}to{transform:rotate(360deg)scale(1)}}@keyframes elastic-scale{0%,to{transform:scale(1)}30%{transform:scale(1.15)}50%{transform:scale(1.05)}70%{transform:scale(1.12)}}@keyframes shimmer-glow{0%{filter:brightness(1)drop-shadow(0 0 8px var(--color-primary-container));transform:scale(1)}50%{filter:brightness(1.3)drop-shadow(0 0 16px var(--color-primary-container-hover));transform:scale(1.1)}to{filter:brightness(1)drop-shadow(0 0 8px var(--color-primary-container));transform:scale(1)}}@keyframes border-pulse{0%,to{border-width:3px;transform:scale(1)}50%{border-width:4px;transform:scale(1.1)}}@keyframes lift-up{0%{transform:translateY(0)}to{transform:translateY(-4px)}}@keyframes ripple{0%{opacity:.5;transform:scale(0)}to{opacity:0;transform:scale(4)}}.animate-fade-in{animation:fadeIn var(--transition-base)ease-out}.animate-fade-out{animation:fadeOut var(--transition-base)ease-out forwards}.animate-slide-up{animation:slideUp var(--transition-base)ease-out}.animate-slide-down{animation:slideDown var(--transition-base)ease-out}.animate-slide-left{animation:slideLeft var(--transition-base)ease-out}.animate-slide-right{animation:slideRight var(--transition-base)ease-out}.animate-scale-in{animation:scaleIn var(--transition-spring)}.animate-shake{animation:.5s ease-in-out shake}.animate-pulse{animation:2s ease-in-out infinite pulse}.animate-float{animation:3s ease-in-out infinite float}.fireworks-layer{opacity:1;transition:opacity 1.4s cubic-bezier(.33,.11,.23,.99)}.fireworks-fade-out{opacity:0}.stagger-children>:first-child{animation-delay:0s}.stagger-children>:nth-child(2){animation-delay:50ms}.stagger-children>:nth-child(3){animation-delay:.1s}.stagger-children>:nth-child(4){animation-delay:.15s}.stagger-children>:nth-child(5){animation-delay:.2s}.stagger-children>:nth-child(6){animation-delay:.25s}.stagger-children>:nth-child(7){animation-delay:.3s}.stagger-children>:nth-child(8){animation-delay:.35s}.skeleton{background:linear-gradient(90deg,var(--color-surface-container)25%,var(--color-surface-container-high)50%,var(--color-surface-container)75%);border-radius:var(--radius-md);background-size:200% 100%;animation:1.5s infinite shimmer}.skeleton-text{height:1em;margin-bottom:.5em}.skeleton-text:last-child{width:60%}.skeleton-avatar{border-radius:var(--radius-full);width:40px;height:40px}.skeleton-card{height:120px}.ripple-container{position:relative;overflow:hidden}.ripple{border-radius:var(--radius-full);background:var(--color-primary);opacity:.3;pointer-events:none;animation:.6s ease-out ripple;position:absolute}.btn:active:not(:disabled){transform:scale(.97)}.card-hover-lift{transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.card-hover-lift:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.list-enter{animation:.3s ease-out backwards slideUp}.list-enter:first-child{animation-delay:0s}.list-enter:nth-child(2){animation-delay:30ms}.list-enter:nth-child(3){animation-delay:60ms}.list-enter:nth-child(4){animation-delay:90ms}.list-enter:nth-child(5){animation-delay:.12s}.list-enter:nth-child(6){animation-delay:.15s}.list-enter:nth-child(7){animation-delay:.18s}.list-enter:nth-child(8){animation-delay:.21s}.list-enter:nth-child(9){animation-delay:.24s}.list-enter:nth-child(10){animation-delay:.27s}.success-checkmark{width:80px;height:80px;margin:0 auto;position:relative}.success-checkmark .check-circle{border-radius:var(--radius-full);border:3px solid var(--color-success);width:80px;height:80px;animation:.5s ease-out .1s forwards circle-scale;position:absolute;transform:scale(0)}.success-checkmark .check-mark{border:solid var(--color-success);border-width:0 3px 3px 0;width:24px;height:36px;animation:.3s ease-out .4s forwards check-scale;position:absolute;top:22px;left:28px;transform:rotate(45deg)scale(0)}@keyframes circle-scale{0%{transform:scale(0)}to{transform:scale(1)}}@keyframes check-scale{0%{transform:rotate(45deg)scale(0)}to{transform:rotate(45deg)scale(1)}}.page-transition-enter{opacity:0;transform:translate(20px)}.page-transition-enter-active{opacity:1;transition:opacity var(--transition-base),transform var(--transition-base);transform:translate(0)}.page-transition-exit{opacity:1;transform:translate(0)}.page-transition-exit-active{opacity:0;transition:opacity var(--transition-base),transform var(--transition-base);transform:translate(-20px)}.modal-enter{opacity:0}.modal-enter .modal-container{transform:translateY(20px)scale(.95)}.modal-enter-active{opacity:1;transition:opacity var(--transition-base)}.modal-enter-active .modal-container{transition:transform var(--transition-spring);transform:translateY(0)scale(1)}.flip-enter{animation:.4s ease-out flipIn}.flip-exit{animation:.4s ease-out flipOut}@keyframes flipIn{0%{opacity:0;transform:rotateY(-90deg)}to{opacity:1;transform:rotateY(0)}}@keyframes flipOut{0%{opacity:1;transform:rotateY(0)}to{opacity:0;transform:rotateY(90deg)}}@keyframes splash-icon-glow{0%,to{filter:drop-shadow(0 0 8px #a855f766)}50%{filter:drop-shadow(0 0 20px #a855f7cc)}}@keyframes crystal-spin{0%{transform:rotateY(0)}50%{transform:rotateY(180deg)}to{transform:rotateY(360deg)}}.splash-icon-animated{animation:.8s ease-out forwards splash-icon-entrance,2s ease-in-out .8s infinite splash-icon-glow,2s linear .8s infinite crystal-spin}@keyframes empty-orb-float-1{0%,to{transform:translate(0)scale(1)}25%{transform:translate(30px,-20px)scale(1.05)}50%{transform:translate(-20px,15px)scale(.95)}75%{transform:translate(15px,25px)scale(1.02)}}@keyframes empty-orb-float-2{0%,to{transform:translate(0)scale(1)}25%{transform:translate(-25px,20px)scale(.97)}50%{transform:translate(20px,-15px)scale(1.04)}75%{transform:translate(-10px,-25px)scale(.98)}}@keyframes icon-3d-pulse{0%,to{box-shadow:0 4px 16px color-mix(in srgb,var(--color-primary)22%,transparent),0 0 20px color-mix(in srgb,var(--color-primary)12%,transparent),inset 0 1px 0 #ffffff1a}50%{box-shadow:0 6px 24px color-mix(in srgb,var(--color-primary)30%,transparent),0 0 30px color-mix(in srgb,var(--color-primary)18%,transparent),inset 0 1px 0 #ffffff26}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.flashcard-inner{transition:none}}:root{--srs-again:#ef4444;--srs-again-light:#ff6b6b;--srs-again-bg:#ef44441f;--srs-again-bg-subtle:#ef44440d;--srs-again-bg-hover:#ef444433;--srs-again-shadow:#ef44444d;--srs-again-shadow-hover:#ef444480;--srs-again-glow:#ef444426;--srs-again-glow-hover:#ef44444d;--srs-hard:#f97316;--srs-hard-light:#fb923c;--srs-hard-bg:#f973161f;--srs-hard-bg-subtle:#f973160d;--srs-hard-bg-hover:#f9731633;--srs-hard-shadow:#f973164d;--srs-hard-shadow-hover:#f9731680;--srs-hard-glow:#f9731626;--srs-hard-glow-hover:#f973164d;--srs-good:#10b981;--srs-good-light:#34d399;--srs-good-bg:#10b9811f;--srs-good-bg-subtle:#10b9810d;--srs-good-bg-hover:#10b98133;--srs-good-shadow:#10b9814d;--srs-good-shadow-hover:#10b98180;--srs-good-glow:#10b98126;--srs-good-glow-hover:#10b9814d;--srs-easy:#3b82f6;--srs-easy-light:#60a5fa;--srs-easy-bg:#3b82f61f;--srs-easy-bg-subtle:#3b82f60d;--srs-easy-bg-hover:#3b82f633;--srs-easy-shadow:#3b82f64d;--srs-easy-shadow-hover:#3b82f680;--srs-easy-glow:#3b82f626;--srs-easy-glow-hover:#3b82f64d;--srs-new:#a855f7;--srs-new-bg:#a855f71f;--srs-new-bg-subtle:#a855f70d;--srs-new-shadow:#a855f74d;--srs-new-glow:#a855f726;--srs-upcoming:#06b6d4;--srs-upcoming-light:#22d3ee;--srs-upcoming-bg:#06b6d41f;--srs-upcoming-bg-subtle:#06b6d40d;--srs-upcoming-bg-hover:#06b6d433;--srs-upcoming-shadow:#06b6d438;--srs-upcoming-shadow-hover:#06b6d459;--srs-upcoming-glow:#06b6d41f;--srs-upcoming-glow-hover:#06b6d433;--srs-shimmer:linear-gradient(90deg,transparent,#fff3,transparent);--srs-inset-highlight:inset 0 1px 0 #ffffff1a;--srs-inset-highlight-hover:inset 0 1px 0 #fff3}.cards-container{background:var(--color-bg);height:100vh;font-family:var(--font-sans);color:var(--color-text);display:flex;position:relative}.cards-main{flex-direction:column;flex:1;min-width:0;display:flex;position:fixed;inset:0;overflow:hidden auto}.cards-sidebar{width:var(--right-sidebar-width-real,250px);background:var(--color-surface);border-left:1px solid var(--color-outline-variant)}@supports (color:color-mix(in lab, red, red)){.cards-sidebar{border-left:1px solid color-mix(in srgb,var(--color-outline-variant)50%,transparent)}}.cards-sidebar{height:100vh;z-index:var(--z-sticky);transition:width var(--transition-base),transform var(--transition-base);flex-direction:column;display:flex;position:fixed;top:0;right:0;overflow:visible}.cards-sidebar.sidebar-panel--mobile.transition-enabled{transition:transform .2s ease-out}.cards-sidebar.sidebar-panel--collapsed{border-left:none;padding:0;overflow:hidden;width:0!important;min-width:0!important}.cards-sidebar.sidebar-panel--collapsed .sidebar-file-header,.cards-sidebar.sidebar-panel--collapsed .sidebar-file-content,.cards-sidebar.sidebar-panel--collapsed .sidebar-file-footer{opacity:0;visibility:hidden;transition:opacity var(--transition-base),visibility var(--transition-base)}.cards-empty-state{transition:left var(--transition-base),right var(--transition-base);padding:var(--space-8);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.cards-empty-icon{margin-bottom:var(--space-8)}.cards-empty-title{font-size:var(--text-4xl);font-weight:var(--font-bold);color:var(--color-text);margin-bottom:var(--space-4)}.cards-empty-description{font-size:var(--text-xl);color:var(--color-text-secondary);margin-bottom:var(--space-8);max-width:520px;line-height:1.6}.cards-empty-actions{gap:var(--space-4);flex-wrap:wrap;justify-content:center;align-items:stretch;display:flex}.deck-tree{gap:var(--space-1);flex-direction:column;display:flex}.deck-tree-empty{padding:var(--space-8)var(--space-4);color:var(--color-text-secondary);text-align:center;justify-content:center;align-items:center;gap:var(--space-3);flex-direction:column;display:flex}.deck-tree-empty svg{color:var(--color-text-tertiary)}.deck-tree-item{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-3);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);min-height:36px;display:flex;position:relative}.deck-tree-item:hover{background:var(--color-surface-container-high)}.deck-tree-item.active{background:var(--color-primary-container)}.deck-expand-btn{cursor:pointer;width:18px;height:18px;color:var(--color-text-tertiary);transition:transform var(--transition-fast);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.deck-expand-btn.expanded{transform:rotate(90deg)}.deck-expand-placeholder{flex-shrink:0;width:18px}.deck-icon{color:var(--color-primary);flex-shrink:0;align-items:center;display:flex}.deck-name{font-size:var(--text-sm);white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.deck-name-input{font-size:var(--text-sm);padding:var(--space-1)var(--space-2);border:1px solid var(--color-primary);border-radius:var(--radius-sm);background:var(--color-surface);outline:none;flex:1}.deck-due-badge{font-size:var(--text-xs);font-weight:var(--font-semibold);background:var(--color-primary);color:var(--color-on-primary);border-radius:var(--radius-full);flex-shrink:0;padding:2px 6px}.deck-actions{opacity:0;transition:opacity var(--transition-fast);display:flex}.deck-tree-item:hover .deck-actions{opacity:1}.deck-menu-btn{cursor:pointer;width:24px;height:24px;color:var(--color-text-tertiary);border-radius:var(--radius-sm);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.deck-menu-btn:hover{background:var(--color-hover);color:var(--color-text)}.deck-dropdown-menu{z-index:100;background:var(--color-surface);border:1px solid var(--color-outline-variant);border-radius:var(--radius-md);min-width:180px;padding:var(--space-1);box-shadow:var(--shadow-lg);position:absolute;top:100%;right:0}.deck-dropdown-item{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2)var(--space-3);cursor:pointer;font-size:var(--text-sm);color:var(--color-text);border-radius:var(--radius-sm);transition:background var(--transition-fast);background:0 0;border:none;display:flex}.deck-dropdown-item:hover{background:var(--color-hover)}.deck-dropdown-item.danger{color:var(--color-error)}.deck-dropdown-item.danger:hover{background:var(--color-error-container)}.deck-dropdown-divider{background:var(--color-outline-variant);height:1px;margin:var(--space-1)0}.deck-tree-children{margin-left:var(--space-4)}.deck-color-violet .deck-icon{color:var(--color-violet)}.deck-color-teal .deck-icon{color:var(--color-teal)}.deck-color-blue .deck-icon{color:var(--color-blue)}.deck-color-orange .deck-icon{color:var(--color-orange)}.deck-color-pink .deck-icon{color:var(--color-pink)}.deck-color-coral .deck-icon{color:var(--color-coral)}.deck-color-gold .deck-icon{color:var(--color-gold)}.deck-color-lime .deck-icon{color:var(--color-lime)}.review-container{--review-reserved:clamp(320px,38vh,460px);height:100vh;min-height:100vh;padding:clamp(var(--space-2),2vw,var(--space-4));background:var(--color-bg);box-sizing:border-box;flex-direction:column;justify-content:flex-start;align-items:center;display:flex;position:relative;overflow:clip visible}@supports (height:100dvh){.review-container{--review-reserved:clamp(320px,38dvh,460px);height:100dvh;min-height:100dvh}}.review-container>*{width:100%;max-width:800px}.btn-expand-header{padding:var(--space-2);background:var(--color-surface);border:1px solid var(--color-outline-variant);border-radius:var(--radius-full);cursor:pointer;color:var(--color-text-secondary);width:36px;height:36px;margin:var(--space-2)auto;justify-content:center;align-items:center;transition:all .25s cubic-bezier(.4,0,.2,1);animation:.3s slideDown;display:flex}.btn-expand-header:hover{background:var(--color-primary-container);border-color:var(--color-primary);color:var(--color-primary);transform:scale(1.1)}.review-header-new{gap:var(--space-3);padding:var(--space-4)0 var(--space-2);flex-direction:column;margin-bottom:0;display:flex;position:relative}.review-deck-title{align-items:center;gap:var(--space-3);margin-bottom:var(--space-1);min-width:0;display:flex}.review-deck-title h3{font-size:var(--text-2xl);font-weight:var(--font-bold);white-space:nowrap;flex:1;min-width:0;margin:0;display:block;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#000 86%,#0000 100%);mask-image:linear-gradient(90deg,#000 86%,#0000 100%)}.review-deck-actions{gap:var(--space-2);flex-shrink:0;align-items:center;display:flex}.review-deck-actions-desktop{gap:var(--space-2);align-items:center;display:flex}.review-deck-actions-mobile{display:none;position:relative}.review-deck-actions-mobile-menu{top:calc(100% + var(--space-2));background:var(--color-surface);border:1px solid var(--color-outline-variant);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:1000;min-width:200px;padding:var(--space-2);gap:var(--space-1);flex-direction:column;animation:.2s fadeIn;display:flex;position:absolute;right:0}.review-deck-actions-mobile-item{align-items:center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);color:var(--color-text-secondary);font-size:var(--text-sm);text-align:left;background:0 0;border:none;width:100%;display:flex}.review-deck-actions-mobile-item:hover{background:rgba(var(--color-primary-rgb,99,102,241),.1);color:var(--color-primary)}.review-deck-actions-mobile-item svg{flex-shrink:0}@media (max-width:768px){.review-deck-actions-desktop{display:none}.review-deck-actions-mobile{display:block}.review-deck-actions{font-size:var(--text-base)}.review-deck-actions-mobile-item{padding:clamp(var(--space-2),3vw,var(--space-3));font-size:clamp(var(--text-xs),2.5vw,var(--text-sm))}.review-deck-actions-mobile-item svg{width:clamp(.875em,3.5vw,1em);height:clamp(.875em,3.5vw,1em)}}.btn-icon-minimal{padding:var(--space-2);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);color:var(--color-text-secondary);background:0 0;border:none;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.btn-icon-minimal svg{width:24px;height:24px}@media (max-width:768px){.btn-icon-minimal{width:clamp(32px,8vw,40px);height:clamp(32px,8vw,40px);padding:clamp(var(--space-1),2vw,var(--space-2))}.btn-icon-minimal svg{width:clamp(16px,4vw,24px);height:clamp(16px,4vw,24px)}.btn-icon-minimal.btn-close svg{width:clamp(18px,4.5vw,20px);height:clamp(18px,4.5vw,20px)}}.btn-icon-minimal:hover{background:rgba(var(--color-primary-rgb,99,102,241),.1);color:var(--color-primary)}.btn-icon-minimal:disabled{opacity:.3;cursor:not-allowed}.btn-icon-minimal.btn-close{border-radius:var(--radius-full);width:36px;height:36px;color:var(--color-text-tertiary);cursor:pointer;transform-origin:50%;background:0 0;border:2px solid #0000;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:visible}.btn-icon-minimal.btn-close:hover,.btn-icon-minimal.btn-close:active{color:var(--color-error);box-shadow:none;background:0 0;border-color:#0000;transform:none}.btn-icon-minimal.btn-close svg{display:block;transform:translateY(-1px)}.review-deck-title{position:relative;overflow:visible}.review-categories{width:100%;padding:var(--space-2)var(--space-4);z-index:10;flex-shrink:0;justify-content:center;align-items:center;gap:clamp(8px,2vw,32px);margin-bottom:clamp(8px,2vh,24px);display:flex;position:relative}.review-categories-chips{flex-wrap:wrap;justify-content:center;align-items:center;gap:clamp(12px,2vw,24px);display:flex}.review-category-chip{align-items:center;gap:var(--space-1);padding:var(--space-1)var(--space-3)calc(var(--space-1) + 8px);border-radius:var(--radius-lg);cursor:pointer;width:var(--review-category-width);background:0 0;border:1px solid #0000;flex-direction:column;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:visible}.review-category-chip.due{--_cc:var(--srs-again);--_ccbg:var(--srs-again-bg);--_ccbgs:var(--srs-again-bg-subtle);--_ccsh:var(--srs-again-shadow);--_ccgl:var(--srs-again-glow)}.review-category-chip.new{--_cc:var(--srs-new);--_ccbg:var(--srs-new-bg);--_ccbgs:var(--srs-new-bg-subtle);--_ccsh:var(--srs-new-shadow);--_ccgl:var(--srs-new-glow)}.review-category-chip.upcoming{--_cc:var(--srs-upcoming);--_ccbg:var(--srs-upcoming-bg);--_ccbgs:var(--srs-upcoming-bg-subtle);--_ccsh:var(--srs-upcoming-shadow);--_ccgl:var(--srs-upcoming-glow)}.review-category-chip.due,.review-category-chip.new,.review-category-chip.upcoming{color:var(--_cc)}@supports (color:color-mix(in lab, red, red)){.review-category-chip.due,.review-category-chip.new,.review-category-chip.upcoming{color:color-mix(in srgb,var(--_cc)76%,var(--color-text-secondary)24%)}}.review-category-chip.due,.review-category-chip.new,.review-category-chip.upcoming{filter:none}.review-category-chip.due:hover,.review-category-chip.new:hover,.review-category-chip.upcoming:hover{color:var(--_cc)}@supports (color:color-mix(in lab, red, red)){.review-category-chip.due:hover,.review-category-chip.new:hover,.review-category-chip.upcoming:hover{color:color-mix(in srgb,var(--_cc)92%,white 8%)}}.review-category-chip.due:hover,.review-category-chip.new:hover,.review-category-chip.upcoming:hover{box-shadow:none;filter:none;background:0 0;border-color:#0000;transform:none}.review-category-chip.due.active,.review-category-chip.new.active,.review-category-chip.upcoming.active{color:var(--_cc);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;filter:none;background:0 0;border-color:#0000;transform:none}.review-category-chip .category-count{font-size:var(--text-xl);font-weight:var(--font-bold);z-index:1;text-shadow:none;opacity:.92;filter:drop-shadow(0 0 6px var(--_cc))drop-shadow(0 0 12px var(--_cc));line-height:1;position:relative}@supports (color:color-mix(in lab, red, red)){.review-category-chip .category-count{filter:drop-shadow(0 0 6px color-mix(in srgb,var(--_cc)40%,transparent))drop-shadow(0 0 12px color-mix(in srgb,var(--_cc)20%,transparent))}}.review-category-chip .category-label{font-size:var(--text-xs);font-weight:var(--font-medium);text-transform:uppercase;letter-spacing:.5px;text-align:center;z-index:1;color:currentColor;opacity:.78;filter:drop-shadow(0 0 4px var(--_cc));line-height:1.1;position:relative}@supports (color:color-mix(in lab, red, red)){.review-category-chip .category-label{filter:drop-shadow(0 0 4px color-mix(in srgb,var(--_cc)28%,transparent))}}.review-category-chip:hover .category-count,.review-category-chip.active .category-count,.review-category-chip:hover .category-label,.review-category-chip.active .category-label{opacity:1}.review-category-chip:hover .category-count,.review-category-chip.active .category-count{filter:drop-shadow(0 0 8px var(--_cc))drop-shadow(0 0 16px var(--_cc))}@supports (color:color-mix(in lab, red, red)){.review-category-chip:hover .category-count,.review-category-chip.active .category-count{filter:drop-shadow(0 0 8px color-mix(in srgb,var(--_cc)72%,transparent))drop-shadow(0 0 16px color-mix(in srgb,var(--_cc)40%,transparent))}}.review-category-chip:hover .category-label,.review-category-chip.active .category-label{filter:drop-shadow(0 0 6px var(--_cc))}@supports (color:color-mix(in lab, red, red)){.review-category-chip:hover .category-label,.review-category-chip.active .category-label{filter:drop-shadow(0 0 6px color-mix(in srgb,var(--_cc)50%,transparent))}}.review-category-chip:after{content:"";transform-origin:50%;border-radius:var(--radius-full);background:linear-gradient(90deg,transparent 0%,var(--_cc)18%,var(--_cc)50%,var(--_cc)82%,transparent 100%);width:72%;height:1px;position:absolute;bottom:2px;left:50%;transform:translate(-50%)scaleX(.78)}@supports (color:color-mix(in lab, red, red)){.review-category-chip:after{background:linear-gradient(90deg,transparent 0%,color-mix(in srgb,var(--_cc)12%,transparent)18%,color-mix(in srgb,var(--_cc)52%,transparent)50%,color-mix(in srgb,var(--_cc)12%,transparent)82%,transparent 100%)}}.review-category-chip:after{opacity:0;transition:opacity .25s,transform .25s,background .25s}.review-category-chip:hover:after{opacity:.48;transform:translate(-50%)scaleX(.92)}.review-category-chip.active:after{background:linear-gradient(90deg,transparent 0%,var(--_cc)14%,var(--_cc)50%,var(--_cc)86%,transparent 100%)}@supports (color:color-mix(in lab, red, red)){.review-category-chip.active:after{background:linear-gradient(90deg,transparent 0%,color-mix(in srgb,var(--_cc)22%,transparent)14%,var(--_cc)50%,color-mix(in srgb,var(--_cc)22%,transparent)86%,transparent 100%)}}.review-category-chip.active:after{box-shadow:0 0 8px var(--_cc),0 0 14px var(--_cc)}@supports (color:color-mix(in lab, red, red)){.review-category-chip.active:after{box-shadow:0 0 8px color-mix(in srgb,var(--_cc)24%,transparent),0 0 14px color-mix(in srgb,var(--_cc)14%,transparent)}}.review-category-chip.active:after{opacity:.95;transform:translate(-50%)scaleX(1)}.review-content{min-height:0;padding:0 var(--space-4);justify-content:center;align-items:center;gap:clamp(var(--space-4),6vw,var(--space-16));flex:1;width:100%;max-width:1200px;margin:0 auto;display:flex;position:relative}.review-content.is-returning-from-editor{animation:.28s cubic-bezier(.22,1,.36,1) both reviewSceneReturn}.review-footer-wrapper{flex-shrink:0;justify-content:center;align-items:center;width:100%;max-width:800px;min-height:67px;margin-top:clamp(8px,2vh,28px);margin-bottom:clamp(8px,2vh,20px);display:flex}.review-footer-wrapper.is-returning-from-editor{animation:.28s cubic-bezier(.22,1,.36,1) 20ms both reviewSceneReturn}.review-buttons-container{width:100%}.review-buttons-container.invisible{visibility:hidden}.review-buttons,.upcoming-navigation,.mastered-navigation{flex-shrink:0;width:100%;margin-top:0;padding-bottom:0}@keyframes reviewSceneReturn{0%{opacity:0;transform:translateY(10px)scale(.992)}to{opacity:1;transform:translateY(0)scale(1)}}@media (max-width:768px){.btn-expand-header-inline{margin-left:0}.deck-header-actions-inline .btn-icon-small{width:34px;min-width:34px;max-width:34px;height:34px;min-height:34px;max-height:34px;padding:var(--space-1)}.deck-header-actions-inline .btn-icon-small svg{width:16px;height:16px}.mastered-navigation .btn-icon-text span,.upcoming-navigation .btn-icon-text span{display:none}.mastered-navigation .btn-icon-text,.upcoming-navigation .btn-icon-text{border-radius:var(--radius-md)!important;flex:none!important;justify-content:center!important;align-items:center!important;width:44px!important;min-width:44px!important;max-width:44px!important;height:44px!important;padding:0!important}.mastered-navigation .btn-icon-text svg,.upcoming-navigation .btn-icon-text svg{width:20px!important;height:20px!important;margin:0!important}.mastered-counter,.upcoming-counter{padding:var(--space-2)var(--space-3)!important;font-size:var(--text-sm)!important;font-weight:var(--font-bold)!important;color:var(--color-text-secondary)!important;border-radius:var(--radius-md)!important;white-space:nowrap!important;min-width:60px!important;max-width:80px!important;box-shadow:none!important;background:0 0!important;border:none!important;flex-shrink:0!important;justify-content:center!important;align-items:center!important;display:flex!important}.mastered-navigation,.upcoming-navigation{justify-content:center!important;align-items:center!important;gap:var(--space-2)!important;flex-wrap:nowrap!important;width:100%!important;display:flex!important;position:relative!important}.mastered-navigation{gap:var(--space-1)!important}.upcoming-navigation:before,.upcoming-navigation:after{display:none!important}.review-footer-wrapper{margin-bottom:var(--space-1);margin-top:var(--space-1);padding:var(--space-1)var(--space-2)var(--space-2)}.review-categories{margin-bottom:var(--space-1)}.review-content{margin-bottom:0;padding-bottom:0}.form-actions{border-top:none!important}}.flashcard-container{width:100%;aspect-ratio:var(--flashcard-aspect-ratio,3/4);max-width:clamp(280px,min(var(--flashcard-max-width,420px),75vw,calc((100vh - var(--review-reserved,220px))*.75)),450px);max-height:clamp(320px,min(var(--flashcard-max-height,560px),70vh,calc(100vh - var(--review-reserved,220px))),600px);perspective:2000px;cursor:pointer;flex-shrink:0;transition:max-width .3s ease-out,max-height .3s ease-out}@supports (height:100dvh){.flashcard-container{max-width:clamp(280px,min(var(--flashcard-max-width,420px),75vw,calc((100dvh - var(--review-reserved,220px))*.75)),450px);max-height:clamp(320px,min(var(--flashcard-max-height,560px),70dvh,calc(100dvh - var(--review-reserved,220px))),600px)}}.flashcard-container.flashcard-animate-in{animation:.5s cubic-bezier(.25,.46,.45,.94) forwards flashcard-fade-in}@keyframes flashcard-fade-in{0%{opacity:0;filter:blur(8px);transform:scale(.96)}to{opacity:1;filter:blur();transform:scale(1)}}.flashcard-inner{width:100%;height:100%;transform-style:preserve-3d;transition:transform .8s cubic-bezier(.4,0,.2,1);position:relative}.flashcard-container.flipped .flashcard-inner{transform:rotateY(-180deg)}.flashcard-face{backface-visibility:hidden;background:linear-gradient(var(--color-surface),var(--color-surface))padding-box,radial-gradient(circle at 50% 10%,var(--btn-gradient-start)0%,var(--btn-gradient-mid)30%,var(--btn-gradient-end)100%)border-box;box-shadow:0 20px 40px -15px var(--color-primary);border:1px solid #0000;border-radius:24px;flex-direction:column;display:flex;position:absolute;inset:0;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.flashcard-face{box-shadow:0 20px 40px -15px color-mix(in srgb,var(--color-primary)25%,transparent)}}.flashcard-front{z-index:2}.flashcard-back{transform:rotateY(-180deg)}.flashcard-content{flex:1;justify-content:center;align-items:flex-start;min-height:0;padding:clamp(4px,2vw,16px);display:flex;overflow:hidden auto}.flashcard-text{text-align:center;font-size:var(--cards-font-size,20px);line-height:var(--cards-line-height,1.6)}.flashcard-text.markdown-content{max-width:none;font-family:var(--font-cards,var(--font-notes,var(--font-sans)));font-size:var(--cards-font-size,20px);line-height:var(--cards-line-height,1.6)}.flashcard-mastered-badge{top:var(--space-3);right:var(--space-3);color:var(--color-success);position:absolute}.flashcard-hint{bottom:var(--space-3);font-size:var(--text-xs);color:var(--color-text-tertiary);opacity:.7;position:absolute;left:50%;transform:translate(-50%)}.flashcard-container.flipped .flashcard-hint{display:none}@media (max-width:768px){.flashcard-container{transition:none}@keyframes flashcard-fade-in{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.flashcard-container.flashcard-animate-in{animation-duration:.3s}.flashcard-face{border-radius:28px}}.mini-card-stack{align-items:center;gap:var(--space-2);flex-direction:column;display:flex;position:absolute}.stack-left,.stack-right{position:static;transform:none}.mini-cards{width:var(--mini-card-width);height:var(--mini-card-height);position:relative}.mini-card{width:var(--mini-card-width);height:var(--mini-card-height);background:var(--color-surface);border:1px solid var(--color-outline-variant);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);position:absolute}.mini-card-label{font-size:var(--text-sm);color:var(--color-text-secondary);white-space:nowrap;font-weight:var(--font-medium)}.review-buttons{padding:var(--space-2);justify-content:center;align-items:center;gap:0;min-height:67px;display:flex}.review-btn{padding:var(--review-btn-padding);border-radius:var(--radius-lg);background:var(--color-surface);cursor:pointer;max-width:var(--review-btn-max-width);min-height:var(--review-btn-min-height);border:1px solid;flex-direction:column;flex:1;justify-content:center;align-items:center;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:visible}.review-btn:disabled{opacity:.5;cursor:not-allowed}.review-btn-label{font-size:var(--text-base);font-weight:var(--font-semibold);z-index:1;position:relative}.review-btn-interval{font-size:var(--text-sm);font-weight:var(--font-medium);opacity:.9;z-index:1;position:relative}.review-btn-again{--_c:var(--srs-again);--_cl:var(--srs-again-light);--_bg:var(--srs-again-bg);--_bgs:var(--srs-again-bg-subtle);--_bgh:var(--srs-again-bg-hover);--_sh:var(--srs-again-shadow);--_shh:var(--srs-again-shadow-hover);--_gl:var(--srs-again-glow);--_glh:var(--srs-again-glow-hover)}.review-btn-hard{--_c:var(--srs-hard);--_cl:var(--srs-hard-light);--_bg:var(--srs-hard-bg);--_bgs:var(--srs-hard-bg-subtle);--_bgh:var(--srs-hard-bg-hover);--_sh:var(--srs-hard-shadow);--_shh:var(--srs-hard-shadow-hover);--_gl:var(--srs-hard-glow);--_glh:var(--srs-hard-glow-hover)}.review-btn-good{--_c:var(--srs-good);--_cl:var(--srs-good-light);--_bg:var(--srs-good-bg);--_bgs:var(--srs-good-bg-subtle);--_bgh:var(--srs-good-bg-hover);--_sh:var(--srs-good-shadow);--_shh:var(--srs-good-shadow-hover);--_gl:var(--srs-good-glow);--_glh:var(--srs-good-glow-hover)}.review-btn-easy{--_c:var(--srs-easy);--_cl:var(--srs-easy-light);--_bg:var(--srs-easy-bg);--_bgs:var(--srs-easy-bg-subtle);--_bgh:var(--srs-easy-bg-hover);--_sh:var(--srs-easy-shadow);--_shh:var(--srs-easy-shadow-hover);--_gl:var(--srs-easy-glow);--_glh:var(--srs-easy-glow-hover)}.review-btn-again,.review-btn-hard,.review-btn-good,.review-btn-easy{border-color:var(--_c);color:var(--_c);background:linear-gradient(135deg,var(--_bg),var(--_bgs));box-shadow:0 4px 16px var(--_sh),0 0 20px var(--_gl),var(--srs-inset-highlight);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.review-btn-again:before,.review-btn-hard:before,.review-btn-good:before,.review-btn-easy:before{content:"";background:var(--srs-shimmer);width:100%;height:100%;transition:left .5s;position:absolute;top:0;left:-100%}.review-btn-again:hover:not(:disabled):before,.review-btn-hard:hover:not(:disabled):before,.review-btn-good:hover:not(:disabled):before,.review-btn-easy:hover:not(:disabled):before{left:100%}.review-btn-again:hover:not(:disabled),.review-btn-hard:hover:not(:disabled),.review-btn-good:hover:not(:disabled),.review-btn-easy:hover:not(:disabled){background:linear-gradient(135deg,var(--_bgh),var(--_bg));box-shadow:0 8px 24px var(--_shh),0 0 32px var(--_glh),var(--srs-inset-highlight-hover);border-color:var(--_cl);transform:translateY(-3px)}.review-btn-again:active:not(:disabled),.review-btn-hard:active:not(:disabled),.review-btn-good:active:not(:disabled),.review-btn-easy:active:not(:disabled){box-shadow:0 4px 16px var(--_sh),0 0 24px var(--_gl);transform:translateY(-1px)}.review-btn.review-btn-text{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;padding:var(--space-2)var(--space-3)calc(var(--space-2) + 8px);color:var(--_c);background:0 0;border:none;overflow:visible}.review-btn.review-btn-text:hover:not(:disabled){box-shadow:none;color:var(--_cl);background:0 0;border:none;transform:none}.review-btn.review-btn-text:hover:not(:disabled) .review-btn-label,.review-btn.review-btn-text:hover:not(:disabled) .review-btn-interval{filter:drop-shadow(0 0 8px var(--_c))drop-shadow(0 0 16px var(--_c))}@supports (color:color-mix(in lab, red, red)){.review-btn.review-btn-text:hover:not(:disabled) .review-btn-label,.review-btn.review-btn-text:hover:not(:disabled) .review-btn-interval{filter:drop-shadow(0 0 8px color-mix(in srgb,var(--_c)72%,transparent))drop-shadow(0 0 16px color-mix(in srgb,var(--_c)40%,transparent))}}.review-btn.review-btn-text:active:not(:disabled){box-shadow:none;color:var(--_cl);border:none;transform:none}.review-btn.review-btn-text:active:not(:disabled) .review-btn-label,.review-btn.review-btn-text:active:not(:disabled) .review-btn-interval{filter:drop-shadow(0 0 10px var(--_c))drop-shadow(0 0 18px var(--_c))}@supports (color:color-mix(in lab, red, red)){.review-btn.review-btn-text:active:not(:disabled) .review-btn-label,.review-btn.review-btn-text:active:not(:disabled) .review-btn-interval{filter:drop-shadow(0 0 10px color-mix(in srgb,var(--_c)66%,transparent))drop-shadow(0 0 18px color-mix(in srgb,var(--_c)40%,transparent))}}.review-btn.review-btn-text:before{display:none}.review-btn.review-btn-text:after{content:"";border-radius:var(--radius-full);background:linear-gradient(90deg,transparent 0%,var(--_c)16%,var(--_c)50%,var(--_c)84%,transparent 100%);width:min(84px,78%);height:1px;position:absolute;bottom:8px;left:50%;transform:translate(-50%)scaleX(.82)}@supports (color:color-mix(in lab, red, red)){.review-btn.review-btn-text:after{background:linear-gradient(90deg,transparent 0%,color-mix(in srgb,var(--_c)16%,transparent)16%,color-mix(in srgb,var(--_c)58%,transparent)50%,color-mix(in srgb,var(--_c)16%,transparent)84%,transparent 100%)}}.review-btn.review-btn-text:after{opacity:.78;transition:opacity .25s,transform .25s,background .25s,box-shadow .25s}.review-btn.review-btn-text .review-btn-label{letter-spacing:.03em;font-size:var(--text-md);filter:drop-shadow(0 0 8px var(--_c))drop-shadow(0 0 16px var(--_c))}@supports (color:color-mix(in lab, red, red)){.review-btn.review-btn-text .review-btn-label{filter:drop-shadow(0 0 8px color-mix(in srgb,var(--_c)60%,transparent))drop-shadow(0 0 16px color-mix(in srgb,var(--_c)30%,transparent))}}.review-btn.review-btn-text .review-btn-interval{opacity:.75;font-size:var(--text-xs);filter:drop-shadow(0 0 6px var(--_c))}@supports (color:color-mix(in lab, red, red)){.review-btn.review-btn-text .review-btn-interval{filter:drop-shadow(0 0 6px color-mix(in srgb,var(--_c)44%,transparent))}}.review-btn.review-btn-text:hover:not(:disabled):after{background:linear-gradient(90deg,transparent 0%,var(--_c)14%,var(--_cl)50%,var(--_c)86%,transparent 100%)}@supports (color:color-mix(in lab, red, red)){.review-btn.review-btn-text:hover:not(:disabled):after{background:linear-gradient(90deg,transparent 0%,color-mix(in srgb,var(--_c)22%,transparent)14%,var(--_cl)50%,color-mix(in srgb,var(--_c)22%,transparent)86%,transparent 100%)}}.review-btn.review-btn-text:hover:not(:disabled):after{opacity:1;box-shadow:0 0 8px var(--_c),0 0 14px var(--_c);transform:translate(-50%)scaleX(1)}@supports (color:color-mix(in lab, red, red)){.review-btn.review-btn-text:hover:not(:disabled):after{box-shadow:0 0 8px color-mix(in srgb,var(--_c)24%,transparent),0 0 14px color-mix(in srgb,var(--_c)14%,transparent)}}.review-btn.review-btn-text:active:not(:disabled):after{background:linear-gradient(90deg,transparent 0%,var(--_c)14%,var(--_cl)50%,var(--_c)86%,transparent 100%)}@supports (color:color-mix(in lab, red, red)){.review-btn.review-btn-text:active:not(:disabled):after{background:linear-gradient(90deg,transparent 0%,color-mix(in srgb,var(--_c)26%,transparent)14%,var(--_cl)50%,color-mix(in srgb,var(--_c)26%,transparent)86%,transparent 100%)}}.review-btn.review-btn-text:active:not(:disabled):after{opacity:1;transform:translate(-50%)scaleX(1.03)}@media (max-width:360px){.review-buttons{grid-template-columns:1fr}.review-btn{width:100%}}@media (max-width:400px){.review-btn{min-height:28px;padding:2px var(--space-1)}.review-btn.review-btn-text{padding:2px var(--space-1)10px}.review-btn-label{font-size:clamp(.55rem,2.75vw,.6875rem)}.review-btn-interval{margin-top:0;font-size:clamp(.45rem,2.25vw,.5625rem)}}@media (max-width:480px){.review-btn{border-radius:var(--radius-lg);padding:var(--space-2)!important;min-height:var(--review-btn-min-height,40px)!important}.review-btn.review-btn-text{padding:var(--space-2)var(--space-2)calc(var(--space-2) + 8px)!important}.review-btn-again,.review-btn-hard,.review-btn-good,.review-btn-easy{box-shadow:0 3px 14px var(--_sh),0 0 18px var(--_gl),var(--srs-inset-highlight)}.review-btn-again:hover:not(:disabled),.review-btn-hard:hover:not(:disabled),.review-btn-good:hover:not(:disabled),.review-btn-easy:hover:not(:disabled){box-shadow:0 6px 20px var(--_shh),0 0 28px var(--_glh),var(--srs-inset-highlight-hover)}.review-btn-label{font-size:clamp(.65rem,3.25vw,.8125rem);line-height:1.1}.review-btn-interval{margin-top:0;font-size:clamp(.55rem,2.75vw,.6875rem);line-height:1.1}.review-footer-wrapper{margin-bottom:var(--space-1)}}@media (max-width:640px){.review-buttons{flex-wrap:nowrap}.review-btn{min-width:0}}.session-complete{text-align:center;padding:var(--space-8);flex-direction:column;flex:1;justify-content:center;align-items:center;display:flex}.session-complete-icon{background:var(--color-success-container);width:96px;height:96px;margin-bottom:var(--space-6);border-radius:50%;justify-content:center;align-items:center;display:flex}.session-complete-icon svg{width:48px;height:48px;color:var(--color-success)}.session-complete-title{font-size:var(--text-2xl);font-weight:var(--font-bold);margin-bottom:var(--space-2)}.session-complete-stats{font-size:var(--text-lg);color:var(--color-text-secondary);margin-bottom:var(--space-6)}.generate-cards-modal{width:100%;max-width:560px}.generate-form{flex-direction:column;gap:0;display:flex}.manual-card-form{gap:var(--space-4);padding:var(--space-6);flex-direction:column;max-height:70vh;display:flex;overflow-y:auto}.cards-manual-creation .inline-command-form{gap:var(--space-4)}.cards-manual-creation-head{gap:var(--space-3);width:100%;padding-bottom:var(--space-3);flex-direction:column;display:flex;position:relative}.cards-manual-creation-head:after{content:"";background:linear-gradient(90deg,transparent 0%,var(--color-outline-variant)22%,var(--color-outline-variant)50%,var(--color-outline-variant)78%,transparent 100%);height:.5px;position:absolute;bottom:0;left:0;right:0}@supports (color:color-mix(in lab, red, red)){.cards-manual-creation-head:after{background:linear-gradient(90deg,transparent 0%,color-mix(in srgb,var(--color-outline-variant)72%,transparent)22%,color-mix(in srgb,var(--color-outline-variant)100%,transparent)50%,color-mix(in srgb,var(--color-outline-variant)72%,transparent)78%,transparent 100%)}}.cards-manual-creation{width:min(100%,760px)}.cards-manual-creation.inline-command-bar{padding:var(--space-3)0 0}.cards-manual-creation .inline-command-form{gap:var(--space-4);width:100%}.cards-manual-creation .inline-command-input-row{width:100%;max-width:none;margin:0}.cards-manual-entry-panel{gap:var(--space-4);width:100%;padding-bottom:calc(var(--space-6) + env(safe-area-inset-bottom,0px));flex-direction:column;display:flex}.cards-manual-mode-tabs{border-radius:var(--radius-lg);background:0 0;flex-wrap:nowrap;justify-content:center;align-self:center;align-items:center;gap:0;width:fit-content;padding:2px 4px;display:inline-flex;position:relative}.cards-manual-mode-tabs:before{content:"";background:linear-gradient(to bottom,transparent 0%,var(--color-outline-variant)18%,var(--color-outline-variant)50%,var(--color-outline-variant)82%,transparent 100%);width:1px;height:12px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@supports (color:color-mix(in lab, red, red)){.cards-manual-mode-tabs:before{background:linear-gradient(to bottom,transparent 0%,color-mix(in srgb,var(--color-outline-variant)28%,transparent)18%,color-mix(in srgb,var(--color-outline-variant)78%,transparent)50%,color-mix(in srgb,var(--color-outline-variant)28%,transparent)82%,transparent 100%)}}.cards-manual-mode-tabs:before{pointer-events:none}.cards-manual-mode-tab{--_manual-tab-color:var(--color-primary);justify-content:center;align-items:center;gap:var(--space-2);min-height:34px;padding:0 var(--space-3)8px;border-radius:var(--radius-sm);color:var(--color-text-tertiary);cursor:pointer;font-size:var(--text-xs);font-weight:var(--font-medium);white-space:nowrap;background:0 0;border:none;transition:color .2s,background .2s,opacity .2s;display:inline-flex;position:relative}.cards-manual-mode-tab:hover{color:var(--_manual-tab-color)}@supports (color:color-mix(in lab, red, red)){.cards-manual-mode-tab:hover{color:color-mix(in srgb,var(--_manual-tab-color)90%,white 10%)}}.cards-manual-mode-tab.active{color:var(--_manual-tab-color);background:0 0}.cards-manual-mode-tab svg{flex-shrink:0;width:13px;height:13px}.cards-manual-mode-tab:after{content:"";transform-origin:50%;border-radius:var(--radius-full);background:linear-gradient(90deg,transparent 0%,var(--_manual-tab-color)18%,var(--_manual-tab-color)50%,var(--_manual-tab-color)82%,transparent 100%);width:72%;height:1px;position:absolute;bottom:2px;left:50%;transform:translate(-50%)scaleX(.78)}@supports (color:color-mix(in lab, red, red)){.cards-manual-mode-tab:after{background:linear-gradient(90deg,transparent 0%,color-mix(in srgb,var(--_manual-tab-color)12%,transparent)18%,color-mix(in srgb,var(--_manual-tab-color)52%,transparent)50%,color-mix(in srgb,var(--_manual-tab-color)12%,transparent)82%,transparent 100%)}}.cards-manual-mode-tab:after{opacity:0;transition:opacity .25s,transform .25s,background .25s}.cards-manual-mode-tab:hover:after{opacity:.48;transform:translate(-50%)scaleX(.92)}.cards-manual-mode-tab.active:after{background:linear-gradient(90deg,transparent 0%,var(--_manual-tab-color)14%,var(--_manual-tab-color)50%,var(--_manual-tab-color)86%,transparent 100%)}@supports (color:color-mix(in lab, red, red)){.cards-manual-mode-tab.active:after{background:linear-gradient(90deg,transparent 0%,color-mix(in srgb,var(--_manual-tab-color)22%,transparent)14%,var(--_manual-tab-color)50%,color-mix(in srgb,var(--_manual-tab-color)22%,transparent)86%,transparent 100%)}}.cards-manual-mode-tab.active:after{box-shadow:0 0 8px var(--_manual-tab-color),0 0 14px var(--_manual-tab-color)}@supports (color:color-mix(in lab, red, red)){.cards-manual-mode-tab.active:after{box-shadow:0 0 8px color-mix(in srgb,var(--_manual-tab-color)24%,transparent),0 0 14px color-mix(in srgb,var(--_manual-tab-color)14%,transparent)}}.cards-manual-mode-tab.active:after{opacity:.95;transform:translate(-50%)scaleX(1)}.cards-manual-mode-tabs--inline{margin-bottom:var(--space-1)}.cards-text-import{gap:var(--space-3);flex-direction:column;width:100%;display:flex}.cards-text-import-shell{border-radius:var(--radius-xl);transition:box-shadow var(--transition-fast);position:relative}.cards-text-import-shell:focus-within{box-shadow:0 0 0 1px var(--color-primary)}.cards-text-import-textarea{width:100%;min-height:210px;padding:54px var(--space-4)var(--space-4);border-radius:var(--radius-xl);color:var(--color-text);font-size:var(--text-sm);resize:vertical;box-shadow:none;background:0 0;border:none;outline:none;line-height:1.6;transition:color .2s,opacity .2s}.cards-text-import-textarea:focus{box-shadow:none;outline:none}.cards-text-import-tools{top:var(--space-3);right:var(--space-3);z-index:2;align-items:center;gap:var(--space-2);display:flex;position:absolute}.cards-text-import-tool-anchor{position:relative}.cards-text-import-tool-btn{border-radius:var(--radius-full);width:32px;height:32px;color:var(--color-text-secondary);cursor:pointer;box-shadow:none;background:0 0;border:none;justify-content:center;align-items:center;transition:color .2s,opacity .2s;display:inline-flex}.cards-text-import-tool-btn:hover:not(:disabled),.cards-text-import-tool-btn.active{color:var(--color-primary);background:0 0}.cards-text-import-tool-btn:disabled{opacity:.5;cursor:not-allowed}.cards-text-import-tool-btn--ai:hover:not(:disabled){box-shadow:none}.cards-text-import-delimiter-menu{top:calc(100% + var(--space-2));min-width:180px;padding:var(--space-2);border-radius:var(--radius-xl);border:1px solid var(--color-outline-variant);flex-direction:column;gap:6px;display:flex;position:absolute;right:0}@supports (color:color-mix(in lab, red, red)){.cards-text-import-delimiter-menu{border:1px solid color-mix(in srgb,var(--color-outline-variant)50%,transparent)}}.cards-text-import-delimiter-menu{background:var(--color-surface)}@supports (color:color-mix(in lab, red, red)){.cards-text-import-delimiter-menu{background:color-mix(in srgb,var(--color-surface)96%,transparent)}}.cards-text-import-delimiter-menu{box-shadow:0 14px 32px var(--color-shadow,#000)}@supports (color:color-mix(in lab, red, red)){.cards-text-import-delimiter-menu{box-shadow:0 14px 32px color-mix(in srgb,var(--color-shadow,#000)18%,transparent)}}.cards-text-import-delimiter-menu{-webkit-backdrop-filter:blur(14px)}.cards-text-import-delimiter-option{width:100%;min-height:34px;padding:0 var(--space-3);border-radius:var(--radius-lg);color:var(--color-text-secondary);cursor:pointer;text-align:left;font-size:var(--text-sm);background:0 0;border:none;align-items:center;transition:all .2s;display:flex}.cards-text-import-delimiter-option:hover,.cards-text-import-delimiter-option.active{color:var(--color-text);background:var(--color-surface-container)}@supports (color:color-mix(in lab, red, red)){.cards-text-import-delimiter-option:hover,.cards-text-import-delimiter-option.active{background:color-mix(in srgb,var(--color-surface-container)78%,transparent)}}.cards-text-import-custom{width:100%;min-height:34px;padding:0 var(--space-3);border-radius:var(--radius-lg);border:1px solid var(--color-outline-variant)}@supports (color:color-mix(in lab, red, red)){.cards-text-import-custom{border:1px solid color-mix(in srgb,var(--color-outline-variant)55%,transparent)}}.cards-text-import-custom{background:var(--color-surface)}@supports (color:color-mix(in lab, red, red)){.cards-text-import-custom{background:color-mix(in srgb,var(--color-surface)88%,transparent)}}.cards-text-import-custom{color:var(--color-text);font-size:var(--text-sm);outline:none}.cards-text-import-custom:focus{border-color:var(--color-primary)}@supports (color:color-mix(in lab, red, red)){.cards-text-import-custom:focus{border-color:color-mix(in srgb,var(--color-primary)45%,transparent)}}.cards-text-import-custom:focus{box-shadow:0 0 0 1px var(--color-primary)}@supports (color:color-mix(in lab, red, red)){.cards-text-import-custom:focus{box-shadow:0 0 0 1px color-mix(in srgb,var(--color-primary)20%,transparent)}}.cards-text-import-feedback{align-items:flex-start;gap:var(--space-2);padding:var(--space-3)var(--space-4);border-radius:var(--radius-lg);font-size:var(--text-sm);display:flex}.cards-text-import-feedback--success{background:var(--color-success)}@supports (color:color-mix(in lab, red, red)){.cards-text-import-feedback--success{background:color-mix(in srgb,var(--color-success)10%,transparent)}}.cards-text-import-feedback--success{color:var(--color-success)}@supports (color:color-mix(in lab, red, red)){.cards-text-import-feedback--success{color:color-mix(in srgb,var(--color-success)82%,var(--color-text)18%)}}.cards-text-import-feedback--error{background:var(--color-error,#ef4444)}@supports (color:color-mix(in lab, red, red)){.cards-text-import-feedback--error{background:color-mix(in srgb,var(--color-error,#ef4444)10%,transparent)}}.cards-text-import-feedback--error{color:var(--color-error,#ef4444)}@supports (color:color-mix(in lab, red, red)){.cards-text-import-feedback--error{color:color-mix(in srgb,var(--color-error,#ef4444)82%,var(--color-text)18%)}}.cards-text-import-feedback-main{align-items:center;gap:var(--space-2);font-weight:var(--font-medium);display:flex}.cards-text-import-feedback-main svg,.cards-text-import-feedback--error svg{flex-shrink:0;margin-top:1px}.cards-text-import-feedback-meta{gap:var(--space-2)var(--space-3);color:var(--color-text-secondary);flex-wrap:wrap;margin-left:auto;display:flex}.cards-text-import-preview{gap:var(--space-2);padding-bottom:var(--space-1);flex-direction:column;display:flex}.cards-text-import-preview-item{gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-xl);border:1px solid var(--color-outline-variant);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@supports (color:color-mix(in lab, red, red)){.cards-text-import-preview-item{border:1px solid color-mix(in srgb,var(--color-outline-variant)45%,transparent)}}.cards-text-import-preview-item{background:var(--color-surface-container)}@supports (color:color-mix(in lab, red, red)){.cards-text-import-preview-item{background:color-mix(in srgb,var(--color-surface-container)58%,transparent)}}.cards-text-import-preview-side{min-width:0}.cards-text-import-preview-label{margin-bottom:var(--space-2);font-size:var(--text-xs);font-weight:var(--font-semibold);letter-spacing:.02em;text-transform:uppercase;color:var(--color-text-tertiary);display:inline-flex}.cards-text-import-preview-side p{color:var(--color-text);white-space:pre-wrap;word-break:break-word;margin:0;line-height:1.55}.cards-text-import-preview-more{margin-top:var(--space-1);margin-bottom:var(--space-2);font-size:var(--text-sm);color:var(--color-text-secondary);align-self:center}.cards-text-import-toolbar{padding-top:var(--space-2);padding-bottom:calc(var(--space-4) + env(safe-area-inset-bottom,0px));justify-content:flex-end}@media (max-width:768px){.cards-manual-mode-tabs{scrollbar-width:none;max-width:100%;overflow-x:auto}.cards-manual-mode-tabs::-webkit-scrollbar{display:none}.cards-text-import-feedback{flex-direction:column}.cards-text-import-feedback-meta{margin-left:0}.cards-text-import-preview-item{grid-template-columns:1fr}.cards-text-import-textarea{min-height:190px}.cards-text-import-toolbar .inline-command-toolbar-right{justify-content:space-between;width:100%}.cards-text-import-delimiter-menu{left:auto;right:0}}.success-message{align-items:center;gap:var(--space-2);padding:var(--space-3)var(--space-4);background:var(--color-success-container);color:var(--color-success);border-radius:var(--radius-lg);font-size:var(--text-sm);font-weight:var(--font-medium);animation:.3s slideInFromTop;display:flex}@keyframes slideInFromTop{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.profile-info-card{padding:var(--space-3);background:var(--color-primary-container);border-radius:var(--radius-lg);gap:var(--space-2);flex-direction:column;display:flex}.profile-info-header{align-items:center;gap:var(--space-2);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-primary);display:flex}.profile-info-details{align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--color-text-secondary);flex-wrap:wrap;display:flex}.profile-info-details strong{color:var(--color-text);font-weight:var(--font-semibold)}.form-hint{font-size:var(--text-xs);color:var(--color-text-tertiary);margin-top:var(--space-1)}.form-group{gap:var(--space-2);flex-direction:column;display:flex}.form-group label{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--color-text);margin-top:var(--space-4);margin-bottom:var(--space-5);display:block}@media (max-width:480px){.form-group label{font-size:var(--text-sm);margin-top:var(--space-3);margin-bottom:var(--space-3)}}.form-group label:has(svg){align-items:center;gap:var(--space-2);display:flex}.form-group label svg{vertical-align:middle;flex-shrink:0}.generate-form .form-group:first-child label{margin-top:0}.form-group:has(.unlimited-checkbox) label{margin-bottom:var(--space-1)}.form-input,.form-textarea{padding:var(--space-3)var(--space-4);background:var(--color-surface-variant);border:2px solid var(--color-outline-variant);border-radius:var(--radius-lg);font-size:var(--text-base);font-family:var(--font-sans);color:var(--color-text);transition:all var(--transition-fast)}.form-input:focus,.form-textarea:focus{border-color:var(--color-primary);background:var(--color-surface);box-shadow:0 0 0 3px var(--color-primary-container);outline:none}.form-textarea{resize:vertical;min-height:80px}.form-textarea--dragging{border-color:var(--color-primary);background:var(--color-primary-container);box-shadow:0 0 0 3px var(--color-primary-container)}.form-count-options{gap:var(--space-2);display:flex}.count-option{padding:var(--space-2)var(--space-3);background:var(--color-surface);border:1px solid var(--color-outline-variant);border-radius:var(--radius-md);font-size:var(--text-sm);cursor:pointer;transition:all var(--transition-fast);flex:1}.count-option:hover{border-color:var(--color-primary)}.count-option.active{background:var(--color-primary-container);border-color:var(--color-primary);color:var(--color-primary)}.form-radio-group{gap:var(--space-2);flex-wrap:wrap;display:flex}.form-radio-group .radio-option{padding:var(--space-2)var(--space-3);background:var(--color-surface);border:1px solid var(--color-outline-variant);border-radius:var(--radius-md);font-size:var(--text-sm);cursor:pointer;transition:all var(--transition-fast);align-items:center;display:flex}.form-radio-group .radio-option input{display:none}.form-radio-group .radio-option:hover{border-color:var(--color-primary)}.form-radio-group .radio-option.active{background:var(--color-primary-container);border-color:var(--color-primary);color:var(--color-primary)}.form-actions{justify-content:flex-end;gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--color-outline-variant);display:flex}.generate-progress{padding:var(--space-10);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.generate-progress-icon{margin-bottom:var(--space-6);color:var(--color-primary)}.generate-progress h3{font-size:var(--text-xl);margin-bottom:var(--space-2)}.generate-progress p{color:var(--color-text-secondary);margin-bottom:var(--space-6)}.generate-progress-bar{background:var(--color-surface-variant);border-radius:var(--radius-full);width:100%;max-width:300px;height:8px;overflow:hidden}.generate-progress-fill{background:var(--color-primary);border-radius:var(--radius-full);height:100%;transition:width .3s}.generate-progress-text{margin-top:var(--space-2);font-size:var(--text-sm);color:var(--color-text-secondary)}.card-editor-modal-wrapper{flex-direction:column;max-height:85vh;display:flex}.card-editor-modal-wrapper.inline-card-editor{max-height:none;box-shadow:none;background:0 0;border-radius:0;width:100%;max-width:450px;margin:0 auto}.card-editor-modal-wrapper.inline-card-editor .card-editor-content{max-height:none;padding:0;overflow-y:visible}.card-editor-modal-wrapper.inline-card-editor .modal-footer{background:linear-gradient(90deg,transparent 0%,var(--color-primary-container-hover)10%,var(--color-primary)50%,var(--color-primary-container-hover)90%,transparent 100%);padding-top:var(--space-4);margin-top:var(--space-4);background-position:top;background-repeat:no-repeat;background-size:100% 1.8px;border-top:1.8px solid #0000}.card-editor-modal-wrapper.inline-card-editor.inline-card-editor--new .modal-footer{background:linear-gradient(90deg,transparent 0%,var(--color-primary-container-hover)10%,var(--color-primary)50%,var(--color-primary-container-hover)90%,transparent 100%);background-position:top;background-repeat:no-repeat;background-size:100% 1.8px;border-top:1.8px solid #0000}.card-editor-modal-wrapper.inline-card-editor .modal-footer:before,.card-editor-modal-wrapper.inline-card-editor .modal-footer:after{display:none}.question-inline-editor{width:100%;max-width:720px;margin:0 auto var(--space-4)}.question-inline-editor-shell{opacity:0;grid-template-rows:0fr;transition:grid-template-rows .3s,opacity .26s,transform .3s;display:grid;transform:translateY(-8px)}.question-inline-editor-shell>.question-inline-editor{min-height:0;overflow:hidden}.question-inline-editor-shell.is-open{opacity:1;grid-template-rows:1fr;transform:translateY(0)}.question-inline-editor-shell.is-closing{opacity:0;grid-template-rows:0fr;transform:translateY(-8px)}.modal-header-actions{align-items:center;gap:var(--space-2);display:flex}.mode-toggle-btn{border:1px solid var(--color-outline-variant);border-radius:var(--radius-md);cursor:pointer;width:36px;height:36px;transition:all var(--transition-fast);background:0 0;justify-content:center;align-items:center;display:flex}.mode-toggle-btn:hover{background:var(--color-hover)}.mode-toggle-btn.active{background:var(--color-primary-container);border-color:var(--color-primary);color:var(--color-primary)}.card-editor-content{padding:var(--space-6);flex:1;overflow-y:auto}.card-editor-studio{width:100%}.card-editor-studio .card-editor-content{padding:0;overflow:visible}.card-studio-side-switch{background:0 0;border:none;border-radius:0;flex-shrink:0;justify-content:center;align-items:center;gap:10px;padding:0;display:inline-flex}.card-studio-side-switch__btn{min-width:0;color:var(--color-text-secondary);font-size:var(--text-xs);font-weight:var(--font-semibold);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;border-radius:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.card-studio-side-switch__btn:hover{color:var(--color-text)}.card-studio-side-switch__btn.active{color:var(--color-primary);box-shadow:none;background:0 0}.card-studio-side-switch__icon{color:var(--color-text-tertiary);background:0 0;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.card-studio-stage-shell{justify-content:center;width:100%;display:flex}.card-studio-stage{width:min(100%,450px);aspect-ratio:var(--flashcard-aspect-ratio,3/4);perspective:2000px;position:relative}.card-studio-stage.is-split{perspective:none}.card-studio-stage-inner{width:100%;height:100%;transform-style:preserve-3d;-webkit-transform-style:preserve-3d;transition:transform .8s cubic-bezier(.4,0,.2,1);position:relative}.card-studio-stage.is-flipped .card-studio-stage-inner{transform:rotateY(-180deg)}.card-studio-face{gap:var(--space-2);backface-visibility:hidden;background:linear-gradient(var(--color-surface),var(--color-surface))padding-box,radial-gradient(circle at 50% 10%,var(--btn-gradient-start)0%,var(--btn-gradient-mid)30%,var(--btn-gradient-end)100%)border-box;box-shadow:0 20px 40px -15px var(--color-primary);border:1px solid #0000;border-radius:24px;flex-direction:column;padding:12px;display:flex;position:absolute;inset:0;overflow:visible}@supports (color:color-mix(in lab, red, red)){.card-studio-face{box-shadow:0 20px 40px -15px color-mix(in srgb,var(--color-primary)25%,transparent)}}.card-studio-face--back{transform:rotateY(-180deg)}.card-studio-face[aria-hidden=true]{pointer-events:none}.card-studio-face[aria-hidden=false]{pointer-events:auto}.card-studio-toolbar{align-items:center;gap:var(--space-2);z-index:2;grid-template-columns:1fr auto 1fr;min-height:34px;display:grid;position:relative}.card-studio-toolbar__actions{transition:transform var(--transition-fast),opacity var(--transition-fast);grid-column:2;justify-self:center;align-items:center;display:flex}.card-studio-mode-label{color:var(--color-primary);font-size:var(--text-xs);font-weight:var(--font-semibold)}.card-studio-mode-toggle{min-height:28px;color:var(--color-text-secondary);font-size:var(--text-xs);font-weight:var(--font-medium);cursor:pointer;transition:color var(--transition-fast),opacity var(--transition-fast),transform var(--transition-fast);background:0 0;border:none;grid-column:3;justify-content:flex-end;justify-self:end;align-items:center;padding:0 12px;display:inline-flex}.card-studio-mode-toggle:hover{color:var(--color-primary)}.card-studio-tags-input{z-index:2;flex:1;grid-column:1;justify-self:start;min-width:0;position:relative}.card-studio-tags-input.is-open~.card-studio-toolbar__actions{transform:translate(26px)}.card-studio-tags-input__list{flex-wrap:nowrap;align-items:center;gap:6px;min-width:0;display:flex;overflow:visible}.card-studio-tags-input__chip{background:var(--color-primary-container)}@supports (color:color-mix(in lab, red, red)){.card-studio-tags-input__chip{background:color-mix(in srgb,var(--color-primary-container)58%,transparent)}}.card-studio-tags-input__chip{color:var(--color-primary);box-shadow:inset 0 0 0 1px var(--color-primary)}@supports (color:color-mix(in lab, red, red)){.card-studio-tags-input__chip{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--color-primary)18%,transparent)}}.card-studio-tags-input__chip{flex-shrink:0;padding:4px 10px;font-size:11px}.card-studio-tags-input__trigger,.card-studio-tags-input__confirm{border:1px solid var(--color-outline-variant);width:30px;height:30px}@supports (color:color-mix(in lab, red, red)){.card-studio-tags-input__trigger,.card-studio-tags-input__confirm{border:1px solid color-mix(in srgb,var(--color-outline-variant)60%,transparent)}}.card-studio-tags-input__trigger,.card-studio-tags-input__confirm{border-radius:var(--radius-full);background:var(--color-surface-variant);justify-content:center;align-items:center;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.card-studio-tags-input__trigger,.card-studio-tags-input__confirm{background:color-mix(in srgb,var(--color-surface-variant)72%,transparent)}}.card-studio-tags-input__trigger,.card-studio-tags-input__confirm{color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast)}.card-studio-tags-input__trigger{width:28px;height:28px;color:var(--color-text-secondary);background:0 0;border:none;border-radius:0;padding:0}.card-studio-tags-input__trigger:hover{color:var(--color-primary);background:0 0;border-color:#0000}.card-studio-tags-input__trigger:hover,.card-studio-tags-input__confirm:hover{color:var(--color-primary);border-color:var(--color-primary)}@supports (color:color-mix(in lab, red, red)){.card-studio-tags-input__trigger:hover,.card-studio-tags-input__confirm:hover{border-color:color-mix(in srgb,var(--color-primary)35%,transparent)}}.card-studio-tags-input__trigger:hover,.card-studio-tags-input__confirm:hover{background:var(--color-primary-container)}@supports (color:color-mix(in lab, red, red)){.card-studio-tags-input__trigger:hover,.card-studio-tags-input__confirm:hover{background:color-mix(in srgb,var(--color-primary-container)32%,transparent)}}.card-studio-tags-input__confirm{width:auto;height:auto;color:var(--color-text-secondary);font-size:18px;font-weight:var(--font-medium);background:0 0;border:none;border-radius:0;padding:0}.card-studio-tags-input__confirm:hover{color:var(--color-primary);background:0 0;border-color:#0000}.card-studio-tags-input__trigger:hover{background:0 0;border-color:#0000}.card-studio-tags-input__composer{align-items:center;gap:6px;min-width:0;display:inline-flex}.card-studio-tags-input__field{border:1px solid var(--color-outline-variant);width:86px;height:30px}@supports (color:color-mix(in lab, red, red)){.card-studio-tags-input__field{border:1px solid color-mix(in srgb,var(--color-outline-variant)60%,transparent)}}.card-studio-tags-input__field{border-radius:var(--radius-full);background:var(--color-surface-variant)}@supports (color:color-mix(in lab, red, red)){.card-studio-tags-input__field{background:color-mix(in srgb,var(--color-surface-variant)76%,transparent)}}.card-studio-tags-input__field{color:var(--color-text);outline:none;padding:0 12px;font-size:12px}.card-studio-tags-input__field:focus{border-color:var(--color-primary)}@supports (color:color-mix(in lab, red, red)){.card-studio-tags-input__field:focus{border-color:color-mix(in srgb,var(--color-primary)45%,transparent)}}.card-studio-tags-input__field:focus{box-shadow:0 0 0 3px var(--color-primary-container)}@supports (color:color-mix(in lab, red, red)){.card-studio-tags-input__field:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary-container)26%,transparent)}}.card-studio-input{flex-direction:column;flex:1;gap:0;min-height:0;display:flex}.card-studio-split-body{gap:var(--space-2);flex-direction:column;flex:1;min-height:0;display:flex}.card-studio-split-body>.card-studio-input{flex:1 1 0}.card-studio-split-divider{background:linear-gradient(90deg,transparent 0%,var(--color-text-secondary)18%,var(--color-text-secondary)50%,var(--color-text-secondary)82%,transparent 100%);height:1px;margin:2px 0}@supports (color:color-mix(in lab, red, red)){.card-studio-split-divider{background:linear-gradient(90deg,transparent 0%,color-mix(in srgb,var(--color-text-secondary)22%,transparent)18%,color-mix(in srgb,var(--color-text-secondary)58%,transparent)50%,color-mix(in srgb,var(--color-text-secondary)22%,transparent)82%,transparent 100%)}}.card-studio-split-divider:before{display:none}.card-studio-input__field{border-radius:0;flex:1;min-height:200px;display:flex;position:relative;overflow:visible;box-shadow:none!important;background:0 0!important;border:none!important}.card-studio-input.active .card-studio-input__field,.card-studio-input__field:focus-within{box-shadow:none}.card-studio-input__field-glow{display:none}.card-studio-input__textarea{z-index:1;resize:none;width:100%;min-height:0;color:var(--color-text);font-size:var(--cards-font-size,20px);line-height:var(--cards-line-height,1.6);font-family:var(--font-cards,var(--font-notes,var(--font-sans)));appearance:none;background:0 0;border:none;outline:none;flex:1;padding:18px 20px 62px;position:relative;box-shadow:none!important}.card-studio-input.has-media .card-studio-input__textarea{padding-bottom:96px}.card-studio-input__textarea::placeholder{color:var(--color-text-tertiary)}@supports (color:color-mix(in lab, red, red)){.card-studio-input__textarea::placeholder{color:color-mix(in srgb,var(--color-text-tertiary)85%,transparent)}}.card-studio-input__upload{z-index:3;width:20px;height:20px;color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;border-radius:0;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;bottom:18px;right:18px}.card-studio-input__upload:hover{color:var(--color-primary);background:0 0}.card-studio-input__preview{z-index:2;min-width:0;position:absolute;bottom:14px;left:20px;right:52px}.card-studio-input__preview .media-preview-list{scrollbar-width:none;flex-wrap:nowrap;gap:8px;margin-top:0;padding-bottom:2px;overflow-x:auto}.card-studio-input__preview .media-preview-list::-webkit-scrollbar{display:none}.card-studio-input__preview .media-preview-item{border-color:var(--color-outline-variant);border-radius:12px;width:52px;height:52px}@supports (color:color-mix(in lab, red, red)){.card-studio-input__preview .media-preview-item{border-color:color-mix(in srgb,var(--color-outline-variant)55%,transparent)}}.card-studio-input__preview .media-preview-item{background:var(--color-surface-variant)}@supports (color:color-mix(in lab, red, red)){.card-studio-input__preview .media-preview-item{background:color-mix(in srgb,var(--color-surface-variant)75%,transparent)}}.card-studio-input__preview .media-preview-item{flex-shrink:0}.card-studio-footer{justify-content:space-between;align-items:center;gap:var(--space-2);width:100%;padding-top:4px;display:flex}.card-studio-footer .footer-left-actions,.card-studio-footer .footer-right-actions{gap:8px}.card-studio-footer .btn-icon,.card-studio-footer .card-editor-delete-btn{width:28px;min-width:28px;height:28px;box-shadow:none;background:0 0;border:none;padding:0}.card-studio-footer .btn{min-height:34px;font-size:var(--text-xs);padding:0 12px}.card-studio-footer .btn-icon svg,.card-studio-footer .card-editor-delete-btn svg{width:16px;height:16px}.card-studio-footer .btn svg{width:15px;height:15px}.card-studio-footer__reset,.card-studio-footer__mastered{color:var(--color-text-secondary)}.card-studio-footer__reset:hover{color:var(--color-error)}@supports (color:color-mix(in lab, red, red)){.card-studio-footer__reset:hover{color:color-mix(in srgb,var(--color-error)82%,#ffb29d 18%)}}.card-studio-footer__mastered:hover,.card-studio-footer__mastered.active{color:#f6cb72}.card-studio-side-switch [data-tooltip]:after,.card-studio-tags-input [data-tooltip]:after,.card-studio-input__upload[data-tooltip]:after{white-space:normal;text-align:center;max-width:180px;line-height:1.35}.card-studio-tags-input__trigger[data-tooltip]:after,.card-studio-tags-input__confirm[data-tooltip]:after{text-align:left}@media (max-width:768px){.card-editor-modal-wrapper.inline-card-editor{max-width:min(100%,400px)}.card-studio-stage{width:100%}.card-studio-face{padding:10px 10px 12px}.card-studio-toolbar{justify-items:auto;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:6px;min-height:28px}.card-studio-tags-input{order:0;grid-column:1;width:auto;min-width:0}.card-studio-tags-input__list{min-height:28px}.card-studio-tags-input__trigger{width:24px;height:24px}.card-studio-tags-input__composer{gap:4px}.card-studio-tags-input__field{width:72px;height:26px;padding:0 10px;font-size:11px}.card-studio-toolbar__actions{grid-column:2;justify-content:center;width:100%;min-width:0}.card-studio-tags-input.is-open~.card-studio-toolbar__actions,.card-studio-tags-input.is-open~.card-studio-mode-toggle{opacity:0;pointer-events:none;transform:translateY(-4px)}.card-studio-mode-toggle{grid-column:3;justify-self:end;min-height:28px;padding:0;font-size:11px;line-height:1}.card-studio-side-switch{gap:8px;width:auto}.card-studio-side-switch__btn{flex:none;font-size:11px;line-height:1}.card-studio-side-switch__icon{width:14px;height:14px}.card-studio-mode-label{justify-content:center;align-items:center;min-height:28px;font-size:11px;line-height:1;display:inline-flex}.card-studio-input__field{min-height:170px}.card-studio-input__textarea{padding:16px 16px 46px;font-size:.95rem;line-height:1.5}.card-studio-input.has-media .card-studio-input__textarea{padding-bottom:82px}.card-studio-input__preview{bottom:12px;left:16px;right:38px}.card-studio-input__upload{width:18px;height:18px;bottom:14px;right:14px}.card-studio-footer{flex-wrap:nowrap;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;padding-top:2px;display:grid}.card-studio-footer .footer-left-actions,.card-studio-footer .footer-right-actions{width:auto}.card-studio-footer .footer-left-actions{flex-wrap:nowrap;gap:6px}.card-studio-footer .footer-right-actions{justify-content:flex-end;gap:4px;min-width:0}.card-studio-footer .btn-icon,.card-studio-footer .card-editor-delete-btn{width:24px;min-width:24px;height:24px}.card-studio-footer .btn-icon svg,.card-studio-footer .card-editor-delete-btn svg{width:14px;height:14px}.card-studio-footer .footer-right-actions .btn{white-space:nowrap;flex:none;justify-content:center;min-height:28px;padding:0 8px;font-size:11px}.card-studio-footer .footer-right-actions .btn svg{display:none}.inline-delete-confirm{gap:4px}}.card-edit-container,.card-preview-container{gap:var(--space-4);flex-direction:column;display:flex}.card-preview-section{gap:var(--space-2);flex-direction:column;display:flex}.card-preview-section label{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text-secondary)}.card-preview-text{padding:var(--space-4);background:var(--color-surface-variant);border-radius:var(--radius-md);min-height:80px}.card-preview-divider{background:linear-gradient(90deg,transparent 0%,var(--color-outline-variant)20%,var(--color-outline-variant)80%,transparent 100%);height:1px;margin:var(--space-2)0}.card-section-divider,.card-item-divider{background:linear-gradient(90deg,transparent 0%,var(--color-primary-container-hover)10%,var(--color-primary)50%,var(--color-primary-container-hover)90%,transparent 100%);border-radius:var(--radius-full);height:1px;box-shadow:0 0 10px var(--color-primary-container-hover),0 0 18px var(--color-primary-container);position:relative}.card-section-divider{margin:var(--space-5)0}.card-section-divider:before,.card-item-divider:before{content:"";background:linear-gradient(90deg,transparent 0%,var(--color-primary-container)10%,var(--color-primary-container-hover)50%,var(--color-primary-container)90%,transparent 100%);border-radius:var(--radius-full);filter:blur(6px);z-index:-1;height:10px;position:absolute;top:-4px;left:0;right:0}.card-side-section{gap:var(--space-4);flex-direction:column;width:100%;display:flex}.card-side-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--color-text);margin:0}.card-stats-section{margin-top:var(--space-4);padding-top:var(--space-4);border-top:none}.card-stats-section h4{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text-secondary);margin-bottom:var(--space-3)}.card-stats-grid{gap:var(--space-3);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.card-stat{gap:var(--space-1);padding:var(--space-2);flex-direction:column;display:flex}.card-stat .stat-label{font-size:var(--text-xs);color:var(--color-text-secondary)}.card-stat .stat-value{font-size:var(--text-base);font-weight:var(--font-semibold)}.modal-footer{padding:var(--space-5)var(--space-6);padding-top:var(--space-6);justify-content:space-between;align-items:center;display:flex;position:relative}.footer-left-actions,.footer-right-actions{align-items:center;gap:var(--space-2);display:flex}.footer-left-actions{justify-content:flex-start}.btn-icon{justify-content:center;align-items:center;width:44px;min-width:44px;height:44px;padding:0;display:flex}.btn-icon svg{flex-shrink:0;width:20px;height:20px}.btn-icon.active{background:var(--color-success-container);color:var(--color-success)}.btn-danger{border-radius:var(--radius-md);color:var(--color-text-tertiary);background:0 0;border:2px solid #0000;transition:all .25s cubic-bezier(.4,0,.2,1)}.btn-danger:hover{background:var(--srs-again-bg);border-color:var(--srs-again-shadow);color:var(--color-error);box-shadow:0 0 0 4px var(--srs-again-bg-subtle),0 0 16px var(--srs-again-bg)}.btn-danger:active{background:var(--srs-again-bg-hover);border-color:var(--color-error);box-shadow:0 0 0 4px var(--srs-again-glow)}.btn-danger svg{color:inherit;width:20px;height:20px}.btn-danger.confirm{background:var(--color-error);color:#fff;border-color:var(--color-error);width:auto;padding:0 var(--space-3);gap:var(--space-2);border-radius:var(--radius-md)}.card-editor-delete-btn{border-radius:var(--radius-md);width:36px;height:36px;color:var(--color-delete);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex}.card-editor-delete-btn:hover{color:var(--color-delete-hover);background:0 0}.card-editor-delete-btn svg{width:20px;height:20px}.card-editor-delete-btn.delete-confirm-btn{color:var(--color-delete);animation:.25s forwards fadeInPop}.card-editor-delete-btn.delete-confirm-btn:hover{color:var(--color-delete-hover)}.card-editor-delete-btn.delete-cancel-btn{color:var(--color-text-tertiary);animation:.25s forwards fadeInPop}.card-editor-delete-btn.delete-cancel-btn:hover{color:var(--color-text)}.inline-delete-confirm{align-items:center;gap:2px;display:flex}.review-action-btn{width:32px;min-width:32px;height:32px;box-shadow:none;color:var(--color-text-secondary);transition:color var(--transition-fast),opacity var(--transition-fast);background:0 0;border:none;border-radius:0;padding:0}.review-action-btn svg{width:20px;height:20px}.review-action-btn:hover:not(:disabled),.review-action-btn:focus-visible:not(:disabled),.review-action-btn:active:not(:disabled){box-shadow:none;color:var(--color-text);background:0 0;transform:none}.review-action-btn--mastered:hover:not(:disabled),.review-action-btn--mastered:focus-visible:not(:disabled),.review-action-btn--mastered:active:not(:disabled){color:#f6cb72}.review-action-btn--mode,.review-action-btn--mode:hover:not(:disabled),.review-action-btn--mode:focus-visible:not(:disabled),.review-action-btn--mode:active:not(:disabled){color:var(--color-primary)}.review-action-btn:disabled{opacity:.35;color:var(--color-text-tertiary)}.review-mode-notification{top:calc(100% + var(--space-2));padding:var(--space-3)var(--space-4);background:var(--color-surface);border:1px solid var(--color-outline-variant);border-radius:var(--radius-lg);font-size:var(--text-sm);color:var(--color-text-secondary);white-space:nowrap;opacity:0;pointer-events:none;z-index:1000;box-shadow:var(--shadow-md);text-align:center;max-width:90vw;transition:opacity .3s,transform .3s;position:absolute;left:50%;transform:translate(-50%)translateY(-10px)}.review-mode-notification.visible{opacity:1;pointer-events:auto;transform:translate(-50%)translateY(0)}@media (max-width:640px){.review-mode-notification{white-space:normal;max-width:calc(100vw - var(--space-4));padding:var(--space-2)var(--space-3);font-size:var(--text-xs)}}.deck-view{padding:var(--space-6);gap:var(--space-6);flex-direction:column;flex:1;align-items:center;display:flex;overflow-y:auto}.deck-view>*{width:100%;max-width:800px;margin-left:auto;margin-right:auto}.deck-view-header{gap:var(--space-4);margin-bottom:var(--space-6);flex-direction:column;width:100%;display:flex;max-width:800px!important}.deck-view-info{gap:var(--space-2);flex-direction:column;display:flex}.deck-title-row{align-items:center;gap:var(--space-3);flex-wrap:nowrap;justify-content:space-between;width:100%;min-width:0;display:flex}.deck-title-wrapper{flex:1;min-width:0;position:relative;overflow:hidden}.deck-title-row h2{font-size:var(--text-3xl);font-weight:var(--font-bold);white-space:nowrap;cursor:pointer;width:100%;min-width:0;transition:color var(--transition-fast);margin:0;line-height:1.2;overflow:hidden}.deck-title-row h2:hover{color:var(--color-primary)}.deck-title-wrapper:not(.focused):after{content:"";pointer-events:none;background:linear-gradient(to right,transparent 0%,var(--color-bg)20%,var(--color-bg)50%,var(--color-bg)100%);width:60px;position:absolute;top:0;bottom:0;right:0}@supports (color:color-mix(in lab, red, red)){.deck-title-wrapper:not(.focused):after{background:linear-gradient(to right,transparent 0%,color-mix(in srgb,var(--color-bg)30%,transparent)20%,color-mix(in srgb,var(--color-bg)70%,transparent)50%,var(--color-bg)100%)}}.deck-title-wrapper.focused:after{display:none}.deck-header-actions-inline{gap:var(--space-2);flex-shrink:0;align-items:center;display:flex}.deck-header-actions-inline .btn-primary.btn-icon-text{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary)}.deck-header-actions-inline .btn-primary.btn-icon-text:hover:not(:disabled){background:var(--color-primary-hover);border-color:var(--color-primary-hover);color:var(--color-on-primary)}.deck-header-actions-inline .btn-secondary.btn-icon-text{padding:var(--space-3)var(--space-4)}.deck-title-input,.deck-title-textarea{font-size:var(--text-2xl);font-weight:var(--font-bold);padding:var(--space-2);border:2px solid var(--color-primary);border-radius:var(--radius-md);background:var(--color-surface);min-width:0;max-width:100%;color:var(--color-text);resize:vertical;outline:none;flex:1;font-family:inherit;line-height:1.4;overflow:hidden}.deck-title-textarea{min-height:60px;max-height:200px}.deck-description{color:var(--color-text-secondary);font-size:var(--text-base);margin:0;line-height:1.6}.deck-stats-container{gap:var(--space-6);flex-direction:column;display:flex}.deck-stats-grid{gap:var(--space-2);grid-template-columns:repeat(4,minmax(140px,1fr));width:100%;display:grid}.deck-stat-card{border-radius:var(--radius-lg);padding:var(--space-2);gap:var(--space-3);align-items:center;display:flex;position:relative;overflow:hidden}.deck-stat-card .stat-icon{z-index:1;box-shadow:none;border-radius:var(--radius-xl);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;width:clamp(36px,3vw,48px);height:clamp(36px,3vw,48px);display:inline-flex;position:relative}.deck-stat-card .stat-icon svg{width:clamp(22px,2.2vw,32px);height:clamp(22px,2.2vw,32px)}.deck-stat-card .stat-content{z-index:1;gap:var(--space-1);flex-direction:column;display:flex;position:relative}.deck-stat-card .stat-value{font-size:clamp(var(--text-base),1.3vw,var(--text-2xl));font-weight:var(--font-bold);color:var(--color-text);line-height:1}.deck-stat-card .stat-label{font-size:var(--text-sm);color:var(--color-text-secondary);font-weight:var(--font-medium)}.deck-stat-card:hover{background:0 0;box-shadow:0 8px 24px #0000001a}.deck-progress-section{gap:var(--space-2);flex-direction:column;display:flex}.deck-progress-header{justify-content:space-between;align-items:center;display:flex}.progress-label{font-size:var(--text-base);font-weight:var(--font-medium);color:var(--color-text-secondary)}.progress-percentage{font-size:var(--text-xs);font-weight:var(--font-bold);color:var(--color-primary)}.deck-progress-bar{background:var(--color-surface-variant);border-radius:var(--radius-full);height:10px;overflow:hidden;box-shadow:inset 0 2px 4px #0000000f}.deck-progress-fill{background:var(--color-primary);border-radius:var(--radius-full);height:100%;box-shadow:0 0 12px var(--color-primary);transition:width .5s cubic-bezier(.4,0,.2,1)}@supports (color:color-mix(in lab, red, red)){.deck-progress-fill{box-shadow:0 0 12px color-mix(in srgb,var(--color-primary)50%,transparent)}}.cards-list-section{gap:var(--space-4);flex-direction:column;width:100%;max-width:800px;margin-left:auto;margin-right:auto;display:flex}.cards-list-section:has(.cards-list-empty){gap:0}.cards-list-header{margin-top:var(--space-6);margin-bottom:var(--space-6);justify-content:space-between;align-items:center;display:flex}.cards-list-header h3{font-size:var(--text-xl);font-weight:var(--font-semibold);margin:0}.cards-count{font-size:var(--text-sm);color:var(--color-text-secondary);padding:var(--space-1)var(--space-2);background:var(--color-surface-variant);border-radius:var(--radius-md)}.cards-add-card-btn{justify-content:center;align-items:center;gap:var(--space-2);width:100%;max-width:720px;padding:var(--space-3)var(--space-4);border-radius:var(--radius-lg);color:var(--color-text-tertiary);font-size:var(--text-sm);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;margin:0 auto;display:inline-flex}.cards-add-card-btn:hover{color:var(--color-primary);background:var(--color-primary-container)}@supports (color:color-mix(in lab, red, red)){.cards-add-card-btn:hover{background:color-mix(in srgb,var(--color-primary-container)25%,transparent)}}.cards-add-card-panel{width:100%;max-width:720px;margin:0 auto}.cards-list-empty{padding:var(--space-4)var(--space-10);padding-top:var(--space-8);text-align:center;flex-direction:column;justify-content:center;align-items:center;animation:.4s ease-out fadeIn;display:flex}.cards-list-empty .empty-icon{margin-bottom:var(--space-8)}.cards-list-empty .empty-title{font-size:var(--text-3xl);font-weight:var(--font-bold);margin:0 0 var(--space-4)0;color:var(--color-text);line-height:1.2}.cards-list-empty .empty-description{font-size:var(--text-lg);color:var(--color-text-secondary);margin:0 0 var(--space-8)0;max-width:400px;line-height:1.6}.cards-list-empty-actions{gap:var(--space-4);flex-wrap:wrap;justify-content:center;align-items:stretch;display:flex}.tags-filter-section{gap:var(--space-2);padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-outline-variant);flex-direction:column;display:flex}@supports (color:color-mix(in lab, red, red)){.tags-filter-section{border:1px solid color-mix(in srgb,var(--color-outline-variant)50%,transparent)}}.tags-filter-section{border-radius:var(--radius-lg)}.tags-filter-label{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-text-secondary)}.tags-filter-list{gap:var(--space-2);flex-wrap:wrap;display:flex}.tag-filter-chip{padding:var(--space-2)var(--space-3);font-size:var(--text-sm);font-weight:var(--font-medium);background:var(--color-surface-variant);border:1px solid var(--color-outline-variant);border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-fast);color:var(--color-text)}.tag-filter-chip:hover{background:var(--color-primary-container);border-color:var(--color-primary);color:var(--color-primary)}.tag-filter-chip.active{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary)}.tag-filter-clear{padding:var(--space-2)var(--space-3);font-size:var(--text-sm);font-weight:var(--font-medium);border:1px solid var(--color-error);border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-fast);color:var(--color-error);background:0 0}.tag-filter-clear:hover{background:var(--color-error);color:var(--color-on-error)}.cards-list{flex-direction:column;gap:2px;width:100%;max-width:960px;margin:0 auto;display:flex}@keyframes cardListSlideIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.cards-list-item{align-items:center;gap:var(--space-3);padding:var(--space-3)var(--space-4);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);border-left:3px solid #0000;animation:.3s ease-out backwards cardListSlideIn;display:flex;position:relative}.cards-list-item:hover{background:var(--color-surface-hover);border-left-color:var(--color-primary);transform:translate(2px)}.cards-list-item-badge{font-size:10px;font-weight:var(--font-bold);border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.3px;text-align:center;flex-shrink:0;min-width:52px;padding:3px 8px}.cards-list-item-badge.new{background:var(--color-primary-container);color:var(--color-primary)}.cards-list-item-badge.learning{background:var(--color-warning-container,#f59e0b26);color:var(--color-warning)}.cards-list-item-badge.review{background:var(--color-success-container);color:var(--color-success)}.cards-list-item-badge.relearning{background:var(--color-error-container);color:var(--color-error)}.cards-list-item-body{align-items:center;gap:var(--space-3);flex:1;min-width:0;display:flex}.cards-list-item-front{min-width:0;font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text);white-space:nowrap;flex:1;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#000 85%,#0000 100%);mask-image:linear-gradient(90deg,#000 85%,#0000 100%)}.cards-list-item-sep{background:linear-gradient(180deg,transparent,var(--color-outline-variant),transparent);flex-shrink:0;width:1px;height:20px}.cards-list-item-back{min-width:0;font-size:var(--text-sm);color:var(--color-text-secondary);white-space:nowrap;flex:1;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#000 85%,#0000 100%);mask-image:linear-gradient(90deg,#000 85%,#0000 100%)}.cards-list-item-tags{gap:var(--space-1);flex-shrink:0;display:flex}.cards-list-item-actions{opacity:0;transition:opacity var(--transition-fast);flex-shrink:0;align-items:center;gap:2px;display:flex}.cards-list-item:hover .cards-list-item-actions{opacity:1}@media (max-width:768px){.cards-list-item-body{align-items:flex-start;gap:var(--space-1);flex-direction:column}.cards-list-item-sep{display:none}.cards-list-item-back{font-size:var(--text-xs)}.cards-list-item-tags{display:none}}.cards-grid{--cards-grid-gap:var(--space-4);gap:var(--cards-grid-gap);padding:var(--space-2)0;flex-direction:column;align-self:stretch;width:100%;display:flex}.cards-grid.is-measuring{visibility:hidden}.cards-grid-row{gap:var(--space-4);width:100%;min-width:0;display:grid}.cards-grid-group{flex-direction:column;min-width:0;display:flex;overflow:visible}.card-grid-item-wrapper{flex-direction:column;min-width:0;display:flex}.card-flip{perspective:2000px;aspect-ratio:3/4;cursor:pointer;perspective-origin:50%;animation:.3s ease-out backwards cardListSlideIn}.card-flip-inner{width:100%;height:100%;transform-style:preserve-3d;-webkit-transform-style:preserve-3d;will-change:transform;transition:transform .7s cubic-bezier(.4,0,.2,1);position:relative}.card-flip:hover .card-flip-inner,.card-flip:focus-visible .card-flip-inner{transform:rotateY(-180deg)}.card-flip-front,.card-flip-back{border-radius:var(--radius-lg);padding:var(--space-3)var(--space-4);border:1.5px solid var(--color-outline-variant);transition:border-color var(--transition-fast),box-shadow var(--transition-fast),opacity 0s linear;backface-visibility:hidden;will-change:transform,opacity;flex-direction:column;display:flex;position:absolute;inset:0;overflow:hidden;box-shadow:0 2px 8px #0000000f}.card-flip:hover .card-flip-front,.card-flip:hover .card-flip-back,.card-flip:focus-visible .card-flip-front,.card-flip:focus-visible .card-flip-back{border-color:var(--color-primary);box-shadow:0 4px 16px #0000001a}.card-flip-front{background:var(--color-surface);z-index:2;opacity:1;transition-delay:0s,0s,.28s;transform:rotateY(0)translateZ(1px)}.card-flip-back{background:var(--color-surface-variant);opacity:0;transition-delay:0s,0s,.28s;transform:rotateY(-180deg)translateZ(1px)}.card-flip:hover .card-flip-front,.card-flip:focus-visible .card-flip-front{opacity:0;transition-delay:0s,0s,.22s}.card-flip:hover .card-flip-back,.card-flip:focus-visible .card-flip-back{opacity:1;transition-delay:0s,0s,.22s}.card-flip-tags{gap:var(--space-1);margin-bottom:var(--space-2);flex-wrap:wrap;flex-shrink:0;display:flex}.card-flip-text{min-height:0;font-size:var(--text-sm);color:var(--color-text);-webkit-line-clamp:5;line-clamp:5;-webkit-box-orient:vertical;flex:1;line-height:1.5;display:-webkit-box;overflow:hidden;-webkit-mask-image:linear-gradient(#000 75%,#0000 100%);mask-image:linear-gradient(#000 75%,#0000 100%)}.card-flip-text.markdown-content{-webkit-line-clamp:unset;line-clamp:unset;-webkit-box-orient:initial;max-height:9rem;display:block;overflow:hidden}.card-flip-text.markdown-content img{object-fit:contain;max-height:120px!important}.card-flip-back .card-flip-text{color:var(--color-text-secondary)}.card-flip-footer{justify-content:space-between;align-items:center;gap:var(--space-2);padding-top:var(--space-2);flex-shrink:0;margin-top:auto;display:flex}.card-flip-badge{font-size:10px;font-weight:var(--font-bold);border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.3px;padding:2px 7px}.card-flip-badge.new{background:var(--color-primary-container);color:var(--color-primary)}.card-flip-badge.learning{background:var(--color-warning-container,#f59e0b26);color:var(--color-warning)}.card-flip-badge.review{background:var(--color-success-container);color:var(--color-success)}.card-flip-badge.relearning{background:var(--color-error-container);color:var(--color-error)}.card-flip-label{font-size:var(--text-xs);color:var(--color-text-tertiary);font-weight:var(--font-medium)}.card-flip-actions{display:none}.card-flip:hover .card-flip-actions{opacity:0}@media (hover:none),(pointer:coarse){.card-flip{perspective:none}.card-flip-inner,.card-flip:hover .card-flip-inner,.card-flip:focus-visible .card-flip-inner{transition:none;transform:none}.card-flip-back{display:none}.card-flip-front,.card-flip:hover .card-flip-front,.card-flip:focus-visible .card-flip-front{opacity:1;transition-delay:0s}.card-flip:hover .card-flip-front,.card-flip:hover .card-flip-back,.card-flip:focus-visible .card-flip-front,.card-flip:focus-visible .card-flip-back{border-color:var(--color-outline-variant);box-shadow:0 2px 8px #0000000f}}.card-grid-item-wrapper.is-editing .card-flip{outline:none}.card-grid-item-wrapper.is-editing .card-flip-front,.card-grid-item-wrapper.is-editing .card-flip-back{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary),0 8px 24px #0000001f}@supports (color:color-mix(in lab, red, red)){.card-grid-item-wrapper.is-editing .card-flip-front,.card-grid-item-wrapper.is-editing .card-flip-back{box-shadow:0 0 0 2px color-mix(in srgb,var(--color-primary)70%,transparent),0 8px 24px #0000001f}}.card-inline-editor-row{--inline-editor-duration:.46s;--inline-editor-ease:cubic-bezier(.22,1,.36,1);--inline-editor-shadow-bleed:26px;z-index:6;isolation:isolate;grid-column:1/-1;justify-content:center;min-width:0;padding:0;display:flex;position:relative;overflow:visible}.card-inline-editor-shell{opacity:0;width:100%;min-width:0;max-width:510px;filter:drop-shadow(0 22px 30px var(--color-primary));padding:0;position:relative;overflow:visible}@supports (color:color-mix(in lab, red, red)){.card-inline-editor-shell{filter:drop-shadow(0 22px 30px color-mix(in srgb,var(--color-primary)12%,transparent))}}.card-inline-editor-shell{will-change:opacity;transition:opacity .18s}.card-inline-editor-shell__clip{display:block;overflow:visible}.card-inline-editor-shell__inner{min-height:0;margin-bottom:0;padding:0 clamp(12px,3vw,18px);overflow:visible}.card-inline-editor-shell__inner>*{min-width:0}.card-inline-editor-row--expand{transition:height var(--inline-editor-duration)var(--inline-editor-ease);overflow:hidden}.cards-grid-group .card-inline-editor-row--expand{--inline-editor-shadow-bleed:18px}.cards-grid-group .card-inline-editor-row--expand.is-open{overflow:visible}.cards-grid-group .card-inline-editor-row--expand .card-inline-editor-shell__inner{padding-top:20px;padding-bottom:10px}.card-inline-editor-row--expand.is-entering .card-inline-editor-shell,.card-inline-editor-row--expand.is-closing .card-inline-editor-shell{opacity:0;transition-delay:0s}.card-inline-editor-row--expand.is-open .card-inline-editor-shell{opacity:1;transition-delay:.11s}.card-inline-editor-row.is-closing{pointer-events:none}.review-container .card-inline-editor-row{width:100%}.review-container .card-inline-editor-shell{transition:opacity .22s}.review-container .card-inline-editor-shell__clip{transition:none;display:block;overflow:visible}.review-container .card-inline-editor-row .card-inline-editor-shell__inner{padding-top:0;padding-bottom:calc(var(--inline-editor-shadow-bleed) + 12px);overflow:visible}.review-container .card-inline-editor-row.is-entering .card-inline-editor-shell,.review-container .card-inline-editor-row.is-closing .card-inline-editor-shell{opacity:0}.review-container .card-inline-editor-row.is-open .card-inline-editor-shell{opacity:1}.card-item{background:var(--color-surface);border:2px solid var(--color-outline-variant);border-radius:var(--radius-xl);cursor:pointer;transition:all var(--transition-normal);flex-direction:column;display:flex;position:relative;overflow:hidden}.card-item:before{content:"";background:linear-gradient(90deg,var(--color-primary)0%,var(--color-accent)100%);opacity:0;height:3px;transition:opacity var(--transition-fast);position:absolute;top:0;left:0;right:0}.card-item:hover:before{opacity:1}.card-item:hover{border-color:var(--color-primary);transform:translateY(-4px);box-shadow:0 12px 24px #0000001f}.card-item-header{padding:var(--space-3)var(--space-4);justify-content:space-between;align-items:center;gap:var(--space-2);background:0 0;min-height:48px;display:flex}.card-item-actions{opacity:0;transition:opacity var(--transition-fast);align-items:center;gap:2px;margin-left:auto;display:flex}.card-item:hover .card-item-actions{opacity:1}.card-action-btn{border-radius:var(--radius-sm);width:26px;height:26px;color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.card-action-btn:hover{color:var(--color-text);background:0 0}.card-delete-btn{opacity:1;color:var(--color-delete)!important}.card-delete-btn:hover{color:var(--color-delete-hover)!important;background:0 0!important}.card-action-btn.delete-confirm-btn{animation:.25s forwards fadeInPop;color:var(--color-delete)!important}.card-action-btn.delete-confirm-btn:hover{color:var(--color-delete-hover)!important}.card-action-btn.delete-cancel-btn{color:var(--color-text-tertiary);animation:.25s forwards fadeInPop}.card-action-btn.delete-cancel-btn:hover{color:var(--color-text)}.card-state-badge{font-size:var(--text-xs);font-weight:var(--font-semibold);border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.3px;padding:4px 10px}.card-state-badge.new{background:var(--color-primary-container);color:var(--color-primary)}.card-state-badge.learning{background:var(--color-warning-container,#f59e0b26);color:var(--color-warning)}.card-state-badge.review{background:var(--color-success-container);color:var(--color-success)}.card-state-badge.relearning{background:var(--color-error-container);color:var(--color-error)}.mastered-icon{color:var(--color-success);filter:drop-shadow(0 2px 4px #0000001a)}.card-leech-badge{font-size:var(--text-xs);background:var(--color-error-container);color:var(--color-error);border-radius:var(--radius-full);font-weight:var(--font-semibold);padding:4px 8px}.card-item-content{padding:var(--space-5);gap:var(--space-4);background:var(--color-surface);flex-direction:column;flex:1;display:flex}.card-item-front,.card-item-back{gap:var(--space-2);flex-direction:column;display:flex}.card-item-label{font-size:var(--text-xs);color:var(--color-primary);font-weight:var(--font-bold);text-transform:uppercase;letter-spacing:.8px}.card-item-text{font-size:var(--text-base);color:var(--color-text);-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;min-height:3.6em;line-height:1.6;display:-webkit-box;overflow:hidden}.card-item-divider{height:1px;margin:var(--space-2)0}.card-item-header-divider,.card-item-footer-divider{background:linear-gradient(90deg,transparent 0%,var(--color-outline-variant)20%,var(--color-outline-variant)80%,transparent 100%);height:1px;margin:0}.card-item-tags{gap:var(--space-2);padding:0 var(--space-5)var(--space-3);flex-wrap:wrap;display:flex}.card-tag-chip{font-size:var(--text-xs);background:var(--color-primary-container);color:var(--color-primary);border-radius:var(--radius-full);font-weight:var(--font-medium);padding:3px 8px}.card-item-footer{padding:var(--space-3)var(--space-4);font-size:var(--text-xs);color:var(--color-text-secondary);background:0 0;justify-content:space-between;align-items:center;min-height:40px;display:flex}.card-stat-small{align-items:center;gap:var(--space-1);font-weight:var(--font-medium);display:flex}.mastered-navigation{gap:var(--space-4);padding:var(--space-6);background:var(--color-surface);border-radius:var(--radius-xl);margin-top:var(--space-4);flex-wrap:wrap;justify-content:center;align-items:center;min-height:100px;display:flex}.mastered-navigation button{min-width:90px;height:40px;padding:var(--space-2)var(--space-3)!important;min-height:40px!important}.mastered-navigation .btn-secondary.btn-icon-text,.mastered-navigation .btn-primary.btn-icon-text{justify-content:center!important;align-items:center!important;gap:var(--space-2)!important;padding:var(--space-2)var(--space-3)!important;border-radius:var(--radius-md)!important;width:auto!important;min-width:90px!important;max-width:none!important;height:40px!important;min-height:40px!important;font-size:var(--text-sm)!important;font-weight:var(--font-medium)!important;display:inline-flex!important}.upcoming-navigation{gap:var(--space-3);padding:var(--space-4)0;padding-top:var(--space-4);margin-top:var(--space-2);flex-wrap:wrap;justify-content:center;align-items:center;min-height:72px;display:flex;position:relative}.upcoming-navigation:before{content:"";background:linear-gradient(90deg,transparent 0%,var(--color-primary-container-hover)10%,var(--color-primary)50%,var(--color-primary-container-hover)90%,transparent 100%);border-radius:var(--radius-full);width:85%;height:1px;box-shadow:0 0 12px var(--color-primary-container-hover),0 0 20px var(--color-primary-container);position:absolute;top:0;left:50%;transform:translate(-50%)}.upcoming-navigation:after{content:"";background:linear-gradient(90deg,transparent 0%,var(--color-primary-container)10%,var(--color-primary-container-hover)50%,var(--color-primary-container)90%,transparent 100%);border-radius:var(--radius-full);filter:blur(8px);z-index:-1;width:85%;height:12px;position:absolute;top:-5px;left:50%;transform:translate(-50%)}.upcoming-navigation button{min-width:90px;height:40px;padding:var(--space-2)var(--space-3)!important;min-height:40px!important}.upcoming-navigation .btn-secondary.btn-icon-text,.upcoming-navigation .btn-primary.btn-icon-text{position:relative;overflow:hidden;justify-content:center!important;align-items:center!important;gap:var(--space-2)!important;padding:var(--space-2)var(--space-3)!important;border-radius:var(--radius-md)!important;width:auto!important;min-width:90px!important;max-width:250px!important;height:40px!important;min-height:40px!important;font-size:var(--text-sm)!important;font-weight:var(--font-medium)!important;display:inline-flex!important}.upcoming-counter{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--color-text-secondary);padding:var(--space-2)var(--space-4);border-radius:var(--radius-md);text-align:center;background:0 0;min-width:80px}.btn-error{border-radius:var(--radius-md);color:var(--color-text-tertiary);justify-content:center;align-items:center;gap:var(--space-2);font-size:var(--text-base);background:0 0;border:2px solid #0000;transition:all .25s cubic-bezier(.4,0,.2,1);display:inline-flex}.btn-error:hover{background:var(--color-error-container);color:var(--color-error);box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-error:active{transform:translateY(0)}.fab-button{bottom:var(--space-4);right:var(--space-4);border:2px solid var(--color-primary);width:56px;height:56px;color:var(--color-primary);background:linear-gradient(135deg,var(--color-primary),var(--color-primary));border-radius:50%;justify-content:center;align-items:center;display:flex;position:fixed}@supports (color:color-mix(in lab, red, red)){.fab-button{background:linear-gradient(135deg,color-mix(in srgb,var(--color-primary)12%,transparent),color-mix(in srgb,var(--color-primary)5%,transparent))}}.fab-button{box-shadow:0 4px 16px var(--color-primary),0 0 20px var(--color-primary),inset 0 1px 0 #ffffff1a}@supports (color:color-mix(in lab, red, red)){.fab-button{box-shadow:0 4px 16px color-mix(in srgb,var(--color-primary)22%,transparent),0 0 20px color-mix(in srgb,var(--color-primary)12%,transparent),inset 0 1px 0 #ffffff1a}}.fab-button{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);font-weight:var(--font-semibold);cursor:pointer;z-index:1000;transition:all .3s cubic-bezier(.4,0,.2,1)}.fab-button:hover:not(:disabled){background:linear-gradient(135deg,var(--color-primary),var(--color-primary))}@supports (color:color-mix(in lab, red, red)){.fab-button:hover:not(:disabled){background:linear-gradient(135deg,color-mix(in srgb,var(--color-primary)20%,transparent),color-mix(in srgb,var(--color-primary)12%,transparent))}}.fab-button:hover:not(:disabled){border-color:var(--color-primary-hover);box-shadow:0 8px 24px var(--color-primary),0 0 28px var(--color-primary),inset 0 1px 0 #ffffff2e}@supports (color:color-mix(in lab, red, red)){.fab-button:hover:not(:disabled){box-shadow:0 8px 24px color-mix(in srgb,var(--color-primary)35%,transparent),0 0 28px color-mix(in srgb,var(--color-primary)20%,transparent),inset 0 1px 0 #ffffff2e}}.fab-button:active:not(:disabled){box-shadow:0 2px 10px var(--color-primary)}@supports (color:color-mix(in lab, red, red)){.fab-button:active:not(:disabled){box-shadow:0 2px 10px color-mix(in srgb,var(--color-primary)20%,transparent)}}.fab-button:disabled{opacity:.5;cursor:not-allowed}.fab-menu-overlay{z-index:calc(var(--z-sticky) + 1);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0000004d;position:fixed;inset:0}.fab-menu{bottom:calc(56px + var(--space-4) + var(--space-2));right:var(--space-4);gap:var(--space-2);opacity:0;visibility:hidden;transition:all var(--transition-base);z-index:calc(var(--z-sticky) + 2);pointer-events:none;flex-direction:column;display:flex;position:fixed;transform:translateY(10px)}.fab-menu--open{opacity:1;visibility:visible;pointer-events:all;transform:translateY(0)}.fab-menu-item{align-items:center;gap:var(--space-3);padding:var(--space-3)var(--space-4);background:var(--color-surface-container);border:1px solid var(--color-primary);border-radius:var(--radius-lg);color:var(--color-text);font-size:var(--text-base);font-weight:var(--font-semibold);cursor:pointer;white-space:nowrap;box-shadow:none;transition:all var(--transition-fast);min-width:200px;display:flex}.fab-menu-item:hover:not(:disabled){background:0 0;border-color:#0000;transform:translate(-4px)}.fab-menu-item:active:not(:disabled){transform:translate(-2px)}.fab-menu-item:disabled{opacity:.5;cursor:not-allowed}.fab-menu-item svg{flex-shrink:0}.fab-menu-item:first-child svg{color:var(--color-primary)}.fab-menu-item:last-child svg{color:#d97706}.fab-spotlight-overlay{z-index:calc(var(--z-sticky) + 1);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);cursor:pointer;opacity:0;background:#00000073;animation:1s cubic-bezier(.4,0,.2,1) forwards fab-overlay-in;position:fixed;inset:0}@keyframes fab-overlay-in{0%{opacity:0;-webkit-backdrop-filter:blur();backdrop-filter:blur()}to{opacity:1;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}}.fab-spotlight-hint{bottom:calc(56px + var(--space-4) + var(--space-4));right:var(--space-4);background:var(--color-surface-container);color:var(--color-text);padding:var(--space-3)var(--space-4);border-radius:var(--radius-lg);font-size:var(--text-sm);font-weight:var(--font-semibold);white-space:nowrap;opacity:0;pointer-events:none;animation:.6s cubic-bezier(.4,0,.2,1) .8s forwards fab-hint-appear;position:fixed;box-shadow:0 4px 20px #00000026}@media (min-width:769px){.fab-spotlight-hint{right:calc(var(--space-4) + var(--right-sidebar-width-real,0px))}}@keyframes fab-hint-appear{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.fab-button--spotlight{animation:2.2s ease-in-out infinite fab-spotlight-glow;z-index:calc(var(--z-sticky) + 3)!important}@keyframes fab-spotlight-glow{0%,to{box-shadow:0 0 0 4px color-mix(in srgb,var(--color-primary)40%,transparent),0 0 20px color-mix(in srgb,var(--color-primary)35%,transparent),0 0 40px color-mix(in srgb,var(--color-primary)15%,transparent);filter:brightness();transform:scale(1)}50%{box-shadow:0 0 0 8px color-mix(in srgb,var(--color-primary)25%,transparent),0 0 35px color-mix(in srgb,var(--color-primary)45%,transparent),0 0 60px color-mix(in srgb,var(--color-primary)20%,transparent);filter:brightness(1.15);transform:scale(1.08)}}:is(.cards-container:has(.review-container) .fab-button,.cards-container:has(.review-container) .fab-menu){display:none!important}.cards-main:has(.review-container){overflow-y:hidden}@media (min-width:769px){.fab-button,.fab-menu{right:calc(var(--space-4) + var(--right-sidebar-width-real,0px));transition:right var(--transition-base)}}@media (min-width:769px) and (max-width:1024px){.cards-container{flex-direction:row;height:100vh}.cards-main{left:0;right:var(--right-sidebar-width-real,250px);position:fixed}.cards-sidebar{width:var(--right-sidebar-width-real,250px);border-left:1px solid var(--color-outline-variant);height:100vh;position:fixed;top:0;right:0}@supports (color:color-mix(in lab, red, red)){.cards-sidebar{border-left:1px solid color-mix(in srgb,var(--color-outline-variant)50%,transparent)}}}@media (max-height:900px){.review-container{padding:clamp(var(--space-1),1.5vh,var(--space-3))}.review-header-new{padding:var(--space-2)0 var(--space-1);gap:var(--space-1)}.review-deck-title h3{font-size:var(--text-2xl)}.review-categories{margin-bottom:clamp(6px,1.5vh,16px)}.review-content{gap:clamp(var(--space-3),1.8vh,var(--space-6));margin-bottom:clamp(4px,1vh,10px)}.flashcard-container{max-height:min(var(--flashcard-max-height),calc(100vh - var(--review-reserved,360px)));max-width:min(var(--flashcard-max-width),75vw,clamp(280px,30vw,430px),calc((100vh - var(--review-reserved,360px))*.75))}@supports (height:100dvh){.flashcard-container{max-height:min(var(--flashcard-max-height),calc(100dvh - var(--review-reserved,360px)));max-width:min(var(--flashcard-max-width),75vw,clamp(280px,30vw,430px),calc((100dvh - var(--review-reserved,360px))*.75))}}.deck-view-header{padding:var(--space-3)}.deck-stats-container{padding:0 var(--space-2)var(--space-2);padding-left:var(--space-1);padding-right:var(--space-1);margin-top:0}.deck-stat-card{padding:var(--space-2)var(--space-2);border-radius:var(--radius-sm)}.cards-empty-icon{width:100px;height:100px}.cards-empty-icon svg{width:48px;height:48px}.cards-empty-title{font-size:var(--text-2xl)}.cards-empty-description{font-size:var(--text-base)}}@media (max-height:750px) and (min-width:768px){.review-categories{padding:var(--space-1);margin-bottom:clamp(6px,1.5vh,16px)}.review-category-chip .category-count{font-size:var(--text-base)}.review-content{padding:0}.mini-card-stack{display:flex}.mini-card-stack .mini-cards,.mini-card-stack .mini-card{width:var(--mini-card-width,130px);height:var(--mini-card-height,173px)}.mini-card-stack .mini-card:nth-child(n+4){display:none}.flashcard-content{padding:var(--space-2)}.flashcard-text{font-size:clamp(14px,2vh,var(--cards-font-size,20px));line-height:var(--cards-line-height,1.6)}.review-footer-wrapper{min-height:50px;margin-top:clamp(6px,1.5vh,16px)}}@media (max-width:768px){.cards-main{left:0;right:0}.review-container{padding:var(--space-1);--review-mobile-reserved:clamp(210px,32vh,280px);flex-direction:column;justify-content:flex-start;display:flex;overflow:hidden}@supports (height:100dvh){.review-container{--review-mobile-reserved:clamp(210px,32dvh,280px)}}.review-header-new{padding:0 var(--space-2)var(--space-1)}.review-deck-title h3{font-size:clamp(var(--text-base),4vw,var(--text-xl))}.review-categories{padding:var(--space-1)var(--space-2);margin-bottom:var(--space-1);justify-content:center;align-items:center;gap:var(--space-1);width:100%;display:flex;overflow:visible}.review-categories-chips{gap:var(--space-1);flex-wrap:nowrap;justify-content:center;align-items:stretch;width:100%;padding:0;display:flex}.review-category-chip{min-width:0;max-width:calc(33.333% - var(--space-1));padding:clamp(var(--space-1),1.5vw,var(--space-2))var(--space-1)calc(clamp(var(--space-1),1.5vw,var(--space-2)) + 6px);border-radius:var(--radius-md);flex-direction:column;flex:1 1 0;justify-content:center;align-items:center;gap:3px;display:flex}.review-category-chip .category-count{font-size:clamp(.88rem,4.25vw,1rem);font-weight:var(--font-semibold);line-height:1.02}.review-category-chip .category-label{text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;text-overflow:ellipsis;font-size:clamp(.52rem,2vw,.62rem);line-height:1.1;overflow:hidden}.review-category-chip:after{bottom:4px}.btn-expand-header-inline{display:none}.review-content{padding:0 var(--space-2);flex:1;justify-content:center;align-items:center;gap:0;min-height:0;margin-bottom:0;display:flex}.mini-card-stack{display:none!important}.flashcard-container{width:100%;max-width:min(calc(100vw - 32px),calc((100vh - var(--review-mobile-reserved,280px))*.75));max-height:calc(100vh - var(--review-mobile-reserved,280px));aspect-ratio:3/4;flex:none;height:auto;margin:0 auto}@supports (height:100dvh){.flashcard-container{max-width:min(calc(100vw - 32px),calc((100dvh - var(--review-mobile-reserved,280px))*.75));max-height:calc(100dvh - var(--review-mobile-reserved,280px))}}.flashcard-text{font-size:clamp(16px,4.2vw,var(--cards-font-size,20px));line-height:var(--cards-line-height,1.6)}.flashcard-face{border-radius:28px}.review-footer-wrapper{min-height:auto;margin-bottom:var(--space-1);margin-top:var(--space-1);width:100%;padding:var(--space-1)var(--space-2)var(--space-2);flex-shrink:0}.upcoming-navigation{padding:var(--space-2)0;padding-top:var(--space-2);min-height:56px;margin-top:0}.review-container:has(.upcoming-navigation) .review-content{padding-top:var(--space-1)}}@media (max-width:480px){.flashcard-container{max-width:min(calc(100vw - 32px),calc((100vh - var(--review-mobile-reserved,280px))*5/7));aspect-ratio:5/7}@supports (height:100dvh){.flashcard-container{max-width:min(calc(100vw - 32px),calc((100dvh - var(--review-mobile-reserved,280px))*5/7))}}}@media (max-height:800px){.review-container{--review-btn-min-height:clamp(32px,4.5vh,40px)}.review-buttons{min-height:auto}}@media (max-width:768px){.cards-sidebar.sidebar-panel--mobile{height:100dvh;max-height:100dvh;z-index:var(--z-modal);background:var(--color-surface);box-shadow:var(--shadow-xl);border-left:none;flex-direction:column;transition:none;display:flex;position:fixed;inset:0;overflow:hidden;transform:translate(100%);width:100%!important;max-width:100%!important}.cards-sidebar.sidebar-panel--mobile .sidebar-file-content{flex:1;min-height:0;overflow-y:auto}.cards-sidebar.sidebar-panel--open{transform:translate(0)}.cards-sidebar.sidebar-panel--mobile .sidebar-resize-handle-right,.cards-sidebar.sidebar-panel--mobile .sidebar-width-indicator-right{display:none!important}.mobile-sidebar-header{padding:var(--space-4);border-bottom:1px solid var(--color-outline-variant);justify-content:space-between;align-items:center;display:flex}@supports (color:color-mix(in lab, red, red)){.mobile-sidebar-header{border-bottom:1px solid color-mix(in srgb,var(--color-outline-variant)50%,transparent)}}.mobile-sidebar-header{background:var(--color-surface);z-index:1;flex-shrink:0;position:sticky;top:0}.mobile-sidebar-header h2{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--color-text);flex:1;margin:0}.mobile-sidebar-header-actions{align-items:center;gap:var(--space-3);display:flex}.mobile-sidebar-header-actions .btn-icon{justify-content:center;align-items:center;width:40px;min-width:40px;height:40px;padding:0;display:flex}.mobile-sidebar-header-actions .btn-icon svg{width:20px;height:20px}.mobile-sidebar-header-actions .sort-selector-trigger{border-radius:var(--radius-md);width:40px;min-width:40px;height:40px;color:var(--color-text-secondary);transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex}.mobile-sidebar-header-actions .sort-selector-trigger:hover,.mobile-sidebar-header-actions .sort-selector-trigger.open{background:rgba(var(--color-primary-rgb,99,102,241),.1);color:var(--color-primary)}.mobile-sidebar-header-actions .sort-selector-trigger svg{width:20px;height:20px}.mobile-sidebar-header-actions .btn-icon-minimal{justify-content:center;align-items:center;width:40px;min-width:40px;height:40px;padding:0;display:flex}.mobile-sidebar-header-actions .btn-icon-minimal svg{width:20px;height:20px}.mobile-sidebar-actions{display:none!important}.cards-main{width:100%;padding:var(--space-3)}.review-buttons{gap:var(--space-1);padding:var(--space-1)var(--space-1)var(--space-2);box-sizing:border-box;flex-flow:row;justify-content:center;width:100%;display:flex!important}.review-btn{min-width:0;min-height:var(--review-btn-min-height,40px);padding:var(--space-1)var(--space-1);border-radius:var(--radius-lg);border-width:1px;flex:1 1 0;overflow:hidden;max-width:none!important}.review-btn.review-btn-text{padding:var(--space-1)var(--space-1)calc(var(--space-1) + 8px)}.review-btn-label{white-space:nowrap;font-size:clamp(.6rem,3vw,.75rem);line-height:1.1}.review-btn-interval{white-space:nowrap;margin-top:0;font-size:clamp(.5rem,2.5vw,.625rem);line-height:1.1}.deck-view{padding:var(--space-2)}.deck-view-header{padding:var(--space-3);gap:var(--space-3);flex-direction:column;margin-bottom:0}.deck-title-row{align-items:center;gap:var(--space-2);flex-flow:row}.deck-title-row h2{font-size:var(--text-xl);flex:1;min-width:0;max-width:100%}.deck-header-actions-inline{gap:var(--space-2);flex-wrap:nowrap;flex-shrink:0;justify-content:flex-end}.deck-header-actions-inline .btn-primary,.deck-header-actions-inline .btn-secondary{display:none}.deck-header-actions-inline .btn-icon-small{width:34px;min-width:34px;max-width:34px;height:34px;min-height:34px;max-height:34px;padding:var(--space-1);aspect-ratio:1;flex-shrink:0}.deck-header-actions-inline .btn-icon-small svg{width:16px;height:16px}.deck-stats-container{padding:0 var(--space-2)var(--space-2);padding-left:var(--space-1);padding-right:var(--space-1);margin-top:0}.deck-stats-grid{gap:var(--space-1);grid-template-columns:repeat(2,1fr);width:100%;display:grid}.deck-stat-card{padding:var(--space-2)var(--space-2);border-radius:var(--radius-sm);text-align:center;justify-content:center;width:auto;min-width:0}.deck-stat-card .stat-icon{display:none}.deck-stat-card:before{opacity:0!important}.deck-stat-card.new .stat-value{color:var(--srs-easy)}.deck-stat-card.due .stat-value{color:var(--srs-again)}.deck-stat-card.upcoming .stat-value{color:var(--color-success)}.deck-stat-card.mastered .stat-value{color:#d97706}.deck-stat-card .stat-label{color:var(--color-text)}.deck-stat-card:hover{box-shadow:none;transform:none}.deck-stat-card:hover .stat-icon{transform:none}.deck-stat-card .stat-content{text-align:center;align-items:center}.deck-stat-card .stat-value{text-align:center;font-size:clamp(1rem,3.5vw,1.5rem)}.deck-stat-card .stat-label{text-align:center;font-size:clamp(.75rem,2.2vw,1rem)}.cards-grid{--cards-grid-gap:var(--space-2);gap:var(--cards-grid-gap);grid-template-columns:1fr}.card-item{padding:var(--space-3)}.cards-empty{padding:var(--space-6)var(--space-3)}.cards-empty-icon{width:100px;height:100px}.cards-empty-icon svg{width:48px;height:48px}.cards-empty-title{font-size:var(--text-xl)}.cards-empty-actions,.cards-list-empty-actions{align-items:center;gap:var(--space-4);flex-direction:row;width:100%}.cards-empty-actions button{text-align:center;justify-content:center}}@media (max-width:480px){.cards-empty-actions,.cards-list-empty-actions{align-items:center;gap:var(--space-4);flex-direction:column;width:100%}.review-deck-title h3{font-size:var(--text-base);max-width:150px}.review-container{--review-mobile-reserved:clamp(230px,36vh,320px)}@supports (height:100dvh){.review-container{--review-mobile-reserved:clamp(230px,36dvh,320px)}}.flashcard-container{max-height:calc(100vh - var(--review-mobile-reserved,320px))}@supports (height:100dvh){.flashcard-container{max-height:calc(100dvh - var(--review-mobile-reserved,320px))}}.review-category-chip{padding:clamp(var(--space-1),1.5vw,var(--space-2))var(--space-2)calc(clamp(var(--space-1),1.5vw,var(--space-2)) + 6px)}.review-category-chip .category-count{font-size:clamp(.84rem,4vw,.94rem)}.review-category-chip .category-label{font-size:clamp(.52rem,2vw,.6rem);line-height:1.1}.review-category-chip:after{bottom:4px}.deck-stats-container{padding:0 var(--space-1)var(--space-2);margin-top:0}.deck-stats-grid{gap:var(--space-1);grid-template-columns:repeat(2,1fr);padding:0}.deck-stat-card{min-width:0;padding:var(--space-1)var(--space-1);flex:1}.deck-stat-card .stat-value{font-size:var(--text-xl)}.magic-bento-grid.deck-stats-grid .deck-stat-card .stat-label{font-size:.65rem;line-height:1.2}.deck-header-actions-inline .btn-primary,.deck-header-actions-inline .btn-secondary{min-width:100%}.deck-header-actions-inline .btn-icon-small{padding:var(--space-1);aspect-ratio:1;flex-shrink:0;width:28px!important;min-width:28px!important;max-width:28px!important;height:28px!important;min-height:28px!important;max-height:28px!important}.deck-header-actions-inline .btn-icon-small svg{width:14px;height:14px}.deck-view{padding:var(--space-2);padding-right:var(--space-4)}}@media (max-width:360px){.review-category-chip .category-label,.mobile-sidebar-actions button span{display:none}.mobile-sidebar-actions button{padding:var(--space-2)}}.info-section{margin-bottom:var(--space-4)}.info-section:last-child{margin-bottom:0}.info-section h4{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-text);margin-bottom:var(--space-3)}.card-types-grid{gap:var(--space-2);grid-template-columns:1fr;display:grid}.principles-list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.principles-list li{font-size:var(--text-xs);color:var(--color-text-secondary);padding-left:var(--space-5);position:relative}.principles-list li:before{content:"✓";left:var(--space-2);color:var(--color-success);font-weight:var(--font-bold);position:absolute}.media-url-input,.tags-input{gap:var(--space-2);flex-direction:column;display:flex}.url-input-row{gap:var(--space-2);display:flex}.url-input-row .form-input{flex:1}.tag-input-row{position:relative}.tag-input-field{width:100%;padding-right:96px;background:0 0!important}.tag-input-add-btn{right:var(--space-1);color:var(--color-text-secondary);font-size:var(--text-sm);font-weight:var(--font-semibold);padding:0 var(--space-2);cursor:pointer;border-radius:var(--radius-sm);height:28px;transition:color var(--transition-fast);background:0 0;border:none;position:absolute;top:50%;transform:translateY(-50%)}.tag-input-add-btn:hover:not(:disabled){color:var(--color-primary)}.tag-input-add-btn:disabled{opacity:.45;cursor:not-allowed}.btn-sm{padding:var(--space-2)var(--space-3);font-size:var(--text-sm);height:auto}.url-list{gap:var(--space-2);flex-direction:column;display:flex}.url-item{align-items:center;gap:var(--space-2);padding:var(--space-2);background:var(--color-surface-variant);border:1px solid var(--color-outline-variant);border-radius:var(--radius-md);display:flex}.url-preview-img{object-fit:cover;border-radius:var(--radius-sm);flex-shrink:0;width:40px;height:40px}.url-preview-icon{width:40px;height:40px;color:var(--color-text-secondary);flex-shrink:0}.url-text{font-size:var(--text-xs);color:var(--color-text-secondary);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.btn-remove{padding:var(--space-1);color:var(--color-error);cursor:pointer;border-radius:var(--radius-sm);transition:background var(--duration-fast)var(--ease-out);background:0 0;border:none;flex-shrink:0}.btn-remove:hover{background:var(--color-error-container)}.tags-list{gap:var(--space-2);flex-wrap:wrap;display:flex}.tag-chip{align-items:center;gap:var(--space-1);padding:var(--space-1)var(--space-2);background:var(--color-primary-container);color:var(--color-on-primary-container);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-medium);display:inline-flex}.tag-remove{color:currentColor;cursor:pointer;border-radius:var(--radius-full);transition:background var(--duration-fast)var(--ease-out);background:0 0;border:none;justify-content:center;align-items:center;padding:2px;display:flex}.tag-remove:hover{background:#0000001a}.tag-info-hint{width:16px;height:16px;font-size:10px;font-weight:var(--font-bold);border-radius:var(--radius-full);background:var(--color-outline-variant);color:var(--color-text-secondary);margin-left:var(--space-1);cursor:help;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.checkbox-label{align-items:center;gap:var(--space-2);cursor:pointer;display:flex}.checkbox-label input[type=checkbox]{cursor:pointer;width:18px;height:18px}.checkbox-label span{font-size:var(--text-sm);color:var(--color-text)}.card-content-wrapper{gap:var(--space-3);flex-direction:column;align-items:center;width:100%;display:flex}.card-image-wrapper{border-radius:var(--radius-lg);cursor:pointer;width:100%;transition:transform var(--duration-normal)var(--ease-out);overflow:hidden}.card-image-wrapper:hover{transform:scale(1.02)}.card-image{object-fit:cover;width:100%;height:auto;display:block}.card-video-wrapper{aspect-ratio:16/9;border-radius:var(--radius-lg);background:var(--color-surface-variant);width:100%;overflow:hidden}.card-video{object-fit:contain;width:100%;height:100%}.card-video-placeholder{background:var(--color-surface-variant);width:100%;height:100%;color:var(--color-primary);cursor:pointer;transition:all var(--duration-normal)var(--ease-out);justify-content:center;align-items:center;display:flex}.card-video-placeholder:hover{background:var(--color-primary-container);color:var(--color-on-primary-container)}.flashcard-text.with-media{font-size:var(--cards-font-size,var(--text-base))}.flashcard-text.text-only{font-size:var(--cards-font-size,var(--text-xl));text-align:center}.fullscreen-image-viewer{width:100vw;height:100vh;z-index:var(--z-modal);cursor:pointer;background:#000000f2;justify-content:center;align-items:center;display:flex;position:fixed;top:0;left:0}.fullscreen-close-btn{top:var(--space-4);right:var(--space-4);padding:var(--space-2);color:#fff;border-radius:var(--radius-full);cursor:pointer;transition:background var(--duration-fast)var(--ease-out);z-index:calc(var(--z-modal) + 1);background:#00000080;border:none;position:absolute}.fullscreen-close-btn:hover{color:var(--color-error);background:#00000080}.fullscreen-image{object-fit:contain;cursor:default;max-width:90vw;max-height:90vh;transition:transform var(--duration-normal)var(--ease-out)}@media (max-width:640px){.card-types-grid{grid-template-columns:1fr}.url-input-row{flex-direction:column}.btn-sm{width:100%}.card-image-wrapper:hover{transform:none}}.mastered-navigation .btn-secondary.btn-icon-text:before,.mastered-navigation .btn-primary.btn-icon-text:before,.upcoming-navigation .btn-secondary.btn-icon-text:before,.upcoming-navigation .btn-primary.btn-icon-text:before,.upcoming-navigation .btn-primary.btn-icon-text:not(.btn-gradient-magic):before,.upcoming-navigation .btn-primary.btn-icon-text.btn-magic-cyan:before{content:none!important;display:none!important}.mastered-navigation .btn-secondary.btn-icon-text,.mastered-navigation .btn-primary.btn-icon-text,.mastered-navigation .btn-error.btn-icon-text,.upcoming-navigation .btn-secondary.btn-icon-text,.upcoming-navigation .btn-primary.btn-icon-text,.upcoming-navigation .btn-primary.btn-icon-text:not(.btn-gradient-magic),.upcoming-navigation .btn-primary.btn-icon-text.btn-magic-cyan{--_nav-c:var(--color-text-secondary);--_nav-cl:var(--color-text);box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;box-sizing:border-box!important;padding:var(--space-2)var(--space-3)calc(var(--space-2) + 8px)!important;color:var(--_nav-c)!important;background:0 0!important;border:none!important;border-radius:0!important;transition:color .25s,transform .25s,opacity .25s!important;position:relative!important;overflow:visible!important}.mastered-navigation .btn-secondary.btn-icon-text{--_nav-c:var(--color-text-secondary);--_nav-cl:var(--color-text)}.mastered-navigation .btn-error.btn-icon-text{--_nav-c:var(--color-error);--_nav-cl:var(--color-error)}@supports (color:color-mix(in lab, red, red)){.mastered-navigation .btn-error.btn-icon-text{--_nav-cl:color-mix(in srgb,var(--color-error)82%,white 18%)}}.upcoming-navigation .btn-secondary.btn-icon-text,.upcoming-navigation .btn-primary.btn-icon-text,.upcoming-navigation .btn-primary.btn-icon-text:not(.btn-gradient-magic),.upcoming-navigation .btn-primary.btn-icon-text.btn-magic-cyan{--_nav-c:var(--srs-upcoming);--_nav-cl:var(--srs-upcoming-light)}.mastered-counter,.upcoming-counter{--_counter-c:var(--color-text-secondary);--_counter-line-c:var(--srs-upcoming);min-width:80px;padding:var(--space-2)var(--space-3)calc(var(--space-2) + 8px);font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--_counter-c);justify-content:center;align-items:center;display:inline-flex;position:relative}@supports (color:color-mix(in lab, red, red)){.mastered-counter,.upcoming-counter{color:color-mix(in srgb,var(--_counter-c)92%,var(--color-text)8%)}}.mastered-counter,.upcoming-counter{box-shadow:none;box-sizing:border-box;text-align:center;--_counter-c:var(--color-text-secondary);background:0 0;border:none;border-radius:0}.mastered-counter:after,.upcoming-counter:after{content:"";border-radius:var(--radius-full);background:linear-gradient(90deg,transparent 0%,var(--_counter-line-c)16%,var(--_counter-line-c)50%,var(--_counter-line-c)84%,transparent 100%);width:min(72px,74%);height:1px;position:absolute;bottom:2px;left:50%;transform:translate(-50%)}@supports (color:color-mix(in lab, red, red)){.mastered-counter:after,.upcoming-counter:after{background:linear-gradient(90deg,transparent 0%,color-mix(in srgb,var(--_counter-line-c)14%,transparent)16%,color-mix(in srgb,var(--_counter-line-c)42%,transparent)50%,color-mix(in srgb,var(--_counter-line-c)14%,transparent)84%,transparent 100%)}}.mastered-counter:after,.upcoming-counter:after{opacity:.84}.mastered-navigation .btn-secondary.btn-icon-text:after,.mastered-navigation .btn-primary.btn-icon-text:after,.mastered-navigation .btn-error.btn-icon-text:after,.upcoming-navigation .btn-secondary.btn-icon-text:after,.upcoming-navigation .btn-primary.btn-icon-text:after,.upcoming-navigation .btn-primary.btn-icon-text:not(.btn-gradient-magic):after,.upcoming-navigation .btn-primary.btn-icon-text.btn-magic-cyan:after{content:"";border-radius:var(--radius-full);background:linear-gradient(90deg,transparent 0%,var(--_nav-c)16%,var(--_nav-c)50%,var(--_nav-c)84%,transparent 100%);width:min(84px,78%);height:1px;position:absolute;bottom:2px;left:50%;transform:translate(-50%)}@supports (color:color-mix(in lab, red, red)){.mastered-navigation .btn-secondary.btn-icon-text:after,.mastered-navigation .btn-primary.btn-icon-text:after,.mastered-navigation .btn-error.btn-icon-text:after,.upcoming-navigation .btn-secondary.btn-icon-text:after,.upcoming-navigation .btn-primary.btn-icon-text:after,.upcoming-navigation .btn-primary.btn-icon-text:not(.btn-gradient-magic):after,.upcoming-navigation .btn-primary.btn-icon-text.btn-magic-cyan:after{background:linear-gradient(90deg,transparent 0%,color-mix(in srgb,var(--_nav-c)16%,transparent)16%,color-mix(in srgb,var(--_nav-c)58%,transparent)50%,color-mix(in srgb,var(--_nav-c)16%,transparent)84%,transparent 100%)}}.mastered-navigation .btn-secondary.btn-icon-text:after,.mastered-navigation .btn-primary.btn-icon-text:after,.mastered-navigation .btn-error.btn-icon-text:after,.upcoming-navigation .btn-secondary.btn-icon-text:after,.upcoming-navigation .btn-primary.btn-icon-text:after,.upcoming-navigation .btn-primary.btn-icon-text:not(.btn-gradient-magic):after,.upcoming-navigation .btn-primary.btn-icon-text.btn-magic-cyan:after{opacity:.78;transition:opacity .25s,transform .25s,background .25s,box-shadow .25s}.mastered-navigation .btn-secondary.btn-icon-text:hover:before,.mastered-navigation .btn-primary.btn-icon-text:hover:before,.mastered-navigation .btn-error.btn-icon-text:hover:before,.upcoming-navigation .btn-secondary.btn-icon-text:hover:before,.upcoming-navigation .btn-primary.btn-icon-text:hover:before,.upcoming-navigation .btn-primary.btn-icon-text:not(.btn-gradient-magic):hover:before,.upcoming-navigation .btn-primary.btn-icon-text.btn-magic-cyan:hover:before{opacity:0!important;display:none!important}.mastered-navigation .btn-secondary.btn-icon-text:hover,.mastered-navigation .btn-primary.btn-icon-text:hover,.mastered-navigation .btn-error.btn-icon-text:hover,.upcoming-navigation .btn-secondary.btn-icon-text:hover,.upcoming-navigation .btn-primary.btn-icon-text:hover,.upcoming-navigation .btn-primary.btn-icon-text:not(.btn-gradient-magic):hover,.upcoming-navigation .btn-primary.btn-icon-text.btn-magic-cyan:hover{box-shadow:none!important;color:var(--_nav-cl)!important;background:0 0!important;border:none!important;transform:none!important}.mastered-navigation .btn-secondary.btn-icon-text:hover:after,.mastered-navigation .btn-primary.btn-icon-text:hover:after,.mastered-navigation .btn-error.btn-icon-text:hover:after,.upcoming-navigation .btn-secondary.btn-icon-text:hover:after,.upcoming-navigation .btn-primary.btn-icon-text:hover:after,.upcoming-navigation .btn-primary.btn-icon-text:not(.btn-gradient-magic):hover:after,.upcoming-navigation .btn-primary.btn-icon-text.btn-magic-cyan:hover:after{background:linear-gradient(90deg,transparent 0%,var(--_nav-c)14%,var(--_nav-cl)50%,var(--_nav-c)86%,transparent 100%)}@supports (color:color-mix(in lab, red, red)){.mastered-navigation .btn-secondary.btn-icon-text:hover:after,.mastered-navigation .btn-primary.btn-icon-text:hover:after,.mastered-navigation .btn-error.btn-icon-text:hover:after,.upcoming-navigation .btn-secondary.btn-icon-text:hover:after,.upcoming-navigation .btn-primary.btn-icon-text:hover:after,.upcoming-navigation .btn-primary.btn-icon-text:not(.btn-gradient-magic):hover:after,.upcoming-navigation .btn-primary.btn-icon-text.btn-magic-cyan:hover:after{background:linear-gradient(90deg,transparent 0%,color-mix(in srgb,var(--_nav-c)22%,transparent)14%,var(--_nav-cl)50%,color-mix(in srgb,var(--_nav-c)22%,transparent)86%,transparent 100%)}}.mastered-navigation .btn-secondary.btn-icon-text:hover:after,.mastered-navigation .btn-primary.btn-icon-text:hover:after,.mastered-navigation .btn-error.btn-icon-text:hover:after,.upcoming-navigation .btn-secondary.btn-icon-text:hover:after,.upcoming-navigation .btn-primary.btn-icon-text:hover:after,.upcoming-navigation .btn-primary.btn-icon-text:not(.btn-gradient-magic):hover:after,.upcoming-navigation .btn-primary.btn-icon-text.btn-magic-cyan:hover:after{opacity:1;box-shadow:0 0 8px var(--_nav-c),0 0 14px var(--_nav-c)}@supports (color:color-mix(in lab, red, red)){.mastered-navigation .btn-secondary.btn-icon-text:hover:after,.mastered-navigation .btn-primary.btn-icon-text:hover:after,.mastered-navigation .btn-error.btn-icon-text:hover:after,.upcoming-navigation .btn-secondary.btn-icon-text:hover:after,.upcoming-navigation .btn-primary.btn-icon-text:hover:after,.upcoming-navigation .btn-primary.btn-icon-text:not(.btn-gradient-magic):hover:after,.upcoming-navigation .btn-primary.btn-icon-text.btn-magic-cyan:hover:after{box-shadow:0 0 8px color-mix(in srgb,var(--_nav-c)20%,transparent),0 0 14px color-mix(in srgb,var(--_nav-c)12%,transparent)}}.mastered-navigation .btn-secondary.btn-icon-text:active:after,.mastered-navigation .btn-primary.btn-icon-text:active:after,.mastered-navigation .btn-error.btn-icon-text:active:after,.upcoming-navigation .btn-secondary.btn-icon-text:active:after,.upcoming-navigation .btn-primary.btn-icon-text:active:after,.upcoming-navigation .btn-primary.btn-icon-text:not(.btn-gradient-magic):active:after,.upcoming-navigation .btn-primary.btn-icon-text.btn-magic-cyan:active:after{transform:translate(-50%)scaleX(1.03)}.mastered-navigation .btn-secondary.btn-icon-text:hover span,.mastered-navigation .btn-secondary.btn-icon-text:hover svg,.mastered-navigation .btn-primary.btn-icon-text:hover span,.mastered-navigation .btn-primary.btn-icon-text:hover svg,.mastered-navigation .btn-error.btn-icon-text:hover span,.mastered-navigation .btn-error.btn-icon-text:hover svg,.upcoming-navigation .btn-secondary.btn-icon-text:hover span,.upcoming-navigation .btn-secondary.btn-icon-text:hover svg,.upcoming-navigation .btn-primary.btn-icon-text:hover span,.upcoming-navigation .btn-primary.btn-icon-text:hover svg,.upcoming-navigation .btn-primary.btn-icon-text:not(.btn-gradient-magic):hover span,.upcoming-navigation .btn-primary.btn-icon-text:not(.btn-gradient-magic):hover svg,.upcoming-navigation .btn-primary.btn-icon-text.btn-magic-cyan:hover span,.upcoming-navigation .btn-primary.btn-icon-text.btn-magic-cyan:hover svg{filter:drop-shadow(0 0 8px var(--_nav-c))drop-shadow(0 0 14px var(--_nav-c))}@supports (color:color-mix(in lab, red, red)){.mastered-navigation .btn-secondary.btn-icon-text:hover span,.mastered-navigation .btn-secondary.btn-icon-text:hover svg,.mastered-navigation .btn-primary.btn-icon-text:hover span,.mastered-navigation .btn-primary.btn-icon-text:hover svg,.mastered-navigation .btn-error.btn-icon-text:hover span,.mastered-navigation .btn-error.btn-icon-text:hover svg,.upcoming-navigation .btn-secondary.btn-icon-text:hover span,.upcoming-navigation .btn-secondary.btn-icon-text:hover svg,.upcoming-navigation .btn-primary.btn-icon-text:hover span,.upcoming-navigation .btn-primary.btn-icon-text:hover svg,.upcoming-navigation .btn-primary.btn-icon-text:not(.btn-gradient-magic):hover span,.upcoming-navigation .btn-primary.btn-icon-text:not(.btn-gradient-magic):hover svg,.upcoming-navigation .btn-primary.btn-icon-text.btn-magic-cyan:hover span,.upcoming-navigation .btn-primary.btn-icon-text.btn-magic-cyan:hover svg{filter:drop-shadow(0 0 8px color-mix(in srgb,var(--_nav-c)58%,transparent))drop-shadow(0 0 14px color-mix(in srgb,var(--_nav-c)34%,transparent))}}.media-input{gap:var(--space-3);flex-direction:column;display:flex}.media-input__file-input{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.media-input__dropzone{padding:var(--space-3)var(--space-4);border:1.5px dashed var(--color-outline-variant);border-radius:var(--radius-lg);background:var(--color-surface-container);transition:all var(--duration-fast)var(--ease-out);justify-content:center;align-items:center;min-height:48px;display:flex}.media-input__dropzone:focus{border-color:var(--color-primary);background:var(--color-primary-container);outline:none}.media-input__dropzone--active{border-color:var(--color-primary);background:var(--color-primary-container);border-style:solid}.media-input__dropzone--uploading{pointer-events:none;opacity:.7}.media-input__actions{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.media-input__btn{align-items:center;gap:var(--space-1);padding:var(--space-1-5)var(--space-3);border:1px solid var(--color-outline-variant);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text-secondary);font-size:var(--text-xs);cursor:pointer;transition:all var(--duration-fast)var(--ease-out);font-weight:500;display:inline-flex}.media-input__btn:hover,.media-input__btn.active{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-container)}.media-input__hint{font-size:var(--text-xs);color:var(--color-text-tertiary)}.media-input__uploading{align-items:center;gap:var(--space-2);color:var(--color-primary);font-size:var(--text-sm);display:flex}.media-input__spinner{border:2px solid var(--color-primary-container);border-top-color:var(--color-primary);border-radius:50%;width:16px;height:16px;animation:.8s linear infinite spin}.media-input__url-row{gap:var(--space-2);display:flex}.media-input__url-row .form-input{flex:1}.media-input__list{gap:var(--space-2);flex-direction:column;display:flex}.media-input__item{align-items:center;gap:var(--space-3);padding:var(--space-2);background:var(--color-surface-container);border-radius:var(--radius-md);transition:background var(--duration-fast)var(--ease-out);display:flex}.media-input__item:hover{background:var(--color-surface-container-high)}.media-input__preview-img{object-fit:cover;border-radius:var(--radius-sm);background:var(--color-surface);width:48px;height:48px}.media-input__preview-video{background:var(--color-surface);border-radius:var(--radius-sm);width:48px;height:48px;color:var(--color-text-tertiary);justify-content:center;align-items:center;display:flex}.media-input__item-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.media-input__item-label{font-size:var(--text-xs);color:var(--color-text-tertiary)}.media-input__item-url{font-size:var(--text-xs);color:var(--color-text-secondary);white-space:nowrap;text-overflow:ellipsis;font-family:var(--font-mono);overflow:hidden}.media-input__remove{border-radius:var(--radius-sm);width:24px;height:24px;color:var(--color-text-tertiary);cursor:pointer;transition:all var(--duration-fast)var(--ease-out);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.media-input__remove:hover{background:var(--color-error-container);color:var(--color-error)}.media-image{border-radius:12px;max-width:100%;line-height:0;display:inline-block;position:relative;overflow:hidden}.media-image--clickable{cursor:pointer;transition:transform .2s,box-shadow .2s}.media-image--clickable:hover{transform:scale(1.02);box-shadow:0 4px 20px #00000026}.media-image--clickable:focus-visible{outline:2px solid var(--accent-color,#6366f1);outline-offset:2px}.media-image__img{border-radius:12px;max-width:100%;height:auto;display:block}.media-image__placeholder,.media-image__error{background:var(--bg-secondary,#f5f5f5);min-width:120px;min-height:80px;color:var(--text-tertiary,#999);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex}.media-image--loading .media-image__placeholder{animation:1.5s ease-in-out infinite pulse}.media-image__error span{font-size:12px}.media-video{background:#000;border-radius:12px;max-width:100%;line-height:0;display:inline-block;position:relative;overflow:hidden}.media-video--clickable{cursor:pointer}.media-video__video{border-radius:12px;max-width:100%;height:auto;display:block}.media-video__placeholder,.media-video__error{background:var(--bg-secondary,#f5f5f5);min-width:200px;min-height:120px;color:var(--text-tertiary,#999);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:32px;display:flex}.media-video--loading .media-video__placeholder{animation:1.5s ease-in-out infinite pulse}.media-video__duration{color:#fff;background:#000000b3;border-radius:4px;padding:2px 6px;font-family:monospace;font-size:12px;position:absolute;bottom:8px;right:8px}.media-uploader{position:relative}.media-uploader__input{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.media-uploader__dropzone{border:2px dashed var(--color-outline-variant,#333);border-radius:var(--radius-xl,16px);cursor:pointer;min-height:160px;transition:all var(--transition-fast,.15s ease);background:0 0;justify-content:center;align-items:center;padding:24px;display:flex}.media-uploader__dropzone:hover{border-color:var(--color-primary,#6366f1);background:var(--color-primary)}@supports (color:color-mix(in lab, red, red)){.media-uploader__dropzone:hover{background:color-mix(in srgb,var(--color-primary)5%,transparent)}}.media-uploader__dropzone--active{border-color:var(--color-primary,#6366f1);background:var(--color-primary)}@supports (color:color-mix(in lab, red, red)){.media-uploader__dropzone--active{background:color-mix(in srgb,var(--color-primary)8%,transparent)}}.media-uploader__dropzone--active{border-style:solid}.media-uploader__dropzone:focus-visible{outline:2px solid var(--color-primary,#6366f1);outline-offset:2px}.media-uploader__dropzone-content{text-align:center;flex-direction:column;align-items:center;gap:12px;display:flex}.media-uploader__icon{color:var(--color-text-tertiary,#999);width:36px;height:36px;transition:color .2s}.media-uploader__dropzone:hover .media-uploader__icon,.media-uploader__dropzone--active .media-uploader__icon{color:var(--color-primary,#6366f1)}.media-uploader__text{font-size:var(--text-sm,14px);font-weight:var(--font-medium,500);color:var(--color-text-secondary,#999);margin:0}.media-uploader__hint{font-size:var(--text-xs,12px);color:var(--color-text-tertiary,#666);margin:0}.media-uploader--compact{align-items:center;gap:8px;display:inline-flex}.media-uploader__uploading-compact{gap:4px;display:flex}.media-uploader__uploading-dot{background:var(--accent-color,#6366f1);border-radius:50%;width:6px;height:6px;animation:1s ease-in-out infinite pulse}.media-uploader__uploads{flex-direction:column;gap:8px;margin-top:12px;display:flex}.media-uploader__upload-item{background:var(--bg-secondary,#fafafa);border-radius:8px;align-items:center;gap:12px;padding:8px 12px;display:flex}.media-uploader__upload-item--error{background:var(--color-error)}@supports (color:color-mix(in lab, red, red)){.media-uploader__upload-item--error{background:color-mix(in srgb,var(--color-error)10%,transparent)}}.media-uploader__preview{object-fit:cover;border-radius:6px;width:40px;height:40px}.media-uploader__upload-info{flex:1;min-width:0}.media-uploader__filename{color:var(--text-primary,#333);white-space:nowrap;text-overflow:ellipsis;font-size:13px;display:block;overflow:hidden}.media-uploader__error{color:var(--color-error);font-size:12px;display:block}.media-uploader__progress{background:var(--bg-tertiary,#e0e0e0);border-radius:2px;height:4px;margin-top:6px;overflow:hidden}.media-uploader__progress-bar{background:var(--accent-color,#6366f1);border-radius:2px;height:100%;transition:width .3s}.media-viewer{z-index:10000;background:#000000f2;flex-direction:column;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.media-viewer__header{color:#fff;z-index:10001;pointer-events:auto;text-shadow:0 2px 4px #000c;background:0 0;justify-content:flex-end;align-items:center;padding:12px 16px;display:flex;position:fixed;bottom:20px;right:20px}.media-viewer__info{align-items:center;gap:16px;display:flex}.media-viewer__filename{font-size:14px;font-weight:500}.media-viewer__dimensions{color:#fff9;font-size:12px}.media-viewer__actions{align-items:center;gap:8px;display:flex}.media-viewer__actions button{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0000004d}.media-viewer__actions button:hover{background:#00000080}.media-viewer__zoom-value{text-align:center;color:#fffc;min-width:50px;font-family:monospace;font-size:13px}.media-viewer__content{-webkit-user-select:none;user-select:none;flex-direction:column;flex:1;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.media-viewer__content--dragging{cursor:grabbing!important}.media-viewer__image,.media-viewer__video{object-fit:contain;transform-origin:50%;border-radius:8px;max-width:90vw;max-height:calc(100vh - 120px)}.media-viewer__nav{color:#fff;cursor:pointer;z-index:10;background:#ffffff1a;border:none;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;transition:background .2s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.media-viewer__nav:hover{background:#fff3}.media-viewer__nav--prev{left:16px}.media-viewer__nav--next{right:16px}.media-viewer__counter{color:#fffc;background:#00000080;border-radius:16px;padding:6px 12px;font-size:13px;position:absolute;bottom:16px;left:50%;transform:translate(-50%)}.media-viewer__zoom-hint{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#ffffffe6;z-index:10002;pointer-events:auto;text-align:center;white-space:nowrap;background:#000000b3;border-radius:20px;align-items:center;gap:12px;padding:10px 20px;font-size:medium;animation:3s ease-in-out fadeInOut;display:flex;position:fixed;bottom:80px;left:50%;transform:translate(-50%)}.media-viewer__zoom-hint-dismiss{color:#ffffffb3;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:24px;height:24px;margin-left:8px;padding:4px;transition:all .2s;display:flex}.media-viewer__zoom-hint-dismiss:hover{color:#ffffffe6;background:#ffffff1a}.media-viewer__zoom-hint-dismiss svg{flex-shrink:0;width:16px;height:16px}.media-viewer [data-tooltip]:after{text-shadow:0 1px 2px #00000080,0 0 10px #0000004d;color:#fff!important}@keyframes fadeInOut{0%{opacity:0;transform:translate(-50%)translateY(10px)}15%{opacity:1;transform:translate(-50%)translateY(0)}85%{opacity:1;transform:translate(-50%)translateY(0)}to{opacity:0;transform:translate(-50%)translateY(-10px)}}.preview-content img,.markdown-preview img{cursor:pointer;border-radius:12px;max-width:100%;height:auto;transition:transform .2s,box-shadow .2s}.preview-content img:hover,.markdown-preview img:hover{transform:scale(1.01);box-shadow:0 4px 16px #0000001a}.preview-content video,.markdown-preview video{border-radius:12px;max-width:100%;height:auto}[data-theme=dark] .media-image__placeholder,[data-theme=dark] .media-image__error,[data-theme=dark] .media-video__placeholder,[data-theme=dark] .media-video__error{background:var(--bg-tertiary,#2a2a2a)}[data-theme=dark] .media-uploader__dropzone{border-color:var(--color-outline-variant,#333);background:0 0}[data-theme=dark] .media-uploader__dropzone:hover{background:var(--color-primary)}@supports (color:color-mix(in lab, red, red)){[data-theme=dark] .media-uploader__dropzone:hover{background:color-mix(in srgb,var(--color-primary)5%,transparent)}}[data-theme=dark] .media-uploader__upload-item{background:var(--bg-tertiary,#2a2a2a)}@media (max-width:768px){.media-viewer__header{padding:8px 12px}.media-viewer__filename{white-space:nowrap;text-overflow:ellipsis;max-width:150px;overflow:hidden}.media-viewer__dimensions{display:none}.media-viewer__nav{width:44px;height:44px}.media-viewer__nav--prev{left:8px}.media-viewer__nav--next{right:8px}.media-uploader__dropzone{min-height:140px;padding:24px}.media-uploader__icon{width:36px;height:36px}}.media-upload-modal-overlay{z-index:9999;background:#00000080;justify-content:center;align-items:center;animation:.15s fadeIn;display:flex;position:fixed;inset:0}.media-upload-modal{background:var(--bg-primary,#fff);border-radius:16px;width:90%;max-width:500px;animation:.2s modalSlideIn;overflow:hidden;box-shadow:0 16px 64px #0003}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.media-upload-modal-header{border-bottom:1px solid var(--border-color,#e0e0e0);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.media-upload-modal-header h3{color:var(--text-primary,#333);margin:0;font-size:16px;font-weight:600}.media-upload-modal-close{width:32px;height:32px;color:var(--text-tertiary,#999);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;font-size:24px;transition:all .15s;display:flex}.media-upload-modal-close:hover{color:var(--color-error);background:0 0}.media-upload-modal .media-uploader{padding:20px}[data-theme=dark] .media-upload-modal{background:var(--bg-primary,#1a1a1a)}[data-theme=dark] .media-upload-modal-header{border-color:var(--border-color,#333)}[data-theme=dark] .media-upload-modal-close:hover{background:0 0}:root{--auth-gradient:var(--brand-gradient);--auth-glass-bg:#ffffff0d;--auth-glass-border:#ffffff1a;--auth-bg-pattern:radial-gradient(circle at 10% 20%,#6366f11f 0%,transparent 40%),radial-gradient(circle at 90% 80%,#60a5fa1a 0%,transparent 40%),radial-gradient(circle at 50% 50%,#818cf80d 0%,transparent 60%)}.auth-layout{isolation:isolate;justify-content:center;width:100%;min-height:100dvh;display:flex;position:relative;overflow:hidden}.auth-layout:before{content:"";background:var(--bg-primary);background-image:var(--auth-bg-pattern);z-index:0;pointer-events:none;background-repeat:no-repeat;background-size:cover;position:fixed;inset:0}.auth-page{z-index:1;flex-direction:column;width:100%;height:100dvh;padding:1rem clamp(1.25rem,4vw,2.75rem);display:flex;position:relative;overflow-y:auto}.auth-container{z-index:1;flex-direction:column;gap:clamp(1.25rem,2vh,1.75rem);width:100%;max-width:450px;margin:auto;padding:0 clamp(1.75rem,4vw,3rem);display:flex;position:relative}@media (min-width:768px){.auth-page{padding:2rem}.auth-container{margin:auto}}.auth-page::-webkit-scrollbar{width:8px}.auth-page::-webkit-scrollbar-track{background:0 0;border-radius:4px}.auth-page::-webkit-scrollbar-thumb{background:var(--border-primary);border-radius:4px}.auth-page::-webkit-scrollbar-thumb:hover{background:var(--border-secondary)}@keyframes auth-container-appear{0%{opacity:0;transform:translateY(20px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.auth-loading{color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:1.5rem;padding:4rem 2rem;display:flex}.auth-loading p{margin:0;font-size:1.1rem;font-weight:500}.auth-header{text-align:center;margin-bottom:1rem}.auth-title{background:var(--auth-gradient);-webkit-text-fill-color:transparent;letter-spacing:-.02em;-webkit-background-clip:text;background-clip:text;margin:0 0 .5rem;font-size:clamp(2.4rem,4vw,3rem);font-weight:800}.auth-subtitle{color:var(--text-primary);margin:0;font-size:1.1rem;font-weight:500}.auth-home-btn{justify-content:center;width:100%;margin-top:1rem;font-weight:600;text-decoration:none}.auth-tabs{gap:12px;margin-bottom:1rem;padding:0 1rem;display:flex}.auth-tab{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:12px;flex:1;padding:.75rem 1rem;font-size:1rem;font-weight:600;transition:all .25s cubic-bezier(.4,0,.2,1)}.auth-tab:hover{color:var(--text-primary);background:#ffffff0d}.auth-tab.active{color:var(--text-primary);box-shadow:0 2px 8px #00000026,0 0 0 1px var(--border-secondary);background:0 0}[data-theme=dark] .auth-tab.active{color:#fff;background:0 0;box-shadow:0 0 20px #a78bfa26,0 0 0 1px #fff3}.auth-form{flex-direction:column;gap:1.35rem;display:flex}.auth-field{flex-direction:column;gap:.65rem;display:flex}.auth-label{color:var(--text-primary);margin-left:4px;font-size:1rem;font-weight:600}.auth-input-wrapper{align-items:center;display:flex;position:relative}.auth-input-icon{color:var(--text-tertiary);pointer-events:none;z-index:10;stroke:url(#brand-btn-gradient);fill:none;flex-shrink:0;transition:color .2s;position:absolute;left:16px}[data-theme=light] .auth-input-icon,[data-theme=light] .auth-password-toggle svg{stroke:var(--btn-gradient-mid)}.auth-input{background:var(--bg-primary);border:2px solid var(--border-primary);width:100%;color:var(--text-primary);border-radius:12px;font-size:1rem;transition:all .2s;padding:.8rem .85rem .8rem 2.5rem!important}.auth-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 4px var(--color-primary-container),0 0 20px #6366f11a;outline:none}.auth-input:focus+.auth-input-icon{color:var(--color-primary)}.auth-input::placeholder{color:var(--text-secondary);opacity:.7}.auth-password-toggle{color:var(--text-tertiary);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;padding:8px;transition:all .2s;display:flex;position:absolute;right:14px}.auth-password-toggle svg{stroke:url(#brand-btn-gradient);color:#0000;fill:none}.auth-password-toggle:hover{color:var(--text-secondary);background:var(--bg-tertiary)}.auth-forgot-link{color:var(--color-primary,#a78bfa);cursor:pointer;background:0 0;border:none;align-self:flex-end;margin-top:-.5rem;padding:0;font-size:.95rem;font-weight:500;transition:opacity .2s}.auth-forgot-link:hover:not(:disabled){opacity:.8;text-decoration:underline}.auth-submit-btn{color:#fff;cursor:pointer;border:none;border-radius:14px;justify-content:center;align-items:center;gap:.65rem;margin-top:.5rem;padding:.7rem .9rem;font-size:1rem;font-weight:700;transition:all .3s cubic-bezier(.175,.885,.32,1.275);display:flex}.auth-submit-btn.btn-magic-ai{background:linear-gradient(var(--color-surface),var(--color-surface))padding-box,linear-gradient(135deg,var(--color-primary),var(--color-primary-hover),var(--color-primary))border-box;box-shadow:0 4px 16px var(--color-primary),0 0 20px var(--color-primary-hover),inset 0 1px 0 #ffffff1a;border:2px solid #0000}@supports (color:color-mix(in lab, red, red)){.auth-submit-btn.btn-magic-ai{box-shadow:0 4px 16px color-mix(in srgb,var(--color-primary)22%,transparent),0 0 20px color-mix(in srgb,var(--color-primary-hover)12%,transparent),inset 0 1px 0 #ffffff1a}}.auth-submit-btn:hover:not(:disabled){box-shadow:0 8px 25px var(--color-primary);transform:translateY(-2px)}@supports (color:color-mix(in lab, red, red)){.auth-submit-btn:hover:not(:disabled){box-shadow:0 8px 25px color-mix(in srgb,var(--color-primary)40%,transparent)}}.auth-submit-btn:hover:not(:disabled){filter:brightness(1.05)}.auth-submit-btn:active:not(:disabled){transform:translateY(0)}.auth-submit-btn:disabled{opacity:.6;cursor:not-allowed;filter:grayscale(.5)}.auth-google-btn{width:100%;color:var(--text-primary);cursor:pointer;background:0 0;border:none;border-radius:14px;justify-content:center;align-items:center;gap:.65rem;padding:1.15rem;font-size:1rem;font-weight:600;transition:transform .2s;display:flex}.auth-google-btn:hover:not(:disabled){transform:translateY(-2px)}.auth-google-btn:active:not(:disabled){transform:translateY(0)}.auth-google-icon{flex-shrink:0;width:18px;height:18px}.auth-error{background:var(--color-error);align-items:flex-start;gap:.75rem;padding:1rem 1.25rem;display:flex}@supports (color:color-mix(in lab, red, red)){.auth-error{background:color-mix(in srgb,var(--color-error)10%,transparent)}}.auth-error{border:1px solid var(--color-error)}@supports (color:color-mix(in lab, red, red)){.auth-error{border:1px solid color-mix(in srgb,var(--color-error)30%,transparent)}}.auth-error{color:var(--color-error);border-radius:12px;margin-bottom:1rem;font-size:1rem;line-height:1.5}.auth-error svg{flex-shrink:0;margin-top:3px}.auth-success{background:var(--color-success);padding:1rem 1.25rem}@supports (color:color-mix(in lab, red, red)){.auth-success{background:color-mix(in srgb,var(--color-success)10%,transparent)}}.auth-success{border:1px solid var(--color-success)}@supports (color:color-mix(in lab, red, red)){.auth-success{border:1px solid color-mix(in srgb,var(--color-success)30%,transparent)}}.auth-success{color:var(--color-success);border-radius:12px;margin-bottom:1rem;font-size:1rem;line-height:1.5}.auth-email-warning{color:var(--color-error);margin-top:.4rem;font-size:.85rem;line-height:1.4}.auth-spinner{animation:1s linear infinite auth-spin}@keyframes auth-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.user-menu{z-index:var(--z-dropdown);position:relative}.user-menu-trigger{cursor:pointer;background:0 0;border:none;border-radius:12px;align-items:center;gap:.75rem;padding:.5rem .75rem;transition:all .2s;display:flex}.user-menu-trigger:hover{background:0 0;transform:translateY(-1px)}.user-menu-avatar{object-fit:cover;border-radius:50%;width:36px;height:36px;box-shadow:0 2px 4px #0000001a}.user-menu-avatar-placeholder{background:var(--auth-gradient);color:#fff;text-transform:uppercase;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:1rem;font-weight:700;display:flex;box-shadow:0 2px 4px #0000001a}.user-menu-chevron{color:var(--text-tertiary);transition:transform .2s}.user-menu-chevron.open{transform:rotate(180deg)}.user-menu-dropdown{background:var(--bg-secondary);min-width:230px;position:absolute;top:calc(100% + 12px);right:0}@supports (color:color-mix(in lab, red, red)){.user-menu-dropdown{background:color-mix(in srgb,var(--bg-secondary)50%,transparent)}}.user-menu-dropdown{z-index:var(--z-dropdown);border-radius:18px;animation:.2s cubic-bezier(.16,1,.3,1) user-menu-appear;overflow:hidden;box-shadow:0 32px 80px -16px #0000008c,inset 0 0 0 1px #ffffff0d;-webkit-backdrop-filter:blur(5px)saturate(1.8)!important;backdrop-filter:blur(5px)saturate(1.8)!important}@keyframes user-menu-appear{0%{opacity:0;transform:translateY(-12px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.user-menu-header{background:0 0;border-bottom:none;padding:1.25rem}.user-menu-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:1.1rem;font-weight:700;overflow:hidden}.user-menu-email{color:var(--text-tertiary);white-space:nowrap;text-overflow:ellipsis;margin-top:.35rem;font-size:.85rem;overflow:hidden}.user-menu-divider{display:none}.user-menu-item{width:100%;color:var(--text-primary);text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:1rem;padding:.875rem 1.25rem;font-size:1rem;transition:all .15s;display:flex}.user-menu-item:hover{color:var(--text-primary);padding-left:1.5rem}.user-menu-item-danger:hover{background:var(--color-error)}@supports (color:color-mix(in lab, red, red)){.user-menu-item-danger:hover{background:color-mix(in srgb,var(--color-error)15%,transparent)}}.user-menu-item-danger:hover{color:var(--color-error)}.auth-buttons{align-items:center;gap:.75rem;display:flex}.auth-buttons-loading{justify-content:center;align-items:center;padding:.5rem;display:flex}.auth-buttons-spinner{color:var(--text-tertiary);animation:1s linear infinite auth-spin}.auth-button{cursor:pointer;white-space:nowrap;border:none;border-radius:12px;align-items:center;gap:.5rem;padding:.75rem 1rem;font-size:1rem;font-weight:600;text-decoration:none;transition:all .25s cubic-bezier(.175,.885,.32,1.275);display:flex}.auth-button-secondary{background:var(--bg-tertiary);color:var(--text-secondary);border:1.5px solid var(--border-primary)}.auth-button-secondary:hover{background:var(--auth-glass-bg);border-color:var(--border-secondary);color:var(--text-primary);transform:translateY(-2px)}.auth-button-primary{background:var(--auth-gradient);color:#fff;border:none;box-shadow:0 4px 12px #6366f133}.auth-button-primary:hover{filter:brightness(1.05);transform:translateY(-2px);box-shadow:0 6px 15px #8b5cf659}.header-auth{align-items:center;display:flex}@media (max-width:767px){.auth-page{height:auto;min-height:auto;padding:1.25rem;padding-top:env(safe-area-inset-top,2rem);padding-bottom:calc(env(safe-area-inset-bottom,0px) + 6rem);-webkit-overflow-scrolling:touch;align-items:flex-start;overflow:hidden auto}.auth-container{border-radius:20px;flex-shrink:0;max-height:none;margin-bottom:1rem;padding:2.5rem 2rem 1rem;overflow-y:visible}}@media (max-width:580px){.auth-page{padding:1rem;padding-top:env(safe-area-inset-top,1.5rem);padding-bottom:calc(env(safe-area-inset-bottom,0px) + 6rem)}.auth-container{border-radius:20px;flex-shrink:0;margin-bottom:1rem;padding:2rem 1.5rem 1.5rem}.auth-title{font-size:2.5rem}.auth-subtitle{font-size:1rem}.auth-input{font-size:16px;padding:.875rem .875rem .875rem 2.75rem!important}.auth-submit-btn{padding:.75rem 1.25rem;font-size:1rem}}.ev-page{background:var(--bg-primary);justify-content:center;align-items:center;width:100%;min-height:100dvh;padding:2rem;display:flex;position:relative;overflow:hidden}.ev-bg-glow{pointer-events:none;filter:blur(100px);opacity:.5;border-radius:50%;position:absolute}.ev-bg-glow--1{background:radial-gradient(circle,#6366f126 0%,#0000 70%);width:500px;height:500px;top:-10%;left:-5%}.ev-bg-glow--2{background:radial-gradient(circle,#a855f71f 0%,#0000 70%);width:400px;height:400px;bottom:-10%;right:-5%}.ev-content{z-index:1;text-align:center;flex-direction:column;align-items:center;width:100%;max-width:480px;display:flex;position:relative}.ev-icon-wrapper{background:linear-gradient(135deg,var(--color-primary),var(--color-primary));border-radius:50%;width:80px;height:80px;position:relative}@supports (color:color-mix(in lab, red, red)){.ev-icon-wrapper{background:linear-gradient(135deg,color-mix(in srgb,var(--color-primary)20%,transparent),color-mix(in srgb,var(--color-primary)8%,transparent))}}.ev-icon-wrapper{color:var(--color-primary);justify-content:center;align-items:center;margin-bottom:2rem;display:flex}.ev-icon-pulse{border:2px solid var(--color-primary);border-radius:50%;position:absolute;inset:-6px}@supports (color:color-mix(in lab, red, red)){.ev-icon-pulse{border:2px solid color-mix(in srgb,var(--color-primary)30%,transparent)}}.ev-icon-pulse{animation:2.5s ease-in-out infinite ev-pulse}@keyframes ev-pulse{0%,to{opacity:.6;transform:scale(1)}50%{opacity:0;transform:scale(1.12)}}.ev-title{color:var(--text-primary);letter-spacing:-.02em;margin:0 0 1rem;font-size:2rem;font-weight:700}.ev-description{color:var(--text-secondary);margin:0;font-size:1rem;line-height:1.6}.ev-email{color:var(--color-primary);word-break:break-all;margin:.5rem 0;font-size:1.1rem;font-weight:600}.ev-steps{background:0 0;border:none;align-items:center;gap:.75rem;margin:2rem 0 1.5rem;padding:0;display:flex}.ev-step{color:var(--text-secondary);white-space:nowrap;align-items:center;gap:.5rem;font-size:.875rem;display:flex}.ev-step-num{background:var(--color-primary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:.75rem;font-weight:700;display:flex}.ev-step-arrow{color:var(--text-tertiary);opacity:.5;flex-shrink:0}.ev-hint{color:var(--text-tertiary);margin:0 0 1.5rem;font-size:.85rem;line-height:1.6}.ev-message{border-radius:12px;justify-content:center;align-items:center;gap:.5rem;width:100%;margin-bottom:1rem;padding:.75rem 1.25rem;font-size:.9rem;display:flex}.ev-message--error{background:var(--color-error)}@supports (color:color-mix(in lab, red, red)){.ev-message--error{background:color-mix(in srgb,var(--color-error)10%,transparent)}}.ev-message--error{border:1px solid var(--color-error)}@supports (color:color-mix(in lab, red, red)){.ev-message--error{border:1px solid color-mix(in srgb,var(--color-error)25%,transparent)}}.ev-message--error{color:var(--color-error)}.ev-message--success{background:var(--color-success,#22c55e)}@supports (color:color-mix(in lab, red, red)){.ev-message--success{background:color-mix(in srgb,var(--color-success,#22c55e)10%,transparent)}}.ev-message--success{border:1px solid var(--color-success,#22c55e)}@supports (color:color-mix(in lab, red, red)){.ev-message--success{border:1px solid color-mix(in srgb,var(--color-success,#22c55e)25%,transparent)}}.ev-message--success{color:var(--color-success,#22c55e)}.ev-actions{flex-direction:column;gap:.75rem;width:100%;display:flex}.ev-btn{cursor:pointer;border:none;border-radius:14px;justify-content:center;align-items:center;gap:.5rem;width:100%;padding:.875rem 1.25rem;font-size:1rem;font-weight:600;transition:all .2s;display:flex}.ev-btn:disabled{opacity:.5;cursor:not-allowed}.ev-btn--primary{background:linear-gradient(135deg,var(--color-primary),var(--color-primary-hover,var(--color-primary)));color:#fff;box-shadow:0 4px 16px var(--color-primary)}@supports (color:color-mix(in lab, red, red)){.ev-btn--primary{box-shadow:0 4px 16px color-mix(in srgb,var(--color-primary)25%,transparent)}}.ev-btn--primary:hover:not(:disabled){box-shadow:0 6px 24px var(--color-primary);transform:translateY(-1px)}@supports (color:color-mix(in lab, red, red)){.ev-btn--primary:hover:not(:disabled){box-shadow:0 6px 24px color-mix(in srgb,var(--color-primary)35%,transparent)}}.ev-btn--secondary{color:var(--text-secondary);background:0 0;border:none}.ev-btn--secondary:hover:not(:disabled){color:var(--text-primary)}.ev-btn--ghost{color:var(--text-tertiary);background:0 0;padding:.5rem;font-size:.85rem;font-weight:500}.ev-btn--ghost:hover:not(:disabled){color:var(--text-secondary)}.ev-spinner{animation:1s linear infinite auth-spin}@media (max-width:580px){.ev-page{align-items:flex-start;padding:15vh 1rem 1.5rem}.ev-title{font-size:1.5rem}.ev-steps{flex-direction:column;gap:.5rem;padding:1rem}.ev-step-arrow{transform:rotate(90deg)}.ev-icon-wrapper{width:64px;height:64px;margin-bottom:1.5rem}.ev-icon-wrapper svg{width:28px;height:28px}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}@font-face{font-family:Cinzel RUS;src:url(/fonts/cinzel-lyajka/cinzel-regular.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Cinzel RUS;src:url(/fonts/cinzel-lyajka/cinzel-bold.ttf)format("truetype");font-weight:700;font-style:normal;font-display:swap}[data-main-font=Cinzel] body{font-feature-settings:"smcp" 1,"c2sc" 1;letter-spacing:.02em;font-variant-caps:small-caps}[data-main-font=Cinzel] .notes-container,[data-main-font=Cinzel] .notes-container *,[data-main-font=Cinzel] .cards-container,[data-main-font=Cinzel] .cards-container *,[data-main-font=Cinzel] .editor-content,[data-main-font=Cinzel] .cards-content{font-feature-settings:normal;letter-spacing:normal;font-variant-caps:normal}[data-main-font=Cinzel] button,[data-main-font=Cinzel] .btn,[data-main-font=Cinzel] .magic-btn,[data-main-font=Cinzel] .inline-command-form button{line-height:1.5}[data-main-font=Cinzel] button svg,[data-main-font=Cinzel] .btn svg,[data-main-font=Cinzel] .magic-btn svg,[data-main-font=Cinzel] .inline-command-form button svg{position:relative;top:.04em}@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-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-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-ease{syntax:"*";inherits:false}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0));filter:blur(var(--tw-enter-blur,0))}}
