@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap";:root{--primary-50: #eef2ff;--primary-100: #e0e7ff;--primary-200: #c7d2fe;--primary-300: #a5b4fc;--primary-400: #818cf8;--primary-500: #6366f1;--primary-600: #4f46e5;--primary-700: #4338ca;--primary-800: #3730a3;--primary-900: #312e81;--accent-50: #fff7ed;--accent-100: #ffedd5;--accent-200: #fed7aa;--accent-300: #fdba74;--accent-400: #fb923c;--accent-500: #f97316;--accent-600: #ea580c;--accent-700: #c2410c;--accent-800: #9a3412;--success-50: #ecfdf5;--success-100: #d1fae5;--success-200: #a7f3d0;--success-400: #34d399;--success-500: #10b981;--success-600: #059669;--success-700: #047857;--error-50: #fff1f2;--error-100: #ffe4e6;--error-200: #fecdd3;--error-400: #fb7185;--error-500: #f43f5e;--error-600: #e11d48;--error-700: #be123c;--warning-50: #fffbeb;--warning-100: #fef3c7;--warning-400: #fbbf24;--warning-500: #f59e0b;--warning-700: #b45309;--gray-50: #f9fafb;--gray-100: #f3f4f6;--gray-200: #e5e7eb;--gray-300: #d1d5db;--gray-400: #9ca3af;--gray-500: #6b7280;--gray-600: #4b5563;--gray-700: #374151;--gray-800: #1f2937;--gray-900: #111827;--gray-950: #0b1020;--gradient-primary: linear-gradient(135deg, #6366f1 0%, #8b5cf6 50%, #a855f7 100%);--gradient-accent: linear-gradient(135deg, #f97316 0%, #fb923c 100%);--gradient-dark: linear-gradient(135deg, #1e1b4b 0%, #312e81 50%, #3730a3 100%);--font-family: "Inter", system-ui, -apple-system, sans-serif;--font-xs: .75rem;--font-sm: .875rem;--font-base: 1rem;--font-lg: 1.125rem;--font-xl: 1.25rem;--font-2xl: 1.5rem;--font-3xl: 1.875rem;--font-4xl: 2.25rem;--font-5xl: 3rem;--font-6xl: 3.75rem;--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;--space-20: 5rem;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.5rem;--radius-full: 9999px;--control-xs: 1.75rem;--control-sm: 2rem;--control-md: 2.5rem;--control-lg: 3rem;--shadow-sm: 0 1px 2px 0 rgba(15, 23, 42, .05);--shadow-md: 0 4px 6px -1px rgba(15, 23, 42, .07), 0 2px 4px -2px rgba(15, 23, 42, .05);--shadow-lg: 0 10px 15px -3px rgba(15, 23, 42, .08), 0 4px 6px -4px rgba(15, 23, 42, .04);--shadow-xl: 0 20px 25px -5px rgba(15, 23, 42, .1), 0 8px 10px -6px rgba(15, 23, 42, .04);--shadow-glow: 0 0 20px rgba(99, 102, 241, .3);--ease-standard: cubic-bezier(.4, 0, .2, 1);--ease-emphasized: cubic-bezier(.16, 1, .3, 1);--transition-fast: .15s var(--ease-standard);--transition-base: .25s var(--ease-standard);--transition-slow: .35s var(--ease-standard);--transition-spring: .5s cubic-bezier(.34, 1.56, .64, 1);--z-dropdown: 10;--z-sticky: 20;--z-modal-backdrop: 40;--z-modal: 50;--z-toast: 60}:root{color-scheme:light;--color-bg: #f8fafc;--color-surface: #ffffff;--color-surface-raised: #ffffff;--color-surface-muted: var(--gray-50);--color-surface-hover: var(--gray-100);--color-surface-active: var(--gray-200);--color-border-subtle: var(--gray-100);--color-border: var(--gray-200);--color-border-strong: var(--gray-300);--color-text: var(--gray-900);--color-text-secondary: var(--gray-700);--color-text-muted: var(--gray-500);--color-text-subtle: var(--gray-400);--color-primary: var(--primary-600);--color-primary-hover: var(--primary-700);--color-primary-soft: var(--primary-50);--color-primary-soft-hover: var(--primary-100);--color-primary-text: var(--primary-700);--color-on-primary: #ffffff;--color-live: var(--accent-600);--color-live-hover: var(--accent-700);--color-live-soft: var(--accent-50);--color-live-text: var(--accent-700);--color-success: var(--success-600);--color-success-soft: var(--success-50);--color-success-text: var(--success-700);--color-danger: var(--error-600);--color-danger-hover: var(--error-700);--color-danger-soft: var(--error-50);--color-danger-text: var(--error-700);--color-warning: var(--warning-500);--color-warning-soft: var(--warning-50);--color-warning-text: var(--warning-700);--color-focus: var(--primary-500);--color-overlay: rgba(15, 23, 42, .5);--surface-bg: var(--color-bg);--surface-card: var(--color-surface);--surface-elevated: var(--color-surface-raised);--surface-overlay: var(--color-overlay)}.theme-studio{color-scheme:dark;--color-bg: var(--gray-950);--color-surface: rgba(255, 255, 255, .06);--color-surface-raised: var(--gray-800);--color-surface-muted: rgba(255, 255, 255, .04);--color-surface-hover: rgba(255, 255, 255, .1);--color-surface-active: rgba(255, 255, 255, .16);--color-border-subtle: rgba(255, 255, 255, .06);--color-border: rgba(255, 255, 255, .12);--color-border-strong: rgba(255, 255, 255, .24);--color-text: #ffffff;--color-text-secondary: var(--gray-200);--color-text-muted: var(--gray-400);--color-text-subtle: var(--gray-500);--color-primary: var(--primary-500);--color-primary-hover: var(--primary-400);--color-primary-soft: rgba(99, 102, 241, .2);--color-primary-soft-hover: rgba(99, 102, 241, .3);--color-primary-text: var(--primary-300);--color-live: var(--accent-600);--color-live-hover: var(--accent-500);--color-live-soft: rgba(249, 115, 22, .16);--color-live-text: var(--accent-300);--color-success: var(--success-500);--color-success-soft: rgba(16, 185, 129, .16);--color-success-text: var(--success-400);--color-danger: var(--error-600);--color-danger-hover: var(--error-500);--color-danger-soft: rgba(244, 63, 94, .16);--color-danger-text: var(--error-400);--color-warning: var(--warning-400);--color-warning-soft: rgba(251, 191, 36, .16);--color-warning-text: var(--warning-400);--color-focus: var(--primary-300);--color-overlay: rgba(0, 0, 0, .65);--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .3);--shadow-md: 0 4px 12px rgba(0, 0, 0, .35);--shadow-lg: 0 12px 28px rgba(0, 0, 0, .4);--shadow-xl: 0 20px 40px rgba(0, 0, 0, .5);color:var(--color-text)}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth}body{font-family:var(--font-family);font-size:var(--font-base);line-height:1.6;color:var(--color-text);background-color:var(--color-bg);min-height:100vh}#root{min-height:100vh;display:flex;flex-direction:column}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-primary-hover)}img{max-width:100%;display:block}input,button,textarea,select{font-family:inherit;font-size:inherit;color:inherit}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}:focus:not(:focus-visible){outline:none}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--control-md);padding:0 var(--space-4);border:1px solid transparent;border-radius:var(--radius-lg);font-weight:600;font-size:var(--font-sm);line-height:1.2;white-space:nowrap;text-decoration:none;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast)}.btn:disabled,.btn[aria-disabled=true]{opacity:.5;cursor:not-allowed}.btn:active:not(:disabled){transform:scale(.98)}.btn-primary{background:var(--color-primary);color:var(--color-on-primary);box-shadow:var(--shadow-sm)}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover);color:var(--color-on-primary)}.btn-secondary,.btn-outline{background:var(--color-surface);color:var(--color-text-secondary);border-color:var(--color-border)}.btn-secondary:hover:not(:disabled),.btn-outline:hover:not(:disabled){background:var(--color-surface-hover);border-color:var(--color-border-strong);color:var(--color-text)}.btn-ghost{background:transparent;color:var(--color-text-muted)}.btn-ghost:hover:not(:disabled){background:var(--color-surface-hover);color:var(--color-text)}.btn-ghost.active,.btn-ghost[aria-pressed=true]{background:var(--color-primary-soft);color:var(--color-primary-text)}.btn-live,.btn-accent{background:var(--color-live);color:#fff;box-shadow:var(--shadow-sm)}.btn-live:hover:not(:disabled),.btn-accent:hover:not(:disabled){background:var(--color-live-hover);color:#fff}.btn-danger{background:var(--color-danger);color:#fff}.btn-danger:hover:not(:disabled){background:var(--color-danger-hover)}.btn-danger-ghost{background:transparent;color:var(--color-danger-text)}.btn-danger-ghost:hover:not(:disabled){background:var(--color-danger-soft)}.btn-success{background:var(--color-success);color:#fff}.btn-warning{background:var(--color-warning);color:var(--gray-900)}.btn-xs{min-height:var(--control-xs);padding:0 var(--space-2);gap:var(--space-1);font-size:var(--font-xs);border-radius:var(--radius-md)}.btn-sm{min-height:var(--control-sm);padding:0 var(--space-3);font-size:var(--font-sm);border-radius:var(--radius-md)}.btn-lg{min-height:var(--control-lg);padding:0 var(--space-6);font-size:var(--font-base);border-radius:var(--radius-xl)}.btn-icon{padding:0;width:var(--control-md)}.btn-icon.btn-sm{width:var(--control-sm)}.btn-icon.btn-xs{width:var(--control-xs)}.btn-block{width:100%}.input-group,.field{display:flex;flex-direction:column;gap:var(--space-2)}.input-label,.field-label{font-size:var(--font-sm);font-weight:600;color:var(--color-text-secondary)}.field-hint{font-size:var(--font-xs);color:var(--color-text-muted);line-height:1.5}.field-error{font-size:var(--font-xs);color:var(--color-danger-text)}.input{width:100%;min-height:var(--control-md);padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-lg);font-size:var(--font-base);color:var(--color-text);background:var(--color-surface);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);outline:none}.input:hover:not(:disabled):not(:focus){border-color:var(--color-border-strong)}.input::placeholder{color:var(--color-text-subtle)}.input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft)}.input:disabled{background:var(--color-surface-muted);color:var(--color-text-subtle);cursor:not-allowed}.input-sm{min-height:var(--control-sm);font-size:var(--font-sm);border-radius:var(--radius-md)}.textarea{resize:vertical;min-height:100px;line-height:1.5}.select{appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2'><polyline points='6 9 12 15 18 9'/></svg>");background-repeat:no-repeat;background-position:right 12px center;padding-right:40px}.check-row{display:flex;align-items:flex-start;gap:var(--space-3);font-size:var(--font-sm);color:var(--color-text-secondary);cursor:pointer;line-height:1.4}.check-row input{flex-shrink:0;width:16px;height:16px;margin-top:2px;accent-color:var(--color-primary);cursor:pointer}.segmented{display:inline-flex;align-self:flex-start;padding:3px;gap:2px;background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.segmented button{min-height:calc(var(--control-sm) - 6px);padding:0 var(--space-3);border:none;border-radius:var(--radius-md);background:transparent;color:var(--color-text-muted);font-size:var(--font-sm);font-weight:600;cursor:pointer}.segmented button[aria-checked=true],.segmented button[aria-pressed=true]{background:var(--color-surface-raised);color:var(--color-text);box-shadow:var(--shadow-sm)}.card{background:var(--color-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm)}.card-interactive{cursor:pointer;transition:box-shadow var(--transition-base),transform var(--transition-base),border-color var(--transition-base)}.card-interactive:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);border-color:var(--color-border)}.card-glass{background:#ffffffb3;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.3);border-radius:var(--radius-xl)}.panel{padding:var(--space-5);background:var(--color-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-xl)}.badge{display:inline-flex;align-items:center;gap:var(--space-1);min-height:1.375rem;padding:0 var(--space-2);border-radius:var(--radius-full);font-size:var(--font-xs);font-weight:600;line-height:1;letter-spacing:.02em;white-space:nowrap}.badge-gray,.badge-neutral{background:var(--color-surface-hover);color:var(--color-text-secondary)}.badge-primary{background:var(--color-primary-soft);color:var(--color-primary-text)}.badge-live,.badge-accent{background:var(--color-live-soft);color:var(--color-live-text)}.badge-success{background:var(--color-success-soft);color:var(--color-success-text)}.badge-warning{background:var(--color-warning-soft);color:var(--color-warning-text)}.status-dot{width:6px;height:6px;border-radius:50%;background:currentColor;animation:pulse 2s ease-in-out infinite}.badge-error,.badge-danger{background:var(--color-danger-soft);color:var(--color-danger-text)}.modal-backdrop{position:fixed;inset:0;background:var(--color-overlay);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:var(--z-modal-backdrop);display:flex;align-items:center;justify-content:center;padding:var(--space-4);animation:fadeIn .2s ease-out}.modal{background:var(--color-surface-raised);color:var(--color-text);border-radius:var(--radius-2xl);box-shadow:var(--shadow-xl);width:100%;max-width:500px;max-height:90vh;overflow-y:auto;animation:scaleIn .2s var(--ease-emphasized)}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-5) var(--space-6) var(--space-3)}.modal-header h2{font-size:var(--font-xl);font-weight:700;color:var(--color-text)}.modal-body{padding:var(--space-2) var(--space-6) var(--space-6)}.modal-footer{display:flex;justify-content:flex-end;gap:var(--space-3);padding:var(--space-4) var(--space-6);border-top:1px solid var(--color-border-subtle)}.kbd{display:inline-block;min-width:1.5em;padding:0 var(--space-1);border:1px solid var(--color-border-strong);border-bottom-width:2px;border-radius:var(--radius-sm);font-family:inherit;font-size:.85em;font-weight:600;text-align:center;color:var(--color-text-secondary)}.divider{height:1px;border:none;background:var(--color-border-subtle);margin:var(--space-2) 0}.page{width:100%;max-width:1200px;margin:0 auto}.page-header{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:var(--space-4);margin-bottom:var(--space-8)}.page-header h1{font-size:var(--font-3xl);font-weight:800;line-height:1.2;letter-spacing:-.01em;color:var(--color-text)}.page-header p{margin-top:var(--space-1);color:var(--color-text-muted)}.text-title{font-size:var(--font-3xl);font-weight:800;line-height:1.2;letter-spacing:-.01em}.text-heading{font-size:var(--font-lg);font-weight:700;line-height:1.3}.text-label,.section-label{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted)}.text-sm{font-size:var(--font-sm)}.text-xs{font-size:var(--font-xs)}.text-muted{color:var(--color-text-muted)}.text-secondary{color:var(--color-text-secondary)}.text-danger{color:var(--color-danger-text)}.text-success{color:var(--color-success-text)}.text-center{text-align:center}.text-strong{font-weight:700}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.stack{display:flex;flex-direction:column;gap:var(--gap, var(--space-4))}.cluster{display:flex;flex-wrap:wrap;align-items:center;gap:var(--gap, var(--space-3))}.cluster-between{justify-content:space-between}.cluster-nowrap{flex-wrap:nowrap}.gap-1{--gap: var(--space-1)}.gap-2{--gap: var(--space-2)}.gap-3{--gap: var(--space-3)}.gap-4{--gap: var(--space-4)}.gap-6{--gap: var(--space-6)}.gap-8{--gap: var(--space-8)}.grow{flex:1;min-width:0}.w-full{width:100%}.avatar{flex-shrink:0;display:inline-grid;place-items:center;border-radius:var(--radius-full);background:var(--color-primary-soft);color:var(--color-primary-text);font-weight:700;line-height:1;object-fit:cover}.menu{min-width:200px;padding:var(--space-1);background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:var(--z-dropdown);animation:fadeIn .12s ease-out}.menu-item{display:flex;align-items:center;gap:var(--space-3);width:100%;min-height:var(--control-sm);padding:0 var(--space-3);border:none;border-radius:var(--radius-md);background:none;color:var(--color-text-secondary);font-size:var(--font-sm);font-weight:500;text-align:left;cursor:pointer}.menu-item:hover,.menu-item:focus-visible{background:var(--color-surface-hover);color:var(--color-text)}.menu-item:disabled{opacity:.45;cursor:not-allowed;background:none}.menu-item.danger{color:var(--color-danger-text)}.menu-item.danger:hover{background:var(--color-danger-soft)}.menu-divider{height:1px;margin:var(--space-1) 0;border:none;background:var(--color-border-subtle)}.btn-on-media{background:#00000073;color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.btn-on-media:hover:not(:disabled){background:#000000a6;color:#fff}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-16) var(--space-4);text-align:center}.empty-state-icon{width:80px;height:80px;border-radius:var(--radius-2xl);background:var(--color-primary-soft);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-6);color:var(--color-primary)}.empty-state h3{font-size:var(--font-xl);font-weight:700;color:var(--color-text);margin-bottom:var(--space-2)}.empty-state p{color:var(--color-text-muted);margin-bottom:var(--space-6);max-width:400px}.toolbar{display:flex;align-items:center;gap:var(--space-3);flex-shrink:0}.toolbar-group{display:flex;align-items:center;gap:var(--space-1)}.toolbar-divider{width:1px;height:20px;background:var(--color-border)}.toolbar-count{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 4px;border-radius:var(--radius-full);background:var(--color-primary);color:var(--color-on-primary);font-size:11px;font-weight:700}.avatar-stack{display:flex;align-items:center}.avatar-stack .avatar{box-shadow:0 0 0 2px var(--color-surface-raised)}.avatar-stack .avatar+.avatar{margin-left:-6px}.save-status{display:inline-flex;align-items:center;gap:var(--space-1);min-width:72px;font-size:var(--font-xs);color:var(--color-text-muted)}.save-status.saved svg{color:var(--color-success-text)}.save-status.error{color:var(--color-danger-text);font-weight:600}.popover-scrim{position:fixed;inset:0;z-index:calc(var(--z-dropdown) + 89)}.popover{position:absolute;top:calc(100% + var(--space-2));left:0;z-index:calc(var(--z-dropdown) + 90);width:320px;padding:var(--space-4);background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);animation:fadeIn .12s ease-out}.divider-text{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-xs);color:var(--color-text-muted)}.divider-text:before,.divider-text:after{content:"";flex:1;height:1px;background:var(--color-border)}.add-row-btn{align-self:flex-start}.menu-anchor{position:relative;display:inline-flex}.menu-anchor>.menu{position:absolute;top:calc(100% + var(--space-1))}.menu-anchor>.menu-right{right:0}.menu-anchor>.menu-left{left:0}.input-with-icon{position:relative}.input-with-icon>svg{position:absolute;left:var(--space-3);top:50%;transform:translateY(-50%);color:var(--color-text-muted);pointer-events:none}.input-with-icon>.input{padding-left:calc(var(--space-3) * 2 + 16px)}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:var(--space-4);margin-bottom:var(--space-8)}.stat-card{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5)}.stat-card-icon{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;border-radius:var(--radius-lg);background:var(--color-primary-soft);color:var(--color-primary-text)}.stat-live .stat-card-icon{background:var(--color-live-soft);color:var(--color-live-text)}.stat-success .stat-card-icon{background:var(--color-success-soft);color:var(--color-success-text)}.stat-neutral .stat-card-icon{background:var(--color-surface-hover);color:var(--color-text-secondary)}.stat-card-value{font-size:var(--font-xl);font-weight:800;line-height:1.2}.stat-card-label{font-size:var(--font-xs);color:var(--color-text-muted)}.person-row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--color-surface-muted);border-radius:var(--radius-lg)}.copy-field{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-1) var(--space-1) var(--space-3);background:var(--color-primary-soft);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.copy-field-value{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--font-xs);color:var(--color-primary-text)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes countUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes emojiFloat{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-120px) scale(.5)}}@keyframes barGrow{0%{width:0}}@keyframes progressFill{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes bgFadeIn{0%{opacity:0;transform:scale(1.05)}to{opacity:1;transform:scale(1)}}.animate-fade-in{animation:fadeIn .4s ease-out}.animate-fade-in-up{animation:fadeInUp .5s ease-out}.animate-fade-in-down{animation:fadeInDown .4s ease-out}.animate-slide-in-right{animation:slideInRight .4s ease-out}.animate-scale-in{animation:scaleIn .3s ease-out}.animate-pulse{animation:pulse 2s ease-in-out infinite}.animate-spin{animation:spin 1s linear infinite}.stagger-children>*{animation:fadeInUp .4s ease-out both}.stagger-children>*:nth-child(1){animation-delay:0ms}.stagger-children>*:nth-child(2){animation-delay:60ms}.stagger-children>*:nth-child(3){animation-delay:.12s}.stagger-children>*:nth-child(4){animation-delay:.18s}.stagger-children>*:nth-child(5){animation-delay:.24s}.stagger-children>*:nth-child(6){animation-delay:.3s}.stagger-children>*:nth-child(7){animation-delay:.36s}.stagger-children>*:nth-child(8){animation-delay:.42s}.confirm-modal{max-width:440px}.confirm-body{display:flex;align-items:flex-start;gap:var(--space-4);padding:var(--space-6) var(--space-6) var(--space-5)}.confirm-icon{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;border-radius:var(--radius-lg);background:var(--color-primary-soft);color:var(--color-primary-text)}.confirm-icon-danger{background:var(--color-danger-soft);color:var(--color-danger-text)}.confirm-text{flex:1;min-width:0}.confirm-text h2{font-size:var(--font-lg);font-weight:700;color:var(--color-text);margin-bottom:var(--space-2)}.confirm-text p{font-size:.9rem;line-height:1.5;color:var(--color-text-secondary)}.toast-container{position:fixed;bottom:var(--space-6);left:50%;transform:translate(-50%);z-index:var(--z-toast);display:flex;flex-direction:column;align-items:center;gap:var(--space-3);width:max-content;max-width:min(92vw,420px);pointer-events:none}.toast{--toast-accent: var(--primary-500);--toast-tint: var(--primary-50);pointer-events:auto;display:flex;align-items:flex-start;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);background:#fffffff2;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:var(--shadow-lg);border:1px solid var(--color-border-subtle);border-left:3px solid var(--toast-accent);color:var(--color-text);font-size:.9rem;line-height:1.45;animation:toastIn .28s cubic-bezier(.16,1,.3,1)}.toast-icon{display:grid;place-items:center;flex-shrink:0;width:28px;height:28px;border-radius:var(--radius-md);background:var(--toast-tint);color:var(--toast-accent)}.toast-message{flex:1;min-width:0;padding-top:4px;font-weight:500;word-break:break-word}.toast-close{flex-shrink:0;display:grid;place-items:center;width:24px;height:24px;padding:0;border:none;background:transparent;border-radius:var(--radius-md);color:var(--color-text-muted);cursor:pointer;transition:background .15s ease,color .15s ease}.toast-close:hover{background:var(--color-surface-hover);color:var(--color-text-secondary)}.toast-success{--toast-accent: var(--success-600);--toast-tint: var(--success-50)}.toast-error{--toast-accent: var(--error-600);--toast-tint: var(--error-50)}.toast-warning{--toast-accent: var(--warning-500);--toast-tint: var(--warning-50)}.toast-info{--toast-accent: var(--primary-600);--toast-tint: var(--primary-50)}@keyframes toastIn{0%{opacity:0;transform:translateY(16px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.spinner{width:24px;height:24px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}.spinner-lg{width:40px;height:40px;border-width:4px}.loading-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:var(--space-4);color:var(--color-text-muted)}.admin-layout{display:flex;min-height:100vh;background:var(--surface-bg)}.admin-sidebar{width:260px;background:var(--color-surface);border-right:1px solid var(--color-border-subtle);display:flex;flex-direction:column;position:fixed;top:0;left:0;bottom:0;z-index:var(--z-sticky);transition:transform var(--transition-base)}.admin-sidebar-header{padding:var(--space-6);border-bottom:1px solid var(--color-border-subtle)}.admin-sidebar-logo{display:flex;align-items:center;gap:var(--space-3);font-size:var(--font-xl);font-weight:800;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.admin-sidebar-nav{flex:1;padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-1)}.admin-nav-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);color:var(--color-text-secondary);font-weight:500;font-size:var(--font-sm);cursor:pointer;transition:all var(--transition-fast);border:none;background:none;width:100%;text-align:left}.admin-nav-item:hover{background:var(--color-surface-muted);color:var(--color-text)}.admin-nav-item svg{pointer-events:none;flex-shrink:0}.admin-nav-item.active{background:var(--color-primary-soft);color:var(--color-primary-text);font-weight:600}.dropdown-menu{cursor:default}.dropdown-menu:hover{transform:none}.admin-sidebar-footer{padding:var(--space-4);border-top:1px solid var(--color-border-subtle)}.admin-main{flex:1;margin-left:260px;display:flex;flex-direction:column;min-height:100vh}.admin-topbar{display:none;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:var(--color-surface);border-bottom:1px solid var(--color-border-subtle);position:sticky;top:0;z-index:var(--z-sticky)}.admin-content{flex:1;padding:var(--space-8);max-width:1400px;width:100%;margin:0 auto}.admin-sidebar-overlay,#close-sidebar{display:none}@media(max-width:768px){.admin-topbar,#close-sidebar{display:flex}.admin-sidebar{transform:translate(-100%)}.admin-sidebar.open{transform:translate(0)}.admin-sidebar-overlay{display:block;position:fixed;inset:0;background:var(--surface-overlay);z-index:calc(var(--z-sticky) - 1)}.admin-main{margin-left:0}.admin-content{padding:var(--space-4)}}.audience-layout{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;background:var(--gradient-dark);color:#fff;position:relative;overflow:hidden}.audience-bg-image{position:absolute;inset:0;background-size:cover;background-position:center;background-repeat:no-repeat;z-index:0;animation:bgFadeIn .6s ease-out}.audience-bg-image:after{content:"";position:absolute;inset:0;background:#0000008c}.audience-layout>*:not(.audience-bg-image){position:relative;z-index:1}.audience-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-5);background:var(--color-surface-muted);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--color-border)}.audience-header-logo{display:flex;align-items:center;gap:var(--space-2);min-width:0;font-weight:700;font-size:var(--font-base);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.audience-header-logo svg{flex-shrink:0}.audience-main{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-6)}.table-container{overflow-x:auto;border-radius:var(--radius-xl);border:1px solid var(--color-border-subtle);background:var(--color-surface)}.table{width:100%;border-collapse:collapse}.table th{padding:var(--space-3) var(--space-4);text-align:left;font-size:var(--font-xs);font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;background:var(--color-surface-muted);border-bottom:1px solid var(--color-border-subtle)}.table td{padding:var(--space-4);border-bottom:1px solid var(--gray-50);font-size:var(--font-sm);color:var(--color-text-secondary)}.table tr:last-child td{border-bottom:none}.table tr:hover td{background:var(--color-surface-muted)}.presenter-layout{--su: var(--su0, 16px)}.presenter-stage{--su: calc(var(--su0, 16px) * var(--fit, 1))}.presenter-layout,.presenter-stage{--font-xs: calc(.75 * var(--su));--font-sm: calc(.875 * var(--su));--font-base: var(--su);--font-lg: calc(1.125 * var(--su));--font-xl: calc(1.25 * var(--su));--font-2xl: calc(1.5 * var(--su));--font-3xl: calc(1.875 * var(--su));--font-4xl: calc(2.25 * var(--su));--font-5xl: calc(3 * var(--su));--font-6xl: calc(3.75 * var(--su));--space-1: calc(.25 * var(--su));--space-2: calc(.5 * var(--su));--space-3: calc(.75 * var(--su));--space-4: var(--su);--space-5: calc(1.25 * var(--su));--space-6: calc(1.5 * var(--su));--space-8: calc(2 * var(--su));--space-10: calc(2.5 * var(--su));--space-12: calc(3 * var(--su));--space-16: calc(4 * var(--su));--radius-sm: calc(.375 * var(--su));--radius-md: calc(.5 * var(--su));--radius-lg: calc(.75 * var(--su));--radius-xl: var(--su);--radius-2xl: calc(1.5 * var(--su));font-size:var(--font-base)}.presenter-layout{height:100vh;height:100dvh;background:var(--gradient-dark);color:#fff;display:flex;flex-direction:column;position:relative;overflow:hidden;container:presenter / size}.presenter-layout.embedded{height:100%}.presenter-bg-image{position:absolute;inset:0;background-size:cover;background-position:center;background-repeat:no-repeat;z-index:0;animation:bgFadeIn .6s ease-out}.presenter-bg-image:after{content:"";position:absolute;inset:0;background:#00000080}.presenter-layout>*:not(.presenter-bg-image){position:relative;z-index:1}.presenter-header{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);padding:var(--space-3) var(--space-8);background:#0003;font-size:var(--font-lg)}.presenter-header-title{display:flex;align-items:center;gap:var(--space-3);min-width:0;font-weight:700}.presenter-header-title span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.presenter-header-meta{display:flex;align-items:center;gap:var(--space-5);flex-shrink:0}.presenter-header-join{opacity:.75;white-space:nowrap}.presenter-header-join strong{font-weight:800;letter-spacing:.02em}.presenter-header .participant-count{font-size:var(--font-sm);padding:var(--space-1) var(--space-3)}.presenter-header .participant-dot{width:calc(.4 * var(--su));height:calc(.4 * var(--su))}.presenter-main{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;padding:calc(2 * var(--su0, 16px)) calc(3 * var(--su0, 16px));overflow:hidden}.presenter-stage{width:100%;display:flex;flex-direction:column;align-items:center;gap:var(--space-8);animation:cinematicFadeIn .8s cubic-bezier(.16,1,.3,1) both}.presenter-stage-body{width:100%;min-width:0;display:flex;flex-direction:column;align-items:center}.presenter-slide-title{font-size:var(--font-5xl);font-weight:800;line-height:1.15;text-align:center;margin-bottom:var(--space-8);max-width:calc(60 * var(--su));text-wrap:balance;overflow-wrap:break-word}.presenter-results{width:100%;max-width:calc(64 * var(--su));display:flex;flex-direction:column;align-items:center}@container presenter (min-aspect-ratio: 5/4){.presenter-stage.has-join{flex-direction:row;gap:var(--space-12)}.presenter-stage.has-join .presenter-stage-body{flex:1}.presenter-stage.has-join .presenter-join-card{flex-direction:column;text-align:center}.presenter-stage.has-join .join-info{align-items:center;text-align:center}}.presenter-join-card{flex-shrink:0;display:flex;align-items:center;gap:var(--space-6);padding:var(--space-6);background:#ffffff14;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.18);border-radius:var(--radius-2xl);box-shadow:0 8px 32px #0000004d,inset 0 1px #ffffff1a}.join-qr{background:#fff;padding:var(--space-4);border-radius:var(--radius-xl);display:flex;flex-direction:column;align-items:center;gap:var(--space-2);box-shadow:0 4px 20px #00000040}.join-qr svg{width:calc(11 * var(--su));height:calc(11 * var(--su));display:block}.join-short-id{font-size:var(--font-3xl);font-weight:900;letter-spacing:.15em;color:var(--color-primary-text);line-height:1.1}.join-info{display:flex;flex-direction:column;gap:var(--space-2);text-align:left}.join-label{font-size:var(--font-sm);font-weight:700;text-transform:uppercase;letter-spacing:.12em;opacity:.6}.join-url{font-size:var(--font-2xl);font-weight:800;line-height:1.2}.join-hint{font-size:var(--font-sm);opacity:.5}.presenter-message{text-align:center}.presenter-message h1{font-size:var(--font-6xl);font-weight:900;margin-bottom:var(--space-4)}.presenter-message p{font-size:var(--font-2xl);opacity:.7;margin-bottom:var(--space-8)}.presenter-stage .waiting-screen h2{font-size:var(--font-3xl)}.presenter-stage .admin-empty-results{font-size:var(--font-2xl);color:#ffffff8c;padding:var(--space-8)}.stage-caption{margin-top:var(--space-6);text-align:center;font-size:var(--font-xl);font-weight:500;opacity:.6}.stage-bars{display:grid;grid-template-columns:fit-content(40%) minmax(0,1fr) auto;column-gap:var(--space-5);row-gap:var(--space-4);align-items:center;width:100%}.stage-bar-row{grid-column:1 / -1;display:grid;grid-template-columns:subgrid;align-items:center}.stage-bar-row.dim{opacity:.55}.stage-bar-label{display:flex;align-items:center;gap:var(--space-3);font-size:var(--font-2xl);font-weight:600;line-height:1.2;overflow-wrap:anywhere}.stage-bar-track{height:calc(2.2 * var(--su));background:#ffffff1a;border-radius:var(--radius-lg);overflow:hidden}.stage-bar-fill{height:100%;border-radius:var(--radius-lg);transition:width .8s cubic-bezier(.4,0,.2,1);animation:barGrow .8s ease-out}.stage-bar-value{font-size:var(--font-2xl);font-weight:800;text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.stage-bar-value small{margin-left:var(--space-2);font-size:.6em;font-weight:500;opacity:.55}.stage-badge{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:1.5em;height:1.5em;border-radius:50%;font-size:.7em;font-weight:800;background:#ffffff24}.stage-badge.correct{background:var(--success-500);color:#fff}@container presenter (max-aspect-ratio: 1/1){.stage-bars{grid-template-columns:minmax(0,1fr) auto;row-gap:var(--space-5)}.stage-bar-row{row-gap:var(--space-2)}.stage-bar-label{grid-column:1;grid-row:1}.stage-bar-value{grid-column:2;grid-row:1}.stage-bar-track{grid-column:1 / -1;grid-row:2}}.stage-quiz-summary{display:flex;align-items:baseline;justify-content:center;gap:var(--space-4);margin-bottom:var(--space-6);font-size:var(--font-2xl);opacity:.85}.stage-quiz-summary strong{font-size:var(--font-6xl);font-weight:900;line-height:1}.stage-qa{width:100%;display:grid;gap:var(--space-4)}@container presenter (min-aspect-ratio: 3/2){.stage-qa.multi{grid-template-columns:repeat(2,minmax(0,1fr))}}.stage-qa-card{display:flex;align-items:center;gap:var(--space-5);padding:var(--space-4) var(--space-5);background:#ffffff14;border-radius:var(--radius-xl);animation:fadeInUp .3s ease-out}.stage-qa-votes{flex-shrink:0;min-width:3em;display:flex;flex-direction:column;align-items:center;line-height:1.1}.stage-qa-votes strong{font-size:var(--font-3xl);font-weight:900;color:var(--accent-400)}.stage-qa-votes span{font-size:var(--font-xs);opacity:.6;text-transform:uppercase;letter-spacing:.05em}.stage-qa-text{flex:1;min-width:0;font-size:var(--font-2xl);line-height:1.35;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.presenter-stage .word-cloud-display{min-height:0;padding:0;gap:var(--space-2) var(--space-5);line-height:1.15}.presenter-stage .content-slide{max-width:calc(56 * var(--su))}.presenter-stage .content-slide.layout-split{max-width:none;gap:var(--space-12)}.presenter-stage .content-slide.layout-video{max-width:calc(72 * var(--su))}.presenter-stage .content-slide-bullets{max-width:calc(48 * var(--su))}.presenter-stage .content-slide img{width:auto;max-width:100%;max-height:calc(28 * var(--su));object-fit:contain}.presenter-stage .content-slide.layout-split .content-slide-media img{width:100%;max-height:calc(32 * var(--su))}.presenter-layout>.presenter-key-hint{position:fixed;left:50%;bottom:var(--space-6);transform:translate(-50%);z-index:10000;padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);background:#0009;color:#ffffffd9;font-size:var(--font-sm);white-space:nowrap;pointer-events:none;transition:opacity .6s ease}.presenter-key-hint.hidden{opacity:0}.presenter-key-hint kbd{display:inline-block;min-width:1.6em;padding:0 var(--space-1);border:1px solid rgba(255,255,255,.35);border-radius:var(--radius-sm);font-family:inherit;font-size:.85em;text-align:center}@keyframes slideUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.control-layout{height:100vh;height:100dvh;display:flex;flex-direction:column;background:var(--gray-900);color:#fff}.control-header{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-3) var(--space-4);background:#0000004d;border-bottom:1px solid rgba(255,255,255,.1)}.control-header-title{display:flex;align-items:center;gap:var(--space-2);min-width:0;font-weight:700;font-size:var(--font-sm)}.control-title-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.control-header-actions{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}.control-join-chip{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);border:1px solid rgba(255,255,255,.15);border-radius:var(--radius-full);background:#ffffff0f;color:var(--gray-200);font-size:var(--font-xs);font-weight:600;cursor:pointer;transition:background var(--transition-fast)}.control-join-chip:hover{background:#ffffff1f}.control-join-code{display:none;letter-spacing:.08em}.control-body{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(320px,1fr)}.control-stage-col,.control-side-col{min-height:0;overflow-y:auto;padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-4)}.control-side-col{border-left:1px solid rgba(255,255,255,.08);background:#00000026}.control-section-label,.control-card-label{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-1) var(--space-3);justify-content:space-between;font-size:var(--font-xs);font-weight:700;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.control-card-label{justify-content:flex-start;gap:var(--space-1);margin-bottom:var(--space-3)}.control-section-meta{text-transform:none;letter-spacing:0;font-weight:600}.control-preview{position:relative;align-self:center;width:100%;display:flex;justify-content:center}.scaled-frame{position:relative;overflow:hidden;border-radius:var(--radius-lg);box-shadow:0 0 0 1px #ffffff1f,0 12px 32px #0006;background:#000}.scaled-frame-content{position:absolute;top:0;left:0;transform-origin:top left}.control-preview-blank{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:var(--space-2);background:#000000d9;color:var(--warning-400);font-weight:600;font-size:var(--font-sm);border-radius:var(--radius-lg);text-align:center;padding:var(--space-4)}.control-preview-caption{text-align:center;font-size:var(--font-xs);color:var(--color-text-muted);margin-top:calc(-1 * var(--space-2))}.control-notes{padding:var(--space-4) var(--space-5);background:#ffffff0d;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-xl)}.control-notes-label{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-2);font-size:var(--font-xs);font-weight:700;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.control-notes-text{font-size:var(--font-xl);line-height:1.6;color:var(--gray-100);white-space:pre-wrap}.control-notes-empty{font-size:var(--font-sm);color:var(--color-text-muted);font-style:italic}.control-nav{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:var(--space-3)}.control-nav-btn{display:flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:64px;padding:var(--space-3) var(--space-4);border-radius:var(--radius-xl);border:none;font-weight:700;font-size:var(--font-lg);color:#fff;cursor:pointer;transition:background var(--transition-fast),box-shadow var(--transition-fast),opacity var(--transition-fast)}.control-nav-btn:disabled{opacity:.35;cursor:not-allowed}.control-nav-btn.prev{background:#ffffff1a}.control-nav-btn.prev:not(:disabled):hover{background:#fff3}.control-nav-btn.next{background:var(--gradient-primary)}.control-nav-btn.next:not(:disabled):hover{box-shadow:var(--shadow-glow)}.control-nav-counter{min-width:4.5em;text-align:center;font-weight:700;color:var(--color-text-subtle);font-variant-numeric:tabular-nums}.control-reveal-btn{display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:var(--radius-xl);border:1px solid transparent;background:var(--primary-500);color:#fff;font-weight:700;cursor:pointer}.control-reveal-btn.revealed{background:#10b98126;border-color:#10b98159;color:var(--success-400)}.control-card{padding:var(--space-4);background:#ffffff0a;border-radius:var(--radius-xl)}.control-card .scaled-frame{margin:0 auto}.control-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-2);text-align:center}.control-stats>div{padding:var(--space-3) var(--space-2);background:#ffffff0a;border-radius:var(--radius-lg)}.control-stats strong{display:block;font-size:var(--font-2xl);font-weight:800;line-height:1.2}.control-stats span{font-size:var(--font-xs);color:var(--color-text-muted)}.control-slide-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:var(--space-2)}.control-slide-thumb{display:flex;flex-direction:column;gap:var(--space-1);min-width:0;padding:var(--space-2) var(--space-3);background:#ffffff0f;border:2px solid transparent;border-radius:var(--radius-lg);color:inherit;text-align:left;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.control-slide-thumb:not(:disabled):hover{background:#ffffff1f}.control-slide-thumb.active{border-color:var(--primary-400);background:#6366f133}.control-slide-thumb.is-hidden{opacity:.35;cursor:not-allowed}.control-slide-thumb .thumb-top{display:flex;align-items:center;justify-content:space-between}.control-slide-thumb .thumb-number{display:inline-flex;font-size:var(--font-xs);font-weight:700;color:var(--primary-300)}.control-slide-thumb .thumb-title{font-size:var(--font-xs);color:var(--color-text-subtle);line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.control-slide-thumb .thumb-count{font-size:10px;font-weight:600;color:var(--accent-400)}@media(max-width:900px){.control-layout{height:auto;min-height:100dvh}.control-body{display:flex;flex-direction:column;padding-bottom:calc(96px + env(safe-area-inset-bottom))}.control-stage-col,.control-side-col{overflow:visible;padding:var(--space-4)}.control-side-col{border-left:none;background:none;padding-top:0}.control-nav{position:fixed;left:0;right:0;bottom:0;z-index:50;padding:var(--space-3) var(--space-4) calc(var(--space-3) + env(safe-area-inset-bottom));background:#111827eb;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid rgba(255,255,255,.1)}}@media(max-width:640px){.control-header{flex-wrap:wrap}.control-btn-label,.control-join-url{display:none}.control-join-code,.control-nav .control-btn-label{display:inline}}.editor-layout{display:flex;height:100vh;background:var(--surface-bg)}.editor-sidebar{width:280px;background:var(--color-surface);border-right:1px solid var(--color-border-subtle);display:flex;flex-direction:column;overflow:hidden}.editor-sidebar-header{padding:var(--space-4);border-bottom:1px solid var(--color-border-subtle);display:flex;align-items:center;justify-content:space-between}.editor-slides-list{flex:1;overflow-y:auto;padding:var(--space-3)}.editor-slide-item{display:flex;flex-direction:column;border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast);border:2px solid var(--color-border);margin-bottom:var(--space-3);background:var(--color-surface-muted);overflow:hidden}.editor-slide-item:hover{border-color:var(--color-text-subtle);box-shadow:var(--shadow-md)}.editor-slide-item.active{border-color:var(--primary-400);box-shadow:0 0 0 2px #6366f126}.slide-thumb-header{display:flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);background:var(--color-surface-hover);font-size:10px}.slide-thumb-grip{display:flex;align-items:center;cursor:grab;flex-shrink:0}.slide-thumb-number{font-weight:800;color:var(--color-primary-text);font-size:10px;min-width:14px}.slide-thumb-type{flex:1;color:var(--color-text-muted);font-size:9px;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.editor-slide-item .editor-slide-actions{display:flex;gap:1px;opacity:0;transition:opacity var(--transition-fast);flex-shrink:0}.editor-slide-item:hover .editor-slide-actions{opacity:1}.editor-slide-item .editor-slide-actions .btn-xs{padding:1px;min-width:18px;min-height:18px}.slide-thumb-preview{aspect-ratio:16 / 9;background:var(--gradient-dark);color:#fff;display:flex;align-items:center;justify-content:center;text-align:center;position:relative;overflow:hidden;padding:var(--space-2)}.slide-thumb-preview>*:not(.editor-preview-bg-image){position:relative;z-index:1}.slide-thumb-content{display:flex;flex-direction:column;align-items:center;gap:3px;width:100%;overflow:hidden}.slide-thumb-title{font-size:9px;font-weight:700;line-height:1.2;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word;max-width:100%}.slide-thumb-subtitle{font-size:7px;opacity:.6;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.slide-thumb-options{display:flex;flex-direction:column;gap:2px;width:100%;margin-top:2px}.slide-thumb-option{font-size:7px;padding:1px 4px;background:#ffffff1a;border:1px solid rgba(255,255,255,.15);border-radius:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.4}.slide-thumb-option.correct{border-color:#10b98180;background:#10b98133}.slide-thumb-quiz-grid{display:grid!important;grid-template-columns:1fr 1fr}.slide-thumb-more{font-size:7px;opacity:.5;margin-top:1px}.slide-thumb-rating{display:flex;gap:2px;margin-top:2px}.slide-thumb-rating-dot{width:14px;height:14px;border-radius:3px;border:1px solid rgba(255,255,255,.25);display:flex;align-items:center;justify-content:center;font-size:6px;font-weight:700}.slide-thumb-emojis{display:flex;gap:2px;font-size:12px;margin-top:2px}.slide-thumb-wordcloud{font-size:8px;opacity:.7;margin-top:2px}.editor-slide-item.hidden-slide{opacity:.5}.editor-slide-item.hidden-slide .slide-thumb-preview{filter:grayscale(.6)}.editor-slide-item.hidden-slide.active{opacity:.7}.editor-center{flex:1;display:flex;flex-direction:column;overflow:hidden}.editor-topbar{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-6);background:var(--color-surface);border-bottom:1px solid var(--color-border-subtle);gap:var(--space-4)}.editor-topbar-title{flex:1;min-width:0}.editor-topbar-title input{border:none;font-size:var(--font-xl);font-weight:700;color:var(--color-text);width:100%;outline:none;background:transparent}.editor-topbar-title input::placeholder{color:var(--color-text-subtle)}.editor-preview{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-8);overflow:auto;gap:var(--space-3)}.editor-stage-preview{width:100%;display:flex;flex-direction:column;align-items:center;gap:var(--space-2)}.editor-stage-caption{font-size:var(--font-xs);color:var(--color-text-muted);text-align:center}.editor-preview-type-badge{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-4);background:var(--color-surface-hover);border-radius:var(--radius-full);font-size:var(--font-sm);font-weight:600;color:var(--color-text-secondary)}.editor-preview-card{width:100%;max-width:700px;aspect-ratio:16 / 9;background:var(--gradient-dark);color:#fff;border-radius:var(--radius-2xl);box-shadow:var(--shadow-xl);padding:var(--space-8);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;position:relative;overflow:hidden}.editor-preview-card>*:not(.editor-preview-bg-image){position:relative;z-index:1}.editor-preview-bg-image{position:absolute;inset:0;background-size:cover;background-position:center;background-repeat:no-repeat;z-index:0}.editor-preview-bg-image:after{content:"";position:absolute;inset:0;background:#00000080}.editor-speaker-notes{width:100%;max-width:700px;padding:var(--space-4) var(--space-5);background:var(--color-surface);border:1px solid var(--color-border);border-top:none;border-radius:0 0 var(--radius-xl) var(--radius-xl);margin-top:-4px}.editor-speaker-notes textarea{width:100%;min-height:48px}.editor-config{width:340px;background:var(--color-surface);border-left:1px solid var(--color-border-subtle);overflow-y:auto;padding:var(--space-6)}.editor-config-section{margin-bottom:var(--space-6)}.editor-config-section h3{font-size:var(--font-sm);font-weight:600;color:var(--color-text-secondary);margin-bottom:var(--space-2)}.config-field-hint{font-size:var(--font-xs);color:var(--color-text-muted);margin-top:calc(-1 * var(--space-1));margin-bottom:var(--space-3);line-height:1.5}.editor-config-group{margin-bottom:var(--space-6);border:1px solid var(--color-border-subtle);border-radius:var(--radius-xl);overflow:hidden}.editor-config-group-label{font-size:var(--font-xs);font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--color-text-muted);padding:var(--space-2) var(--space-4);background:var(--color-surface-muted);border-bottom:1px solid var(--color-border-subtle)}.editor-config-group .editor-config-section{padding:var(--space-4);margin-bottom:0;border-bottom:1px solid var(--color-border-subtle)}.editor-config-group .editor-config-section:last-child{border-bottom:none}.content-templates{display:grid;grid-template-columns:repeat(5,1fr);gap:var(--space-2)}.content-template-btn{display:flex;flex-direction:column;align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-1);border:2px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);cursor:pointer;transition:border-color .15s,background .15s,color .15s;font-size:10px;font-weight:600;color:var(--color-text-muted);line-height:1.2;text-align:center}.content-template-btn:hover{border-color:var(--primary-300);background:var(--color-primary-soft);color:var(--color-primary-text)}.content-template-btn.active{border-color:var(--color-primary);background:var(--color-primary-soft);color:var(--color-primary-text)}.tpl-preview{width:40px;height:26px;background:var(--color-surface-hover);border-radius:3px;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:3px;flex-shrink:0}.content-template-btn.active .tpl-preview{background:var(--color-primary-soft)}.tpl-h{height:3px;width:75%;background:currentColor;border-radius:1px;opacity:.65;flex-shrink:0}.tpl-t{height:2px;background:currentColor;border-radius:1px;opacity:.3;flex-shrink:0}.type-picker-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-3)}.type-picker-item{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-4);border-radius:var(--radius-xl);border:2px solid var(--color-border-subtle);cursor:pointer;transition:all var(--transition-fast);background:var(--color-surface);text-align:center}.type-picker-item:hover{border-color:var(--primary-300);background:var(--color-primary-soft)}.type-picker-icon{width:44px;height:44px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;font-size:var(--font-xl)}.type-picker-label{font-size:var(--font-sm);font-weight:600;color:var(--color-text-secondary)}.poll-option{padding:var(--space-4) var(--space-5);border-radius:var(--radius-xl);border:2px solid rgba(255,255,255,.15);background:#ffffff0d;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 4px 16px #0000001a;color:#fff;cursor:pointer;transition:all var(--transition-base);font-size:var(--font-lg);font-weight:500;text-align:center;position:relative;overflow:hidden}.poll-option:hover{border-color:#ffffff4d;background:#ffffff1a;transform:translateY(-2px);box-shadow:0 8px 24px #00000026}.poll-option:active{transform:translateY(1px)}.poll-option.selected{border-color:var(--primary-400);background:#6366f140;box-shadow:0 0 20px #6366f14d}.poll-option.submitted{cursor:default;opacity:.7;transform:none;box-shadow:none}.results-page{max-width:900px;margin:0 auto}.results-header-card{background:var(--color-surface);border-radius:var(--radius-2xl);border:1px solid var(--color-border-subtle);box-shadow:var(--shadow-md);padding:var(--space-8);margin-bottom:var(--space-6)}.results-header-content{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:var(--space-4);margin-bottom:var(--space-6)}.results-title{font-size:var(--font-3xl);font-weight:800;color:var(--color-text);margin-bottom:var(--space-1)}.results-description{color:var(--color-text-muted);font-size:var(--font-base);max-width:500px}.results-stats{display:flex;gap:var(--space-4);flex-wrap:wrap}.results-stat{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-5);background:var(--color-surface-muted);border-radius:var(--radius-xl);min-width:140px}.results-stat-icon{width:40px;height:40px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;flex-shrink:0}.results-stat-value{font-size:var(--font-2xl);font-weight:800;color:var(--color-text);line-height:1}.results-stat-label{font-size:var(--font-xs);color:var(--color-text-muted);font-weight:500;text-transform:uppercase;letter-spacing:.05em}.results-slide-strip{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-2)}.results-nav-arrow{flex-shrink:0;width:36px;height:36px;border-radius:50%;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast);box-shadow:var(--shadow-sm)}.results-nav-arrow:hover:not(:disabled){background:var(--color-surface-muted);border-color:var(--color-text-subtle);box-shadow:var(--shadow-md)}.results-nav-arrow:disabled{opacity:.35;cursor:not-allowed}.results-slide-thumbs{display:flex;gap:var(--space-2);overflow-x:auto;padding:var(--space-2) 0;flex:1;scrollbar-width:thin}.results-slide-thumb{flex-shrink:0;width:110px;padding:var(--space-3);background:var(--color-surface);border:2px solid var(--color-border-subtle);border-radius:var(--radius-xl);cursor:pointer;transition:all var(--transition-fast);text-align:center;box-shadow:var(--shadow-sm)}.results-slide-thumb:hover{border-color:var(--color-border);box-shadow:var(--shadow-md);transform:translateY(-1px)}.results-slide-thumb.active{border-color:var(--primary-400);background:var(--color-primary-soft);box-shadow:0 0 0 3px #6366f11a}.results-thumb-number{font-size:10px;font-weight:800;color:var(--color-text-subtle);margin-bottom:var(--space-1);text-transform:uppercase;letter-spacing:.1em}.results-slide-thumb.active .results-thumb-number{color:var(--primary-400)}.results-thumb-icon{font-size:1.3rem;margin-bottom:2px}.results-thumb-type{font-size:10px;color:var(--color-text-muted);font-weight:500}.results-thumb-count{font-size:9px;color:var(--primary-400);font-weight:700;margin-top:2px}.results-slide-counter{text-align:center;font-size:var(--font-sm);font-weight:600;color:var(--color-text-muted);margin-bottom:var(--space-6)}.results-content-card{background:var(--color-surface);border-radius:var(--radius-2xl);border:1px solid var(--color-border-subtle);box-shadow:var(--shadow-md);overflow:hidden}.results-content-header{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-6) var(--space-8);border-bottom:1px solid var(--color-border-subtle);background:var(--color-surface-muted)}.results-content-icon{font-size:var(--font-2xl);width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--color-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);flex-shrink:0}.results-content-title{font-size:var(--font-xl);font-weight:700;color:var(--color-text);line-height:1.3}.results-content-meta{font-size:var(--font-sm);color:var(--color-text-muted);margin-top:2px}.results-content-body{padding:var(--space-8)}.results-all-cards{display:flex;flex-direction:column;gap:var(--space-6)}.results-slide-card{background:var(--color-surface);border-radius:var(--radius-2xl);border:1px solid var(--color-border-subtle);border-left:4px solid var(--primary-400);box-shadow:var(--shadow-md);padding:var(--space-7, 1.75rem) var(--space-8);animation:resultCardIn .5s cubic-bezier(.22,1,.36,1) both;transition:box-shadow var(--transition-base),transform var(--transition-base)}.results-slide-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}@keyframes resultCardIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.results-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3)}.results-card-badge{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-size:var(--font-xs);font-weight:700;text-transform:uppercase;letter-spacing:.04em}.results-card-badge-icon{font-size:var(--font-sm);line-height:1}.results-card-slide-num{font-size:var(--font-xs);font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.06em}.results-card-title{font-size:var(--font-xl);font-weight:800;color:var(--color-text);line-height:1.3;margin-bottom:var(--space-4)}.results-insight-bar{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-bottom:var(--space-5)}.results-insight-pill{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:var(--color-surface-muted);border:1px solid var(--color-border-subtle);border-radius:var(--radius-full);font-size:var(--font-sm);transition:all var(--transition-fast)}.results-insight-pill:hover{background:var(--color-surface-hover);border-color:var(--color-border)}.results-insight-pill-icon{color:var(--primary-400);display:flex;align-items:center;flex-shrink:0}.results-insight-pill-value{font-weight:700;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px}.results-insight-pill-label{color:var(--color-text-muted);font-weight:500;white-space:nowrap}.results-no-responses{text-align:center;padding:var(--space-8);color:var(--color-text-muted);font-style:italic;font-size:var(--font-sm);background:var(--color-surface-muted);border-radius:var(--radius-xl)}.results-card-viz{padding-top:var(--space-4);border-top:1px solid var(--color-border-subtle)}.admin-result-bar{margin-bottom:var(--space-4)}.admin-result-label{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-2);font-weight:600;font-size:var(--font-sm);color:var(--color-text-secondary)}.admin-result-pct{font-weight:700;color:var(--color-text);font-size:var(--font-sm)}.admin-result-track{height:36px;background:var(--color-surface-hover);border-radius:var(--radius-full);overflow:hidden;position:relative}.admin-result-fill{height:100%;border-radius:var(--radius-full);transition:width .8s cubic-bezier(.4,0,.2,1);animation:barGrow .8s ease-out}.admin-qa-card{display:flex;gap:var(--space-4);align-items:flex-start;padding:var(--space-4) var(--space-5);background:var(--color-surface-muted);border-radius:var(--radius-xl);margin-bottom:var(--space-3);border-left:3px solid var(--primary-300);transition:all var(--transition-fast)}.admin-qa-card:hover{background:var(--color-surface-hover)}.admin-qa-votes{display:flex;flex-direction:column;align-items:center;gap:0;min-width:44px;padding:var(--space-2) var(--space-3);background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.admin-qa-vote-count{font-size:var(--font-lg);font-weight:800;color:var(--color-primary);line-height:1}.admin-qa-vote-label{font-size:9px;color:var(--color-text-muted);font-weight:500;text-transform:uppercase}.admin-qa-text{flex:1;font-size:var(--font-base);line-height:1.5;color:var(--color-text-secondary);padding-top:var(--space-1)}.admin-emoji-card{text-align:center;padding:var(--space-4) var(--space-5);background:var(--color-surface-muted);border-radius:var(--radius-xl);min-width:100px;transition:all var(--transition-fast)}.admin-emoji-card:hover{background:var(--color-surface-hover);transform:translateY(-2px)}.admin-leaderboard{margin-top:var(--space-8);padding-top:var(--space-6);border-top:1px solid var(--color-border-subtle)}.admin-leaderboard-row{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);background:var(--color-surface-muted);border-radius:var(--radius-lg);margin-bottom:var(--space-2);font-size:var(--font-sm);transition:all var(--transition-fast)}.admin-leaderboard-row:first-child{background:var(--color-live-soft)}.admin-leaderboard-row:hover{background:var(--color-surface-hover)}.admin-leaderboard-row:first-child:hover{background:var(--accent-100)}.admin-quiz-accuracy,.admin-rating-avg{padding:var(--space-4) 0;margin-bottom:var(--space-2)}.admin-word-cloud{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--space-4);padding:var(--space-8);min-height:200px;background:var(--color-surface-muted);border-radius:var(--radius-xl)}.admin-empty-results{text-align:center;padding:var(--space-8);color:var(--color-text-muted);font-style:italic}.result-bar-container{margin-bottom:var(--space-3)}.result-bar-label{display:flex;justify-content:space-between;margin-bottom:var(--space-2);font-weight:600;font-size:var(--font-xl)}.result-bar-track{height:40px;background:#ffffff1a;border-radius:var(--radius-lg);overflow:hidden;position:relative}.result-bar-fill{height:100%;border-radius:var(--radius-lg);background:var(--gradient-primary);transition:width .8s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;padding-left:var(--space-4);font-weight:700;font-size:var(--font-base);min-width:fit-content}.word-cloud-display{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-6);min-height:300px}.word-cloud-word{transition:all var(--transition-base);font-weight:700;cursor:default;animation:scaleIn .3s ease-out}.rating-scale{display:flex;gap:var(--space-2);justify-content:center;flex-wrap:wrap}.rating-option{width:56px;height:56px;border-radius:var(--radius-xl);border:2px solid rgba(255,255,255,.15);background:#ffffff0d;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 4px 12px #0000001a;color:#fff;font-size:var(--font-xl);font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-spring)}.rating-option:hover{border-color:var(--accent-400);background:#f9731626;transform:scale(1.1) translateY(-4px);box-shadow:0 8px 24px #f9731633}.rating-option.selected{border-color:var(--accent-400);background:#f973164d;transform:scale(1.15) translateY(-4px);box-shadow:0 12px 32px #f973164d}.emoji-grid{display:flex;gap:var(--space-4);justify-content:center;flex-wrap:wrap}.emoji-btn{width:80px;height:80px;border-radius:var(--radius-2xl);border:2px solid rgba(255,255,255,.15);background:#ffffff0f;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 8px 24px #0000001a;font-size:2.5rem;cursor:pointer;transition:all var(--transition-spring);display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative}.emoji-btn:hover{transform:scale(1.15) translateY(-4px);background:#ffffff26;box-shadow:0 12px 32px #fff3}.emoji-btn:active{transform:scale(.95)}.emoji-btn .emoji-count{font-size:var(--font-xs);color:#ffffffb3;font-weight:600;margin-top:2px}.emoji-float{position:absolute;pointer-events:none;font-size:2rem;animation:emojiFloat 1.5s ease-out forwards}.quiz-timer{width:120px;height:120px;border-radius:50%;border:6px solid rgba(255,255,255,.1);display:flex;flex-direction:column;align-items:center;justify-content:center;margin:0 auto var(--space-6);position:relative}.quiz-timer-ring{position:absolute;inset:-3px;border-radius:50%;border:6px solid transparent;border-top-color:var(--accent-400);animation:spin 1s linear infinite}.quiz-timer-value{font-size:var(--font-4xl);font-weight:900}.quiz-timer-label{font-size:var(--font-xs);opacity:.6;text-transform:uppercase}.qa-input-area{width:100%;max-width:500px}.qa-question-card{padding:var(--space-4);background:#ffffff14;border-radius:var(--radius-xl);margin-bottom:var(--space-3);display:flex;gap:var(--space-4);align-items:flex-start;animation:fadeInUp .3s ease-out}.qa-upvote-btn{display:flex;flex-direction:column;align-items:center;gap:var(--space-1);background:none;border:none;color:#fff9;cursor:pointer;transition:all var(--transition-fast);padding:var(--space-2)}.qa-upvote-btn:hover,.qa-upvote-btn.voted{color:var(--accent-400)}.qa-upvote-btn:disabled{cursor:not-allowed;opacity:.7}.qa-upvote-count{font-size:var(--font-sm);font-weight:700}.qa-question-text{flex:1;font-size:var(--font-base);line-height:1.5}.ranking-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);background:#ffffff14;border:2px solid rgba(255,255,255,.1);border-radius:var(--radius-xl);margin-bottom:var(--space-2);cursor:grab;transition:background var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast);user-select:none;-webkit-user-select:none;touch-action:manipulation}.ranking-item:active{cursor:grabbing}.ranking-item.dragging{background:#6366f14d;border-color:var(--primary-400);box-shadow:var(--shadow-glow)}.ranking-handle{color:#ffffff4d}.ranking-number{width:32px;height:32px;border-radius:var(--radius-md);background:#ffffff26;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:var(--font-sm);flex-shrink:0}.ranking-label{flex:1;font-weight:500}.content-slide{text-align:center;width:100%;max-width:700px;margin:0 auto;display:flex;flex-direction:column;align-items:center}.content-slide h1{font-size:var(--font-5xl);font-weight:900;margin-bottom:var(--space-6);line-height:1.2}.content-slide p{font-size:var(--font-xl);line-height:1.7;opacity:.85}.content-slide-subtitle{opacity:.55;font-weight:500;margin-bottom:var(--space-4)}.content-slide-bullets{text-align:left;line-height:1.8;opacity:.85;padding-left:var(--space-6);margin-top:var(--space-4);width:100%;max-width:600px}.content-slide-bullets li{margin-bottom:var(--space-2)}.content-slide.layout-split{flex-direction:row;text-align:left;align-items:center;gap:var(--space-10);max-width:1000px}.content-slide.layout-split .content-slide-text,.content-slide.layout-split .content-slide-image,.content-slide.layout-split .content-slide-media{flex:1;min-width:0}.content-slide.layout-split .content-slide-image img,.content-slide.layout-split .content-slide-media img{width:100%;border-radius:var(--radius-xl);object-fit:cover;max-height:500px}.content-slide.layout-video{align-items:center;text-align:center;width:100%;max-width:900px}.content-video-wrapper{width:100%;aspect-ratio:16 / 9;border-radius:var(--radius-xl);overflow:hidden;margin-top:var(--space-6);background:#000}.content-video-wrapper iframe{width:100%;height:100%;border:none;display:block}.content-slide.layout-split .content-slide-media .content-video-wrapper{margin-top:0}@media(max-width:768px){.content-slide.layout-split{flex-direction:column;text-align:center;gap:var(--space-6)}}.rich-text-editor{border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;background:var(--color-surface);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.rich-text-editor:focus-within{border-color:var(--primary-400);box-shadow:0 0 0 3px #6366f11f}.rte-toolbar{display:flex;align-items:center;gap:2px;padding:var(--space-1) var(--space-2);background:var(--color-surface-muted);border-bottom:1px solid var(--color-border);flex-wrap:wrap}.rte-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast)}.rte-btn:hover{background:var(--gray-200);color:var(--color-text)}.rte-btn:active{background:var(--color-primary-soft);color:var(--color-primary-text)}.rte-separator{width:1px;height:18px;background:var(--gray-200);margin:0 var(--space-1)}.rte-content{padding:var(--space-3) var(--space-4);font-size:var(--font-sm);line-height:1.6;color:var(--color-text);outline:none;overflow-y:auto;max-height:300px}.rte-content:empty:before{content:attr(data-placeholder);color:var(--color-text-muted);pointer-events:none}.rte-content ul,.rte-content ol{padding-left:var(--space-5);margin:var(--space-1) 0}.rte-content li{margin-bottom:var(--space-1)}.rich-text-body{line-height:1.7;word-break:break-word;text-align:left}.rich-text-body ul,.rich-text-body ol{padding-left:var(--space-6);margin:var(--space-2) 0;text-align:left}.rich-text-body li{margin-bottom:var(--space-1)}.rich-text-body b,.rich-text-body strong{font-weight:700}.rich-text-body i,.rich-text-body em{font-style:italic}.rich-text-body u{text-decoration:underline}.rich-text-body s,.rich-text-body strike{text-decoration:line-through}.waiting-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:var(--space-4);padding:var(--space-8)}.waiting-dots{display:flex;gap:var(--space-2)}.waiting-dots span{width:10px;height:10px;border-radius:50%;background:var(--primary-400);animation:bounce 1.4s ease-in-out infinite}.waiting-dots span:nth-child(2){animation-delay:.2s}.waiting-dots span:nth-child(3){animation-delay:.4s}.join-container{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--gradient-dark);padding:var(--space-6);text-align:center;color:#fff}.join-card{background:#ffffff14;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.15);border-radius:var(--radius-2xl);padding:var(--space-10);width:100%;max-width:420px;animation:fadeInUp .6s ease-out}.join-code-input{width:100%;padding:var(--space-5);font-size:var(--font-3xl);font-weight:800;text-align:center;letter-spacing:.15em;text-transform:uppercase;background:#ffffff1a;border:2px solid rgba(255,255,255,.2);border-radius:var(--radius-xl);color:#fff;outline:none;transition:all var(--transition-fast)}.join-code-input::placeholder{color:#ffffff4d;letter-spacing:.1em}.join-code-input:focus{border-color:var(--primary-400);box-shadow:0 0 0 4px #6366f133}.landing-hero{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--gradient-dark);color:#fff;text-align:center;padding:var(--space-8);position:relative;overflow:hidden}.landing-hero:before{content:"";position:absolute;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(99,102,241,.15) 0%,transparent 70%);top:-200px;right:-200px}.landing-hero:after{content:"";position:absolute;width:400px;height:400px;border-radius:50%;background:radial-gradient(circle,rgba(168,85,247,.1) 0%,transparent 70%);bottom:-100px;left:-100px}.landing-hero-content{position:relative;z-index:1;max-width:700px;animation:fadeInUp .8s ease-out}.landing-logo{font-size:var(--font-6xl);font-weight:900;margin-bottom:var(--space-4);background:linear-gradient(135deg,#fff,#c7d2fe,#a5b4fc);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1.1}.landing-tagline{font-size:var(--font-xl);color:#ffffffb3;margin-bottom:var(--space-10);line-height:1.6}.landing-actions{display:flex;gap:var(--space-4);justify-content:center;flex-wrap:wrap}.landing-features{padding:var(--space-20) var(--space-8);background:var(--color-surface)}.landing-features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-8);max-width:1100px;margin:0 auto}.landing-feature-card{padding:var(--space-8);text-align:center}.landing-feature-icon{width:64px;height:64px;border-radius:var(--radius-xl);background:var(--color-primary-soft);color:var(--color-primary);display:flex;align-items:center;justify-content:center;margin:0 auto var(--space-4);font-size:var(--font-2xl)}.landing-feature-card h3{font-size:var(--font-lg);font-weight:700;margin-bottom:var(--space-2);color:var(--color-text)}.landing-feature-card p{color:var(--color-text-muted);line-height:1.6}.participant-count{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:#10b98126;color:var(--success-400);border-radius:var(--radius-full);font-weight:600;font-size:var(--font-sm)}.participant-dot{width:8px;height:8px;border-radius:50%;background:var(--success-400);animation:pulse 2s ease-in-out infinite}@media(max-width:768px){.landing-logo{font-size:var(--font-4xl)}.landing-tagline{font-size:var(--font-base)}.editor-layout{flex-direction:column;height:auto;min-height:100vh}.editor-sidebar{width:100%;max-height:200px}.editor-config{width:100%;border-left:none;border-top:1px solid var(--color-border-subtle)}.type-picker-grid{grid-template-columns:repeat(2,1fr)}.emoji-btn{width:64px;height:64px;font-size:2rem}.rating-option{width:48px;height:48px}}@media(max-width:480px){.landing-actions{flex-direction:column;align-items:center}.editor-topbar{flex-wrap:wrap}}@keyframes cinematicFadeIn{0%{opacity:0;transform:scale(.98) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes floatUp{0%{opacity:1;transform:translateY(0) scale(1)}50%{opacity:.9;transform:translateY(-40vh) scale(1.2)}to{opacity:0;transform:translateY(-80vh) scale(.8)}}.moderation-list{list-style:none;margin:0;padding:0;max-height:320px;overflow-y:auto;display:flex;flex-direction:column;gap:var(--space-1)}.moderation-item{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:#ffffff0a}.moderation-item.hidden,.moderation-item.filtered{background:#f43f5e1a}.moderation-item.hidden .moderation-text span,.moderation-item.filtered .moderation-text span{text-decoration:line-through;opacity:.6}.moderation-text{min-width:0;display:flex;flex-direction:column;font-size:var(--font-sm);overflow-wrap:anywhere}.moderation-text small{font-size:var(--font-xs);color:var(--color-text-muted)}.share-modal{max-width:460px}.share-qr{display:flex;justify-content:center;padding:var(--space-4);background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-xl)}.share-qr svg{width:220px;height:220px}.share-address{display:flex;flex-direction:column;align-items:center;gap:var(--space-1);margin-top:var(--space-4);color:var(--color-text-secondary)}.share-address strong{font-size:var(--font-lg);color:var(--color-text);word-break:break-all;text-align:center}.share-address b{letter-spacing:.1em;color:var(--color-primary-text)}.share-hint{margin:var(--space-4) 0;font-size:var(--font-sm);color:var(--color-text-muted);text-align:center;line-height:1.5}.share-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-2)}.share-actions .btn-primary{grid-column:1 / -1}.handout-page{min-height:100vh;background:var(--color-surface-hover);padding-bottom:var(--space-8)}.handout-toolbar{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-surface);border-bottom:1px solid var(--color-border)}.handout-layouts{display:flex;gap:var(--space-2)}.handout-sheet{width:190mm;min-height:260mm;margin:var(--space-6) auto 0;padding:12mm;background:#fff;color:#111;box-shadow:var(--shadow-lg);box-sizing:border-box}.handout-poster{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.handout-eyebrow{font-size:14pt;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:#555}.handout-poster h1{margin:6mm 0 10mm;font-size:34pt;line-height:1.15;text-wrap:balance}.handout-qr svg{width:120mm;height:120mm}.handout-scan{margin-top:8mm;font-size:16pt;color:#444}.handout-url{margin-top:2mm;font-size:26pt;font-weight:800}.handout-code{margin-top:4mm;font-size:14pt;color:#444}.handout-code b{letter-spacing:.12em}.handout-cards{display:grid;grid-template-columns:repeat(2,1fr);grid-auto-rows:1fr;gap:0;padding:0}.handout-card{display:flex;align-items:center;gap:5mm;padding:6mm;border:1px dashed #bbb}.handout-card svg{flex-shrink:0;width:38mm;height:38mm}.handout-card-title{font-size:12pt;font-weight:800;line-height:1.2}.handout-card-url{margin-top:2mm;font-size:11pt;font-weight:700}.handout-card-code{margin-top:1mm;font-size:10pt;color:#444}@media print{@page{margin:10mm}.handout-toolbar{display:none}.handout-page{background:none;padding:0}.handout-sheet{margin:0;box-shadow:none;width:auto;min-height:0;height:270mm}}.ds-page{display:grid;grid-template-columns:repeat(auto-fit,minmax(420px,1fr));min-height:100vh}.ds-column{padding:var(--space-10);background:var(--color-bg);color:var(--color-text)}.ds-swatches{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:var(--space-3)}.ds-swatch{display:flex;align-items:center;gap:var(--space-3)}.ds-swatch>span{flex-shrink:0;width:36px;height:36px;border-radius:var(--radius-md);border:1px solid var(--color-border)}.talk-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--space-5)}.talk-card{position:relative;display:flex;flex-direction:column;overflow:visible}.talk-card-thumb{position:relative;width:100%;aspect-ratio:16 / 9;overflow:hidden;border-radius:var(--radius-xl) var(--radius-xl) 0 0;background:var(--gray-900)}.talk-card-status{position:absolute;top:var(--space-3);left:var(--space-3);z-index:2}.talk-card-menu{position:absolute;top:var(--space-3);right:var(--space-3);z-index:10}.talk-card-menu .menu{position:absolute;right:0;top:calc(100% + var(--space-1))}.talk-card-body{flex:1;display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4) var(--space-5) var(--space-5)}.talk-card-title{font-size:var(--font-lg);font-weight:700;line-height:1.3;color:var(--color-text)}.talk-card-desc{font-size:var(--font-sm);color:var(--color-text-muted);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.talk-card-meta{display:flex;align-items:center;gap:var(--space-4);margin-top:auto;padding-top:var(--space-2);font-size:var(--font-xs);color:var(--color-text-muted)}.talk-card-code{font-weight:700;letter-spacing:.06em;color:var(--color-primary-text)}.theme-preview{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-6);border-radius:var(--radius-xl);text-align:center}.theme-preview-chip{padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);color:#fff;font-size:var(--font-xs);font-weight:600}.theme-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.color-swatch-input{flex-shrink:0;width:var(--control-sm);height:var(--control-sm);padding:0;border:1px solid var(--color-border);border-radius:var(--radius-md);background:none;cursor:pointer}@media(max-width:480px){.theme-grid{grid-template-columns:1fr}}.editor-config-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-6);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border-subtle)}.editor-config-type{display:flex;align-items:center;gap:var(--space-3)}.editor-config-type-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:var(--radius-lg);background:var(--color-surface-muted);font-size:var(--font-xl)}.audience-question{font-size:var(--font-2xl);font-weight:700;line-height:1.3;text-align:center;text-wrap:balance;margin-bottom:var(--space-6)}.audience-question.tight{margin-bottom:var(--space-4)}.audience-question.tighter{margin-bottom:var(--space-2)}.audience-note{margin-top:var(--space-4);text-align:center;font-size:var(--font-sm);color:var(--color-text-muted)}.audience-note.strong{color:var(--color-text);font-weight:600}.audience-note.danger{color:var(--color-danger-text)}.audience-hint{margin-bottom:var(--space-5);text-align:center;font-size:var(--font-sm);color:var(--color-text-muted)}.audience-input-row{display:flex;gap:var(--space-2);margin-bottom:var(--space-4)}.audience-input{flex:1;min-height:var(--control-lg);padding:0 var(--space-4);font-size:var(--font-lg);border-radius:var(--radius-xl)}.audience-submit{margin-top:var(--space-4)}.table-row-link{cursor:pointer}.user-hero{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-5);padding:var(--space-6);margin-bottom:var(--space-6)}.user-hero-dates{display:flex;flex-direction:column;gap:var(--space-2);font-size:var(--font-sm);color:var(--color-text-muted)}
