*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}:root{--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono: ui-monospace, "SF Mono", SFMono-Regular, "JetBrains Mono", Menlo, Consolas, monospace;--radius-xs: 6px;--radius-sm: 9px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 22px;--radius-pill: 999px;--content-narrow: 640px;--content-wide: 860px;--gutter-x: clamp(20px, 3.2vw, 56px);--gutter-y: clamp(28px, 3vw, 52px);--ease: cubic-bezier(.22, .61, .36, 1);--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in: cubic-bezier(.4, 0, .9, .35);--ease-spring: cubic-bezier(.2, 1.12, .36, 1);--ease-flip: cubic-bezier(.5, .05, .2, 1);--dur-fast: .13s;--dur: .2s;--card-exit: .26s;--card-enter: .34s;--flip-dur: .52s}:root,html[data-theme=dark]{color-scheme:dark;--bg-page: #08080b;--bg-surface: #121216;--bg-surface-hover: #17171c;--bg-elevated: #1a1a20;--bg-inset: #0d0d11;--text-primary: #f6f6f8;--text-secondary: #c8c8d0;--text-muted: #8b8b96;--text-dim: #62626d;--border: #24242c;--border-strong: #33333d;--accent: #7c88ff;--accent-hover: #939dff;--accent-soft: rgba(124, 136, 255, .13);--accent-ring: rgba(124, 136, 255, .32);--glow: rgba(124, 136, 255, .1);--btn-primary-bg: #f6f6f8;--btn-primary-text: #0a0a0d;--btn-primary-hover: #ffffff;--btn-primary-disabled: #3a3a44;--btn-secondary-bg: #17171c;--btn-secondary-text: #eaeaf0;--btn-secondary-border: #2c2c36;--btn-secondary-hover: #21212a;--input-bg: #101016;--input-text: #f2f2f6;--input-border: #2b2b35;--input-focus-border: var(--accent);--input-placeholder: #5e5e69;--color-correct: #34d17f;--color-correct-hover: #2bb96e;--color-correct-ink: #04140b;--color-correct-soft: rgba(52, 209, 127, .13);--color-wrong: #ff5f57;--color-wrong-hover: #ec4a42;--color-wrong-soft: rgba(255, 95, 87, .13);--color-warning: #f5b544;--color-warning-hover: #e0a231;--color-warning-soft: rgba(245, 181, 68, .13);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .5);--shadow-sm: 0 2px 10px rgba(0, 0, 0, .45);--shadow-md: 0 12px 32px -12px rgba(0, 0, 0, .8);--shadow-lg: 0 28px 64px -20px rgba(0, 0, 0, .85);--shadow-card: inset 0 1px 0 rgba(255, 255, 255, .03), 0 10px 26px -18px rgba(0, 0, 0, .9);--scrim: rgba(4, 4, 8, .7);--theme-color: #08080b}html[data-theme=light]{color-scheme:light;--bg-page: #f6f7f9;--bg-surface: #ffffff;--bg-surface-hover: #fbfbfd;--bg-elevated: #ffffff;--bg-inset: #f1f2f5;--text-primary: #101014;--text-secondary: #3c3c46;--text-muted: #6b6b78;--text-dim: #92929d;--border: #e5e6eb;--border-strong: #d1d2da;--accent: #4f46e5;--accent-hover: #4338ca;--accent-soft: rgba(79, 70, 229, .09);--accent-ring: rgba(79, 70, 229, .25);--glow: rgba(79, 70, 229, .07);--btn-primary-bg: #14141a;--btn-primary-text: #ffffff;--btn-primary-hover: #26262f;--btn-primary-disabled: #c4c5cd;--btn-secondary-bg: #ffffff;--btn-secondary-text: #24242c;--btn-secondary-border: #dcdde3;--btn-secondary-hover: #f4f4f7;--input-bg: #ffffff;--input-text: #101014;--input-border: #d9dae1;--input-focus-border: var(--accent);--input-placeholder: #a1a2ac;--color-correct: #12a05e;--color-correct-hover: #0e8a50;--color-correct-ink: #ffffff;--color-correct-soft: rgba(18, 160, 94, .09);--color-wrong: #e03b30;--color-wrong-hover: #c62f26;--color-wrong-soft: rgba(224, 59, 48, .09);--color-warning: #c8830a;--color-warning-hover: #ad7106;--color-warning-soft: rgba(200, 131, 10, .11);--shadow-xs: 0 1px 2px rgba(16, 16, 24, .05);--shadow-sm: 0 2px 10px rgba(16, 16, 24, .06);--shadow-md: 0 14px 34px -14px rgba(16, 16, 24, .18);--shadow-lg: 0 30px 64px -22px rgba(16, 16, 24, .24);--shadow-card: 0 1px 2px rgba(16, 16, 24, .04), 0 10px 22px -18px rgba(16, 16, 24, .26);--scrim: rgba(22, 22, 30, .4);--theme-color: #f6f7f9}html[data-theme=ocean]{color-scheme:dark;--bg-page: #05131f;--bg-surface: #0b2032;--bg-surface-hover: #0f293f;--bg-elevated: #123049;--bg-inset: #081a29;--text-primary: #eaf4fc;--text-secondary: #b9d5ea;--text-muted: #7ea6c4;--text-dim: #5c85a5;--border: #143349;--border-strong: #1e4767;--accent: #38bdf8;--accent-hover: #55cbff;--accent-soft: rgba(56, 189, 248, .13);--accent-ring: rgba(56, 189, 248, .3);--glow: rgba(56, 189, 248, .11);--btn-primary-bg: #38bdf8;--btn-primary-text: #04121c;--btn-primary-hover: #55cbff;--btn-primary-disabled: #2a4d64;--btn-secondary-bg: #0f293f;--btn-secondary-text: #eaf4fc;--btn-secondary-border: #1e4767;--btn-secondary-hover: #163752;--input-bg: #081e2f;--input-text: #eaf4fc;--input-border: #1c4262;--input-focus-border: var(--accent);--input-placeholder: #5b83a2;--color-correct: #2ecc8a;--color-correct-hover: #26b678;--color-correct-ink: #03140d;--color-correct-soft: rgba(46, 204, 138, .13);--color-wrong: #ff6b6b;--color-wrong-hover: #ec5555;--color-wrong-soft: rgba(255, 107, 107, .13);--color-warning: #f5b544;--color-warning-hover: #e0a231;--color-warning-soft: rgba(245, 181, 68, .13);--shadow-xs: 0 1px 2px rgba(0, 8, 16, .5);--shadow-sm: 0 2px 10px rgba(0, 8, 16, .45);--shadow-md: 0 12px 32px -12px rgba(0, 8, 16, .8);--shadow-lg: 0 28px 64px -20px rgba(0, 8, 16, .9);--shadow-card: inset 0 1px 0 rgba(255, 255, 255, .04), 0 10px 26px -18px rgba(0, 8, 16, .9);--scrim: rgba(2, 12, 22, .7);--theme-color: #05131f}html[data-theme=forest]{color-scheme:dark;--bg-page: #07140d;--bg-surface: #0e2116;--bg-surface-hover: #132b1d;--bg-elevated: #163220;--bg-inset: #0a1a11;--text-primary: #e9f6ec;--text-secondary: #bcdcc3;--text-muted: #82ab8c;--text-dim: #5f8869;--border: #163524;--border-strong: #22492f;--accent: #46d787;--accent-hover: #62e39c;--accent-soft: rgba(70, 215, 135, .13);--accent-ring: rgba(70, 215, 135, .3);--glow: rgba(70, 215, 135, .1);--btn-primary-bg: #46d787;--btn-primary-text: #04140b;--btn-primary-hover: #62e39c;--btn-primary-disabled: #2c5439;--btn-secondary-bg: #132b1d;--btn-secondary-text: #e9f6ec;--btn-secondary-border: #22492f;--btn-secondary-hover: #1a3826;--input-bg: #0b1e13;--input-text: #e9f6ec;--input-border: #204429;--input-focus-border: var(--accent);--input-placeholder: #5d8367;--color-correct: #46d787;--color-correct-hover: #35c274;--color-correct-ink: #04140b;--color-correct-soft: rgba(70, 215, 135, .13);--color-wrong: #ff6b6b;--color-wrong-hover: #ec5555;--color-wrong-soft: rgba(255, 107, 107, .13);--color-warning: #f2c14e;--color-warning-hover: #dcac3b;--color-warning-soft: rgba(242, 193, 78, .13);--shadow-xs: 0 1px 2px rgba(0, 12, 6, .5);--shadow-sm: 0 2px 10px rgba(0, 12, 6, .45);--shadow-md: 0 12px 32px -12px rgba(0, 12, 6, .8);--shadow-lg: 0 28px 64px -20px rgba(0, 12, 6, .9);--shadow-card: inset 0 1px 0 rgba(255, 255, 255, .04), 0 10px 26px -18px rgba(0, 12, 6, .9);--scrim: rgba(3, 14, 8, .7);--theme-color: #07140d}html[data-theme=sunset]{color-scheme:dark;--bg-page: #170e1e;--bg-surface: #22152c;--bg-surface-hover: #2a1a36;--bg-elevated: #301d3d;--bg-inset: #1b1024;--text-primary: #fbeaf6;--text-secondary: #e0c2d8;--text-muted: #b592ac;--text-dim: #8d6a85;--border: #33203f;--border-strong: #472e57;--accent: #f472b6;--accent-hover: #f88ec6;--accent-soft: rgba(244, 114, 182, .13);--accent-ring: rgba(244, 114, 182, .3);--glow: rgba(244, 114, 182, .11);--btn-primary-bg: #f472b6;--btn-primary-text: #1c0a15;--btn-primary-hover: #f88ec6;--btn-primary-disabled: #6b4359;--btn-secondary-bg: #2a1a36;--btn-secondary-text: #fbeaf6;--btn-secondary-border: #472e57;--btn-secondary-hover: #342141;--input-bg: #1e1327;--input-text: #fbeaf6;--input-border: #422a51;--input-focus-border: var(--accent);--input-placeholder: #8a6682;--color-correct: #3ed492;--color-correct-hover: #32bd80;--color-correct-ink: #04140b;--color-correct-soft: rgba(62, 212, 146, .13);--color-wrong: #ff6b81;--color-wrong-hover: #ec5670;--color-wrong-soft: rgba(255, 107, 129, .13);--color-warning: #f9b572;--color-warning-hover: #e5a25f;--color-warning-soft: rgba(249, 181, 114, .13);--shadow-xs: 0 1px 2px rgba(10, 2, 12, .5);--shadow-sm: 0 2px 10px rgba(10, 2, 12, .45);--shadow-md: 0 12px 32px -12px rgba(10, 2, 12, .8);--shadow-lg: 0 28px 64px -20px rgba(10, 2, 12, .9);--shadow-card: inset 0 1px 0 rgba(255, 255, 255, .04), 0 10px 26px -18px rgba(10, 2, 12, .9);--scrim: rgba(14, 6, 20, .7);--theme-color: #170e1e}html{-webkit-text-size-adjust:100%}body{font-family:var(--font-sans);font-size:16px;line-height:1.55;color:var(--text-secondary);background-color:var(--bg-page);min-height:100vh;min-height:-webkit-fill-available;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-overflow-scrolling:touch;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background-image:radial-gradient(1100px 620px at 10% -14%,var(--glow),transparent 62%),radial-gradient(900px 520px at 104% -4%,var(--accent-soft),transparent 58%)}h1,h2,h3,h4{color:var(--text-primary);font-weight:650;line-height:1.15;letter-spacing:-.021em;text-wrap:balance}h1{font-size:clamp(2rem,1.4rem + 2.2vw,3rem);font-weight:700;letter-spacing:-.035em;margin-bottom:40px}h2{font-size:clamp(1.35rem,1.1rem + .9vw,1.7rem);margin-bottom:24px}h3{font-size:1.05rem;font-weight:620;color:var(--text-primary);margin-bottom:14px;letter-spacing:-.012em}a:not(.btn):not(.pwa-nav-btn){color:var(--accent);text-underline-offset:2px}a:not(.btn):not(.pwa-nav-btn):hover{color:var(--accent-hover)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-xs)}::selection{background:var(--accent-soft);color:var(--text-primary)}*{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-strong);border:3px solid transparent;background-clip:content-box;border-radius:var(--radius-pill)}::-webkit-scrollbar-thumb:hover{background:var(--text-dim);background-clip:content-box}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.kbd-hint{font-size:.75rem;color:var(--text-dim);font-family:var(--font-mono)}.container{width:100%;min-height:100vh;min-height:-webkit-fill-available;overflow-x:hidden}.view{display:none;position:relative;width:100%;min-height:100vh;padding:calc(var(--gutter-y) + env(safe-area-inset-top)) calc(var(--gutter-x) + env(safe-area-inset-right)) calc(var(--gutter-y) + 24px + env(safe-area-inset-bottom)) calc(var(--gutter-x) + env(safe-area-inset-left))}.view.active{display:block}.page-enter{animation:viewIn .34s var(--ease-out) both}@keyframes viewIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.version-info{position:absolute;bottom:max(22px,env(safe-area-inset-bottom));right:max(26px,env(safe-area-inset-right));font-size:.7rem;letter-spacing:.04em;color:var(--text-dim);font-family:var(--font-mono)}.gold-stamp{position:absolute;bottom:max(20px,env(safe-area-inset-bottom));left:max(20px,env(safe-area-inset-left));max-width:150px;height:auto;z-index:10}.editor-header,.setup-header,.results-header,.settings-header{display:flex;align-items:center;gap:18px;margin-bottom:40px;padding-bottom:22px;border-bottom:1px solid var(--border)}.editor-header h2,.setup-header h2,.results-header h2,.settings-header h2{margin:0;flex:1;font-size:clamp(1.4rem,1.1rem + 1vw,1.9rem);letter-spacing:-.028em}a.btn,a.pwa-nav-btn{text-decoration:none;box-sizing:border-box}.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 20px;background:var(--btn-secondary-bg);color:var(--btn-secondary-text);border:1px solid var(--btn-secondary-border);border-radius:var(--radius-sm);font-family:inherit;font-size:.925rem;font-weight:550;letter-spacing:-.005em;line-height:1.2;white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;transition:background-color var(--dur) var(--ease),border-color var(--dur) var(--ease),color var(--dur) var(--ease),box-shadow var(--dur) var(--ease),transform var(--dur-fast) var(--ease)}.btn:hover:not(:disabled){background:var(--btn-secondary-hover);border-color:var(--border-strong)}.btn:active{transform:scale(.975)}.btn:disabled,.btn[aria-disabled=true]{cursor:not-allowed;opacity:.5;transform:none;box-shadow:none}.btn-primary{background:var(--btn-primary-bg);color:var(--btn-primary-text);box-shadow:var(--shadow-xs);border-color:transparent}.btn-primary:hover:not(:disabled){background:var(--btn-primary-hover);box-shadow:var(--shadow-sm)}.btn-primary:disabled{background:var(--btn-primary-disabled)}.btn-secondary{background:var(--btn-secondary-bg);color:var(--btn-secondary-text);border-color:var(--btn-secondary-border)}.btn-secondary:hover:not(:disabled){background:var(--btn-secondary-hover);border-color:var(--border-strong)}.btn-danger{background:var(--color-wrong);color:#fff;border-color:transparent}.btn-danger:hover:not(:disabled){background:var(--color-wrong-hover)}.btn-success{background:var(--color-correct);color:var(--color-correct-ink);border-color:transparent}.btn-success:hover:not(:disabled){background:var(--color-correct-hover)}.btn-warning{background:var(--color-warning);color:#1c1204;border-color:transparent}.btn-warning:hover:not(:disabled){background:var(--color-warning-hover)}.btn-small,.btn-sm{padding:8px 14px;font-size:.85rem;border-radius:var(--radius-xs)}.btn-icon{padding:7px 13px;font-size:.82rem;border-radius:var(--radius-xs)}.btn-tiny{padding:5px 10px;font-size:.78rem;border-radius:var(--radius-xs)}.button-group{display:flex;flex-wrap:wrap;gap:10px}input,select,textarea,button{font-family:inherit}.form-group{margin-bottom:22px;max-width:var(--content-narrow)}.form-group>label:not(.checkbox-label),.hints-section>label,.card-round-select-wrapper label,.theme-select-row label,.category-select-row label,.questions-header>span{display:block;margin-bottom:7px;font-size:.8rem;font-weight:560;letter-spacing:.01em;color:var(--text-muted)}input[type=text],input[type=number],input[type=search],select,textarea,.select-input,.text-input{width:100%;padding:11px 14px;background:var(--input-bg);color:var(--input-text);border:1px solid var(--input-border);border-radius:var(--radius-sm);font-size:.95rem;line-height:1.5;transition:border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease),background-color var(--dur) var(--ease)}input::placeholder,textarea::placeholder{color:var(--input-placeholder)}input[type=text]:hover,input[type=search]:hover,select:hover,textarea:hover{border-color:var(--border-strong)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--input-focus-border);box-shadow:0 0 0 3px var(--accent-ring)}textarea{resize:vertical;min-height:76px}select,.select-input,.theme-select,.category-select,.card-round-select,.read-voice-select{appearance:none;-webkit-appearance:none;padding-right:38px;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238b8b96' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;cursor:pointer}select option{background:var(--bg-elevated);color:var(--text-primary)}.hint,.settings-version{display:block;margin-top:7px;font-size:.79rem;color:var(--text-dim)}.settings-version{font-family:var(--font-mono);letter-spacing:.03em}.checkbox-label{display:flex;align-items:flex-start;gap:11px;padding:13px 15px;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:.9rem;color:var(--text-secondary);cursor:pointer;transition:border-color var(--dur) var(--ease),background-color var(--dur) var(--ease)}.checkbox-label:hover{border-color:var(--border-strong);background:var(--bg-surface-hover)}.checkbox-label:has(input:checked){border-color:var(--accent);background:var(--accent-soft);color:var(--text-primary)}.checkbox-label input[type=checkbox]{width:17px;height:17px;margin-top:2px;flex-shrink:0;accent-color:var(--accent);cursor:pointer}.color-input-row{display:flex;align-items:center;gap:10px}.color-input-row input[type=color]{width:46px;height:42px;padding:3px;background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-sm);cursor:pointer}.color-input-row input[type=color]::-webkit-color-swatch-wrapper{padding:0}.color-input-row input[type=color]::-webkit-color-swatch{border:none;border-radius:5px}.color-input-row .color-text-input{max-width:150px;font-family:var(--font-mono);font-size:.86rem}input[type=file]{width:100%;font-size:.85rem;color:var(--text-muted)}input[type=file]::file-selector-button{margin-right:12px;padding:8px 14px;background:var(--btn-secondary-bg);color:var(--btn-secondary-text);border:1px solid var(--btn-secondary-border);border-radius:var(--radius-xs);font-family:inherit;font-size:.83rem;font-weight:550;cursor:pointer;transition:background-color var(--dur) var(--ease)}input[type=file]::file-selector-button:hover{background:var(--btn-secondary-hover)}.theme-select-row,.category-select-row{display:flex;align-items:center;gap:10px}.theme-select-row label,.category-select-row label{margin-bottom:0;white-space:nowrap}.theme-select,.library-toolbar .category-select,.bundled-sets-header .category-select{width:auto;min-width:130px;padding:9px 36px 9px 13px;font-size:.875rem;font-weight:520;background-color:var(--btn-secondary-bg);border-color:var(--btn-secondary-border);color:var(--btn-secondary-text)}.theme-select:hover,.library-toolbar .category-select:hover,.bundled-sets-header .category-select:hover{background-color:var(--btn-secondary-hover)}.main-header{margin-bottom:40px}.header-top{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px}.header-top h1,.header-top .site-logo-fallback{margin-bottom:0}.site-logo{display:flex;align-items:center}.site-logo img{display:block;max-height:46px;width:auto}.site-logo img.failed{display:none}.site-logo-fallback{display:none;font-size:clamp(1.75rem,1.3rem + 1.8vw,2.5rem);font-weight:700;letter-spacing:-.035em;color:var(--text-primary)}.site-logo-fallback.visible{display:block}.library-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px;margin-bottom:28px}.library-toolbar .search-row{margin-bottom:0;flex:1 1 220px}.search-row{position:relative;display:flex;align-items:center;max-width:380px;margin-bottom:28px}.search-row input{width:100%;padding:11px 14px 11px 40px;background-color:var(--input-bg);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238b8b96' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.6-3.6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:left 13px center}.search-row input::-webkit-search-cancel-button{-webkit-appearance:none;appearance:none}.sets-container h2{display:flex;align-items:baseline;gap:10px;margin-bottom:18px;font-size:.78rem;font-weight:620;text-transform:uppercase;letter-spacing:.11em;color:var(--text-muted)}.bundled-sets-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;margin-bottom:18px}.bundled-sets-header h2{margin-bottom:0}.sets-container h2 .count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:18px;padding:0 6px;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-pill);font-size:.68rem;letter-spacing:.02em;color:var(--text-dim);font-variant-numeric:tabular-nums}#bundledSetsContainer{margin-bottom:44px}.sets-list{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(290px,1fr))}.sets-list>*,.results-content>*{animation:riseIn .32s var(--ease-out) backwards}.sets-list>:nth-child(2),.results-content>:nth-child(2){animation-delay:35ms}.sets-list>:nth-child(3),.results-content>:nth-child(3){animation-delay:70ms}.sets-list>:nth-child(4),.results-content>:nth-child(4){animation-delay:105ms}.sets-list>:nth-child(5){animation-delay:.13s}.sets-list>:nth-child(6){animation-delay:155ms}.sets-list>:nth-child(7){animation-delay:175ms}.sets-list>:nth-child(n+8){animation-delay:195ms}@keyframes riseIn{0%{opacity:0;transform:translate3d(0,10px,0)}}.set-item{position:relative;display:flex;flex-direction:column;gap:16px;overflow:hidden;padding:22px 22px 18px;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-card);transition:border-color var(--dur) var(--ease),background-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease),transform var(--dur) var(--ease)}.set-item:after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(160deg,var(--accent-soft),transparent 42%);opacity:0;pointer-events:none;transition:opacity var(--dur) var(--ease)}.set-item:hover{transform:translateY(-2px);border-color:var(--border-strong);background:var(--bg-surface-hover);box-shadow:var(--shadow-md)}.set-item:hover:after{opacity:1}.set-item.bundled-set{background:linear-gradient(180deg,var(--bg-surface-hover),var(--bg-surface))}.set-item-color{position:absolute;top:20px;bottom:20px;left:0;width:3px;border-radius:0 var(--radius-pill) var(--radius-pill) 0;opacity:.85;transition:opacity var(--dur) var(--ease),top var(--dur) var(--ease),bottom var(--dur) var(--ease)}.set-item:hover .set-item-color{top:12px;bottom:12px;opacity:1}.set-info{position:relative;z-index:1;flex:1;display:block;width:100%;padding:0;background:none;border:none;font:inherit;color:inherit;text-align:left;cursor:pointer}.set-info:disabled,.set-info.static{cursor:default;opacity:1}.set-name{font-size:1.02rem;font-weight:620;letter-spacing:-.014em;color:var(--text-primary);margin-bottom:5px;line-height:1.35}.set-meta{font-size:.815rem;line-height:1.5;color:var(--text-muted)}.set-actions{position:relative;z-index:1;display:flex;gap:7px;flex-wrap:wrap}.set-actions .btn-secondary{background:transparent;border-color:var(--border);color:var(--text-muted)}.set-actions .btn-secondary:hover{background:var(--btn-secondary-hover);color:var(--text-primary);border-color:var(--border-strong)}.set-actions .btn-danger{background:transparent;border-color:var(--border);color:var(--text-muted)}.set-actions .btn-danger:hover{background:var(--color-wrong-soft);border-color:var(--color-wrong);color:var(--color-wrong)}.bundled-badge{display:inline-block;margin-left:8px;padding:2px 8px;background:var(--accent-soft);border-radius:var(--radius-xs);font-size:.68rem;font-weight:600;color:var(--accent);text-transform:uppercase;letter-spacing:.06em}.empty-message{grid-column:1 / -1;padding:44px 24px;text-align:center;color:var(--text-dim);font-size:.92rem;background:var(--bg-surface);border:1px dashed var(--border-strong);border-radius:var(--radius-md)}.settings-content,.setup-content{display:flex;flex-direction:column;gap:20px;max-width:var(--content-narrow);padding:clamp(20px,2.2vw,30px);background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.setup-content{gap:4px}.setup-content .form-group{margin-bottom:18px}.setup-content .btn-primary{align-self:flex-start;margin-top:10px;padding:13px 26px}.settings-update-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.settings-update-row .hint{margin-top:0}.editor-grid{display:grid;grid-template-columns:minmax(280px,360px) minmax(0,1fr);gap:clamp(24px,2.6vw,48px);align-items:start}.editor-meta{position:sticky;top:var(--gutter-y);max-height:calc(100vh - var(--gutter-y) * 2);overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.editor-meta .form-group,.editor-meta .rounds-section{max-width:none}.editor-cards{min-width:0}.rounds-section,.cards-editor{margin-bottom:28px}@media(max-width:1023px){.editor-grid{grid-template-columns:minmax(0,1fr)}.editor-meta{position:static;max-height:none;overflow:visible;max-width:var(--content-wide)}}.rounds-section{padding:20px;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md)}.rounds-header,.cards-header{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px}.rounds-header h3,.cards-header h3{margin:0}.rounds-list{display:flex;flex-wrap:wrap;gap:8px}.round-item{display:flex;align-items:center;gap:8px;padding:7px 8px 7px 14px;background:var(--bg-inset);border:1px solid var(--border);border-radius:var(--radius-pill);font-size:.85rem;color:var(--text-secondary)}.cards-header{padding-bottom:16px;border-bottom:1px solid var(--border)}.cards-header-actions{display:flex;gap:8px}.cards-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(440px,1fr));align-content:start;gap:14px;margin-top:18px}@media(max-width:620px){.cards-list{grid-template-columns:minmax(0,1fr)}}.card-item{padding:20px;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-card);transition:border-color var(--dur) var(--ease)}.card-item:focus-within{border-color:var(--border-strong)}.card-item-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid var(--border)}.card-item-number{font-size:.72rem;font-weight:650;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted)}.card-item-header .btn-danger{background:transparent;border-color:var(--border);color:var(--text-muted)}.card-item-header .btn-danger:hover{background:var(--color-wrong-soft);border-color:var(--color-wrong);color:var(--color-wrong)}.card-item-inputs{display:flex;flex-direction:column;gap:16px}.card-item-inputs textarea{width:100%}.card-round-select-wrapper{display:flex;align-items:center;gap:10px}.card-round-select-wrapper label{margin-bottom:0}.card-round-select-wrapper select{width:auto;min-width:150px;padding:8px 34px 8px 12px;font-size:.86rem}.questions-section{padding:15px;background:var(--bg-inset);border:1px solid var(--border);border-radius:var(--radius-sm)}.questions-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.questions-header>span{margin-bottom:0}.questions-list{display:flex;flex-direction:column;gap:8px}.question-item{display:flex;align-items:flex-start;gap:8px;border-radius:var(--radius-sm);transition:opacity var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}.question-item.dragging{opacity:.4}.question-item.question-placeholder{box-shadow:0 -2px 0 var(--accent)}.question-drag-handle{display:flex;align-items:center;justify-content:center;width:26px;align-self:stretch;min-height:40px;border-radius:var(--radius-xs);color:var(--text-dim);font-size:.95rem;letter-spacing:-1px;cursor:grab;-webkit-user-select:none;user-select:none;transition:background-color var(--dur) var(--ease),color var(--dur) var(--ease)}.question-item:not(.dragging) .question-drag-handle:hover{background:var(--bg-surface-hover);color:var(--text-secondary)}.question-drag-handle:active{cursor:grabbing}.question-input-wrapper{flex:1}.question-input-wrapper textarea{min-height:44px;padding:10px 13px;font-size:.92rem}.question-item .btn-tiny{margin-top:6px;background:transparent;border-color:var(--border);color:var(--text-dim)}.question-item .btn-tiny:hover{background:var(--color-wrong-soft);border-color:var(--color-wrong);color:var(--color-wrong)}.answer-syntax-hint{display:flex;flex-direction:column;gap:3px;margin-top:-8px;padding-left:2px}.answer-syntax-hint small{font-size:.755rem;line-height:1.5;color:var(--text-dim)}.hints-section{display:block}.hints-section input.card-hint{border-left:3px solid var(--color-warning)}.hints-section input.card-do-not-accept{border-left:3px solid var(--color-wrong)}.image-input-wrapper{display:flex;flex-direction:column;gap:10px}.image-input-wrapper textarea.card-image-svg{min-height:84px;font-family:var(--font-mono);font-size:.8rem;line-height:1.5}.card-image-clear{align-self:flex-start}.editor-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px;padding-top:24px;border-top:1px solid var(--border)}.editor-actions .btn{padding:12px 24px}.study-header{margin-bottom:34px}.progress-info{text-align:center}#progressText{display:block;margin-bottom:16px;font-size:.76rem;font-weight:620;text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted);font-variant-numeric:tabular-nums}.progress-timeline{position:relative;display:flex;align-items:center;width:100%;max-width:min(1100px,100%);margin-inline:auto}.progress-dot-wrapper{position:relative;flex:1;display:flex;align-items:center;justify-content:center;min-width:0}.progress-dot-wrapper:before,.progress-dot-wrapper:after{content:"";position:absolute;top:50%;height:2px;background:var(--border);transform:translateY(-50%);transition:background-color var(--dur) var(--ease)}.progress-dot-wrapper:before{right:50%;left:0}.progress-dot-wrapper:after{left:50%;right:0}.progress-dot-wrapper:first-child:before,.progress-dot-wrapper:last-child:after{display:none}.progress-dot-wrapper.completed:before,.progress-dot-wrapper.completed:after,.progress-dot-wrapper.current:before{background:var(--accent)}.progress-dot{position:relative;z-index:1;width:11px;height:11px;padding:0;border:2px solid var(--border-strong);border-radius:50%;background:var(--bg-page);cursor:default;transition:transform var(--dur) var(--ease),background-color var(--dur) var(--ease),border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}.progress-dot.current{width:15px;height:15px;background:var(--accent);border-color:var(--accent);box-shadow:0 0 0 5px var(--accent-soft)}.progress-dot.completed{background:var(--accent);border-color:var(--accent);cursor:pointer}.progress-dot.completed.wrong{background:var(--color-wrong);border-color:var(--color-wrong)}.progress-dot.completed:hover{transform:scale(1.45);box-shadow:0 0 0 4px var(--accent-soft)}.progress-dot.completed.wrong:hover{box-shadow:0 0 0 4px var(--color-wrong-soft)}.progress-timeline.compact .progress-dot{width:9px;height:9px}.progress-timeline.compact .progress-dot.current{width:13px;height:13px}.progress-timeline.ultra-compact .progress-dot{width:7px;height:7px;border-width:1.5px}.progress-timeline.ultra-compact .progress-dot.current{width:11px;height:11px}#studyView.view.active{display:flex;flex-direction:column}#studyView .moderator-view{flex:0 0 auto;align-content:start}.card-container{flex:1 1 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;margin-bottom:26px}.card-stage{perspective:2000px;display:flex;flex:1 1 auto;width:100%;max-width:min(1240px,100%);max-height:620px;min-height:300px;transition:transform var(--dur) var(--ease)}.card-container:hover .card-stage{transform:translate3d(0,-3px,0)}.card-stage.slide-out{animation:cardExit var(--card-exit) var(--ease-in) forwards;will-change:transform,opacity}.card-stage.slide-in{animation:cardEnter var(--card-enter) var(--ease-spring) backwards;will-change:transform,opacity}.card-stage.slide-out .flashcard,.card-stage.slide-in .flashcard{transition:none}@keyframes cardExit{0%{transform:translateZ(0) scale(1) rotate(0);opacity:1}to{transform:translate3d(0,42px,0) scale(.9) rotate(-1.4deg);opacity:0}}@keyframes cardEnter{0%{transform:translate3d(0,30px,0) scale(.94);opacity:0}to{transform:translateZ(0) scale(1);opacity:1}}.flashcard{position:relative;flex:1 1 auto;min-height:0;transform-style:preserve-3d;transition:transform var(--flip-dur) var(--ease-flip);cursor:pointer}.flashcard.flipped{transform:rotateY(180deg)}.card-front,.card-back{position:absolute;inset:0;display:flex;flex-direction:column;padding:46px 40px 36px;overflow:hidden;backface-visibility:hidden;-webkit-backface-visibility:hidden;border:1px solid var(--border-strong);border-radius:var(--radius-xl);color:var(--text-primary);box-shadow:var(--shadow-lg)}.card-front{background:radial-gradient(120% 90% at 50% -20%,var(--accent-soft),transparent 60%),linear-gradient(175deg,var(--bg-surface-hover),var(--bg-surface))}.card-back{transform:rotateY(180deg);background:radial-gradient(120% 90% at 50% -20%,var(--accent-soft),transparent 60%),linear-gradient(175deg,var(--bg-elevated),var(--bg-surface))}.flashcard:hover .card-front{border-color:var(--accent)}.card-label{position:absolute;top:20px;left:40px;z-index:10;font-size:.68rem;font-weight:650;text-transform:uppercase;letter-spacing:.16em;color:var(--accent)}.card-main-content{flex:1;display:flex;align-items:center;justify-content:center;min-height:0;gap:28px}.card-back.has-image .card-main-content,.card-front.has-image .card-main-content{align-items:center}.card-text-content{flex:1;display:flex;flex-direction:column;justify-content:center;min-width:0;height:100%}.card-content{flex:1;display:flex;align-items:center;justify-content:center;overflow-y:auto;font-size:clamp(1.15rem,.85rem + 1vw,1.95rem);font-weight:500;line-height:1.5;letter-spacing:-.014em;text-align:center;text-wrap:balance;word-wrap:break-word;color:var(--text-primary)}.card-image{display:flex;align-items:center;justify-content:center;flex:0 1 40%;max-height:100%}.card-image img,.card-image svg,.card-image-content{max-width:100%;max-height:260px;height:auto;border-radius:var(--radius-sm);object-fit:contain}.card-hints,.card-do-not-accept:not(input){position:absolute;left:40px;right:40px;bottom:18px;text-align:center;font-size:.8rem;line-height:1.45}.card-hints{color:var(--color-warning)}.card-do-not-accept:not(input){color:var(--color-wrong);font-weight:550;letter-spacing:.01em}.card-hints:not(input):empty,.card-do-not-accept:not(input):empty{display:none}.accepted-answers-list{margin-top:14px;text-align:center}.accepted-forms-label{font-size:.7rem;font-weight:620;text-transform:uppercase;letter-spacing:.11em;color:var(--text-muted);margin-bottom:7px}.accepted-forms{display:flex;flex-wrap:wrap;gap:6px;justify-content:center}.accepted-form-item{padding:4px 11px;background:var(--accent-soft);border-radius:var(--radius-pill);font-size:.8rem;color:var(--text-secondary)}.study-actions{display:flex;flex-direction:column;align-items:center;gap:12px}.study-actions>.btn{min-width:190px;padding:13px 26px}.answer-buttons{display:flex;gap:12px;width:100%;max-width:420px}.answer-buttons .btn{flex:1;padding:15px;font-size:1rem;font-weight:620}.answer-buttons .btn-danger{background:var(--color-wrong-soft);border-color:var(--color-wrong);color:var(--color-wrong)}.answer-buttons .btn-danger:hover:not(:disabled){background:var(--color-wrong);color:#fff}.answer-buttons .btn-success{background:var(--color-correct-soft);border-color:var(--color-correct);color:var(--color-correct)}.answer-buttons .btn-success:hover:not(:disabled){background:var(--color-correct);color:var(--color-correct-ink)}.hint-button{display:flex;flex-direction:column;align-items:center;gap:8px;width:100%;max-width:420px}.points-display{font-size:.9rem;font-weight:600;color:var(--text-secondary)}.study-read-controls{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:26px;opacity:.55;transition:opacity var(--dur) var(--ease)}.study-read-controls:hover,.study-read-controls:focus-within{opacity:1}.btn-read-aloud{display:flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;background:var(--btn-secondary-bg);border:1px solid var(--btn-secondary-border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;transition:background-color var(--dur) var(--ease),color var(--dur) var(--ease),border-color var(--dur) var(--ease)}.btn-read-aloud:hover{background:var(--btn-secondary-hover);border-color:var(--border-strong);color:var(--text-primary)}.btn-read-aloud .material-symbols-outlined{font-family:Material Symbols Outlined,sans-serif;font-size:1.15rem;font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24}.read-voice-select{width:auto;max-width:170px;padding:6px 30px 6px 10px;font-size:.76rem;background-color:var(--btn-secondary-bg);border-color:var(--btn-secondary-border);color:var(--text-muted)}.modal{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:max(20px,env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) max(20px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left));animation:fadeIn .2s var(--ease) both}.modal-backdrop{position:absolute;inset:0;background:var(--scrim);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.modal-content{position:relative;width:100%;max-width:440px;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);animation:popIn .24s var(--ease-out) both}@keyframes popIn{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 22px;border-bottom:1px solid var(--border)}.modal-header h2{margin:0;font-size:1.1rem}.modal-close,.review-close{display:flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;background:none;border:none;border-radius:var(--radius-xs);color:var(--text-muted);font-size:1.4rem;line-height:1;cursor:pointer;transition:background-color var(--dur) var(--ease),color var(--dur) var(--ease)}.modal-close:hover,.review-close:hover{background:var(--bg-surface-hover);color:var(--text-primary)}.modal-body{padding:22px}.modal-body .form-group:last-child{margin-bottom:0}.modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 22px;border-top:1px solid var(--border)}.review-overlay{position:fixed;inset:0;z-index:1100;display:flex;align-items:center;justify-content:center;padding:20px;background:var(--scrim);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:fadeIn .2s var(--ease) both}.review-card{width:100%;max-width:480px;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);animation:popIn .24s var(--ease-out) both}.review-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border)}.review-title{font-size:.72rem;font-weight:650;text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted)}.review-body{display:flex;flex-direction:column;gap:18px;padding:22px}.review-section{display:flex;flex-direction:column;gap:6px}.review-label{font-size:.7rem;font-weight:620;text-transform:uppercase;letter-spacing:.11em;color:var(--text-muted)}.review-text{font-size:.98rem;line-height:1.55;color:var(--text-primary)}.review-badge{align-self:flex-start;padding:5px 12px;border-radius:var(--radius-pill);font-size:.78rem;font-weight:620}.review-badge.correct{background:var(--color-correct-soft);color:var(--color-correct)}.review-badge.wrong{background:var(--color-wrong-soft);color:var(--color-wrong)}.confirm-overlay{position:fixed;inset:0;z-index:1200;display:flex;align-items:center;justify-content:center;padding:20px;background:var(--scrim);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:fadeIn .18s var(--ease) both}.confirm-dialog{width:100%;max-width:380px;padding:26px 24px 20px;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);animation:popIn .22s var(--ease-out) both}.confirm-message{margin-bottom:22px;font-size:.98rem;line-height:1.55;color:var(--text-primary);text-wrap:pretty}.confirm-actions{display:flex;justify-content:flex-end;gap:10px}#toastContainer{position:fixed;left:50%;bottom:max(24px,env(safe-area-inset-bottom));z-index:1300;display:flex;flex-direction:column-reverse;align-items:center;gap:10px;transform:translate(-50%);pointer-events:none}.toast{display:flex;align-items:center;gap:10px;max-width:min(92vw,420px);padding:12px 18px;background:var(--bg-elevated);border:1px solid var(--border-strong);border-radius:var(--radius-pill);box-shadow:var(--shadow-lg);color:var(--text-primary);font-family:inherit;font-size:.9rem;text-align:left;cursor:pointer;pointer-events:auto;opacity:0;transform:translateY(12px);transition:opacity var(--dur) var(--ease),transform var(--dur) var(--ease)}.toast-visible{opacity:1;transform:none;animation:toastIn .28s var(--ease-out) both}@keyframes toastIn{0%{opacity:0;transform:translateY(14px) scale(.96)}to{opacity:1;transform:none}}.toast-exit{opacity:0;transform:translateY(10px)}.toast-icon{display:flex;align-items:center;justify-content:center;width:20px;height:20px;flex-shrink:0;border-radius:50%;font-size:.72rem;font-weight:700}.toast-success .toast-icon{background:var(--color-correct-soft);color:var(--color-correct)}.toast-error .toast-icon{background:var(--color-wrong-soft);color:var(--color-wrong)}.toast-warning .toast-icon{background:var(--color-warning-soft);color:var(--color-warning)}.toast-info .toast-icon{background:var(--accent-soft);color:var(--accent)}.results-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin-bottom:40px}.stat-card{padding:22px 24px;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-card)}.stat-value{font-size:2.1rem;font-weight:680;line-height:1.1;letter-spacing:-.035em;color:var(--text-primary);font-variant-numeric:tabular-nums}.stat-label{margin-top:6px;font-size:.73rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted)}.results-content .stat-card:nth-child(2) .stat-value{color:var(--color-correct)}.results-content .stat-card:nth-child(3) .stat-value{color:var(--color-wrong)}.results-content .stat-card:nth-child(4) .stat-value{color:var(--accent)}.cards-results-container{margin-bottom:32px}.cards-results-container h3{margin-bottom:14px;font-size:.78rem;font-weight:620;text-transform:uppercase;letter-spacing:.11em;color:var(--text-muted)}.cards-results-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));align-content:start;gap:8px;max-height:min(60vh,620px);overflow-y:auto;padding-right:4px}.card-result-item{padding:16px 18px;background:var(--bg-surface);border:1px solid var(--border);border-left:3px solid var(--border-strong);border-radius:var(--radius-sm);transition:background-color var(--dur) var(--ease),border-color var(--dur) var(--ease)}.card-result-item:hover{background:var(--bg-surface-hover)}.card-result-item.correct{border-left-color:var(--color-correct)}.card-result-item.wrong{border-left-color:var(--color-wrong)}.card-result-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.card-result-number{font-size:.7rem;font-weight:650;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted)}.card-result-badge{padding:3px 10px;border-radius:var(--radius-pill);font-size:.73rem;font-weight:620}.card-result-badge.correct{background:var(--color-correct-soft);color:var(--color-correct)}.card-result-badge.wrong{background:var(--color-wrong-soft);color:var(--color-wrong)}.card-result-content{display:flex;flex-direction:column;gap:5px;font-size:.9rem;line-height:1.55;color:var(--text-secondary)}.card-result-content strong{font-weight:600;color:var(--text-muted)}.card-result-answer{color:var(--text-primary)}.results-actions{display:flex;gap:10px;flex-wrap:wrap}.results-actions .btn{padding:12px 24px}.moderator-view{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,1fr);grid-template-areas:"qa players" "nav players";align-items:start;gap:18px clamp(18px,2vw,32px)}.mod-qa-section{grid-area:qa}.mod-nav-row{grid-area:nav}.mod-players-section{grid-area:players}@media(max-width:900px){.moderator-view{grid-template-columns:minmax(0,1fr);grid-template-areas:"qa" "nav" "players"}}.mod-qa-section{display:flex;flex-direction:column;gap:14px;padding:26px;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.mod-qa-block{display:flex;flex-direction:column;gap:6px}.mod-answer-block{padding-top:14px;border-top:1px solid var(--border)}.mod-qa-label{font-size:.7rem;font-weight:650;text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted)}.mod-qa-text{font-size:1.15rem;line-height:1.5;color:var(--text-primary)}.mod-answer-block .mod-qa-text{font-weight:620;color:var(--accent)}.mod-qa-hints{font-size:.85rem;color:var(--color-warning)}.mod-qa-dna{font-size:.85rem;font-weight:550;color:var(--color-wrong)}.mod-qa-accepted{font-size:.85rem;color:var(--text-muted)}.mod-qa-image{display:flex;justify-content:center;margin-top:6px}.mod-qa-image img,.mod-qa-image svg{max-width:100%;max-height:220px;border-radius:var(--radius-sm)}.mod-qa-section.mod-slide-out{animation:modSlideOut .19s var(--ease-in) forwards;will-change:transform,opacity}.mod-qa-section.mod-slide-in{animation:modSlideIn .26s var(--ease-spring) backwards;will-change:transform,opacity}@keyframes modSlideOut{to{opacity:0;transform:translate3d(-26px,0,0) scale(.985)}}@keyframes modSlideIn{0%{opacity:0;transform:translate3d(26px,0,0) scale(.985)}}.mod-nav-row{display:flex;justify-content:flex-end;gap:10px}.mod-players-section{padding:22px;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg)}.mod-players-header{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:16px}.mod-players-header h3{margin:0}.mod-player-add-row{display:flex;gap:8px}.mod-player-add-row .text-input{width:190px;padding:8px 12px;font-size:.88rem}.mod-players-list{display:flex;flex-direction:column;gap:8px}.mod-player-row{display:flex;align-items:center;gap:12px;padding:10px 12px 10px 16px;background:var(--bg-inset);border:1px solid var(--border);border-radius:var(--radius-sm);transition:border-color var(--dur) var(--ease),background-color var(--dur) var(--ease)}.mod-player-row.just-scored{border-color:var(--color-correct);background:var(--color-correct-soft)}.mod-player-name{flex:1;font-weight:550;color:var(--text-primary)}.mod-player-score-badge{min-width:38px;padding:3px 10px;background:var(--accent-soft);border-radius:var(--radius-pill);text-align:center;font-weight:650;color:var(--accent);font-variant-numeric:tabular-nums}.mod-player-actions{display:flex;gap:6px}.mod-player-actions button{padding:5px 11px;background:none;border:1px solid var(--border);border-radius:var(--radius-xs);color:var(--text-muted);font-size:.83rem;font-weight:600;cursor:pointer;transition:background-color var(--dur) var(--ease),color var(--dur) var(--ease),border-color var(--dur) var(--ease)}.mod-player-actions .mod-award-btn{background:var(--color-correct);border-color:var(--color-correct);color:var(--color-correct-ink)}.mod-player-actions .mod-award-btn:hover,.mod-player-actions .mod-award-btn:focus-visible{background:var(--color-correct-hover);border-color:var(--color-correct-hover)}.mod-player-actions .mod-remove-player-btn:hover,.mod-player-actions .mod-remove-player-btn:focus-visible{background:var(--color-wrong-soft);border-color:var(--color-wrong);color:var(--color-wrong)}.moderator-results-section{margin-bottom:36px}.moderator-results-section h3{margin-bottom:14px;font-size:.78rem;font-weight:620;text-transform:uppercase;letter-spacing:.11em;color:var(--text-muted)}.moderator-final-scores{display:flex;flex-wrap:wrap;gap:10px}.mod-final-card{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:118px;padding:16px 22px;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-card);transition:border-color var(--dur) var(--ease)}.mod-final-card.winner{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.mod-final-card .mod-rank{font-size:1.25rem;line-height:1.2}.mod-final-card .mod-final-name{font-size:.92rem;font-weight:620;color:var(--text-primary)}.mod-final-card .mod-final-score{font-size:1.7rem;font-weight:700;line-height:1.15;letter-spacing:-.03em;color:var(--accent);font-variant-numeric:tabular-nums}.mod-final-card .mod-final-label{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted)}.pwa-bottom-nav{display:none}@media(max-width:768px){html.standalone .pwa-bottom-nav{position:fixed;bottom:0;left:0;right:0;z-index:999;display:flex;align-items:center;justify-content:space-around;box-sizing:border-box;min-height:58px;height:calc(58px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);background:color-mix(in srgb,var(--bg-surface) 82%,transparent);backdrop-filter:blur(18px) saturate(1.4);-webkit-backdrop-filter:blur(18px) saturate(1.4);border-top:1px solid var(--border);-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;isolation:isolate}html.standalone .pwa-nav-btn{position:relative;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:58px;padding:8px 8px 10px;background:none;border:none;color:var(--text-dim);font-family:inherit;font-size:.68rem;font-weight:550;letter-spacing:.01em;cursor:pointer;transition:color var(--dur) var(--ease)}html.standalone .pwa-nav-btn:active{color:var(--text-secondary)}html.standalone .pwa-nav-btn.active{color:var(--accent)}html.standalone .pwa-nav-btn.active:before{content:"";position:absolute;top:0;left:50%;width:26px;height:2px;border-radius:0 0 2px 2px;background:var(--accent);transform:translate(-50%)}html.standalone .pwa-nav-icon{font-size:1.45rem;line-height:1}html.standalone .pwa-nav-icon.material-symbols-outlined{font-family:Material Symbols Outlined,sans-serif;font-weight:400;font-style:normal;font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24}html.standalone .pwa-nav-btn.active .pwa-nav-icon.material-symbols-outlined{font-variation-settings:"FILL" 1,"wght" 500,"GRAD" 0,"opsz" 24}html.standalone .view{padding-bottom:calc(84px + env(safe-area-inset-bottom))}html.standalone #mainView #createSetBtn,html.standalone #mainView #studyBtn,html.standalone #mainView .version-info,html.standalone #backToMainFromSetupBtn,html.standalone #backToMainBtn,html.standalone .study-read-controls,html.standalone .theme-select-row-main{display:none}html.standalone #mainView .main-header{margin-bottom:24px}html.standalone #toastContainer{bottom:calc(74px + env(safe-area-inset-bottom))}}.gamepad-focused{outline:3px solid #00d4ff!important;outline-offset:3px!important;box-shadow:0 0 0 1px #00d4ff4d,0 0 20px #00d4ff80!important;position:relative;animation:gamepadPulse 1.5s ease-in-out infinite}@keyframes gamepadPulse{0%,to{outline-color:#00d4ff;box-shadow:0 0 0 1px #00d4ff4d,0 0 20px #00d4ff80}50%{outline-color:#00a8cc;box-shadow:0 0 0 1px #00d4ff80,0 0 30px #00d4ffb3}}.wiiu .view{padding:24px 32px}.wiiu .btn{min-height:44px;min-width:44px;padding:14px 28px}.wiiu .button-group{gap:12px}.wiiu .main-header{margin-bottom:28px}.wiiu h1{font-size:2rem;margin-bottom:24px}.wiiu h2{font-size:1.4rem;margin-bottom:20px}.wiiu .flashcard{touch-action:manipulation}.wiiu .card-stage{max-height:300px;min-height:220px}.wiiu .card-container{min-height:300px}.wiiu .study-actions .btn,.wiiu .answer-buttons .btn{min-height:48px;padding:16px 32px}@media(max-width:1100px){.view{padding:calc(40px + env(safe-area-inset-top)) calc(36px + env(safe-area-inset-right)) calc(64px + env(safe-area-inset-bottom)) calc(36px + env(safe-area-inset-left))}}@media(max-width:768px){.view{padding:calc(32px + env(safe-area-inset-top)) calc(28px + env(safe-area-inset-right)) calc(56px + env(safe-area-inset-bottom)) calc(28px + env(safe-area-inset-left))}.header-top{flex-direction:column;align-items:flex-start;gap:16px}.sets-list{grid-template-columns:1fr}.card-container{min-height:340px}.card-stage{max-height:420px}.card-front,.card-back{padding:42px 26px 32px}.card-label{left:26px}.card-hints,.card-do-not-accept:not(input){left:26px;right:26px}.card-main-content{flex-direction:column;gap:16px}.card-image img,.card-image svg,.card-image-content{max-height:150px}.results-content{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.view{min-height:100vh;padding:max(24px,env(safe-area-inset-top)) max(18px,env(safe-area-inset-right)) max(56px,env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left))}input[type=text],input[type=number],input[type=search],select,textarea{font-size:16px!important}h2{margin-bottom:20px}.editor-header,.setup-header,.results-header,.settings-header{gap:14px;margin-bottom:28px;padding-bottom:18px}.main-header{margin-bottom:28px}.header-top{margin-bottom:22px}.site-logo img{max-height:38px}.button-group .btn{flex:1 1 calc(50% - 5px)}.search-row{max-width:none}.set-item{padding:18px 18px 16px}.card-container{min-height:300px;margin-bottom:22px}.card-stage{max-height:360px;min-height:260px}.card-front,.card-back{padding:38px 20px 30px;border-radius:var(--radius-lg)}.card-label{top:16px;left:20px}.card-hints,.card-do-not-accept:not(input){left:20px;right:20px;bottom:14px;font-size:.75rem}.study-actions>.btn,.answer-buttons{width:100%;max-width:none}.results-content{grid-template-columns:repeat(2,1fr);gap:10px}.stat-card{padding:16px 18px}.stat-value{font-size:1.7rem}.mod-players-header{flex-direction:column;align-items:stretch}.mod-player-add-row .text-input{width:auto;flex:1}.editor-actions .btn,.results-actions .btn{flex:1}}@view-transition{navigation:auto}@media(prefers-reduced-motion:reduce){html:not(.wiiu) *,html:not(.wiiu) *:before,html:not(.wiiu) *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.flashcard{transition:none}}
