@font-face{font-family:Lexend Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/lexend-vietnamese-wght-normal-RvljkFvg.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Lexend Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/lexend-latin-ext-wght-normal-B6JQhE1e.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Lexend Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/lexend-latin-wght-normal-ci0D1wrL.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--surface: #0b1326;--surface-dim: #0b1326;--surface-bright: #31394d;--surface-container-lowest: #060e20;--surface-container-low: #131b2e;--surface-container: #171f33;--surface-container-high: #222a3d;--surface-container-highest: #2d3449;--on-surface: #dae2fd;--on-surface-variant: #bdc8d1;--inverse-surface: #dae2fd;--inverse-on-surface: #283044;--outline: #87929a;--outline-variant: #3e484f;--surface-tint: #7bd0ff;--surface-variant: #2d3449;--background: #0b1326;--on-background: #dae2fd;--primary: #8ed5ff;--on-primary: #00354a;--primary-container: #38bdf8;--on-primary-container: #004965;--inverse-primary: #00668a;--primary-fixed: #c4e7ff;--primary-fixed-dim: #7bd0ff;--on-primary-fixed: #001e2c;--on-primary-fixed-variant: #004c69;--secondary: #4de082;--on-secondary: #003919;--secondary-container: #00b55d;--on-secondary-container: #003e1c;--secondary-fixed: #6dfe9c;--secondary-fixed-dim: #4de082;--on-secondary-fixed: #00210c;--on-secondary-fixed-variant: #005227;--tertiary: #ffc094;--on-tertiary: #4f2500;--tertiary-container: #ff9846;--on-tertiary-container: #6d3500;--tertiary-fixed: #ffdcc5;--tertiary-fixed-dim: #ffb783;--on-tertiary-fixed: #301400;--on-tertiary-fixed-variant: #713700;--error: #ffb4ab;--on-error: #690005;--error-container: #93000a;--on-error-container: #ffdad6;--rounded-sm: .25rem;--rounded: .5rem;--rounded-md: .75rem;--rounded-lg: 1rem;--rounded-xl: 1.5rem;--rounded-full: 9999px;--spacing-unit: 8px;--container-margin: 32px;--gutter: 24px;--stack-sm: 8px;--stack-md: 16px;--stack-lg: 32px;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--font-family: "Lexend Variable", "Lexend", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .3), 0 1px 2px rgba(0, 0, 0, .2);--shadow-md: 0 4px 12px rgba(0, 0, 0, .4), 0 2px 4px rgba(0, 0, 0, .2);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .5), 0 4px 8px rgba(0, 0, 0, .3);--inner-glow: inset 0 1px 0 rgba(255, 255, 255, .06);--transition-fast: .12s ease;--transition-normal: .22s ease;--transition-slow: .35s ease}[data-theme=light]{--surface: #e8eaf2;--surface-dim: #d8dae5;--surface-bright: #ffffff;--surface-container-lowest: #ffffff;--surface-container-low: #f5f6fb;--surface-container: #eceef8;--surface-container-high: #e0e3f0;--surface-container-highest: #d4d8e7;--on-surface: #111827;--on-surface-variant: #4b5563;--inverse-surface: #283044;--inverse-on-surface: #dae2fd;--outline: #6b7280;--outline-variant: #cbd5e1;--surface-tint: #2563eb;--surface-variant: #d4d8e7;--background: #e8eaf2;--on-background: #111827;--primary: #2563eb;--on-primary: #ffffff;--primary-container: #93c5fd;--on-primary-container: #1e3a8a;--inverse-primary: #93c5fd;--primary-fixed: #dbeafe;--primary-fixed-dim: #93c5fd;--on-primary-fixed: #1e3a8a;--on-primary-fixed-variant: #1646c0;--secondary: #16a34a;--on-secondary: #ffffff;--secondary-container: #6ee7b7;--on-secondary-container: #064e3b;--secondary-fixed: #d1fae5;--secondary-fixed-dim: #6ee7b7;--on-secondary-fixed: #064e3b;--on-secondary-fixed-variant: #047857;--tertiary: #d97706;--on-tertiary: #ffffff;--tertiary-container: #fdba74;--on-tertiary-container: #7c2d12;--tertiary-fixed: #ffedd5;--tertiary-fixed-dim: #fdba74;--on-tertiary-fixed: #7c2d12;--on-tertiary-fixed-variant: #9a3412;--error: #dc2626;--on-error: #ffffff;--error-container: #fecaca;--on-error-container: #7f1d1d;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .08), 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 4px 12px rgba(0, 0, 0, .1), 0 2px 4px rgba(0, 0, 0, .05);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .13), 0 4px 8px rgba(0, 0, 0, .07);--inner-glow: inset 0 1px 0 rgba(255, 255, 255, .6)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-text-size-adjust:100%;tab-size:2}body{font-family:var(--font-family);font-size:16px;font-weight:400;line-height:24px;color:var(--on-surface);background-color:var(--background);min-height:100vh;overflow:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.2}img,svg{display:block;max-width:100%}button,input,select,textarea{font-family:inherit;font-size:inherit}ul,ol{list-style:none}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}.display-lg{font-family:var(--font-family);font-size:48px;font-weight:700;line-height:56px;letter-spacing:-.02em}.display-md{font-family:var(--font-family);font-size:36px;font-weight:700;line-height:44px;letter-spacing:-.01em}.headline-lg{font-family:var(--font-family);font-size:28px;font-weight:600;line-height:36px}.headline-md{font-family:var(--font-family);font-size:24px;font-weight:600;line-height:32px}.body-lg{font-family:var(--font-family);font-size:18px;font-weight:400;line-height:28px}.body-md{font-family:var(--font-family);font-size:16px;font-weight:400;line-height:24px}.label-lg{font-family:var(--font-family);font-size:14px;font-weight:600;line-height:20px;letter-spacing:.05em}.label-sm{font-family:var(--font-family);font-size:12px;font-weight:700;line-height:16px;letter-spacing:.1em}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;font-family:var(--font-family);font-size:16px;font-weight:600;line-height:1;border:1px solid var(--outline-variant);border-radius:var(--rounded);cursor:pointer;transition:background-color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast),opacity var(--transition-fast);user-select:none;white-space:nowrap;text-decoration:none;background:var(--surface-container-high);color:var(--on-surface);box-shadow:var(--inner-glow)}.btn:hover:not(:disabled){background:var(--surface-container-highest);border-color:var(--outline)}.btn:focus-visible{outline:3px solid var(--primary);outline-offset:2px}.btn:active:not(:disabled){transform:scale(.97)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-primary{background:var(--primary);color:var(--on-primary);border-color:var(--primary);box-shadow:var(--inner-glow),inset 0 -2px 0 var(--on-primary-fixed-variant)}.btn-primary:hover:not(:disabled){background:var(--primary-container);border-color:var(--primary-container);color:var(--on-primary-container)}.btn-primary:active:not(:disabled){box-shadow:var(--inner-glow)}.btn-secondary{background:var(--surface-container-high);color:var(--on-surface);border:1px solid var(--outline);box-shadow:var(--inner-glow)}.btn-secondary:hover:not(:disabled){background:var(--surface-container-highest);border-color:var(--on-surface-variant)}.btn-tertiary{background:var(--tertiary);color:var(--on-tertiary);border-color:var(--tertiary);box-shadow:var(--inner-glow),inset 0 -2px 0 var(--on-tertiary-fixed-variant)}.btn-tertiary:hover:not(:disabled){background:var(--tertiary-container);border-color:var(--tertiary-container);color:var(--on-tertiary-container)}.btn-success{background:var(--secondary);color:var(--on-secondary);border-color:var(--secondary);box-shadow:var(--inner-glow),inset 0 -2px 0 var(--on-secondary-fixed-variant)}.btn-success:hover:not(:disabled){background:var(--secondary-container);border-color:var(--secondary-container);color:var(--on-secondary-container)}.btn-danger{background:var(--error);color:var(--on-error);border-color:var(--error);box-shadow:var(--inner-glow),inset 0 -2px 0 var(--on-error-container)}.btn-danger:hover:not(:disabled){background:var(--error-container);border-color:var(--error-container);color:var(--on-error-container)}.view{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden;background:var(--background)}.view-header{display:flex;align-items:center;gap:16px;padding:16px 24px;background:var(--surface-container);border-bottom:1px solid var(--outline-variant);flex-shrink:0;min-height:64px}.view-header h1{font-size:24px;font-weight:700;color:var(--on-surface);flex:1}.view-body{flex:1;overflow-y:auto;padding:var(--gutter)}.view-back-btn{flex-shrink:0}.theme-toggle-btn{flex-shrink:0;width:36px;height:36px;padding:0;border-radius:var(--rounded);display:flex;align-items:center;justify-content:center;margin-left:auto}.theme-toggle-btn .material-symbols-outlined{font-size:20px}.view-header h1~.theme-toggle-btn,.games-header .games-title~.theme-toggle-btn{margin-left:0}.coming-soon-body{display:flex;align-items:center;justify-content:center}.coming-soon-text{font-size:24px;color:var(--on-surface-variant);font-style:italic}#app{display:flex;height:100vh;overflow:hidden}.app-view-container{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden}.app-sidebar{width:260px;flex-shrink:0;display:flex;flex-direction:column;padding:16px;background:var(--surface-container-low);border-right:2px solid var(--outline-variant);height:100%;overflow:hidden}.app-sidebar-header{display:flex;align-items:center;gap:12px;padding:12px 8px 24px;margin-bottom:8px}.app-avatar{width:48px;height:48px;border-radius:50%;background:var(--primary-container);border:2px solid var(--primary-fixed);display:flex;align-items:center;justify-content:center;flex-shrink:0}.app-avatar .material-symbols-outlined{color:var(--on-primary-container);font-size:28px;font-variation-settings:"FILL" 1}.app-sidebar-meta{min-width:0}.app-sidebar-title{font-family:var(--font-family);font-size:16px;font-weight:700;color:var(--on-surface);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-sidebar-subtitle{font-family:var(--font-family);font-size:13px;font-weight:400;color:var(--on-surface-variant);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-sidebar-nav{display:flex;flex-direction:column;gap:2px;flex:1}.app-sidebar-footer{display:flex;flex-direction:column;gap:2px;padding-top:12px;border-top:2px solid var(--outline-variant)}.app-nav-item{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:var(--rounded-md);font-family:var(--font-family);font-size:16px;font-weight:500;color:var(--on-surface-variant);text-decoration:none;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.app-nav-item:hover{background:var(--surface-container-high);color:var(--on-surface);text-decoration:none}.app-nav-item .material-symbols-outlined{font-size:22px;flex-shrink:0}.app-nav-item--active{background:var(--surface-container);color:var(--primary);font-weight:700}.app-nav-item--active:hover{background:var(--surface-container-high);color:var(--primary)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--surface)}::-webkit-scrollbar-thumb{background:var(--surface-container-high);border-radius:var(--rounded-full)}::-webkit-scrollbar-thumb:hover{background:var(--outline)}.home-topbar{display:flex;align-items:center;padding:0 24px 0 32px;height:72px;background:var(--surface-container-lowest);border-bottom:2px solid var(--outline-variant);flex-shrink:0}.home-app-name{font-family:var(--font-family);font-size:26px;font-weight:900;color:var(--primary);letter-spacing:-.02em;flex:1}.home-canvas{flex:1;overflow-y:auto;padding:24px 40px;display:flex;flex-direction:column;gap:20px}.home-greeting-row{flex-shrink:0}.home-greeting{font-family:var(--font-family);font-size:48px;font-weight:700;line-height:1.1;letter-spacing:-.02em;color:var(--on-surface)}.home-subgreeting{font-family:var(--font-family);font-size:20px;font-weight:400;color:var(--on-surface-variant);margin-top:8px}.home-first-run-notice{display:flex;align-items:center;gap:12px;padding:12px 20px;background:var(--surface-container);border:1px solid var(--primary);border-radius:var(--rounded-full);font-size:14px;color:var(--on-surface)}.home-bento{display:grid;grid-template-columns:1fr 1fr;gap:24px;width:100%;max-width:960px;flex:1;min-height:0}.home-bento-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:20px 24px;border:2px solid transparent;border-radius:var(--rounded-xl);font-family:var(--font-family);cursor:pointer;transition:filter var(--transition-fast),transform var(--transition-fast)}.home-bento-btn:hover{filter:brightness(.88)}.home-bento-btn:active{transform:scale(.98);filter:brightness(.82)}.home-bento-btn:focus-visible{outline:3px solid var(--on-surface);outline-offset:4px}.home-bento-icon{width:96px;height:96px;border-radius:50%;background:#0000001f;display:flex;align-items:center;justify-content:center;transition:transform var(--transition-fast)}.home-bento-btn:hover .home-bento-icon{transform:scale(1.06)}.home-bento-icon .material-symbols-outlined{font-size:56px;font-variation-settings:"FILL" 1}.home-bento-label{font-family:var(--font-family);font-size:36px;font-weight:700;line-height:1;letter-spacing:-.01em}.home-bento-btn--selector{background:var(--primary);border-color:var(--primary-fixed);color:var(--on-primary)}.home-bento-btn--groups{background:var(--secondary);border-color:var(--secondary-fixed);color:var(--on-secondary)}.home-bento-btn--seating{background:var(--tertiary);border-color:var(--tertiary-fixed);color:var(--on-tertiary)}.home-bento-btn--games{background:var(--primary-container);border-color:var(--primary-fixed-dim);color:var(--on-primary-container)}.home-bento-btn--games .home-bento-icon{background:#ffffff2e}.selector-view{display:flex;flex-direction:column;height:100vh;overflow:hidden}.selector-body{flex:1;display:flex;flex-direction:column;overflow:hidden;padding:12px 16px;gap:12px}.view-settings-btn{margin-left:auto;font-size:14px}.class-selector{display:flex;align-items:center;gap:8px;flex-shrink:0}.class-selector--tabs{flex-wrap:wrap}.class-tab-btn{background:var(--surface-container);border:2px solid transparent;color:var(--on-surface-variant);border-radius:var(--rounded);padding:8px 16px;font-family:var(--font-family);font-size:16px;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.class-tab-btn:hover{background:var(--surface-container-high);color:var(--on-surface)}.class-tab-btn--active{border-color:var(--primary);color:var(--on-surface);background:var(--surface-container-high)}.class-selector-dropdown{background:var(--surface-container);border:1px solid var(--outline-variant);border-radius:var(--rounded);color:var(--on-surface);font-family:var(--font-family);font-size:16px;font-weight:600;padding:8px 12px;cursor:pointer;outline:none;transition:border-color .15s}.class-selector-dropdown:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 25%,transparent)}.slot-display{flex-shrink:0;display:flex;align-items:center;justify-content:center;background:var(--surface-container-high);border:2px solid var(--outline-variant);border-radius:var(--rounded-lg);min-height:140px;padding:16px 24px;box-shadow:var(--inner-glow);transition:border-color .2s,background-color .2s}.slot-display--spinning{border-color:var(--primary)}.slot-display--landed{border-color:var(--secondary);animation:slot-land-flash .5s ease-out}@keyframes slot-land-flash{0%{background:color-mix(in srgb,var(--secondary) 18%,var(--surface-container-high))}to{background:var(--surface-container-high)}}.slot-display-inner{text-align:center}.slot-name{font-family:var(--font-family);font-size:56px;font-weight:800;color:var(--on-surface);letter-spacing:-.02em;line-height:1.1;transition:color .1s;min-width:4ch}.slot-name--landed{color:var(--secondary)}.pool-container{flex:1;overflow-y:auto;min-height:0}.pool-grid{display:flex;flex-wrap:wrap;gap:8px;padding:4px 0}.pool-card{background:var(--surface-container);border:2px solid var(--outline-variant);border-radius:var(--rounded);padding:8px 12px;font-family:var(--font-family);font-size:14px;font-weight:600;color:var(--on-surface);transition:background .15s,border-color .15s,opacity .2s,color .2s;user-select:none}.pool-card--selected{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 14%,var(--surface-container));color:var(--primary);animation:card-select-pop .3s ease-out}@keyframes card-select-pop{0%{transform:scale(1.12)}60%{transform:scale(.96)}to{transform:scale(1)}}.pool-card--removed{opacity:.3;text-decoration:line-through;border-color:transparent;background:var(--surface-container);color:var(--on-surface-variant)}.controls-row{display:flex;align-items:center;flex-wrap:wrap;gap:12px;flex-shrink:0;padding:8px 0}.controls-random-btn{font-size:20px;font-weight:800;padding:12px 32px;letter-spacing:.02em}.controls-toggle-label{display:flex;align-items:center;gap:8px;font-family:var(--font-family);font-size:14px;font-weight:600;color:var(--on-surface-variant);cursor:pointer;user-select:none;padding:8px 12px;border-radius:var(--rounded);border:1px solid var(--outline-variant);transition:border-color .15s,color .15s}.controls-toggle-label:hover{border-color:var(--outline);color:var(--on-surface)}.controls-toggle-input{accent-color:var(--primary);width:16px;height:16px;cursor:pointer}.controls-reset-btn,.controls-fs-btn{font-size:14px}.fs-exit-btn{position:fixed;top:12px;right:12px;z-index:100;font-size:14px;opacity:.7;display:none}.selector-view--fullscreen .fs-exit-btn{display:block}.selector-view--fullscreen .view-header,.selector-view--fullscreen .class-selector,.selector-view--fullscreen .pool-container{display:none}.selector-view--fullscreen .controls-row{justify-content:center;padding:16px 0}.selector-view--fullscreen .controls-reset-btn,.selector-view--fullscreen .controls-toggle-label,.selector-view--fullscreen .controls-fs-btn{display:none}.selector-view--fullscreen .slot-display{flex:1;min-height:0;border-radius:0;border:none;background:var(--background);box-shadow:none}.selector-view--fullscreen .slot-name{font-size:clamp(4rem,12vw,10rem)}.selector-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--on-surface-variant);font-family:var(--font-family);font-size:18px;text-align:center}.selector-empty a{color:var(--primary);text-decoration:underline;cursor:pointer}.selector-empty a:hover{color:var(--on-surface)}.groups-view{display:flex;flex-direction:column;height:100vh;overflow:hidden}.groups-body{flex:1;display:flex;flex-direction:column;overflow:hidden;padding:12px 16px;gap:12px}.groups-config{background:var(--surface-container-low);border:1px solid var(--outline-variant);border-radius:var(--rounded-md);padding:16px;display:flex;flex-direction:column;gap:12px;flex-shrink:0}.config-row{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.config-label{font-family:var(--font-family);font-size:14px;font-weight:600;color:var(--on-surface-variant);min-width:6rem}.config-mode-toggle{display:flex;gap:4px;background:var(--surface-container);border:1px solid var(--outline-variant);border-radius:var(--rounded);padding:3px}.config-mode-btn{background:transparent;border:none;border-radius:calc(var(--rounded) - 2px);color:var(--on-surface-variant);font-family:var(--font-family);font-size:14px;font-weight:600;padding:8px 12px;cursor:pointer;transition:background .15s,color .15s}.config-mode-btn:hover{color:var(--on-surface)}.config-mode-btn--active{background:var(--surface-container-high);color:var(--on-surface);border:1px solid var(--outline)}.config-value-input{background:var(--surface-container);border:2px solid var(--outline-variant);border-radius:var(--rounded);color:var(--on-surface);font-family:var(--font-family);font-size:20px;font-weight:700;padding:4px 12px;width:5rem;text-align:center;outline:none;transition:border-color .15s,box-shadow .15s}.config-value-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 20%,transparent)}.config-value-label{font-family:var(--font-family);font-size:14px;color:var(--on-surface-variant);font-weight:600}.config-noun-select{background:var(--surface-container);border:2px solid var(--outline-variant);border-radius:var(--rounded);color:var(--on-surface);font-family:var(--font-family);font-size:14px;font-weight:600;padding:8px 12px;cursor:pointer;outline:none;transition:border-color .15s,box-shadow .15s}.config-noun-select:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 20%,transparent)}.config-actions{display:flex;gap:12px;padding-top:4px}.config-generate-btn{font-size:16px;font-weight:800;padding:12px 24px;letter-spacing:.02em}.config-shuffle-btn{font-size:16px;padding:12px 20px}.groups-output{flex:1;overflow-y:auto;min-height:0}.groups-message{border-radius:var(--rounded-md);padding:12px 16px;font-family:var(--font-family);font-size:14px;font-weight:600;margin-bottom:12px}.groups-message--error{background:var(--error-container);border:1px solid var(--error);color:var(--on-error-container)}.groups-message--warning{background:color-mix(in srgb,var(--tertiary) 18%,var(--surface-container));border:1px solid var(--tertiary);color:var(--tertiary)}.groups-grid{display:flex;flex-wrap:wrap;gap:16px;padding-bottom:16px}.group-card{background:var(--surface-container);border:1px solid var(--outline-variant);border-radius:var(--rounded-md);overflow:hidden;min-width:180px;flex:1 1 180px;max-width:280px;box-shadow:var(--inner-glow);transition:transform .15s,box-shadow .15s,border-color .15s}.group-card:hover{transform:translateY(-2px);border-color:var(--group-color);box-shadow:var(--shadow-md)}.group-card-header{padding:12px 16px;background:color-mix(in srgb,var(--group-color) 14%,var(--surface-container));border-bottom:2px solid color-mix(in srgb,var(--group-color) 50%,transparent)}.group-card-name{font-family:var(--font-family);font-size:24px;font-weight:800;color:var(--group-color);line-height:1.2}.group-card-count{font-family:var(--font-family);font-size:14px;color:color-mix(in srgb,var(--group-color) 65%,var(--on-surface-variant));font-weight:600;margin-top:4px}.group-card-body{list-style:none;padding:12px 16px;margin:0;display:flex;flex-direction:column;gap:4px}.group-card-student{font-family:var(--font-family);font-size:14px;color:var(--on-surface);padding:4px 0;border-bottom:1px solid var(--outline-variant);font-weight:500}.group-card-student:last-child{border-bottom:none}.groups-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--on-surface-variant);font-family:var(--font-family);font-size:18px;text-align:center}.groups-empty a{color:var(--primary);text-decoration:underline;cursor:pointer}.groups-empty a:hover{color:var(--on-surface)}.seating-view{display:flex;flex-direction:column;height:100vh;overflow:hidden}.seating-body{flex:1;display:flex;flex-direction:column;overflow:hidden;padding:12px 16px;gap:12px}.seating-config{background:var(--surface-container-low);border:1px solid var(--outline-variant);border-radius:var(--rounded-md);padding:16px;display:flex;flex-direction:column;gap:12px;flex-shrink:0}.seating-grid-inputs{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.seating-input-group{display:flex;align-items:center;gap:8px}.seating-input-label{font-family:var(--font-family);font-size:14px;font-weight:600;color:var(--on-surface-variant)}.seating-grid-input{background:var(--surface-container);border:2px solid var(--outline-variant);border-radius:var(--rounded);color:var(--on-surface);font-family:var(--font-family);font-size:20px;font-weight:700;padding:4px 12px;width:4.5rem;text-align:center;outline:none;transition:border-color .15s,box-shadow .15s}.seating-grid-input:focus{border-color:var(--secondary);box-shadow:0 0 0 3px color-mix(in srgb,var(--secondary) 20%,transparent)}.seating-grid-sep{font-family:var(--font-family);font-size:20px;font-weight:700;color:var(--on-surface-variant)}.seating-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.seating-generate-btn{font-size:16px;font-weight:800;padding:12px 24px;letter-spacing:.02em}.seating-shuffle-btn,.seating-clear-btn,.seating-print-btn{font-size:16px;padding:12px 20px}.seating-warning{background:color-mix(in srgb,var(--tertiary) 14%,var(--surface-container));border:1px solid var(--tertiary);border-radius:var(--rounded-md);color:var(--tertiary);font-family:var(--font-family);font-size:14px;font-weight:600;padding:8px 16px;flex-shrink:0}.seating-output{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden}.seating-layout{flex:1;display:flex;gap:16px;min-height:0;overflow:hidden}.seating-grid-area{flex:1;overflow:auto;min-width:0}.seating-front-label{width:100%;text-align:center;font-family:var(--font-family);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--on-surface-variant);border:2px solid var(--outline);border-radius:var(--rounded-md);padding:8px 16px;margin-bottom:12px;background:var(--surface-container);flex-shrink:0}.seating-print-header{display:none}.seating-grid{display:grid;gap:8px;padding-bottom:16px}.seating-cell{border-radius:var(--rounded-md);min-height:72px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:8px;transition:background-color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast);position:relative;user-select:none}.seating-cell--empty{border:2px dashed var(--outline-variant);background:transparent;cursor:default}.seating-cell--occupied{border:2px solid var(--outline-variant);background:var(--surface-container);cursor:default}.seating-cell--drag-over{border-color:var(--secondary)!important;background:color-mix(in srgb,var(--secondary) 14%,var(--surface-container))!important;box-shadow:0 0 0 2px color-mix(in srgb,var(--secondary) 30%,transparent)}.seating-cell--occupied.seating-cell--manual{cursor:grab}.seating-cell--occupied.seating-cell--manual:active{cursor:grabbing}.seating-cell--occupied.seating-cell--manual:hover{border-color:var(--outline);background:var(--surface-container-high)}.seating-drag-ghost{position:fixed;pointer-events:none;z-index:9999;background:var(--primary);color:var(--on-primary);font-family:var(--font-family);font-size:14px;font-weight:700;padding:4px 12px;border-radius:var(--rounded-full);box-shadow:var(--shadow-md);white-space:nowrap;transform:rotate(-3deg);opacity:.92}.seating-cell-name{font-family:var(--font-family);font-size:14px;font-weight:600;color:var(--on-surface);text-align:center;line-height:1.2}.seating-cell-pin{display:flex;align-items:center;gap:4px;margin-top:4px;font-size:10px;color:var(--on-surface-variant);opacity:.7;cursor:pointer}.seating-cell-pin input[type=checkbox]{cursor:pointer;accent-color:var(--secondary);width:12px;height:12px}.seating-cell--pinned .seating-cell-name{color:var(--secondary)}.seating-cell--pinned{border-color:color-mix(in srgb,var(--secondary) 50%,transparent)}.seating-sidebar{width:160px;flex-shrink:0;display:flex;flex-direction:column;gap:8px;overflow-y:auto;padding-right:4px;padding-bottom:16px}.seating-sidebar-title{font-family:var(--font-family);font-size:12px;font-weight:700;color:var(--on-surface-variant);text-transform:uppercase;letter-spacing:.08em;flex-shrink:0}.sidebar-student{background:var(--surface-container);border:1px solid var(--outline-variant);border-radius:var(--rounded-full);padding:8px 12px;font-family:var(--font-family);font-size:14px;font-weight:600;color:var(--on-surface);cursor:grab;text-align:center;transition:background-color var(--transition-fast),border-color var(--transition-fast);user-select:none}.sidebar-student:hover{background:var(--surface-container-high);border-color:var(--outline)}.sidebar-student:active{cursor:grabbing}.sidebar-student--dragging{opacity:.4}.seating-sidebar-empty{font-family:var(--font-family);font-size:12px;color:var(--on-surface-variant);opacity:.7;text-align:center;padding:12px 0;font-style:italic}.seating-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--on-surface-variant);font-family:var(--font-family);font-size:18px;text-align:center}.seating-empty a{color:var(--primary);text-decoration:underline;cursor:pointer}.seating-empty a:hover{color:var(--on-surface)}@media print{.view-header,.seating-config,.seating-sidebar,.seating-warning,.seating-cell-pin,.class-selector{display:none!important}.seating-print-header{display:block;text-align:center;font-size:14pt;font-weight:700;margin-bottom:12px;color:#000}.seating-view,.seating-body,.seating-output,.seating-layout,.seating-grid-area{display:block;height:auto;overflow:visible}.seating-grid{display:grid;gap:6px;padding:0}.seating-cell{border:1px solid #999!important;background:#fff!important;min-height:60px;break-inside:avoid}.seating-cell--empty{border:1px dashed #ccc!important}.seating-cell-name{color:#000!important;font-size:10pt}.seating-front-label{border:1.5px solid #999!important;background:#f5f5f5!important;color:#333!important;font-size:9pt;margin-bottom:8px}}.settings-view .view-body{display:flex;flex-direction:column;gap:0;padding:0;max-width:860px;margin:0 auto;width:100%}.settings-tabs{display:flex;gap:0;padding:16px 24px 0;border-bottom:1px solid var(--outline-variant);flex-shrink:0}.settings-tab{padding:12px 24px;font-family:var(--font-family);font-size:16px;font-weight:600;color:var(--on-surface-variant);background:none;border:none;border-bottom:3px solid transparent;cursor:pointer;transition:color var(--transition-fast),border-color var(--transition-fast);margin-bottom:-1px}.settings-tab:hover{color:var(--on-surface)}.settings-tab.active{color:var(--primary);border-bottom-color:var(--primary)}.settings-panel{flex:1;overflow-y:auto;padding:var(--gutter)}.settings-section-title{font-family:var(--font-family);font-size:20px;font-weight:700;color:var(--on-surface);margin-bottom:16px}.settings-list{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.settings-list-item{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--surface-container);border:1px solid var(--outline-variant);border-radius:var(--rounded-md);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.settings-list-item:hover{background:var(--surface-container-high);border-color:var(--outline)}.settings-list-item-name{flex:1;font-weight:500}.settings-list-item-meta{font-size:14px;color:var(--on-surface-variant)}.settings-list-item-badge{font-size:14px;color:var(--on-surface-variant);background:var(--surface-container-low);padding:2px 8px;border-radius:var(--rounded-full);border:1px solid var(--outline-variant)}.settings-list-chevron{color:var(--on-surface-variant);font-size:14px;opacity:.6}.settings-add-form{display:flex;flex-direction:column;gap:12px;padding:16px;background:var(--surface-container);border:1px solid var(--outline);border-radius:var(--rounded-md);margin-bottom:16px}.settings-add-form-title{font-family:var(--font-family);font-size:16px;font-weight:600;color:var(--on-surface);margin-bottom:4px}.settings-field{display:flex;flex-direction:column;gap:4px}.settings-field label{font-family:var(--font-family);font-size:14px;font-weight:500;color:var(--on-surface-variant)}.settings-input,.settings-textarea,.settings-select{padding:8px 12px;font-family:var(--font-family);font-size:16px;color:var(--on-surface);background:var(--surface-container-low);border:1px solid var(--outline-variant);border-radius:var(--rounded-md);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);outline:none}.settings-input:focus,.settings-textarea:focus,.settings-select:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 25%,transparent)}.settings-textarea{resize:vertical;min-height:80px;line-height:1.7}.settings-select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23bdc8d1' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px}.settings-mode-toggle{display:flex;gap:8px}.settings-mode-toggle .btn{flex:1;font-size:14px;padding:8px 12px}.settings-mode-toggle .btn.active{background:var(--primary);color:var(--on-primary);border-color:var(--primary)}.settings-form-actions{display:flex;gap:8px;justify-content:flex-end}.class-editor-header{display:flex;align-items:center;gap:12px;margin-bottom:20px}.class-editor-header .btn-back{flex-shrink:0}.class-name-form{display:flex;gap:8px;flex:1}.class-name-form .settings-input{flex:1;font-size:20px;font-weight:600}.headcount-row{display:flex;align-items:center;gap:12px;padding:16px;background:var(--surface-container);border:1px solid var(--outline-variant);border-radius:var(--rounded-md);margin-bottom:16px}.headcount-label{flex:1;font-size:16px;color:var(--on-surface)}.headcount-input{width:80px;padding:8px 12px;font-family:var(--font-family);font-size:16px;font-weight:600;color:var(--on-surface);background:var(--surface-container-low);border:1px solid var(--outline-variant);border-radius:var(--rounded-md);text-align:center;outline:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.headcount-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 25%,transparent)}.student-list-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.student-list-title{font-family:var(--font-family);font-size:14px;font-weight:600;color:var(--on-surface-variant);text-transform:uppercase;letter-spacing:.05em}.student-list{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.student-row{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--surface-container);border:1px solid var(--outline-variant);border-radius:var(--rounded-md);transition:background var(--transition-fast)}.student-row:hover{background:var(--surface-container-high)}.student-row-order{display:flex;flex-direction:column;gap:2px;flex-shrink:0}.btn-order{display:flex;align-items:center;justify-content:center;width:24px;height:20px;padding:0;font-size:10px;background:none;border:1px solid var(--outline-variant);border-radius:var(--rounded-sm);color:var(--on-surface-variant);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.btn-order:hover{background:var(--surface-container-high);color:var(--on-surface)}.btn-order:disabled{opacity:.3;cursor:default}.student-row-info{flex:1;min-width:0}.student-display-name{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.student-display-meta{font-size:14px;color:var(--on-surface-variant)}.student-row-actions{display:flex;gap:8px;flex-shrink:0}.btn-sm{padding:4px 12px;font-size:14px}.student-edit-form{display:flex;flex-direction:column;gap:12px;padding:12px;background:var(--surface-container-high);border:1px solid var(--primary);border-radius:var(--rounded-md);margin-bottom:8px}.student-edit-row{display:flex;gap:8px}.student-edit-row .settings-field{flex:1}.student-edit-row .settings-field.gender-field{flex:0 0 auto;min-width:140px}.student-edit-actions{display:flex;gap:8px;justify-content:flex-end}.btn-add-student{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:12px;font-family:var(--font-family);font-size:16px;font-weight:500;color:var(--primary);background:color-mix(in srgb,var(--primary) 10%,transparent);border:1px dashed var(--primary);border-radius:var(--rounded-md);cursor:pointer;transition:background var(--transition-fast)}.btn-add-student:hover{background:color-mix(in srgb,var(--primary) 20%,transparent)}.danger-zone{margin-top:32px;padding-top:24px;border-top:1px solid var(--outline-variant)}.danger-zone-title{font-family:var(--font-family);font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--error);margin-bottom:12px}.noun-set-item{cursor:default}.noun-set-item-actions{display:flex;gap:8px;align-items:center;flex-shrink:0}.noun-set-edit-form{display:flex;flex-direction:column;gap:12px;padding:16px;background:var(--surface-container-high);border:1px solid var(--primary);border-radius:var(--rounded-md);margin-bottom:8px}.noun-preview{font-size:14px;color:var(--on-surface-variant);margin-top:4px}.restore-builtins-row{display:flex;align-items:center;gap:16px;padding:16px;background:var(--surface-container);border:1px solid var(--outline-variant);border-radius:var(--rounded-md);margin-top:16px}.restore-builtins-text{flex:1;font-size:14px;color:var(--on-surface-variant)}.student-import-export{display:flex;gap:8px;align-items:center}.import-preview{background:var(--surface-container);border:1px solid var(--primary);border-radius:var(--rounded-md);padding:16px;margin-bottom:16px;display:flex;flex-direction:column;gap:12px}.import-preview-title{font-family:var(--font-family);font-size:16px;font-weight:600;color:var(--on-surface)}.import-preview-stats{font-size:14px;color:var(--on-surface-variant)}.import-preview-stats.has-warning{color:var(--tertiary)}.import-preview-table-wrap{overflow-x:auto;border:1px solid var(--outline-variant);border-radius:var(--rounded-sm)}.import-preview-table{width:100%;border-collapse:collapse;font-size:14px}.import-preview-table th{padding:8px 12px;background:var(--surface-container-high);color:var(--on-surface-variant);font-weight:600;text-align:left;border-bottom:1px solid var(--outline-variant)}.import-preview-table td{padding:8px 12px;color:var(--on-surface);border-bottom:1px solid var(--outline-variant)}.import-preview-table tr:last-child td{border-bottom:none}.import-preview-more{color:var(--on-surface-variant)!important;font-style:italic;text-align:center}.import-preview-actions{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}.theme-segmented{display:inline-flex;background:var(--surface-container-low);border:1px solid var(--outline-variant);border-radius:var(--rounded-md);padding:3px;gap:2px}.theme-option{padding:8px 20px;font-family:var(--font-family);font-size:14px;font-weight:500;color:var(--on-surface-variant);background:none;border:none;border-radius:calc(var(--rounded-md) - 2px);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.theme-option:hover{color:var(--on-surface)}.theme-option.active{background:var(--surface-container-high);color:var(--on-surface);border:1px solid var(--outline)}.settings-empty{padding:32px 16px;text-align:center;color:var(--on-surface-variant);font-style:italic}.games-view{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.games-header{display:flex;align-items:center;gap:16px;padding:16px 24px;background:var(--surface-container);border-bottom:1px solid var(--outline-variant);flex-shrink:0;min-height:64px}.games-back-btn{flex-shrink:0}.games-title{font-family:var(--font-family);font-size:24px;font-weight:700;color:var(--on-surface);flex:1}.games-menu{flex:1;display:flex;align-items:center;justify-content:center;gap:24px;padding:32px;flex-wrap:wrap}.game-card{display:flex;flex-direction:column;align-items:center;gap:12px;padding:24px 32px;background:var(--surface-container-high);border:2px solid var(--outline-variant);border-radius:var(--rounded-xl);box-shadow:var(--inner-glow);cursor:pointer;min-width:150px;transition:border-color var(--transition-fast),background var(--transition-fast)}.game-card:hover{border-color:var(--primary);background:var(--surface-container-highest)}.game-card-icon{font-size:3rem;line-height:1}.game-card-label{font-family:var(--font-family);font-size:20px;font-weight:600;color:var(--on-surface)}.games-tab-body{flex:1;overflow:hidden;display:flex;flex-direction:column}.game-view{display:flex;flex-direction:column;flex:1;overflow:hidden}.game-view-header{display:flex;align-items:center;gap:12px;padding:12px 20px;border-bottom:1px solid var(--outline-variant);flex-shrink:0}.game-view-title{flex:1;font-family:var(--font-family);font-size:24px;font-weight:700}.game-word-area{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 24px;position:relative;text-align:center}.game-word{font-family:var(--font-family);font-size:clamp(3rem,9vw,6.5rem);font-weight:800;color:var(--on-surface);letter-spacing:-.02em;line-height:1.1;user-select:none;animation:wordReveal .2s ease-out}@keyframes wordReveal{0%{opacity:0;transform:scale(.93)}to{opacity:1;transform:scale(1)}}.game-word-placeholder{font-family:var(--font-family);font-size:24px;color:var(--on-surface-variant);font-weight:500}.game-word-placeholder.no-lists{color:var(--tertiary)}.game-translate-wrap{display:flex;flex-direction:column;align-items:center;gap:8px;margin-top:12px}.game-translate-btn{padding:8px 32px;font-family:var(--font-family);font-size:18px;background:var(--surface-container);color:var(--on-surface-variant);border:1px solid var(--outline-variant);border-radius:var(--rounded-full)}.game-translate-btn:hover:not(:disabled){background:var(--surface-container-high);color:var(--on-surface)}.game-translate-btn:disabled{opacity:.5;cursor:default}.game-translation{font-family:var(--font-family);font-size:clamp(1.4rem,3.5vw,2rem);font-weight:600;color:var(--primary);min-height:2.2rem;text-align:center}.game-timer-display{font-family:var(--font-family);font-size:44px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--on-surface-variant);margin-top:16px;letter-spacing:.02em;transition:color var(--transition-fast)}.game-timer-display.urgent{color:var(--tertiary);animation:timerPulse .6s ease-in-out infinite}@keyframes timerPulse{0%,to{opacity:1}50%{opacity:.6}}.game-exhausted-banner{position:absolute;top:12px;left:50%;transform:translate(-50%);background:var(--surface-container);border:1px solid var(--outline-variant);border-radius:var(--rounded-full);padding:8px 20px;font-family:var(--font-family);font-size:14px;font-weight:500;color:var(--on-surface-variant);white-space:nowrap;pointer-events:none;animation:bannerFade 3s ease forwards}@keyframes bannerFade{0%{opacity:1}70%{opacity:1}to{opacity:0}}.game-controls{display:flex;align-items:center;justify-content:center;gap:12px;padding:16px 20px;flex-shrink:0;flex-wrap:wrap}.game-btn-draw{padding:16px 32px;font-size:20px;font-weight:700;background:var(--primary);color:var(--on-primary);border:1px solid var(--primary);border-radius:var(--rounded-lg);box-shadow:var(--inner-glow),inset 0 -2px 0 var(--on-primary-fixed-variant)}.game-btn-draw:hover:not(:disabled){background:var(--primary-container);border-color:var(--primary-container);color:var(--on-primary-container)}.game-btn-gotit{padding:16px 32px;font-size:20px;font-weight:700;background:var(--secondary);color:var(--on-secondary);border:1px solid var(--secondary);border-radius:var(--rounded-lg);box-shadow:var(--inner-glow),inset 0 -2px 0 var(--on-secondary-fixed-variant)}.game-btn-gotit:hover:not(:disabled){background:var(--secondary-container);border-color:var(--secondary-container);color:var(--on-secondary-container)}.game-btn-skip{padding:12px 24px;font-size:16px;background:var(--surface-container-high);color:var(--on-surface-variant);border:1px solid var(--outline-variant);border-radius:var(--rounded-lg)}.game-btn-skip:hover:not(:disabled){background:var(--surface-container-highest);color:var(--on-surface)}.game-timer-config{display:flex;align-items:center;justify-content:center;gap:12px;padding:8px 20px 16px;flex-shrink:0;flex-wrap:wrap;border-top:1px solid var(--outline-variant)}.game-timer-config-label{font-family:var(--font-family);font-size:14px;color:var(--on-surface-variant)}.game-timer-config input[type=number]{width:4.5rem;padding:4px 8px;background:var(--surface-container);border:1px solid var(--outline-variant);border-radius:var(--rounded-sm);color:var(--on-surface);font-family:var(--font-family);font-size:14px;text-align:center}.game-timer-config input[type=number]:focus{outline:2px solid var(--primary);outline-offset:1px}.game-timer-config-divider{width:1px;height:1rem;background:var(--outline-variant)}.game-autostart-label{display:flex;align-items:center;gap:8px;font-family:var(--font-family);font-size:14px;color:var(--on-surface-variant);cursor:pointer;user-select:none}.game-autostart-label input[type=checkbox]{width:1rem;height:1rem;accent-color:var(--primary);cursor:pointer}.game-list-overlay{position:fixed;inset:0;background:color-mix(in srgb,var(--inverse-surface) 35%,transparent);z-index:99;opacity:0;pointer-events:none;transition:opacity var(--transition-normal)}.game-list-overlay.visible{opacity:1;pointer-events:auto}.game-list-panel{position:fixed;top:0;right:0;width:300px;height:100%;background:var(--surface-container-high);border-left:2px solid var(--outline-variant);padding:20px;transform:translate(100%);transition:transform var(--transition-normal);overflow-y:auto;z-index:100;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;gap:12px}.game-list-panel.open{transform:translate(0)}.game-list-panel-title{font-family:var(--font-family);font-size:16px;font-weight:700;margin-bottom:4px}.game-list-item{display:flex;align-items:center;gap:12px;padding:12px;background:var(--surface-container);border:1px solid var(--outline-variant);border-radius:var(--rounded-md);cursor:pointer;user-select:none;transition:background var(--transition-fast),border-color var(--transition-fast)}.game-list-item:hover{background:var(--surface-container-highest);border-color:var(--outline)}.game-list-item input[type=checkbox]{width:1.1rem;height:1.1rem;accent-color:var(--primary);flex-shrink:0;cursor:pointer}.game-list-item-info{flex:1;min-width:0}.game-list-item-name{font-family:var(--font-family);font-size:14px;font-weight:500;color:var(--on-surface);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.game-list-item-meta{font-size:.75rem;color:var(--on-surface-variant);margin-top:2px}.game-list-panel-footer{font-family:var(--font-family);font-size:14px;color:var(--on-surface-variant);padding-top:8px;border-top:1px solid var(--outline-variant);margin-top:auto}.game-list-empty{font-family:var(--font-family);font-size:14px;color:var(--on-surface-variant);text-align:center;padding:16px}.game-round-state{font-family:var(--font-family);font-size:14px;color:var(--on-surface-variant);margin-top:12px}.game-view.fullscreen{position:fixed;inset:0;z-index:200;background:var(--background)}.game-view.fullscreen .game-view-header,.game-view.fullscreen .game-timer-config{display:none}.game-fullscreen-exit{position:absolute;top:12px;right:12px;font-size:14px;padding:8px 12px;opacity:.6;z-index:201}.game-fullscreen-exit:hover{opacity:1}
