*,*:before,*:after{box-sizing:border-box}*{margin:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{line-height:1.5;min-height:100vh}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}button{cursor:pointer;background:none;border:none;padding:0}a{color:inherit;text-decoration:none}ul,ol{list-style:none;padding:0}:root{--primary-hue: 163;--primary-lightness: 72%;--primary-chroma: .15;--neutral-chroma: .005;--color-primary: oklch(var(--primary-lightness) var(--primary-chroma) var(--primary-hue));--color-primary-light: oklch(82% .12 var(--primary-hue));--color-primary-dark: oklch(55% .15 var(--primary-hue));--color-on-primary: oklch(100% 0 0);--color-primary-surface: oklch(96% .03 var(--primary-hue));--color-background: oklch(99% var(--neutral-chroma) 0);--color-surface: oklch(100% 0 0);--color-surface-variant: oklch(97% var(--neutral-chroma) 0);--color-text: oklch(10% var(--neutral-chroma) 0);--color-text-muted: oklch(45% var(--neutral-chroma) 0);--color-text-secondary: oklch(55% var(--neutral-chroma) 0);--color-border: oklch(88% var(--neutral-chroma) 0);--color-border-focus: var(--color-primary);--color-warning: oklch(75% .15 85);--color-success: oklch(72% .15 145);--color-info: oklch(65% .12 250);--color-error: oklch(55% .2 25)}:root[data-theme=dark]{--primary-lightness: 75%;--color-primary-surface: oklch(20% .03 var(--primary-hue));--color-background: oklch(8% var(--neutral-chroma) 0);--color-surface: oklch(12% var(--neutral-chroma) 0);--color-surface-variant: oklch(16% var(--neutral-chroma) 0);--color-text: oklch(95% var(--neutral-chroma) 0);--color-text-muted: oklch(60% var(--neutral-chroma) 0);--color-text-secondary: oklch(50% var(--neutral-chroma) 0);--color-border: oklch(25% var(--neutral-chroma) 0);--color-warning: oklch(80% .15 85);--color-success: oklch(78% .15 145);--color-info: oklch(72% .12 250);--color-error: oklch(65% .18 25)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--primary-lightness: 75%;--color-primary-surface: oklch(20% .03 var(--primary-hue));--color-background: oklch(8% var(--neutral-chroma) 0);--color-surface: oklch(12% var(--neutral-chroma) 0);--color-surface-variant: oklch(16% var(--neutral-chroma) 0);--color-text: oklch(95% var(--neutral-chroma) 0);--color-text-muted: oklch(60% var(--neutral-chroma) 0);--color-text-secondary: oklch(50% var(--neutral-chroma) 0);--color-border: oklch(25% var(--neutral-chroma) 0);--color-warning: oklch(80% .15 85);--color-success: oklch(78% .15 145);--color-info: oklch(72% .12 250);--color-error: oklch(65% .18 25)}}:root[data-accent=blue]{--primary-hue: 235;--primary-chroma: .14}:root[data-accent=violet]{--primary-hue: 290;--primary-chroma: .13}:root[data-accent=rose]{--primary-hue: 350;--primary-chroma: .14}:root[data-accent=orange]{--primary-hue: 55;--primary-chroma: .14}:root[data-accent=teal]{--primary-hue: 195;--primary-chroma: .13}:root{--font-sans: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: ui-monospace, "Cascadia Code", "Source Code Pro", Menlo, Consolas, monospace;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-xxl: 1.5rem;--font-size-3xl: 2rem;--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--touch-target-min: 44px;--radius-sm: .375rem;--radius-md: .625rem;--radius-lg: 1rem;--radius-xl: 1.5rem;--radius-full: 9999px;--content-width: min(80ch, 100% - 1rem);--shadow-sm: 0 1px 2px oklch(0% 0 0 / .05);--shadow-md: 0 4px 6px oklch(0% 0 0 / .07), 0 2px 4px oklch(0% 0 0 / .05);--shadow-lg: 0 10px 15px oklch(0% 0 0 / .1), 0 4px 6px oklch(0% 0 0 / .05)}:root[data-theme=dark]{--shadow-sm: 0 1px 2px oklch(0% 0 0 / .2);--shadow-md: 0 4px 6px oklch(0% 0 0 / .3), 0 2px 4px oklch(0% 0 0 / .2);--shadow-lg: 0 10px 15px oklch(0% 0 0 / .4), 0 4px 6px oklch(0% 0 0 / .25)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--shadow-sm: 0 1px 2px oklch(0% 0 0 / .2);--shadow-md: 0 4px 6px oklch(0% 0 0 / .3), 0 2px 4px oklch(0% 0 0 / .2);--shadow-lg: 0 10px 15px oklch(0% 0 0 / .4), 0 4px 6px oklch(0% 0 0 / .25)}}body{font-family:var(--font-sans);background-color:var(--color-background);color:var(--color-text)}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.2}h1{font-size:clamp(2rem,5vw,3rem)}h2{font-size:clamp(1.5rem,4vw,2.25rem)}h3{font-size:clamp(1.25rem,3vw,1.75rem)}code,pre{font-family:var(--font-mono)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.container{max-width:var(--content-width);margin-inline:auto;padding-inline:var(--space-xs)}@media(min-width:768px){.container{padding-inline:var(--space-md)}}.page-container{max-width:var(--content-width);margin-inline:auto;padding:var(--space-md) var(--space-xs)}@media(min-width:768px){.page-container{padding:var(--space-xl) var(--space-md)}}.button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);min-height:var(--touch-target-min);padding:var(--space-sm) var(--space-lg);border:none;border-radius:var(--radius-md);font-weight:600;font-size:var(--font-size-base);text-decoration:none;cursor:pointer;transition:background-color .15s ease,box-shadow .15s ease,transform .15s ease,border-color .15s ease,color .15s ease;box-shadow:var(--shadow-sm)}.button:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.button-primary{background:var(--color-primary);color:var(--color-on-primary)}.button-primary:hover:not(:disabled){background:var(--color-primary-dark);box-shadow:var(--shadow-md)}.button-secondary{background:var(--color-surface);color:var(--color-text);border:2px solid var(--color-border)}.button-secondary:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.button-small{min-height:36px;padding:var(--space-xs) var(--space-md);font-size:var(--font-size-sm)}.button-large{min-height:52px;padding:var(--space-md) var(--space-xl);font-size:var(--font-size-lg)}.button-danger{background:var(--color-error);color:var(--color-surface)}.button-danger:hover:not(:disabled){background:color-mix(in oklch,var(--color-error) 85%,oklch(0% 0 0));box-shadow:var(--shadow-md)}.button-spinner{width:1em;height:1em;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:button-spin .8s linear infinite}@keyframes button-spin{to{transform:rotate(360deg)}}.app-header{position:sticky;top:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:var(--space-sm) var(--space-lg);background:var(--color-surface);border-bottom:1px solid var(--color-border)}.app-header__logo{display:flex;align-items:center;gap:var(--space-sm);text-decoration:none;color:var(--color-text);font-weight:700;font-size:var(--font-size-lg)}.app-header__logo:hover{color:var(--color-primary)}.app-header__logo-icon{width:28px;height:28px}.app-header__actions{display:flex;align-items:center;gap:var(--space-md)}.app-header__nav-link{font-size:var(--font-size-sm);color:var(--color-text-muted);text-decoration:none;transition:color .15s ease}.app-header__nav-link:hover{color:var(--color-text)}.app-header__user-link{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-xs) var(--space-md);text-decoration:none;color:var(--color-text);border-radius:var(--radius-md);transition:background-color .15s ease}.app-header__user-link:hover{background:var(--color-surface-variant)}.app-header__user-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:var(--color-primary);color:var(--color-on-primary);font-weight:600;font-size:var(--font-size-sm)}.landing-hero{min-height:calc(100vh - 60px);display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:var(--space-2xl);padding:var(--space-2xl) var(--space-2xl);max-width:1200px;margin:0 auto;position:relative;overflow:hidden}.landing-hero:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle,oklch(from var(--color-primary) l c h / .15) 1.5px,transparent 1.5px);background-size:32px 32px;mask-image:radial-gradient(ellipse 80% 70% at 70% 40%,black 10%,transparent 50%);-webkit-mask-image:radial-gradient(ellipse 80% 70% at 70% 40%,black 10%,transparent 50%);pointer-events:none;z-index:0}:root[data-theme=dark] .landing-hero:before{background-image:radial-gradient(circle,oklch(from var(--color-primary) l c h / .25) 1.5px,transparent 1.5px)}@media(max-width:900px){.landing-hero{grid-template-columns:1fr;text-align:center;padding:var(--space-xl) var(--space-md);min-height:auto;padding-top:var(--space-xl);padding-bottom:var(--space-xl)}}.landing-hero__content{position:relative;z-index:1}.landing-hero__title{font-size:clamp(2.25rem,5vw,3.5rem);font-weight:700;line-height:1.15;letter-spacing:-.03em;margin-bottom:var(--space-lg);color:var(--color-text)}.landing-hero__gradient{background:linear-gradient(to bottom right,var(--color-primary) 0%,oklch(from var(--color-primary) 65% .2 calc(h + 80)) 100%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}:root[data-theme=dark] .landing-hero__gradient{background:linear-gradient(to bottom right,var(--color-primary) 0%,oklch(from var(--color-primary) 75% .2 calc(h + 80)) 100%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.landing-hero__subtitle{font-size:var(--font-size-lg);color:var(--color-text-muted);max-width:480px;margin-bottom:var(--space-xl);line-height:1.6}@media(max-width:900px){.landing-hero__subtitle{margin-left:auto;margin-right:auto}}.landing-hero__actions{display:flex;align-items:center;gap:var(--space-lg);flex-wrap:wrap}@media(max-width:900px){.landing-hero__actions{justify-content:center}}.landing-hero__link{display:inline-flex;align-items:center;gap:var(--space-xs);color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:500;background:none;border:none;cursor:pointer;padding:0;transition:color .2s ease}.landing-hero__link:hover{color:var(--color-primary)}.landing-hero__link svg{transition:transform .2s ease}.landing-hero__link:hover svg{transform:translateY(2px)}.landing-hero__visual{display:flex;justify-content:center;align-items:center;position:relative;z-index:1;perspective:1000px}@media(max-width:900px){.landing-hero__visual{margin-top:var(--space-lg)}}.demo-stack{position:relative;width:340px;height:240px;cursor:pointer}@media(max-width:400px){.demo-stack{width:300px;height:220px}}.demo-card{position:absolute;inset:0;background:var(--color-surface);border:2px solid oklch(from var(--color-primary) l c h / .7);border-radius:var(--radius-md);padding:var(--space-lg);display:flex;flex-direction:column;justify-content:space-between;transition:transform .5s cubic-bezier(.4,0,.2,1),opacity .5s ease,box-shadow .3s ease}:root[data-theme=dark] .demo-card{border-color:oklch(from var(--color-primary) l c h / .8)}.demo-card--active{z-index:3;transform:rotate(-2deg) translateY(0);box-shadow:0 8px 30px oklch(from var(--color-primary) l c h / .15),0 16px 50px oklch(from var(--color-primary) 65% .2 calc(h + 80) / .1)}:root[data-theme=dark] .demo-card--active{box-shadow:0 8px 30px oklch(from var(--color-primary) l c h / .25),0 16px 50px oklch(from var(--color-primary) 75% .2 calc(h + 80) / .15)}.demo-stack:hover .demo-card--active{box-shadow:0 12px 40px oklch(from var(--color-primary) l c h / .2),0 24px 60px oklch(from var(--color-primary) 65% .2 calc(h + 80) / .15)}:root[data-theme=dark] .demo-stack:hover .demo-card--active{box-shadow:0 12px 40px oklch(from var(--color-primary) l c h / .35),0 24px 60px oklch(from var(--color-primary) 75% .2 calc(h + 80) / .25)}.demo-card--next{z-index:2;transform:rotate(2deg) translateY(12px) translate(8px) scale(.96);opacity:.7}.demo-card--third{z-index:1;transform:rotate(4deg) translateY(24px) translate(16px) scale(.92);opacity:.4}.demo-card--hidden{z-index:0;transform:rotate(6deg) translateY(36px) translate(24px) scale(.88);opacity:0;pointer-events:none}.demo-card__category{position:absolute;top:var(--space-sm);right:var(--space-sm);font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-primary);background:oklch(from var(--color-primary) l c h / .1);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm)}:root[data-theme=dark] .demo-card__category{background:oklch(from var(--color-primary) l c h / .2)}.demo-card__content{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-xs);margin-top:var(--space-md)}.demo-card__text{font-size:var(--font-size-xl);font-weight:500;color:var(--color-text)}.demo-card__notes{font-size:var(--font-size-sm);color:var(--color-text-muted);font-style:italic}.demo-card__answer{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-xs);padding-top:var(--space-md);border-top:1px dashed var(--color-border)}.demo-card__answer .demo-card__text{font-size:var(--font-size-lg)}.demo-card__subtext{font-size:var(--font-size-sm);color:var(--color-text-muted)}.landing-how-it-works{padding:var(--space-2xl) var(--space-md);max-width:900px;margin:0 auto;scroll-margin-top:var(--space-xl)}.landing-how-it-works__title{text-align:center;font-size:var(--font-size-xl);font-weight:600;margin-bottom:var(--space-xl);color:var(--color-text)}.landing-how-it-works__steps{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-lg)}@media(max-width:768px){.landing-how-it-works__steps{grid-template-columns:1fr;gap:var(--space-md)}}.how-it-works-step{text-align:center;padding:var(--space-lg)}.how-it-works-step__number{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background:oklch(from var(--color-primary) l c h / .1);color:var(--color-primary);font-size:var(--font-size-xl);font-weight:700;margin-bottom:var(--space-md)}:root[data-theme=dark] .how-it-works-step__number{background:oklch(from var(--color-primary) l c h / .2)}.how-it-works-step__title{font-size:var(--font-size-base);font-weight:600;color:var(--color-text);margin-bottom:var(--space-xs)}.how-it-works-step__description{font-size:var(--font-size-sm);color:var(--color-text-muted);line-height:1.5}.landing-features{padding:var(--space-2xl) var(--space-md);padding-top:calc(var(--space-2xl) * 2);padding-bottom:calc(var(--space-2xl) * 2);max-width:900px;margin:0 auto;scroll-margin-top:var(--space-lg);position:relative}.landing-features__title{text-align:center;font-size:var(--font-size-xl);font-weight:600;margin-bottom:var(--space-2xl);color:var(--color-text)}.landing-features__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-lg)}@media(max-width:640px){.landing-features__grid{grid-template-columns:1fr}}.feature-card{padding:var(--space-lg);background:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border);transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease}.feature-card:hover{border-color:oklch(from var(--color-primary) l c h / .5);transform:translateY(-2px);box-shadow:0 4px 20px oklch(from var(--color-primary) l c h / .15),0 8px 40px oklch(from var(--color-primary) l c h / .1)}:root[data-theme=dark] .feature-card:hover{box-shadow:0 4px 20px oklch(from var(--color-primary) l c h / .25),0 8px 40px oklch(from var(--color-primary) l c h / .15)}.feature-card__icon{width:40px;height:40px;color:var(--color-primary);margin-bottom:var(--space-md)}.feature-card__title{font-size:var(--font-size-base);font-weight:600;color:var(--color-text);margin-bottom:var(--space-xs)}.feature-card__description{font-size:var(--font-size-sm);color:var(--color-text-muted);line-height:1.5}.page-header{display:flex;flex-direction:column;gap:var(--space-md);margin-bottom:var(--space-xl)}.page-header h1{margin:0}.header-actions{display:flex;flex-wrap:wrap;gap:var(--space-sm)}.header-actions .button{flex:1 1 auto}@media(min-width:768px){.page-header{flex-direction:row;justify-content:space-between;align-items:center}.header-actions .button{flex:0 0 auto}}.empty-state{text-align:center;padding:var(--space-xl) var(--space-md);color:var(--color-text-muted)}@media(min-width:768px){.empty-state{padding:var(--space-2xl)}}.empty-state p{margin:var(--space-sm) 0;font-size:1.1rem}.empty-state-actions{display:flex;flex-direction:column;gap:var(--space-sm);margin-top:var(--space-lg)}@media(min-width:768px){.empty-state-actions{flex-direction:row;justify-content:center;gap:var(--space-md)}}.empty-state .button-primary{margin-top:var(--space-lg)}.deck-list{display:grid;gap:var(--space-md)}.deck-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:all .2s;display:flex;flex-direction:column;box-shadow:var(--shadow-sm);overflow:hidden}.deck-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md)}.deck-main{padding:var(--space-lg);display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-md);flex-grow:1}.deck-link{text-decoration:none;color:inherit;flex-grow:1;min-width:0}.decks-page .deck-actions{flex-shrink:0}.decks-page .deck-actions .button{width:70px}.deck-header-row{display:flex;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-sm)}.deck-card h2{margin:0;font-size:1.25rem;color:var(--color-text)}.indicator-dot{width:10px;height:10px;background-color:var(--color-warning);border-radius:50%;flex-shrink:0}.deck-description{margin:0;color:var(--color-text-muted)}.deck-stats{padding:var(--space-sm) var(--space-lg);background:var(--color-surface-variant);border-top:1px solid var(--color-border);display:flex;flex-wrap:wrap;gap:var(--space-md);font-size:.875rem;color:var(--color-text-muted)}.stat{display:flex;gap:.25em;align-items:center}.stat.due{color:var(--color-warning)}.stat.new{color:var(--color-primary)}.breadcrumb{display:flex;gap:var(--space-sm);margin-bottom:var(--space-lg);font-size:var(--font-size-sm);color:var(--color-text-muted)}.breadcrumb a{color:var(--color-primary);text-decoration:none}.breadcrumb a:hover{text-decoration:underline}.deck-header{display:flex;flex-direction:column;gap:var(--space-lg);margin-bottom:var(--space-2xl);padding-bottom:var(--space-xl);border-bottom:1px solid var(--color-border)}.deck-info h1{margin:0 0 var(--space-sm) 0}.deck-info .deck-description{margin:0 0 var(--space-md) 0;color:var(--color-text-muted);max-width:65ch}.deck-info .deck-meta{display:flex;flex-wrap:wrap;gap:var(--space-md) var(--space-lg);font-size:.875rem;color:var(--color-text-muted)}.study-stats{margin-top:var(--space-lg);background:var(--color-surface-variant);padding:var(--space-md) var(--space-lg);border-radius:var(--radius-md)}.study-stats h3{margin:0 0 var(--space-sm) 0;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted)}.study-stats ul{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:var(--space-lg)}.study-stats li{display:flex;align-items:center;gap:var(--space-xs);font-size:.875rem}.study-stats .count{font-weight:700;font-size:1.125rem}.study-stats .count.new{color:var(--color-primary)}.study-stats .count.due{color:var(--color-warning)}.study-stats .count.learning{color:var(--color-info)}.study-stats .count.learned{color:var(--color-success)}.next-review{margin:var(--space-md) 0 0 0;font-size:.875rem;color:var(--color-text-muted)}.deck-detail-page .deck-actions{display:flex;flex-wrap:wrap;gap:var(--space-sm)}.deck-detail-page .deck-actions .button{flex:1 1 calc(50% - var(--space-sm))}@media(min-width:768px){.deck-detail-page .deck-actions{gap:var(--space-md)}.deck-detail-page .deck-actions .button{flex:0 0 auto}}.cards-section{margin-top:var(--space-2xl)}.section-header{display:flex;flex-direction:column;gap:var(--space-md);margin-bottom:var(--space-lg)}.section-header h2{margin:0}.section-actions{display:flex;flex-wrap:wrap;gap:var(--space-sm)}.section-actions .button{flex:1 1 auto}@media(min-width:768px){.section-header{flex-direction:row;justify-content:space-between;align-items:center}.section-actions .button{flex:0 0 auto}}.modal-overlay{position:fixed;inset:0;background:color-mix(in oklch,var(--color-text) 50%,transparent);display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-xl);max-width:500px;width:90%}.modal h2{margin:0 0 var(--space-md) 0}.modal p{margin:0 0 var(--space-xl) 0;color:var(--color-text-muted)}.modal-actions{display:flex;gap:var(--space-sm);justify-content:flex-end}.modal-actions form{display:inline}.cards-list{display:flex;flex-direction:column;gap:var(--space-md)}.card-item{position:relative;display:flex;gap:var(--space-md);padding:var(--space-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:border-color .2s}.card-item:hover{border-color:var(--color-primary)}.card-due-indicator{position:absolute;top:var(--space-sm);right:var(--space-sm);font-size:.75rem;padding:2px var(--space-xs);border-radius:var(--radius-sm);background:var(--color-surface-variant)}.card-due-indicator.new{color:var(--color-primary)}.card-due-indicator.due{color:var(--color-warning)}.card-due-indicator.upcoming{color:var(--color-text-muted)}.card-number{flex-shrink:0;color:var(--color-text-muted);font-weight:500}.card-content{flex:1;display:flex;flex-direction:column;gap:var(--space-sm)}.card-front{font-weight:500}.card-back{color:var(--color-text-muted);font-size:.875rem;white-space:pre-wrap}.card-actions{flex-shrink:0;display:flex;align-items:flex-start;padding-top:calc(var(--space-md) + 4px)}.button-small{padding:var(--space-xs) var(--space-sm);font-size:.875rem}.generate-more-modal{max-width:600px;max-height:90vh;overflow-y:auto}.generate-more-form{display:flex;flex-direction:column;gap:var(--space-lg)}.generate-more-form .form-field{display:flex;flex-direction:column;gap:var(--space-xs)}.generate-more-form label{font-weight:500}.generate-more-form .required{color:var(--color-error)}.generate-more-form input,.generate-more-form textarea{padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-background);color:var(--color-text);font-size:1rem}.generate-more-form textarea{resize:vertical;min-height:80px}.generate-more-form .field-hint{font-size:.875rem;color:var(--color-text-muted);margin:0}.context-info{font-size:.875rem;color:var(--color-text-muted);background:var(--color-surface-variant);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);margin:0}.loading-state{padding:var(--space-xl);text-align:center}.spinner{width:40px;height:40px;margin:0 auto var(--space-md);border:4px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-hint{font-size:.875rem;color:var(--color-text-muted);margin-top:var(--space-sm)}.preview-description{color:var(--color-text-muted);margin-bottom:var(--space-lg)}.generated-cards{margin-bottom:var(--space-lg);padding:var(--space-md);background:var(--color-surface-variant);border:1px solid var(--color-border);border-radius:var(--radius-md)}.generated-cards h3{margin:0 0 var(--space-md) 0;font-size:1rem}.card-list{display:flex;flex-direction:column;gap:var(--space-sm);max-height:300px;overflow-y:auto;padding-right:var(--space-sm)}.card-preview{display:flex;gap:var(--space-md);padding:var(--space-sm) var(--space-md);background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-sm)}.card-number-badge{flex-shrink:0;width:1.75rem;height:1.75rem;display:flex;align-items:center;justify-content:center;background:var(--color-primary);color:var(--color-on-primary);border-radius:50%;font-weight:600;font-size:.75rem}.card-preview-content{flex:1;display:flex;flex-direction:column;gap:var(--space-xs)}.card-side{font-size:.875rem}.front-notes{color:var(--color-text-muted);font-style:italic;margin-left:var(--space-xs)}.notes{display:block;margin-top:var(--space-xs);font-size:.8125rem;color:var(--color-text-muted)}.error-message{padding:var(--space-md);margin-bottom:var(--space-lg);background:color-mix(in oklch,var(--color-error) 15%,var(--color-surface));border:1px solid var(--color-error);border-radius:var(--radius-sm);color:var(--color-error)}.form-header{display:flex;flex-direction:column;gap:var(--space-sm);margin-bottom:var(--space-md)}.form-header h1{margin:0}@media(min-width:768px){.form-header{flex-direction:row;justify-content:space-between;align-items:center;gap:var(--space-md);margin-bottom:var(--space-xl)}}.deck-form{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-md)}@media(min-width:768px){.deck-form{padding:var(--space-xl)}}.form-field{margin-bottom:var(--space-md)}.form-field:last-of-type{margin-bottom:var(--space-md)}@media(min-width:768px){.form-field{margin-bottom:var(--space-lg)}.form-field:last-of-type{margin-bottom:var(--space-xl)}}.form-field label{display:block;margin-bottom:var(--space-sm);font-weight:500;color:var(--color-text)}.required{color:var(--color-primary)}.form-field input[type=text],.form-field input[type=number],.form-field textarea{width:100%;padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-family:var(--font-sans);font-size:1rem;background:var(--color-surface);color:var(--color-text);transition:border-color .2s}.form-field input[type=text]:focus,.form-field input[type=number]:focus,.form-field textarea:focus{outline:none;border-color:var(--color-border-focus)}.form-field textarea{resize:vertical;min-height:100px}.form-actions{display:flex;flex-wrap:wrap;gap:var(--space-sm);justify-content:stretch}.form-actions .button{flex:1 1 auto}@media(min-width:768px){.form-actions{gap:var(--space-md);justify-content:flex-end}.form-actions .button{flex:0 0 auto}}.error-message{padding:var(--space-sm);background:color-mix(in oklch,var(--color-error) 15%,var(--color-surface));border:1px solid var(--color-error);border-radius:var(--radius-sm);color:var(--color-error);margin-bottom:var(--space-md)}@media(min-width:768px){.error-message{padding:var(--space-md);margin-bottom:var(--space-lg)}}.success-message{padding:var(--space-sm);background:color-mix(in oklch,var(--color-success) 15%,var(--color-surface));border:1px solid var(--color-success);border-radius:var(--radius-sm);color:var(--color-success);margin-top:var(--space-md)}@media(min-width:768px){.success-message{padding:var(--space-md);margin-top:var(--space-lg)}}.form-field-checkbox label{display:flex;align-items:center;gap:var(--space-sm);cursor:pointer}.form-field-checkbox input[type=checkbox]{width:1.125rem;height:1.125rem;accent-color:var(--color-primary);cursor:pointer}.field-help{margin-top:var(--space-xs);font-size:.875rem;color:var(--color-text-muted)}.auth-page{max-width:400px;margin:var(--space-xl) auto;padding:var(--space-md)}.auth-page h1{margin-bottom:var(--space-lg);text-align:center}.auth-page h2{margin-bottom:var(--space-sm)}.auth-description{color:var(--color-text-muted);margin-bottom:var(--space-lg);text-align:center}.auth-form{display:flex;flex-direction:column;gap:var(--space-md)}.auth-form .form-field{margin-bottom:0}.auth-form .form-field input[type=email],.auth-form .form-field input[type=password],.auth-form .form-field input[type=text]{width:100%;padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-family:var(--font-sans);font-size:var(--font-size-base);background:var(--color-surface);color:var(--color-text);transition:border-color .2s}.auth-form .form-field input:focus{outline:none;border-color:var(--color-border-focus)}.auth-form .button{width:100%;margin-top:var(--space-sm)}.success-message{color:var(--color-success);background:color-mix(in oklch,var(--color-success) 15%,var(--color-surface));border:1px solid var(--color-success);padding:var(--space-lg);border-radius:var(--radius-md);text-align:center;margin-bottom:var(--space-lg)}.success-message h2{color:inherit}.success-message p{margin-top:var(--space-sm)}.auth-divider{display:flex;align-items:center;margin:var(--space-lg) 0}.auth-divider:before,.auth-divider:after{content:"";flex:1;border-bottom:1px solid var(--color-border)}.auth-divider span{padding:0 var(--space-md);color:var(--color-text-muted);font-size:var(--font-size-sm)}.auth-switch{text-align:center;margin-top:var(--space-lg);font-size:var(--font-size-sm);color:var(--color-text-muted)}.auth-switch a{color:var(--color-primary);text-decoration:none;font-weight:500}.auth-switch a:hover{text-decoration:underline}.link-button{display:inline-block;background:none;border:none;color:var(--color-primary);cursor:pointer;text-decoration:underline;font-size:var(--font-size-sm);padding:0;text-align:center;width:100%}.link-button:hover{color:var(--color-primary-dark)}.button-google{width:100%}.button-google svg{flex-shrink:0}.language-dropdown.svelte-1v2j48r{position:relative}.language-dropdown__trigger.svelte-1v2j48r{display:flex;align-items:center;gap:.375rem;padding:.375rem .625rem;font-size:var(--font-size-sm);color:var(--color-text-muted);background:transparent;border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;transition:all .15s}.language-dropdown__trigger.svelte-1v2j48r:hover{color:var(--color-text);background:var(--color-surface-variant);border-color:var(--color-border)}.language-dropdown__icon.svelte-1v2j48r{width:1rem;height:1rem}.language-dropdown__current.svelte-1v2j48r{font-weight:500}.language-dropdown__chevron.svelte-1v2j48r{width:.875rem;height:.875rem;transition:transform .15s}.language-dropdown__chevron.open.svelte-1v2j48r{transform:rotate(180deg)}.language-dropdown__menu.svelte-1v2j48r{position:absolute;top:100%;right:0;z-index:100;min-width:140px;margin-top:.25rem;padding:.25rem;list-style:none;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 4px 12px #00000026}.language-dropdown__option.svelte-1v2j48r{display:flex;align-items:center;gap:.5rem;width:100%;padding:.5rem .625rem;font-size:var(--font-size-sm);color:var(--color-text);text-align:left;background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:background .1s}.language-dropdown__option.svelte-1v2j48r:hover{background:var(--color-surface-variant)}.language-dropdown__option.active.svelte-1v2j48r{color:var(--color-primary)}.language-dropdown__option-code.svelte-1v2j48r{font-weight:600;min-width:1.5rem}.language-dropdown__option-name.svelte-1v2j48r{flex:1}.language-dropdown__check.svelte-1v2j48r{width:1rem;height:1rem;color:var(--color-primary)}.site-footer.svelte-jz8lnl{margin-top:auto;padding:1.5rem 1rem;border-top:1px solid var(--color-border);background:var(--color-surface)}.footer-content.svelte-jz8lnl{max-width:1200px;margin:0 auto;text-align:center}.footer-links.svelte-jz8lnl{margin-bottom:.75rem}.footer-links.svelte-jz8lnl a:where(.svelte-jz8lnl){color:var(--color-text-muted);text-decoration:none;font-size:.9rem}.footer-links.svelte-jz8lnl a:where(.svelte-jz8lnl):hover{color:var(--color-primary);text-decoration:underline}.divider.svelte-jz8lnl{margin:0 .75rem;color:var(--color-text-secondary)}.copyright.svelte-jz8lnl{color:var(--color-text-secondary);font-size:.85rem;margin:0}.app-container.svelte-12qhfyh{display:flex;flex-direction:column;min-height:100vh}.main-content.svelte-12qhfyh{flex:1}
