:root[data-theme=light]{--theme-bg: #f5f8fc;--theme-app-background: linear-gradient(125deg, #f4f8ff 0%, #eaf1ff 36%, #f9f4ff 68%, #eaf8f7 100%);--theme-surface: #ffffff;--theme-surface-muted: #eaf0f7;--theme-text: #15243b;--theme-text-soft: #4c5f75;--theme-border: #d3ddeb;--theme-primary: #2563eb;--theme-primary-hover: #1d4ed8;--theme-primary-soft: #e5efff;--gradient-primary: linear-gradient(135deg, #2563eb, #0891b2, #0f766e)}:root[data-theme=dark]{color-scheme:dark;--theme-bg: #0f172a;--theme-app-background: linear-gradient(135deg, #111827, #0f172a 60%, #172554);--theme-surface: #1e293b;--theme-surface-muted: #273449;--theme-text: #f1f5f9;--theme-text-soft: #cbd5e1;--theme-border: #334155;--theme-primary: #94a3b8;--theme-primary-hover: #64748b;--theme-primary-soft: #172554;--gradient-primary: linear-gradient(135deg, #cbd5e1, #94a3b8, #475569)}:root[data-theme=ocean]{color-scheme:dark;--theme-bg: #082f49;--theme-app-background: linear-gradient(135deg, #082f49, #0c4a6e 58%, #164e63);--theme-surface: #0e3a55;--theme-surface-muted: #164e63;--theme-text: #ecfeff;--theme-text-soft: #bae6fd;--theme-border: #155e75;--theme-primary: #22d3ee;--theme-primary-hover: #06b6d4;--theme-primary-soft: #164e63;--gradient-primary: linear-gradient(135deg, #67e8f9, #38bdf8, #2dd4bf)}:root[data-theme=forest]{color-scheme:dark;--theme-bg: #10251c;--theme-app-background: linear-gradient(135deg, #10251c, #173326 58%, #1c3325);--theme-surface: #173326;--theme-surface-muted: #234332;--theme-text: #f0fdf4;--theme-text-soft: #bbf7d0;--theme-border: #2f5940;--theme-primary: #4ade80;--theme-primary-hover: #22c55e;--theme-primary-soft: #234332;--gradient-primary: linear-gradient(135deg, #86efac, #4ade80, #a3e635)}:root[data-theme=sunset]{--theme-bg: #fff6ef;--theme-app-background: linear-gradient(125deg, #fff6ec 0%, #ffe6ce 35%, #ffe9e8 70%, #fff5e5 100%);--theme-surface: #fffdfa;--theme-surface-muted: #ffebdc;--theme-text: #482417;--theme-text-soft: #765044;--theme-border: #f0cdb4;--theme-primary: #ea580c;--theme-primary-hover: #9a3412;--theme-primary-soft: #ffeadb;--gradient-primary: linear-gradient(135deg, #ea580c, #e11d48, #b45309)}:root[data-theme=rose]{--theme-bg: #fff5f4;--theme-app-background: linear-gradient(125deg, #fff2f3 0%, #ffe1e6 36%, #fff0e3 70%, #fff7ed 100%);--theme-surface: #fffdfb;--theme-surface-muted: #ffeaed;--theme-text: #491a27;--theme-text-soft: #75424d;--theme-border: #f3ccd2;--theme-primary: #be123c;--theme-primary-hover: #9f1239;--theme-primary-soft: #ffe5e9;--gradient-primary: linear-gradient(135deg, #e11d48, #db2777, #f97316)}:root[data-theme=ruby]{--theme-bg: #fff5f5;--theme-app-background: linear-gradient(125deg, #fff1f2 0%, #ffe4e6 38%, #fecdd3 72%, #fff1f2 100%);--theme-surface: #fffafa;--theme-surface-muted: #fee2e2;--theme-text: #450a0a;--theme-text-soft: #7f1d1d;--theme-border: #fecaca;--theme-primary: #b91c1c;--theme-primary-hover: #991b1b;--theme-primary-soft: #fee2e2;--gradient-primary: linear-gradient(135deg, #7f1d1d, #b91c1c, #ef4444)}:root[data-theme=lavender]{--theme-bg: #f8f6ff;--theme-app-background: linear-gradient(125deg, #f6f3ff 0%, #e9e6ff 36%, #fff0f7 70%, #ecf8f7 100%);--theme-surface: #fffefe;--theme-surface-muted: #eeebff;--theme-text: #2e1065;--theme-text-soft: #5b21b6;--theme-border: #d8d3f6;--theme-primary: #7c3aed;--theme-primary-hover: #6d28d9;--theme-primary-soft: #ebe7ff;--gradient-primary: linear-gradient(135deg, #7c3aed, #c026d3, #2563eb)}:root[data-theme=slate]{color-scheme:dark;--theme-bg: #111827;--theme-app-background: linear-gradient(135deg, #111827, #1f2937 58%, #263445);--theme-surface: #1f2937;--theme-surface-muted: #2d3a4d;--theme-text: #f8fafc;--theme-text-soft: #cbd5e1;--theme-border: #475569;--theme-primary: #cbd5e1;--theme-primary-hover: #e2e8f0;--theme-primary-soft: #334155;--gradient-primary: linear-gradient(135deg, #cbd5e1, #7dd3fc, #a7f3d0)}:root[data-theme=graphite]{color-scheme:dark;--theme-bg: #14171a;--theme-app-background: linear-gradient(135deg, #14171a, #20262b 58%, #2d3034);--theme-surface: #202428;--theme-surface-muted: #2b3035;--theme-text: #f3f4f6;--theme-text-soft: #cbd5e1;--theme-border: #41484f;--theme-primary: #fbbf24;--theme-primary-hover: #f59e0b;--theme-primary-soft: #39311e;--gradient-primary: linear-gradient(135deg, #fde68a, #fbbf24, #fb7185)}:root[data-theme=plum]{color-scheme:dark;--theme-bg: #21152c;--theme-app-background: linear-gradient(135deg, #21152c, #30203f 58%, #3b1f38);--theme-surface: #2b1d37;--theme-surface-muted: #392745;--theme-text: #fdf4ff;--theme-text-soft: #e9d5ff;--theme-border: #533766;--theme-primary: #f0abfc;--theme-primary-hover: #e879f9;--theme-primary-soft: #43294f;--gradient-primary: linear-gradient(135deg, #f0abfc, #fb7185, #c4b5fd)}:root[data-theme=mint]{--theme-bg: #effcf6;--theme-app-background: linear-gradient(125deg, #edfff5 0%, #d2f5e2 36%, #e3f7fb 70%, #f1faec 100%);--theme-surface: #fcfffd;--theme-surface-muted: #e0f5e9;--theme-text: #0b352a;--theme-text-soft: #356a55;--theme-border: #b8dfcc;--theme-primary: #047857;--theme-primary-hover: #065f46;--theme-primary-soft: #d8f3e4;--gradient-primary: linear-gradient(135deg, #047857, #0d9488, #2563eb)}:root[data-theme=amber]{--theme-bg: #fffae9;--theme-app-background: linear-gradient(125deg, #fff7d6 0%, #ffedba 34%, #fff0dd 68%, #eaf7ed 100%);--theme-surface: #fffef9;--theme-surface-muted: #fff1c7;--theme-text: #462d0d;--theme-text-soft: #75521e;--theme-border: #ead39e;--theme-primary: #b45309;--theme-primary-hover: #92400e;--theme-primary-soft: #ffefc5;--gradient-primary: linear-gradient(135deg, #b45309, #ea580c, #0f766e)}:root[data-theme=sky]{--theme-bg: #f0f9ff;--theme-app-background: linear-gradient(125deg, #eff6ff 0%, #e0f2fe 38%, #ecfeff 72%, #f0fdfa 100%);--theme-surface: #fbfdff;--theme-surface-muted: #e0f2fe;--theme-text: #0c2d48;--theme-text-soft: #456c88;--theme-border: #b8d8ec;--theme-primary: #0369a1;--theme-primary-hover: #075985;--theme-primary-soft: #d8efff;--gradient-primary: linear-gradient(135deg, #0284c7, #06b6d4, #2563eb)}:root[data-theme=cobalt]{color-scheme:dark;--theme-bg: #0b1020;--theme-app-background: linear-gradient(135deg, #0b1020, #111b35 58%, #172554);--theme-surface: #111a2e;--theme-surface-muted: #1e2a46;--theme-text: #eff6ff;--theme-text-soft: #b6c9e8;--theme-border: #30456d;--theme-primary: #60a5fa;--theme-primary-hover: #93c5fd;--theme-primary-soft: #1e3a5f;--gradient-primary: linear-gradient(135deg, #60a5fa, #818cf8, #22d3ee)}:root[data-theme=twilight]{color-scheme:dark;--theme-bg: #17132b;--theme-app-background: linear-gradient(135deg, #17132b, #211b3d 58%, #302044);--theme-surface: #211b3d;--theme-surface-muted: #30274f;--theme-text: #faf5ff;--theme-text-soft: #ddd6fe;--theme-border: #4c3c72;--theme-primary: #c4b5fd;--theme-primary-hover: #ddd6fe;--theme-primary-soft: #382d5a;--gradient-primary: linear-gradient(135deg, #a78bfa, #e879f9, #818cf8)}:root[data-theme=cherry]{color-scheme:dark;--theme-bg: #240d15;--theme-app-background: linear-gradient(135deg, #240d15, #35141f 58%, #491d2b);--theme-surface: #35141f;--theme-surface-muted: #491d2b;--theme-text: #fff1f2;--theme-text-soft: #fecdd3;--theme-border: #642c40;--theme-primary: #fda4af;--theme-primary-hover: #fecdd3;--theme-primary-soft: #4c2030;--gradient-primary: linear-gradient(135deg, #fda4af, #fb7185, #f9a8d4)}:root[data-theme=coral]{--theme-bg: #fff5f3;--theme-app-background: linear-gradient(125deg, #fff1ed 0%, #ffe4de 38%, #fff0e8 72%, #fff7ed 100%);--theme-surface: #fffdfc;--theme-surface-muted: #ffe4de;--theme-text: #451a16;--theme-text-soft: #7f4a44;--theme-border: #f0c9c0;--theme-primary: #e11d48;--theme-primary-hover: #be123c;--theme-primary-soft: #ffe4e6;--gradient-primary: linear-gradient(135deg, #f43f5e, #fb7185, #f97316)}:root[data-theme=peach]{--theme-bg: #fff7ed;--theme-app-background: linear-gradient(125deg, #fff7ed 0%, #ffedd5 38%, #ffeddc 72%, #fff1e6 100%);--theme-surface: #fffdfa;--theme-surface-muted: #ffebd6;--theme-text: #4a2414;--theme-text-soft: #80553e;--theme-border: #edc9ad;--theme-primary: #c2410c;--theme-primary-hover: #9a3412;--theme-primary-soft: #ffead8;--gradient-primary: linear-gradient(135deg, #c2410c, #f97316, #e11d48)}:root[data-theme=sand]{--theme-bg: #fbf8ef;--theme-app-background: linear-gradient(125deg, #faf6e9 0%, #f4e9c9 38%, #f8edda 72%, #edf4e8 100%);--theme-surface: #fffefb;--theme-surface-muted: #f4ecd7;--theme-text: #3f351d;--theme-text-soft: #716344;--theme-border: #e2d4ad;--theme-primary: #a16207;--theme-primary-hover: #854d0e;--theme-primary-soft: #f5eaca;--gradient-primary: linear-gradient(135deg, #a16207, #ca8a04, #0f766e)}:root[data-theme=coffee]{color-scheme:dark;--theme-bg: #1f1712;--theme-app-background: linear-gradient(135deg, #1f1712, #30221a 58%, #3d2b20);--theme-surface: #30221a;--theme-surface-muted: #453126;--theme-text: #fff7ed;--theme-text-soft: #e7cbb2;--theme-border: #624936;--theme-primary: #d6a77a;--theme-primary-hover: #e7c29e;--theme-primary-soft: #493523;--gradient-primary: linear-gradient(135deg, #e7c29e, #d6a77a, #f97316)}:root[data-theme=olive]{--theme-bg: #f7f9ed;--theme-app-background: linear-gradient(125deg, #f5f8e8 0%, #e8efcd 38%, #eef3d9 72%, #e9f5ed 100%);--theme-surface: #fcfdf7;--theme-surface-muted: #e9efcf;--theme-text: #29351b;--theme-text-soft: #586944;--theme-border: #cbd7a9;--theme-primary: #4d7c0f;--theme-primary-hover: #3f6212;--theme-primary-soft: #e5edc7;--gradient-primary: linear-gradient(135deg, #4d7c0f, #65a30d, #0f766e)}:root[data-theme=aurora]{color-scheme:dark;--theme-bg: #082d2d;--theme-app-background: linear-gradient(135deg, #082d2d, #10413e 58%, #183b4d);--theme-surface: #10413e;--theme-surface-muted: #1a5550;--theme-text: #ecfdf5;--theme-text-soft: #b6eee0;--theme-border: #2b7168;--theme-primary: #5eead4;--theme-primary-hover: #99f6e4;--theme-primary-soft: #164d49;--gradient-primary: linear-gradient(135deg, #5eead4, #38bdf8, #a78bfa)}:root[data-theme=ice]{--theme-bg: #f0fdfa;--theme-app-background: linear-gradient(125deg, #ecfeff 0%, #cffafe 38%, #dff7f4 72%, #eff6ff 100%);--theme-surface: #fbffff;--theme-surface-muted: #d9f4f2;--theme-text: #123b43;--theme-text-soft: #47717a;--theme-border: #b5dfe0;--theme-primary: #0e7490;--theme-primary-hover: #155e75;--theme-primary-soft: #d5f3f4;--gradient-primary: linear-gradient(135deg, #0e7490, #06b6d4, #6366f1)}:root[data-theme=monochrome]{color-scheme:dark;--theme-bg: #111111;--theme-app-background: linear-gradient(135deg, #111111, #1c1c1c 58%, #292929);--theme-surface: #202020;--theme-surface-muted: #303030;--theme-text: #fafafa;--theme-text-soft: #d4d4d4;--theme-border: #505050;--theme-primary: #e5e7eb;--theme-primary-hover: #ffffff;--theme-primary-soft: #383838;--gradient-primary: linear-gradient(135deg, #e5e7eb, #a3a3a3, #737373)}:root[data-theme=dark]{--theme-primary-contrast: #0f172a}:root[data-theme=ocean]{--theme-primary-contrast: #083344}:root[data-theme=forest]{--theme-primary-contrast: #052e16}:root[data-theme=sunset]{--theme-primary-contrast: #431407}:root[data-theme=slate]{--theme-primary-contrast: #111827}:root[data-theme=graphite]{--theme-primary-contrast: #292524}:root[data-theme=plum]{--theme-primary-contrast: #3b0764}:root[data-theme=cobalt]{--theme-primary-contrast: #0b1020}:root[data-theme=twilight]{--theme-primary-contrast: #17132b}:root[data-theme=cherry]{--theme-primary-contrast: #240d15}:root[data-theme=coffee]{--theme-primary-contrast: #1f1712}:root[data-theme=aurora]{--theme-primary-contrast: #082d2d}:root[data-theme=monochrome]{--theme-primary-contrast: #111111}:root[data-theme-mode=light]{color-scheme:light;--theme-bg: color-mix(in srgb, #f7f9fc 94%, var(--theme-primary));--theme-app-background: linear-gradient( 125deg, color-mix(in srgb, #ffffff 94%, var(--theme-primary)) 0%, color-mix(in srgb, #f1f5f9 88%, var(--theme-primary)) 48%, color-mix(in srgb, #ffffff 96%, var(--theme-primary)) 100% );--theme-surface: color-mix(in srgb, #ffffff 98%, var(--theme-primary));--theme-surface-muted: color-mix(in srgb, #f1f5f9 88%, var(--theme-primary));--theme-text: #17243a;--theme-text-soft: #526174;--theme-border: color-mix(in srgb, #64748b 24%, #ffffff);--theme-primary-soft: color-mix(in srgb, var(--theme-primary) 12%, #ffffff)}:root[data-theme-mode=dark]{color-scheme:dark;--theme-bg: color-mix(in srgb, #0f172a 94%, var(--theme-primary));--theme-app-background: linear-gradient( 135deg, color-mix(in srgb, #111827 94%, var(--theme-primary)), color-mix(in srgb, #0f172a 88%, var(--theme-primary)) 58%, color-mix(in srgb, #172554 90%, var(--theme-primary)) );--theme-surface: color-mix(in srgb, #1e293b 94%, var(--theme-primary));--theme-surface-muted: color-mix(in srgb, #273449 88%, var(--theme-primary));--theme-text: #f1f5f9;--theme-text-soft: #cbd5e1;--theme-border: color-mix(in srgb, #64748b 55%, var(--theme-primary));--theme-primary-soft: color-mix(in srgb, #1e293b 82%, var(--theme-primary))}:root[data-theme]{--background: var(--theme-bg);--background-secondary: var(--theme-surface-muted);--surface: var(--theme-surface);--surface-elevated: var(--theme-surface);--surface-glass: var(--theme-surface);--text-primary: var(--theme-text);--text-secondary: var(--theme-text-soft);--text-muted: var(--theme-text-soft);--border: var(--theme-border);--border-strong: var(--theme-border);--primary: var(--theme-primary);--primary-light: var(--theme-primary-hover);--primary-dark: var(--theme-primary-hover)}:root[data-theme] body{background:var(--theme-bg);background-image:none;color:var(--theme-text)}:root{--primary: #6366f1;--primary-light: #8b5cf6;--primary-dark: #4338ca;--theme-primary-contrast: #ffffff;--accent: #06b6d4;--accent-warm: #f59e0b;--success: #10b981;--warning: #f59e0b;--error: #ef4444;--neutral: #64748b;--background: #fafafa;--background-secondary: #f4f4f5;--surface: #ffffff;--surface-elevated: #ffffff;--surface-glass: rgba(255, 255, 255, .8);--text-primary: #0f172a;--text-secondary: #475569;--text-muted: #64748b;--text-inverse: #ffffff;--border: #e4e4e7;--border-strong: #d4d4d8;--border-subtle: #f4f4f5;--gradient-primary: linear-gradient(135deg, #6366f1 0%, #8b5cf6 50%, #06b6d4 100%);--gradient-accent: linear-gradient(135deg, #f59e0b 0%, #ef4444 100%);--gradient-neutral: linear-gradient(135deg, #f8fafc 0%, #e2e8f0 100%);--gradient-mesh: radial-gradient(at 40% 20%, #6366f1 0px, transparent 50%), radial-gradient(at 80% 0%, #8b5cf6 0px, transparent 50%), radial-gradient(at 40% 40%, #06b6d4 0px, transparent 50%), radial-gradient(at 0% 50%, #f59e0b 0px, transparent 50%);--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -2px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -4px rgba(0, 0, 0, .1);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 8px 10px -6px rgba(0, 0, 0, .1);--shadow-colored: 0 25px 50px -12px rgba(99, 102, 241, .25);--transition-micro: .1s cubic-bezier(.4, 0, .2, 1);--transition-fast: .2s cubic-bezier(.4, 0, .2, 1);--transition-normal: .3s cubic-bezier(.4, 0, .2, 1);--transition-smooth: .5s cubic-bezier(.23, 1, .32, 1);--transition-bounce: .6s cubic-bezier(.68, -.55, .265, 1.55);--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--vh: 1vh;--mobile-nav-clearance: calc(6.75rem + env(safe-area-inset-bottom)) ;font-family:Inter,SF Pro Display,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"cv02","cv03","cv04","cv11"}@supports (height: 100dvh){:root{--vh: 1dvh}}*{box-sizing:border-box!important}body{margin:0;height:calc(100 * var(--vh));background:var(--background);background-image:var(--gradient-mesh);background-size:400% 400%;background-attachment:fixed;color:var(--text-primary);overflow:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;position:fixed;width:100%;top:0;left:0}#root{height:calc(100 * var(--vh));width:100%;overflow:auto;-webkit-overflow-scrolling:touch;-webkit-backdrop-filter:blur(.5px);backdrop-filter:blur(.5px)}@media (min-width: 768px){body{position:static;min-height:100vh;height:auto;overflow-x:hidden;overflow-y:auto}#root{min-height:100vh;height:auto;overflow:visible}}*:focus{outline:2px solid var(--primary);outline-offset:2px;transition:outline var(--transition-fast)}*:focus:not(:focus-visible){outline:none}*:focus-visible{outline:2px solid var(--primary);outline-offset:2px;box-shadow:0 0 0 4px color-mix(in srgb,var(--primary) 12%,transparent)}input,textarea,select{border:1px solid var(--border);font-family:inherit;font-size:16px;transition:all var(--transition-fast);background:var(--surface-glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--text-primary);-webkit-appearance:none;appearance:none;border-radius:12px;padding:12px 16px;font-weight:400;box-shadow:var(--shadow-sm)}input[type=checkbox],input[type=radio]{-webkit-appearance:auto;appearance:auto;padding:0;margin:0 .5rem 0 0;border-radius:4px;background:initial;width:1rem;height:1rem;vertical-align:middle;cursor:pointer}@media (hover: none){input[type=checkbox],input[type=radio]{transform:scale(1.1)}}input[type=checkbox]:focus,input[type=radio]:focus{outline:2px solid var(--primary);outline-offset:2px}input:focus,textarea:focus,select:focus{border-color:var(--primary);box-shadow:0 0 0 3px #6366f11a,var(--shadow-md);outline:none;background:var(--surface);transform:translateY(-1px)}input:disabled,textarea:disabled,select:disabled{opacity:.5;cursor:not-allowed;background:var(--background-secondary);-webkit-backdrop-filter:none;backdrop-filter:none}input:active,textarea:active,select:active{transform:scale(.998)}@media (hover: hover) and (pointer: fine){input,textarea,select{font-size:1rem}input:hover,textarea:hover,select:hover{border-color:var(--primary-light)}input:focus,textarea:focus,select:focus{transform:translateY(-1px)}}h1{font-size:clamp(1.75rem,4vw,2.25rem)!important;font-weight:700;letter-spacing:-.025em;line-height:1.2;background:var(--gradient-primary);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-size:200% 100%;animation:textShimmer 3s ease-in-out infinite alternate}@keyframes textShimmer{0%{background-position:0% 50%}to{background-position:100% 50%}}h2{font-size:clamp(1.5rem,3vw,1.875rem);font-weight:600;letter-spacing:-.015em;line-height:1.3;color:var(--text-primary)}h3{font-size:clamp(1.25rem,2.5vw,1.5rem);font-weight:600;letter-spacing:-.01em;line-height:1.4;color:var(--text-primary)}p{font-size:1rem;line-height:1.6;color:var(--text-secondary);font-weight:400}button{border:none;font-family:inherit;cursor:pointer;position:relative;overflow:hidden;border-radius:12px;font-weight:500;letter-spacing:-.005em;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);min-height:44px;min-width:44px;touch-action:manipulation;transform-origin:center}button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);z-index:1}button:hover:before{left:100%}@media (min-width: 769px){button{min-height:auto;min-width:auto}}button:disabled{opacity:.6;cursor:not-allowed;transform:none!important}button:active{transform:scale(.98)}@media (hover: hover) and (pointer: fine){button:active{transform:none}}@media (min-width: 769px){*::-webkit-scrollbar{width:8px;height:8px}*::-webkit-scrollbar-track{background:#ffffff1a;border-radius:4px}*::-webkit-scrollbar-thumb{background:#667eea4d;border-radius:4px;transition:background var(--transition-normal)}*::-webkit-scrollbar-thumb:hover{background:#667eea80}}*::-webkit-scrollbar{display:none}@media (min-width: 769px){*::-webkit-scrollbar{display:block}}*{scrollbar-width:thin;scrollbar-color:rgba(102,126,234,.3) transparent}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse{0%{box-shadow:0 0 #667eeab3}70%{box-shadow:0 0 0 10px #667eea00}to{box-shadow:0 0 #667eea00}}@keyframes skeleton-loading{0%{background-position:-200px 0}to{background-position:calc(200px + 100%) 0}}@keyframes breathe{0%,to{transform:scale(1)}50%{transform:scale(1.03)}}.skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200px 100%;animation:skeleton-loading 1.5s infinite}.pulse{animation:pulse 2s infinite}.breathe{animation:breathe 3s ease-in-out infinite}.touchable,button,[role=button],input[type=button],input[type=submit],input[type=reset]{min-height:44px;min-width:44px;touch-action:manipulation}*{-webkit-tap-highlight-color:transparent;-webkit-overflow-scrolling:touch;scroll-behavior:smooth}.safe-area-top{padding-top:env(safe-area-inset-top)}.safe-area-bottom{padding-bottom:env(safe-area-inset-bottom)}.safe-area-left{padding-left:env(safe-area-inset-left)}.safe-area-right{padding-right:env(safe-area-inset-right)}.deck-status-new{--deck-status-color: #9ca3af;--deck-status-soft: #f3f4f6;--deck-status-text: #374151}.deck-status-weak{--deck-status-color: #fb923c;--deck-status-soft: #ffedd5;--deck-status-text: #c2410c}.deck-status-learning{--deck-status-color: #3b82f6;--deck-status-soft: #dbeafe;--deck-status-text: #1d4ed8}.deck-status-mastered{--deck-status-color: #22c55e;--deck-status-soft: #dcfce7;--deck-status-text: #15803d}.deck-status-dot,.deck-status-bar{background-color:var(--deck-status-color)!important}.deck-status-badge{background-color:var(--deck-status-soft)!important;color:var(--deck-status-text)!important}.app-shell{position:relative;display:flex;flex-direction:column;width:100%;height:100vh;height:100dvh;overflow:hidden;background:var(--theme-app-background);-webkit-backdrop-filter:blur(.5px);backdrop-filter:blur(.5px)}.app-shell:before,.app-shell:after{position:absolute;z-index:0;inset:0;content:"";pointer-events:none}.app-shell:before{background:radial-gradient(circle at 20% 80%,rgb(120 180 255 / 15%),transparent 50%),radial-gradient(circle at 80% 20%,rgb(255 120 180 / 12%),transparent 50%),radial-gradient(circle at 40% 40%,rgb(180 255 120 / 8%),transparent 50%);opacity:.18}.app-shell:after{background-image:radial-gradient(circle at 1px 1px,rgb(0 0 0 / 3%) 1px,transparent 0),radial-gradient(circle at 2px 2px,rgb(255 255 255 / 2%) 1px,transparent 0);background-position:0 0,10px 10px;background-size:20px 20px,25px 25px;opacity:.6}:root[data-theme-mode=dark] .app-shell:before{opacity:.08}.app-main{position:relative;z-index:1;flex:1 1 0%;width:100%;max-width:100%;min-height:0;height:100vh;padding-bottom:var(--mobile-nav-clearance);overflow-x:hidden;overflow-y:auto}.app-main--study{padding:0 0 var(--mobile-nav-clearance);overflow:visible}.app-navigation{position:fixed;z-index:50;right:.75rem;bottom:calc(env(safe-area-inset-bottom) + .75rem);left:.75rem;padding:.375rem;border:1px solid rgb(255 255 255 / 90%);border-radius:1rem;background:color-mix(in srgb,var(--theme-surface) 85%,transparent);box-shadow:0 12px 36px #0f172a2e;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}.app-navigation__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:center;gap:.25rem}.app-navigation__button{display:flex;min-width:0;min-height:3.25rem;align-items:center;justify-content:center;padding:.125rem;border:0;border-radius:.75rem;background:transparent;color:var(--theme-text-soft);cursor:pointer;touch-action:manipulation;transition:color .18s ease,background-color .18s ease}button.app-navigation__button:before,button.app-navigation__button:hover:before{display:none}.app-navigation__button:hover{background:color-mix(in srgb,var(--theme-primary) 7%,transparent);color:var(--theme-text)}.app-navigation__button:focus-visible{outline:2px solid var(--theme-primary);outline-offset:2px}.app-navigation__tab{display:flex;width:100%;min-width:0;flex-direction:column;align-items:center;justify-content:center;gap:.125rem;padding:.25rem .5rem;border:2px solid transparent;border-radius:.75rem;transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease}.app-navigation__button.is-active .app-navigation__tab{border-color:var(--theme-primary);background:var(--theme-primary-soft);box-shadow:var(--shadow-sm);color:var(--theme-primary)}.app-navigation__icon-wrap{display:grid;width:2.5rem;height:2rem;place-items:center;border-radius:.5rem}.app-navigation__icon{font-size:1.35rem}.app-navigation__label{max-width:100%;overflow:hidden;color:inherit;font-size:.6875rem;font-weight:600;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.app-navigation__button.is-active .app-navigation__label{font-weight:700}.toast-region{position:fixed;z-index:10000;top:1rem;right:0;left:0;display:flex;flex-direction:column;align-items:center;gap:.5rem;padding-inline:.25rem;pointer-events:none}.toast-region__item{width:100%;pointer-events:auto}.toast{display:flex;width:calc(100% - 1.5rem);max-width:24rem;align-items:center;gap:.75rem;margin-inline:auto;padding:.75rem;border:1px solid transparent;border-radius:.625rem;box-shadow:var(--shadow-lg);color:#fff;font-size:.875rem;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;transform:translate(100%);transition:opacity .15s ease-out,transform .15s ease-out}.toast--info{border-color:#60a5fa4d;background:#2563ebf2}.toast--warning{border-color:#fb923c4d;background:#f97316f2}.toast--error{border-color:#f871714d;background:#ef4444f2}.toast.is-visible{opacity:1;transform:translate(0)}.toast.is-leaving{opacity:0;transform:translate(100%)}.toast__icon{flex:0 0 auto;font-size:1.125rem}.toast__message{min-width:0;max-width:50vw;flex:1 1 auto;padding-right:.5rem;font-weight:500;line-height:1.5;overflow-wrap:anywhere;white-space:pre-wrap}.button{display:inline-flex;min-width:auto;min-height:2.75rem;align-items:center;justify-content:center;gap:.5rem;padding:.625rem 1rem;border:1px solid transparent;border-radius:.75rem;background:transparent;color:var(--theme-text);font:inherit;font-size:.9375rem;font-weight:600;line-height:1.25;text-align:center;text-decoration:none;touch-action:manipulation;transition:background-color .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease}button.button:before,button.button:hover:before{display:none}.button:hover:not(:disabled){transform:translateY(-1px)}.button:active:not(:disabled){transform:scale(.98)}.button:disabled{cursor:not-allowed;opacity:.55}.button--primary{background:var(--theme-primary);box-shadow:var(--shadow-md);color:var(--theme-primary-contrast, #fff)}.button--primary:hover:not(:disabled){background:var(--theme-primary-hover)}.button--secondary{border-color:var(--theme-border);background:var(--theme-surface-muted);color:var(--theme-text)}.button--secondary:hover:not(:disabled){background:color-mix(in srgb,var(--theme-surface-muted) 75%,var(--theme-primary))}.button--outline{border-color:var(--theme-border);background:var(--theme-surface);color:var(--theme-text)}.button--outline:hover:not(:disabled){background:var(--theme-surface-muted)}.button--cram{background:#d97706;box-shadow:var(--shadow-md);color:#fff}.button--cram:hover:not(:disabled){background:#b45309}.button--danger{background:#dc2626;color:#fff}.button--danger:hover:not(:disabled){background:#b91c1c}.button--success{background:#059669;color:#fff}.button--success:hover:not(:disabled){background:#047857}.button--icon{width:2.25rem;min-width:2.25rem;height:2.25rem;min-height:2.25rem;padding:0}.button--small{min-height:2.25rem;padding:.375rem .75rem;font-size:.8125rem}.button--block{width:100%}.button--quiet{border-color:transparent;color:var(--theme-text-soft)}.button--quiet:hover:not(:disabled){background:var(--theme-surface-muted);color:var(--theme-text)}.field{display:block;width:100%;min-width:0;padding:.625rem .75rem;border:1px solid var(--theme-border);border-radius:.625rem;background:color-mix(in srgb,var(--theme-surface) 92%,transparent);box-shadow:var(--shadow-sm);color:var(--theme-text);font:inherit;font-size:1rem;transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease}.field::placeholder{color:var(--theme-text-soft);opacity:.75}.field:focus{border-color:var(--theme-primary);background:var(--theme-surface);box-shadow:0 0 0 3px color-mix(in srgb,var(--theme-primary) 16%,transparent);outline:none}.field:disabled{cursor:not-allowed;opacity:.6}.field--compact{padding:.5rem .625rem;font-size:.875rem}.form-group{display:flex;min-width:0;flex-direction:column;gap:.5rem}.form-label{display:block;margin-bottom:.5rem;color:var(--theme-text);font-size:.875rem;font-weight:600}.form-help{margin-top:.25rem;color:var(--theme-text-soft);font-size:.8125rem}.form-message{margin-top:.75rem;font-size:.875rem}.form-message--success{color:#047857}.form-message--error{color:#b91c1c;overflow-wrap:anywhere}.surface-panel{border:1px solid color-mix(in srgb,var(--theme-border) 65%,transparent);border-radius:1rem;background:color-mix(in srgb,var(--theme-surface) 92%,transparent);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.modal-backdrop{position:fixed;z-index:50;inset:0;display:flex;align-items:center;justify-content:center;padding:1rem;background:#0f172a8c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-dialog{position:relative;display:flex;width:100%;max-width:40rem;max-height:85vh;flex-direction:column;overflow-y:auto;padding:1.5rem;border:1px solid color-mix(in srgb,var(--theme-border) 65%,transparent);border-radius:1rem;background:var(--theme-surface);box-shadow:var(--shadow-xl)}.modal-dialog__title{margin:0 2.5rem 1.25rem 0;color:var(--theme-text);font-size:1.25rem;font-weight:700}.modal-dialog__close{position:absolute;top:1rem;right:1rem}.status-badge{display:inline-flex;align-items:center;gap:.375rem;padding:.25rem .625rem;border-radius:999px;font-size:.75rem;font-weight:600}@media (min-width: 640px){.toast-region{right:1rem;left:auto;align-items:flex-end;padding-inline:0}.toast-region__item{width:auto}.toast{width:auto;margin-inline:0}.modal-dialog{padding:1.5rem}}@media (min-width: 768px){.app-shell{height:auto;min-height:100vh}.app-main{height:auto;min-height:100vh;padding-right:2rem;padding-left:2rem;overflow-y:auto}.app-main--study{padding-bottom:var(--mobile-nav-clearance)}.app-navigation{right:auto;left:50%;width:100%;max-width:28rem;transform:translate(-50%)}}@media (prefers-reduced-motion: reduce){.app-navigation__button,.app-navigation__tab,.toast,.button{scroll-behavior:auto;transition-duration:.01ms}}.study-page{display:flex;width:100%;height:100%;min-height:0;flex-direction:column;padding:1rem}.study-page--scrollable{overflow-y:auto}.study-page--result{padding-bottom:50px}.study-page__title{width:100%;margin:0 0 .5rem;color:var(--theme-text);font-size:1.5rem;font-weight:700;text-align:center}.study-page__description{width:100%;margin:0;color:var(--theme-text-soft);text-align:center}.study-panel{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1.5rem;text-align:center}.study-empty-state__icon{color:var(--theme-text-soft);font-size:3rem}.study-empty-state__title{margin:0 0 1rem;color:var(--theme-text);font-size:1.5rem;font-weight:600}.study-empty-state__description{margin:0;color:var(--theme-text-soft)}.study-deck-list{display:flex;width:100%;max-width:28rem;flex-direction:column;gap:.5rem}.study-deck-option{display:flex;width:100%;align-items:center;justify-content:space-between;gap:.75rem;padding:.75rem 1rem;border:1px solid var(--theme-border);border-radius:.5rem;background:var(--theme-surface);color:var(--theme-text);text-align:left;transition:border-color .15s ease,background-color .15s ease}button.study-deck-option:before,button.study-deck-option:hover:before{display:none}.study-deck-option:hover:not(:disabled){border-color:var(--theme-primary);background:var(--theme-primary-soft)}.study-deck-option:disabled{cursor:not-allowed;opacity:.5}.study-deck-option__name{min-width:0;overflow:hidden;color:var(--theme-text);font-weight:500;text-overflow:ellipsis;white-space:nowrap}.study-deck-option__count{flex:0 0 auto;color:var(--theme-text-soft);font-size:.875rem}.study-page__action-button{margin-top:1.25rem}.study-result-panel{display:flex;width:100%;max-width:42rem;flex-direction:column;align-items:center;justify-content:center;gap:1.25rem;padding:2rem;border:1px solid color-mix(in srgb,var(--theme-border) 80%,transparent);border-radius:.75rem;background:color-mix(in srgb,var(--theme-surface) 90%,transparent);box-shadow:var(--shadow-lg);text-align:center;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.study-result__icon{margin-bottom:.25rem;color:#eab308;font-size:3.75rem}.study-result__title{margin:0;color:var(--theme-text);font-size:1.5rem;font-weight:700}.study-result__stats{display:grid;width:100%;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.study-result__stat{padding:.75rem;border-radius:.5rem;background:var(--theme-surface-muted);text-align:center}.study-result__number,.study-result__label{display:block}.study-result__number{color:var(--theme-text);font-size:1.875rem;font-weight:700}.study-result__number--accent{color:#16a34a}.study-result__label{color:var(--theme-text-soft);font-size:.875rem}.study-result__section{width:100%}.study-result__section-title{margin:0 0 .5rem;color:var(--theme-text-soft);font-size:.875rem;font-weight:600;text-align:left}.study-result__ratings{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem}.study-result__rating{padding:.75rem .5rem;border-radius:.5rem;background:var(--theme-primary-soft);text-align:center}.study-result__rating-count,.study-result__rating-label{display:block}.study-result__rating-count{color:var(--theme-primary);font-size:1.25rem;font-weight:700}.study-result__rating-label{color:var(--theme-text-soft);font-size:.75rem}.study-result__missed-list{max-height:5rem;overflow-y:auto;border:1px solid var(--theme-border);border-radius:.5rem;text-align:left}.study-result__missed-item{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;padding:.5rem;border-bottom:1px solid var(--theme-border);font-size:.75rem}.study-result__missed-item:last-child{border-bottom:0}.study-result__missed-text{min-width:0}.study-result__missed-front,.study-result__missed-back{overflow:hidden;margin:0;text-overflow:ellipsis;white-space:nowrap}.study-result__missed-front{color:var(--theme-text);font-weight:600}.study-result__missed-back{color:var(--theme-text-soft)}.study-result__missed-count{flex:0 0 auto;color:var(--theme-text-soft)}.study-result__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem}.study-result__actions>.button{margin-top:0}.study-page{display:flex;width:100%;height:100%;min-height:0;flex-direction:column;padding:1rem 1rem 5rem}.study-quadrants{position:fixed;z-index:0;inset:0;pointer-events:none}.study-quadrant{position:absolute;width:50%;height:50%;border:2px dashed transparent;transition:background-color 75ms ease,border-color 75ms ease}.study-quadrant--top-left{top:0;left:0;border-color:transparent;background:#9ca3af1a}.study-quadrant--top-right{top:0;right:0;background:#22c55e1a}.study-quadrant--bottom-left{bottom:0;left:0;background:#fb923c1a}.study-quadrant--bottom-right{right:0;bottom:0;background:#3b82f61a}.study-quadrant--top-left.is-active{border-color:#9ca3af;background:#9ca3af66}.study-quadrant--top-right.is-active{border-color:#22c55e;background:#22c55e66}.study-quadrant--bottom-left.is-active{border-color:#fb923c;background:#fb923c66}.study-quadrant--bottom-right.is-active{border-color:#3b82f6;background:#3b82f666}.study-progress{position:relative;z-index:20;display:flex;flex-direction:column;gap:.25rem;margin-bottom:.25rem;padding:.25rem;border-bottom:1px solid var(--theme-border);border-radius:.5rem;background:var(--theme-surface);box-shadow:var(--shadow-sm)}.study-progress__inner{display:flex;align-items:center;gap:.5rem}.study-progress__count{flex:0 0 auto;color:var(--theme-text-soft);font-size:.75rem;font-weight:700;white-space:nowrap}.study-progress__track{width:100%;min-width:0;height:.5rem;flex:1;overflow:hidden;border-radius:999px;background:var(--theme-surface-muted)}.study-progress__fill{height:100%;border-radius:inherit;background:var(--theme-primary);transition:width .3s ease}.study-finish-button{width:2.25rem;min-width:2.25rem;height:2.25rem;min-height:2.25rem;padding:.25rem;color:#059669}.study-finish-button:hover:not(:disabled){background:#ecfdf5;color:#047857}.study-finish-button__icon{font-size:1.25rem}.study-card-stack{display:flex;min-height:0;flex:1;align-items:center;justify-content:center;overflow:visible;padding:.25rem}.study-card-wrapper{position:relative;z-index:10;display:flex;width:100%;height:100%;min-height:0;max-height:100%;align-items:center;justify-content:center;margin-inline:auto}@media (max-width: 639px){.study-page--session{padding:.5rem .5rem 0}.study-page--session>.study-progress{flex:0 0 auto}}@media (min-width: 640px){.study-page{padding-bottom:1rem}.study-card-stack{padding:.75rem}.study-card-wrapper{max-width:36rem}}@media (min-width: 768px){.study-page{max-width:48rem;margin-inline:auto}}@media (min-width: 1024px){.study-card-wrapper{max-width:42rem}}@media (prefers-reduced-motion: reduce){.study-quadrant,.study-progress__fill{transition-duration:.01ms}}.flashcard-container{position:relative;z-index:30;width:100%;height:100%;-webkit-user-select:none;user-select:none;touch-action:none;transition:none}.flashcard-container.is-dragging{will-change:transform}.flashcard__card{position:relative;width:100%;height:100%;cursor:pointer;transform:translateZ(0);transition:transform .2s ease-out}.flashcard__card--dragging{transition:none}.flashcard__inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform .25s ease-in-out;will-change:transform}.flashcard__face{position:absolute;inset:0;width:100%;height:100%;overflow:hidden;border:8px solid;border-radius:1rem;background:#fff;backface-visibility:hidden;-webkit-backface-visibility:hidden;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.flashcard__face--back{transform:rotateY(180deg)}.flashcard__face-indicator{position:absolute;z-index:20;top:1rem;right:1rem;padding:.25rem .5rem;border:1px solid rgb(148 163 184 / 25%);border-radius:999px;background:#ffffffe0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#475569;font-size:.625rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;pointer-events:none}.flashcard__background{position:absolute;inset:0;border-radius:0;background-position:center;background-size:cover;filter:blur(4px);transform:scale(1.02)}.flashcard__gradient-overlay{position:absolute;inset:0;pointer-events:none;background:linear-gradient(135deg,#0006,#0000001a,#0000004d)}.flashcard__content{position:relative;z-index:10;display:flex;width:100%;height:100%;min-height:0;flex-direction:column;align-items:center;justify-content:center;padding:1rem;text-align:center;transition:all .2s ease}.flashcard__content.has-image{padding:.5rem}.flashcard__content-body{display:flex;width:100%;min-width:0;min-height:0;flex:1}.flashcard__image{max-width:100%;max-height:100%;min-width:0;min-height:0;overflow:hidden;border-radius:.75rem}.flashcard__image-element{display:block;width:100%;height:100%;object-fit:contain}.flashcard__text{max-width:100%;min-width:0;min-height:0;color:#111827;font-size:clamp(1.125rem,2.3vw,1.5rem);font-weight:500;line-height:1.625;overflow-wrap:anywhere}.flashcard__text.is-full-width{width:100%}.flashcard__text :is(p,h1,h2,h3,h4,h5,h6,li,blockquote,th,td){color:inherit}.flashcard__text :is(p,li,blockquote,th,td){font-size:inherit;font-weight:inherit}.flashcard__text.is-on-image a{color:#bfdbfe}.flashcard__both-sides{display:flex;width:100%;height:100%;min-width:0;min-height:0;flex-direction:column}.flashcard__side{display:flex;min-width:0;min-height:0;flex:1;flex-direction:column;align-items:center;justify-content:center}.flashcard__side-label{margin-bottom:.5rem;color:#4b5563;font-size:.875rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.flashcard__face.has-background-image .flashcard__side-label{padding:.25rem .5rem;border-radius:.375rem;background:#0f172ad1;color:#fff}.flashcard__divider{width:100%;height:1px;flex:0 0 auto;margin-block:1rem;background:#d1d5db}.flashcard__memory-meta{display:flex;width:100%;min-width:0;align-items:center;gap:.5rem;margin-bottom:.5rem;white-space:nowrap}.flashcard__face.has-background-image .flashcard__memory-meta{padding:.375rem .5rem;border-radius:.5rem;background:#0f172ad1}.flashcard__face.has-background-image .flashcard__memory-last-result,.flashcard__face.has-background-image .flashcard__memory-reviews{color:#fff}.flashcard__face.has-background-image .flashcard__divider{background:#ffffff73}.flashcard__memory-badge{flex:0 0 auto;padding:.125rem .5rem;border-radius:999px;font-size:.625rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.flashcard__memory-badge--new{background:#f1f5f9;color:#334155}.flashcard__memory-badge--weak{background:#fef3c7;color:#b45309}.flashcard__memory-badge--learning{background:#dbeafe;color:#1d4ed8}.flashcard__memory-badge--mastered{background:#d1fae5;color:#047857}.flashcard__memory-track{min-width:1.5rem;height:.375rem;flex:1;overflow:hidden;border-radius:999px;background:#e2e8f0}.flashcard__memory-fill{height:100%;border-radius:inherit;transition:width .25s ease}.flashcard__memory-fill--new{background:#94a3b8}.flashcard__memory-fill--weak{background:#f59e0b}.flashcard__memory-fill--learning{background:#3b82f6}.flashcard__memory-fill--mastered{background:#10b981}.flashcard__memory-last-result{min-width:0;overflow:hidden;color:#6b7280;font-size:.625rem;text-overflow:ellipsis}.flashcard__memory-reviews{flex:0 0 auto;color:#6b7280;font-size:.625rem}.flashcard__face-indicator--inline{position:static;z-index:auto;flex:0 0 auto;margin-left:.25rem}.flashcard__side-heading{display:flex;width:100%;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.5rem}.flashcard__answer-verdict{flex:0 0 auto;padding:.125rem .5rem;border-radius:999px;font-size:.625rem;font-weight:600}.flashcard__answer-verdict.is-correct{background:#d1fae5;color:#047857}.flashcard__answer-verdict.is-incorrect{background:#fee2e2;color:#b91c1c}.flashcard__text-scroll{display:flex;width:100%;min-height:0;flex:1;align-items:center;justify-content:center;overflow-y:auto}.flashcard__character-mark{padding-inline:.125rem;border-radius:.125rem;font-weight:600}.flashcard__character-mark.is-missed{background:#fee2e2;color:#b91c1c}.flashcard__character-mark.is-expected{background:#d1fae5;color:#047857}.flashcard__side-content{width:100%;min-width:0;min-height:0;flex:1;gap:.5rem}.flashcard__swipe-indicator{position:absolute;z-index:10;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;border:8px solid;border-radius:1rem;color:#fff;font-weight:600;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .1s ease}.flashcard__swipe-indicator.is-active{opacity:1;visibility:visible}.flashcard__indicator-icon{margin-bottom:.5rem;font-size:1.875rem}.flashcard__indicator-label{font-size:1.125rem;letter-spacing:.08em;text-transform:uppercase}@media (min-width: 640px){.flashcard__content{padding:1.5rem}.flashcard__content.has-image{padding:.75rem}}@media (min-width: 768px){.flashcard__text{font-size:clamp(1.5rem,2.3vw,2rem)}}@media (prefers-reduced-motion: reduce){.flashcard__card,.flashcard__inner,.flashcard__content,.flashcard__memory-fill,.flashcard__swipe-indicator{transition-duration:.01ms}}.markdown-content>:first-child{margin-top:0}.markdown-content>:last-child{margin-bottom:0}.markdown-content p{margin:.45em 0}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4,.markdown-content h5,.markdown-content h6{margin:.45em 0 .25em;font-size:1.15em;font-weight:700;line-height:1.25}.markdown-content ul,.markdown-content ol{width:fit-content;max-width:100%;margin:.5em auto;padding-left:1.4em;text-align:left}.markdown-content li+li{margin-top:.2em}.markdown-content blockquote{margin:.6em 0;padding-left:.75em;border-left:.2em solid color-mix(in srgb,currentColor 35%,transparent);opacity:.85;text-align:left}.markdown-content code{padding:.05em .25em;border-radius:.25em;background:color-mix(in srgb,currentColor 10%,transparent);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.82em;overflow-wrap:anywhere}.markdown-content pre{max-width:100%;overflow:auto;margin:.5em 0;padding:.6em;border-radius:.5em;background:color-mix(in srgb,currentColor 10%,transparent);text-align:left}.markdown-content pre code{padding:0;background:transparent;overflow-wrap:normal}.markdown-content a{color:#1d4ed8;text-decoration:underline;text-underline-offset:.12em;overflow-wrap:anywhere}.markdown-content hr{margin:.75em 0;border:0;border-top:1px solid color-mix(in srgb,currentColor 25%,transparent)}.markdown-content table{display:block;width:max-content;max-width:100%;overflow-x:auto;margin:.5em auto;border-collapse:collapse;font-size:.8em;text-align:left}.markdown-content th,.markdown-content td{padding:.25em .45em;border:1px solid color-mix(in srgb,currentColor 25%,transparent)}.markdown-content img{max-width:100%;max-height:12rem;height:auto;border-radius:.5rem;object-fit:contain}.decks-page{width:100%;max-width:72rem;min-height:0;margin-inline:auto;padding:1rem}.decks-page__header{display:grid;grid-template-columns:minmax(0,1fr);align-items:center;gap:.75rem;margin-bottom:1.5rem}.decks-page__intro,.decks-page__header-actions{grid-column:1 / -1}.decks-page__intro{text-align:center}.decks-page__title-row{display:flex;align-items:center;justify-content:center;gap:.75rem}.decks-page__title{margin:0;font-size:clamp(1.875rem,4vw,2.25rem);line-height:1.1}.decks-page__count{display:inline-flex;min-width:1.75rem;height:1.75rem;align-items:center;justify-content:center;margin-top:.25rem;padding-inline:.375rem;border-radius:.5rem;font-size:1.125rem;font-variant-numeric:tabular-nums;font-weight:700}.decks-page__description{margin-top:.5rem;color:var(--theme-text-soft)}.decks-page__header-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:1rem}.decks-page__create-actions{display:inline-flex;align-items:stretch}.decks-page__action-button{min-width:8.75rem;gap:.75rem}.decks-page__create-actions>.decks-page__action-button{border-top-right-radius:0;border-bottom-right-radius:0}.decks-page__ai-create-button{width:2.75rem;min-width:2.75rem;padding-inline:.5rem;border-top-left-radius:0;border-bottom-left-radius:0}.decks-page__options-button{width:2rem;min-width:2rem;height:2rem;min-height:2rem}.decks-page__create-form{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem;padding:1rem}.decks-page__section-title{margin:0;color:var(--theme-text);font-size:1.25rem;font-weight:700}.decks-page__form-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:.25rem}.decks-page__toolbar{position:relative;display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:1rem}.deck-toolbar-button{gap:.5rem;padding:.5rem 1rem;font-size:.875rem}.decks-page__collapse-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-left:auto}.deck-filter-menu{position:absolute;z-index:30;top:calc(100% + .5rem);left:0;min-width:14rem;padding:.5rem;border:1px solid var(--theme-border);border-radius:.625rem;background:var(--theme-surface);box-shadow:var(--shadow-xl)}.deck-filter-menu__option{display:block;width:100%;min-width:0;min-height:2.5rem;padding:.5rem .75rem;border-radius:.375rem;background:transparent;color:var(--theme-text);font-size:.875rem;text-align:left}button.deck-filter-menu__option:before,button.deck-filter-menu__option:hover:before{display:none}.deck-filter-menu__option:hover{background:var(--theme-surface-muted)}.deck-filter-menu__option.is-selected{background:var(--theme-primary-soft);color:var(--theme-primary);font-weight:600}.deck-filter-menu__empty{margin:0;padding:.5rem .75rem;color:var(--theme-text-soft);font-size:.875rem}.decks-page__filter-summary{margin-left:.75rem;color:var(--theme-text-soft);font-size:.875rem}.decks-grid{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:1rem}.deck-card{position:relative;align-self:start;padding:.75rem;border:8px solid var(--theme-border);border-radius:.75rem;background:color-mix(in srgb,var(--theme-surface) 90%,transparent);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);transition:box-shadow .18s ease,background-color .18s ease}.deck-card:hover{box-shadow:var(--shadow-xl)}.deck-card.is-collapsed{padding:.75rem}.deck-card__header{display:flex;align-items:center;justify-content:space-between;gap:.25rem;margin-bottom:.5rem}.deck-card__header.is-collapsed{margin-bottom:0}.deck-card__identity{display:flex;min-width:0;align-items:center;gap:.25rem}.deck-card__icon{display:grid;width:2.25rem;height:2.25rem;flex:0 0 auto;place-items:center;border-radius:.5rem;background:color-mix(in srgb,var(--theme-surface) 75%,transparent);box-shadow:var(--shadow-sm);font-size:1.25rem}.deck-card__name{min-width:0;margin:0;color:var(--theme-text);font-size:1.25rem;font-weight:600}.deck-card__name.is-collapsed{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.deck-card__study-button{display:block;width:100%;max-width:100%;min-width:0;min-height:0;padding:0;border:0;border-radius:0;background:transparent;color:inherit;font:inherit;text-align:left;overflow-wrap:anywhere}button.deck-card__study-button:before,button.deck-card__study-button:hover:before{display:none}.deck-card__name.is-collapsed .deck-card__study-button{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.deck-card__study-button:hover:not(:disabled){color:var(--theme-primary)}.deck-card__study-button:disabled{cursor:not-allowed;opacity:.7}.deck-card__tools{display:flex;flex:0 0 auto;align-items:center;gap:0}.deck-card__tools>.button--icon,.deck-card__collapse{width:2rem;min-width:2rem;height:2rem;min-height:2rem}.deck-card__delete:hover:not(:disabled){color:#dc2626}.deck-card__tags{display:flex;flex-wrap:wrap;gap:.375rem;margin-bottom:.75rem}.deck-card__tag{padding:.125rem .5rem;border-radius:999px;background:color-mix(in srgb,var(--theme-surface) 70%,transparent);color:var(--theme-text-soft);font-size:.75rem}.deck-card__stats{display:grid;gap:.5rem;margin-bottom:1rem}.deck-card__stat{display:flex;justify-content:space-between;gap:.75rem;color:var(--theme-text-soft);font-size:.875rem}.deck-card__stat-label{font-weight:500}.deck-card__stat--session{margin-top:.5rem;padding-top:.5rem;border-top:1px solid var(--theme-border)}.deck-card__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem;margin-top:1rem}.deck-card__actions>.button{flex:1 1 auto}.decks-page__empty{display:flex;width:100%;min-height:40vh;flex-direction:column;align-items:center;justify-content:center;padding:2rem;text-align:center}.decks-page__empty-icon{margin-bottom:1rem;color:var(--theme-text-soft);font-size:3.75rem}.decks-page__empty-title{margin:0 0 .5rem;color:var(--theme-text);font-size:1.5rem;font-weight:600}.decks-page__empty-description,.decks-page__no-results{color:var(--theme-text-soft)}.decks-page__empty-description{margin:0}.decks-page__no-results{padding-block:2.5rem;text-align:center;font-size:.875rem}.deck-status-summary{width:100%}.deck-status-summary__meta{display:flex;justify-content:space-between;gap:.5rem;margin-bottom:.375rem;color:var(--theme-text-soft);font-size:.75rem}.deck-status-summary__bar{display:flex;width:100%;height:.5rem;overflow:hidden;border-radius:999px;background:var(--theme-surface-muted)}.deck-status-summary__bar .deck-status-bar{display:block;height:100%}.deck-status-summary__legend{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.25rem .75rem;margin-top:.5rem}.deck-status-summary__item,.deck-status-summary__label{display:flex;min-width:0;align-items:center;gap:.25rem}.deck-status-summary__item{justify-content:space-between;color:var(--theme-text-soft);font-size:.6875rem}.deck-status-summary__label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.deck-status-summary__label .deck-status-dot{width:.375rem;height:.375rem;flex:0 0 auto;border-radius:50%}.deck-status-summary__count{flex:0 0 auto;font-variant-numeric:tabular-nums}.decks-options-dialog{max-width:32rem;max-height:80vh;padding:1rem}.decks-options-dialog .modal-dialog__title{margin-bottom:.75rem}.study-option-group{margin-bottom:.5rem;padding-bottom:1rem;border-bottom:1px solid color-mix(in srgb,var(--theme-border) 70%,transparent)}.study-option-group:last-child{margin-bottom:0;padding-bottom:0;border-bottom:0}.study-option-group--mode{order:1}.study-option-group--limit{order:2}.study-option-group--filters{order:3}.study-option-group--behavior{order:4}.study-option-group .form-label{margin:.5rem 0}.study-option-preset-row,.study-option-checks{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.study-option-preset{min-width:2.5rem;min-height:2.25rem;padding:.375rem .625rem;border:1px solid transparent;border-radius:.5rem;background:var(--theme-surface-muted);color:var(--theme-text-soft);font-size:.875rem;touch-action:manipulation;transition:border-color .16s ease,color .16s ease,background-color .16s ease}button.study-option-preset:before,button.study-option-preset:hover:before{display:none}.study-option-preset:hover{background:color-mix(in srgb,var(--theme-surface-muted) 75%,var(--theme-primary));color:var(--theme-text)}.study-option-preset.is-selected{border-color:var(--theme-primary);background:var(--theme-primary-soft);box-shadow:var(--shadow-sm);color:var(--theme-primary);font-weight:600}.study-option-radio-list{display:flex;flex-wrap:wrap;gap:.5rem}.study-option-radio,.study-option-check{display:flex;min-height:2.25rem;align-items:center;gap:.5rem;padding:.375rem .625rem;border:1px solid var(--theme-border);border-radius:.5rem;background:var(--theme-surface);color:var(--theme-text);font-size:.875rem;cursor:pointer;transition:border-color .15s ease,background-color .15s ease,color .15s ease}.study-option-radio:hover,.study-option-check:hover{border-color:var(--theme-primary);background:color-mix(in srgb,var(--theme-primary-soft) 55%,var(--theme-surface))}.study-option-radio:has(.study-option-control:checked),.study-option-check:has(.study-option-control:checked){border-color:var(--theme-primary);background:var(--theme-primary-soft);color:var(--theme-primary)}.study-option-control{flex:0 0 auto;cursor:pointer}input.study-option-control[type=checkbox],input.study-option-control[type=radio]{width:1rem;height:1rem;margin:0;accent-color:var(--theme-primary)}.study-option-subgroup{margin-bottom:.625rem}.study-option-limit{display:grid;gap:.5rem}.study-option-limit .form-label{margin:0}.study-option-custom-limit{width:6rem}@media (min-width: 640px){.decks-page{padding:1rem 1.5rem}.decks-page__empty{min-height:50vh}.decks-options-dialog{padding:1rem}}@media (min-width: 768px){.decks-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 1024px){.decks-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 639px){.decks-page{padding:.75rem}.decks-page__header{gap:.5rem;margin-bottom:1rem}.decks-page__header-actions{display:flex;justify-content:center;gap:.5rem}.decks-page__create-actions{width:min(100%,16rem)}.decks-page__action-button{width:auto;min-width:0;height:2.75rem;min-height:2.75rem;flex:1 1 auto;gap:.375rem;padding:0 .5rem;font-size:.8125rem;white-space:nowrap}.decks-page__ai-create-button{flex:0 0 2.75rem}.decks-page__action-label{display:inline}.decks-page__toolbar{display:flex;flex-wrap:nowrap;align-items:center;gap:.5rem;margin-bottom:.75rem}.deck-toolbar-button{position:relative;width:2.5rem;min-width:2.5rem;height:2.5rem;min-height:2.5rem;flex:0 0 auto;padding:0}.deck-toolbar-button--sort{width:auto;min-width:0;gap:.375rem;padding-inline:.625rem}.deck-toolbar-button__label{display:none}.deck-toolbar-button--sort .deck-toolbar-button__label{display:inline}.deck-toolbar-button.is-filtered{border-color:var(--theme-primary);color:var(--theme-primary)}.decks-page__collapse-actions{display:flex;gap:.375rem;margin-left:auto}.decks-page__filter-summary{display:none}}.card-editor{display:flex;width:100%;max-width:64rem;flex-direction:column;gap:1.5rem;margin-inline:auto;padding:1rem}.card-editor__header{display:flex;flex-direction:column;align-items:stretch;gap:1rem}.card-editor__header-identity{display:flex;min-width:0;align-items:center;gap:.75rem}.card-editor__back-button{width:2.5rem;min-width:2.5rem;height:2.5rem;min-height:2.5rem;background:var(--theme-surface-muted);color:var(--theme-text)}.card-editor__back-button:hover:not(:disabled){color:var(--theme-primary)}.card-editor__header-content{display:flex;min-width:0;flex:1;flex-direction:column;gap:.25rem}.card-editor__deck-name{overflow:hidden;margin:0;color:var(--theme-text);font-size:1.125rem;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.card-editor__title-row{display:flex;width:100%;min-width:0;align-items:center;gap:.375rem}.card-editor__settings-trigger{display:inline-flex;width:30px;min-width:30px;height:30px;min-height:30px;align-items:center;justify-content:center;margin-left:auto;flex:0 0 auto;font-size:1.25rem}.card-editor__header-description{margin:0;color:var(--theme-text-soft);font-size:1rem}.card-editor__name-input{font-size:1rem;font-weight:400}.card-editor__add-section{display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem;padding-block:1.5rem}.card-editor__add-actions{display:inline-flex;align-items:stretch}.card-editor__add-actions>.button:first-child{border-top-right-radius:0;border-bottom-right-radius:0}.card-editor__ai-add-button{width:2.75rem;min-width:2.75rem;padding-inline:.5rem;border-top-left-radius:0;border-bottom-left-radius:0}.card-editor__add-modal-backdrop{z-index:50;overflow:hidden}.card-editor__add-modal{width:100%;max-width:48rem;max-height:80vh;overflow-y:auto;padding:2rem;border:1px solid color-mix(in srgb,var(--theme-border) 80%,transparent);border-radius:1rem;background:color-mix(in srgb,var(--theme-surface) 95%,transparent);box-shadow:var(--shadow-xl);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);animation:card-editor-modal-enter .24s ease-out both}.card-editor__modal-title{margin:0 0 1.5rem;color:var(--theme-text);font-size:1.25rem;font-weight:700;text-align:center}.card-editor__new-card-fields{display:grid;grid-template-columns:minmax(0,1fr);gap:1rem;margin-bottom:1.5rem}.card-editor__form-group{display:flex;min-width:0;flex-direction:column;gap:.5rem}.card-editor__form-label{color:var(--theme-text);font-size:.875rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.card-editor__form-textarea{min-height:5rem;padding:1rem;background:color-mix(in srgb,var(--theme-surface) 80%,transparent);font-size:1rem;resize:vertical;transition:border-color .18s ease,background-color .18s ease,box-shadow .18s ease}.card-editor__form-textarea:hover{border-color:var(--theme-primary)}.card-editor__image-preview{display:flex;align-items:center;gap:.75rem;margin-top:.5rem;padding:.5rem .75rem;border:1px solid var(--theme-border);border-radius:.5rem;background:color-mix(in srgb,var(--theme-surface) 80%,transparent);color:var(--theme-text-soft);font-size:.875rem}.card-editor__image-preview-image{width:2.5rem;height:2.5rem;flex:0 0 auto;border:1px solid var(--theme-border);border-radius:.5rem;object-fit:cover}.card-editor__image-preview-caption{display:flex;align-items:center;gap:.5rem}.card-editor__form-actions{display:flex;flex-direction:column;justify-content:center;gap:.5rem;padding-top:1.5rem;border-top:1px solid var(--theme-border)}.card-editor__form-actions>.button{justify-content:center}.card-editor__cancel-button{justify-content:center}.card-editor__filters{display:flex;flex-wrap:wrap;gap:.5rem}.card-editor__list-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem}.card-editor__list-actions{display:flex;flex-wrap:wrap;gap:.5rem}.card-editor__fold-button{display:inline-flex;min-height:2.5rem;align-items:center;justify-content:center;gap:.375rem}.card-editor__pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;color:var(--theme-text-soft);font-size:.875rem}.card-editor__pagination-summary{display:flex;min-width:0;align-items:center;gap:.75rem}.card-editor__pagination-controls{display:flex;gap:.5rem}.card-status-filter{display:inline-flex;min-height:2.5rem;align-items:center;gap:.5rem;padding:.5rem .75rem;border:1px solid var(--theme-border);border-radius:.5rem;background:var(--theme-surface);color:var(--theme-text);font-size:.875rem;font-weight:500;transition:background-color .15s ease,border-color .15s ease,color .15s ease}button.card-status-filter:before,button.card-status-filter:hover:before{display:none}.card-status-filter:hover{background:var(--theme-surface-muted)}.card-status-filter.is-selected{border-color:var(--theme-primary);background:var(--theme-primary);color:var(--theme-primary-contrast, #fff)}.card-status-filter__count{color:var(--theme-text-soft);font-size:.75rem}.card-status-filter__count.is-selected{color:color-mix(in srgb,var(--theme-primary-contrast, #fff) 80%,transparent)}.card-editor__cards-list{display:flex;width:100%;max-width:56rem;flex-direction:column;gap:1.5rem;margin-inline:auto;padding-bottom:1.5rem}.card-editor__card{position:relative;display:flex;flex-direction:column;gap:.75rem;padding:1rem;border:1px solid color-mix(in srgb,var(--theme-border) 80%,transparent);border-radius:.75rem;background:color-mix(in srgb,var(--theme-surface) 90%,transparent);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);transition:box-shadow .18s ease}.card-editor__card:hover{box-shadow:var(--shadow-xl)}.card-editor__card-top,.card-editor__card-identifiers{display:flex;align-items:center;gap:.5rem}.card-editor__card-top{justify-content:space-between;gap:.75rem}.card-editor__card-top.is-folded{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.5rem .75rem}.card-editor__card-actions{display:flex;flex:0 0 auto;align-items:center;gap:.25rem}.card-editor__card-top.is-folded .card-editor__card-header-toggle{grid-column:1;min-width:0}.card-editor__card-top.is-folded .card-editor__card-actions{grid-column:2;grid-row:1}.card-editor__card-identifiers{flex:1;min-width:0;flex-wrap:wrap}.card-editor__card-header-toggle{min-height:2.25rem;padding:0;overflow:visible;border:0;border-radius:.5rem;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}button.card-editor__card-header-toggle:before,button.card-editor__card-header-toggle:hover:before{display:none}.card-editor__card-header-toggle:focus-visible{outline:2px solid var(--theme-primary);outline-offset:2px}.card-editor__fold-indicator{display:inline-flex;width:2rem;flex:0 0 2rem;align-items:center;justify-content:center;color:var(--theme-text-soft)}.card-editor__card-header-toggle:hover .card-editor__fold-indicator{color:var(--theme-primary)}.card-editor__folded-preview{min-width:0;flex:1 1 8rem;max-height:1.5em;overflow:hidden;color:var(--theme-text);font-size:.875rem;text-overflow:ellipsis;white-space:nowrap}.card-editor__card-top.is-folded .card-editor__folded-preview{grid-column:1 / -1;grid-row:2}.card-editor__folded-preview>*{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-editor__card-number{display:inline-flex;align-items:center;padding:.25rem .5rem;border-radius:.375rem;background:var(--theme-surface-muted);color:var(--theme-text-soft);font-size:.75rem;font-weight:600}.card-editor__status-pill{display:inline-flex;align-items:center;gap:.375rem;padding:.25rem .625rem;border-radius:999px;font-size:.75rem;font-weight:500}.card-editor__status-dot{width:.375rem;height:.375rem;flex:0 0 auto;border-radius:50%}.card-editor__delete-button{width:2.25rem;min-width:2.25rem;height:2.25rem;min-height:2.25rem;margin-left:.5rem;background:var(--theme-surface-muted);color:var(--theme-text-soft)}.card-editor__reorder-button{width:2.25rem;min-width:2.25rem;height:2.25rem;min-height:2.25rem;background:var(--theme-surface-muted);color:var(--theme-text-soft)}.card-editor__reorder-button:hover:not(:disabled){color:var(--theme-primary)}.card-editor__reorder-button:disabled{cursor:not-allowed;opacity:.4}.card-editor__delete-button:hover:not(:disabled){background:color-mix(in srgb,#fee2e2 75%,var(--theme-surface));color:#dc2626}.card-editor__card-fields{display:grid;min-width:0;width:100%;grid-template-columns:minmax(0,1fr);gap:.75rem}.card-editor__card-side{display:flex;min-width:0;flex-direction:column;gap:.5rem}.card-editor__card-side-label{color:var(--theme-text-soft);font-size:.75rem;font-weight:500}.card-editor__card-side-textarea{min-height:6rem;padding:.75rem;background:color-mix(in srgb,var(--theme-surface-muted) 70%,transparent);font-size:1rem;resize:vertical}.card-editor__strength-labels{display:flex;justify-content:space-between;margin-bottom:.25rem;color:var(--theme-text-soft);font-size:.75rem}.card-editor__strength-track{width:100%;height:.5rem;overflow:hidden;border-radius:999px;background:var(--theme-surface-muted)}.card-editor__strength-fill{height:100%;border-radius:inherit;transition:width .25s ease}.card-editor__rating-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem;text-align:center}.card-editor__rating{padding:.5rem;border-radius:.5rem;background:var(--theme-surface-muted)}.card-editor__rating-count{font-size:.875rem;font-weight:700}.card-editor__rating-count.is-again{color:#dc2626}.card-editor__rating-count.is-hard{color:#c2410c}.card-editor__rating-count.is-good{color:#047857}.card-editor__rating-count.is-easy{color:#1d4ed8}.card-editor__rating-label{color:var(--theme-text-soft);font-size:.6875rem}.card-editor__last-reviewed{margin:0;color:var(--theme-text-soft);font-size:.75rem}.card-editor__no-results{margin:0;padding-block:2rem;color:var(--theme-text-soft);font-size:.875rem;text-align:center}.card-editor__empty-state{display:flex;max-width:24rem;flex-direction:column;align-items:center;justify-content:center;margin-inline:auto;padding-block:4rem;text-align:center}.card-editor__empty-icon{margin-bottom:1.5rem;color:var(--theme-primary);font-size:3.75rem;opacity:.7}.card-editor__empty-title{margin:0 0 1rem;color:var(--theme-text);font-size:1.5rem;font-weight:600}.card-editor__empty-description{margin:0;color:var(--theme-text-soft);font-size:1rem;line-height:1.625}@keyframes card-editor-modal-enter{0%{opacity:0;transform:translateY(1rem)}to{opacity:1;transform:translateY(0)}}@media (min-width: 640px){.card-editor__settings-dialog{padding:1.5rem}}@media (min-width: 768px){.card-editor{gap:2rem;padding:2rem}.card-editor__header{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between}.card-editor__add-modal{padding:3rem;border-radius:1.5rem}.card-editor__new-card-fields,.card-editor__card-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.card-editor__form-actions{flex-direction:row;gap:1rem}.card-editor__modal-title{font-size:1.5rem}}@media (prefers-reduced-motion: reduce){.card-editor__add-modal{animation:none}}@media (max-width: 639px){.card-editor{gap:1rem;padding:.75rem}.card-editor__header{gap:.75rem}.card-editor__header-identity{gap:.5rem}.card-editor__fold-button-label{display:none}.card-editor__add-section{margin-block:.75rem;justify-content:center;gap:.5rem;padding-block:.25rem}.card-editor__add-actions{width:min(100%,16rem)}.card-editor__add-actions>.button{width:auto;min-width:0;height:2.75rem;min-height:2.75rem;flex:1 1 auto;gap:.375rem;padding:0 .5rem;font-size:.8125rem;white-space:nowrap}.card-editor__add-actions>.card-editor__ai-add-button{flex:0 0 2.75rem}.card-editor__add-action-label{display:inline}.card-editor__list-toolbar{display:flex;flex-wrap:nowrap;align-items:center;gap:.375rem}.card-editor__filters{min-width:0;flex:1 1 auto;flex-wrap:nowrap;justify-content:space-between;gap:.25rem}.card-status-filter{min-height:2.25rem;min-width:0;flex:1 1 0;justify-content:center;gap:.125rem;padding:.375rem .125rem;font-size:.6875rem;white-space:nowrap}.card-status-filter__count{font-size:.625rem}.card-editor__list-actions{flex:0 0 auto;gap:.25rem}.card-editor__fold-button{width:2.25rem;min-width:2.25rem;height:2.25rem;min-height:2.25rem;padding:0}.card-editor__pagination-controls>.button{min-height:2.25rem;padding:.375rem .625rem;font-size:.8125rem}.card-editor__pagination-summary{gap:.375rem}.card-editor__pagination-summary>span{font-size:.75rem;white-space:nowrap}}.card-editor__settings-backdrop{z-index:50;padding:.75rem}.card-editor__settings-dialog{position:relative;display:flex;width:100%;max-width:42rem;max-height:85vh;flex-direction:column;overflow-y:auto;padding:1rem;border:1px solid var(--theme-border);border-radius:.75rem;background:var(--theme-surface);box-shadow:var(--shadow-xl)}.card-editor__settings-close{position:absolute;top:.75rem;right:.75rem;width:2.25rem;min-width:2.25rem;height:2.25rem;min-height:2.25rem}.card-editor__settings-title{margin:0 3rem 1.25rem 0;color:var(--theme-text);font-size:1.25rem;font-weight:600}.deck-settings-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:1rem}.deck-settings-field,.deck-settings-fieldset{display:flex;min-width:0;flex-direction:column;gap:.5rem;margin:0;color:var(--theme-text);font-size:.875rem;font-weight:500}.deck-settings-fieldset{padding:0;border:0}.deck-settings-field--wide,.deck-settings-fieldset--wide{grid-column:1 / -1}.deck-settings-legend{margin-bottom:.5rem;color:var(--theme-text);font-size:.875rem;font-weight:500}.deck-settings-suggest-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.deck-settings-ai-button{width:2.5rem;min-width:2.5rem;height:2.5rem;min-height:2.5rem;padding:0;border:0;border-radius:50%;color:var(--theme-text-soft);font-size:1.25rem;opacity:.7}.button.deck-settings-ai-button:hover:not(:disabled){transform:none;background:transparent;color:var(--theme-primary);opacity:1}.deck-settings-input-action{position:relative}.deck-settings-input-action>.field{width:100%;min-width:0;padding-right:2.75rem}.deck-settings-input-action>.deck-settings-ai-button{position:absolute;top:0;right:.125rem;bottom:0;margin-block:auto}.deck-settings-hint{color:var(--theme-text-soft);font-size:.75rem;font-weight:400}.deck-color-options{display:flex;flex-wrap:wrap;gap:.375rem}.deck-color-swatch{display:grid;width:1.75rem;height:1.75rem;min-width:1.75rem;min-height:1.75rem;place-items:center;padding:0;border:2px solid var(--theme-border);border-radius:50%;transition:transform .15s ease,outline-color .15s ease}button.deck-color-swatch:before,button.deck-color-swatch:hover:before{display:none}.deck-color-swatch:hover,.deck-color-swatch.is-selected{z-index:1;transform:scale(1.1)}.deck-color-swatch.is-selected{border-color:#fff;outline:2px solid #111827;outline-offset:1px}.deck-color-swatch__check{color:#fff;font-size:.875rem;font-weight:700;line-height:1;text-shadow:0 1px 3px #000,1px 0 2px #000,-1px 0 2px #000}.card-editor__settings-footer{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--theme-border)}@media (min-width: 640px){.deck-settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.import-page{width:100%;min-width:0;max-width:100%;padding:1rem 1rem 5rem}.import-page__title{width:100%;margin:0 0 .5rem;color:var(--theme-text);font-size:1.5rem;font-weight:700;text-align:center}.import-page__description{width:100%;margin:0 0 1.5rem;color:var(--theme-text-soft);text-align:center}.import-form{width:100%;min-width:0;padding:1rem;border:1px solid color-mix(in srgb,var(--theme-border) 80%,transparent);border-radius:.75rem;background:color-mix(in srgb,var(--theme-surface) 90%,transparent);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.import-form__section{margin-bottom:1.5rem}.import-form__label{display:block;margin-bottom:.5rem;color:var(--theme-text);font-size:.875rem;font-weight:500}.import-form__label--compact{margin-bottom:0}.import-form__input{width:100%;min-width:0;max-width:100%;padding:.5rem .75rem}.import-form__textarea{resize:vertical}.import-api-key-control{position:relative}.import-api-key-field{padding-right:3rem}.import-api-key-toggle{position:absolute;top:.5rem;right:.5rem;width:2rem;min-width:2rem;height:2rem;min-height:2rem;padding:0;color:var(--theme-text-soft)}.import-api-key-toggle:hover:not(:disabled){background:var(--theme-surface-muted);color:var(--theme-text)}.import-form__api-key{margin-bottom:1.25rem}.import-form__hint{margin-top:.25rem;color:var(--theme-text-soft);font-size:.875rem}.import-form__hint--spaced{margin-top:.5rem}.import-tabs{display:flex;margin-bottom:1.25rem;border-bottom:1px solid var(--theme-border)}.import-tabs__tab{min-height:2.75rem;padding:.5rem 1rem;border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;color:var(--theme-text-soft);font-size:.875rem;font-weight:500}button.import-tabs__tab:before,button.import-tabs__tab:hover:before{display:none}.import-tabs__tab:hover{color:var(--theme-text)}.import-tabs__tab.is-selected{border-bottom-color:var(--theme-primary);color:var(--theme-primary)}.import-deck-dropdown{position:relative}.import-deck-dropdown__toggle{position:absolute;top:0;right:.25rem;bottom:0;margin-block:auto;width:2rem;min-width:2rem;height:2rem;min-height:2rem;padding:0;background:transparent;color:var(--theme-text-soft)}.import-deck-dropdown__toggle:hover:not(:disabled){background:var(--theme-surface-muted);color:var(--theme-text)}.import-deck-dropdown__icon{transition:transform .15s ease}.import-deck-dropdown__icon.is-expanded{transform:rotate(180deg)}.import-deck-dropdown__list{position:absolute;z-index:10;top:calc(100% + .25rem);right:0;left:0;max-height:12rem;overflow-y:auto;border:1px solid var(--theme-border);border-radius:.5rem;background:var(--theme-surface);box-shadow:var(--shadow-lg)}.import-deck-dropdown__option{display:flex;width:100%;min-height:2.75rem;align-items:center;justify-content:space-between;gap:.75rem;padding:.75rem;border:0;border-bottom:1px solid var(--theme-border);border-radius:0;background:transparent;color:var(--theme-text);text-align:left}.import-deck-dropdown__option:last-child{border-bottom:0}button.import-deck-dropdown__option:before,button.import-deck-dropdown__option:hover:before{display:none}.import-deck-dropdown__option:hover{background:var(--theme-surface-muted)}.import-deck-dropdown__option-name{font-weight:500}.import-deck-dropdown__option-count{color:var(--theme-text-soft);font-size:.875rem}.import-form__field-group{margin-bottom:1.25rem}.import-form__field-group--compact{max-width:24rem}.import-card-count{display:flex;align-items:center;gap:.5rem}.import-card-count__stepper{width:2.75rem;min-width:2.75rem;height:2.75rem;min-height:2.75rem;flex:0 0 auto;padding:0}.import-card-count__input{width:5rem;height:2.75rem;padding-inline:.5rem;font-size:1.125rem;font-weight:600;text-align:center}.import-advanced-settings{margin-bottom:1.25rem;padding-inline:1rem;border:1px solid var(--theme-border);border-radius:.5rem}.import-advanced-settings__summary{padding-block:.75rem;color:var(--theme-text-soft);font-size:.875rem;font-weight:500;cursor:pointer}.import-advanced-settings__body{padding-block:1rem;border-top:1px solid var(--theme-border)}.import-model-error{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.5rem}.import-model-error .import-form__hint{margin-top:0}.import-retry-button{min-width:0;min-height:2rem;padding:.25rem;background:transparent;color:var(--theme-primary);font-size:.875rem;font-weight:500;text-decoration:none}button.import-retry-button:before,button.import-retry-button:hover:before{display:none}.import-retry-button:hover{text-decoration:underline}.import-form__file-label{margin-bottom:.5rem}.import-file-input{display:none}.import-preview{margin-bottom:1.5rem}.import-preview__title{margin:0 0 .5rem;color:var(--theme-text);font-size:.875rem;font-weight:600}.import-preview__list{max-height:16rem;overflow-y:auto;border:1px solid var(--theme-border);border-radius:.5rem}.import-preview__pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;margin-top:.75rem;color:var(--theme-text-soft);font-size:.875rem}.import-preview__pagination-controls{display:flex;gap:.5rem}.import-preview__card{display:grid;grid-template-columns:minmax(0,1fr);gap:.5rem;padding:.75rem;border-bottom:1px solid var(--theme-border)}.import-preview__card:last-child{border-bottom:0}.import-preview__front,.import-preview__back{margin:0;overflow-wrap:anywhere;font-size:.875rem}.import-preview__front{color:var(--theme-text)}.import-preview__back{color:var(--theme-text-soft)}.import-draft-status{margin:0 0 .75rem;color:#047857;font-size:.875rem;font-weight:500;text-align:center}.import-submit-row{display:grid;width:100%;grid-template-columns:minmax(0,1fr);align-items:center;gap:.5rem}.import-submit{justify-self:center}.import-submit--generated{width:100%;max-width:24rem}.ai-generator-indicator{position:relative;display:inline-grid;width:1.25rem;height:1.25rem;flex:0 0 auto;place-items:center}.ai-generator-indicator>svg{font-size:1rem}.import-file-button{width:2.75rem;min-width:2.75rem;height:2.75rem;min-height:2.75rem;justify-self:end;background:var(--theme-surface-muted);color:var(--theme-text-soft)}.import-file-button:hover:not(:disabled){color:var(--theme-primary)}.import-file-button__icon{font-size:1rem}@media (min-width: 640px){.import-form{padding:1.5rem}.import-preview__card{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 768px){.import-page{max-width:48rem;margin-inline:auto;padding-bottom:1rem}}.import-submit-row.is-text-import{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}.import-submit-row.is-text-import .import-submit{grid-column:2}.import-submit-row.is-text-import .import-file-button{grid-column:3}.settings-page{width:100%;max-width:48rem;margin-inline:auto;padding:1rem}.settings-page__header{margin-bottom:1.5rem}.settings-page__title{margin:0;font-size:1.875rem;text-align:center}.settings-page__description{margin-top:.5rem;color:var(--theme-text-soft);text-align:center}.settings-section{padding-block:1.25rem;border-bottom:1px solid var(--theme-border)}.settings-section--sync{padding-top:1.25rem;border-top:1px solid var(--theme-border)}.settings-section--appearance{padding-block:.75rem}.settings-api-key__label{display:block;margin-bottom:.5rem;color:var(--theme-text);font-size:.875rem;font-weight:500}.settings-api-key__control{position:relative}.settings-api-key__input{width:100%;padding-right:3rem}.settings-api-key__toggle{position:absolute;top:.25rem;right:.25rem;width:2.25rem;min-width:2.25rem;height:2.25rem;min-height:2.25rem;padding:0;color:var(--theme-text-soft)}.settings-section__intro{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:1rem}.settings-section__title{margin:0;color:var(--theme-text);font-size:1.125rem;font-weight:600}.settings-section__description{margin:.25rem 0 0;color:var(--theme-text-soft);font-size:.875rem}.settings-alert{padding:1rem;border:1px solid var(--theme-border);border-radius:.625rem;font-size:.875rem}.settings-alert--warning{border-color:#fcd34d;background:#fffbeb;color:#78350f}.settings-alert__title{margin:0;font-weight:600}.sync-account{display:flex;flex-direction:column;gap:1rem}.sync-account__identity{min-width:0}.sync-account__name,.sync-account__email{overflow:hidden;margin:0;text-overflow:ellipsis;white-space:nowrap}.sync-account__name{color:var(--theme-text);font-weight:500}.sync-account__email{color:var(--theme-text-soft);font-size:.875rem}.sync-account__time{margin:.25rem 0 0;color:var(--theme-text-soft);font-size:.75rem}.sync-account__actions{display:flex;flex:0 0 auto;flex-wrap:wrap;gap:.5rem}.sync-account__google-icon{color:#ef4444}.is-spinning{animation:settings-spin .9s linear infinite}.form-message{margin:.75rem 0 0}.appearance-section__heading{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;margin-bottom:.5rem}.appearance-section__heading .settings-section__title{font-size:1rem}.appearance-section__hint{margin:0;color:var(--theme-text-soft);font-size:.75rem}.theme-mode-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.5rem}.theme-mode-control{display:flex;align-items:center;gap:.5rem;color:var(--theme-text-soft);font-size:.75rem}.theme-mode-toggle{position:relative;display:inline-flex;width:2.75rem;height:1.5rem;min-width:2.75rem;min-height:1.5rem;flex:0 0 auto;padding:0;overflow:hidden;border:1px solid var(--theme-border);border-radius:999px;background:var(--theme-surface-muted);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;transition:background-color .15s ease,border-color .15s ease}button.theme-mode-toggle:before,button.theme-mode-toggle:hover:before{display:none}.theme-mode-toggle:focus-visible{outline:2px solid var(--theme-primary);outline-offset:2px}.theme-mode-toggle-thumb{position:absolute;top:2px;left:2px;width:20px;height:20px;pointer-events:none;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0000004d;transition:transform .15s ease}.theme-system-button{min-height:2rem;min-width:0;padding:.25rem .5rem;gap:.25rem;font-size:.75rem}.theme-system-button.is-selected{border-color:var(--theme-primary);background:var(--theme-primary-soft);color:var(--theme-primary)}.theme-picker{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.25rem}.theme-picker__choice{display:flex;min-width:0;min-height:3rem;flex-direction:column;align-items:center;justify-content:center;gap:.25rem;padding:.25rem;border:1px solid var(--theme-border);border-radius:.625rem;background:var(--theme-surface);color:var(--theme-text-soft);font-size:.625rem;font-weight:500;line-height:1.25;transition:background-color .15s ease,border-color .15s ease,color .15s ease}button.theme-picker__choice:before,button.theme-picker__choice:hover:before{display:none}.theme-picker__choice:hover{background:var(--theme-surface-muted)}.theme-picker__choice.is-selected{border-color:var(--theme-primary);background:var(--theme-primary-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--theme-primary) 30%,transparent);color:var(--theme-primary)}.theme-picker__choice:focus-visible,.theme-system-button:focus-visible{outline:2px solid var(--theme-primary);outline-offset:2px}.theme-picker__swatch{width:.75rem;height:.75rem;flex:0 0 auto;border:1px solid rgb(0 0 0 / 10%);border-radius:50%}.theme-picker__label{width:100%;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap}@keyframes settings-spin{to{transform:rotate(360deg)}}@media (min-width: 640px){.settings-page{padding:1rem 1.5rem}.sync-account{flex-direction:row;align-items:center;justify-content:space-between}.theme-picker{grid-template-columns:repeat(7,minmax(0,1fr));gap:.375rem}}@media (min-width: 1024px){.theme-picker{grid-template-columns:repeat(9,minmax(0,1fr))}}@media (prefers-reduced-motion: reduce){.is-spinning{animation:none}}
