.login-overlay{position:fixed;left:0;top:0;width:100%;height:100%;background:linear-gradient(135deg,var(--primary-50) 0%,var(--neutral-50) 100%);display:flex;justify-content:center;align-items:flex-start;z-index:var(--z-modal);overflow-y:auto;padding:var(--space-8) var(--space-4);box-sizing:border-box}#nickname{margin-bottom:var(--space-5)}.login-overlay.dramaturg-dark{background:#0a0a0a;animation:flicker 4s infinite}.login-overlay.dramaturg-dark:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(transparent 50%,#ffffff08 50%);background-size:100% 6px;z-index:2;pointer-events:none;animation:scanlines .8s linear infinite}.login-overlay:not(.dramaturg-dark):before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at 20% 80%,var(--primary-100) 0%,transparent 50%),radial-gradient(circle at 80% 20%,var(--primary-50) 0%,transparent 50%),radial-gradient(circle at 40% 40%,var(--neutral-100) 0%,transparent 50%);opacity:.6;animation:gradient-shift 15s ease infinite}@keyframes gradient-shift{0%,to{transform:translate(0)}33%{transform:translate(-20px,-20px)}66%{transform:translate(20px,-10px)}}@keyframes scanlines{0%{background-position:0 0}to{background-position:0 6px}}@keyframes flicker{0%,to{opacity:1}95%{opacity:.98}}.login-box{background:#fff;padding:var(--space-10) var(--space-8);border-radius:var(--radius-2xl);box-shadow:var(--shadow-xl);text-align:center;width:90%;max-width:400px;position:relative;z-index:10;animation:fade-in-up .6s ease-out;margin:auto;min-height:fit-content}@keyframes fade-in-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.login-title,.login-subtitle{color:#fff}.login-box h2{margin-top:0;margin-bottom:var(--space-8);color:var(--neutral-900);font-size:var(--text-3xl);font-weight:var(--font-bold)}.input-group{margin-bottom:var(--space-5);text-align:left}.input-group label{display:block;margin-bottom:var(--space-2);margin-top:var(--space-4);font-weight:var(--font-medium);color:var(--neutral-700);font-size:var(--text-sm)}.input-group input,.input-group select{width:100%;padding:var(--space-3) var(--space-4);background:var(--neutral-50);border:1px solid var(--neutral-300);border-radius:var(--radius-md);box-sizing:border-box;font-size:var(--text-base);color:var(--neutral-900);transition:var(--transition-paint-fast)}.input-group.input-group-checkbox{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:var(--space-4)}.input-group.input-group-checkbox label{margin:0}.input-group input[type=checkbox]{width:auto;flex:none;margin:0;padding:0}.input-group input:hover,.input-group select:hover{border-color:var(--neutral-400)}.input-group input:focus,.input-group select:focus{outline:none;border-color:var(--primary-500);box-shadow:0 0 0 3px #14b8a61a;background:#fff}.login-error{color:var(--danger-color);margin-top:calc(var(--space-2) * -1);margin-bottom:var(--space-4);font-size:var(--text-sm);font-weight:var(--font-medium);text-align:left}.login-box button{width:100%;padding:var(--space-3) var(--space-6);font-size:var(--text-base);font-weight:var(--font-semibold);background:var(--primary-600);color:#fff;border:none;border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-paint-base);margin-top:var(--space-6)}.login-box button:hover:not(:disabled){background:var(--primary-700);transform:translateY(-1px);box-shadow:var(--shadow-md)}.login-box button:active:not(:disabled){transform:translateY(0);box-shadow:var(--shadow-sm)}.login-box button:disabled{background:var(--neutral-300);color:var(--neutral-500);cursor:not-allowed;opacity:.7}.login-welcome{margin:0 0 var(--space-4);font-size:var(--text-base);color:var(--neutral-700);text-align:left}.login-box button.login-secondary{background:none;border:none;color:var(--primary-600);font-weight:var(--font-medium);margin-top:var(--space-3);box-shadow:none}.login-box button.login-secondary:hover:not(:disabled){background:none;transform:none;box-shadow:none;text-decoration:underline}.login-box button:focus-visible{outline:none;box-shadow:0 0 0 2px #fff,0 0 0 4px var(--primary-500)}.whelk-mage{position:absolute;z-index:1;width:200px;height:auto;opacity:.1;filter:none;animation:float 6s ease-in-out infinite}.whelk-mage:first-of-type{left:10%;top:10%;animation-delay:0s}.whelk-mage.right{right:10%;bottom:10%;animation-delay:3s}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}@media (max-width: 480px){.login-box{padding:var(--space-8) var(--space-6);width:95%}.login-box h2{font-size:var(--text-2xl)}.whelk-mage{width:150px}}.login-overlay.dramaturg-dark .login-box{background:#000000e6;border:1px solid rgba(255,255,255,.2);color:#fff;border-radius:0;font-family:IBM Plex Mono,monospace}.login-overlay.dramaturg-dark .login-box h2{color:#fff;font-family:IBM Plex Mono,monospace;font-weight:500;font-size:1.5rem;letter-spacing:-.02em}.login-overlay.dramaturg-dark .login-box h4{color:#fff;font-family:IBM Plex Mono,monospace;font-weight:400;font-size:1.1rem;letter-spacing:-.02em;margin-bottom:1.5rem}.login-overlay.dramaturg-dark .input-group label{color:#fffc;font-family:IBM Plex Mono,monospace;font-size:.875rem}.login-overlay.dramaturg-dark .input-group input,.login-overlay.dramaturg-dark .input-group select{color-scheme:dark;background:#000c;border-color:#ffffff4d;color:#fff;font-family:IBM Plex Mono,monospace;font-size:.875rem;border-radius:0}.login-overlay.dramaturg-dark .input-group input:hover,.login-overlay.dramaturg-dark .input-group select:hover{border-color:#ffffff80}.login-overlay.dramaturg-dark .input-group input:focus,.login-overlay.dramaturg-dark .input-group select:focus{border-color:#fff9;background:#000000e6;box-shadow:none}.login-overlay.dramaturg-dark .input-group input::placeholder{color:#fff6}.login-overlay.dramaturg-dark .login-box button{background:#ffffff1a;border:1px solid rgba(255,255,255,.3);font-family:IBM Plex Mono,monospace;font-size:.875rem;font-weight:500;border-radius:0;letter-spacing:.02em}.login-overlay.dramaturg-dark .login-box button:hover:not(:disabled){background:#ffffff26;border-color:#ffffff80;transform:none;box-shadow:none}.login-overlay.dramaturg-dark .login-box button:disabled{background:#ffffff0d;border-color:#fff3;color:#ffffff80;opacity:1}.login-overlay.dramaturg-dark .login-welcome{color:#fffc;font-family:IBM Plex Mono,monospace;font-size:.875rem}.login-overlay.dramaturg-dark .login-box button.login-secondary{background:none;border:none;color:#ffffffb3}.login-overlay.dramaturg-dark .login-box button.login-secondary:hover:not(:disabled){background:none;border:none;color:#fff;text-decoration:underline}.login-overlay.dramaturg-dark .login-error{font-family:IBM Plex Mono,monospace;font-size:.875rem}.login-overlay.dramaturg-dark small{color:#ffffffb3;font-family:IBM Plex Mono,monospace}:root{--neutral-50: #ffffff;--neutral-100: #f8f9fa;--neutral-200: #e9ecef;--neutral-300: #dee2e6;--neutral-400: #ced4da;--neutral-500: #adb5bd;--neutral-600: #6c757d;--neutral-700: #495057;--neutral-800: #343a40;--neutral-900: #212529;--neutral-950: #000000;--surface-1: var(--neutral-50);--surface-2: var(--neutral-100);--primary-50: #e6f5ef;--primary-100: #cfeadf;--primary-200: #a9dcc6;--primary-300: #6fcaa6;--primary-400: #3fbf95;--primary-500: #0fb080;--primary-600: #0d9b70;--primary-700: #0a8561;--primary-800: #096f51;--primary-900: #04412f;--border-width: 1px;--on-accent: #ffffff;--on-accent-dim: color-mix(in oklab, var(--on-accent) 78%, transparent);--tint-strength: 12%;--success-vivid: #22c55e;--cue-color: #e05622;--cue-hover: color-mix(in oklab, var(--cue-color) 82%, black);--cue-light: color-mix(in oklab, var(--cue-color) var(--tint-strength), var(--neutral-50));--audio-color: #0a85c2;--audio-light: color-mix(in oklab, var(--audio-color) var(--tint-strength), var(--neutral-50));--template-color: var(--primary-600);--template-hover: var(--primary-700);--template-light: var(--primary-50);--template-100: var(--primary-100);--generated-color: #6f42c1;--generated-hover: color-mix(in oklab, var(--generated-color) 82%, black);--generated-light: color-mix(in oklab, var(--generated-color) var(--tint-strength), var(--neutral-50));--group-color: #1c6fd1;--group-hover: color-mix(in oklab, var(--group-color) 82%, black);--group-light: color-mix(in oklab, var(--group-color) var(--tint-strength), var(--neutral-50));--group-200: color-mix(in oklab, var(--group-color) 30%, var(--neutral-50));--user-color: var(--group-color);--user-hover: var(--group-hover);--user-light: var(--group-light);--user-200: var(--group-200);--user-surface: var(--group-color);--voice-color: #c2255c;--voice-hover: color-mix(in oklab, var(--voice-color) 82%, black);--voice-light: color-mix(in oklab, var(--voice-color) var(--tint-strength), var(--neutral-50));--voice-100: var(--voice-light);--voice-200: color-mix(in oklab, var(--voice-color) 30%, var(--neutral-50));--danger-color: #c92a2a;--danger-hover: color-mix(in oklab, var(--danger-color) 82%, black);--danger-light: color-mix(in oklab, var(--danger-color) var(--tint-strength), var(--neutral-50));--success-color: #2b8a3e;--success-100: color-mix(in oklab, var(--success-color) var(--tint-strength), var(--neutral-50));--success-200: color-mix(in oklab, var(--success-color) 30%, var(--neutral-50));--warning-color: #b06d00;--warning-light: color-mix(in oklab, var(--warning-color) var(--tint-strength), var(--neutral-50));--stage-attention: var(--primary-600);--stage-room-cold: hsl(215 22% 55%);--map-wall: hsl(215 24% 58%);--map-outside: hsl(215 20% 88%);--map-zone: hsl(215 28% 52%);--map-label: hsl(215 22% 46%);--map-mark: hsl(215 22% 46%);--map-aim: hsl(215 62% 46%);--audience-color: var(--group-color);--performer-color: var(--voice-color);--dramaturg-color: var(--crew-accent-strong);--group-dot-audience: var(--group-color);--group-dot-performer: var(--voice-color);--group-dot-dramaturg: var(--crew-accent);--group-dot-custom: #9aa2ab;--action-button-color: var(--cue-color);--action-button-hover: var(--cue-hover);--danger: var(--danger-color);--danger-100: var(--danger-light);--danger-400: var(--danger-color);--danger-500: var(--danger-color);--danger-600: var(--danger-color);--danger-700: var(--danger-hover);--warning-100: var(--warning-light);--warning-200: var(--warning-light);--warning-500: var(--warning-color);--warning-700: var(--warning-color);--success-500: var(--success-color);--success-700: var(--success-color);--border: var(--border-color);--text: var(--text-primary);--accent: var(--accent-color);--input-bg: var(--surface-1);--surface: var(--surface-1);--background-secondary: var(--surface-2);--neutral-0: var(--neutral-50);--neutral-30: var(--text-secondary);--neutral-80: var(--neutral-200);--neutral-90: var(--neutral-100);--radius: var(--radius-md);--simple-radius: var(--radius-md);--chip-selected: var(--neutral-50);--chip-selected-ink: var(--text-primary);--app-background: #f3f4f6;--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Helvetica Neue", Arial, sans-serif;--font-mono: "SF Mono", Monaco, "Inconsolata", "Fira Code", "Courier New", monospace;--text-xs: .7rem;--text-sm: .8125rem;--text-base: .875rem;--text-lg: 1rem;--text-xl: 1.125rem;--text-2xl: 1.25rem;--text-3xl: 1.5rem;--text-4xl: 2rem;--font-normal: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--space-1: .125rem;--space-2: .25rem;--space-3: .375rem;--space-4: .5rem;--space-5: .625rem;--space-6: .75rem;--space-8: 1rem;--space-10: 1.25rem;--space-12: 1.5rem;--space-16: 2rem;--radius-sm: .125rem;--radius-md: .25rem;--radius-lg: .375rem;--radius-xl: .5rem;--radius-2xl: .75rem;--radius-full: 9999px;--shadow-xs: 0 1px 2px 0 rgb(0 0 0 / .08);--shadow-sm: 0 2px 4px 0 rgb(0 0 0 / .1);--shadow-md: 0 4px 8px 0 rgb(0 0 0 / .12);--shadow-lg: 0 8px 16px 0 rgb(0 0 0 / .15);--shadow-xl: 0 12px 24px 0 rgb(0 0 0 / .18);--transition-fast: .1s ease;--transition-base: .15s ease;--transition-slow: .2s ease;--transition-paint-fast: background var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast), box-shadow var(--transition-fast), opacity var(--transition-fast), transform var(--transition-fast);--transition-paint-base: background var(--transition-base), border-color var(--transition-base), color var(--transition-base), box-shadow var(--transition-base), opacity var(--transition-base), transform var(--transition-base);--transition-paint-slow: background var(--transition-slow), border-color var(--transition-slow), color var(--transition-slow), box-shadow var(--transition-slow), opacity var(--transition-slow), transform var(--transition-slow);--z-base: 0;--z-stage-chip: 20;--z-stage-menu: 40;--z-modal: 500;--container-padding: clamp(.5rem, 3vw, 1rem);--container-max-width: 1400px;--panel-gap: var(--space-4);--section-margin: var(--space-4);--title-margin: var(--space-4);--text-primary: var(--neutral-900);--text-secondary: var(--neutral-700);--text-muted: var(--neutral-600);--text-2: var(--text-secondary);--text-3: var(--text-muted);--background: var(--surface-1);--border-color: var(--neutral-300);--accent-color: var(--primary-600);--accent-color-darker: var(--primary-800);--accent-color-lighter: var(--primary-400)}[data-theme=dark]{--neutral-50: #1a1a1a;--neutral-100: #2d2d2d;--neutral-200: #404040;--neutral-300: #525252;--neutral-400: #737373;--neutral-500: #a3a3a3;--neutral-600: #c4c4c4;--neutral-700: #d4d4d4;--neutral-800: #c4c4c4;--neutral-900: #d4d4d4;--neutral-950: #ffffff;--primary-50: #1a3129;--primary-100: #1f3b31;--primary-200: #2a4d40;--primary-300: #3b6b58;--primary-400: #2fb88f;--primary-500: #4ad3aa;--primary-600: #4ad3aa;--primary-700: #6fe0bd;--primary-800: #9aebd1;--primary-900: #c9f5e6;--on-accent: #101214;--tint: var(--neutral-100);--cue-color: #ff7f31;--cue-hover: color-mix(in oklab, var(--cue-color) 82%, white);--cue-light: var(--tint);--audio-color: #66d9e8;--audio-light: var(--tint);--template-light: var(--tint);--template-100: var(--tint);--generated-color: #b197fc;--generated-hover: color-mix(in oklab, var(--generated-color) 82%, white);--generated-light: var(--tint);--success-vivid: var(--success-color);--group-color: #74b3ff;--group-hover: color-mix(in oklab, var(--group-color) 82%, white);--group-light: var(--tint);--group-200: var(--neutral-200);--voice-color: #faa2c1;--voice-hover: color-mix(in oklab, var(--voice-color) 82%, white);--voice-light: var(--tint);--voice-200: var(--neutral-200);--danger-color: #ff8787;--danger-hover: color-mix(in oklab, var(--danger-color) 82%, white);--danger-light: var(--tint);--success-color: #69db7c;--success-100: var(--tint);--success-200: var(--neutral-200);--warning-color: #f2b64d;--warning-light: var(--tint);--stage-attention: var(--primary-500);--stage-room-cold: hsl(215 30% 62%);--map-wall: hsl(215 20% 46%);--map-outside: hsl(215 16% 26%);--map-zone: hsl(215 26% 62%);--map-label: hsl(215 24% 62%);--map-mark: hsl(215 24% 62%);--map-aim: hsl(215 70% 66%);--audience-color: var(--neutral-100);--performer-color: var(--neutral-100);--dramaturg-color: var(--neutral-100);--group-dot-custom: #8a8a8a;--chip-selected: var(--neutral-700);--chip-selected-ink: var(--neutral-50);--app-background: #0a0a0a;--text-primary: #d0d0d0;--text-secondary: #b8b8b8;--text-muted: #999999;--border-color: #2a2a2a;--accent-color: var(--primary-500);--accent-color-darker: var(--primary-700);--accent-color-lighter: var(--primary-300);--shadow-xs: 0 1px 2px 0 rgb(0 0 0 / .3);--shadow-sm: 0 2px 4px 0 rgb(0 0 0 / .4);--shadow-md: 0 4px 8px 0 rgb(0 0 0 / .5);--shadow-lg: 0 8px 16px 0 rgb(0 0 0 / .6);--shadow-xl: 0 12px 24px 0 rgb(0 0 0 / .7)}*,*:before,*:after{box-sizing:border-box}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{margin:0;padding:0;font-family:var(--font-sans);font-size:var(--text-base);font-weight:var(--font-normal);line-height:1.4;color:var(--text-primary);background-color:var(--app-background)}#root{min-height:100vh;display:flex;flex-direction:column}h1,h2,h3,h4,h5,h6{margin:0 0 var(--space-3) 0;font-weight:var(--font-semibold);line-height:1.2;color:var(--neutral-900)}h1{font-size:var(--text-3xl)}h2{font-size:var(--text-2xl)}h3{font-size:var(--text-xl)}h4{font-size:var(--text-lg)}h5{font-size:var(--text-base)}h6{font-size:var(--text-sm)}p{margin:0 0 var(--space-3) 0}a{color:var(--accent-color);text-decoration:none;transition:color var(--transition-fast);font-weight:var(--font-medium)}a:hover{color:var(--accent-color-darker);text-decoration:underline}button{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-3) var(--space-6);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--font-semibold);line-height:1.4;color:#fff;background-color:var(--neutral-800);border:1px solid var(--neutral-800);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-paint-fast);outline:none;-webkit-user-select:none;user-select:none}:where(:root){--button-filled-hover-bg: var(--neutral-900)}:where([data-theme=dark]){--button-filled-hover-bg: var(--neutral-50)}button:hover:not(:where(:disabled)){background-color:var(--button-hover-bg, var(--button-filled-hover-bg));border-color:var(--button-hover-border, var(--button-hover-bg, var(--button-filled-hover-bg)))}:where(.flat-hover){--button-hover-bg: transparent}button:focus-visible{outline:2px solid var(--ring-color, var(--accent-color));outline-offset:1px}button:disabled{opacity:.5;cursor:not-allowed}button.primary-action{background-color:var(--accent-color);border-color:var(--accent-color);color:var(--neutral-50);font-weight:var(--font-bold)}button.primary-action:hover:not(:disabled){background-color:var(--accent-color-darker);border-color:var(--accent-color-darker)}.small-button{padding:var(--space-1) var(--space-2);font-size:var(--text-xs);min-width:1.25rem;min-height:1.25rem}input,textarea,select{width:100%;padding:var(--space-3) var(--space-4);font-family:var(--font-sans);font-size:var(--text-sm);color:var(--text-primary);background-color:var(--neutral-50);border:1px solid var(--border-color);border-radius:var(--radius-md);transition:var(--transition-paint-fast);outline:none}input:hover,textarea:hover,select:hover{border-color:var(--neutral-500)}input:focus,textarea:focus,select:focus{border-color:var(--ring-color, var(--accent-color));box-shadow:0 0 0 2px color-mix(in oklab,var(--ring-color, var(--accent-color)) 25%,transparent)}input::placeholder,textarea::placeholder{color:var(--neutral-500)}.small-input{width:auto;max-width:100px;padding:var(--space-2) var(--space-3);font-size:var(--text-xs)}.long-input{width:100%}[draggable=true]{cursor:grab}[draggable=true]:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm)}[draggable=true]:active,[draggable=true].dragging{cursor:grabbing;transform:none;box-shadow:none}[draggable=true]:hover:has(.timing-edge-pop){transform:none}[draggable=true].dragging{opacity:.35}.drag-count-badge{position:absolute;top:-5px;right:-5px;width:20px;height:20px;border-radius:var(--radius-full);background:var(--primary-600);color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700}.panel,.card,.section-container{background-color:var(--neutral-50);border:1px solid var(--border-color);border-radius:var(--radius-lg)}.panel.nested{background-color:var(--neutral-100)}.card{padding:var(--space-6);transition:var(--transition-paint-base)}.container{width:100%;max-width:var(--container-max-width);margin:0 auto;padding:0 var(--container-padding)}.tab-panel{flex:1;overflow:auto;padding:var(--panel-gap);background-color:var(--neutral-100);display:flex;gap:var(--panel-gap)}.tab-leaves{flex:1;min-width:0;min-height:0}.section-container{padding:var(--space-4);margin-bottom:var(--section-margin)}.section-fill{flex:1;display:flex;flex-direction:column;min-width:0;height:100%}.panel-padded{padding:var(--space-4)}.hidden{display:none}.stat-item{display:flex;flex-direction:column;align-items:center;gap:var(--space-1);min-width:80px}.stat-label{text-align:center}.stat-value{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--neutral-900);text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.panel-cue{background:var(--cue-light);border:2px solid var(--cue-color)}.stats-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4)}.nav-group{display:flex;gap:var(--space-2)}.nav-group button{flex:1}.panel-head,.title-container{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--title-margin)}.panel-head.ruled{padding-bottom:var(--space-3);border-bottom:1px solid var(--border-color)}.eyebrow{font-size:var(--text-xs);font-weight:var(--font-semibold);letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted)}.title{font-size:var(--text-lg);font-weight:var(--font-bold);color:var(--neutral-900);-webkit-user-select:none;user-select:none;text-transform:uppercase;letter-spacing:.025em}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-1);min-height:28px;padding:var(--space-1) var(--space-3);font:inherit;font-size:var(--text-sm);font-weight:var(--font-medium);line-height:1.3;white-space:nowrap;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--neutral-50);color:var(--text-primary);cursor:pointer;--button-hover-bg: var(--neutral-100);--button-hover-border: var(--border-color)}.btn.sm{min-height:24px;padding:2px var(--space-2);font-size:var(--text-xs)}.btn.icon{padding:var(--space-1);min-width:28px}.btn.sm.icon{min-width:24px;padding:2px}.btn.ghost{background:transparent;border-color:transparent;--button-hover-border: transparent}.btn.flat{min-height:0;padding:0;border:none;background:transparent;font-weight:inherit;--button-hover-bg: transparent;--button-hover-border: transparent}.btn.primary{background:var(--accent-color);border-color:var(--accent-color);color:var(--on-accent);--button-hover-bg: var(--accent-color-darker);--button-hover-border: var(--accent-color-darker)}.btn.danger{color:var(--danger-color);border-color:var(--danger-light);--button-hover-bg: var(--danger-light);--button-hover-border: var(--danger-color)}.btn:disabled{opacity:.5;cursor:default}.text-button{color:var(--accent-color);border:1px solid var(--accent-color)}.text-button:hover:not(:disabled){background-color:var(--primary-100);border-color:var(--accent-color-darker);color:var(--accent-color-darker)}.text-button:active:not(:disabled){transform:scale(.98)}.text-button:disabled{opacity:.5;cursor:not-allowed}.collapse-button{width:2rem;height:2rem;padding:0;margin-left:var(--space-2);display:flex;align-items:center;justify-content:center;background-color:transparent;color:var(--neutral-700);border:1px solid var(--neutral-400);font-size:var(--text-lg);font-weight:var(--font-bold)}.collapse-button:hover{background-color:var(--neutral-200);color:var(--neutral-900);border-color:var(--neutral-600)}audio{width:100%;height:32px;border-radius:var(--radius-md);background-color:var(--neutral-100)}.text-block{padding:var(--space-3);background-color:var(--neutral-200);border-radius:var(--radius-md);font-style:italic;color:var(--neutral-700);font-size:var(--text-sm);border:1px solid var(--neutral-300)}.text-block-light{padding:var(--space-2);color:var(--neutral-600);font-style:italic;font-size:var(--text-sm)}@keyframes spin{to{transform:rotate(360deg)}}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--neutral-200);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb{background:var(--neutral-500);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--neutral-600)}.cues-list-container,.groups-list-container,.users-list-container,.detail-content,.broadcast-templates .template-list-wrapper,.cue-details-content{padding-right:var(--space-4)}::selection{background-color:var(--primary-200);color:var(--primary-900)}:where(:not(button,input,textarea,select)):focus-visible{outline:2px solid var(--ring-color, var(--accent-color));outline-offset:1px}.Toastify__toast-container{font-family:var(--font-sans)}.Toastify__toast{color:var(--neutral-900)!important;border-radius:var(--radius-md)!important;box-shadow:var(--shadow-lg)!important;border:1px solid var(--neutral-400)!important;font-size:var(--text-sm)}.Toastify__toast--cue{background-color:var(--cue-light)!important;border-color:var(--cue-color)!important;color:var(--neutral-900)!important}.Toastify__toast--module{background-color:var(--primary-100)!important;border-color:var(--primary-600)!important;color:var(--primary-900)!important}.Toastify__toast--template{background-color:var(--template-light)!important;border-color:var(--template-color)!important;color:var(--neutral-900)!important}.Toastify__progress-bar{background:var(--primary-600)!important;height:2px}.Toastify__close-button{color:var(--neutral-700)!important;opacity:1!important}.Toastify__close-button:hover{color:var(--neutral-900)!important}.droppable{background-color:var(--primary-100);border-color:var(--primary-600);transform:scale(1.01)}.split{display:grid;grid-template-columns:var(--split, 320px) minmax(0,1fr);gap:var(--panel-gap);height:100%;min-height:0;overflow:hidden;position:relative}.split.end{grid-template-columns:minmax(0,1fr) var(--split, 320px)}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(var(--card-min, 220px),var(--card-max, 1fr)));gap:var(--panel-gap)}.template-icon,.template-list-icon,.audio-kind-icon,.voice-icon,.user-icon,.user-icon-sm,.module-icon,.audio-icon,.group-icon{opacity:.6}.footer-user-trigger{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);border:1px solid transparent;border-radius:var(--radius-md);background-color:transparent;color:var(--text-primary);cursor:pointer;--button-hover-bg: var(--neutral-200);--button-hover-border: transparent}.footer-username{font-size:var(--text-sm);font-weight:var(--font-medium)}.footer-user-caret{color:var(--neutral-600);font-size:var(--text-xs)}[data-theme=dark] .voice-icon,[data-theme=dark] .user-icon,[data-theme=dark] .user-icon-sm,[data-theme=dark] .module-icon,[data-theme=dark] .audio-icon,[data-theme=dark] .group-icon{filter:invert(1);opacity:.6}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:center;z-index:var(--z-modal)}.modal-content{background-color:var(--neutral-50);border-radius:var(--radius-lg);padding:var(--space-6);width:90%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-xl)}.modal-content p{font-size:var(--text-base);margin-bottom:var(--section-margin);text-align:center}.empty-state{color:var(--neutral-500);font-style:italic;padding:var(--space-4);text-align:center;font-size:var(--text-sm)}.error-message{padding:var(--space-2) var(--space-3);border-left:2px solid var(--danger-color);border-radius:var(--radius-md);background:var(--danger-light);color:var(--danger-color);font-size:var(--text-sm)}.loading-message{color:var(--neutral-600);display:flex;align-items:center;justify-content:center;gap:var(--space-3);text-align:center;padding:var(--space-8);font-style:italic}.loading-message:before{content:"";width:20px;height:20px;border:2px solid var(--neutral-300);border-top-color:var(--primary-500);border-radius:var(--radius-full);animation:spin 1s linear infinite}.nav-button:hover:not(:disabled){background-color:var(--neutral-300);border-color:var(--neutral-400);color:var(--neutral-900)}.nav-button:disabled{opacity:.5;cursor:not-allowed}[data-theme=dark] ::-webkit-scrollbar{width:8px;height:8px}[data-theme=dark] ::-webkit-scrollbar-track{background:var(--neutral-200);border-radius:var(--radius-sm)}[data-theme=dark] ::-webkit-scrollbar-thumb{background:var(--neutral-400);border-radius:var(--radius-sm);border:1px solid var(--neutral-300)}[data-theme=dark] ::-webkit-scrollbar-thumb:hover{background:var(--neutral-500)}.update-button,.refresh-button,button[class*=update],button[class*=refresh],button[class*=load]{background-color:var(--action-button-color)!important;color:var(--on-accent)!important}.update-button:hover,.refresh-button:hover,button[class*=update]:hover,button[class*=refresh]:hover,button[class*=load]:hover{background-color:var(--action-button-hover)!important}.sim-badge{display:inline-block;font-size:.6rem;font-weight:700;letter-spacing:.05em;background:var(--neutral-700);color:var(--neutral-50);border-radius:3px;padding:1px 4px;margin-right:4px;vertical-align:middle}.sim-badge.llm{background:var(--generated-color);color:var(--on-accent)}.seg-btn{border:none;background:transparent;color:var(--text-muted);cursor:pointer;white-space:nowrap;font-size:var(--text-xs);font-weight:600;padding:3px var(--space-3);border-radius:var(--radius-md);--button-hover-bg: transparent}.seg-btn:hover{color:var(--text-primary)}.seg-btn:is(.on,.active){background:var(--surface-1);color:var(--text-primary);box-shadow:0 0 0 1px var(--border-color)}.seg-btn:disabled{opacity:.5;cursor:default}.seg-track{display:inline-flex;gap:2px;padding:2px;border-radius:var(--radius-lg);background:var(--neutral-100)}.seg-track.fill{display:flex}.seg-track.fill>.seg-btn{flex:1}.presence-dot{display:inline-block;flex:none;box-sizing:border-box;width:8px;height:8px;border-radius:var(--radius-full);background:var(--success-vivid)}.presence-dot.off{background:transparent;border:1.5px solid currentColor;opacity:.5}[data-role=audience]{--role-hue: var(--group-color);--role-fill: var(--audience-color)}[data-role=performer]{--role-hue: var(--voice-color);--role-fill: var(--performer-color)}[data-role=crew],[data-role=dramaturg]{--role-hue: var(--crew-accent-strong);--role-fill: var(--dramaturg-color)}.role-word{font-size:var(--text-xs);font-weight:var(--font-bold);letter-spacing:.06em;text-transform:uppercase;color:var(--role-hue)}.chip{display:inline-flex;align-items:center;gap:4px;padding:1px var(--space-2);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-semibold);line-height:1.6;white-space:nowrap;border:1px solid transparent;background:var(--neutral-100);color:var(--text-secondary)}:root{--crew-accent: hsl(27 92% 48%);--crew-accent-strong: hsl(27 85% 36%);--crew-accent-ink: #fff}[data-theme=dark]{--crew-accent: hsl(27 90% 58%);--crew-accent-strong: hsl(27 92% 66%);--crew-accent-ink: hsl(27 90% 10%)}.performer-home{min-height:100vh;display:flex;flex-direction:column}.performer-home-body{flex:1;display:flex;flex-direction:column;align-items:center;gap:12px;padding:32px 16px}.performer-home-status{opacity:.7}.performer-show-list{display:flex;flex-direction:column;gap:10px;width:min(480px,100%)}.performer-show-row{display:flex;flex-direction:column;gap:10px;text-align:left;padding:12px 16px;border-radius:10px;border:1px solid var(--border-color, #8884);background:var(--neutral-50);color:inherit}.performer-show-head{display:flex;align-items:baseline;gap:10px}.performer-show-tag{font-size:11px;opacity:.7;text-transform:uppercase;letter-spacing:.04em}.performer-show-occ{margin-left:auto;font-size:12px;opacity:.6}.performer-show-ways{display:flex;gap:8px}.performer-show-way{flex:1;font:inherit;font-weight:var(--font-medium);padding:8px 12px;border-radius:8px;cursor:pointer;border:1px solid var(--border-color, #8884);background:transparent;color:inherit;--button-hover-bg: var(--neutral-200);--button-hover-border: var(--border-color, #8884)}.performer-show-way.primary{background:var(--crew-accent);border-color:var(--crew-accent);color:var(--crew-accent-ink);--button-hover-bg: var(--crew-accent-strong);--button-hover-border: var(--crew-accent-strong)}.ear-page{min-height:100vh;display:flex;flex-direction:column;gap:10px;padding:12px}.ear-health{display:flex;gap:6px;align-items:center;font-size:12px;opacity:.75}.ear-exit{margin-left:auto;font:inherit;font-size:12px;background:none;border:1px solid var(--border-color, #8884);border-radius:6px;color:inherit;padding:2px 8px;cursor:pointer;--button-hover-bg: var(--neutral-200);--button-hover-border: var(--border-color, #8884)}.ear-assist{font:inherit;font-size:15px;padding:14px;border-radius:10px;cursor:pointer;border:1px solid var(--crew-accent);color:var(--crew-accent-strong);background:transparent;touch-action:none;--button-hover-bg: color-mix(in srgb, var(--crew-accent) 12%, transparent);--button-hover-border: var(--crew-accent)}.header{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:var(--space-6);min-height:80px;background:var(--neutral-50);border-bottom:1px solid var(--border-color)}@media (max-width: 768px){.header{flex-direction:column;gap:var(--space-4);text-align:center}.header-row{width:100%}}.show-config{display:flex;flex-direction:column;height:100vh}.show-config-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-6);background:var(--neutral-50);border-bottom:1px solid var(--border-color)}.show-config-title{font-size:var(--text-xl);font-weight:var(--font-bold);color:var(--neutral-900)}.logout-button{padding:var(--space-2) var(--space-4);background-color:var(--neutral-800);color:var(--neutral-50);font-size:var(--text-sm);font-weight:var(--font-semibold);border-radius:var(--radius-md);border:1px solid var(--neutral-800)}.logout-button:hover{background-color:var(--neutral-900);border-color:var(--neutral-900)}.Toastify__toast--cue{background-color:var(--cue-light);border:1px solid var(--cue-color)}.user-column{flex:1;overflow-y:auto;display:flex;flex-direction:column;padding:0 var(--space-6);background-color:var(--neutral-50)}.show-list{display:flex;flex-direction:column;min-height:100vh}.show-list-main{flex:1;display:flex;flex-direction:column;gap:var(--space-6);padding:var(--space-6);max-width:900px;width:100%;margin:0 auto}.bool-toggle{display:inline-flex;align-items:center;gap:7px;padding:2px 6px 2px 2px;border-radius:var(--radius-full, 999px);font-size:var(--text-xs);color:var(--text-secondary)}.bool-toggle:hover:not(:disabled){color:var(--text-primary)}.bool-toggle.on{color:var(--text-primary)}.bool-toggle:disabled{opacity:.5;cursor:not-allowed}.bool-toggle-label{font-weight:600}.bool-toggle-track{position:relative;width:34px;height:18px;background-color:var(--neutral-300);border:1px solid var(--neutral-400);border-radius:var(--radius-full, 999px);transition:var(--transition-paint-base);flex-shrink:0}.bool-toggle.on .bool-toggle-track{background-color:var(--accent-color);border-color:var(--accent-color)}.bool-toggle-thumb{position:absolute;top:1px;left:1px;width:14px;height:14px;background-color:var(--neutral-50);border-radius:var(--radius-full, 999px);box-shadow:var(--shadow-sm);transition:var(--transition-paint-base)}.bool-toggle.on .bool-toggle-thumb{transform:translate(16px)}.bool-toggle.slim{padding:2px}.bool-toggle.slim .bool-toggle-track{width:26px;height:15px}.bool-toggle.slim .bool-toggle-thumb{width:11px;height:11px}.bool-toggle.slim.on .bool-toggle-thumb{transform:translate(11px)}.version-menu{position:relative;display:inline-block}.version-menu-trigger{min-width:7rem;text-align:center;padding:5px 12px;border:1px solid var(--border-color, #d8dbe0);border-radius:var(--radius-md, 6px);background:var(--neutral-50);color:var(--text-primary, #212529);cursor:pointer;font-size:var(--text-sm, .8rem);white-space:nowrap}.version-menu-trigger:hover:not(:disabled){background:var(--neutral-100)}.version-menu-popover{position:absolute;right:0;top:calc(100% + 4px);z-index:50;width:min(840px,95vw);background:var(--neutral-50);border:1px solid var(--border-color, #e5e7eb);border-radius:var(--radius-lg, 10px);box-shadow:var(--shadow-lg, 0 8px 28px rgba(0, 0, 0, .18));padding:var(--space-3, 12px)}.version-panel-head{gap:8px;margin-bottom:8px}.version-panel-title{font-weight:600;color:var(--text-primary, #212529)}.version-rows{list-style:none;margin:0;padding:0;max-height:52vh;overflow-y:auto}.version-row{display:flex;flex-direction:column;gap:5px;padding:8px 4px;border-top:1px solid var(--border-color, #eceef1)}.version-row:first-child{border-top:none}.version-meta{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.version-kind{font-size:.68rem;padding:1px 7px;border-radius:999px;background:var(--neutral-100, #eef0f3)}.version-kind-named{background:var(--accent-color);color:var(--on-accent)}.version-kind-asRun{background:var(--warning-color);color:var(--on-accent)}.version-label{font-weight:500;color:var(--text-primary, #212529)}.version-time{margin-left:auto;color:var(--text-muted, #8a8f98);font-size:var(--text-sm, .78rem);font-family:var(--font-mono, monospace)}.version-actions{display:flex;gap:6px;flex-wrap:wrap}.version-btn{padding:4px 10px;border:1px solid var(--border-color, #d8dbe0);border-radius:var(--radius-md, 6px);background:var(--neutral-50);color:var(--text-primary, #212529);cursor:pointer;font-size:var(--text-sm, .8rem);white-space:nowrap}.version-btn:hover:not(:disabled){background:var(--neutral-100)}.version-btn:disabled{opacity:.45;cursor:default}.version-btn.primary{background:var(--accent-color);border-color:var(--accent-color);color:var(--on-accent)}.version-btn.primary:hover:not(:disabled){background:var(--accent-color-darker)}.version-btn.danger{color:var(--danger-color);border-color:var(--danger-light)}.version-btn.danger:hover:not(:disabled){background:var(--danger-light)}.version-empty{padding:12px 4px;color:var(--text-muted, #8a8f98);font-size:var(--text-sm, .85rem)}.version-error{padding:8px 4px;color:var(--danger-color);font-size:var(--text-sm, .85rem)}.version-show-auto{margin-top:8px;background:none;border:none;padding:4px;color:var(--text-muted, #8a8f98);cursor:pointer;font-size:var(--text-sm, .8rem)}.version-show-auto:hover{color:var(--text-primary, #212529)}.controls{display:flex;justify-content:center;align-items:center;gap:var(--space-3);padding:var(--space-4);background:var(--neutral-50);border-top:1px solid var(--border-color)}.controls button{padding:var(--space-2) var(--space-4);background-color:var(--neutral-900);color:var(--neutral-50);border:none;border-radius:var(--radius-md);font-weight:var(--font-medium);cursor:pointer;transition:var(--transition-paint-base);display:flex;align-items:center;gap:var(--space-2)}.controls button:hover{background-color:var(--neutral-800)}.controls button:disabled{background-color:var(--neutral-300);color:var(--neutral-500);cursor:not-allowed;transform:none}.cues-surface{--cues-split: 27%;display:grid;grid-template-columns:minmax(0,1fr);gap:var(--panel-gap);height:100%;overflow:hidden;position:relative}.cues-surface:has(>.cue-details-panel){grid-template-columns:minmax(380px,var(--cues-split)) minmax(0,1fr)}.cues.section-container{min-width:0;margin-bottom:0;background:var(--neutral-50);transition:var(--transition-paint-base);overflow:hidden}.cues-list-container{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding-top:5px}.cues-list{--card-min: 150px;grid-auto-rows:1fr;padding-bottom:var(--panel-gap)}.cue{display:flex;flex-direction:column;min-height:112px;background:var(--cue-light);border:none;border-left:3px solid var(--cue-color);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);color:var(--neutral-900);cursor:pointer;transition:var(--transition-paint-base);position:relative}.cue:hover{background:color-mix(in oklab,var(--cue-color) 7%,var(--cue-light))}.cue.selected{background:color-mix(in oklab,var(--cue-color) 14%,var(--cue-light));box-shadow:inset 0 0 0 2px var(--cue-color)}.cue.current{background:color-mix(in oklab,var(--cue-color) 14%,var(--cue-light))}.cue.playing{background:var(--primary-100);animation:playingPulse 2s ease-in-out infinite}@keyframes playingPulse{0%,to{box-shadow:inset 0 0 0 2px var(--primary-600),0 0 0 0 var(--primary-200)}50%{box-shadow:inset 0 0 0 2px var(--primary-600),0 0 0 4px var(--primary-200)}}.cue-content{flex:1;display:flex;flex-direction:column}.cue-action-area{position:absolute;left:var(--space-2);right:var(--space-2);bottom:var(--space-2);display:flex;align-items:center;justify-content:center}.cue-run-button{width:100%;height:22px;background-color:var(--cue-color);color:var(--neutral-50);border:none;border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:.025em;cursor:pointer;opacity:0;visibility:hidden;transition:var(--transition-paint-base),visibility var(--transition-base)}.cue-run-button.visible{opacity:1;visibility:visible}.cue-run-button:hover{background-color:var(--cue-hover)}.cue-number{font-size:var(--text-xl);font-weight:var(--font-bold);color:var(--cue-color);margin-bottom:var(--space-1)}.cue-name{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--neutral-900);word-break:break-word;margin-bottom:var(--space-1)}.cue-description{font-size:var(--text-xs);color:var(--neutral-600);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.cue-details-panel{min-width:460px;padding:var(--space-4);display:flex;flex-direction:column;overflow:hidden;height:100%}.cue-details-header{padding-bottom:var(--space-2);border-bottom:1px solid var(--neutral-200);flex-shrink:0}.cue-header-navigation{display:flex;gap:var(--space-1);align-items:center}.cue-header-navigation .nav-button{width:28px;height:28px;padding:0;display:flex;align-items:center;justify-content:center;font-size:var(--text-base);line-height:1}.cue-details-content{display:flex;flex-direction:column;gap:var(--panel-gap);flex:1;overflow-y:auto;overflow-x:hidden}.cue-info-section{text-align:center;padding:var(--space-4);background-color:var(--cue-light);border-radius:var(--radius-md);border:1px solid var(--cue-color);flex-shrink:0}.cue-number-large{font-size:var(--text-3xl);font-weight:var(--font-bold);color:var(--cue-color);margin-bottom:var(--space-2)}.cue-name-large{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--neutral-900);margin:0 0 var(--space-2) 0}.cue-description-large{font-size:var(--text-base);color:var(--neutral-700);margin:0}.cue-edit-field{--ring-color: var(--cue-color);width:100%;box-sizing:border-box;background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);font-family:inherit;text-align:center;padding:var(--space-1)}.cue-edit-field:hover{border-color:var(--cue-color)}.cue-edit-field:focus{background:var(--neutral-50)}.cue-description-large.cue-edit-field{resize:vertical}.go-to-cue-button{background-color:var(--cue-color);color:var(--neutral-50);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-weight:var(--font-bold);font-size:var(--text-base);text-transform:uppercase;letter-spacing:.025em;width:100%;border:none;cursor:pointer;transition:var(--transition-paint-base);flex-shrink:0}.go-to-cue-button:hover{background-color:var(--cue-hover)}.cue-modules-section{display:flex;flex-direction:column;gap:var(--space-3)}.current-cue-indicator{position:absolute;top:6px;right:6px;display:flex;align-items:center;gap:4px;font-size:var(--text-xs);font-weight:var(--font-bold);color:var(--cue-color);text-transform:uppercase;letter-spacing:.025em}.current-cue-indicator:after{content:"";width:8px;height:8px;background:var(--cue-color);border-radius:50%;box-shadow:0 0 0 2px var(--neutral-50),var(--shadow-sm)}.cue.playing .current-cue-indicator{color:var(--primary-600);animation:playingIndicatorPulse 1s ease-in-out infinite}.cue.playing .current-cue-indicator:after{background:var(--primary-600);animation:playingDot 1s ease-in-out infinite}@keyframes playingIndicatorPulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes playingDot{0%,to{box-shadow:0 0 0 2px var(--neutral-50),var(--shadow-sm)}50%{box-shadow:0 0 0 2px var(--neutral-50),0 0 0 4px var(--primary-300),var(--shadow-sm)}}.cue.on-first-join{border-left:4px solid var(--warning-color);padding-left:calc(var(--space-3) - 4px)}.cue.on-first-join.selected{padding-left:calc(var(--space-3) - 4.5px)}.cues .title-container{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.cue-add-button{background-color:var(--cue-color);color:var(--on-accent);border:none}.cue-add-button:hover{background-color:var(--cue-hover)}.empty-state .cue-add-button{margin-top:var(--space-3)}.cue-panel-footer{display:flex;justify-content:flex-end;padding:0 0 var(--panel-gap)}.cues-column{display:flex;flex-direction:column;gap:var(--panel-gap);min-width:380px;min-height:0;height:100%;overflow:hidden}.cue-act-section{margin-bottom:var(--space-2);padding:var(--space-2);border:1px solid transparent;border-radius:var(--radius-md);transition:border-color var(--transition-base),background var(--transition-base)}.cue-act-section.drag-over{border-color:var(--cue-color);background:var(--neutral-100)}.cue-act-header{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-2);padding-bottom:var(--space-2);border-bottom:1px solid var(--neutral-200)}.cue-act-caret{color:var(--neutral-600)}.cue-act-head-left{flex:1;min-width:0;display:flex;align-items:baseline;gap:var(--space-2)}.cue-act-name{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--neutral-900);padding-left:var(--space-2);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cue-act-header{cursor:grab;position:relative;z-index:2}.cue-act-header:active{cursor:grabbing}.cue-act-header :is(button,input,select){cursor:pointer}.cue-act-rename{display:inline-flex;flex:1;min-width:0;cursor:text}.cue-act-rename .saving-field{flex:1;min-width:0}.cue-act-edit{width:22px;height:22px;padding:0;display:inline-flex;align-items:center;justify-content:center;flex:none;background:none;border:none;color:inherit;opacity:.5;cursor:pointer;--button-hover-bg: transparent}.cue-act-edit:hover{opacity:1}.cue-act-edit svg{width:12px;height:12px}.cue-act-section.act-drop-before{box-shadow:inset 0 3px 0 var(--cue-color)}.cue-act-section.act-drop-after{box-shadow:inset 0 -3px 0 var(--cue-color)}.cue-act-cues{font-size:var(--text-sm);font-style:italic;font-weight:var(--font-normal);color:var(--text-muted);white-space:nowrap}.cue-act-chevron{width:14px;height:14px;transition:transform .15s ease}.cue-act-section:has(.cue-act-caret[aria-expanded=false]) .cue-act-chevron{transform:rotate(-90deg)}.cue-act-folded{display:inline-flex;align-items:center;gap:var(--space-2);flex-shrink:0;margin-right:var(--space-2)}.cue-act-name-input{--ring-color: var(--cue-color);flex:1;min-width:0;height:30px;padding:0 var(--space-2);border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--neutral-900);font-size:var(--text-base);font-weight:var(--font-semibold)}.cue-add-card{position:relative;min-height:112px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-1);border:2px dashed var(--neutral-300);border-radius:var(--radius-md);background:transparent;color:var(--neutral-500);cursor:pointer;transition:border-color var(--transition-base),color var(--transition-base),background var(--transition-base)}.cue-add-card:hover:not(:disabled){border-color:var(--cue-color);color:var(--cue-color);background:var(--cue-light)}.cue-add-card-plus{font-size:var(--text-2xl);line-height:1}.cue-add-card-label{font-size:var(--text-sm)}.cue-new-act-dropzone{margin-top:var(--space-2);min-height:140px;display:flex;align-items:center;justify-content:center;padding:var(--space-4);border:2px dashed var(--neutral-300);border-radius:var(--radius-md);text-align:center;color:var(--neutral-500);font-size:var(--text-sm);font-weight:var(--font-semibold);transition:border-color var(--transition-base),color var(--transition-base),background var(--transition-base)}.cue-new-act-dropzone.drag-over{border-color:var(--cue-color);color:var(--cue-color);background:var(--neutral-100)}.cue-add-card.drop-here:before{content:"";position:absolute;left:12px;top:12px;bottom:12px;width:3px;border-radius:2px;background:var(--cue-color);pointer-events:none}.cue-delete-button{position:absolute;top:4px;right:4px;z-index:2;width:20px;height:20px;display:flex;align-items:center;justify-content:center;padding:0;border:none;border-radius:var(--radius-sm);background:var(--neutral-200);color:var(--neutral-700);font-size:var(--text-xs);line-height:1;cursor:pointer;opacity:0;transition:opacity var(--transition-base)}.cue:hover .cue-delete-button{opacity:1}.cue-delete-button:hover{background:var(--danger, #e5484d);color:var(--on-accent)}.cue-selected-actions{display:flex;align-items:center;gap:var(--space-1);width:100%}.cue-selected-actions .cue-run-button{flex:1}.cue.dragging{opacity:.4}.cue.nudge-left{transform:translate(-10px)}.cue.nudge-right{transform:translate(10px)}.cue.nudge-right:before,.cue.nudge-end:after{content:"";position:absolute;top:10px;bottom:10px;width:3px;border-radius:2px;background:var(--cue-color);pointer-events:none;z-index:2}.cue.nudge-right:before{left:calc(-1 * (var(--panel-gap) / 2 + 10px) - 1.5px)}.cue.nudge-end:after{right:calc(-1 * (var(--panel-gap) / 2 + 10px) - 1.5px)}.lcr-list{display:flex;flex-direction:column;gap:var(--space-1);padding-bottom:var(--space-1)}.lcr{position:relative;display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--cue-light);border:1px solid transparent;border-left:3px solid var(--cue-color);border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-base),border-color var(--transition-base),transform var(--transition-base)}.lcr:hover{background:color-mix(in oklab,var(--cue-color) 7%,var(--cue-light))}.lcr.selected{background:color-mix(in oklab,var(--cue-color) 14%,var(--cue-light));border-color:var(--cue-color)}.lcr.current{box-shadow:inset 3px 0 0 var(--cue-color)}.lcr.playing{background:var(--primary-100);border-color:var(--primary-600);border-left-color:var(--primary-600)}.lcr.dragging{opacity:.4}.lcr-number{flex-shrink:0;min-width:1.6em;text-align:center;font-size:var(--text-lg);font-weight:var(--font-bold);color:var(--cue-color)}.lcr.playing .lcr-number{color:var(--primary-600)}.lcr-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.lcr-title-line{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.lcr-name{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--neutral-900);word-break:break-word}.lcr-desc{flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:var(--text-xs);color:var(--neutral-600)}.lcr-state{flex-shrink:0}.lcr-badge{display:inline-flex;align-items:center;gap:4px;font-size:var(--text-xs);font-weight:var(--font-bold);text-transform:uppercase;letter-spacing:.025em}.lcr-badge.current{color:var(--cue-color)}.lcr-badge.playing{color:var(--primary-600);animation:playingIndicatorPulse 1s ease-in-out infinite}.lcr-badge:after{content:"";width:8px;height:8px;border-radius:50%;background:currentColor}.lcr-run{--button-hover-bg: var(--cue-hover);flex-shrink:0;height:26px;padding:0 var(--space-3);background:var(--cue-color);color:var(--on-accent);border:none;border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:.025em;cursor:pointer}.lcr-run:hover{background:var(--cue-hover)}.lcr-delete{--button-hover-bg: var(--danger, #e5484d);flex-shrink:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;padding:0;border:none;border-radius:var(--radius-sm);background:var(--neutral-200);color:var(--neutral-700);font-size:var(--text-xs);line-height:1;cursor:pointer;opacity:0;transition:opacity var(--transition-base)}.lcr:hover .lcr-delete{opacity:1}.lcr-delete:hover{background:var(--danger, #e5484d);color:var(--on-accent)}.lcr.nudge-up{transform:translateY(-5px)}.lcr.nudge-down{transform:translateY(5px)}.lcr.nudge-down:before,.lcr.nudge-end:after{content:"";position:absolute;left:8px;right:8px;height:3px;border-radius:2px;background:var(--cue-color);pointer-events:none;z-index:2}.lcr.nudge-down:before{top:calc(-1 * var(--space-1) / 2 - 6.5px)}.lcr.nudge-end:after{bottom:-6.5px}.lcr-add{--button-hover-bg: transparent;align-self:flex-start;margin-top:var(--space-2);min-height:24px;padding:2px var(--space-2) 2px 0;border:none;background:transparent;color:var(--cue-color);font-size:var(--text-xs);font-weight:var(--font-medium);cursor:pointer}.lcr-add:hover{text-decoration:underline}.trigger-badge{--button-hover-bg: color-mix(in oklab, var(--cue-color) 26%, transparent);display:inline-flex;align-items:center;gap:3px;margin-top:2px;padding:1px 8px;border:none;border-radius:4px;background:color-mix(in oklab,var(--cue-color) 14%,transparent);color:var(--cue-color);font-size:.75rem;font-weight:var(--font-semibold);cursor:pointer;max-width:100%;min-width:0}.trigger-badge:hover{background:color-mix(in oklab,var(--cue-color) 26%,transparent)}.trigger-badge-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cue-content>.trigger-badge{align-self:flex-start}.cue-beats-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.cue-fired-by{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-1);margin-top:var(--space-2)}.cue-condition-chip{margin-top:4px}.qr-code-tab{padding:var(--space-6);text-align:center}.qr-codes-wrapper{display:flex;gap:var(--space-8);justify-content:center;align-items:flex-start;flex-wrap:wrap}.qr-code-section{flex:1;min-width:260px;max-width:340px}.qr-code-section h3{margin:0 0 var(--space-4) 0;font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--neutral-800)}.qr-code-container{max-width:320px;margin:0 auto var(--space-4) auto;background:#fff;padding:var(--space-4);border-radius:var(--radius-xl)}.qr-code-container canvas{display:block;width:100%!important;height:auto!important}.qr-code-text{font-size:var(--text-xs);color:var(--neutral-600);word-break:break-all}.qr-code-text a{color:inherit;text-decoration:none}.qr-code-text a:hover{color:var(--primary-600);text-decoration:underline}.app-footer{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-6);background-color:var(--neutral-100);color:var(--neutral-800);border-top:1px solid var(--neutral-300);flex-shrink:0}.app-footer.fixed{position:fixed;left:0;right:0;bottom:0;z-index:9999}.app-footer .app-footer-left{font-size:var(--text-sm);color:var(--neutral-600)}.app-footer .app-footer-right{margin-left:auto;display:flex;align-items:center;gap:var(--space-3)}.app-footer .footer-user{display:flex;align-items:center;gap:var(--space-2)}.app-footer .user-icon-sm{width:14px;height:14px}.theme-toggle{position:relative;background:transparent!important;border:none!important;padding:var(--space-2);cursor:pointer;border-radius:var(--radius-md);transition:var(--transition-paint-base);display:flex;align-items:center;justify-content:center;outline:none!important;box-shadow:none!important}.theme-toggle:hover,.theme-toggle:focus,.theme-toggle:focus-visible,.theme-toggle:active{outline:none!important;background:transparent!important;border:none!important}.theme-toggle-track{width:48px;height:24px;background-color:var(--neutral-300);border-radius:var(--radius-full);position:relative;transition:var(--transition-paint-base);border:1px solid var(--neutral-400)}.theme-toggle.dark .theme-toggle-track{background-color:var(--primary-600);border-color:var(--primary-500)}.theme-toggle-thumb{position:absolute;top:2px;left:2px;width:18px;height:18px;background-color:var(--neutral-50);border-radius:var(--radius-full);transition:var(--transition-paint-base);display:flex;align-items:center;justify-content:center;color:var(--neutral-600);box-shadow:var(--shadow-sm)}.theme-toggle.dark .theme-toggle-thumb{transform:translate(24px);background-color:var(--neutral-50);color:var(--neutral-700)}.theme-toggle-thumb svg{width:12px;height:12px}.theme-toggle:active .theme-toggle-thumb{transform:scale(.95)}.theme-toggle.dark:active .theme-toggle-thumb{transform:translate(24px) scale(.95)}@media (prefers-reduced-motion: reduce){.theme-toggle-track,.theme-toggle-thumb{transition:none}}.modal-content.account-modal{max-width:720px;height:min(90vh,640px);padding:0;display:flex;flex-direction:column}.account-head{padding:var(--space-3) var(--space-4)}.account-head h2{margin:0;font-size:1.05em;font-weight:var(--font-semibold)}.account-who{margin-left:8px;font-size:.8em;font-weight:var(--font-medium);color:var(--neutral-500)}.account-close{padding:0 8px;font-size:1.3em;line-height:1;border:none;background:transparent;color:var(--neutral-600)}.account-close:hover{color:var(--neutral-900)}.account-body{display:flex;flex:1;min-height:0}.account-rail{width:130px;flex:none;padding:var(--space-3);border-right:1px solid var(--border-color);display:flex;flex-direction:column;gap:2px}.account-rail-item{text-align:left;justify-content:flex-start;padding:6px 10px;font-size:.88em;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--neutral-700)}.account-rail-item:hover:not(.on){background:var(--neutral-200);color:var(--neutral-900)}.account-rail-item.on{background:var(--primary-600);border-color:var(--primary-600);color:var(--on-accent)}.account-rail-item.account-logout{margin-top:auto;color:var(--neutral-600)}.account-rail-item.account-logout:hover{background:var(--danger-light);color:var(--danger-color)}.account-content{flex:1;min-width:0;overflow-y:auto;padding:var(--space-4);display:flex;flex-direction:column;gap:16px}.account-section{padding:var(--space-4);display:flex;flex-direction:column;gap:10px}.account-title{margin:0 0 2px}.account-field{display:grid;grid-template-columns:minmax(0,1fr) 220px;align-items:center;column-gap:16px;font-size:.88em;color:var(--neutral-700)}.account-modal input{padding:5px 8px;border-radius:6px;color:var(--neutral-800);font-size:.88em;min-width:0}.account-actions{display:flex;align-items:center;gap:12px;margin-top:4px}.account-ghost.danger{color:var(--danger-color)}.account-status{font-size:.82em}.account-status.ok{color:var(--primary-600)}.account-status.error{color:var(--danger-color)}.team-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.team-row{position:relative;display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:6px 0;border-bottom:1px solid var(--border-color);font-size:.88em}.team-row:last-child{border-bottom:none}.team-name{font-weight:var(--font-medium)}.team-you{font-weight:400;color:var(--neutral-500)}.team-phone{color:var(--neutral-500)}.team-badge{font-size:.72em;text-transform:uppercase;letter-spacing:.06em;padding:1px 6px;border-radius:999px;background:var(--primary-600);color:var(--on-accent)}.team-actions{margin-left:auto;display:flex;align-items:center;gap:6px}.team-setpw{display:flex;align-items:center;gap:6px}.team-setpw input{width:150px}@media (max-width: 600px){.modal-content.account-modal{height:90vh;max-width:100%}.account-body{flex-direction:column}.account-rail{width:auto;flex-direction:row;border-right:none;border-bottom:1px solid var(--border-color)}.account-field{grid-template-columns:1fr;row-gap:4px}.account-field input{width:100%}.team-actions,.team-setpw{width:100%;margin-left:0;flex-wrap:wrap}.team-setpw input{flex:1 1 120px;width:auto}}.account-modal select{padding:5px 8px;border-radius:6px;color:var(--neutral-800);font-size:.88em}.team-badge.muted{background:var(--neutral-300);color:var(--neutral-800)}.confirm-bar{display:flex;align-items:center;gap:var(--space-2);flex:1;min-width:0}.confirm-bar-msg{flex:1;min-width:0;font-size:var(--text-sm);color:var(--text-secondary)}.confirm-bar-go,.confirm-bar-keep{height:30px;padding:0 var(--space-4);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--text-sm);cursor:pointer}.confirm-bar-keep{--button-hover-bg: var(--neutral-300);background:var(--neutral-200);color:var(--neutral-700);border-color:transparent}.confirm-bar-go{--button-hover-bg: var(--danger-color);background:transparent;color:var(--neutral-700)}.confirm-bar-go.danger{--button-hover-bg: var(--danger-hover);color:var(--danger-color)}.confirm-bar-go.danger:hover{background:var(--danger-color);color:var(--on-accent);border-color:transparent}.confirm-pop-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60}.confirm-pop{position:absolute;top:calc(100% + 4px);right:0;z-index:61;width:220px;padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-3);background:var(--surface-1);border:1px solid var(--border-color);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);text-align:left}.confirm-pop.fixed{top:auto;right:auto}.confirm-pop-msg{font-size:var(--text-sm);color:var(--text-secondary)}.confirm-pop-actions{display:flex;gap:var(--space-2);justify-content:flex-end}.confirm-pop-go,.confirm-pop-cancel{height:28px;padding:0 var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--text-sm);cursor:pointer}.confirm-pop-cancel{--button-hover-bg: var(--neutral-300);background:var(--neutral-200);color:var(--neutral-700);border-color:transparent}.confirm-pop-go{--button-hover-bg: var(--neutral-200);background:transparent;color:var(--neutral-700)}.confirm-pop-go.danger{--button-hover-bg: var(--danger-hover);color:var(--danger-color)}.confirm-pop-go.danger:hover{background:var(--danger-color);color:var(--on-accent);border-color:transparent}.confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:calc(var(--z-modal) + 10);display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--neutral-900) 45%,transparent)}.confirm-overlay-card{display:flex;flex-direction:column;gap:var(--space-3);max-width:360px;padding:var(--space-4);background:var(--neutral-50);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-md, 0 8px 24px rgba(0, 0, 0, .35))}.confirm-overlay-msg{font-size:var(--text-base);color:var(--neutral-900)}.hub-section{padding:var(--space-4, 16px);margin-bottom:var(--space-4, 16px)}.hub-section-header h3{margin:0;font-size:var(--text-lg, 1rem);font-weight:600;color:var(--text-primary, #212529)}.hub-header-actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:8px}.title-action:hover:not(:disabled){background:var(--neutral-100)}.title-action.primary-action{background:var(--accent-color);border-color:var(--accent-color);color:var(--on-accent)}.title-action.primary-action:hover:not(:disabled){background:var(--accent-color-darker)}.hub-rename-input{flex:1 1 auto;min-width:0;padding:6px 8px;border:1px solid var(--primary-300, #9fc8b4);font:inherit;font-weight:600}.hub-count{display:inline-block;min-width:1.5em;padding:0 .45em;margin-left:.4em;border-radius:999px;background:var(--neutral-100, #eef0f3);color:var(--text-secondary, #555);font-size:var(--text-sm, .8rem);font-weight:500;text-align:center}.hub-rows{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.hub-row{display:flex;align-items:center;gap:var(--space-3, 12px);padding:7px 10px;border:1px solid var(--border-color, #eceef1);border-radius:var(--radius-md, 8px);background:var(--neutral-50);transition:border-color .12s ease}.hub-row:hover{border-color:var(--primary-300, #9fc8b4)}.hub-row-main{flex:1 1 auto;display:flex;flex-direction:column;align-items:flex-start;gap:2px;background:none;border:none;padding:4px;text-align:left;cursor:pointer;min-width:0}.hub-row-main.static{cursor:default}.hub-row-main:hover{background:var(--neutral-100);border-radius:var(--radius-sm, 6px)}.hub-row-main.static:hover{background:none}.hub-row-name{font-weight:600;color:var(--text-primary, #212529);display:flex;align-items:center;gap:7px}.hub-row-sub{font-size:var(--text-sm, .78rem);color:var(--text-muted, #8a8f98);font-family:var(--font-mono, monospace)}.hub-row-actions{display:flex;gap:6px;flex:0 0 auto}.hub-row-actions button{padding:5px 12px;border:1px solid var(--border-color, #d8dbe0);border-radius:var(--radius-md, 6px);background:var(--neutral-50);color:var(--text-primary, #212529);cursor:pointer;font-size:var(--text-sm, .8rem);white-space:nowrap}.hub-row-actions button:hover:not(:disabled){background:var(--neutral-100)}.hub-row-actions button:disabled{opacity:.45;cursor:default}.hub-row-actions button.primary-action{background:var(--accent-color);border-color:var(--accent-color);color:var(--on-accent)}.hub-row-actions button.primary-action:hover:not(:disabled){background:var(--accent-color-darker)}.hub-row-actions button.danger-action{color:var(--danger-color);border-color:var(--danger-light);background:var(--neutral-50)}.hub-row-actions button.danger-action:hover:not(:disabled){background:var(--danger-light)}.hub-row-actions .icon-action{color:var(--text-secondary, #555);text-decoration:none}.hub-row-actions .icon-action:hover{background:var(--neutral-100);color:var(--text-primary)}.live-dot{width:8px;height:8px;border-radius:50%;background:var(--accent-color);box-shadow:0 0 0 3px var(--primary-100);flex:0 0 auto}.link-button{background:none;border:none;color:var(--accent-color-darker);text-decoration:underline;cursor:pointer;padding:0;font:inherit}.about-modal{max-width:560px}.about-modal .about-text{white-space:pre-wrap;max-height:60vh;overflow-y:auto;font-size:var(--text-sm, .85rem);line-height:1.55;color:var(--text-primary, #212529)}.qr-modal{max-width:340px}.qr-modal .qr-code-tab{padding:0;gap:0}.qr-modal .qr-codes-wrapper{margin:0}.qr-modal .qr-code-section h3{display:none}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:var(--space-4, 16px)}.modal-actions button{padding:6px 14px;border:1px solid var(--border-color, #d8dbe0);border-radius:6px;background:var(--neutral-50);color:var(--text-primary, #212529);cursor:pointer}.modal-actions button.danger-action{background:var(--danger-color);border-color:var(--danger-color);color:var(--on-accent)}.show-runner{display:flex;flex-direction:column;height:100vh;width:100%;background-color:var(--neutral-50)}.runner-header{background-color:var(--neutral-50);border-bottom:1px solid var(--border-color);flex-shrink:0;position:relative;padding:var(--space-3) var(--space-6) 0;display:flex;justify-content:center}@keyframes playingDotPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.2)}}.logout-button{max-width:100px}[data-theme=dark] .logout-button{background-color:var(--neutral-50);color:var(--neutral-900)}[data-theme=dark] .logout-button:hover{background-color:var(--neutral-100)}.header-nav-button{position:absolute;top:var(--space-3);left:var(--space-6);z-index:3}.header-nav-button:hover:not(:disabled){background-color:var(--neutral-100)}.header-save-version{padding:var(--space-2) var(--space-3);background-color:var(--primary-600);color:var(--on-accent);border:1px solid var(--primary-600);font-size:var(--text-sm);font-weight:var(--font-semibold);border-radius:var(--radius-md);white-space:nowrap}.header-save-version:hover:not(:disabled){background-color:var(--primary-700);border-color:var(--primary-700)}.tabs{display:flex;flex-wrap:wrap;gap:0;margin:0 -var(--space-2);flex-grow:1}:is(.tab-button,.rail-button){background-color:transparent;--button-hover-bg: transparent;border:none;font-size:var(--text-sm);font-weight:var(--font-medium);text-transform:uppercase;letter-spacing:.025em;transition:var(--transition-paint-fast);white-space:nowrap}.tab-button{padding:var(--space-2) var(--space-4);min-height:32px;border-bottom:2px solid transparent;border-radius:0}.rail-button{text-align:left;padding:var(--space-3) var(--space-4);border-left:2px solid transparent;border-radius:0 var(--radius-md) var(--radius-md) 0}:is(.tab-button,.rail-button)[data-tab]{--tab-color: var(--neutral-700);--tab-active: var(--accent-color)}.tab-divider{align-self:center;width:1px;height:18px;margin:0 var(--space-2);background:var(--border-color)}:is(.tab-button,.rail-button)[data-tab]{color:var(--tab-color, var(--neutral-700))}:is(.tab-button,.rail-button):hover:not(.active){background-color:var(--neutral-50);opacity:.8}.tab-button:hover:not(.active){border-bottom-color:var(--neutral-500)}.rail-button:hover:not(.active){border-left-color:var(--neutral-500)}:is(.tab-button,.rail-button).active[data-tab]{color:var(--tab-active, var(--tab-color, var(--neutral-700)));font-weight:var(--font-bold)}.tab-button.active[data-tab]{border-bottom-color:var(--tab-active, var(--tab-color, var(--neutral-700)))}.rail-button.active[data-tab]{border-left-color:var(--tab-active, var(--tab-color, var(--neutral-700)))}:is(.tab-button,.rail-button)[data-label]{display:inline-grid;grid-template-columns:auto auto;align-items:center;justify-content:center}.rail-button[data-label]{justify-content:start}:is(.tab-button,.rail-button)[data-label]:after{content:attr(data-label);grid-column:1;height:0;overflow:hidden;visibility:hidden;font-weight:var(--font-bold);pointer-events:none}[data-theme=dark] :is(.tab-button,.rail-button)[data-tab]{color:var(--neutral-600)}.tab-rail{flex:none;width:128px;display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-2) 0;border-right:1px solid var(--border-color);align-self:stretch}.rail-divider{height:1px;background:var(--border-color);margin:var(--space-2) var(--space-4)}.runner-header.draft-header{justify-content:flex-end;align-items:center;padding:var(--space-3) var(--space-6);min-height:44px;box-sizing:border-box}.runner-header.run-header{justify-content:flex-start;align-items:center;gap:var(--space-4);row-gap:var(--space-1);padding:var(--space-2) var(--space-4);flex-wrap:wrap}.runner-header.draft-header .header-nav-button{position:static;z-index:auto;margin-right:auto}.draft-reconnecting{display:inline-flex;align-items:center;gap:var(--space-2);margin-right:var(--space-4);font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--warning-color)}.run-header .reset-rehearsal-button,.run-header .header-nav-button.run-back{position:static;z-index:auto}.run-header .tabs{flex:0 0 auto;flex-wrap:nowrap;margin:0}.run-header-spacer{flex:1}.hdr-strip{display:flex;align-items:center;gap:var(--space-3);min-height:36px}.hdr-ic{width:14px;height:14px}.hdr-chip.static{cursor:default}.hdr-room{gap:var(--space-4);color:var(--text-secondary);font-variant-numeric:tabular-nums}.hdr-pair{display:flex;align-items:center;gap:var(--space-2)}.hdr-pair .hdr-ic{color:var(--neutral-500)}.hdr-pair b{color:var(--text-primary);font-weight:var(--font-semibold)}.hdr-pair.out,.hdr-pair.out .hdr-ic,.hdr-pair.out b{color:var(--warning-color)}.hdr-hairline{width:1px;height:18px;background:var(--border-color);flex:none}.hdr-listening{gap:var(--space-2);color:var(--success-vivid);border:1.5px solid var(--success-vivid);background:color-mix(in srgb,var(--success-vivid) 12%,transparent);--button-hover-bg: color-mix(in srgb, var(--success-vivid) 20%, transparent)}.hdr-listening .hdr-ic{color:var(--success-vivid)}.hdr-listening b{color:var(--text-primary);font-weight:var(--font-semibold)}.hdr-listening-x{color:var(--text-muted);font-size:var(--text-base);line-height:1;margin-left:var(--space-1)}.hdr-listening:hover .hdr-listening-x{color:var(--text-primary)}.hdr-cuegroup{display:flex;align-items:stretch;border:var(--border-width) solid color-mix(in srgb,var(--cue-color) 40%,transparent);border-radius:var(--radius-md);overflow:hidden}.hdr-cuegroup .hdr-chip{border-radius:0}.hdr-play{display:grid;place-items:center;padding:0 var(--space-3);border:none;border-right:var(--border-width) solid color-mix(in srgb,var(--cue-color) 30%,transparent);background-color:transparent;color:var(--cue-color);cursor:pointer;--button-hover-bg: var(--cue-light);--button-hover-border: transparent}.hdr-ic-play{width:13px;height:13px;margin-left:1px}.hdr-ic-play polygon{fill:currentColor;stroke:none}.hdr-playslot{display:grid;place-items:center;padding:0 var(--space-3);border-right:var(--border-width) solid color-mix(in srgb,var(--cue-color) 30%,transparent)}.hdr-dot{width:6px;height:6px;border-radius:50%;background:var(--cue-color);animation:playingDotPulse 1.5s ease-in-out infinite}.hdr-cuegroup.playing .hdr-cue.current{background-color:color-mix(in srgb,var(--cue-color) 9%,var(--neutral-50))}.hdr-num{color:var(--cue-color);font-weight:var(--font-bold);font-size:var(--text-sm);font-variant-numeric:tabular-nums}.hdr-name{font-weight:var(--font-semibold);color:var(--text-primary);max-width:200px;overflow:hidden;text-overflow:ellipsis}.hdr-cue.next .hdr-name{color:var(--neutral-600);font-weight:var(--font-medium)}.hdr-cue.next .hdr-num{color:var(--neutral-500);font-weight:var(--font-semibold)}.hdr-arrow{color:var(--neutral-500);font-size:var(--text-xs)}.hdr-empty{color:var(--neutral-500);font-style:italic;cursor:default}@media (max-width: 1280px){.hdr-cue.next,.hdr-pair.cast{display:none}}@media (max-width: 1150px){.runner-header.run-header{gap:var(--space-3)}.run-header .tab-button{padding:var(--space-2) var(--space-3)}.run-header .tab-button[data-short] .tab-label-full{display:none}.run-header .tab-button[data-short] .tab-label-short{display:inline}.run-header .tab-button[data-short]:after{content:attr(data-short)}}.tab-label-short{display:none}@media (max-width: 1120px){.hdr-name{max-width:110px}.hdr-room{gap:var(--space-3)}}@media (max-width: 930px){.runner-header.run-header{justify-content:center;row-gap:var(--space-2)}.run-header .header-nav-button.run-back{position:absolute;top:var(--space-2);left:var(--space-4);z-index:3}.run-header .tabs{flex:0 0 100%;justify-content:center}.run-header-spacer{display:none}.hdr-pair.cast{display:flex}}.footer{background-color:var(--neutral-100);color:var(--neutral-800);padding:var(--space-3) var(--space-6);border-top:1px solid var(--neutral-300);flex-shrink:0}.footer-info{display:grid;grid-template-columns:minmax(max-content,1fr) auto minmax(max-content,1fr);align-items:center;column-gap:var(--space-6);font-size:var(--text-sm);width:100%}.footer-zone{display:flex;align-items:center;gap:var(--space-4);min-width:0}.footer-zone.right{justify-content:flex-end}.footer-item-label{color:var(--neutral-600);font-weight:var(--font-medium)}.footer-item-value{color:var(--neutral-900)}.footer-zone.connected,.footer-zone.disconnected{color:var(--neutral-700)}.reconnecting{margin-left:var(--space-2);font-size:var(--text-xs);font-style:italic}.footer .small-button{background-color:var(--neutral-300);border-color:var(--neutral-400);opacity:.8}.footer .small-button:hover{background-color:var(--neutral-400);border-color:var(--neutral-500);opacity:1}.footer-item-title{font-family:var(--font-sans);font-weight:var(--font-semibold)}.footer .copy-button,.footer .footer-link-button{display:inline-flex;align-items:center;justify-content:center;height:1.7rem;min-width:1.7rem;padding:0 var(--space-1);font-size:var(--text-sm);color:var(--neutral-600);background-color:transparent;border:1px solid transparent;border-radius:6px;text-decoration:none;cursor:pointer}.footer .copy-button:hover:not(:disabled),.footer .footer-link-button:hover:not(:disabled){color:var(--neutral-900);background-color:var(--neutral-200);border-color:transparent}.footer .footer-replay-link,.footer .copy-button.copy-button-labeled{width:auto;padding:0 var(--space-2);gap:var(--space-1)}.copy-button-label{font-size:var(--text-sm);font-weight:var(--font-medium)}.footer-id-sep{color:var(--neutral-500)}.footer-showing-id{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--neutral-600)}.footer-identity{gap:var(--space-3);white-space:nowrap}.footer .copy-button.copied,.footer .copy-button.copied:hover:not(:disabled){color:var(--success-color);background-color:transparent;border-color:transparent}.user-icon-sm{width:14px;height:14px;filter:none;opacity:.8}@media (max-width: 760px){.footer{padding:var(--space-2) var(--space-4)}.footer-identity>:not(.copy-button){display:none}.footer-identity .copy-button{padding:0 var(--space-2);gap:var(--space-1)}.footer-identity .copy-button:before{content:"id:";font-size:var(--text-xs);color:var(--neutral-600)}}.broadcast-tab,.cues-tab,.stage-tab,.floorplan-tab,.templates-tab,.logs-tab,.characters-tab,.settings-tab,.about-tab,.users-tab,.groups-tab,.audio-tab,.venue-tab,.watchers-tab,.ops-tab,.comms-tab,.sims-tab{height:100%;overflow:hidden}.settings-tab{overflow-y:auto}.about-tab{overflow-y:auto;display:flex}.sims-tab{overflow-y:auto}.groups-tab,.users-tab{position:relative}.groups-tab{--split: 27%}.groups-detail{position:relative;min-width:0;min-height:0;display:flex;flex-direction:column;gap:var(--panel-gap)}.groups-detail-drop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none;display:flex;align-items:center;justify-content:center;border:2px solid var(--primary-500);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--primary-100) 85%,transparent);color:var(--primary-700);font-size:var(--text-base);font-weight:var(--font-semibold)}.groups-detail-close{position:absolute;top:var(--space-2);right:var(--space-2);z-index:3;width:26px;height:26px;padding:0;line-height:1;font-size:1rem;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-full);background:var(--surface-1);color:var(--text-secondary);border:1px solid var(--border-color);--button-hover-bg: var(--neutral-100)}.groups-detail-subject>.user-view:not(.mini):not(.selector)>.user-header{padding-right:44px}.groups-detail-subject>.group-detail>.group-detail-head{padding-right:32px}.groups-detail-subject{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}.groups-detail-subject>*{flex:1 1 auto;min-height:0}.groups-detail-subject>.user-view{display:flex;flex-direction:column}.groups-detail-subject>.user-view>.user-view-tab-content.active{flex:1 1 auto;min-height:0;max-height:none;overflow-y:auto}.groups-detail-subject>.user-view>.user-view-tab-content.active[data-tab=transcript]{display:flex;flex-direction:column;overflow:visible}.groups-detail-subject .user-view-tab-content[data-tab=transcript] .transcript-wrap{flex:1;min-height:0}.groups-detail-subject .user-view-tab-content[data-tab=transcript] .transcript{flex:1 1 0;min-height:0;max-height:none}.groups-detail-subject>.user-view>.user-view-tab-content.active:is([data-tab=vars],[data-tab=story]){display:flex;flex-direction:column;overflow:hidden}.groups-detail-subject>.user-view>.user-view-tab-content.active[data-tab=vars]:has(.vars-add-form){overflow:visible}.groups-detail-subject .user-view-tab-content[data-tab=vars] .vars-editor{flex:1 1 0;min-height:0}.groups-detail-subject .user-view-tab-content[data-tab=vars] .vars-scroll{flex:1 1 0;min-height:0;overflow-y:auto;padding-right:var(--space-3)}.groups-detail-subject .user-view-tab-content[data-tab=story] .story-pane{flex:1 1 0;min-height:0;max-height:none;overflow-y:auto}.groups-detail-subject>.user-view>.user-view-tab-content.active[data-tab=comms]{display:flex;flex-direction:column;overflow:hidden}.groups-detail-subject .user-view-tab-content[data-tab=comms] .stage-person-comms{flex:1;min-height:0}.groups-detail-subject .user-view-tab-content[data-tab=comms] .comms-stream{flex:1 1 0;min-height:0;max-height:none}.groups-detail-subject>.group-detail{overflow-y:auto}.groups-detail-mic{flex:none}.groups-detail-mic .crew-talk{display:flex;flex-direction:column;gap:var(--space-2)}.groups-detail-mic .speak-identity-row,.person-mic .speak-identity-row{border-top:none;margin-top:0;padding-top:0}.groups-detail-empty{min-height:80px;display:flex;align-items:center;justify-content:center;text-align:center;padding:var(--space-4);color:var(--text-muted);font-size:var(--text-sm);border:2px dashed var(--border-color);border-radius:var(--radius-lg);transition:var(--transition-paint-base)}.add-users-button{margin:auto var(--space-3) var(--space-2);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);font-size:var(--text-sm);font-weight:var(--font-semibold)}.groups-tab .groups-list-container,.users-tab .users{padding-bottom:5rem}.groups-tab>.groups-container{flex:1;min-height:0}.groups-tab .groups-container{flex:1;min-width:0}.cues-tab{display:flex;flex-direction:column}.status-disconnected{font-size:var(--text-sm);margin-top:var(--space-2);margin-bottom:var(--space-2);color:var(--danger-color);animation:none;font-family:var(--font-mono)}.status-readonly{padding:1px 7px;border-radius:999px;background:var(--neutral-200);font-family:var(--font-mono)}.group-dialog-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:var(--z-modal)}.group-dialog-overlay .group-dialog{position:relative;background:var(--neutral-50);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow-xl);min-width:400px;max-width:500px}.group-dialog-overlay .group-dialog h3{margin:0 0 20px;font-size:var(--text-lg);font-weight:var(--font-bold);color:var(--neutral-900)}.group-dialog-overlay .group-dialog form{display:flex;flex-direction:column;gap:var(--space-4)}.group-dialog-overlay .group-dialog input,.group-dialog-overlay .group-dialog textarea{padding:var(--space-2) var(--space-3);border:1px solid var(--neutral-300);font-family:inherit;transition:var(--transition-paint-fast)}.group-dialog-overlay .group-dialog textarea{resize:vertical;min-height:60px}.group-dialog-overlay .group-dialog.reset-dialog{padding:var(--space-12) var(--space-12) var(--space-10)}.group-dialog-overlay .group-dialog.reset-dialog p{margin:0 0 var(--space-10);line-height:1.45}.group-dialog-overlay .group-dialog.reset-dialog .dialog-buttons{margin-top:var(--space-10)}.group-dialog-overlay .group-dialog button[type=button].reset-toggle{display:flex;align-items:center;gap:var(--space-2);margin:var(--space-4) 0;padding:0;background:transparent;font-size:var(--text-sm);text-align:left}.group-dialog-overlay .group-dialog button[type=button].reset-toggle:hover{background:transparent}.group-dialog-overlay .group-dialog .dialog-buttons{display:flex;gap:var(--space-3);justify-content:flex-end;margin-top:var(--space-2)}.group-dialog-overlay .group-dialog button{padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--font-medium);cursor:pointer;transition:var(--transition-paint-base);border:none}.group-dialog-overlay .group-dialog button[type=submit]{background-color:var(--primary-600);color:var(--neutral-50)}.group-dialog-overlay .group-dialog button[type=submit]:hover{background-color:var(--primary-700)}.group-dialog-overlay .group-dialog button[type=button]{background-color:var(--neutral-200);color:var(--neutral-700)}.group-dialog-overlay .group-dialog button[type=button]:hover{background-color:var(--neutral-300);color:var(--neutral-900)}.group-dialog-overlay .group-dialog button[type=button].danger{background-color:var(--danger-color);color:var(--neutral-50)}.group-dialog-overlay .group-dialog button[type=button].danger:hover{background-color:var(--danger-hover);color:var(--neutral-50)}.dev-gear-button{display:inline-flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--border-color, #ccc);border-radius:var(--radius-md, 6px);padding:6px 8px;cursor:pointer;color:inherit;font-size:1.05rem}.dev-gear-button:hover{background:var(--neutral-100, #f0f0f0)}.show-runner .qr-modal{max-width:420px}.reset-rehearsal-button{position:absolute;top:var(--space-3);right:var(--space-6);z-index:3;background:transparent;border:1px solid var(--border-color, #ccc);border-radius:var(--radius-md, 6px);padding:6px 10px;cursor:pointer;color:inherit;font-size:var(--text-sm, .875rem);font-weight:var(--font-semibold, 600)}.reset-rehearsal-button:hover{background:var(--neutral-100, #f0f0f0)}.preview-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 16px;background:var(--warning-light);color:var(--text-primary);border-bottom:2px solid var(--warning-color)}.preview-banner-main{display:flex;align-items:center;gap:12px;min-width:0}.preview-banner-kicker{font-weight:800;letter-spacing:0;color:var(--warning-color)}.preview-banner-title{font-weight:700}.preview-banner-time{color:var(--text-secondary);font-size:.9rem}.preview-banner-actions{display:flex;gap:8px;flex-wrap:wrap}.preview-banner-actions button{border:1px solid var(--warning-color);background:transparent;color:var(--text-primary);border-radius:6px;padding:6px 10px;cursor:pointer}.preview-banner-actions button:disabled{opacity:.6;cursor:default}.tab-badge{display:inline-block;margin-left:5px;padding:0 6px;min-width:16px;font-size:10px;line-height:16px;border-radius:999px;text-align:center;font-weight:var(--font-semibold);background:var(--crew-accent);color:var(--crew-accent-ink)}.tab-badge.alert{animation:tab-badge-pulse 1.2s ease-in-out infinite}@keyframes tab-badge-pulse{50%{box-shadow:0 0 0 4px color-mix(in srgb,var(--crew-accent) 25%,transparent)}}:root{--toastify-color-light: #fff;--toastify-color-dark: #121212;--toastify-color-info: #3498db;--toastify-color-success: #07bc0c;--toastify-color-warning: #f1c40f;--toastify-color-error: hsl(6, 78%, 57%);--toastify-color-transparent: rgba(255, 255, 255, .7);--toastify-icon-color-info: var(--toastify-color-info);--toastify-icon-color-success: var(--toastify-color-success);--toastify-icon-color-warning: var(--toastify-color-warning);--toastify-icon-color-error: var(--toastify-color-error);--toastify-container-width: fit-content;--toastify-toast-width: 320px;--toastify-toast-offset: 16px;--toastify-toast-top: max(var(--toastify-toast-offset), env(safe-area-inset-top));--toastify-toast-right: max(var(--toastify-toast-offset), env(safe-area-inset-right));--toastify-toast-left: max(var(--toastify-toast-offset), env(safe-area-inset-left));--toastify-toast-bottom: max(var(--toastify-toast-offset), env(safe-area-inset-bottom));--toastify-toast-background: #fff;--toastify-toast-padding: 14px;--toastify-toast-min-height: 64px;--toastify-toast-max-height: 800px;--toastify-toast-bd-radius: 6px;--toastify-toast-shadow: 0px 4px 12px rgba(0, 0, 0, .1);--toastify-font-family: sans-serif;--toastify-z-index: 9999;--toastify-text-color-light: #757575;--toastify-text-color-dark: #fff;--toastify-text-color-info: #fff;--toastify-text-color-success: #fff;--toastify-text-color-warning: #fff;--toastify-text-color-error: #fff;--toastify-spinner-color: #616161;--toastify-spinner-color-empty-area: #e0e0e0;--toastify-color-progress-light: linear-gradient(to right, #4cd964, #5ac8fa, #007aff, #34aadc, #5856d6, #ff2d55);--toastify-color-progress-dark: #bb86fc;--toastify-color-progress-info: var(--toastify-color-info);--toastify-color-progress-success: var(--toastify-color-success);--toastify-color-progress-warning: var(--toastify-color-warning);--toastify-color-progress-error: var(--toastify-color-error);--toastify-color-progress-bgo: .2}.Toastify__toast-container{z-index:var(--toastify-z-index);-webkit-transform:translate3d(0,0,var(--toastify-z-index));position:fixed;width:var(--toastify-container-width);box-sizing:border-box;color:#fff;display:flex;flex-direction:column}.Toastify__toast-container--top-left{top:var(--toastify-toast-top);left:var(--toastify-toast-left)}.Toastify__toast-container--top-center{top:var(--toastify-toast-top);left:50%;transform:translate(-50%);align-items:center}.Toastify__toast-container--top-right{top:var(--toastify-toast-top);right:var(--toastify-toast-right);align-items:end}.Toastify__toast-container--bottom-left{bottom:var(--toastify-toast-bottom);left:var(--toastify-toast-left)}.Toastify__toast-container--bottom-center{bottom:var(--toastify-toast-bottom);left:50%;transform:translate(-50%);align-items:center}.Toastify__toast-container--bottom-right{bottom:var(--toastify-toast-bottom);right:var(--toastify-toast-right);align-items:end}.Toastify__toast{--y: 0;position:relative;touch-action:none;width:var(--toastify-toast-width);min-height:var(--toastify-toast-min-height);box-sizing:border-box;margin-bottom:1rem;padding:var(--toastify-toast-padding);border-radius:var(--toastify-toast-bd-radius);box-shadow:var(--toastify-toast-shadow);max-height:var(--toastify-toast-max-height);font-family:var(--toastify-font-family);z-index:0;display:flex;flex:1 auto;align-items:center;word-break:break-word}@media only screen and (max-width: 480px){.Toastify__toast-container{width:100vw;left:env(safe-area-inset-left);margin:0}.Toastify__toast-container--top-left,.Toastify__toast-container--top-center,.Toastify__toast-container--top-right{top:env(safe-area-inset-top);transform:translate(0)}.Toastify__toast-container--bottom-left,.Toastify__toast-container--bottom-center,.Toastify__toast-container--bottom-right{bottom:env(safe-area-inset-bottom);transform:translate(0)}.Toastify__toast-container--rtl{right:env(safe-area-inset-right);left:initial}.Toastify__toast{--toastify-toast-width: 100%;margin-bottom:0;border-radius:0}}.Toastify__toast-container[data-stacked=true]{width:var(--toastify-toast-width)}.Toastify__toast--stacked{position:absolute;width:100%;transform:translate3d(0,var(--y),0) scale(var(--s));transition:transform .3s}.Toastify__toast--stacked[data-collapsed] .Toastify__toast-body,.Toastify__toast--stacked[data-collapsed] .Toastify__close-button{transition:opacity .1s}.Toastify__toast--stacked[data-collapsed=false]{overflow:visible}.Toastify__toast--stacked[data-collapsed=true]:not(:last-child)>*{opacity:0}.Toastify__toast--stacked:after{content:"";position:absolute;left:0;right:0;height:calc(var(--g) * 1px);bottom:100%}.Toastify__toast--stacked[data-pos=top]{top:0}.Toastify__toast--stacked[data-pos=bot]{bottom:0}.Toastify__toast--stacked[data-pos=bot].Toastify__toast--stacked:before{transform-origin:top}.Toastify__toast--stacked[data-pos=top].Toastify__toast--stacked:before{transform-origin:bottom}.Toastify__toast--stacked:before{content:"";position:absolute;left:0;right:0;bottom:0;height:100%;transform:scaleY(3);z-index:-1}.Toastify__toast--rtl{direction:rtl}.Toastify__toast--close-on-click{cursor:pointer}.Toastify__toast-icon{margin-inline-end:10px;width:22px;flex-shrink:0;display:flex}.Toastify--animate{animation-fill-mode:both;animation-duration:.5s}.Toastify--animate-icon{animation-fill-mode:both;animation-duration:.3s}.Toastify__toast-theme--dark{background:var(--toastify-color-dark);color:var(--toastify-text-color-dark)}.Toastify__toast-theme--light,.Toastify__toast-theme--colored.Toastify__toast--default{background:var(--toastify-color-light);color:var(--toastify-text-color-light)}.Toastify__toast-theme--colored.Toastify__toast--info{color:var(--toastify-text-color-info);background:var(--toastify-color-info)}.Toastify__toast-theme--colored.Toastify__toast--success{color:var(--toastify-text-color-success);background:var(--toastify-color-success)}.Toastify__toast-theme--colored.Toastify__toast--warning{color:var(--toastify-text-color-warning);background:var(--toastify-color-warning)}.Toastify__toast-theme--colored.Toastify__toast--error{color:var(--toastify-text-color-error);background:var(--toastify-color-error)}.Toastify__progress-bar-theme--light{background:var(--toastify-color-progress-light)}.Toastify__progress-bar-theme--dark{background:var(--toastify-color-progress-dark)}.Toastify__progress-bar--info{background:var(--toastify-color-progress-info)}.Toastify__progress-bar--success{background:var(--toastify-color-progress-success)}.Toastify__progress-bar--warning{background:var(--toastify-color-progress-warning)}.Toastify__progress-bar--error{background:var(--toastify-color-progress-error)}.Toastify__progress-bar-theme--colored.Toastify__progress-bar--info,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--success,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--warning,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--error{background:var(--toastify-color-transparent)}.Toastify__close-button{color:#fff;position:absolute;top:6px;right:6px;background:transparent;outline:none;border:none;padding:0;cursor:pointer;opacity:.7;transition:.3s ease;z-index:1}.Toastify__toast--rtl .Toastify__close-button{left:6px;right:unset}.Toastify__close-button--light{color:#000;opacity:.3}.Toastify__close-button>svg{fill:currentColor;height:16px;width:14px}.Toastify__close-button:hover,.Toastify__close-button:focus{opacity:1}@keyframes Toastify__trackProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.Toastify__progress-bar{position:absolute;bottom:0;left:0;width:100%;height:100%;z-index:1;opacity:.7;transform-origin:left}.Toastify__progress-bar--animated{animation:Toastify__trackProgress linear 1 forwards}.Toastify__progress-bar--controlled{transition:transform .2s}.Toastify__progress-bar--rtl{right:0;left:initial;transform-origin:right;border-bottom-left-radius:initial}.Toastify__progress-bar--wrp{position:absolute;overflow:hidden;bottom:0;left:0;width:100%;height:5px;border-bottom-left-radius:var(--toastify-toast-bd-radius);border-bottom-right-radius:var(--toastify-toast-bd-radius)}.Toastify__progress-bar--wrp[data-hidden=true]{opacity:0}.Toastify__progress-bar--bg{opacity:var(--toastify-color-progress-bgo);width:100%;height:100%}.Toastify__spinner{width:20px;height:20px;box-sizing:border-box;border:2px solid;border-radius:100%;border-color:var(--toastify-spinner-color-empty-area);border-right-color:var(--toastify-spinner-color);animation:Toastify__spin .65s linear infinite}@keyframes Toastify__bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(3000px,0,0)}60%{opacity:1;transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutRight{20%{opacity:1;transform:translate3d(-20px,var(--y),0)}to{opacity:0;transform:translate3d(2000px,var(--y),0)}}@keyframes Toastify__bounceInLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(-3000px,0,0)}60%{opacity:1;transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutLeft{20%{opacity:1;transform:translate3d(20px,var(--y),0)}to{opacity:0;transform:translate3d(-2000px,var(--y),0)}}@keyframes Toastify__bounceInUp{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,3000px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translateZ(0)}}@keyframes Toastify__bounceOutUp{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,-2000px,0)}}@keyframes Toastify__bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,-3000px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:none}}@keyframes Toastify__bounceOutDown{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,2000px,0)}}.Toastify__bounce-enter--top-left,.Toastify__bounce-enter--bottom-left{animation-name:Toastify__bounceInLeft}.Toastify__bounce-enter--top-right,.Toastify__bounce-enter--bottom-right{animation-name:Toastify__bounceInRight}.Toastify__bounce-enter--top-center{animation-name:Toastify__bounceInDown}.Toastify__bounce-enter--bottom-center{animation-name:Toastify__bounceInUp}.Toastify__bounce-exit--top-left,.Toastify__bounce-exit--bottom-left{animation-name:Toastify__bounceOutLeft}.Toastify__bounce-exit--top-right,.Toastify__bounce-exit--bottom-right{animation-name:Toastify__bounceOutRight}.Toastify__bounce-exit--top-center{animation-name:Toastify__bounceOutUp}.Toastify__bounce-exit--bottom-center{animation-name:Toastify__bounceOutDown}@keyframes Toastify__zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes Toastify__zoomOut{0%{opacity:1}50%{opacity:0;transform:translate3d(0,var(--y),0) scale3d(.3,.3,.3)}to{opacity:0}}.Toastify__zoom-enter{animation-name:Toastify__zoomIn}.Toastify__zoom-exit{animation-name:Toastify__zoomOut}@keyframes Toastify__flipIn{0%{transform:perspective(400px) rotateX(90deg);animation-timing-function:ease-in;opacity:0}40%{transform:perspective(400px) rotateX(-20deg);animation-timing-function:ease-in}60%{transform:perspective(400px) rotateX(10deg);opacity:1}80%{transform:perspective(400px) rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes Toastify__flipOut{0%{transform:translate3d(0,var(--y),0) perspective(400px)}30%{transform:translate3d(0,var(--y),0) perspective(400px) rotateX(-20deg);opacity:1}to{transform:translate3d(0,var(--y),0) perspective(400px) rotateX(90deg);opacity:0}}.Toastify__flip-enter{animation-name:Toastify__flipIn}.Toastify__flip-exit{animation-name:Toastify__flipOut}@keyframes Toastify__slideInRight{0%{transform:translate3d(110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInLeft{0%{transform:translate3d(-110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInUp{0%{transform:translate3d(0,110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInDown{0%{transform:translate3d(0,-110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideOutRight{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(110%,var(--y),0)}}@keyframes Toastify__slideOutLeft{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(-110%,var(--y),0)}}@keyframes Toastify__slideOutDown{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(0,500px,0)}}@keyframes Toastify__slideOutUp{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(0,-500px,0)}}.Toastify__slide-enter--top-left,.Toastify__slide-enter--bottom-left{animation-name:Toastify__slideInLeft}.Toastify__slide-enter--top-right,.Toastify__slide-enter--bottom-right{animation-name:Toastify__slideInRight}.Toastify__slide-enter--top-center{animation-name:Toastify__slideInDown}.Toastify__slide-enter--bottom-center{animation-name:Toastify__slideInUp}.Toastify__slide-exit--top-left,.Toastify__slide-exit--bottom-left{animation-name:Toastify__slideOutLeft;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--top-right,.Toastify__slide-exit--bottom-right{animation-name:Toastify__slideOutRight;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--top-center{animation-name:Toastify__slideOutUp;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--bottom-center{animation-name:Toastify__slideOutDown;animation-timing-function:ease-in;animation-duration:.3s}@keyframes Toastify__spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.board-panel{padding:var(--space-4);display:flex;flex-direction:column;gap:10px}.board-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.board-head h3{margin:0;font-size:.78em;font-weight:var(--font-bold);text-transform:uppercase;letter-spacing:.06em;color:var(--text-primary)}.board-counts{font-size:.78em;color:var(--neutral-500);font-variant-numeric:tabular-nums}.board-head .board-ghost{margin-left:auto}.board-empty{margin:0;font-size:.85em;color:var(--neutral-500)}.board-error{margin:0;font-size:.82em;color:var(--danger-color)}.board-grid{--card-max: 300px;list-style:none;margin:0;padding:0}.board-card{position:relative;display:flex;flex-direction:column;gap:5px;min-height:104px;border-left-width:4px;padding:9px 11px;font-size:.88em}.board-card.state-go{border-left-color:var(--success-color)}.board-card.state-noGo{border-left-color:var(--danger-color);background:color-mix(in srgb,var(--danger-light) 40%,var(--surface-1))}.board-card.state-unknown{border-left-color:var(--warning-color)}.board-card-top{display:flex;align-items:center;gap:6px;min-height:18px}.board-state{font-size:.72em;font-weight:var(--font-bold);letter-spacing:.04em;padding:2px 8px;border-radius:4px;background:var(--neutral-200);color:var(--neutral-700)}.board-state.s-go{background:var(--success-100);color:var(--success-color)}.board-state.s-noGo{background:var(--danger-light);color:var(--danger-color)}.board-state.s-unknown{background:var(--warning-light);color:var(--warning-color)}.board-age{margin-left:auto;font-size:.76em;color:var(--neutral-500);font-variant-numeric:tabular-nums}.board-label{font-weight:var(--font-medium);line-height:1.3}.board-owner{font-size:.85em;color:var(--neutral-500)}.board-watch{font-size:.8em;color:var(--neutral-500);font-style:italic}.board-card-foot{margin-top:auto;display:flex;align-items:center;gap:4px;padding-top:4px}.board-card-tools{margin-left:auto;display:flex;gap:4px}.board-ghost.go{color:var(--success-color)}.board-ghost.nogo,.board-ghost.danger{color:var(--danger-color)}.board-pill{letter-spacing:.04em}.board-pill.r-go{background:var(--success-100);color:var(--success-color)}.board-pill.r-noGo{background:var(--danger-light);color:var(--danger-color)}.board-pill.r-standby{background:var(--warning-light);color:var(--warning-color)}.board-pill-header{cursor:pointer;--button-hover-bg: var(--neutral-200);--button-hover-border: transparent}.board-card.board-editor{border-style:dashed;border-left-width:1px}.board-card.board-editor.watched{grid-column:1 / -1}.board-editor-owner{display:flex;gap:6px}.board-editor-owner>*{flex:1;min-width:0}.board-input,.board-select{padding:4px 8px;border-radius:6px;color:var(--neutral-800);font-size:.85em;min-width:0}.board-editor-actions{margin-top:auto;display:flex;align-items:center;gap:8px;padding-top:4px}.var-picker{position:relative;width:100%}.var-picker-field{display:flex;flex-wrap:wrap;align-items:center;gap:4px;padding:2px 4px;background:var(--neutral-50);border:var(--border-width) solid var(--border-color);border-radius:4px}.var-picker-field:focus-within{border-color:var(--primary-600)}.var-picker-input{flex:1;min-width:80px;padding:2px;font-family:var(--font-mono);font-size:var(--text-xs);background:transparent;border:none}.var-picker-input::placeholder{color:var(--text-secondary)}.var-picker-input.required{outline:none}.var-picker-field:has(.var-picker-input.required){border-color:var(--danger-600, #dc2626)}.var-chip{font-family:var(--font-mono);color:var(--primary-700);background:var(--primary-100)}.var-chip-x{display:inline-flex;align-items:center;justify-content:center;width:13px;height:13px;font-size:12px;line-height:1;color:var(--primary-700)}.var-chip-x:hover{color:var(--danger-600, #dc2626)}.var-picker-menu{position:absolute;z-index:30;top:calc(100% + 2px);left:0;right:0;margin:0;padding:2px;list-style:none;max-height:180px;overflow-y:auto;background:var(--surface, var(--neutral-50));border:var(--border-width) solid var(--border-color);border-radius:4px;box-shadow:0 4px 12px #0000001f}.var-picker-option{display:block;width:100%;text-align:left;padding:3px 6px;font-size:var(--text-xs);color:var(--text-primary);border-radius:3px}.var-picker-option:hover,.var-picker-option.active{background:var(--primary-100);color:var(--primary-700)}.var-picker-create{color:var(--primary-600);font-style:italic}.var-picker-create-row{display:flex;align-items:center;gap:4px}.var-picker-create-row .var-picker-create{flex:1}.var-picker-type{display:inline-flex;gap:2px;padding-right:4px}.var-picker-type-opt{padding:1px 5px;font-size:10px;color:var(--text-secondary);background:transparent;border:var(--border-width) solid var(--border-color);border-radius:3px;cursor:pointer;--button-hover-bg: var(--primary-100);--button-hover-border: var(--border-color)}.var-picker-type-opt.active{color:var(--primary-700);background:var(--primary-100);border-color:var(--primary-600)}.cond-editor{margin-top:8px;display:grid;grid-template-columns:var(--cond-label-col, max-content) minmax(0,1fr);column-gap:8px;align-items:start;text-align:left}.cond-label{padding-top:3px;font-size:.82rem;color:var(--text-secondary);white-space:nowrap}.cond-body{grid-column:1 / -1;display:flex;flex-direction:column;align-items:flex-start;gap:4px}.cond-label+.cond-body{grid-column:2}.cond-preview{font-size:var(--text-xs);color:var(--text-secondary);font-style:italic}.cond-toggle{font-size:var(--text-xs);color:var(--primary-600);background:transparent;border:none;cursor:pointer;padding:2px 4px}.cond-toggle:hover{text-decoration:underline}.cond-body>.cond-toggle{padding-top:5px}.cond-add-and{align-self:flex-start;padding:2px 0}.cond-rows{display:flex;flex-direction:column;gap:6px}.cond-row{display:flex;flex-wrap:wrap;align-items:center;gap:4px}.cond-row-x{margin-left:auto;display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;font-size:13px;line-height:1;color:var(--text-secondary);background:transparent;border:none;cursor:pointer}.cond-row-x:hover:not(:disabled){color:var(--danger-600, #dc2626);background:var(--danger-light);border-radius:4px}.cond-and-note{font-size:var(--text-xs);color:var(--text-secondary);font-style:italic}.cond-select,.cond-input{flex:0 1 auto;width:auto;min-width:0;padding:4px 6px;font-size:var(--text-xs);border-radius:4px}.cond-num{width:6em;flex:0 0 auto}.cond-input::placeholder{color:var(--text-secondary)}.cond-row .var-picker{width:11em;flex:0 1 auto;min-width:90px}.cond-row-readonly{gap:8px}.cond-readonly-text{font-size:var(--text-xs);color:var(--text-secondary);font-style:italic}:root{--comms-notice: var(--warning-color);--comms-notice-wash: var(--warning-light);--comms-notice-ink: var(--on-accent)}.comms-panel{display:flex;flex-direction:column;gap:var(--panel-gap);height:100%;min-height:0}.comms-panel.ear{max-width:480px;margin:0 auto;gap:var(--space-8);padding:var(--space-5)}.comms-panel:not(.ear) .comms-voice{background-color:var(--neutral-50);border:1px solid var(--border-color);border-radius:var(--radius-lg)}.comms-panel:not(.ear) .comms-voice,.comms-main,.comms-bannercard,.comms-queue{padding:var(--space-4);box-sizing:border-box}.comms-main .title-container,.comms-bannercard .title-container,.comms-queue .title-container{margin-bottom:var(--space-3)}.comms-main .title,.comms-bannercard .title,.comms-queue .title{font-size:var(--text-sm)}.comms-voice{display:flex;flex-direction:column;gap:var(--space-4)}.comms-talkbar{display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap}.comms-roster{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-left:auto;align-items:center}.comms-roster-label{font-size:var(--text-xs);color:var(--text-muted);margin-right:var(--space-2)}.comms-chip .comms-dot{width:7px;height:7px;border-radius:50%;background:var(--success-vivid)}.comms-chip.offline{color:var(--text-muted)}.comms-chip.offline .comms-dot{display:none}.comms-chip.talking{box-shadow:0 0 0 2px color-mix(in srgb,var(--crew-accent) 35%,transparent)}.comms-chip-name{display:inline-flex;align-items:center;gap:var(--space-2);font:inherit;padding:1px var(--space-2);background:none;border:none;color:inherit;cursor:pointer;border-radius:var(--radius-full);--button-hover-bg: color-mix(in srgb, var(--crew-accent) 12%, transparent);--button-hover-border: transparent}.comms-chip-name:disabled{cursor:default;opacity:1;--button-hover-bg: transparent}.comms-chip:has(.comms-chip-name:disabled){background:transparent;color:var(--text-muted)}.comms-chip.target{background:var(--crew-accent);color:var(--crew-accent-ink)}.comms-chip.target .comms-dot{background:var(--crew-accent-ink)}.comms-mute{opacity:.6;padding:0 var(--space-1);display:inline-flex;color:inherit}.comms-mute svg{width:11px;height:11px}@media (hover: hover){.comms-mute{opacity:0}.comms-chip:hover .comms-mute,.comms-mute:focus-visible{opacity:.6}}.comms-mute.on,.comms-mute:hover{opacity:1}.comms-mute.on{color:var(--danger-color)}.comms-chan{display:flex;gap:var(--space-3);flex-wrap:wrap;align-items:center}.comms-chan-track{display:inline-flex;flex-wrap:wrap;gap:var(--space-1);padding:var(--space-1);border-radius:var(--radius-full);background:var(--neutral-100)}.comms-chan-btn{font:inherit;font-size:var(--text-xs);padding:var(--space-2) var(--space-6);border-radius:var(--radius-full);border:none;background:transparent;color:var(--text-secondary);cursor:pointer;--button-hover-bg: var(--neutral-200);--button-hover-border: transparent}.comms-chan-btn.on{color:var(--crew-accent-ink);font-weight:600;background:var(--crew-accent);--button-hover-bg: var(--crew-accent-strong);--button-hover-border: transparent}.comms-chan-btn:disabled{opacity:.4;cursor:default}.comms-talk{display:inline-flex;align-items:center;gap:var(--space-4);font:inherit;font-size:var(--text-base);font-weight:650;padding:var(--space-5) var(--space-10);border-radius:var(--radius-full);border:1px solid var(--crew-accent);background:var(--crew-accent);color:var(--crew-accent-ink);cursor:pointer;touch-action:none;min-width:190px;--button-hover-bg: var(--crew-accent-strong);--button-hover-border: var(--crew-accent-strong)}.comms-talk:disabled{background:var(--neutral-100);border-color:var(--neutral-100);color:var(--text-muted);cursor:default}.comms-talk-label{display:flex;flex-direction:column;align-items:flex-start;line-height:1.2}.comms-talk-label small{font-size:var(--text-xs);font-weight:400;opacity:.85}.comms-talk.talking,.comms-talk.latched{background:var(--crew-accent-strong);border-color:var(--crew-accent-strong);box-shadow:0 0 0 4px color-mix(in srgb,var(--crew-accent) 30%,transparent)}.comms-mutetoggle{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-3);border-radius:var(--radius-full);cursor:pointer;border:none;background:var(--neutral-100);color:var(--text-secondary);--button-hover-bg: var(--neutral-200);--button-hover-border: transparent}.comms-mutetoggle svg{width:14px;height:14px}.comms-mutetoggle.on{color:var(--danger-color);background:var(--danger-light)}.comms-status{font-size:var(--text-xs);opacity:.65}.comms-body{--comms-rail: 320px;display:grid;grid-template-columns:minmax(0,1fr) var(--comms-rail);gap:var(--panel-gap);flex:1;min-height:0;position:relative}.comms-panel.readonly .comms-body{grid-template-columns:minmax(0,1fr)}.comms-rail{display:flex;flex-direction:column;gap:var(--panel-gap);min-height:0;min-width:0}.comms-bannercard{flex:none}.comms-queue{flex:1;display:flex;flex-direction:column;gap:var(--space-4);min-height:0;overflow-y:auto}.comms-main{display:flex;flex-direction:column;min-width:0;min-height:0;gap:var(--space-4)}.comms-empty{font-size:var(--text-xs);color:var(--text-muted);padding:var(--space-4) var(--space-1)}.comms-lens{font-weight:500;text-transform:none;letter-spacing:0;color:var(--text-muted)}.comms-bannerbar,.team-banner,.comms-banner-slot.live,.comms-banner-slot.editing{background:var(--comms-notice-wash);border:none;border-top:2px solid var(--comms-notice);border-radius:var(--radius-lg);font-size:var(--text-sm)}.comms-bannerbar,.team-banner{display:flex;align-items:center;gap:var(--space-5);padding:var(--space-3) var(--space-6)}.team-banner{border-radius:0;width:100%;font-size:var(--text-base)}.team-banner-text{flex:1}.team-banner-meta,.comms-banner-meta{font-size:var(--text-xs);color:var(--text-muted)}.team-banner-dismiss,.comms-dismiss,.comms-banner-act{font:inherit;font-size:var(--text-xs);border:none;background:var(--neutral-200);border-radius:var(--radius-lg);color:inherit;cursor:pointer;padding:var(--space-1) var(--space-4);--button-hover-bg: var(--neutral-300);--button-hover-border: transparent}.comms-banner-act:disabled{opacity:.5;cursor:default}.comms-banner-slot.empty{font:inherit;font-size:var(--text-sm);color:var(--text-muted);border:none;border-radius:var(--radius-lg);padding:var(--space-4) var(--space-6);background:var(--neutral-100);cursor:pointer;text-align:center;width:100%;--button-hover-bg: var(--neutral-200);--button-hover-border: transparent}.comms-banner-slot.live,.comms-banner-slot.editing{padding:var(--space-4) var(--space-6);display:flex;flex-direction:column;gap:var(--space-2)}.comms-banner-slot input{font:inherit;font-size:var(--text-sm);padding:var(--space-2) var(--space-4);border-radius:var(--radius-lg);color:inherit}.comms-banner-metaRow{display:flex;align-items:baseline;gap:var(--space-4);flex-wrap:wrap}.comms-banner-count{font-size:var(--text-xs);font-weight:600;font-variant-numeric:tabular-nums;opacity:.85;white-space:nowrap}.comms-ack-head{color:var(--text-secondary);width:100%;justify-content:flex-start;gap:var(--space-4);font-size:var(--text-xs);text-align:left;padding:var(--space-1) 0}.comms-ack-head:hover{color:var(--text-primary)}.comms-ack-bar{flex:1;height:4px;border-radius:var(--radius-sm);background:var(--neutral-300);overflow:hidden}.comms-ack-bar i{display:block;height:100%;background:var(--success-vivid)}.comms-ack-list{list-style:none;margin:0;padding:var(--space-1) 0 var(--space-1) var(--space-1);display:grid;grid-template-columns:1fr 1fr;gap:var(--space-1) var(--space-5);font-size:var(--text-xs)}.comms-ack-list li{display:flex;align-items:center;gap:var(--space-3)}.comms-ack-dot{width:8px;height:8px;border-radius:50%;flex:none}.comms-ack-list .acked .comms-ack-dot{background:var(--success-vivid)}.comms-ack-list .pending .comms-ack-dot{background:var(--danger-color)}.comms-ack-list .pending{color:var(--text-secondary)}.comms-banner-acts{margin-left:auto;display:flex;gap:var(--space-3)}.comms-ping,.comms-line{background:var(--neutral-100);border-radius:var(--radius-xl);padding:var(--space-3) var(--space-4);display:flex;flex-direction:column;gap:var(--space-2);font-size:var(--text-sm)}.comms-ping{border-left:3px solid var(--crew-accent)}.comms-ping.direct{background:color-mix(in srgb,var(--crew-accent) 10%,transparent)}.comms-ping-head{display:flex;gap:var(--space-3);align-items:baseline;font-size:var(--text-xs);flex-wrap:wrap}.comms-ping-to{color:var(--text-muted)}.comms-ping-to.acc,.task-row-target.acc{color:var(--crew-accent-strong);font-weight:600;opacity:1}.todo{display:flex;flex-direction:column;gap:var(--space-3)}.todo-sec{display:flex;align-items:baseline;gap:var(--space-4);padding:var(--space-3) 0 var(--space-1)}.todo-sec:first-child{padding-top:0}.todo-sec .task-board-filter{margin-left:auto;font-weight:500;letter-spacing:0;text-transform:none}.comms-ping-age{margin-left:auto;font-size:var(--text-xs);opacity:.55}.comms-ping-actions{display:flex;gap:var(--space-3);align-items:center}.comms-line{flex-direction:row;align-items:baseline;gap:var(--space-3);opacity:.85}.comms-line-speaker{font-size:var(--text-xs);opacity:.65;white-space:nowrap}.comms-line-text{flex:1}.comms-stream{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:var(--space-1);min-height:0}.comms-older:hover{opacity:1}.comms-older{align-self:center;font-size:var(--text-xs);color:inherit;opacity:.6}.comms-msg{display:grid;grid-template-columns:40px minmax(90px,160px) minmax(0,1fr) auto;gap:var(--space-5);align-items:baseline;font-size:var(--text-sm);padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg)}.comms-stream.narrow .comms-msg{grid-template-columns:minmax(0,1fr) auto;gap:1px var(--space-3)}.comms-stream.narrow .comms-msg-time{grid-column:2;grid-row:1}.comms-stream.narrow .comms-msg-who{grid-column:1;grid-row:1}.comms-stream.narrow .comms-msg-text,.comms-stream.narrow .comms-msg-state{grid-column:1 / -1}.comms-msg-time{font-size:var(--text-xs);color:var(--text-muted);font-variant-numeric:tabular-nums}.comms-msg-who{font-size:var(--text-xs);font-weight:600;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.comms-msg-to{font-weight:400;color:var(--text-muted);margin-left:var(--space-2)}.comms-msg.dm .comms-msg-to,.comms-msg.role .comms-msg-to{color:var(--crew-accent-strong);font-weight:600}.comms-msg-text{min-width:0;overflow-wrap:anywhere}.comms-msg.spoken .comms-msg-text{font-style:italic;color:var(--text-secondary)}.comms-msg.k-ping{background:color-mix(in srgb,var(--crew-accent) 10%,transparent)}.comms-msg.k-banner{background:var(--comms-notice-wash)}.comms-tag{display:inline-block;font-size:var(--text-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:1px var(--space-3);border-radius:var(--radius-md);margin-right:var(--space-3);vertical-align:1px}.comms-tag.ping{background:var(--crew-accent-strong);color:var(--crew-accent-ink)}.comms-tag.banner{background:var(--comms-notice);color:var(--comms-notice-ink)}.comms-tag.task{background:var(--crew-accent-strong);color:var(--crew-accent-ink)}.comms-tag.ready{background:var(--neutral-300);color:var(--text-secondary)}.comms-msg-state{font-size:var(--text-xs);color:var(--text-muted);white-space:nowrap}.comms-composer{display:flex;flex-direction:column;border:1px solid var(--border-color);border-radius:var(--radius-xl);background:var(--neutral-50);overflow:hidden}.comms-composer textarea{resize:vertical;font:inherit;font-size:var(--text-sm);box-sizing:border-box;background:transparent;color:inherit;border:none;padding:var(--space-4) var(--space-5);min-height:44px}.comms-composer:focus-within{border-color:var(--crew-accent)}.comms-kindrow{display:flex;flex-wrap:wrap;gap:var(--space-4) var(--space-6);align-items:center;padding:var(--space-2) var(--space-3) var(--space-2) var(--space-5);background:var(--neutral-100);border-top:1px solid var(--border-color)}.comms-done-toggle{display:inline-flex;align-items:center;gap:var(--space-3);font-size:var(--text-xs);color:var(--text-secondary);padding:var(--space-1) 0}.comms-done-track{width:32px;height:18px;border-radius:var(--radius-full);background:var(--neutral-300);position:relative;transition:background .15s}.comms-done-track:after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:var(--on-accent);transition:transform .15s}.comms-done-toggle.on{color:var(--crew-accent-strong);font-weight:600}.comms-done-toggle.on .comms-done-track{background:var(--crew-accent)}.comms-done-toggle.on .comms-done-track:after{transform:translate(14px)}.comms-policy button.on{background:var(--crew-accent-strong);color:var(--crew-accent-ink);font-weight:600;--button-hover-bg: var(--crew-accent-strong)}.comms-counter{font-size:var(--text-xs);color:var(--danger-color)}.comms-error{font-size:var(--text-xs);color:var(--danger-color);padding:var(--space-2) var(--space-5) var(--space-3)}.comms-send{margin-left:auto;font:inherit;font-size:var(--text-sm);font-weight:600;padding:var(--space-3) var(--space-8);border-radius:var(--radius-lg);border:none;background:var(--crew-accent);color:var(--crew-accent-ink);cursor:pointer;--button-hover-bg: var(--crew-accent-strong);--button-hover-border: transparent}.comms-send:disabled{background:var(--neutral-200);color:var(--text-muted);cursor:default;--button-hover-bg: var(--neutral-200);--button-hover-border: transparent}.comms-panel.ear .comms-talkbar{flex-direction:column;align-items:stretch}.comms-panel.ear .comms-roster{margin-left:0}.comms-panel.ear .comms-chan,.comms-panel.ear .comms-chan-track{justify-content:center}.comms-panel.ear .comms-talk{font-size:var(--text-xl);padding:var(--space-10) var(--space-16);width:100%;justify-content:center}.comms-earbody{display:flex;flex-direction:column;gap:var(--space-6);align-items:stretch}.comms-ear-last{font-size:var(--text-lg);text-align:center;opacity:.9;min-height:44px}.comms-ear-done{font:inherit;font-size:var(--text-2xl);padding:var(--space-8);border-radius:var(--radius-2xl);cursor:pointer;border:2px solid var(--success-vivid);color:var(--success-color);background:transparent;--button-hover-bg: color-mix(in srgb, var(--success-vivid) 12%, transparent);--button-hover-border: var(--success-vivid)}.comms-to-label{font-size:var(--text-xs);font-weight:700;letter-spacing:.08em;color:var(--text-muted)}.comms-chan-x{margin-left:var(--space-3);opacity:.8}.comms-msg{border-left:3px solid transparent}.comms-msg.dm{border-left-color:var(--crew-accent);background:color-mix(in srgb,var(--crew-accent) 10%,transparent)}.comms-msg.role{border-left-color:var(--crew-accent)}.comms-msg.tome{background:var(--neutral-100)}.comms-msg.tome.dm,.comms-msg.k-ping.tome{background:color-mix(in srgb,var(--crew-accent) 10%,transparent)}.comms-filters{display:flex;gap:var(--space-4);flex-wrap:wrap;align-items:center;margin-bottom:var(--space-3)}.comms-filter-btn{border-radius:var(--radius-full)}.comms-person{position:relative;display:inline-flex}.comms-filter-btn.person{background:var(--neutral-100);padding:var(--space-1) var(--space-5)}.comms-person-menu{position:absolute;top:calc(100% + 4px);left:0;z-index:30;min-width:140px;max-height:240px;overflow-y:auto;list-style:none;margin:0;padding:var(--space-2);display:flex;flex-direction:column;gap:1px;background:var(--neutral-50);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-md)}.comms-person-menu button{width:100%;justify-content:flex-start;font:inherit;font-size:var(--text-xs);padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);border:none;background:transparent;color:var(--text-primary);cursor:pointer;--button-hover-bg: var(--neutral-100);--button-hover-border: transparent}.comms-panel{--ring-color: var(--crew-accent)}.audio-tab .audio-library-manager{width:100%;max-width:1100px;margin:0 auto;height:100%;display:flex;flex-direction:column;gap:var(--panel-gap);min-height:0}.audio-tab .audio-library-manager>.section-container{margin-bottom:0;flex-shrink:0}.audio-tab .audio-library-manager>.audio-library{flex:1;min-height:0}.audio-tab .audio-library .audio-asset-list{flex:1;min-height:0}.audio-add{display:flex;flex-direction:column;gap:8px}.audio-input{box-sizing:border-box;padding:6px 8px;background:var(--neutral-100);border-radius:var(--radius-lg)}.audio-add-sources{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.audio-upload-button,.audio-add-button{padding:6px 12px;font-size:var(--text-sm);color:var(--neutral-50);background:var(--primary-600);border:none;border-radius:var(--radius-lg);cursor:pointer;white-space:nowrap}.audio-upload-button:hover,.audio-add-button:hover{background:var(--primary-700)}.audio-add-button:disabled{background:var(--neutral-300);color:var(--text-muted);cursor:not-allowed}.audio-error{color:var(--danger-color);font-size:var(--text-xs)}.sound-gen-controls{display:flex;flex-direction:column;gap:6px}.audio-gen-dur{width:56px}.audio-gen-len{display:inline-flex;align-items:center;gap:6px;color:var(--text-muted);font-size:var(--text-xs)}.audio-draft{display:flex;flex-direction:column;gap:8px;padding:8px;border:1px solid var(--neutral-300);border-radius:var(--radius-lg);background:var(--neutral-100)}.audio-draft-actions{display:flex;gap:8px}.audio-draft-cancel{background:var(--neutral-300);color:var(--text-muted)}.audio-draft-cancel:hover{background:var(--neutral-400)}.audio-mode-toggle{display:inline-flex;gap:4px;align-items:center}.audio-toggle-button.active{color:var(--neutral-50);background:var(--primary-600);border-color:var(--primary-600)}.audio-toggle-button:hover:not(:disabled):not(.active){background:var(--neutral-200);color:var(--text-primary)}.audio-toggle-button.active:hover:not(:disabled){background:var(--primary-700);border-color:var(--primary-700);color:var(--neutral-50)}.compose-generated .audio-toggle-button.active,.compose-generated .audio-toggle-button.active:hover:not(:disabled){background:var(--template-color);border-color:var(--template-color)}.audio-library{flex:1;min-height:0;display:flex;flex-direction:column}.audio-asset-list{list-style:none;margin:0;padding:0;overflow-y:auto}.audio-library .audio-asset-list{padding:var(--space-2);display:flex;flex-direction:column;gap:var(--space-1)}.audio-asset{position:relative;overflow:hidden;display:flex;align-items:center;gap:var(--space-3);padding:7px 8px;border-radius:var(--radius-lg);cursor:pointer;font-size:var(--text-sm);color:var(--text-primary)}.audio-asset:hover{background:var(--neutral-100)}.audio-icon-btn{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--text-primary)}.audio-icon-btn:hover:not(:disabled){color:var(--primary-600)}.audio-asset.playing .audio-icon-btn{color:var(--primary-600)}.audio-asset-dur{flex-shrink:0;font-size:var(--text-xs);color:var(--text-muted);font-variant-numeric:tabular-nums}.audio-asset-progress{position:absolute;left:0;bottom:0;height:2px;background:var(--primary-500);pointer-events:none;transition:width .12s linear}.audio-asset.selected{background:var(--audio-light)}.audio-asset-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.audio-asset-item{list-style:none}.audio-library-filters{display:flex;align-items:center;gap:8px;margin-left:auto;min-width:0}.audio-toggle-icon{width:14px;height:14px}.audio-asset-filter{min-width:0;max-width:170px;padding:3px 8px;font-size:var(--text-xs);color:var(--text-primary);background:var(--neutral-50);border:var(--border-width) solid var(--border-color);border-radius:var(--radius-md)}.audio-rename-input{flex:1;min-width:0;padding:2px 6px;border:var(--border-width) solid var(--primary-500)}.audio-asset-drop{flex:1;min-width:0;display:flex;align-items:center;gap:8px;padding:6px 10px;border:1px dashed var(--border-color);border-radius:var(--radius-lg);background:var(--neutral-50)}.audio-asset-drop.drag-over,.sfx-sequence.drag-over{border-color:var(--primary-500);background:var(--primary-50)}.audio-asset-drop .audio-selected{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.audio-asset-pick{display:flex;flex-direction:column;gap:6px;min-height:0}.audio-asset-pick .audio-asset-list{max-height:clamp(150px,42vh,520px);border:1px solid var(--border-color);border-radius:var(--radius-lg)}.audio-asset-pick .audio-asset{cursor:pointer}.audio-selected.placeholder{color:var(--text-muted)}.audio-clear{flex-shrink:0;color:var(--text-muted);font-size:var(--text-md, 1rem);line-height:1;padding:0 4px}.audio-clear:hover:not(:disabled){color:var(--danger-color, #dc2626)}.audio-expand{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;color:var(--text-muted);transform:rotate(-90deg);transform-origin:center;transition:transform .12s ease}.audio-expand.open{transform:rotate(0)}.audio-expand:hover:not(:disabled){color:var(--text-primary)}.audio-expand svg{width:16px;height:16px}.audio-asset-expanded{padding:4px 8px 10px}.audio-row-menu{position:relative;display:inline-flex}.audio-menu-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:19}.audio-menu-popover{position:absolute;bottom:100%;right:0;z-index:20;min-width:150px;display:flex;flex-direction:column;margin-bottom:4px;padding:4px;background:var(--neutral-50);border:var(--border-width) solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-md, 0 4px 12px rgba(0, 0, 0, .15))}.audio-menu-item{text-align:left;background:transparent;border:none;color:var(--text-primary);cursor:pointer;font-size:var(--text-sm);padding:5px 8px;border-radius:var(--radius-sm, 4px);text-decoration:none}.audio-menu-item:hover:not(:disabled){background:var(--neutral-100)}.audio-menu-item:disabled{color:var(--text-muted);cursor:default}.audio-empty{color:var(--text-muted);font-size:var(--text-sm);padding:8px 2px}.audio-compose{display:flex;flex-direction:column;gap:12px}.audio-compose-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.audio-field-label{font-size:var(--text-xs);color:var(--text-muted);width:56px;flex-shrink:0}.audio-selected{font-size:var(--text-sm);color:var(--text-primary);font-weight:600}.audio-status{width:100%;align-self:stretch;font-size:var(--text-sm);color:var(--success-color)}.audio-ptt-row{display:flex;flex-direction:column;align-items:stretch;gap:6px;margin-top:12px;padding-top:12px;border-top:var(--border-width) solid var(--border-color)}.audio-ptt-button{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:16px 18px;font-size:var(--text-md, 1rem);font-weight:700;letter-spacing:.01em;color:var(--primary-700);background:var(--primary-50);border:2px solid var(--primary-600);border-radius:10px;cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:none}.audio-ptt-button:hover:not(:disabled):not(.talking){background:var(--primary-100);border-color:var(--primary-600)}.audio-ptt-button:disabled{opacity:.5;cursor:not-allowed}.audio-ptt-button.talking{--ptt-live-color: var(--danger-color);color:var(--neutral-50);background:var(--ptt-live-color);border-color:var(--ptt-live-color);animation:audio-ptt-pulse 1.2s ease-in-out infinite}@keyframes audio-ptt-pulse{0%,to{box-shadow:0 0 color-mix(in srgb,var(--ptt-live-color) 45%,transparent)}50%{box-shadow:0 0 0 8px color-mix(in srgb,var(--ptt-live-color) 0%,transparent)}}.audio-mic-icon{width:22px;height:22px;flex-shrink:0}.audio-ptt-timer{padding:0 var(--space-2);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--neutral-50) 22%,transparent);font-size:var(--text-sm);font-variant-numeric:tabular-nums}.audio-ptt-hint{font-size:var(--text-xs);color:var(--text-muted);text-align:center}.speak-control{display:flex;flex-direction:column}.speak-identity-row{display:flex;align-items:center;gap:8px;margin-top:12px;padding-top:12px;border-top:var(--border-width) solid var(--border-color)}.speak-identity-half{display:flex;align-items:center;gap:8px;flex:1 1 0;min-width:0}.speak-identity-label{font-size:var(--text-xs);color:var(--text-muted);flex-shrink:0}.speak-identity-select{flex:1;min-width:0;padding:6px 8px;cursor:pointer}.speak-identity-row.with-channel{gap:8px 20px;flex-wrap:wrap}.speak-identity-row.with-channel .speak-identity-half:not(.speak-channel){flex:1 1 140px}.speak-identity-half.speak-channel{flex:0 0 auto;margin-left:auto;gap:6px}.speak-channel-icon{width:15px;height:15px;color:var(--neutral-600);flex-shrink:0}.speak-control .audio-ptt-row{border-top:none;padding-top:6px;margin-top:6px}.speak-mode-switch:disabled{cursor:not-allowed;opacity:.6}.speak-as-character .audio-ptt-button:not(.talking){color:var(--template-color);background:var(--template-light);border-color:var(--template-color)}.speak-as-character .audio-ptt-button.talking{--ptt-live-color: var(--template-color)}.speak-as-character .audio-ptt-button:not(.talking):hover:not(:disabled){background:var(--template-100);border-color:var(--template-color)}.speak-as-character .audio-ptt-hint{color:var(--template-color)}.audio-num{width:72px;box-sizing:border-box;padding:6px 8px;font-size:var(--text-sm);color:var(--text-primary);background:var(--neutral-100);border:var(--border-width) solid var(--border-color);border-radius:var(--radius-lg)}.audio-unit{font-size:var(--text-xs);color:var(--text-muted);margin-left:-6px}.audio-hint{font-size:var(--text-xs);color:var(--text-muted);font-style:italic}.audio-mixer{flex:1;min-height:0}.audio-track-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.audio-track{border:var(--border-width) solid var(--border-color);border-radius:var(--radius-lg);padding:8px 10px;background:var(--neutral-100)}.audio-track-head{display:flex;align-items:center;gap:8px;font-size:var(--text-sm)}.audio-track-name{font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.audio-track-listeners{color:var(--text-muted);font-size:var(--text-xs);margin-left:auto;flex:none}.audio-track-names{color:var(--text-muted);font-size:var(--text-xs);margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.audio-track-controls{display:flex;align-items:center;gap:10px;margin-top:8px}.audio-track-controls input[type=range]{flex:1;max-width:160px}.audio-np-toggle{flex:none;margin-left:auto}.audio-np-summary{display:flex;align-items:center;gap:8px;margin-bottom:8px;flex-wrap:wrap}.audio-np-count{color:var(--text-muted);font-size:var(--text-xs)}.audio-np-summary-actions{display:flex;gap:6px}.audio-np-filter{width:100%;margin-bottom:8px}.audio-control-button:hover{background:var(--neutral-100);border-color:var(--primary-500);color:var(--text-primary)}.audio-control-button.stop:hover{background:var(--neutral-100);border-color:var(--danger-color);color:var(--danger-color)}.col-resizer{position:absolute;top:0;bottom:0;width:10px;cursor:col-resize;touch-action:none;-webkit-user-select:none;user-select:none;z-index:20;outline:none}.col-resizer--start{transform:translate(-50%)}.col-resizer--end{transform:translate(50%)}.col-resizer:before{content:"";position:absolute;top:0;bottom:0;left:50%;width:2px;transform:translate(-50%);background:transparent;transition:background var(--transition-fast)}.col-resizer:hover:before,.col-resizer:active:before,.col-resizer:focus-visible:before{background:var(--primary-500)}.col-resizer--y{top:auto;bottom:auto;left:0;right:0;width:auto;height:10px;cursor:row-resize}.col-resizer--y.col-resizer--start{transform:translateY(-50%)}.col-resizer--y.col-resizer--end{transform:translateY(50%)}.col-resizer--y:before{top:50%;bottom:auto;left:0;right:0;width:auto;height:2px;transform:translateY(-50%)}:root{--task-good-ink: var(--success-color)}.task-board{display:flex;flex-direction:column;gap:6px}.task-board-filter{align-self:flex-start;font:inherit;font-size:12px}.task-board-donehead{color:inherit;opacity:.7;justify-content:flex-start;width:100%;font-size:12px;text-align:left;padding:2px 0}.task-board-donehead:hover{opacity:1}.task-row{border-left:3px solid var(--crew-accent);border-radius:8px;padding:6px 9px;display:flex;flex-direction:column;gap:4px;background:var(--neutral-100)}.task-row.s-with{border-left-color:var(--success-color)}.task-row.ready{border-left-color:var(--neutral-300)}.task-row.ready.direct{border-left-color:var(--crew-accent)}.task-row.ready.nogo{border-left-color:var(--danger-color);background:color-mix(in srgb,var(--danger-color) 8%,transparent)}.task-row-status.s-nogo{color:var(--danger-color);opacity:1;font-weight:700}.task-btn.go{color:var(--task-good-ink);font-weight:700}.task-btn.nogo{color:var(--danger-color);font-weight:700}.task-row.s-done,.task-row.s-cancelled{opacity:.55;border-left-color:var(--neutral-300)}.task-row-head{display:flex;align-items:baseline;gap:6px;font-size:12px;flex-wrap:wrap}.task-row-target{opacity:.8}.task-row-status{margin-left:auto;font-size:11px;text-transform:uppercase;letter-spacing:.04em;opacity:.7}.task-row-status.s-with{color:var(--task-good-ink);opacity:1}.task-row-age{font-size:11px;opacity:.55}.task-row-text{font-size:13px}.task-row-actions{display:flex;gap:6px}.task-btn.primary{color:var(--task-good-ink);font-weight:600}.templates.section-container{overflow:visible;min-height:0}.templates-wrapper{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--panel-gap);height:100%;overflow:hidden;position:relative;--tpl-left: 50%}.templates-wrapper.has-divider{grid-template-columns:var(--tpl-left) minmax(0,1fr)}.templates .title-container{flex-shrink:0}.template-list-wrapper{flex:1;display:flex;flex-direction:column;min-height:0}.templates-list-container{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding-right:var(--space-4)}.template-list{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-2)}.template-container.grid-view{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--space-4);padding:var(--space-3) var(--space-2) var(--space-2) var(--space-2)}.template-container.grid-view .template{margin:0}.template-container.grid-view .template.mini{cursor:pointer;height:auto;min-height:100px;max-height:240px;padding:var(--space-2);overflow:hidden;font-size:var(--text-xs)}.template-container.grid-view .template.mini .meta-label{font-size:10px;font-weight:var(--font-semibold)}.template-container.grid-view .template.mini .template-icon.mini{width:24px;height:24px}.template-container.grid-view .template.mini .template-header{gap:var(--space-1);margin-bottom:var(--space-1)}.template-container.grid-view .template.mini .text-content{font-size:10px;line-height:1.3;min-height:50px;max-height:80px}.template-container.grid-view .template.mini:hover{border-color:var(--template-hover);background:var(--neutral-50)}.template-create-panel{flex:1;display:flex;flex-direction:column;height:100%;overflow:hidden}.template-create-panel .section-container{flex:1;display:flex;flex-direction:column;height:100%;overflow:hidden;position:relative}.template-create-panel .title-container{flex-shrink:0}.template-create-panel .template.card{margin:0;box-shadow:none;flex:0 1 auto;min-height:0}.template-create-footer{flex-shrink:0;margin-top:auto;padding-top:var(--space-3)}.live-session-template-fields{display:flex;flex-direction:column;gap:var(--space-2)}.template-inline-fields{--card-min: 140px;gap:var(--space-2)}.template-inline-fields label{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.live-session-advanced-toggle{display:flex;justify-content:flex-start;padding:var(--space-2) 0}.live-session-advanced{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-3)}.text-content.compact{min-height:64px}.live-option-group{display:flex;flex-direction:column;gap:var(--space-2)}.live-chip-row{display:flex;gap:var(--space-2);flex-wrap:wrap}.live-chip{padding:var(--space-2) var(--space-3);color:var(--text-secondary);background:var(--neutral-50);border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:var(--text-xs);font-weight:var(--font-semibold)}.live-chip:hover:not(:disabled){color:var(--text-primary);background:var(--neutral-200);border-color:var(--primary-500)}.live-chip.active{color:var(--neutral-50);background:var(--primary-600);border-color:var(--primary-600)}.live-chip.active:hover:not(:disabled){color:var(--neutral-50);background:var(--primary-700);border-color:var(--primary-700)}.template-create-panel.drag-over .section-container{border-color:var(--template-hover);background-color:var(--template-100);transform:scale(1.01)}.drop-to-copy-indicator{position:absolute;bottom:var(--space-4);left:50%;transform:translate(-50%);background-color:var(--template-color);color:var(--on-accent);padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:var(--font-medium);white-space:nowrap;box-shadow:var(--shadow-lg);z-index:100;animation:dropIndicatorPulse 1.5s ease-in-out infinite}@keyframes dropIndicatorPulse{0%,to{transform:translate(-50%) scale(1);opacity:.9}50%{transform:translate(-50%) scale(1.05);opacity:1}}.template-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-2)}.template-name{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--neutral-900);margin-bottom:var(--space-1);width:100%}.delete-button{background-color:var(--danger-color);color:var(--on-accent)}.delete-button:hover{background-color:var(--danger-hover)}.template-content{font-size:var(--text-sm);color:var(--neutral-700);line-height:1.4;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:var(--space-2)}.template-content.expanded{-webkit-line-clamp:unset}.send-button{padding:var(--space-1) var(--space-3);background-color:var(--template-color);color:var(--on-accent);font-size:var(--text-xs);font-weight:var(--font-semibold)}.send-button:hover{background-color:var(--template-hover)}.form-group{display:flex;flex-direction:column;gap:var(--space-2)}.template-container{display:flex;flex-direction:column;gap:var(--space-6);padding-top:var(--space-2)}.template{position:relative;display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);transition:var(--transition-paint-base)}.template:hover:not(.card){border-color:var(--template-color)}.template.card:hover{border-color:var(--template-color)}.template-content{display:flex;flex-direction:column;gap:var(--space-2)}.template.simple-template{background:var(--template-light);border-color:var(--template-color)}.template.simple-template.inset{width:100%;box-shadow:inset 0 1px 3px 0 var(--neutral-300)}.template-header{display:flex;justify-content:space-between;align-items:center;width:100%;gap:var(--space-3)}.template-name{display:flex;align-items:center;gap:var(--space-3);font-weight:var(--font-semibold);font-size:var(--text-lg);color:var(--neutral-900)}.template-icon{width:48px;height:48px;object-fit:contain}.template-icon.mini{width:32px;height:32px}.template-description{font-size:var(--text-base);line-height:1.5;color:var(--neutral-600)}.template-requires,.template-listen{font-size:var(--text-sm);display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.meta-label{font-size:var(--text-sm);font-weight:var(--font-medium)}.variable-tags{display:flex;gap:var(--space-2);flex-wrap:wrap}.variable-tag{background-color:var(--primary-100);color:var(--primary-700);padding:var(--space-1) var(--space-2);border-radius:var(--radius-full);font-size:var(--text-xs);font-family:var(--font-mono);font-weight:var(--font-medium);border:1px solid var(--primary-200)}.template-id{font-size:var(--text-xs);color:var(--neutral-500);padding:var(--space-1) var(--space-2);background-color:var(--neutral-100);border-radius:var(--radius-full);font-family:var(--font-mono)}.text-content{margin:0;font-family:var(--font-mono);font-size:var(--text-sm);white-space:pre-wrap;word-break:break-word;min-height:80px;max-height:250px;overflow-y:auto;padding:var(--space-3);background:var(--neutral-50);border-radius:var(--radius-md);border:1px solid var(--neutral-200)}.compose-input-hint{font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--template-color);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-1)}.variable{color:var(--primary-600);font-weight:var(--font-semibold);background:var(--primary-50);padding:0 var(--space-1);border-radius:var(--radius-sm)}.template.mini{position:relative;min-height:60px;width:100%;padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-2);background:var(--template-light);border-color:var(--template-color)}.template.mini:hover{background:var(--neutral-50)}.template.clickable{cursor:pointer}.template.clickable:hover{border-color:var(--template-hover)}.template.mini .icon{position:absolute;right:var(--space-3);top:var(--space-3);width:24px;height:24px}.template.mini .template-header{display:flex;align-items:center;gap:var(--space-2)}.template-name.mini-name{font-size:var(--text-xs);font-weight:var(--font-medium);flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.template-text{width:100%}.template-text .mini-text{font-size:var(--text-xs);color:var(--neutral-600);text-align:left;max-height:2.5em;margin-bottom:var(--space-1)}.template-text .mini-text .text-content{white-space:pre-wrap;overflow:hidden;text-overflow:ellipsis;font-size:inherit;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;padding:var(--space-1);background:var(--neutral-50)}.input-simple{display:flex;align-items:flex-start;gap:var(--space-3);width:100%;padding:var(--space-2)}.template-selector{display:flex;flex-direction:column;gap:var(--space-2);width:100%;margin-bottom:var(--space-4)}.template-text textarea{min-height:100px;padding:var(--space-3);font-family:var(--font-mono);resize:vertical;transition:var(--transition-paint-fast)}.template-text textarea::placeholder{color:var(--neutral-400)}.create-button{background-color:var(--template-color)!important;border-color:var(--template-color)!important;color:var(--on-accent)!important}.create-button:hover{background-color:var(--template-hover)!important;border-color:var(--template-hover)!important}.template-requires .long-input{font-family:var(--font-mono)}.required{border-color:var(--danger-color)!important}.template-voice{display:flex;align-items:center;gap:var(--space-2);color:var(--neutral-600);font-size:var(--text-sm)}.template-character,.template-character-field{display:flex;align-items:center;gap:var(--space-2);color:var(--neutral-700);font-size:var(--text-sm)}.template-character{width:fit-content;max-width:100%;padding:var(--space-1) var(--space-2);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--neutral-100)}.character-dot{width:10px;height:10px;border-radius:var(--radius-full);flex:0 0 auto}.template-voice img{width:20px;height:20px}.template-voice span{color:var(--voice-color);font-weight:var(--font-medium)}.arrow-button{padding:var(--space-2);height:auto;display:flex;align-items:center;justify-content:center;font-size:var(--text-xl);background:var(--neutral-100);color:var(--neutral-600);border:1px solid var(--neutral-300);border-radius:var(--radius-md);transition:var(--transition-paint-fast)}.arrow-button:hover{background:var(--neutral-200);color:var(--neutral-900);transform:translate(2px)}@media (max-width: 1200px){.templates-wrapper{flex-direction:column}.template-create-panel{flex:0 0 auto;max-height:400px}.templates.section-container{flex:1}}.save-template-icon{position:absolute;top:var(--space-2);right:calc(var(--space-2) + 4rem);z-index:20;display:flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;background-color:transparent;border:1px solid var(--neutral-300);border-radius:var(--radius-md);color:var(--neutral-600);cursor:pointer}.save-template-icon svg{width:15px;height:15px}.save-template-icon:hover:not(:disabled){background-color:var(--neutral-100);border-color:var(--primary-300);color:var(--primary-600)}.save-template-icon:disabled{opacity:.4;cursor:default}.clear-form-button{position:absolute;top:var(--space-2);right:var(--space-2);padding:var(--space-1) var(--space-3);display:flex;align-items:center;justify-content:center;background-color:var(--template-color);color:var(--on-accent);border:1px solid var(--template-color);border-radius:var(--radius-md);font-size:var(--text-xs);font-weight:var(--font-medium);cursor:pointer;transition:var(--transition-paint-fast);z-index:20;opacity:1;visibility:visible}.clear-form-button:hover{background-color:var(--template-hover);color:var(--on-accent);border-color:var(--template-hover)}.llm-mode-toggle .mode-tab,.ask-option-row .mode-tab{padding:var(--space-1) var(--space-3);background-color:transparent;border:1px solid var(--neutral-300);border-radius:var(--radius-sm);font-size:var(--text-sm);color:var(--neutral-600);cursor:pointer}.llm-mode-toggle .mode-tab:hover,.ask-option-row .mode-tab:hover{background-color:var(--neutral-100);color:var(--neutral-800)}.llm-mode-toggle .mode-tab.active,.ask-option-row .mode-tab.active{background-color:var(--primary-100);border-color:var(--primary-300);color:var(--primary-700)}.ask-template-fields{display:flex;flex-direction:column;gap:var(--space-2)}.ask-option-row{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.ask-option-row .meta-label{margin:0;color:var(--template-color);font-size:var(--text-xs)}.ask-target-length{min-width:10rem}.ask-option-row .submode-switch{margin-bottom:0;align-self:center}.saving-field{position:relative;display:block;width:100%}.saving-field>input,.saving-field>textarea{box-sizing:border-box}.save-dot{position:absolute;top:7px;right:7px;width:7px;height:7px;border-radius:50%;pointer-events:none}.save-dot-dirty{background:var(--warning-color)}.save-dot-saving{background:var(--neutral-500)}.save-dot-saved{background:var(--success-vivid)}.actions-menu{position:relative;display:inline-flex;flex:none}.actions-menu-toggle{width:26px;height:26px;padding:0;border-radius:var(--radius-full);display:inline-flex;align-items:center;justify-content:center;line-height:1;font-size:1rem;background:transparent;border:1px solid transparent;color:inherit;opacity:.7;cursor:pointer;--button-hover-bg: var(--neutral-100);--button-hover-border: transparent}.actions-menu-toggle:hover,.actions-menu-toggle[aria-expanded=true]{opacity:1}.actions-menu-list{position:absolute;right:0;z-index:5;min-width:176px;padding:4px;background:var(--surface-1);border:1px solid var(--border-color);border-radius:8px;box-shadow:var(--shadow-lg)}.actions-menu-list.drop-up{bottom:calc(100% + var(--space-1))}.actions-menu-list.drop-down{top:calc(100% + var(--space-1))}.actions-menu-list button{--button-hover-bg: var(--neutral-100);display:block;width:100%;text-align:left;white-space:nowrap;padding:7px 10px;border:none;border-radius:5px;background:none;font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-primary);cursor:pointer}.actions-menu-list button.danger{color:var(--danger-color);--button-hover-bg: var(--danger-light)}.actions-menu-list button:disabled{opacity:.38;cursor:default}.actions-menu-sep{height:1px;margin:4px 6px;background:var(--border-color)}.bcs{display:flex;align-items:flex-start;gap:var(--space-6);padding:var(--space-1) 0 var(--space-2);overflow-x:auto;min-height:120px}.bcs-column{flex:1 1 240px;min-width:190px;max-width:520px;display:flex;flex-direction:column;container-type:inline-size}.bcs-dense .bcs-column{min-width:170px}.bcs-node{--bcs-charw: 64px}@container (min-width: 300px){.bcs-node{--bcs-charw: 76px}}@container (min-width: 400px){.bcs-node{--bcs-charw: 104px}}.bcs-column-dragging{opacity:.4}.bcs-column-merge{box-shadow:inset 0 -3px 0 var(--cue-color)}.bcs-column-placeholder{min-height:96px;padding-top:36px}.bcs-header{position:relative;display:flex;align-items:center;gap:var(--space-2);height:24px;padding:0 2px;border-bottom:1px solid var(--neutral-400);margin-bottom:var(--space-3);cursor:grab}.bcs-header-groups{display:inline-flex;align-items:center;flex-wrap:nowrap;overflow:hidden;gap:var(--space-3);min-width:0;text-align:left}.bcs-header-groups>:last-child{min-width:0;overflow:hidden;text-overflow:ellipsis}.bcs-header-groups:disabled{cursor:default;opacity:1}.bcs-header-groups:hover:not(:disabled) .bcs-header-group{color:var(--neutral-900)}.bcs-header-group{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.bcs-header-none{font-size:var(--text-xs);font-style:italic;color:var(--neutral-500)}.bcs-gdot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.bcs-gdot-audience{background:var(--group-dot-audience)}.bcs-gdot-performer{background:var(--group-dot-performer)}.bcs-gdot-dramaturg{background:var(--group-dot-dramaturg)}.bcs-gdot-custom{background:var(--group-dot-custom)}.bcs-header-live{font-size:var(--text-xs);color:var(--neutral-600);font-variant-numeric:tabular-nums}.bcs-header-right{margin-left:auto;display:inline-flex;align-items:center;gap:var(--space-2);flex-shrink:0}.bcs-header-delay{--button-hover-bg: var(--cue-light);--button-hover-border: transparent;padding:0 var(--space-1);border:none;border-radius:var(--radius-sm);background:transparent;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--neutral-500);cursor:pointer}button.bcs-header-delay:hover{color:var(--cue-color)}.bcs-header-delay-ghost{color:var(--neutral-500);font-family:var(--font-sans);opacity:0;transition:opacity var(--transition-base)}.bcs-header:hover .bcs-header-delay-ghost,.bcs-header-delay-ghost:focus-visible{opacity:1}.bcs-header-delay-ghost:hover{color:var(--cue-color)}span.bcs-header-delay{cursor:default}.bcs-header-x{--button-hover-bg: var(--danger, #e5484d);--button-hover-border: transparent;width:18px;height:18px;display:flex;align-items:center;justify-content:center;padding:0;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--neutral-500);font-size:var(--text-xs);line-height:1;cursor:pointer;opacity:0;transition:opacity var(--transition-base)}.bcs-header:hover .bcs-header-x,.bcs-header:focus-within .bcs-header-x{opacity:1}.bcs-header-x:hover{background:var(--danger, #e5484d);color:var(--on-accent)}.bcs-groups-pop{width:240px}.bcs-stack{display:flex;flex-direction:column}.bcs-seam{position:relative;display:flex;align-items:center;gap:var(--space-2);height:28px;padding-left:30px}.bcs-seam-none{height:8px;padding-left:0}.bcs-seam-delay{border:none;cursor:pointer;--button-hover-bg: transparent;position:absolute;left:1px;padding:3px;border-radius:var(--radius-sm);background:var(--neutral-50);font-family:var(--font-mono);font-size:var(--text-xs);line-height:1.4;z-index:1}input.bcs-delay-input{--ring-color: var(--cue-color);width:52px;padding:2px 4px;border:1px solid var(--cue-color);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--text-xs);line-height:1.4;opacity:1}.bcs-seam-set{color:var(--neutral-500)}button.bcs-seam-set:hover{color:var(--cue-color)}span.bcs-seam-set{cursor:default}.bcs-seam-ghost{color:var(--neutral-500);opacity:0;transition:opacity var(--transition-base)}.bcs-seam:hover .bcs-seam-ghost,.bcs-seam-ghost:focus-visible{opacity:1}.bcs-seam-ghost:hover{color:var(--cue-color)}.bcs-seam-active{box-shadow:inset 0 2px 0 var(--cue-color)}.bcs-tail{display:flex;align-items:center;min-height:30px;margin-top:var(--space-1)}.bcs-tail-active{box-shadow:inset 0 2px 0 var(--cue-color)}.bcs-header-drophot{box-shadow:inset 0 -2px 0 var(--cue-color)}.bcs-tail-mergezone{min-height:56px;border:1px dashed var(--neutral-300);border-radius:var(--radius-md);justify-content:center}.bcs-add-beat{display:inline-flex;align-items:center;gap:var(--space-3);color:var(--neutral-500);font-size:var(--text-xs)}.bcs-add-beat:before{content:"＋";width:22px;height:22px;border-radius:50%;border:2px dashed var(--neutral-300);background:var(--neutral-50);display:flex;align-items:center;justify-content:center;box-sizing:border-box;font-size:11px;line-height:1}.bcs-add-beat:hover{color:var(--cue-color)}.bcs-add-beat:hover:before{border-color:var(--cue-color)}.bcs-colgap{flex:0 0 10px;align-self:stretch;min-height:96px;display:flex;justify-content:center;padding:0 var(--space-2);margin:0 calc(-1 * var(--space-6))}.bcs>.bcs-colgap:first-child{margin-left:0}.bcs-colgap:before{content:"";width:2px;border-radius:1px;background:transparent}.bcs-colgap-active:before{background:var(--cue-color)}.bcs-colstub{flex:0 0 auto;align-self:flex-start;margin-top:30px;margin-left:var(--space-10);display:inline-flex;align-items:center;gap:var(--space-4);padding:3px 0;color:var(--neutral-500);font-size:var(--text-sm)}.bcs-colstub:before{content:"＋";width:32px;height:32px;border-radius:50%;border:2px dashed var(--neutral-400);background:var(--neutral-50);display:flex;align-items:center;justify-content:center;box-sizing:border-box;font-size:15px;line-height:1}.bcs-colstub:hover{color:var(--cue-color)}.bcs-colstub:hover:before{border-color:var(--cue-color)}.bcs-colstub-hot{color:var(--cue-color)}.bcs-colstub-hot:before{border-style:solid;border-color:var(--cue-color)}.bcs-endzone{flex:1 0 auto;align-self:stretch;min-height:96px;display:flex;align-items:flex-start}.bcs-cardwrap{border-radius:var(--radius-md)}.bcs-attach-active{box-shadow:0 0 0 2px var(--cue-color)}.bcs-stack{position:relative}.bcs-stack:before{content:"";position:absolute;left:10px;top:12px;bottom:12px;width:2px;border-radius:1px;background:var(--neutral-300)}.bcs-node{position:relative;display:flex;gap:var(--space-3);padding:3px var(--space-2) 3px 0;min-height:30px;border-radius:var(--radius-md);cursor:pointer}.bcs-node:hover{background:var(--neutral-100)}.bcs-node-dragging{opacity:.4}.bcs-nodedot{position:relative;z-index:1;flex-shrink:0;width:22px;height:22px;margin-top:1px;border-radius:50%;background:var(--neutral-50);border:2px solid var(--template-color);display:flex;align-items:center;justify-content:center}.bcs-node.accent-generated .bcs-nodedot{border-color:var(--generated-color)}.bcs-node.accent-audio .bcs-nodedot{border-color:var(--audio-color)}.bcs-nodedot-icon{width:12px;height:12px;color:var(--template-color)}.bcs-node.accent-generated .bcs-nodedot-icon{color:var(--generated-color)}.bcs-node.accent-audio .bcs-nodedot-icon{color:var(--audio-color)}.bcs-node-running .bcs-nodedot{border-color:var(--primary-600);box-shadow:0 0 0 2px var(--primary-100)}.bcs-nodebody{flex:1;min-width:0;padding-top:3px;display:flex;flex-direction:column;gap:2px}.bcs-node-face{display:flex;align-items:baseline;gap:var(--space-2);flex-wrap:wrap;min-width:0}.bcs-node-character{flex:0 0 var(--bcs-charw, 58px);max-width:var(--bcs-charw, 58px);overflow:hidden;white-space:normal;overflow-wrap:break-word;max-height:2.5em;line-height:1.25;font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--neutral-700)}.bcs-node-line{flex:1;min-width:0;overflow:hidden;display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;line-height:1.35;font-size:var(--text-sm);color:var(--neutral-800)}.bcs-node-empty{color:var(--neutral-500);font-style:italic}.bcs-node-cond{flex-shrink:0}.bcs-node-group{flex-shrink:0;padding:0 var(--space-2);border-radius:var(--radius-sm);background:var(--neutral-200);font-size:var(--text-xs);color:var(--neutral-700);white-space:nowrap}.bcs-node-other{font-size:var(--text-sm);color:var(--neutral-700)}.bcs-node-x{--button-hover-bg: var(--danger, #e5484d);--button-hover-border: transparent;position:absolute;top:3px;right:3px;z-index:2;width:16px;height:16px;display:flex;align-items:center;justify-content:center;padding:0;border:none;border-radius:var(--radius-sm);background:var(--neutral-200);color:var(--neutral-600);font-size:10px;line-height:1;cursor:pointer;opacity:0;transition:opacity var(--transition-base)}.bcs-node:hover .bcs-node-x,.bcs-node:focus-within .bcs-node-x{opacity:1}.bcs-node-x:hover{background:var(--danger, #e5484d);color:var(--on-accent)}.bcs-attach{position:relative;display:flex;align-items:center;gap:var(--space-2)}.bcs-attach-dragging{opacity:.4}.bcs-attach-running .bcs-attach-icon,.bcs-attach-running .bcs-attach-name{color:var(--primary-600);font-weight:var(--font-semibold)}.bcs-attach-queued{animation:bcs-node-pulse 1.2s ease-in-out infinite}.bcs-attach-main{flex:1;min-width:0;display:inline-flex;align-items:center;gap:var(--space-2);cursor:inherit;text-align:left}.bcs-attach-main:disabled{cursor:default;opacity:1}.bcs-attach-icon{flex-shrink:0;width:13px;height:13px;color:var(--audio-color)}.bcs-attach-name{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:var(--text-xs);color:var(--neutral-800)}.bcs-attach-main:hover:not(:disabled) .bcs-attach-name{color:var(--audio-color)}.bcs-attach-ms{--button-hover-bg: var(--cue-light);--button-hover-border: transparent;flex-shrink:0;padding:0 var(--space-1);border:none;border-radius:var(--radius-sm);background:transparent;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--neutral-500);cursor:pointer}button.bcs-attach-ms:hover:not(:disabled){color:var(--cue-color)}.bcs-attach-ms-ghost{opacity:0;transition:opacity var(--transition-base)}.bcs-node:hover .bcs-attach-ms-ghost,.bcs-attach-ms-ghost:focus-visible{opacity:1}.bcs-attach-ms:disabled{cursor:default}.bcs-node-dur,.bcs-attach-dur{flex-shrink:0;display:inline-flex;align-items:center;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--neutral-500)}.bcs-node-dur{margin-right:16px}.bcs-node-soundline{display:block;white-space:nowrap;text-overflow:ellipsis}.bcs-node-status{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2)}.bcs-node-waiting{font-size:var(--text-xs);color:var(--warning-700, var(--neutral-700));animation:bcs-node-pulse 1.2s ease-in-out infinite}.bcs-node-chain{font-size:var(--text-xs);color:var(--primary-600);font-weight:var(--font-semibold);animation:bcs-node-pulse 1.2s ease-in-out infinite}@keyframes bcs-node-pulse{50%{opacity:.45}}.bcs-column:has(.timing-edge-pop){z-index:5}.timing-edge-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30}.timing-edge-pop{position:absolute;top:calc(100% + 4px);left:0;z-index:31;display:flex;flex-direction:column;gap:4px;padding:var(--space-2);width:200px;background:var(--neutral-100);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-md, 0 4px 12px rgba(0, 0, 0, .25))}.live-card{border:var(--border-width) solid var(--border-color);border-radius:6px;padding:8px 10px;background:var(--neutral-100);display:flex;flex-direction:column;gap:8px}.live-card-active{border-color:var(--danger-color)}.live-card-head{display:flex;align-items:baseline;gap:8px}.live-card-badge{font-size:var(--text-xs);font-weight:700;color:var(--primary-700);text-transform:uppercase}.live-card-group{font-size:var(--text-sm);color:var(--text-secondary)}.live-card-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.live-card-count{font-size:var(--text-sm);font-weight:600;color:var(--text-primary)}.live-card-muted{font-size:var(--text-xs);color:var(--text-muted)}.live-card-start,.live-card-stop{padding:6px 14px;font-size:var(--text-sm);font-weight:600;border-radius:6px;cursor:pointer;border:var(--border-width) solid var(--border-color)}.live-card-start{color:var(--neutral-50);background:var(--primary-700);border-color:var(--primary-700)}.live-card-start:hover:not(:disabled){background:var(--primary-500);border-color:var(--primary-500)}.live-card-start:disabled{opacity:.5;cursor:not-allowed}.live-card-stop{color:var(--neutral-50);background:var(--danger-color);border-color:var(--danger-color)}.live-card-stop:hover{background:var(--danger-color);border-color:var(--text-primary)}.cme{display:flex;flex-direction:column;gap:var(--space-2)}.cme-pickers{display:flex;gap:var(--space-2)}.cme-picker{flex:1;min-width:0;border:1px dashed transparent;border-radius:var(--radius-sm)}.cme-picker.cme-drag{border-color:var(--cue-color);background:var(--cue-light)}.cme-select{box-sizing:border-box;height:28px;padding:0 var(--space-2);border-radius:var(--radius-sm);color:var(--neutral-900);font-size:var(--text-xs)}.cme-delays{display:flex;gap:var(--space-2)}.cme-delay{flex:1;display:flex;flex-direction:column;gap:2px;font-size:var(--text-xs);color:var(--neutral-600)}.cme-delay-input{box-sizing:border-box;height:26px;padding:0 var(--space-2);border-radius:var(--radius-sm);color:var(--neutral-900);font-size:var(--text-xs);font-family:var(--font-mono)}.beat-summary{--button-hover-bg: var(--neutral-100);display:flex;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-1) var(--space-2);background:transparent;border:1px solid transparent;border-left:3px solid var(--template-color);border-radius:var(--radius-sm);text-align:left;cursor:pointer}.beat-summary:hover{background:var(--neutral-100)}.beat-summary-icon{flex-shrink:0;color:var(--template-color)}.beat-summary-main{flex:1;min-width:0;display:flex;align-items:baseline;gap:var(--space-2)}.beat-summary-character{flex-shrink:0;display:inline-flex;align-items:center;gap:4px;font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--neutral-700)}.beat-summary-character .character-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.beat-summary-line{flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:var(--text-sm);color:var(--neutral-800)}.beat-summary-empty{color:var(--neutral-500);font-style:italic}.beat-summary-cond{flex-shrink:0}.beat-summary-group{flex-shrink:0;font-size:var(--text-xs);color:var(--neutral-600)}.inline-beat-editor{display:flex;flex-direction:column;gap:var(--space-2)}.inline-beat-editor .ibe-kind-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.inline-beat-editor .send-kind-selector,.inline-beat-editor .submode-switch{margin-bottom:0}.ibe-hint{font-size:var(--text-xs);color:var(--neutral-600);font-style:italic}.audio-beat-editor{display:flex;flex-direction:column;gap:var(--space-4)}.abe-pick{display:flex;flex-direction:column;gap:var(--space-2)}.abe-pick-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.abe-gen-toggle:hover{background:var(--neutral-200)}.abe-knobs{display:flex;flex-direction:column;gap:var(--space-2)}.abe-row{display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap}.abe-label{font-size:var(--text-xs);color:var(--neutral-600);min-width:4.5rem}.abe-empty{font-size:var(--text-xs);color:var(--neutral-600);font-style:italic;padding:var(--space-2) 0}.abe-hint{font-size:var(--text-xs);color:var(--neutral-600);font-style:italic}@keyframes cmr-waiting-pulse{50%{opacity:.45}}.cme-group-chips{display:flex;flex-wrap:wrap;gap:6px}.cme-group-empty{font-size:.82em;color:var(--text-muted, #888)}.cme-group-chip{background:var(--neutral-50);cursor:pointer}.cme-group-chip:hover:not(:disabled){color:var(--text-primary);background:var(--neutral-200);border-color:var(--primary-500)}.cme-group-chip.on{color:var(--neutral-50);background:var(--primary-600);border-color:var(--primary-600)}.cme-group-chip.on:hover:not(:disabled){background:var(--primary-700);border-color:var(--primary-700);color:var(--neutral-50)}.voice-container{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-4);padding-top:var(--space-6);height:fit-content;max-width:400px;transition:var(--transition-paint-base);position:relative}.voice-name{font-size:var(--text-lg);font-weight:var(--font-bold);color:var(--neutral-900);margin-bottom:var(--space-2);display:block;width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.voice-provider-tag{align-self:flex-start;max-width:calc(100% - 48px);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);background:var(--neutral-200)}.voice-icon{width:32px;height:32px;color:var(--voice-color);opacity:.8}.voice-preview-button{padding:var(--space-2) var(--space-4);background:var(--action-button-color, var(--cue-color));color:var(--neutral-50);border:none;border-radius:var(--radius-md);font-weight:var(--font-medium);cursor:pointer;transition:var(--transition-paint-base);display:flex;align-items:center;gap:var(--space-2)}.voice-preview-button:hover{background:var(--action-button-hover, var(--cue-hover))}.voice-preview-button:disabled{background:var(--neutral-300);color:var(--neutral-500);cursor:not-allowed}.voice-preview-row{display:flex;align-items:center;gap:var(--space-3);margin-top:var(--space-3)}.voice-preview-row .voice-preview-button{padding:var(--space-1) var(--space-3);font-size:var(--text-xs)}.voice-preview-error{font-size:var(--text-xs);color:var(--danger-color)}.voice-picker{display:flex;flex-direction:column;gap:var(--space-2);width:100%}.voice-el-settings{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-2);background:var(--neutral-100);border-radius:var(--radius-md)}.voice-el-settings .setting-slider{display:flex;flex-direction:column;gap:var(--space-1);font-size:var(--text-xs);color:var(--neutral-700)}.voice-el-settings .setting-slider input[type=range]{width:100%}.voice-preview-text{flex:1}.voice-unavailable{font-size:var(--text-xs);color:var(--danger-color)}.voice-tag-hint{font-size:var(--text-xs);color:var(--neutral-600);font-style:italic}@media (max-width: 640px){.voice-container{padding:var(--space-3);max-width:100%}}.voice-container.mini{display:inline-flex;flex-direction:row;align-items:center;gap:var(--space-2);padding:0;background:transparent;border:none;box-shadow:none;max-width:none;height:auto}.voice-container.mini .voice-icon{position:static;width:20px;height:20px;opacity:1}.voice-container.mini .voice-name{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--neutral-700)!important;margin-bottom:0;display:inline;white-space:nowrap;overflow:visible}.voice-container.mini .voice-provider-tag{display:none}.template-voice{color:var(--neutral-700)}.template-voice .voice-container.mini .voice-name{color:var(--neutral-700)!important}.characters.split{--split: 280px}.characters-list-pane,.character-editor{min-height:0;overflow:auto;padding:var(--space-4)}.character-field-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.character-roll-button{display:inline-flex;align-items:center;gap:var(--space-1)}.characters .text-button:hover:not(:disabled){background:var(--primary-100);color:var(--primary-800);border-color:var(--primary-600)}.characters-list{display:flex;flex-direction:column;gap:var(--space-2)}.character-list-item{display:grid;grid-template-columns:16px minmax(0,1fr);align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--neutral-50);color:var(--neutral-900);text-align:left;cursor:pointer}.character-list-item:hover:not(:disabled){background:var(--primary-50);border-color:var(--primary-500);color:var(--neutral-900)}.character-list-item.selected{border-color:var(--template-color);background:var(--template-light)}.character-color{width:16px;height:16px;border-radius:var(--radius-full);border:1px solid var(--neutral-300)}.character-list-main{min-width:0;display:flex;flex-direction:column;gap:var(--space-1)}.character-list-name,.character-list-voice{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.character-list-name{font-weight:var(--font-semibold)}.character-list-voice{color:var(--neutral-600);font-size:var(--text-xs)}.character-editor{display:flex;flex-direction:column;gap:var(--space-4)}.character-editor>*{max-width:640px}.character-field{display:flex;flex-direction:column;gap:var(--space-1)}.characters .selector-label,.character-field-label{font-size:.72em;text-transform:uppercase;letter-spacing:.04em;font-weight:var(--font-semibold);color:var(--text-muted, #888)}.character-field-hint{margin-left:var(--space-2);font-weight:var(--font-normal);font-size:var(--text-xs);color:var(--neutral-500)}.character-editor-header{display:grid;grid-template-columns:minmax(180px,1fr) auto;align-items:center;gap:var(--space-3)}.character-color-input{width:38px;height:38px;min-width:38px;padding:2px;cursor:pointer}.character-name-input{font-size:var(--text-lg);font-weight:var(--font-semibold);background:var(--neutral-100)}.character-description,.character-editor textarea{width:100%;min-height:88px;resize:vertical;padding:var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--neutral-100);color:var(--neutral-900);font-family:var(--font-sans)}.character-compact-grid{display:grid;grid-template-columns:minmax(220px,420px);gap:var(--space-3)}.character-save-error{margin-right:auto;color:var(--danger-color);font-size:var(--text-sm)}.character-actions{display:flex;justify-content:flex-end;gap:var(--space-2);padding-top:var(--space-2)}.character-actions .delete-button{background-color:var(--danger-color);color:var(--on-accent)}.character-actions .delete-button:hover:not(:disabled){background-color:var(--danger-hover);color:var(--on-accent)}.character-selector{display:flex;flex-direction:column;gap:var(--space-1);width:100%}.character-selector select,.voice-selector-container select{background:var(--neutral-100)}@media (max-width: 900px){.characters.split,.character-compact-grid{grid-template-columns:1fr}.characters .col-resizer{display:none}}.send-kind-selector{display:flex;flex-wrap:wrap;gap:var(--space-1);margin-bottom:var(--space-4)}.send-kind-selector .kind-tab{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);background-color:transparent;border:1px solid transparent;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--neutral-600);cursor:pointer}.send-kind-selector .kind-tab:hover{background-color:var(--neutral-100);color:var(--neutral-800)}.send-kind-selector .kind-tab.active{background-color:var(--template-color);border-color:var(--template-color);color:var(--on-accent);font-weight:var(--font-semibold)}[data-theme=dark] .send-kind-selector .kind-tab.active{background-color:var(--template-light);border-color:var(--template-color);color:var(--template-color)}.submode-switch{display:inline-flex;align-items:center;gap:var(--space-3);align-self:flex-start;margin-bottom:var(--space-2);padding:0;background:none;border:none;cursor:pointer;--button-hover-bg: transparent}.submode-switch-track{position:relative;flex:none;width:40px;height:22px;border-radius:var(--radius-full);background:var(--template-color);transition:background var(--transition-base)}.submode-switch-thumb{position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;transition:transform var(--transition-base)}.submode-switch.generated .submode-switch-thumb,.submode-switch.on .submode-switch-thumb{transform:translate(18px)}.submode-switch-text{font-size:var(--text-xs);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:.05em;color:var(--template-color)}.compose-generated{--template-color: var(--generated-color);--template-hover: var(--generated-color);--template-light: var(--generated-light);--template-100: var(--generated-light)}.lib-toolbar{display:flex;align-items:center;gap:var(--space-1);padding:0 var(--space-1) var(--space-2);margin-bottom:var(--space-1);border-bottom:1px solid var(--neutral-200)}.lib-tools{margin-left:auto;display:inline-flex;align-items:center;gap:var(--space-1);min-width:0}.lib-btn{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:26px;box-sizing:border-box;padding:0 var(--space-2);background:transparent;border:1px solid var(--neutral-300);border-radius:var(--radius-md);color:var(--neutral-600);font-size:var(--text-xs);font-weight:var(--font-medium);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast)}.lib-btn:hover{background:var(--neutral-100);color:var(--neutral-800)}.lib-btn.active{background:var(--template-light);border-color:var(--template-color);color:var(--template-color)}.lib-btn.audio.active{background:var(--audio-light);border-color:var(--audio-color);color:var(--audio-color)}.lib-btn svg{width:14px;height:14px}.lib-search{flex:1 1 70px;min-width:56px;max-width:170px;height:26px;box-sizing:border-box;padding:0 var(--space-2);font-size:var(--text-xs);color:var(--text-primary);background:transparent;border:1px solid var(--neutral-300);border-radius:var(--radius-md)}.templated-card{background:transparent;border:1.5px dashed color-mix(in srgb,var(--template-color) 45%,transparent);border-radius:var(--radius-lg);overflow:hidden;font-size:var(--text-sm)}.templated-card.clickable{cursor:pointer}.templated-card.clickable:hover{border-color:color-mix(in srgb,var(--template-color) 80%,transparent);background:color-mix(in srgb,var(--template-color) 6%,transparent)}.templated-band{display:flex;align-items:center;gap:var(--space-3);min-height:40px;padding:var(--space-2) var(--space-4);border-bottom:1.5px dashed color-mix(in srgb,var(--template-color) 45%,transparent)}.templated-name{flex:1;min-width:0;font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--template-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.templated-character{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--text-secondary);white-space:nowrap}.templated-character-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.templated-card{container-type:inline-size}@container (max-width: 340px){.templated-card:not(.compact) .templated-band{flex-wrap:wrap;row-gap:var(--space-1)}.templated-card:not(.compact) .templated-name{white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere}.templated-card:not(.compact) .templated-character{order:1;flex-basis:100%;padding-left:calc(15px + var(--space-3));white-space:normal}}.templated-remove{border:none;background:transparent;color:var(--text-muted);font-size:var(--text-sm);line-height:1;padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);cursor:pointer}.templated-remove:hover{background:var(--neutral-100);color:var(--danger-color)}.templated-description{padding:var(--space-3) var(--space-4) 0;font-size:var(--text-sm);color:var(--text-muted)}.templated-block{padding:var(--space-3) var(--space-4) var(--space-4)}.templated-block+.templated-block{padding-top:0}.templated-block .compose-input-hint{margin-bottom:var(--space-1)}.templated-text{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--text-primary);white-space:pre-wrap;word-break:break-word}.templated-card.compact{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4) var(--space-5)}.templated-compact-head{display:flex;align-items:center;gap:var(--space-2);min-width:0}.templated-kind-icon{width:15px;height:15px;color:var(--template-color);flex-shrink:0}.templated-card.compact .templated-name{font-size:var(--text-sm)}.templated-excerpt{font-family:var(--font-mono);font-size:var(--text-xs);line-height:1.6;color:var(--text-muted);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.templated-card.compact .templated-character{font-weight:var(--font-normal);color:var(--text-muted)}.templated-requires{display:flex;flex-wrap:wrap;gap:var(--space-2);padding:0 var(--space-4) var(--space-4)}.templated-capture{padding:0 var(--space-4) var(--space-3);font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-muted)}.template-list-item{display:flex;align-items:center;gap:var(--space-3);padding:7px 8px;border-radius:var(--radius-lg);background:transparent;border:none;cursor:grab;font-size:var(--text-sm);color:var(--text-primary);transition:background var(--transition-fast)}.template-list-item:hover{background:var(--neutral-100)}.template-list-item.selected{background:var(--template-light);font-weight:var(--font-medium)}.template-list-item.generated.selected{background:var(--generated-light)}.template-list-icon,.audio-kind-icon{width:22px;height:22px;padding:4px;box-sizing:border-box;flex-shrink:0;border-radius:6px;background:color-mix(in oklab,currentColor 16%,transparent)}.template-list-item.fixed .template-list-icon{color:var(--template-color);background:color-mix(in oklab,currentColor 10%,transparent)}.template-list-item.generated .template-list-icon{color:var(--generated-color)}.template-list-name{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.compose-reqs{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;column-gap:var(--space-6);row-gap:2px}.compose-reqs li{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-primary)}.compose-reqs li:before{content:"●";font-size:.55em;line-height:1;color:var(--warning-color)}.compose-reqs li.met{color:var(--text-muted)}.compose-reqs li.met:before{color:var(--success-color)}.compose-reqs li.warn{color:var(--text-primary)}.compose-reqs li.warn:before{color:var(--warning-color)}.compose-action-stack{display:flex;flex-direction:column;gap:var(--space-2)}.compose-action-secondary{display:flex;gap:var(--space-2)}.compose-action-secondary .runnable-button{flex:1;min-width:0;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);font-size:var(--text-sm);font-weight:var(--font-medium);white-space:nowrap;background:transparent;color:var(--text-secondary);border:1px solid var(--neutral-400)}.compose-ghost-icon{width:14px;height:14px;flex-shrink:0}.compose-action-secondary .runnable-button:hover:not(:disabled){background:var(--neutral-100);color:var(--text-primary);border-color:var(--primary-500)}.compose-action-secondary .runnable-button:disabled{background:transparent;color:var(--text-secondary);border:1px solid var(--neutral-400);opacity:.5;cursor:not-allowed}.runnable-button.compose-send-button{width:100%;padding:.8rem var(--space-6);font-size:1rem;font-weight:var(--font-semibold);white-space:nowrap}.runnable-button.compose-send-button:disabled{background-color:var(--neutral-200);color:var(--text-primary);border:1px solid var(--neutral-400);font-weight:var(--font-bold);cursor:not-allowed}.ctm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000}.ctm-modal{background:var(--neutral-50);color:var(--text-primary);border:1px solid var(--neutral-200);border-radius:8px;padding:1.25rem;width:min(420px,90vw);box-shadow:0 10px 30px #0000004d;display:flex;flex-direction:column;gap:.85rem}.ctm-title{font-weight:600;font-size:1.05rem}.ctm-name{width:100%;box-sizing:border-box}.ctm-scope{display:flex;flex-direction:column;gap:.5rem}.ctm-scope-option{display:grid;grid-template-columns:auto 1fr;grid-template-areas:"radio label" "radio hint";column-gap:.6rem;align-items:center;padding:.6rem .7rem;border:1px solid var(--neutral-200);border-radius:6px;cursor:pointer}.ctm-scope-option.active{border-color:var(--accent-color);background:var(--neutral-100)}.ctm-scope-option input[type=radio]{grid-area:radio;margin:0}.ctm-scope-label{grid-area:label;font-weight:500}.ctm-scope-hint{grid-area:hint;font-size:.78rem;color:var(--text-secondary)}.ctm-actions{display:flex;justify-content:flex-end;gap:.6rem}.ctm-cancel{background:var(--neutral-100);color:var(--text-primary);border:1px solid var(--neutral-200);border-radius:5px;padding:.4rem .9rem;cursor:pointer}.ctm-cancel:hover{background:var(--neutral-200);color:var(--text-primary)}.wave-editor{padding:8px 4px 4px;border-top:var(--border-width) solid var(--border-color);margin-top:4px}.wave-canvas-wrap{position:relative}.wave-canvas{width:100%;height:120px;background:var(--neutral-100);border:var(--border-width) solid var(--border-color);border-radius:6px;touch-action:none;cursor:ew-resize;display:block}.wave-canvas-listen{cursor:pointer}.wave-trimnote{position:absolute;top:6px;left:10px;font-size:var(--text-xs);color:var(--text-muted);pointer-events:none}.wave-time{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:var(--text-xs);color:var(--text-secondary);font-variant-numeric:tabular-nums;white-space:nowrap}.wave-seek{flex:1;min-width:90px;height:6px;border-radius:999px;background:var(--neutral-300);position:relative;cursor:pointer;touch-action:none}.wave-seek-fill{position:absolute;left:0;top:0;bottom:0;border-radius:999px;background:var(--primary-600)}.wave-mode-on{border-color:var(--cue-color);color:var(--cue-color)}.wave-fields{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:8px}.wave-scope-note{font-size:var(--text-xs);color:var(--text-muted);font-style:italic}.wave-controls{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:8px}.wave-field{display:inline-flex;align-items:center;gap:4px;font-size:var(--text-xs);color:var(--text-muted)}.wave-field input{width:56px;padding:3px 6px;font-size:var(--text-xs);border-radius:4px}.wave-button{--button-hover-bg: var(--neutral-100)}.wave-button:hover{border-color:var(--primary-500);color:var(--text-primary)}.wave-button.save{margin-left:auto;color:var(--neutral-50);background:var(--primary-600);border-color:var(--primary-600)}.wave-button.save:hover{background:var(--primary-700)}.wave-button.icon{display:inline-flex;align-items:center;justify-content:center;padding:5px 8px;line-height:1}.wave-button.icon svg{width:15px;height:15px}.wave-button.danger{color:var(--danger-color, #dc2626);border-color:var(--danger-color, #dc2626)}.wave-button.danger:hover{color:var(--neutral-50);background:var(--danger-color, #dc2626);border-color:var(--danger-color, #dc2626)}.wave-error,.wave-loading{font-size:var(--text-sm);color:var(--text-muted);padding:10px 4px}.pan-picker.disabled{opacity:.5}.pan-option{min-width:28px}.pan-option:hover:not(:disabled){border-color:transparent}.pan-option:hover:not(:disabled):not(.active){color:var(--text-primary);background:var(--neutral-200)}.pan-option.active{color:var(--neutral-50);background:var(--template-color)}.pan-option.active:hover:not(:disabled){background:var(--template-color);color:var(--neutral-50)}.beat-dialog{position:relative;max-width:640px;width:90%;text-align:left;display:flex;flex-direction:column;gap:var(--space-3)}.beat-dialog-full{max-width:1040px;height:min(680px,88vh);overflow:hidden}.beat-dialog-full .beat-dialog-body{flex:1;min-height:0}.beat-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.beat-dialog-head .title{margin:0}.beat-dialog-x:hover{background:var(--neutral-300)}.beat-dialog-body{display:flex;flex-direction:column;gap:var(--space-3)}.beat-dialog-split{display:grid;grid-template-columns:minmax(240px,320px) 1fr;grid-template-rows:minmax(0,1fr);gap:var(--space-4);height:100%}.beat-dialog-library{display:flex;flex-direction:column;gap:var(--space-2);overflow-y:auto;padding-right:var(--space-2);border-right:1px solid var(--border-color)}.beat-dialog-blank{gap:var(--space-2);justify-content:flex-start;padding:7px 8px;color:var(--text-primary);text-align:left}.beat-dialog-blank-icon{width:14px;height:14px;flex-shrink:0;color:var(--neutral-600)}.beat-dialog-blank:hover{background:var(--neutral-100)}.beat-dialog-blank.active{background:var(--template-light);font-weight:var(--font-medium)}.beat-dialog-main{display:flex;flex-direction:column;gap:var(--space-3);min-width:0;min-height:0;overflow-y:auto}.beat-dialog-mode{display:flex;align-items:center;gap:var(--space-3);min-height:26px}.beat-dialog-mode-label{font-size:var(--text-xs);font-weight:var(--font-bold);letter-spacing:.08em;text-transform:uppercase;color:var(--template-color)}.beat-dialog-mode-label.own{color:var(--neutral-600)}.beat-dialog-mode-note{font-size:var(--text-xs);color:var(--neutral-600);font-style:italic}.beat-dialog-template-view{display:flex;flex-direction:column;gap:var(--space-3)}.beat-dialog-template-preview .template.card{cursor:default}.beat-dialog-fork{--button-hover-bg: var(--template-light);margin-left:auto;height:26px;padding:0 var(--space-3);border:1px solid var(--template-color);border-radius:var(--radius-sm);background:transparent;color:var(--template-color);font-size:var(--text-xs);font-weight:var(--font-medium);cursor:pointer}.beat-dialog-fork:hover:not(:disabled){background:var(--template-light)}.beat-dialog-fork:disabled{opacity:.45;cursor:default}.beat-dialog-target{display:flex;align-items:center;gap:var(--space-3);margin-top:auto}.beat-dialog-delays{display:flex;gap:var(--space-2)}.beat-dialog-live-note{font-size:var(--text-sm);color:var(--neutral-600);font-style:italic;padding:var(--space-2) 0}.beat-dialog-actions{display:flex;align-items:center;gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--border-color)}.beat-dialog-actions-right{margin-left:auto;display:flex;align-items:center;gap:var(--space-2)}.beat-dialog-primary{--button-hover-bg: var(--cue-hover);height:40px;min-width:150px;padding:0 var(--space-6);border:none;border-radius:var(--radius-md);background:var(--cue-color);color:var(--on-accent);font-size:var(--text-base);font-weight:var(--font-semibold);cursor:pointer}.beat-dialog-primary:hover:not(:disabled){background:var(--cue-hover)}.beat-dialog-primary:disabled{background:var(--neutral-200);color:var(--text-primary);border:1px solid var(--neutral-400);cursor:not-allowed}.beat-dialog-cancel:hover,.beat-dialog-preview:hover:not(:disabled){background:var(--neutral-100);color:var(--text-primary)}.beat-dialog-preview:disabled{opacity:.5;cursor:default}.beat-dialog-delete-wrap{position:relative;display:inline-flex}.beat-dialog-delete:hover:not(:disabled){background:var(--danger, #e5484d);color:var(--on-accent);border-color:transparent}.beat-dialog-delete:disabled{opacity:.45;cursor:default}.abe-preview{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-3)}.abe-preview-name{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-primary)}.abe-preview audio{max-width:360px}.module-effects{margin-top:8px;padding-top:8px;border-top:var(--border-width) solid var(--border-color)}.eff-head{display:flex;align-items:center;justify-content:space-between}.eff-toggle{font-size:var(--text-xs);color:var(--primary-600);background:transparent;border:none;cursor:pointer;padding:2px 4px}.eff-toggle:hover{text-decoration:underline}.eff-list{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:4px}.eff-chip{color:var(--text-primary)}.eff-chip-x{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;font-size:12px;line-height:1;color:var(--text-secondary);background:transparent;border:none;cursor:pointer}.eff-chip-x:hover{color:var(--danger-600, #dc2626)}.eff-form{margin-top:6px;display:flex;flex-direction:column;gap:6px}.eff-select,.eff-input{padding:4px 6px;font-size:var(--text-xs);border-radius:4px}.eff-input::placeholder{color:var(--text-secondary)}.eff-case{display:flex;align-items:center;gap:4px}.eff-case-val,.eff-case .eff-select{flex:1}.eff-arrow{color:var(--text-secondary);font-size:var(--text-xs)}.eff-add-case{align-self:flex-start;font-size:var(--text-xs);color:var(--primary-600);background:transparent;border:none;cursor:pointer;padding:0}.eff-add-case:hover{text-decoration:underline}.eff-default{display:flex;align-items:center;gap:6px;font-size:var(--text-xs);color:var(--text-secondary)}.eff-default .eff-select{flex:1}.eff-attach{align-self:flex-start;padding:4px 12px;font-size:var(--text-xs);font-weight:600;color:var(--neutral-50);background:var(--primary-600);border:none;border-radius:4px;cursor:pointer}.eff-attach:disabled{opacity:.5;cursor:not-allowed}.eff-attach:hover:not(:disabled){background:var(--primary-700);border-color:transparent}.presence-chip-dot{width:.5em;height:.5em;border-radius:2px;background:var(--accent, #6b8cff)}.triggers-rail{flex:none;max-height:45%;min-height:0;display:flex;flex-direction:column;padding:var(--space-4);container-type:inline-size}.triggers-rail-header{gap:8px;flex:none;cursor:pointer;-webkit-user-select:none;user-select:none}.triggers-rail-header.drag-over .triggers-rail-count{color:var(--accent-color);font-style:normal}.triggers-rail-header .title{margin:0}.triggers-rail-chevron{width:14px;height:14px;margin-left:auto;flex:none;opacity:.7;transition:transform .15s ease}.triggers-rail.collapsed .triggers-rail-chevron{transform:rotate(-90deg)}.triggers-rail-count{font-size:var(--text-sm, .85rem);font-style:italic;color:var(--text-muted);white-space:nowrap}.triggers-rail-body{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;padding-top:8px;padding-right:8px;display:flex;flex-direction:column;gap:var(--space-1);scrollbar-gutter:stable}.triggers-rail-body>*{flex:none}.triggers-empty{font-size:.8rem;color:var(--text-3);padding:8px 2px}.trigger-row{min-width:0;background:var(--surface-1);border:1px solid var(--neutral-200);border-left:3px solid var(--neutral-400);border-radius:6px;overflow:hidden}.trigger-row.kind-join{border-left-color:var(--group-color)}.trigger-row.kind-enter{border-left-color:var(--success-color)}.trigger-row.kind-exit{border-left-color:var(--cue-color)}.trigger-row.disabled .trigger-summary>*:not(.trigger-enabled){opacity:.4}.trigger-row.drop-target{outline:1.5px dashed var(--accent-color);outline-offset:-3px;background:color-mix(in oklab,var(--accent-color) 10%,transparent)}.trigger-summary{display:flex;align-items:center;gap:6px;padding:6px 10px;font-size:.85rem;min-width:0}.trigger-kind{width:auto;field-sizing:content;flex-shrink:0;font-weight:600;font-size:.75rem;padding:2px 4px 2px 8px;border:1px solid transparent;border-radius:4px;background:var(--neutral-200);color:inherit;white-space:nowrap;cursor:pointer}.trigger-kind.kind-enter{background:color-mix(in oklab,var(--success-color) 18%,transparent)}.trigger-kind.kind-exit{background:color-mix(in oklab,var(--cue-color) 18%,transparent)}.trigger-kind.kind-join{background:color-mix(in oklab,var(--group-color) 18%,transparent)}.trigger-inline-select{width:auto;field-sizing:content;flex:0 1 auto;min-width:64px;max-width:220px;padding:2px 4px;border:1px solid transparent;border-radius:4px;background:transparent;color:var(--text-2);font-size:.78rem;text-overflow:ellipsis;cursor:pointer}.trigger-summary:hover .trigger-inline-select,.trigger-summary:hover .trigger-kind{border-color:var(--neutral-300)}.trigger-inline-select:disabled,.trigger-kind:disabled{cursor:default}.trigger-arrow{opacity:.5}.trigger-cue-name{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left;justify-self:start;max-width:100%}.trigger-cue-name.missing{color:var(--danger-color)}.trigger-cue-card{flex:1 1 140px;display:inline-flex;align-items:baseline;gap:8px;min-width:100px;padding:2px 8px;background:var(--cue-light);border-left:3px solid var(--cue-color);border-radius:var(--radius-sm, 4px);overflow:hidden;cursor:pointer}.trigger-cue-card-name{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.trigger-cue-card:hover .trigger-cue-card-name{text-decoration:underline;text-underline-offset:2px}.trigger-cue-card.static{cursor:default}.trigger-cue-card.static:hover .trigger-cue-card-name{text-decoration:none}.trigger-cue-card-desc{flex:1;min-width:0;font-size:.78rem;color:var(--text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.trigger-cue-unbind{border:none;background:none;padding:0 2px;color:var(--text-3);visibility:hidden;cursor:pointer;line-height:1}.trigger-cue-card:hover .trigger-cue-unbind,.trigger-cue-name.missing .trigger-cue-unbind{visibility:visible}.trigger-cue-unbind:hover{color:var(--danger-color);background:none}.trigger-cue-slot{flex:1;display:inline-flex;align-items:center;padding:2px 10px;border:1.5px dashed var(--neutral-400);border-radius:var(--radius-sm, 4px);font-size:.78rem;color:var(--text-3)}.trigger-cue-slot.hot{border-color:var(--accent-color);color:var(--accent-color);font-weight:600}.trigger-fire-count{min-width:34px;font-size:.72rem;color:var(--cue-color);text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.trigger-fire-count:empty{min-width:0}@container (max-width: 620px){.trigger-cue-card-desc{display:none}}@container (max-width: 600px){.trigger-summary{flex-wrap:wrap;row-gap:4px}.trigger-arrow{display:none}.trigger-cue-card,.trigger-cue-slot{flex-basis:140px}}.trigger-enabled{display:inline-flex}.trigger-cue-name.missing{flex:1}.trigger-row-more{border:none;background:none;padding:0 4px;display:inline-flex;align-items:center;color:var(--text-2);cursor:pointer}.trigger-row-chevron{width:14px;height:14px;transition:transform .15s ease}.trigger-row-more:not(.open) .trigger-row-chevron{transform:rotate(-90deg)}.trigger-row-more:hover,.trigger-row-more.open{color:var(--cue-color);background:none}.trigger-more{position:relative;padding:24px 12px 8px;border-top:1px solid var(--neutral-200);background:var(--surface-2)}.trigger-more .trigger-fields{display:flex;flex-direction:column;gap:8px}.trigger-more .trigger-field>span:first-child{min-width:180px;white-space:nowrap}.trigger-cooldown-unit{font-size:.78rem;color:var(--text-3)}.trigger-more{--cond-label-col: 180px}.trigger-more .cond-editor{margin-top:0}.trigger-more .trigger-delete{position:absolute;top:4px;right:8px;border:none;background:none;color:var(--danger-color);padding:2px 6px;font-size:.75rem;font-weight:500;--button-hover-bg: var(--danger-light)}.trigger-field{display:flex;align-items:center;gap:8px;font-size:.82rem}.trigger-field>span:first-child{min-width:64px;color:var(--text-2)}.trigger-field select,.trigger-field input[type=number]{padding:3px 6px;border:1px solid var(--neutral-300);border-radius:4px;background:var(--surface-1);color:inherit}.trigger-more .trigger-field select{width:auto;field-sizing:content;max-width:100%}.trigger-cooldown{width:64px}.triggers-new{position:sticky;bottom:0;flex:none;margin-top:6px;padding:9px;border:1.5px dashed var(--neutral-400);border-radius:6px;background:var(--neutral-50);color:var(--text-2);font-size:.8rem;font-weight:500;--button-hover-bg: var(--neutral-100);--button-hover-border: var(--neutral-400)}.triggers-new.drag-over{border-color:var(--accent-color);color:var(--accent-color);background:color-mix(in oklab,var(--accent-color) 10%,var(--neutral-50))}.triggers-rail.drag-live{border-color:var(--accent-color)}.trigger-dialog{width:min(760px,92vw);max-width:none}.trigger-dialog h3{margin:0 0 var(--space-4);font-size:var(--text-lg);font-weight:var(--font-bold)}.trigger-dialog .trigger-summary{flex-wrap:wrap;row-gap:6px}.trigger-composer{border:1px solid var(--neutral-200);border-left:3px solid var(--accent-color);border-radius:6px;background:color-mix(in oklab,var(--accent-color) 8%,transparent);padding:2px 0 10px;display:flex;flex-direction:column;gap:4px}.trigger-composer .trigger-inline-select,.trigger-composer .trigger-kind{border-color:var(--neutral-300)}.trigger-composer.drop-target{outline:1.5px dashed var(--accent-color);outline-offset:-3px}.trigger-composer-actions{display:flex;align-items:center;gap:8px;padding:0 12px}.live-author{display:flex;width:100%;height:100%;overflow:hidden;position:relative}.live-author-left{flex:1;display:flex;flex-direction:column;gap:var(--panel-gap);overflow-y:auto}.live-author-left.drag-over{outline:2px dashed var(--primary-500);outline-offset:-2px;border-radius:var(--radius-lg)}.live-author-left>.section-container{margin-bottom:0}.runnable-drop{min-height:80px;display:flex;justify-content:center;align-items:center;transition:var(--transition-paint-base);width:100%;background-color:var(--neutral-100);border:2px dashed var(--neutral-300);border-radius:var(--radius-lg);margin-bottom:var(--space-3);color:var(--neutral-500);font-weight:var(--font-medium)}.runnable-drop:has(.template-assigned),.runnable-drop:has(.group-assigned),.runnable-drop:has(.users-assigned),.runnable-drop:has(.template.card){background-color:transparent!important;border:none!important;margin-bottom:0;min-height:auto;padding:0}.template-selector .runnable-drop,.group-selector .runnable-drop{background:transparent!important;border:none!important;padding:0;box-shadow:none!important}.template-selector .runnable-drop:empty,.group-selector .runnable-drop:empty{background-color:var(--neutral-100)!important;border:2px dashed var(--neutral-300)!important;padding:var(--space-4);min-height:80px}.runnable-drop .template.card{background:var(--template-light)!important;border:1px solid color-mix(in srgb,var(--template-color) 40%,transparent)!important;border-radius:var(--radius-lg);box-shadow:none}.runnable-drop .template-assigned,.runnable-drop .group-assigned{background:transparent!important;border:none!important;box-shadow:none!important;padding:0}.runnable-drop.drag-over{background-color:var(--primary-100);border-color:var(--primary-500);border-style:solid;color:var(--primary-700);transform:scale(1.02)}.runnable{padding:var(--space-4);transition:var(--transition-paint-base);flex-direction:column}.runnable-footer{display:flex;flex-direction:column;gap:var(--space-2);justify-content:center;align-items:center;margin-top:var(--section-margin);width:100%}.recipient-count{font-size:var(--text-sm);color:var(--text-secondary)}.send-preview{margin-top:var(--space-2);padding:var(--space-2);background:var(--neutral-100);border:var(--border-width) solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--text-sm)}.send-preview-label{font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--text-muted);margin-bottom:var(--space-1)}.send-preview-field{color:var(--text-primary);white-space:pre-wrap;word-break:break-word}.send-preview-field+.send-preview-field{margin-top:var(--space-1)}.send-preview-field-label{font-weight:var(--font-medium);color:var(--text-secondary)}.send-preview-empty{font-size:var(--text-xs);color:var(--text-muted);font-style:italic}.recipient-empty{display:flex;flex-direction:column;gap:var(--space-2);align-items:center}.recipient-empty-hint{color:var(--text-muted)}.role-quick-targets{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--space-2)}.role-quick-label{font-size:var(--text-xs);color:var(--text-muted)}.role-quick-button{padding:var(--space-1) var(--space-2);font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--group-color);background:var(--group-light);border:1px solid var(--group-200);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition-paint-base)}.role-quick-button:hover{background:var(--group-color);color:var(--neutral-50)}.runnable-button{width:100%;padding:var(--space-3);background-color:var(--action-button-color, var(--cue-color));color:var(--neutral-50);border:none;border-radius:var(--radius-md);font-weight:var(--font-medium);cursor:pointer;transition:var(--transition-paint-base)}.runnable-button:hover{background-color:var(--action-button-hover, var(--cue-hover));transform:translateY(-1px);box-shadow:var(--shadow-sm)}.runnable-button:disabled{background-color:var(--neutral-300);color:var(--neutral-500);cursor:not-allowed;transform:none}.runnable-button.secondary{background-color:var(--neutral-200);color:var(--text-primary);border:1px solid var(--border-color)}.runnable-button.secondary:hover:not(:disabled){background-color:var(--neutral-100);border-color:var(--primary-500)}.runnable.drag-over{border-color:var(--primary-500);background:var(--primary-50);box-shadow:0 0 0 3px var(--primary-200)}@keyframes expandModule{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.runnable.drag-over:after{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;background:transparent;border:2px solid var(--primary-500);border-radius:var(--radius-lg);pointer-events:none}.runnable-drop[data-drag-type=template-target].drag-over:before{content:"Drop Template Here";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:var(--primary-700);font-size:var(--text-sm);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:.05em;z-index:1;pointer-events:none;background:var(--neutral-50);padding:var(--space-2) var(--space-3);border-radius:var(--radius-full)}.module-settings{display:flex;flex-direction:row;flex-wrap:wrap;column-gap:36px;row-gap:var(--space-2);align-items:center;padding:var(--space-1);background:var(--neutral-50);border-radius:var(--radius-md);margin-top:var(--space-1)}.module-settings label{display:flex;align-items:center;justify-content:flex-start;gap:var(--space-2);flex:0 0 auto;min-width:max-content;white-space:nowrap;font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--neutral-700)}.delay-range{display:flex;align-items:center;gap:var(--space-1)}.delay-range .small-input{width:50px;padding-left:var(--space-2);padding-right:var(--space-2)}.delay-separator{color:var(--neutral-500);font-weight:var(--font-medium)}.no-spinner::-webkit-outer-spin-button,.no-spinner::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.no-spinner[type=number]{-moz-appearance:textfield}.runnable.running{animation:pulseRunning 1.5s infinite;position:relative;overflow:hidden}.runnable.running:before{content:"";position:absolute;top:-2px;left:-2px;right:-2px;bottom:-2px;background:linear-gradient(45deg,var(--primary-500),var(--template-color),var(--cue-color),var(--primary-500));border-radius:var(--radius-lg);opacity:0;animation:runningGlow 1.5s infinite;z-index:-1}@keyframes pulseRunning{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}@keyframes runningGlow{0%,to{opacity:0}50%{opacity:.3}}.broadcast{height:100%;display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);background-color:var(--neutral-100)}.input-group{display:flex;flex-direction:column;gap:var(--space-2)}.broadcast-container{--split: 380px}.broadcast-main{--bm-split: 36%;display:grid;grid-template-rows:var(--bm-split) minmax(0,1fr);gap:var(--panel-gap);overflow:hidden;min-height:0;position:relative}.broadcast-main-top{--bc-split: 50%;display:grid;grid-template-columns:var(--bc-split) minmax(0,1fr);gap:var(--panel-gap);overflow:hidden;min-height:0;position:relative}.broadcast-templates{display:flex;flex-direction:column;min-height:0}.broadcast-templates .section-container{display:flex;flex-direction:column;height:100%;min-height:0;margin-bottom:0}.broadcast-templates .template-list-wrapper{flex:1;overflow-y:auto;min-height:0;padding-bottom:var(--space-1)}.broadcast-detail{display:flex;flex-direction:column;min-height:0}.broadcast-detail .section-container{display:flex;flex-direction:column;height:100%;min-height:0;margin-bottom:0}.broadcast-groups{display:flex;flex-direction:column;min-height:0}.broadcast-groups .section-container{display:flex;flex-direction:column;height:100%;min-height:0;margin-bottom:0}.broadcast-groups .groups-container{flex:1;background:transparent;border:none;border-radius:0;box-shadow:none;padding:0;overflow-y:auto;margin-bottom:0;min-height:0}.broadcast-groups .group{padding:var(--space-3)}.broadcast-groups .group-header{padding:var(--space-2) var(--space-3)}.broadcast-groups .user{padding:var(--space-2);font-size:var(--text-sm)}.templates-list{display:flex;flex-direction:column;gap:var(--space-1)}.template-list-item .template{margin:0}.detail-content{flex:1;overflow-y:auto;min-height:0;padding-bottom:var(--space-2)}.detail-content:has(>.user-view){overflow-y:hidden}.detail-content>.user-view,.detail-content>.group-detail{display:flex;flex-direction:column;height:100%;min-height:0}.detail-content>.group-detail{overflow-y:auto}.detail-content>.user-view>.user-view-tab-content.active{flex:1 1 auto;min-height:0;max-height:none;overflow-y:auto}.detail-content>.user-view>.user-view-tab-content.active[data-tab=transcript]{display:flex;flex-direction:column;overflow:visible}.detail-content .user-view-tab-content[data-tab=transcript] .transcript-wrap{flex:1;min-height:0}.detail-content .user-view-tab-content[data-tab=transcript] .transcript{flex:1 1 0;min-height:0;max-height:none}.detail-content>.user-view>.user-view-tab-content.active[data-tab=comms]{display:flex;flex-direction:column;overflow:hidden}.detail-content .user-view-tab-content[data-tab=comms] .comms-stream{flex:1 1 0;min-height:0;max-height:none}.detail-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--neutral-500);font-style:italic;text-align:center;padding:var(--space-8)}.detail-empty .hint{font-size:var(--text-sm);color:var(--neutral-400);margin-top:var(--space-2)}.user-preview-name{font-size:var(--text-base);font-weight:var(--font-semibold);font-style:normal;color:var(--text-primary);margin-bottom:var(--space-2)}@media (max-width: 1200px){.broadcast-container{grid-template-columns:1fr;gap:var(--panel-gap)}.broadcast-main{grid-template-rows:auto auto 1fr;gap:var(--panel-gap)}.broadcast-main-top{display:block}.broadcast-templates{margin-bottom:var(--section-margin)}.broadcast-container>.col-resizer,.broadcast-main>.col-resizer,.broadcast-main-top>.col-resizer{display:none}}@media (max-width: 768px){.broadcast-container{gap:var(--panel-gap)}.broadcast-detail:not(.room-mix-open) .detail-content{display:none}}.template-assigned,.group-assigned{position:relative;width:100%;display:flex;flex-direction:column;background:transparent;border:none;padding:0;margin:0;max-height:35vh;overflow-y:auto}.group-assigned.draggable-out{cursor:grab}.group-assigned.draggable-out:active{cursor:grabbing}.group-assigned>.unassign-button{opacity:0;pointer-events:none;transition:opacity var(--transition-base)}.group-assigned:hover>.unassign-button,.group-assigned:focus-within>.unassign-button{opacity:1;pointer-events:auto}.unassign-button{position:absolute;top:var(--space-2);right:var(--space-2);width:24px;height:24px;padding:0;display:flex;align-items:center;justify-content:center;background-color:var(--neutral-800);color:var(--neutral-50);border:none;border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:var(--font-bold);cursor:pointer;transition:var(--transition-paint-fast);z-index:10}.unassign-button:hover{background-color:var(--neutral-900);transform:scale(1.1)}[data-theme=dark] .unassign-button{background-color:var(--neutral-400)!important;color:var(--neutral-50)!important}[data-theme=dark] .unassign-button:hover{background-color:var(--neutral-50)!important;color:var(--neutral-400)!important}.template-selector .template-assigned .template{padding-right:var(--space-8);background:var(--template-light)!important;border:2px solid var(--template-color)!important}.group-assigned{flex:1;display:flex;flex-direction:column;min-height:0}.group-assigned .group{width:100%!important;max-width:100%!important;min-width:100%!important;padding-right:var(--space-8);box-sizing:border-box;flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column}.group-assigned .group .group-header,.group-assigned .group .group-members,.group-assigned .group .group-footer{width:100%;max-width:100%}.group-assigned .group{position:relative}.group-assigned .group .group-header{justify-content:center}.group-assigned .group .group-name-mini{justify-content:center;text-align:center;width:100%}.group-assigned .group-count-mini{position:absolute;top:var(--space-2);left:var(--space-3);z-index:2}.template-selector .template.card{background:var(--template-light);border-color:var(--template-color);max-width:100%;width:100%;position:relative}.template-selector .template.card .template-header .template-name input,.template-selector .template.card .template-description input,.template-selector .template.card .template-text textarea{background:var(--neutral-50);border:1px solid var(--template-color)}.template-selector .template.card .create-button{background-color:var(--template-color);border-color:var(--template-color)}.template-selector .template.card .create-button:hover{background-color:var(--template-hover);border-color:var(--template-hover)}.template-selector .template.card .clear-form-button,.clear-form-button{position:absolute;top:var(--space-2);right:var(--space-2);padding:var(--space-1) var(--space-3);display:flex;align-items:center;justify-content:center;background-color:var(--template-color);color:var(--neutral-50);border:1px solid var(--template-color);border-radius:var(--radius-md);font-size:var(--text-xs);font-weight:var(--font-medium);cursor:pointer;transition:var(--transition-paint-fast);z-index:20;opacity:1!important;visibility:visible!important}.template-selector .template.card .clear-form-button:hover,.clear-form-button:hover{background-color:var(--template-hover);color:var(--neutral-50);border-color:var(--template-hover)}.users-assigned{width:100%;display:flex;flex-direction:column;gap:var(--space-2);position:relative;flex:1;min-height:0;box-sizing:border-box;padding:var(--space-3);padding-right:var(--space-8);background-color:var(--user-surface);color:var(--on-accent);border-radius:var(--radius-lg);overflow:hidden}.users-assigned-header{display:flex;justify-content:center;align-items:center;margin-bottom:var(--space-4)}.users-assigned-title{font-size:var(--text-sm);font-weight:var(--font-bold);text-transform:uppercase;letter-spacing:.025em;text-align:center;color:inherit}.users-assigned-count{position:absolute;top:var(--space-2);left:var(--space-3);z-index:2;font-size:var(--text-xs);font-weight:var(--font-normal);color:inherit;opacity:.85}.users-assigned-grid{display:flex;flex-wrap:wrap;gap:var(--space-2);padding:var(--space-1);align-items:flex-start;background-color:transparent;flex:1;min-height:0;overflow-y:auto}.users-assigned-grid .user-view.mini{flex:0 0 auto;align-self:flex-start}.user-assigned-item{display:inline-flex;position:relative}.user-assigned-item .user{cursor:pointer}.runnable-drop[data-drag-type=group-target].drag-over:before{content:"Drop Group or Users Here";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:var(--primary-700);font-size:var(--text-sm);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:.05em;z-index:1;pointer-events:none;background:var(--neutral-50);padding:var(--space-2) var(--space-3);border-radius:var(--radius-full)}@media (max-width: 1400px){.live-author-right-split{gap:var(--space-3)}.live-author-right-split .template-detail-panel,.live-author-right-split .user-preview-panel{min-height:200px}}@media (max-width: 1200px){.live-author.three-column .live-author-right{display:none}.live-author.three-column{grid-template-columns:1fr 1fr}}.user-assigned-item.dragging{opacity:.5}.compose-variable-inspector{margin:var(--space-2) 0;padding:var(--space-3);border:1px solid var(--neutral-200);border-radius:var(--radius-md);background-color:var(--neutral-50)}.compose-variable-inspector .meta-label{margin-bottom:var(--space-2)}.compose-defaults-row{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4)}.compose-defaults-row .submode-switch{align-self:center;margin-bottom:0}.compose-channel{display:flex;align-items:center;gap:var(--space-2);margin-left:auto}.compose-channel-icon{width:15px;height:15px;color:var(--neutral-600);flex-shrink:0}.broadcast-controls .runnable.card{background:transparent;border:none;border-radius:0;box-shadow:none;padding:0}.compose-kind-row{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;margin-bottom:var(--space-3)}.compose-kind-row .send-kind-selector{margin-bottom:0;flex:1 1 auto}.compose-kind-row .compose-channel{margin-left:auto}:is(.runnable.card,.stage-composer,.inline-beat-editor,.template-create-panel) .template.card.compose-form{background:var(--template-light)!important;border:none!important;border-radius:var(--radius-lg);padding:0;overflow:hidden}.template-create-panel>.section-container>.template.card.compose-form{overflow:hidden auto}:is(.runnable.card,.stage-composer,.inline-beat-editor,.template-create-panel) .template.card.compose-form .template-content{padding:0;gap:0;margin-bottom:0}:is(.runnable.card,.stage-composer,.inline-beat-editor,.template-create-panel) .template.card.compose-form .template-character-field{background:var(--template-color);margin:0;min-height:40px;padding:var(--space-2) var(--space-4);padding-right:calc(var(--space-3) + 6.5rem)}:is(.runnable.card,.stage-composer,.inline-beat-editor,.template-create-panel) .template.card.compose-form .character-selector{flex-direction:row;align-items:center;gap:var(--space-3);min-width:0}:is(.runnable.card,.stage-composer,.inline-beat-editor,.template-create-panel) .template.card.compose-form .character-selector .selector-label{color:var(--on-accent-dim);font-size:var(--text-xs);font-weight:var(--font-bold);letter-spacing:.1em;text-transform:uppercase}:is(.runnable.card,.stage-composer,.inline-beat-editor,.template-create-panel) .template.card.compose-form .character-selector select{flex:1;min-width:0;width:auto;background:transparent;border:none;border-radius:var(--radius-md);color:var(--on-accent);font-size:var(--text-base);font-weight:var(--font-semibold);padding:var(--space-1) var(--space-2);cursor:pointer}:is(.runnable.card,.stage-composer,.inline-beat-editor,.template-create-panel) .template.card.compose-form .character-selector select:hover{background:color-mix(in oklab,var(--on-accent) 15%,transparent)}:is(.runnable.card,.stage-composer,.inline-beat-editor,.template-create-panel) .template.card.compose-form .character-selector select:focus{outline:2px solid color-mix(in oklab,var(--on-accent) 55%,transparent);outline-offset:1px}:is(.runnable.card,.stage-composer,.inline-beat-editor,.template-create-panel) .template.card.compose-form .character-selector select option{background:var(--neutral-50);color:var(--text-primary)}:is(.runnable.card,.stage-composer,.inline-beat-editor,.template-create-panel) .template.card.compose-form .clear-form-button{top:7px;right:var(--space-3);background:transparent;border-color:color-mix(in srgb,var(--on-accent) 40%,transparent);color:var(--on-accent)}:is(.runnable.card,.stage-composer,.inline-beat-editor,.template-create-panel) .template.card.compose-form .clear-form-button:hover{background:color-mix(in srgb,var(--on-accent) 18%,transparent);border-color:color-mix(in srgb,var(--on-accent) 65%,transparent);color:var(--on-accent)}:is(.runnable.card,.stage-composer,.inline-beat-editor) .template.card.compose-form .save-template-icon{top:7px;right:calc(var(--space-3) + 3.6rem);background:transparent;border-color:transparent;color:color-mix(in srgb,var(--on-accent) 85%,transparent)}:is(.runnable.card,.stage-composer,.inline-beat-editor) .template.card.compose-form .save-template-icon:hover:not(:disabled){background:color-mix(in srgb,var(--on-accent) 18%,transparent);border-color:transparent;color:var(--on-accent)}:is(.runnable.card,.stage-composer,.inline-beat-editor) .template.card.compose-form .save-template-icon:disabled{color:color-mix(in srgb,var(--on-accent) 40%,transparent);opacity:1}:is(.runnable.card,.stage-composer,.inline-beat-editor,.template-create-panel) .template.card.compose-form .template-text{margin:0}:is(.runnable.card,.stage-composer,.inline-beat-editor,.template-create-panel) .template.card.compose-form .template-requires{margin:0;gap:0}:is(.runnable.card,.stage-composer,.inline-beat-editor,.template-create-panel) .template.card.compose-form .template-text .text-content{width:100%;box-sizing:border-box;background:transparent;border:none;border-radius:0;border-bottom:1px solid color-mix(in srgb,var(--template-color) 25%,transparent);padding:var(--space-4);max-height:none;display:block;resize:vertical}:is(.runnable.card,.stage-composer,.inline-beat-editor,.template-create-panel) .template.card.compose-form .template-text:last-of-type>.text-content:last-child{border-bottom:none}:is(.runnable.card,.stage-composer,.inline-beat-editor,.template-create-panel) .template.card.compose-form .template-text .text-content::-webkit-resizer{--grip-ink: color-mix(in srgb, var(--template-color) 55%, transparent);background:linear-gradient(135deg,transparent calc(100% - 10px),var(--grip-ink) calc(100% - 10px) calc(100% - 8.5px),transparent calc(100% - 8.5px) calc(100% - 5.5px),var(--grip-ink) calc(100% - 5.5px) calc(100% - 4px),transparent calc(100% - 4px))}.template-create-panel>.section-container>.template.card.compose-form .template-content{min-height:0}.template-create-panel>.section-container>.template.card.compose-form .template-text:has(>textarea.text-content){display:flex;flex-direction:column;min-height:0}.template-create-panel>.section-container>.template.card.compose-form .template-text>textarea.text-content{flex:0 1 auto;min-height:100px}:is(.runnable.card,.stage-composer,.inline-beat-editor,.template-create-panel) .template.card.compose-form .template-text .text-content::placeholder{color:var(--neutral-600);opacity:1}:is(.runnable.card,.stage-composer,.inline-beat-editor,.template-create-panel) .template.card.compose-form .template-text .text-content:focus{background:var(--neutral-50);box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--template-color) 40%,transparent);outline:none}:is(.runnable.card,.stage-composer,.inline-beat-editor,.template-create-panel) .template.card.compose-form .template-text .text-content.required{box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--danger-color) 55%,transparent)}:is(.runnable.card,.stage-composer,.inline-beat-editor,.template-create-panel) .template.card.compose-form .compose-input-hint{margin:0;padding:var(--space-3) var(--space-4) 0}:is(.runnable.card,.stage-composer,.inline-beat-editor,.template-create-panel) .template.card.compose-form .template-requires.ask-option-row{padding:var(--space-3) var(--space-4);gap:var(--space-4)}.template.card.compose-form .bool-toggle.on .bool-toggle-track{background-color:var(--template-color);border-color:var(--template-color)}.runnable.card .module-settings{background:transparent;padding:var(--space-3) var(--space-1) 0;margin-top:var(--space-1)}.runnable.card .module-settings .small-input{background:transparent;border:none;border-bottom:1.5px solid var(--neutral-300);border-radius:0;padding:2px var(--space-2);text-align:center;font-variant-numeric:tabular-nums}.runnable.card .module-settings .small-input:focus{border-bottom-color:var(--template-color);box-shadow:none}.runnable.card .module-settings select.small-input{text-align:left;cursor:pointer}.template-create-panel .template.card.compose-form .template-character-field{flex-wrap:wrap;column-gap:var(--space-4);padding-right:calc(var(--space-3) + 3.6rem)}.template-create-panel .template.card.compose-form .template-name-input{flex:1 1 12rem;min-width:0;background:transparent;border:none;border-radius:var(--radius-md);color:var(--on-accent);font-size:var(--text-base);font-weight:var(--font-semibold);padding:var(--space-1) var(--space-2)}.template-create-panel .template.card.compose-form .template-name-input::placeholder{color:var(--on-accent-dim);font-weight:var(--font-medium)}.template-create-panel .template.card.compose-form .template-name-input:focus{outline:2px solid color-mix(in oklab,var(--on-accent) 55%,transparent);outline-offset:1px}.template-create-panel .template.card.compose-form .template-name-input.required{box-shadow:inset 0 -2px 0 var(--danger-color)}.template-create-panel .template.card.compose-form .character-selector{width:auto;flex:1 1 11rem}.template-create-footer .compose-send-button{--action-button-color: var(--template-color);--action-button-hover: var(--template-hover)}.template-create-panel .template.card.compose-form .template-description .text-content{font-family:inherit;font-size:var(--text-sm);color:var(--text-secondary);min-height:0;padding:var(--space-3) var(--space-4)}.broadcast-no-characters{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-4);text-align:center;color:var(--text-secondary)}.broadcast-no-characters-actions{display:flex;flex-direction:column;align-items:center;gap:var(--space-2)}.audio-compose-inline{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-2) 0}.audio-compose-inline.library-external .audio-asset-drop{display:flex;align-items:center;justify-content:center;gap:var(--space-2);width:100%;min-height:80px;padding:var(--space-4);border:2px dashed var(--neutral-300);border-radius:var(--radius-lg);background:var(--neutral-100);color:var(--neutral-500);font-weight:var(--font-medium);text-align:center;transition:var(--transition-paint-base)}.audio-compose-inline.library-external .audio-asset-drop.filled{justify-content:space-between;border-style:solid;border-color:var(--template-color);color:var(--text-primary)}.audio-compose-inline.library-external .audio-asset-drop.drag-over{border-color:var(--primary-500);background:var(--primary-50)}.audio-compose-inline.library-external .audio-asset-drop .audio-selected{flex:0 1 auto}.audio-compose-inline.library-external .audio-asset-drop.filled .audio-selected{flex:1;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.audio-compose-inline .audio-compose-row{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.audio-compose-inline .audio-field-label{min-width:64px;font-size:var(--text-sm);color:var(--neutral-600)}.audio-compose-actions{display:flex;gap:var(--space-2);align-items:center}.audio-compose-preview{width:100%;margin-top:var(--space-1)}.compose-action-card{position:sticky;bottom:0;margin-top:auto;margin-bottom:0;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;min-height:150px;gap:var(--space-3);padding:var(--space-4);z-index:5}.compose-action-card .recipient-count{text-align:center}.compose-action-card .speak-identity-row{border-top:none;margin-top:0;padding-top:0}.compose-action-status{font-size:var(--text-xs);color:var(--text-muted);text-align:center}.compose-action-status.error{color:var(--danger-color)}.compose-ptt-body{font-size:var(--text-sm);color:var(--text-secondary);padding:var(--space-2) 0}.detail-header-actions{display:flex;align-items:center;gap:var(--space-2)}.copy-to-new-button{--button-hover-bg: var(--template-light);display:block;width:100%;margin-top:var(--space-4);padding:var(--space-4);font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--template-color);background:transparent;border:1px dashed var(--template-color);border-radius:var(--radius-lg);cursor:pointer}.room-mix-count{margin-left:var(--space-2);padding:0 var(--space-2);border-radius:var(--radius-full);background:color-mix(in srgb,currentColor 14%,transparent);font-variant-numeric:tabular-nums;font-size:var(--text-xs)}.user-nowplaying{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-2)}.user-np-tracks{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-1)}.user-np-name{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-primary);padding:var(--space-2) var(--space-3);background:var(--neutral-100);border-radius:var(--radius-sm)}.user-np-controls{display:flex;gap:var(--space-2)}.user-np-button{flex:1;padding:var(--space-2) var(--space-3);font-size:var(--text-sm);font-weight:var(--font-medium);background:var(--neutral-200);border:1px solid var(--neutral-300);border-radius:var(--radius-md);color:var(--neutral-800);cursor:pointer;transition:background var(--transition-fast)}.user-np-button:hover{background:var(--neutral-300)}.user-np-button.stop{background:var(--danger-color);border-color:var(--danger-color);color:var(--neutral-50)}[data-theme=dark] :is(.runnable.card,.stage-composer,.inline-beat-editor,.template-create-panel) .template.card.compose-form .template-character-field{background:var(--neutral-100);box-shadow:inset 3px 0 0 var(--voice-color);--on-accent: var(--text-primary);--on-accent-dim: var(--text-muted)}[data-theme=dark] :is(.runnable.card,.stage-composer,.inline-beat-editor,.template-create-panel) .template.card.compose-form :is(.clear-form-button,.save-template-icon){--on-accent: var(--text-primary)}.template-selector .template.card{--ring-color: var(--template-hover)}.groups-container{flex:1;display:flex;flex-direction:column;padding:var(--space-4);min-width:0;min-height:0;overflow:hidden}.groups-list-container{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;gap:var(--panel-gap)}.groups-list-container{padding-top:2px}.groups-container .title-container{flex-shrink:0}.filter-input-container{position:relative;display:flex;align-items:center;margin-right:var(--space-2)}.filter-input-compact{padding:var(--space-2) var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:var(--text-base);background-color:var(--input-bg);color:var(--text-primary);transition:var(--transition-paint-fast),width var(--transition-fast);width:180px;flex-shrink:0;padding-right:var(--space-8)}.filter-input-compact:focus{width:200px}.filter-input-compact::placeholder{color:var(--text-secondary);font-size:var(--text-base)}.filter-input-compact:hover{border-color:var(--neutral-500)}.filter-input-compact.has-content{background-color:var(--primary-50);border-color:var(--primary-400);border-width:2px;color:var(--neutral-900)}[data-theme=dark] .filter-input-compact.has-content{background-color:var(--primary-900);border-color:var(--primary-500);color:var(--neutral-900)}.filter-clear-button{position:absolute;right:6px;top:50%;margin-top:-9px;width:18px;height:18px;border-radius:50%;border:none;background-color:var(--neutral-400);color:var(--neutral-50);font-size:12px;font-weight:700;cursor:pointer;display:block;text-align:center;line-height:18px;opacity:1;transition:background-color var(--transition-fast);z-index:1;padding:0;box-sizing:border-box}.filter-clear-button:hover{background-color:var(--danger-color)}.filter-clear-button:active{background-color:var(--danger-hover)}.groups-crew{display:grid;gap:var(--panel-gap);align-items:stretch}.groups-show{display:flex;flex-direction:column;gap:var(--space-3)}.groups-parked{display:flex;flex-wrap:wrap;gap:var(--space-2)}.groups-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--panel-gap);align-items:start}.group-users{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:0;padding:var(--space-1);margin:-var(--space-1)}.group-empty{padding:var(--space-6);text-align:center;color:var(--neutral-500);font-style:italic;font-size:var(--text-sm)}.groups-container.section-container{overflow:hidden}.groups-container.no-header{background:transparent;border:none;padding:0;box-shadow:none;margin-bottom:0}.groups-container.no-header .groups-list-container{margin-top:0}.groups-container .title-action,.broadcast-groups .title-action{background-color:var(--audience-color);color:#fff;border-color:transparent}.groups-container .title-action:hover:not(:disabled),.broadcast-groups .title-action:hover:not(:disabled){background-color:var(--audience-color);opacity:.8}.groups-container .group{padding:var(--space-3)}.groups-container .group-header{padding:var(--space-2) var(--space-3)}.groups-container .user{padding:var(--space-2);font-size:var(--text-sm)}.title-actions{display:flex;gap:var(--space-2);align-items:center}.title-action.secondary.clear-selection{padding:var(--space-1) var(--space-3)}.title-action.secondary{background-color:var(--neutral-200);color:var(--neutral-700);border:1px solid var(--neutral-300);font-size:var(--text-sm);min-width:28px;height:28px;padding:var(--space-1)}.title-action.secondary:hover:not(:disabled){background-color:var(--neutral-300);border-color:var(--neutral-400);opacity:1}[data-theme=dark] .title-action.secondary{background-color:var(--neutral-600);color:var(--neutral-200);border-color:var(--neutral-500)}[data-theme=dark] .title-action.secondary:hover:not(:disabled){background-color:var(--neutral-500);border-color:var(--neutral-400)}.groups-list-container.compact{overflow-y:auto;overflow-x:hidden;height:100%}.group{background-color:var(--group-light);border:1px solid var(--group-200);border-radius:var(--radius-lg);padding:var(--space-4);transition:var(--transition-paint-base);position:relative;display:flex;flex-direction:column;min-width:0;box-sizing:border-box}.group:not(.group-chip):not(.mini){container-type:inline-size}.group[data-role]{background-color:var(--role-fill);border:none;color:var(--on-accent)}.group[data-role] .group-users{--chip-wash: 26%}.group[data-role] :is(.group-title,.group-name,.group-count-inline,.group-description-inline,.group-chip-count){color:inherit}[data-theme=dark] .group[data-role]{color:var(--text-primary)}[data-theme=dark] .group[data-role] :is(.group-name,.group-title){color:var(--role-hue)}.group-header-left{flex:1;min-width:0;padding-right:24px}.group-title-row{display:flex;align-items:baseline;gap:var(--space-2);min-width:0}.group-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--neutral-900);flex:0 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.group-count-inline{font-size:var(--text-xs);font-weight:var(--font-medium);white-space:nowrap}.group-count-inline{margin-left:auto;padding-left:var(--space-2);color:var(--group-color);font-weight:var(--font-semibold)}button.group-count-button{display:inline;background:none;border:none;padding:0 0 0 var(--space-2);font-size:inherit;line-height:inherit;cursor:pointer}button.group-count-button:hover{background:none;border:none;text-decoration:underline}@container (max-width: 340px){.group-count-inline .count-word{display:none}}.group-description-inline{font-size:var(--text-sm);color:var(--neutral-700);margin-top:var(--space-1)}.group-role-badge{font-size:var(--text-xs);font-weight:var(--font-normal);color:inherit;opacity:.65;margin-left:var(--space-2);vertical-align:middle;white-space:nowrap}.group.collapsed .group-header{margin-bottom:0}.group.group-chip{display:inline-flex;flex-direction:row;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2) var(--space-1) var(--space-3);border-radius:var(--radius-full);max-width:100%}.group.group-chip.empty{border-style:dashed;background-color:transparent}.group-chip-name{font-size:var(--text-sm);font-weight:var(--font-semibold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.group-chip-count{font-size:var(--text-xs);color:var(--group-color);font-weight:var(--font-medium);white-space:nowrap}.group.group-chip.empty .group-chip-name{opacity:.75}.group.group-chip.empty .group-chip-count{color:var(--text-muted)}.group button:is(.collapse-button,.group-edit-button){padding:0;margin:0;display:inline-flex;align-items:center;justify-content:center;background:none;border:none;line-height:1;font-size:var(--text-sm);cursor:pointer;color:inherit;opacity:.6;flex-shrink:0;transition:opacity var(--transition-base)}.group button:is(.collapse-button,.group-edit-button):hover{opacity:1;background:none;border:none}.group button.group-edit-button svg{width:12px;height:12px}.group-chevron{width:14px;height:14px;transition:transform .15s ease}.group.collapsed .group-chevron,.group.group-chip .group-chevron{transform:rotate(-90deg)}.group-header button.collapse-button{position:absolute;top:var(--space-1);right:var(--space-1);width:28px;height:28px}.group.collapsed .group-header button.collapse-button{top:50%;transform:translateY(-50%)}.group-header button.group-edit-button{width:22px;height:22px;align-self:center}.group-header button.group-edit-button:hover{transform:scale(1.25)}.group.group-chip button:is(.collapse-button,.group-edit-button){width:22px;height:22px}.group-users .user-view.mini{min-width:0;max-width:120px;gap:2px;padding:2px 10px 2px 4px}.group-users .user-view.mini .audio-status-slot,.group-users .user-view.mini .audio-status{width:12px;min-width:12px;height:12px}.group-users .user-view.mini .audio-status-slot:before{content:"";width:6px;height:6px;border-radius:var(--radius-full);background:currentColor;opacity:.16}.group-users .user-view.mini:not(.connected) .audio-status-slot:before{opacity:.08}.group-users .user-view.mini.selected.connected .audio-status-slot:before{opacity:.3}.group-users .user-view.mini .audio-status-slot:has(.playing):before,.group-users .user-view.mini:has(.speak-status.speaking) .audio-status-slot:before{display:none}.group-users .user-view.mini .speak-status-slot{position:absolute;left:6px;top:50%;transform:translateY(-50%);width:auto;min-width:0}.group-users .user-view.mini .audio-status-slot:has(.playing)~.mini-identifier .speak-status-slot{display:none}.group-ghost{color:inherit;padding:var(--space-1) var(--space-3);background:color-mix(in srgb,currentColor 10%,transparent);border:1px solid color-mix(in srgb,currentColor 40%,transparent);border-radius:var(--radius-md);font-size:var(--text-xs);font-weight:var(--font-medium);cursor:pointer;--button-hover-bg: color-mix(in srgb, currentColor 20%, transparent);--button-hover-border: currentColor}.group-more{border-style:dashed}.group[data-drag-type=member-target].drag-over{border-color:var(--user-color);background-color:var(--user-light);box-shadow:0 0 0 3px var(--user-200)}.group[data-drag-type=group-target].drag-over{border-color:var(--group-color);background-color:var(--group-light);box-shadow:0 0 0 3px var(--group-200)}.static-group{width:100%;padding:var(--space-3)}.static-group:not(.mini){min-height:100px}.group.static-group{cursor:default}.group:focus,.group:focus-visible{outline:none}.group.group-filtered{opacity:.5!important;transition:opacity var(--transition-base)}.group.mini{display:flex!important;flex-direction:column!important;max-height:none;padding:var(--space-3)}.group-name{font-weight:var(--font-bold);font-size:var(--text-base);text-transform:uppercase;letter-spacing:.025em;color:var(--neutral-900)}.group-name-mini{font-size:var(--text-sm);display:flex;align-items:center;gap:var(--space-2)}.group-count-mini{font-size:var(--text-xs);color:inherit;opacity:.85;text-transform:none;font-weight:var(--font-normal);letter-spacing:0}.user-view{background:var(--neutral-50);color:var(--text-primary);border-radius:var(--radius-lg);padding:var(--space-4);border:1px solid var(--border-color);transition:var(--transition-paint-base)}.user-view:not(.mini){padding:var(--space-5);position:relative}.user-view:not(.connected):not(.mini):not(.selector){background:var(--app-background)}.user-view:not(.connected):not(.mini):not(.selector) .field.identifier{color:var(--text-muted);font-weight:var(--font-medium)}.user-view:not(.connected) .user-view-tab-content{opacity:.6}.user-view.mini{display:inline-flex;flex-direction:row;align-items:center;justify-content:center;gap:var(--space-1);min-width:100px;max-width:140px;width:auto;height:auto;padding:var(--space-2) var(--space-3);position:relative;cursor:pointer;font-size:var(--text-xs);white-space:nowrap;flex-shrink:0;background-color:transparent;border:1px solid color-mix(in srgb,currentColor 45%,transparent);border-radius:var(--radius-md);text-align:center;overflow:hidden}.user-view.mini .mini-identifier{font-size:var(--text-xs);font-weight:var(--font-medium);flex:1 1 auto;min-width:0;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-header{display:flex;align-items:center;flex-wrap:nowrap;gap:var(--space-2);margin-bottom:var(--space-3)}.user-view:not(.mini):not(.selector) .user-header{margin:calc(-1 * var(--space-5)) calc(-1 * var(--space-5)) var(--space-3);padding:var(--space-3) var(--space-5);border-radius:calc(var(--radius-lg) - 1px) calc(var(--radius-lg) - 1px) 0 0}.user-header .field.identifier{flex:1 1 auto;min-width:0;display:flex;align-items:center;gap:var(--space-2);font-weight:var(--font-semibold);font-size:var(--text-lg);white-space:nowrap}.user-header .identifier-name{min-width:0;overflow:hidden;text-overflow:ellipsis}.user-header .field.identifier .sim-badge{margin:0 var(--space-1)}.user-header .listen-in-toggle,.user-header .sim-badge{flex:none}.user-view:not(.mini):not(.selector) .user-header .audio-status-slot{position:relative;justify-content:center;width:20px}.user-view:not(.mini):not(.selector) .user-header .audio-status-slot:before{content:"";position:absolute;left:50%;top:50%;width:7px;height:7px;transform:translate(-50%,-50%);border-radius:var(--radius-full);background:currentColor;opacity:.16}.user-view:not(.mini):not(.selector) .user-header .audio-status-slot:has(.playing):before,.user-view:not(.mini):not(.selector) .user-header .audio-status-slot:has(.speaking):before{display:none}.user-header .user-place{font-size:var(--text-xs);font-weight:var(--font-normal);color:var(--text-muted);min-width:0;overflow:hidden;text-overflow:ellipsis;margin-left:var(--space-1)}.user-view.team .user-header{background:var(--head-fill);color:var(--head-ink);--ear-hover-ink: var(--head-ink)}.user-view.team .user-header :is(.field.identifier,.listen-ear:not(.on)){color:inherit}.user-view.team.connected{--head-fill: var(--role-hue);--head-ink: var(--on-accent)}html:not([data-theme=dark]) .user-view.team.connected .user-header .sim-badge:not(.llm){background:var(--on-accent);color:var(--role-hue)}html:not([data-theme=dark]) .user-view.team.connected .user-header .presence-dot{box-shadow:0 0 0 1.5px color-mix(in srgb,var(--on-accent) 85%,transparent)}html:not([data-theme=dark]) .user-view.team.connected .user-header .listen-ear.on{color:var(--head-ink);background:var(--success-vivid);box-shadow:0 0 0 1.5px color-mix(in srgb,var(--head-ink) 85%,transparent)}html:not([data-theme=dark]) .user-view.team.connected .user-header .listen-ear.on:hover{background:color-mix(in oklab,var(--success-vivid) 88%,black)}html:not([data-theme=dark]) .user-view.team.connected .user-header .user-place{color:var(--on-accent-dim)}.user-view.team:not(.connected){--head-fill: color-mix(in oklab, var(--role-hue) var(--tint-strength), var(--neutral-50));--head-ink: var(--text-primary)}.user-view.team:not(.connected) .user-header .field.identifier{color:var(--role-hue);font-weight:var(--font-semibold)}[data-theme=dark] .user-view.team{--head-fill: transparent;--head-ink: var(--text-primary)}[data-theme=dark] .user-view.team .user-header{border-bottom:1px solid color-mix(in srgb,var(--role-hue) 45%,transparent)}[data-theme=dark] .user-view.team .user-header .field.identifier{color:var(--role-hue)}[data-theme=dark] .user-view.team:not(.connected) .user-header .field.identifier{color:color-mix(in srgb,var(--role-hue) 55%,var(--text-muted))}.user-view-seg{margin-bottom:var(--space-3)}.user-mic-status{font-size:var(--text-xs);color:var(--text-muted);margin-top:var(--space-3);line-height:1.35}.user-mic-toggle{position:absolute;right:var(--space-4);bottom:var(--space-4);z-index:1;width:30px;height:30px;padding:0;border-radius:var(--radius-full);display:inline-flex;align-items:center;justify-content:center;background:var(--surface-1);color:var(--accent-color);border:1px solid var(--border-color);cursor:pointer;--button-hover-bg: var(--neutral-100)}.user-mic-toggle svg{width:16px;height:16px}.user-mic-toggle.on{background:var(--accent-color);color:var(--on-accent);border-color:var(--accent-color);--button-hover-bg: var(--accent-color-darker, var(--accent-color))}.user-view:has(>.user-mic-toggle,>.user-actions) .user-view-tab-content{padding-bottom:36px}.user-view:has(>.user-mic-toggle) .user-view-tab-content[data-tab=vars]{padding-bottom:0}.user-view:has(>.user-mic-toggle) .vars-add{padding-right:40px;min-height:30px;display:flex;flex-direction:column;justify-content:center}.user-view:has(>.user-mic-toggle) .vars-add>.vars-add-link{align-self:flex-start}.user-view-tab-content{display:none;max-height:35vh;overflow-y:auto}.user-view-tab-content.active{display:block}.user-view-tab-content[data-tab=transcript]{max-height:none;overflow:visible}.audio-status{display:inline-block;width:20px;height:20px;opacity:.4;transition:var(--transition-paint-base);color:var(--neutral-600);flex-shrink:0}.audio-status.playing{opacity:1;color:inherit;background-color:currentColor;-webkit-mask:url(/ico/svg/voice.svg) center / contain no-repeat;mask:url(/ico/svg/voice.svg) center / contain no-repeat;animation:audioWave 1s infinite}.audio-status-slot{display:inline-flex;align-items:center;justify-content:flex-start;flex-shrink:0;min-width:20px;height:20px}.user-view.mini .audio-status-slot{width:16px;min-width:16px;height:16px;justify-content:center}.user-view.mini .audio-status{margin:0;width:16px;height:16px}.speak-status-slot{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:15px;min-width:15px;height:9px;vertical-align:middle}.speak-status{width:9px;height:9px;border-radius:50%;background-color:currentColor;opacity:0}.speak-status.speaking{opacity:1;animation:speakBob .6s ease-in-out 10,speakFade 6s ease-in-out forwards}.user-view.mini .speak-status{width:7px;height:7px}@media (prefers-reduced-motion: reduce){.speak-status.speaking{animation:speakFade 6s linear forwards}}@keyframes speakBob{0%,to{transform:translateY(.8px)}50%{transform:translateY(-1.6px)}}@keyframes speakFade{0%{opacity:0}6%,80%{opacity:1}to{opacity:0}}@keyframes audioWave{0%,to{transform:scaleY(1)}50%{transform:scaleY(1.3)}}.user-view.selector{width:100%;padding:var(--space-3) var(--space-4);cursor:pointer;transition:var(--transition-paint-base);border-radius:var(--radius-md);display:grid;grid-template-columns:1fr 2fr 1.5fr 1fr;gap:var(--space-3);align-items:center;background:var(--neutral-50);border:1px solid var(--border-color)}.user-view.selector:hover{background-color:var(--neutral-100);border-color:var(--accent-color)}.user-view.selector .user-header{margin:0}.user-view.selector .field.identifier{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--neutral-900);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-view.selector .selector-columns{display:contents}.user-view.selector .field{margin:0;padding:0}.field-value.selector{font-size:var(--text-sm);color:var(--neutral-700);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-view.mini{color:inherit}.user-view.mini:not(.connected){border-style:dashed}.user-view.mini:not(.connected) .mini-identifier{opacity:.72}.user-view.mini.connected{background-color:color-mix(in srgb,currentColor var(--chip-wash, 18%),transparent);border-color:transparent}.user-view.mini.selected{background-color:var(--chip-selected);border-color:var(--chip-selected);color:var(--chip-selected-ink);transform:none}.user-view.mini.selected:not(.connected) .mini-identifier{opacity:.4}.user-actions{position:absolute;right:var(--space-4);bottom:var(--space-4);z-index:2}.user-view:has(>.user-mic-toggle) .user-actions{right:calc(var(--space-4) + 38px)}.user-actions .actions-menu-toggle{width:30px;height:30px;color:var(--text-secondary)}.user-view.filtered{opacity:.15!important;pointer-events:none;transition:opacity var(--transition-base)}[data-theme=dark] .user-view.filtered{opacity:.3!important}.highlight-match{background-color:var(--primary-200);color:var(--primary-900);padding:1px 2px;border-radius:2px;font-weight:var(--font-medium)}[data-theme=dark] .highlight-match{background-color:var(--primary-600);color:var(--primary-100)}.highlight-wrapper{display:inline}.vars-editor,.vars-scroll{display:flex;flex-direction:column;gap:var(--space-2);min-height:0}.vars-editor-empty{color:var(--text-muted);font-size:var(--text-sm)}.vars-list{display:flex;flex-direction:column}.vars-pinned{border-bottom:1px solid var(--border-color)}.vars-pinned .vars-value-text{padding:4px 6px;display:block;min-width:0;overflow-wrap:anywhere;color:var(--text-secondary)}.vars-chips{display:flex;flex-wrap:wrap;gap:var(--space-2)}.vars-chips .chip.square{display:inline-block;border-radius:var(--radius-md);max-width:100%;overflow:hidden;text-overflow:ellipsis}.vars-row{display:grid;grid-template-columns:minmax(78px,30%) 1fr;gap:var(--space-3);align-items:start;padding:4px 0;border-bottom:1px solid var(--border-color)}.vars-row:last-child{border-bottom:none}.vars-key{font-family:var(--font-mono);font-size:var(--text-xs);font-weight:500;color:var(--text-muted);overflow-wrap:anywhere;padding-top:6px}.vars-value-input{box-sizing:border-box;display:block;resize:none;overflow:hidden;font-family:inherit;line-height:1.4;padding:4px 6px;border:1px solid transparent;border-radius:6px;background:transparent;transition:background .1s ease,border-color .1s ease}.vars-value-input:hover{background:var(--surface-2)}.vars-value-input:focus{background:var(--surface-2)}.vars-bool{justify-self:start;padding:4px 6px 4px 2px}.vars-bool .bool-toggle-label{font-size:var(--text-sm);font-weight:500}.vars-add-bool{align-self:center}.vars-value{display:flex;align-items:flex-start;gap:4px;min-width:0}.vars-value>.vars-value-input{flex:1;min-width:0}.vars-mismatch,.vars-badge{flex:none;margin-top:6px;padding:0 5px;font-size:10px;font-weight:600;white-space:nowrap;color:var(--warning-color);border:1px solid var(--warning-color);border-radius:8px;opacity:.8}.vars-badge{letter-spacing:.02em}.vars-unset{display:flex;align-items:center;gap:var(--space-2);padding:4px 6px}.vars-unset-dash{color:var(--text-muted);font-size:var(--text-sm)}.vars-unset-set{color:var(--text-secondary)}.vars-unset-set:hover{background:var(--surface-2)}.vars-add-name.var-picker{width:100%}.vars-add-link{color:var(--accent-color);font-weight:600}.vars-add-link:hover{text-decoration:underline}.vars-add>.vars-add-link{padding:4px 6px;font-size:var(--text-sm)}.vars-add-form{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--border-color);border-radius:8px;background:var(--surface-2)}.vars-add-name,.vars-add-value,.vars-add-type{width:100%;box-sizing:border-box;padding:6px 8px;font-size:var(--text-sm);border:1px solid var(--border-color);border-radius:6px;background:var(--surface-1);color:var(--text-primary)}.vars-add-hint{font-size:var(--text-xs);color:var(--warning-color)}.vars-add-actions{display:flex;justify-content:flex-end;gap:var(--space-2)}.vars-add-cancel,.vars-add-save{padding:4px 14px;border-radius:6px;font-size:var(--text-sm);font-weight:600;cursor:pointer}.vars-add-cancel{color:var(--text-secondary)}.vars-add-cancel:hover{background:var(--surface-1)}.vars-add-save:disabled{opacity:.5;cursor:not-allowed}.transcript-wrap{position:relative;display:flex;flex-direction:column;min-height:0}.transcript{display:flex;flex-direction:column;max-height:48vh;overflow-y:auto;overflow-x:hidden;padding:var(--space-3);background:var(--surface-1);border-radius:var(--radius-md, 10px)}.transcript-empty{padding:var(--space-2) 0;color:var(--text-muted);font-size:var(--text-sm)}.transcript-cue{display:flex;flex-direction:column;gap:3px;max-width:90%;margin-top:18px}.transcript-cue:first-child{margin-top:2px}.transcript-cue.continuation{margin-top:4px}.transcript-cue.person{align-self:flex-end;align-items:flex-end}.transcript-cue.ai{align-self:flex-start;align-items:flex-start}.transcript-cue-head{display:flex;align-items:center;gap:5px;padding:0 4px}.transcript-cue-name{font-size:.68rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.transcript-cue-tag{font-size:.68rem;font-style:italic;font-weight:400;color:var(--text-muted)}.transcript-cue-mic{width:11px;height:11px;flex-shrink:0}.transcript-cue-line{position:relative;padding:7px 12px;border-radius:14px;font-size:.92rem;line-height:1.5;text-align:left;overflow-wrap:anywhere;animation:transcript-cue-in .22s ease both}.transcript-cue.person .transcript-cue-name,.transcript-cue.person .transcript-cue-mic{color:var(--transcript-hue, var(--accent-color))}.transcript-cue.person .transcript-cue-line{background:color-mix(in srgb,var(--transcript-hue, var(--accent-color)) 16%,var(--surface-1));border:1.5px solid color-mix(in srgb,var(--transcript-hue, var(--accent-color)) 48%,transparent);color:var(--text-primary);border-bottom-right-radius:5px}.transcript-cue.person.continuation .transcript-cue-line{border-top-right-radius:5px}.transcript-cue.ai .transcript-cue-name{color:var(--transcript-hue, var(--text-secondary))}.transcript-cue.ai .transcript-cue-line{background:var(--surface-2);border:1.5px solid var(--border-color);color:var(--text-primary);border-bottom-left-radius:5px}.transcript-cue.ai[style*=--transcript-hue] .transcript-cue-line{background:color-mix(in srgb,var(--transcript-hue) 12%,var(--surface-2));border-color:color-mix(in srgb,var(--transcript-hue) 34%,var(--border-color))}[data-theme=dark] .transcript-cue.ai[style*=--transcript-hue] .transcript-cue-line{background:var(--surface-2);border-color:var(--border-color);border-left:3px solid var(--transcript-hue)}.transcript-cue.ai.continuation .transcript-cue-line{border-top-left-radius:5px}.transcript-cue-line{padding-bottom:15px}.transcript-time{position:absolute;bottom:3px;right:10px;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .12s ease;font-size:.6rem;color:var(--text-muted);font-variant-numeric:tabular-nums}.transcript-cue-line:hover .transcript-time{opacity:.55}.transcript-cue-tag.made-verbatim{color:var(--template-color)}.transcript-cue-tag.made-generate{color:var(--generated-color)}button.transcript-cue-tag{background:none;border:0;padding:0;cursor:pointer;font-size:.68rem;font-style:italic;font-weight:400;line-height:inherit}button.transcript-cue-tag:hover{text-decoration:underline}.transcript-detail{padding:0 4px;max-width:100%;font-size:.78rem;line-height:1.4;color:var(--text-secondary);text-align:left;overflow-wrap:anywhere}.transcript-detail-label{font-style:italic;color:var(--text-muted)}.transcript-slug{align-self:center;display:flex;align-items:center;gap:5px;margin-top:16px;padding:0 4px;font-size:.66rem;letter-spacing:.08em}.transcript-slug-icon{width:11px;height:11px;flex-shrink:0;color:var(--cue-color)}.transcript-slug-lead{color:var(--text-muted)}.transcript-slug-name{color:var(--cue-color);font-weight:600}.transcript-slug.origin-direct{color:var(--text-muted);font-style:italic}.transcript-cue.system{align-self:center;align-items:center;max-width:100%;margin-top:14px}.transcript-sys-text{font-size:.68rem;font-style:italic;color:var(--text-muted)}.transcript-cue.system.warn .transcript-sys-text{color:var(--warning-color);font-style:normal;font-weight:600}.transcript-wrap.compact .transcript{max-height:26vh}.transcript-wrap.compact .transcript-cue{margin-top:12px;max-width:90%}.transcript-wrap.compact .transcript-cue-line{font-size:.86rem;padding:5px 10px}@keyframes transcript-cue-in{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion: reduce){.transcript-cue-line{animation:none}}.transcript-new-chip{position:absolute;bottom:var(--space-2);left:50%;transform:translate(-50%);padding:3px var(--space-3);border-radius:999px;box-shadow:var(--shadow-md, var(--shadow-sm));opacity:.96;transition:opacity .12s ease,transform .12s ease}.transcript-new-chip:hover{opacity:1}.story-pane{max-height:48vh;overflow-y:auto;padding:var(--space-3);background:var(--surface-1);border-radius:var(--radius-md, 10px)}.story-text{font-size:.92rem;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}.story-updated{display:block;margin-top:var(--space-2);font-size:.68rem;color:var(--text-muted);font-variant-numeric:tabular-nums}.story-empty{padding:var(--space-2) 0;color:var(--text-muted);font-size:var(--text-sm)}.map-surface{--map-zone-fill-op: .07;--map-halo: var(--neutral-50)}[data-theme=dark] .map-surface{--map-zone-fill-op: .1}.smap-outside{fill:var(--map-outside);opacity:.55}.smap-room{fill:#fff;fill-opacity:.6;stroke:var(--map-wall);stroke-width:2.2px;cursor:pointer;transition:fill-opacity .12s ease,stroke .12s ease}.smap-room:hover{fill-opacity:.72;stroke:var(--map-aim);stroke-width:2.6px}.smap-room.selected{fill-opacity:.86;stroke:var(--map-aim);stroke-width:3.4px}[data-theme=dark] .smap-room{fill:#000;fill-opacity:0}[data-theme=dark] .smap-room:hover{fill:var(--map-aim);fill-opacity:.1}[data-theme=dark] .smap-room.selected{fill:var(--map-aim);fill-opacity:.16}.smap-room.aiming{fill:var(--map-aim);fill-opacity:.12;stroke:var(--map-aim);stroke-width:2.8px}.smap-occ-glow{fill:var(--neutral-500);filter:blur(6px);pointer-events:none}.smap-zone{fill:var(--map-zone);fill-opacity:var(--map-zone-fill-op);stroke:var(--map-zone);stroke-width:1px;stroke-dasharray:.22 .14;cursor:pointer;transition:fill-opacity .15s ease}.smap-zone.trig{stroke:none;fill:none;pointer-events:all}.smap-zone.trig.selected{stroke:var(--success-vivid);stroke-opacity:.9;stroke-width:2.2px;stroke-dasharray:none;fill:none}.smap-zone:hover{fill-opacity:.16}.smap-zone.selected{stroke:var(--map-aim);stroke-width:2.2px;fill:var(--map-aim);fill-opacity:.24}.smap-anno-name{fill:var(--map-label);pointer-events:none;opacity:.8;transition:opacity .15s ease;paint-order:stroke;stroke:var(--map-halo);stroke-width:.14em;stroke-linejoin:round}.smap-anno.room .smap-anno-name{text-transform:uppercase;letter-spacing:.08em;font-weight:600}.smap-anno.zone .smap-anno-name{letter-spacing:.04em;font-weight:500}.smap-anno.yield .smap-anno-name{opacity:0}.smap-anno-occ{fill:var(--text-secondary);font-weight:600;pointer-events:none;paint-order:stroke;stroke:var(--map-halo);stroke-width:.14em;stroke-linejoin:round}.smap-trigzone{fill:var(--success-color);fill-opacity:.09;stroke:none;pointer-events:none;transition:fill-opacity .12s ease}.smap-trigmark-zap{fill:var(--success-vivid);stroke:none;opacity:.3;transition:opacity .12s ease}.smap-trigmark.hovered .smap-trigzone{fill:var(--success-vivid);fill-opacity:.15}.smap-trigmark.hovered .smap-trigmark-zap{opacity:.5}.smap-trigmark.fired .smap-trigzone{fill:var(--success-vivid);fill-opacity:.17}.smap-trigmark.fired .smap-trigmark-zap{opacity:.6}.smap-trigmark-count{fill:var(--success-vivid);font-size:5px;font-weight:700;opacity:.8}.smap-trigmark.fired .smap-trigmark-count{opacity:1}.geo-handle{fill:var(--primary-500);stroke:var(--neutral-50);stroke-width:1.4px;pointer-events:none}.geo-handle-hit{fill:transparent;cursor:grab;touch-action:none}.geo-handle-hit:hover+.geo-handle{fill:var(--primary-600)}.geo-dim{fill:var(--primary-600);font-weight:600;pointer-events:none;paint-order:stroke;stroke:var(--neutral-50);stroke-width:.08;stroke-linejoin:round}.geo-draft{stroke:var(--primary-500);stroke-width:1.4px;stroke-dasharray:5 3}.geo-draft-pt{fill:var(--primary-500)}.geo-draft-fill{fill:var(--primary-500);fill-opacity:.12}.geo-door{pointer-events:none}.geo-door.draggable{pointer-events:auto}.geo-door-open{stroke:color-mix(in srgb,var(--primary-500) 45%,var(--map-wall));stroke-width:8px;stroke-linecap:round}.geo-door-hit{stroke:transparent;stroke-width:.5;fill:none}.geo-door.exit .geo-door-open{stroke:var(--warning-color)}.geo-door.selected .geo-door-open{stroke:var(--primary-700);stroke-width:10px}.geo-door.draggable .geo-door-hit{cursor:move}.geo-door.ghost{opacity:.5;pointer-events:none}.smap-marquee{fill:var(--map-aim);fill-opacity:.1;stroke:var(--map-aim);stroke-width:.06;stroke-dasharray:.25 .15}.smap-room-cold{fill:var(--stage-room-cold)}.smap-task{stroke:var(--crew-accent);stroke-width:1.4px;stroke-dasharray:4 3;opacity:.75;vector-effect:non-scaling-stroke;pointer-events:none}.smap-task.solid{stroke-dasharray:none;stroke-width:1.8px;opacity:.9}.smap-you{fill:none;stroke:var(--stage-attention);stroke-width:1.6px;opacity:.9}.smap-partner{stroke:var(--user-color);stroke-width:1.4px;stroke-dasharray:4 3;opacity:.7;vector-effect:non-scaling-stroke;pointer-events:none}.smap-expect-outline{fill:none;stroke:var(--stage-attention);stroke-width:1.6px;stroke-dasharray:5 4;opacity:.55}.smap-expect-flag{cursor:pointer}.smap-expect-flag text{fill:var(--stage-attention);font-weight:700;paint-order:stroke;stroke:var(--surface-1);stroke-width:.06px}.smap-pull-line{stroke:var(--stage-attention);stroke-width:2.6px;stroke-dasharray:5 4;opacity:.7;animation:smapPullMarch 1.4s linear infinite}@keyframes smapPullMarch{to{stroke-dashoffset:-18}}.smap-pull-reticle{fill:none;stroke:var(--stage-attention);stroke-width:2.6px;opacity:.8}.smap-pull-anchor{fill:var(--stage-attention);opacity:.8}.smap-pull.locked .smap-pull-line,.smap-pull.locked .smap-pull-reticle{opacity:1;stroke-width:3.4px}.smap-pull-label{fill:var(--text-primary);font-weight:700;paint-order:stroke;stroke:var(--surface-1);stroke-width:.08px;stroke-linejoin:round}@media (prefers-reduced-motion: reduce){.smap-pull-line{animation:none}}.listen-ear{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:26px;height:26px;padding:0;border:none;border-radius:var(--radius-full);background:transparent;color:var(--neutral-400);cursor:pointer;--button-hover-bg: transparent;--button-hover-border: transparent;--ear-hover-ink: var(--text-primary);transition:color .15s ease,background .15s ease}.listen-ear svg{width:16px;height:16px}.listen-ear:hover{color:var(--ear-hover-ink);background:color-mix(in srgb,currentColor 14%,transparent)}.listen-ear.on{color:var(--success-vivid);background:color-mix(in srgb,var(--success-vivid) 16%,transparent);box-shadow:0 0 0 1.5px var(--success-vivid)}.listen-ear.on:hover{color:var(--success-vivid);background:color-mix(in srgb,var(--success-vivid) 24%,transparent)}.listen-ear.pending{opacity:.5;cursor:default}.crew-talk{display:flex;flex-direction:column;gap:var(--space-2)}.crew-talk .stage-comms-talk{width:100%}.crew-talk .stage-comms-talk:disabled{opacity:.45;cursor:default}.stage-person-body{display:flex;flex-direction:column;gap:var(--space-4)}.stage-person-body .muted{color:var(--text-muted);font-size:var(--text-sm)}.stage-person-verbs{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.stage-verb{display:inline-flex;align-items:center;gap:var(--space-3)}.stage-verb-icon{width:14px;height:14px;flex:none;color:var(--text-muted)}.stage-verb:hover .stage-verb-icon{color:inherit}.stage-verb.lead{font-weight:var(--font-semibold)}.stage-verb.on .stage-verb-icon{color:var(--on-accent)}.stage-person-receipt{font-size:var(--text-xs);color:var(--warning-color);font-weight:600}.stage-person-summary{font-size:var(--text-xs);color:var(--text-muted)}.stage-detail-toggle{align-self:flex-start}.stage-person-comms{display:flex;flex-direction:column;gap:var(--space-3);min-height:0}.stage-person-comms .comms-stream{max-height:30vh;flex:0 1 auto}.stage-person-presence{font-size:var(--text-xs);color:var(--text-muted)}.stage-person-presence .comms-chip{padding:2px var(--space-3);gap:var(--space-2)}.group-dialog{--ring-color: var(--neutral-500);width:min(440px,90%)}.group-dialog h3{margin:0 0 var(--space-5);font-size:var(--text-lg);font-weight:var(--font-bold);color:var(--text-primary)}.group-dialog form{display:flex;flex-direction:column;gap:var(--space-4)}.group-dialog label{display:flex;flex-direction:column;gap:var(--space-1)}.group-dialog .group-dialog-key{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-muted)}.group-dialog textarea{resize:vertical;min-height:60px}.group-dialog .dialog-buttons{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-2)}.group-dialog .dialog-buttons .btn.danger{margin-right:auto}.group-detail{display:flex;flex-direction:column;gap:var(--space-3)}.group-detail-head{display:flex;align-items:baseline;gap:var(--space-3);min-width:0}.group-detail-name{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--role-hue, var(--text-primary));min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.group-detail-count{font-size:var(--text-xs);color:var(--text-muted);white-space:nowrap;margin-left:auto}.group-detail-desc{font-size:var(--text-sm);color:var(--text-secondary)}.group-detail-section{border-top:1px solid var(--border-color);padding-top:var(--space-3);display:flex;flex-direction:column;gap:var(--space-2)}.group-detail-comms{flex:1 1 auto;min-height:0}.group-detail-comms .comms-stream{flex:1 1 0;min-height:0;max-height:none}.group-detail-summary{font-size:var(--text-sm);line-height:1.4;color:var(--text-primary);white-space:pre-line}.group-detail-summary .muted{font-style:italic;color:var(--text-muted)}.group-detail-roster{display:flex;flex-direction:column;gap:2px}.group-detail-roster .stage-row{margin:0}.group-detail-away{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.group-detail-away .eyebrow{margin-right:var(--space-1)}.stage-marker{--hue: var(--neutral-500);position:relative;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:20px;height:20px;border-radius:var(--radius-full);background:var(--hue);color:var(--on-accent);font-size:8px;font-weight:600;letter-spacing:.01em;line-height:1;box-shadow:0 0 0 1.5px var(--surface-1);border:none;padding:0;cursor:default;--button-hover-bg: var(--hue);--button-hover-border: transparent}.stage-marker.performer{border-radius:5px}.stage-marker.sm{width:18px;height:18px;font-size:7px}button.stage-marker{cursor:pointer}button.stage-marker:hover{background:var(--hue);filter:brightness(1.12)}.stage-marker-row{display:inline-flex;align-items:center;margin-left:var(--space-2)}.stage-marker-row .stage-marker+.stage-marker{margin-left:-4px}.stage-marker-more{font-size:var(--text-xs);color:var(--text-muted);margin-left:var(--space-2)}.stage-marker.receiving:before,.stage-marker.receiving:after{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border-radius:inherit;border:1.5px solid var(--neutral-500);opacity:.26;pointer-events:none}@media (prefers-reduced-motion: no-preference){.stage-marker.receiving:before{animation:smapReceiveIn 2.6s ease-out infinite}.stage-marker.receiving:after{animation:smapReceiveIn 2.6s ease-out infinite 1.3s}}.stage-row{display:grid;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;column-gap:var(--space-3);padding:var(--space-2) var(--space-3) var(--space-2) var(--space-2);margin:0 var(--space-2);border-radius:var(--radius-md);cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--text-primary);transition:opacity .15s ease}.stage-row:hover{background:var(--surface-2)}.stage-row.selected{background:var(--primary-100)}.stage-row.dim{opacity:.55}.stage-row.drag-over{background:var(--primary-100);box-shadow:inset 0 0 0 2px var(--primary-500);opacity:1}.stage-row .stage-marker{grid-column:1;grid-row:1 / span 2;align-self:start;margin-top:1px}.stage-row-name{grid-column:2;grid-row:1;font-size:var(--text-sm);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;gap:var(--space-2)}.stage-row-pin{color:var(--text-muted);font-size:var(--text-xs)}.stage-row-age{font-size:var(--text-xs);font-weight:400;color:var(--text-muted);opacity:.8;font-variant-numeric:tabular-nums;white-space:nowrap}.stage-row-listen{grid-column:3;grid-row:1 / span 2;align-self:center}.stage-row-mat{grid-column:2;grid-row:2;font-size:var(--text-xs);line-height:1.3;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stage-row-mat.lines{display:flex;flex-direction:column;align-items:flex-start;min-width:0}.stage-row-mat .row-line{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stage-row-mat .row-line.person{font-style:italic;color:var(--text-secondary)}.stage-row-mat .row-line.house{font-family:var(--font-mono);letter-spacing:-.01em;font-size:.94em;font-style:normal;color:var(--text-muted);opacity:.85}.stage-row-mat.hearing,.stage-row-mat.quiet{color:var(--text-muted)}.stage-row-mat.dry{color:var(--warning-color);font-weight:600}.stage-flag-badge{display:inline-flex;align-items:center;justify-content:center;min-width:14px;height:14px;padding:0 3px;border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:700;background:var(--warning-color);color:var(--neutral-50)}.stage-group-row{display:flex;align-items:center;border-radius:var(--radius-md)}.stage-group-row:hover{background:var(--surface-2)}.stage-group-row.on{background:var(--primary-100)}.stage-group-row.drag-over{background:var(--primary-100);box-shadow:inset 0 0 0 2px var(--primary-500)}.stage-group-row.chip{flex:none;border-radius:var(--radius-full);border:1px solid var(--border-color);background:var(--stage-glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--shadow-md);white-space:nowrap}.stage-group-row.chip:hover{background:var(--surface-2)}.stage-group-row.chip.on{background:var(--primary-100);border-color:var(--primary-600)}.stage-group-row.chip .stage-group-select{min-height:26px;padding:var(--space-1) var(--space-3);gap:var(--space-2)}.stage-group-row.chip.faux{border-style:dashed}.stage-groupstrip.tight .stage-group-name{max-width:56px;text-overflow:clip}.stage-groupstrip.tight .stage-group-row{--tail-w: max(16px, calc(var(--tail-d, 1) * 1ch))}.stage-groupstrip.tight .stage-group-unfold{width:16px;height:16px}.stage-groupstrip.tight .stage-group-unfold svg{width:13px;height:13px}.stage-groupstrip.tight .when-wide,.stage-groupstrip:not(.tight) .when-tight{display:none}.stage-group-row.chip.folded{opacity:.55}.stage-group-row.chip.folded:hover{opacity:1}.stage-group-unfold{flex:none;width:22px;height:22px;color:var(--text-muted);border-radius:var(--radius-full)}.stage-group-unfold svg{width:14px;height:14px}.stage-group-unfold:hover{color:var(--text-primary);background:var(--surface-2)}.stage-group-select{display:flex;align-items:center;gap:var(--space-3);flex:1;min-width:0;min-height:32px;padding:var(--space-2) var(--space-3);color:var(--text-primary);text-align:left;justify-content:flex-start}.stage-group-select:hover{background:transparent}.stage-group-swatch{width:10px;height:10px;border-radius:var(--radius-full);flex-shrink:0}.stage-group-swatch.performer{border-radius:2px}.stage-group-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500;font-size:var(--text-sm)}.stage-group-count{margin-left:auto;color:var(--text-muted);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.stage-group-row{--tail-w: max(22px, calc((2 * var(--tail-d, 1) + 1) * 1ch))}.stage-group-count{min-width:var(--tail-w);text-align:right}.stage-group-row.folded .stage-group-count{display:none}.stage-group-caret{flex:none;width:var(--tail-w);display:flex;align-items:center;justify-content:flex-end}.review-dialog{position:relative;max-width:1040px;width:92%;text-align:left;display:flex;flex-direction:column;gap:var(--space-3)}.review-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.review-title{display:flex;align-items:baseline;gap:var(--space-4);min-width:0}.review-title .title{margin:0}.review-subtitle{font-size:var(--text-sm);color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.review-head-right{display:flex;align-items:center;gap:var(--space-3)}.review-pill{background:var(--cue-light);color:var(--cue-color)}.review-x:hover{background:var(--neutral-300)}.review-split{display:grid;grid-template-columns:216px 1fr;gap:var(--space-4);align-items:start;height:60vh;min-height:420px}.review-roster{display:flex;flex-direction:column;gap:var(--space-1);height:100%;overflow-y:auto;padding-right:var(--space-4);border-right:1px solid var(--border-color);box-sizing:border-box}.review-roster-label{padding:var(--space-2) var(--space-1)}.review-person{justify-content:space-between;gap:var(--space-3);width:100%;padding:var(--space-2) var(--space-3);text-align:left}.review-person:hover{background:var(--neutral-100)}.review-person.active{border-color:var(--cue-color);background:var(--neutral-100);font-weight:var(--font-semibold)}.review-person.done{opacity:.5}.review-person-name{display:flex;align-items:center;gap:var(--space-3);min-width:0;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.review-dot{width:6px;height:6px;border-radius:var(--radius-full);background:var(--neutral-400);flex-shrink:0}.review-person-state{font-size:var(--text-xs);font-weight:var(--font-medium);white-space:nowrap}:is(.review-person-state,.review-state-chip).state-ready{color:var(--text-muted)}.review-dot.state-ready{background:var(--neutral-400)}:is(.review-person-state,.review-state-chip).state-edited{color:var(--cue-color)}.review-dot.state-edited{background:var(--cue-color)}:is(.review-person-state,.review-state-chip).state-note{color:var(--generated-color)}.review-dot.state-note{background:var(--generated-color)}:is(.review-person-state,.review-state-chip).state-sent{color:var(--success-color)}.review-dot.state-sent{background:var(--success-vivid)}:is(.review-person-state,.review-state-chip).state-revised{color:var(--generated-color)}.review-dot.state-revised{background:var(--generated-color)}:is(.review-person-state,.review-state-chip).state-skipped{color:var(--neutral-500)}.review-dot.state-skipped{background:var(--neutral-500)}:is(.review-person-state,.review-state-chip).state-dropped{color:var(--danger-color)}.review-dot.state-dropped{background:var(--danger-color)}:is(.review-person-state,.review-state-chip,.review-dot).state-pending{color:var(--neutral-500);animation:review-pulse 1.6s ease-in-out infinite}.review-dot.state-pending{background:var(--neutral-400)}:is(.review-person-state,.review-state-chip).state-failed{color:var(--danger-color)}:is(.review-person-state,.review-state-chip,.review-dot).state-revising{color:var(--generated-color);animation:review-pulse 1.6s ease-in-out infinite}.review-dot.state-revising{background:var(--generated-color)}.review-dot.state-failed{background:var(--danger-color)}.review-roster-divider{margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--border-color)}.review-state-chip{margin-left:auto;flex-shrink:0}.review-listen~.review-state-chip{margin-left:0}.review-prompt-tab~.review-state-chip{margin-left:0}.review-state-chip~.review-skip{margin-left:0}.review-line.done{background:var(--neutral-100);color:var(--text-secondary);border:1px dashed var(--border-color);box-shadow:none;font-size:var(--text-sm);padding:var(--space-4)}.review-line-block{position:relative;display:flex;flex-direction:column;flex-shrink:0}.review-vtabs{display:flex;gap:var(--space-1);padding:0 var(--space-4)}.review-vtab{padding:var(--space-1) var(--space-4);border:1px solid var(--border-color);border-bottom:none;border-radius:var(--radius-sm) var(--radius-sm) 0 0;background:var(--neutral-100);color:var(--text-muted);font-size:var(--text-xs);font-weight:var(--font-medium);cursor:pointer}.review-vtab:hover:not(:disabled){background:var(--neutral-200)}.review-vtab.active{background:var(--generated-light);border-color:var(--generated-color);color:var(--generated-color)}.review-vtab:disabled{cursor:default;opacity:.6}.review-line-veil{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-lg);background:color-mix(in srgb,var(--generated-light) 75%,transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);color:var(--generated-color);font-size:var(--text-base);font-weight:var(--font-semibold);animation:review-pulse 1.6s ease-in-out infinite;z-index:3}.review-revised{height:var(--review-line-h);box-sizing:border-box;overflow-y:auto;flex-shrink:0;display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);border:1px dashed var(--generated-color);border-radius:var(--radius-lg);background:var(--neutral-100)}.review-revised-label{margin-bottom:var(--space-1)}.review-revised-text{font-size:var(--text-sm);color:var(--text-primary);line-height:1.5;white-space:pre-wrap;-webkit-user-select:text;user-select:text}.review-revised-text.muted{color:var(--text-secondary)}.review-revised-text.note{color:var(--generated-color);font-weight:var(--font-medium)}.review-roster-foot{margin-top:auto;display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3) var(--space-1) var(--space-1);border-top:1px solid var(--border-color);font-size:var(--text-xs);color:var(--text-muted)}.review-roster-foot .hint{color:var(--neutral-500);line-height:1.5}.review-pane{display:flex;flex-direction:column;gap:var(--space-3);min-width:0;height:100%;--review-vars-w: 228px;--review-line-h: 148px;--panel-gap: var(--space-3)}.review-line,.review-line-pending,.review-line-failed{height:var(--review-line-h)}.review-line-pending,.review-line-failed{display:flex;align-items:center;justify-content:center;box-sizing:border-box}.review-meta{height:calc(var(--text-xs) * 1.5);overflow:hidden}.review-person-head{display:flex;align-items:center;gap:var(--space-2)}.review-person-head .review-person-ident{margin-left:var(--space-1)}.review-person-title{font-size:var(--text-base);font-weight:var(--font-semibold)}.review-person-ident{font-size:var(--text-xs);color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.review-skip{margin-left:auto;flex-shrink:0}.review-skip:hover:not(:disabled){background:var(--neutral-200)}.review-context{position:relative;display:grid;grid-template-columns:minmax(0,1fr) var(--review-vars-w);gap:var(--panel-gap);flex-grow:1;min-height:0}.review-line-grip{position:relative;height:10px;margin:calc(-1 * var(--space-2)) 0;flex-shrink:0;cursor:row-resize;touch-action:none;-webkit-user-select:none;user-select:none;z-index:2}.review-line-grip:before{content:"";position:absolute;left:0;right:0;top:50%;height:2px;transform:translateY(-50%);background:transparent;transition:background var(--transition-fast)}.review-line-grip:hover:before,.review-line-grip:active:before,.review-line-grip:focus-visible:before{background:var(--primary-500)}.review-context-pane{display:flex;flex-direction:column;border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden;min-height:0}.review-context-head{align-items:baseline;padding:var(--space-2) var(--space-4);background:var(--neutral-100)}.review-context-count{font-size:var(--text-xs);color:var(--neutral-500)}.review-context-body{flex-grow:1;overflow-y:auto;padding:var(--space-4);min-height:0;display:flex;flex-direction:column;gap:var(--space-3)}.review-context-body.flush{padding:0;overflow:hidden;display:flex;flex-direction:column}.review-context-body.flush .transcript-wrap{flex:1 1 0;min-height:0}.review-context-body.flush .transcript{max-height:none;height:100%}.review-context-body.flush .story-pane{flex:1 1 0;min-height:0;max-height:none}.review-ctx-toggle{display:inline-flex;gap:2px}.review-ctx-toggle .seg-btn{padding:1px var(--space-2);letter-spacing:.04em;text-transform:uppercase}.review-line-pending{padding:var(--space-4);border:1px dashed var(--border-color);border-radius:var(--radius-md);color:var(--neutral-500);font-size:var(--text-sm);font-style:italic;flex-shrink:0;animation:review-pulse 1.6s ease-in-out infinite}@keyframes review-pulse{0%,to{opacity:1}50%{opacity:.45}}.review-line-failed{padding:var(--space-4);border:1px solid var(--danger-light);border-radius:var(--radius-md);background:var(--danger-light);color:var(--danger-color);font-size:var(--text-sm);flex-shrink:0}.review-line{width:100%;box-sizing:border-box;resize:none;padding:var(--space-6) var(--space-8);border:2px solid var(--template-color);border-radius:var(--radius-lg);box-shadow:0 0 0 3px var(--template-light);background:var(--neutral-50);color:var(--text-primary);font-family:inherit;font-size:var(--text-lg);line-height:1.6;flex-shrink:0}.review-line:focus{outline:none;box-shadow:0 0 0 3px var(--template-100)}.review-line.edited{background:color-mix(in oklab,var(--warning-color) 8%,var(--neutral-50))}.review-actions{display:flex;align-items:center;gap:var(--space-3);flex-shrink:0;height:46px}.review-actions-or{font-size:var(--text-xs);color:var(--neutral-500);flex-shrink:0}.review-note-group{display:flex;align-items:center;gap:var(--space-2);flex-grow:1;padding:var(--space-1);border:1px dashed var(--neutral-300);border-radius:var(--radius-md)}.review-note-group:focus-within{border:2px solid var(--generated-color);box-shadow:0 0 0 3px var(--generated-light);padding:calc(var(--space-1) - 1px)}.review-pane:has(.review-note-group:focus-within) .review-line:not(.done){border-color:var(--neutral-300);box-shadow:none}.review-note{--ring-color: var(--generated-color);flex-grow:1;padding:var(--space-3) var(--space-4);color:var(--text-primary);font-family:inherit;font-size:var(--text-sm)}.review-note.active{border-color:var(--generated-color)}.review-send{width:auto;flex-shrink:0;padding:var(--space-3) var(--space-8);--action-button-color: var(--template-color);--action-button-hover: var(--template-hover)}.review-send.revise-only{background:transparent;color:var(--generated-color);border:1px solid var(--generated-color);padding:var(--space-3) var(--space-5)}.review-send.revise-only:hover:not(:disabled){background:var(--generated-light)}.review-send.revise-only:disabled{background:transparent;color:var(--neutral-500);border-color:var(--neutral-300)}.review-send.revise{--action-button-color: var(--generated-color);--action-button-hover: var(--generated-hover)}.review-meta{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-4);font-size:var(--text-xs);color:var(--text-muted);flex-shrink:0}.review-meta span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.5}.review-meta .warn{color:var(--warning-color)}.review-prompt-tab{margin-left:auto}.review-head-right .review-prompt-tab{margin-left:0}.review-prompt-tab.active{border-color:var(--generated-color);color:var(--generated-color)}.review-prompt-tab~.review-skip{margin-left:0}.review-listen{margin-left:auto;display:flex;align-items:center}.review-listen~.review-prompt-tab,.review-listen~.review-skip{margin-left:0}.review-prompt{flex-grow:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);flex-shrink:0}.review-prompt-label{margin-bottom:var(--space-1)}.review-prompt-text{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-secondary);line-height:1.6;white-space:pre-wrap;word-break:break-word}.review-empty{display:flex;align-items:center;justify-content:center;height:100%;border:1px dashed var(--border-color);border-radius:var(--radius-lg);color:var(--neutral-500);font-size:var(--text-sm);font-style:italic}.review-foot{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--border-color)}.review-foot .runnable-button{width:auto;padding:var(--space-3) var(--space-8)}.review-foot-right{display:flex;align-items:center;gap:var(--space-4)}.review-status{font-size:var(--text-xs);color:var(--text-muted)}.review-status.error{color:var(--danger-color)}.review-confirm{position:absolute;top:0;right:0;bottom:0;left:0;z-index:30;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-lg);background:#00000059}.review-confirm-card{width:90%;max-width:420px;display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-6);border-radius:var(--radius-lg);background:var(--neutral-50);box-shadow:var(--shadow-xl)}.review-confirm-title{font-size:var(--text-lg);font-weight:var(--font-semibold)}.review-confirm-body{font-size:var(--text-sm);color:var(--text-secondary);line-height:1.55}.review-confirm-actions{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.review-confirm-right{display:flex;gap:var(--space-3)}.review-confirm-actions .runnable-button{width:auto;padding:var(--space-3) var(--space-6)}.review-confirm-actions .runnable-button.danger{color:var(--danger-color)}.preview-player{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-2);padding:var(--space-3)}.preview-player-top{display:flex;align-items:center;gap:var(--space-3)}.preview-player-toggle{border-radius:var(--radius-full);flex-shrink:0}.preview-player-toggle:hover:not(:disabled){border-color:var(--primary-500)}.preview-player-toggle:disabled{color:var(--neutral-400);cursor:not-allowed}.preview-player-track{flex-grow:1;height:6px;border-radius:var(--radius-full);background:var(--neutral-300);cursor:pointer;overflow:hidden}.preview-player-fill{height:100%;border-radius:var(--radius-full);background:var(--cue-color);transition:width 80ms linear}.preview-player-x{padding:0 var(--space-1);color:var(--neutral-500);font-size:var(--text-base);flex-shrink:0}.preview-player-x:hover{color:var(--text-primary)}.preview-player-line{font-size:var(--text-xs);color:var(--text-secondary);line-height:1.5;text-wrap:pretty}.preview-player-as{color:var(--text-muted);font-weight:var(--font-medium)}.preview-player-error{font-size:var(--text-xs);color:var(--danger-color)}.run-strip{position:relative}.run-strip-line{display:flex;align-items:center;gap:var(--space-2);height:36px;padding:var(--space-2) var(--space-3);background-color:var(--neutral-100);border:1px solid var(--neutral-300);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--neutral-700);cursor:pointer;white-space:nowrap;--button-hover-bg: var(--neutral-200);--button-hover-border: var(--primary-600)}.run-strip-line.open{border-color:var(--primary-600)}.run-strip-line.amber{border-color:var(--warning-color);background-color:var(--warning-light);--button-hover-bg: var(--warning-light)}.run-strip-line.red{border-color:var(--danger-color);animation:runStripRedPulse 1.2s ease-in-out infinite;--button-hover-bg: var(--neutral-100);--button-hover-border: var(--danger-color)}@keyframes runStripRedPulse{0%,to{box-shadow:0 0 color-mix(in oklab,var(--danger-color) 45%,transparent)}50%{box-shadow:0 0 0 4px color-mix(in oklab,var(--danger-color) 12%,transparent)}}.run-strip.stale .run-strip-line{opacity:.55;filter:grayscale(1);border-style:dashed}.run-strip-stale{color:var(--danger-color);font-weight:var(--font-bold)}.run-strip-live{font-weight:var(--font-bold);color:var(--primary-700)}.run-strip-recent{color:var(--neutral-500);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.03em}.run-strip-line.quiet{background-color:transparent;border-color:var(--neutral-200);--button-hover-bg: var(--neutral-100)}.run-strip-recv{color:var(--neutral-600)}.run-strip-age{font-variant-numeric:tabular-nums;color:var(--neutral-700)}.run-strip-held{color:var(--warning-color);font-weight:var(--font-bold);text-transform:uppercase;font-size:var(--text-xs)}.run-strip-badge{color:var(--danger-color);font-weight:var(--font-bold)}.run-strip-stuck{display:inline-flex;align-items:center;gap:3px;color:var(--warning-color);font-weight:var(--font-bold)}.run-strip-stuck-ic{width:12px;height:12px}.run-drawer{position:absolute;top:calc(100% + 4px);right:0;z-index:60;width:min(460px,calc(100vw - 2 * var(--space-3)));max-height:60vh;overflow-y:auto;padding:var(--space-2) var(--space-3);background-color:var(--neutral-50);border:1px solid var(--neutral-300);border-radius:var(--radius-md);box-shadow:0 6px 24px #00000040;font-size:var(--text-sm)}@media (max-width: 930px){.run-drawer{right:auto;left:0}}.run-drawer-label{margin:var(--space-2) 0 var(--space-1)}.run-drawer-empty{color:var(--neutral-600);padding:var(--space-1) 0}.run-drawer-held{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2);margin-bottom:var(--space-1);border:1px solid var(--warning-color);border-radius:var(--radius-md);background-color:var(--warning-light)}.run-drawer-advance{margin-left:auto;padding:var(--space-1) var(--space-3);border:none;border-radius:var(--radius-md);background-color:var(--primary-600);color:var(--on-accent);font-weight:var(--font-bold);cursor:pointer}.run-drawer-advance:hover{background-color:var(--primary-700)}.run-drawer-stuck{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2);margin-bottom:var(--space-1);border:1px solid var(--warning-color);border-radius:var(--radius-md);background-color:var(--warning-light);color:var(--warning-color);font-weight:var(--font-bold)}.run-drawer-clearstuck{margin-left:auto;padding:var(--space-1) var(--space-3);border:none;border-radius:var(--radius-md);background-color:var(--danger-color);color:var(--on-accent);font-weight:var(--font-bold);cursor:pointer;--button-hover-bg: var(--danger-hover);--button-hover-border: var(--danger-hover)}.run-row{padding:var(--space-1) 0;border-bottom:1px solid var(--neutral-100)}.run-row.background{display:flex;gap:var(--space-2);color:var(--neutral-600)}.run-row-head{display:flex;align-items:baseline;gap:var(--space-2)}.run-row-name{font-weight:var(--font-bold);color:var(--neutral-900)}.run-row-group{color:var(--neutral-600)}.run-row-age{margin-left:auto;font-variant-numeric:tabular-nums;color:var(--neutral-600)}.run-row-stop{padding:0 var(--space-2);border:1px solid var(--neutral-300);border-radius:var(--radius-md);background-color:var(--neutral-100);color:var(--neutral-700);font-size:var(--text-xs);cursor:pointer;--button-hover-bg: var(--neutral-200);--button-hover-border: var(--danger-color)}.run-row-stop:hover{color:var(--danger-color)}.run-row-pending{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1);margin-top:2px}.run-row-pendinglabel,.run-row-nopending{color:var(--neutral-600);font-size:var(--text-xs)}.run-chip{display:inline-flex;align-items:center;gap:4px;padding:1px var(--space-2);border:1px solid var(--neutral-300);border-radius:999px;background-color:var(--neutral-100);color:var(--neutral-700);font-size:var(--text-xs);cursor:pointer;--button-hover-bg: var(--neutral-200);--button-hover-border: var(--danger-color)}.run-chip .run-chip-x{color:var(--neutral-600)}.run-chip:hover .run-chip-x{color:var(--danger-color)}.run-chip.left{border-style:dashed;color:var(--danger-color);border-color:var(--danger-color)}.ledger-row{display:flex;align-items:baseline;flex-wrap:wrap;gap:var(--space-2);padding:2px 0}.ledger-time{font-variant-numeric:tabular-nums;color:var(--neutral-600);font-size:var(--text-xs)}.ledger-name{color:var(--neutral-900)}.ledger-outcome{font-weight:var(--font-bold);font-size:var(--text-xs);text-transform:uppercase}.ledger-outcome.ok{color:var(--neutral-600)}.ledger-outcome.partial{color:var(--warning-color)}.ledger-outcome.failed{color:var(--danger-color)}.ledger-outcome.cancelled{color:var(--neutral-600)}.ledger-row.failed{background:color-mix(in srgb,var(--danger-color) 7%,transparent);border-radius:var(--radius-md)}.ledger-failures{flex-basis:100%;color:var(--neutral-600);font-size:var(--text-xs)}.stage{display:flex;flex-direction:column;height:100%;gap:var(--space-4);padding:var(--space-4);box-sizing:border-box;overflow:hidden;--stage-glass: color-mix(in srgb, var(--neutral-100) 90%, transparent)}.stage-directive,.stage-ctxmenu,.cmdk{background:var(--stage-glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.dock-title,.stage-recipient-kind,.stage-monitors-label,.st-pinned-kind{font-size:var(--text-xs);font-weight:var(--font-bold);text-transform:uppercase;letter-spacing:.06em}.stage-btn.on,.stage-btn.primary{background:var(--primary-600);color:var(--neutral-50)}.stage-btn.on:hover,.stage-btn.primary:hover{background:var(--primary-700)}.stage-btn.danger:hover{background:var(--danger-light);color:var(--danger-color)}.stage-btn:disabled{opacity:.5;cursor:default}.stage-btn.ghost{background:transparent;color:var(--text-muted);padding:3px var(--space-2);--button-hover-bg: transparent}.stage-btn.ghost:hover{color:var(--text-primary)}.stage-soundscape{display:flex;flex-direction:column;gap:var(--space-4);font-size:var(--text-sm)}.stage-soundscape-count{color:var(--text-muted)}.stage-soundscape-beds{display:flex;flex-direction:column;gap:var(--space-2)}.stage-bed{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg);background:var(--surface-1)}.stage-bed-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stage-bed-count{color:var(--text-muted);font-variant-numeric:tabular-nums}.stage-soundscape-all{display:flex;gap:var(--space-3)}.stage-body{display:grid;grid-template-rows:auto 1fr auto;grid-template-columns:auto 1fr auto;gap:var(--space-4);flex:1;min-height:0;min-width:0}.stage-body>.stage-modebar{grid-row:1;grid-column:1 / -1}.stage-body>.stage-flank-left{grid-row:2;grid-column:1}.stage:not(.is-map) .stage-body>.stage-map{grid-row:2;grid-column:1 / 3}.stage-body>.stage-flank-right{grid-row:2;grid-column:3}.stage-body>.stage-groupstrip{grid-row:3;grid-column:1 / -1}.stage-map{flex:1 1 auto;min-width:0;min-height:0;display:flex;gap:var(--space-3);align-items:stretch;overflow-x:auto;overflow-y:hidden;padding:var(--space-3);background:var(--neutral-200);border-radius:var(--radius-lg)}.stage:not(.is-map) .stage-flank-right{align-self:stretch;max-height:none}.stage:not(.is-map) .stage-flank-right .dock-section.expanded{flex:1 1 auto;min-height:0}.stage:not(.is-map) .stage-flank-right .dock-section.expanded .dock-body{flex:1 1 auto;min-height:0;overflow-y:auto}.stage:not(.is-map) .stage-flank-right .stage-person-body,.stage:not(.is-map) .stage-flank-right .transcript-wrap,.stage:not(.is-map) .stage-flank-right .stage-person-comms{flex:1 1 auto;min-height:0}.stage:not(.is-map) .stage-flank-right .transcript,.stage:not(.is-map) .stage-flank-right .story-pane,.stage:not(.is-map) .stage-flank-right .stage-person-comms .comms-stream{max-height:none;flex:1 1 auto;min-height:0}.stage:not(.is-map) .stage-flank-right .stage-composer,.stage:not(.is-map) .stage-flank-right .stage-composer .compose-form,.stage:not(.is-map) .stage-flank-right .stage-composer .template-content,.stage:not(.is-map) .stage-flank-right .stage-composer .template-text{flex:1 1 auto;min-height:0}.stage:not(.is-map) .stage-flank-right .stage-composer .template-text{display:flex;flex-direction:column}.stage:not(.is-map) .stage-flank-right .stage-composer .template-text .text-content{flex:1 1 auto;height:auto}.stage-empty{flex:1;align-self:start}.stage-col{flex:1 0 220px;min-width:220px;max-width:440px;min-height:0;display:flex;flex-direction:column;border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-1)}.stage-col--unsorted,.stage-col--role{border-style:dashed}.stage-col-switch{align-self:flex-start;margin:0 var(--space-3)}.stage-col-switch .seg-btn{padding:2px var(--space-3);font-size:var(--text-xs)}.stage-col--team{flex:0 0 216px;min-width:216px;border-left:3px solid var(--voice-color);background:color-mix(in oklab,var(--voice-color) 6%,var(--surface-1))}[data-theme=dark] .stage-col--team{background:var(--surface-1)}.stage-col-section{display:flex;flex-direction:column;min-height:0}.stage-col-section+.stage-col-section{border-top:1px solid var(--border-color)}.stage-col-head{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-2) var(--space-2) var(--space-3);border-bottom:1px solid var(--border-color);cursor:pointer}.stage-col-headrow{display:flex;align-items:center;gap:var(--space-1)}.stage-col-headrow .stage-group-row{flex:1;min-width:0}.stage-col-fold{flex:none;width:24px;height:24px;color:var(--text-muted);border-radius:var(--radius-md)}.stage-col-fold svg{width:14px;height:14px}.stage-col-fold:hover{color:var(--text-primary);background:var(--surface-2)}.stage-col-summary{font-size:var(--text-xs);color:var(--text-muted);line-height:1.35;padding:0 var(--space-3)}.stage-col-summary .muted{font-style:italic;opacity:.7}.stage-col-flags{display:flex;flex-direction:column;gap:3px;padding:0 var(--space-3)}.stage-col-body{display:flex;flex-direction:column;gap:2px;padding:var(--space-2) 0;overflow-y:auto;min-height:0}.stage-col-body{flex:1}.stage-cohort{display:flex;flex-wrap:wrap;gap:var(--space-2)}.stage-cohort-pill{display:inline-flex;align-items:center;gap:var(--space-2);padding:2px var(--space-3);border-radius:var(--radius-full);font-size:var(--text-sm);color:var(--text-secondary);background:var(--surface-1)}.stage-cohort-pill:hover{background:var(--surface-1);color:var(--text-primary)}.stage-cohort-pill.on{color:var(--text-primary);box-shadow:0 0 0 1px var(--border-color)}.stage-watch{display:flex;flex-direction:column;gap:var(--space-3)}.stage-watch-target{font-size:var(--text-xs);color:var(--text-muted)}.stage-watch-target strong{color:var(--text-primary);font-weight:600}.stage-watch-input{box-sizing:border-box;resize:vertical;font:inherit;padding:5px 7px;border-radius:var(--radius-lg);background:var(--surface-2);color:inherit}.stage-watch-controls{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.stage-monitors-section{display:flex;flex-direction:column;gap:3px}.stage-monitors-label{color:var(--text-muted)}.stage-composer,.stage-mic{display:flex;flex-direction:column;gap:var(--space-3)}.stage-recipient{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);background:var(--neutral-100)}.stage-recipient.empty{color:var(--text-muted);font-style:italic;font-size:var(--text-sm)}.stage-recipient.warn{background:color-mix(in srgb,var(--warning-color) 16%,var(--surface-1))}.stage-recipient-kind{color:var(--text-muted);flex-shrink:0}.stage-recipient-swatch{width:10px;height:10px;border-radius:var(--radius-full);flex-shrink:0}.stage-recipient-label{flex:1;min-width:0;font-weight:600;font-size:var(--text-base);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stage-recipient-count{font-variant-numeric:tabular-nums;white-space:nowrap}.stage-recipient.warn .stage-recipient-count{color:var(--warning-color);font-weight:600}.stage-knobs-toggle{align-self:flex-start;padding-left:0}.stage-composer-knobs{display:flex;flex-direction:column;gap:var(--space-3);font-size:var(--text-xs)}.stage-composer-knobs label{display:flex;align-items:center;gap:var(--space-3)}.stage-composer-footer{display:flex;flex-direction:column;gap:var(--space-2)}.stage-composer-status{font-size:var(--text-xs);color:var(--text-muted);text-align:center}.stage-composer-status.ptt{margin:6px 0 0;line-height:1.35}.stage-modebar{display:flex;align-items:flex-start;gap:var(--space-4);min-height:0}.stage-controls{display:flex;align-items:center;gap:var(--space-3);margin-left:auto;flex-shrink:0;flex-wrap:nowrap;white-space:nowrap}.stage-controls{--stage-pill-h: 36px}.stage-modeseg,.stage-modeseg .seg-btn{border-radius:var(--radius-full)}.stage-modeseg{height:var(--stage-pill-h);box-sizing:border-box}.stage-modeseg .seg-btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:0 var(--space-5);font-size:var(--text-sm)}.stage-modeseg .seg-btn svg{width:15px;height:15px;flex-shrink:0}.stage-search{display:inline-flex;align-items:center;gap:var(--space-2);flex-shrink:0;height:var(--stage-pill-h);box-sizing:border-box;padding:0 var(--space-4);font:inherit;font-size:var(--text-sm);font-weight:600;white-space:nowrap;border:1px solid var(--border-color);border-radius:var(--radius-full);background:var(--surface-1);color:var(--text-secondary);cursor:pointer;--button-hover-bg: var(--surface-1);--button-hover-border: var(--neutral-400)}.stage-search:hover{border-color:var(--neutral-400);color:var(--text-primary)}.stage-zoom{display:inline-flex;align-items:center;flex-shrink:0;padding:0 2px;height:var(--stage-pill-h);box-sizing:border-box;border:1px solid var(--border-color);border-radius:var(--radius-full);background:var(--surface-1)}.stage-zoom-btn{width:28px;height:28px;padding:0;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:var(--radius-full);background:transparent;color:var(--text-secondary);font:inherit;font-size:var(--text-base);line-height:1;cursor:pointer;--button-hover-bg: var(--surface-2);--button-hover-border: transparent}.stage-zoom-btn:hover{background:var(--surface-2);color:var(--text-primary)}.stage-zoom-btn.frame svg{width:13px;height:13px}.stage-search svg{width:15px;height:15px;flex-shrink:0}.stage-search kbd{font:inherit;font-size:var(--text-xs);font-weight:500;color:var(--text-muted)}.stage-map.mapmode{display:flex;position:relative}.stage.is-map{position:relative;padding:0;gap:0}.stage.is-map .stage-body{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;grid-template-rows:auto 1fr auto;grid-template-columns:auto 1fr auto;gap:0;pointer-events:none}.stage.is-map .stage-map{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;overflow:hidden;padding:0;background:none;border-radius:0;pointer-events:auto}.stage.is-map .stage-body>.stage-directive{pointer-events:auto}.stage.is-map .stage-map.mapmode{display:block}.stage.is-map .smap{position:relative;height:100%;gap:0}.stage.is-map .smap-svg{border:none;border-radius:0;background:var(--neutral-200)}.stage.is-map .stage-empty{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center}.stage.is-map .stage-modebar{z-index:1;pointer-events:none;padding:calc(var(--panel-gap) + var(--space-4)) calc(var(--panel-gap) + var(--space-4)) 0}.stage.is-map .stage-controls{pointer-events:auto;text-shadow:0 0 6px var(--neutral-50),0 0 2px var(--neutral-50)}.stage.is-map .stage-groupstrip{align-self:end;z-index:1;pointer-events:auto;margin:calc(-1 * var(--shadow-bleed)) calc(var(--panel-gap) + var(--space-4)) calc(var(--panel-gap) + var(--space-4) - var(--shadow-bleed))}.smap{display:flex;flex-direction:column;gap:var(--space-3);width:100%;min-height:0}.smap-radius{fill:var(--stage-attention);fill-opacity:.08;stroke:var(--stage-attention);stroke-width:.06;stroke-dasharray:.3 .2}.smap-anchor-pt{fill:none;stroke:var(--stage-attention);stroke-width:.1}.smap-svg{background:var(--neutral-50);border:1px solid var(--border-color);border-radius:var(--radius-lg)}.smap-marker{transition-property:transform;transition-timing-function:linear}.smap-resync .smap-marker{transition:none}.smap-trail{pointer-events:none}.smap-trail-path{stroke:var(--neutral-500);stroke-width:1.6px;stroke-linecap:round}.smap-foot{fill:var(--neutral-500);animation:smapFootIn .16s linear backwards}@keyframes smapFootIn{0%{opacity:0}}.smap-receiving circle{fill:none;stroke:var(--neutral-500);stroke-width:.045;opacity:0}.smap-person.animate .smap-receiving circle{animation:smapReceiveIn 2.6s ease-out infinite}.smap-person.animate .smap-receiving circle.late{animation-delay:1.3s}@keyframes smapReceiveIn{0%{transform:scale(1.85);opacity:0}35%{opacity:.3}to{transform:scale(1);opacity:0}}.smap-person:not(.animate) .smap-receiving circle{opacity:.26}@media (prefers-reduced-motion: reduce){.smap-person.animate .smap-receiving circle{animation:none;opacity:.26}.smap-marker{transition:none}}.smap-bubble-box{fill:var(--neutral-50);fill-opacity:.94;stroke:var(--neutral-400);stroke-width:1px;vector-effect:non-scaling-stroke}.smap-bubble-text{fill:var(--text-primary);font-size:.22px}.smap-bubble.said .smap-bubble-box{stroke:var(--neutral-400)}.smap-bubble.heard .smap-bubble-box{stroke-dasharray:3 2}.smap-bubble.heard .smap-bubble-text{opacity:.7;font-style:italic}.smap-dot{fill:var(--neutral-500);stroke:var(--neutral-50);stroke-width:.06;stroke-opacity:.8;paint-order:stroke;cursor:grab}.smap-name{fill:var(--on-accent);pointer-events:none;font-weight:600;opacity:.9;transition:opacity .15s ease}.smap-namewrap,.smap-initwrap{transition:opacity 1s ease}.smap-initwrap,.names-off .smap-namewrap{opacity:0}.initials-on .smap-initwrap,.smap-person.speaking .smap-name,.smap-person.receiving .smap-name,.smap-person:hover .smap-name,.smap-person.selected .smap-name{opacity:1}.smap-person.stale .smap-dot{fill:transparent!important;stroke:var(--text-muted);stroke-dasharray:.08 .06;opacity:.6}.smap-person.stale .smap-name{fill:var(--text-primary);opacity:.62}.smap-person.manual .smap-dot{stroke-dasharray:.12 .08}.smap-person{transition:opacity .15s ease}.smap-person.dim .smap-dot,.smap-person.dim .smap-trail,.smap-person.dim .smap-receiving{opacity:.22}.smap-person.dim .smap-name{opacity:.45}.smap-person.match .smap-name{opacity:1}.smap-aim-halo{fill:none;stroke:var(--stage-attention);stroke-width:2px;opacity:.9}.smap-person.aimed .smap-dot{stroke:var(--stage-attention);stroke-width:.14}.smap-person.aimed .smap-name{opacity:1}.stage-groupstrip{--shadow-bleed: 12px;display:flex;align-items:center;gap:var(--space-3);min-width:0;max-width:100%;overflow-x:auto;overflow-y:hidden;padding:var(--shadow-bleed) 0;margin:calc(-1 * var(--shadow-bleed)) 0;font-size:var(--text-sm);scrollbar-width:none}.stage-groupstrip::-webkit-scrollbar{display:none}.stage-groupchip-name{min-width:120px;padding:3px 8px;border-radius:var(--radius-lg);border:1px solid var(--border-color);background:var(--surface-1);color:var(--text-primary);font-size:var(--text-base)}.smap.labels-always .smap-name{opacity:.9}.smap.labels-off .smap-name{display:none}.smap.labels-off .smap-person.match .smap-name,.smap.labels-off .smap-person.aimed .smap-name,.smap.labels-off .smap-person.selected .smap-name{display:block;opacity:1}.stage-directive{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-6);font-size:var(--text-sm)}.stage-directive .stage-btn{font-size:var(--text-sm)}.stage-directive-x{color:var(--text-muted)}.stage-directive-x:hover{background:transparent;color:var(--text-primary)}.stage-ctxmenu{display:flex;flex-direction:column;min-width:132px;padding:var(--space-2);font-size:var(--text-sm)}.stage-ctxmenu-item{padding:5px 10px;border:none;border-radius:var(--radius-md);background:transparent;--button-hover-bg: var(--primary-100);color:var(--text-primary);cursor:pointer;text-align:left}.stage-ctxmenu-item:hover{background:var(--primary-100)}.stage-taskchip{display:flex;flex-direction:column;gap:6px;max-width:300px}.stage-task-text{width:100%;resize:vertical;font:inherit;font-size:var(--text-sm);background:var(--surface-2);color:inherit;border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:5px 7px}.stage-task-target{font:inherit;font-size:var(--text-sm);max-width:160px}.stage-task-status{font-size:var(--text-xs);opacity:.7}.stage-task-error{font-size:var(--text-xs);color:var(--danger-color)}.stage-task-actions{display:flex;gap:6px;align-items:center}.stage-task-actions .talking{outline:2px solid var(--crew-accent)}.stage-comms-talk{display:inline-flex;align-items:center;justify-content:center;gap:6px;font:inherit;font-size:var(--text-base);font-weight:600;padding:8px 14px;border-radius:var(--radius-full);border:1px solid var(--crew-accent);background:var(--crew-accent);color:var(--crew-accent-ink);cursor:pointer;touch-action:none;--button-hover-bg: var(--crew-accent-strong);--button-hover-border: var(--crew-accent-strong)}.stage-comms-talk.talking{box-shadow:0 0 0 4px color-mix(in srgb,var(--crew-accent) 30%,transparent)}.stage-comms-status{font-size:var(--text-xs);opacity:.7}.stage-comms-status.error{color:var(--danger-color);opacity:1}.stage-tab:has(>.stage.is-map){margin:calc(-1 * var(--panel-gap));height:calc(100% + 2 * var(--panel-gap))}.stage.is-map{padding:0}.watchers-flags{display:flex;flex-direction:column;gap:var(--space-1)}.watchers-empty{font-size:var(--text-xs);color:var(--text-muted);font-style:italic}.watcher-flag{display:flex;align-items:center;gap:var(--space-3);font-size:var(--text-xs);padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);background:var(--warning-100);color:var(--warning-700)}.watcher-flag-name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.watcher-flag-scope{color:inherit;opacity:.85;margin-left:auto;white-space:nowrap}.watcher-act{border:none;background:transparent;color:inherit;font:inherit;cursor:pointer;padding:0 var(--space-1);border-radius:var(--radius-sm);opacity:.75}.watcher-act:hover{opacity:1;background:var(--warning-200)}.watcher-act.danger:hover{background:var(--danger-100);color:var(--danger-color)}.watcher-fields{display:flex;flex-direction:column;gap:var(--space-5)}.watcher-field{display:flex;flex-direction:column;gap:var(--space-1)}.watcher-field-hint{text-transform:none;letter-spacing:0;font-weight:400;opacity:.85}.watcher-input,.watcher-textarea{box-sizing:border-box;font:inherit}.watcher-textarea{resize:vertical}.watcher-criteria{min-height:4.5em}.watcher-target{display:flex;flex-direction:column;gap:var(--space-3)}.watcher-target-readonly{font-size:var(--text-xs);color:var(--text-muted);font-style:italic;padding:var(--space-2) var(--space-4);border:1px dashed var(--border);border-radius:var(--radius-lg)}.watcher-unit-switch{margin-bottom:0}.watcher-unit-switch:disabled{opacity:.55;cursor:default}.watcher-target-chips{display:flex;flex-wrap:wrap;gap:var(--space-2)}.watcher-target-chips.people{margin-top:var(--space-1)}.watcher-chip{background:var(--neutral-50);cursor:pointer}.watcher-chip:hover:not(:disabled){color:var(--text-primary);background:var(--neutral-200);border-color:var(--primary-500)}.watcher-chip.on{color:var(--neutral-50);background:var(--primary-600);border-color:var(--primary-600)}.watcher-chip.on:hover:not(:disabled){background:var(--primary-700);border-color:var(--primary-700);color:var(--neutral-50)}.watcher-chip:disabled{opacity:.55;cursor:default}.watchers-defined{display:flex;flex-direction:column;gap:var(--space-1)}.watchers-defined-row{display:flex;align-items:center;gap:var(--space-3);font-size:var(--text-xs);padding:var(--space-1) 0}.watchers-defined-enable{display:inline-flex;align-items:center}.watchers-defined-name{font-weight:600;margin-right:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.watchers-system-tag{margin-left:var(--space-3);font-weight:500;font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.needs-strip{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-2) var(--space-3);margin-top:var(--space-3);border:1px dashed var(--neutral-400);border-radius:var(--radius-md)}.needs-strip.clickable{cursor:pointer}.needs-strip.clickable:hover{border-color:var(--primary-500)}.needs-strip.selected{border-color:var(--template-color);background:var(--template-light)}.needs-strip-head{display:flex;align-items:center;gap:var(--space-4)}.needs-strip-name{font-weight:600;font-size:var(--text-sm)}.needs-strip-sub{min-width:0;font-size:var(--text-xs);color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.needs-strip-toggle{margin-left:auto;display:inline-flex;align-items:center}.watcher-card{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-5);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--neutral-100)}.watcher-card.collapsible:not(.open){gap:0}.watcher-card-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.watcher-card-title{display:flex;align-items:center;gap:var(--space-3);font-weight:600;flex:1;min-width:0}.watcher-card-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.watcher-twirl{color:var(--text-muted);display:inline-flex;align-items:center}.watcher-twirl:hover{color:var(--text-primary)}.watcher-twirl svg{width:14px;height:14px;transition:transform .15s ease;transform:rotate(-90deg)}.watcher-card.open .watcher-twirl svg{transform:rotate(0)}.watcher-status{width:8px;height:8px;border-radius:50%;background:var(--neutral-400)}.watcher-status.enabled{background:var(--success-vivid)}.watcher-card-actions{display:flex;align-items:center;gap:var(--space-5)}.watcher-enabled{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs)}.authoring-watchers.split{--split: 300px}.watchers-roster-pane,.watchers-detail-pane{min-height:0;overflow-y:auto;padding:var(--space-4)}.watchers-detail-inner{max-width:640px}.watcher-create{display:flex;flex-direction:column;gap:var(--space-4)}.watcher-save{align-self:flex-start}.watchers-roster{display:flex;flex-direction:column;gap:var(--space-2)}.watcher-row{display:flex;align-items:center;gap:var(--space-4);width:100%;text-align:left;font:inherit;color:var(--neutral-900);background:var(--neutral-50);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);cursor:pointer}.watcher-row:hover{background:var(--primary-50);border-color:var(--primary-500)}.watcher-row.selected{background:var(--template-light);border-color:var(--template-color)}.watcher-row-body{display:flex;flex-direction:column;gap:1px;min-width:0;margin-right:auto}.watcher-row-name{display:flex;align-items:center;gap:var(--space-3);font-weight:600;font-size:var(--text-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.watcher-row-sub{font-size:var(--text-xs);color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.watcher-row-del{opacity:0}.watcher-row:hover .watcher-row-del,.watcher-row.selected .watcher-row-del{opacity:.75}.watchers-needs-detail{display:flex;flex-direction:column;gap:var(--space-4)}.watchers-needs-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.watcher-editor{display:flex;flex-direction:column;gap:var(--space-4)}.watchers-defined-row.read-only .watcher-act.danger,.watcher-card.read-only .watcher-act.danger,.watcher-row.read-only .watcher-row-del{display:none}.moment-rail{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:var(--space-3);align-items:center;min-height:34px;flex:0 1 auto;margin-right:auto;min-width:0}.moment-group{display:flex;flex-wrap:nowrap;align-items:center;gap:var(--space-3);min-width:0}.moment-group:not(.pinned){flex:1 1 auto}.moment-group.pinned{flex:0 1 auto}.moment-sep{align-self:stretch;width:1px;flex:none;background:var(--border-color)}.stage.is-map .moment-card{pointer-events:auto}.moment-card{display:inline-flex;align-items:center;gap:7px;padding:3px 8px 3px 4px;border-radius:var(--radius-lg);border:1px solid var(--border-color);border-left-width:3px;background:var(--surface-1);box-shadow:var(--shadow-sm);color:var(--text-primary);cursor:pointer;font-size:var(--text-sm);max-width:340px;height:44px;box-sizing:border-box;-webkit-user-select:none;user-select:none}.moment-card:hover{background:var(--primary-100)}.moment-card.taken{outline:2px solid var(--stage-attention);outline-offset:-1px}.moment-card.arrival{border-left-color:var(--success-color)}.moment-card.noshow{border-left-color:var(--neutral-500)}.moment-card.flag{border-left-color:var(--warning-color)}.moment-card.needs{border-left-color:var(--primary-500)}.moment-card.pinned{border-left-color:var(--accent-color)}.moment-pin{flex:none;font-size:var(--text-sm);color:var(--accent-color)}.moment-body{display:inline-flex;flex-direction:column;min-width:0}.moment-card .stage-marker-row{margin-left:0;flex:none}.moment-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:600}.moment-detail{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-muted);font-size:var(--text-xs)}.moment-age{color:var(--text-muted);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.moment-x{color:var(--text-muted);font-size:var(--text-base);padding:0 var(--space-1);line-height:1}.moment-x:hover{background:transparent;color:var(--text-primary)}.moment-overflow{color:var(--text-muted);font-size:var(--text-xs);padding:0 var(--space-2)}.moment-card.starving{border-left-color:var(--warning-color)}.stage-group-body{display:flex;flex-direction:column;gap:var(--space-4)}.stage-group-meta{font-size:var(--text-xs);color:var(--text-muted)}.stage-group-summary{font-size:var(--text-sm);line-height:1.4;color:var(--text-primary)}.stage-group-summary .muted{font-style:italic;color:var(--text-muted)}.stage-group-flags{display:flex;flex-direction:column;gap:var(--space-2)}.stage-group-roster{display:flex;flex-direction:column;gap:2px}.stage-group-roster .stage-row{margin:0}.stage-triggers{display:flex;flex-direction:column;gap:var(--space-3)}.stage-triggers-empty{font-size:var(--text-sm);color:var(--text-muted);line-height:1.4;padding:var(--space-1) 0}.st-pinned{display:flex;flex-direction:column;gap:6px;padding:var(--space-3);border-radius:var(--radius-lg);background:var(--surface-2)}.st-pinned-head{display:flex;align-items:baseline;gap:var(--space-2)}.st-pinned-name{font-weight:600;font-size:var(--text-base)}.st-pinned-kind{color:var(--text-muted)}.st-empty{font-size:var(--text-xs);color:var(--text-muted)}.st-add{align-self:flex-start}.st-group{display:flex;flex-direction:column;gap:6px}.st-group-head{display:flex;align-items:center;gap:var(--space-2);padding:2px 0;color:var(--text-primary);text-align:left}.st-group-head.static{cursor:default}.st-group-chevron{width:12px;height:12px;flex-shrink:0;transition:transform .15s ease}.st-group.collapsed .st-group-chevron{transform:rotate(-90deg)}.st-group-name{font-weight:600;font-size:var(--text-sm)}.st-group-count{font-size:var(--text-xs);color:var(--text-muted);font-variant-numeric:tabular-nums}.st-orphans .st-group-name{color:var(--text-secondary)}.st-newtrigger{align-self:flex-start;width:auto;max-width:100%}.element-triggers{margin-top:10px;padding-top:10px;border-top:1px solid var(--neutral-300, #d0d0d0);display:flex;flex-direction:column;gap:6px}.element-triggers-title{font-size:.78rem;font-weight:600;color:var(--text-2, #555)}.element-triggers-empty{font-size:.76rem;color:var(--text-3, #888)}.et-row{border:1px solid var(--neutral-300, #d0d0d0);border-radius:6px;background:var(--surface-1, var(--background, #fff))}.et-row.disabled{opacity:.55}.et-row.expanded{border-color:var(--cue-color, #e08a00)}.et-summary{display:flex;align-items:center;gap:6px;padding:5px 8px;cursor:pointer;font-size:.8rem}.et-kind{flex:none;width:auto;font-size:.74rem;padding:2px 4px;border:1px solid var(--neutral-300, #d0d0d0);border-radius:4px;background:var(--surface-1, var(--background, #fff));color:inherit}.et-arrow{opacity:.5}.et-cue{font-weight:500;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.et-cue.missing{color:var(--danger-color, #c0392b)}.et-enabled{margin-left:auto}.et-delete{--button-hover-bg: var(--danger-light);flex:none;border:none;background:transparent;color:var(--text-3, #888);font-size:1rem;line-height:1;padding:0 2px;cursor:pointer;border-radius:4px}.et-delete:hover{color:var(--danger-color, #c0392b)}.element-triggers-add{align-self:flex-start;border:1px dashed var(--neutral-400, #b0b0b0);color:var(--text-2, #555)}.et-row .trigger-fields{padding:6px 8px 8px;border-top:1px solid var(--neutral-200, #e6e6e6);display:flex;flex-direction:column;gap:7px}.et-row .trigger-field{display:flex;align-items:center;gap:8px;font-size:.8rem}.et-row .trigger-field>span:first-child{min-width:58px;color:var(--text-2, #555)}.et-row .trigger-field select,.et-row .trigger-field input[type=number]{padding:3px 6px;border:1px solid var(--neutral-300, #d0d0d0);border-radius:4px;background:var(--surface-1, var(--background, #fff));color:inherit}.et-row .trigger-cooldown{width:62px}[data-theme=dark] .et-row{background:var(--neutral-100)}.map-surface-wrap{position:relative;flex:1 1 auto;min-height:0;display:flex}.map-surface{flex:1 1 auto;width:100%;min-height:0;touch-action:none;cursor:grab}.map-surface.map-drawing{cursor:crosshair}.map-surface text{user-select:none;-webkit-user-select:none}body.map-panning,body.map-panning *{cursor:grabbing!important;user-select:none!important;-webkit-user-select:none!important}.map-grid-dot{fill:#0f172a6b}.map-grid-line{stroke:#0f172a52;stroke-width:.02}[data-theme=dark] .map-grid-dot{fill:#e2e8f057}[data-theme=dark] .map-grid-line{stroke:#e2e8f042}[data-theme=dark] .map-surface-bg{filter:invert(.92) hue-rotate(180deg)}.map-zoom-ctl{position:absolute;right:8px;bottom:8px;display:flex;flex-direction:row;gap:3px;opacity:.3;transition:opacity .15s ease}.map-surface-wrap:hover .map-zoom-ctl,.map-zoom-ctl:focus-within{opacity:1}.map-zoom-btn{width:26px;height:26px;padding:0;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--neutral-300);border-radius:6px;background:var(--neutral-50);color:var(--neutral-700);cursor:pointer;font-size:1em;line-height:1}.map-zoom-btn:hover{background:var(--neutral-200)}.map-zoom-btn.frame svg{width:.82em;height:.82em}.map-zoom-btn:disabled{opacity:.4;cursor:default}.stage-feed{display:flex;flex-direction:column;gap:2px;overflow-y:auto;min-height:0;flex:1 1 auto}.stage-feed-empty{font-size:var(--text-sm);color:var(--text-muted);font-style:italic}.stage-feed-line{display:grid;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;column-gap:var(--space-3);padding:var(--space-2) var(--space-3) var(--space-2) var(--space-2);border-radius:var(--radius-md);color:var(--text-primary);text-align:left;cursor:pointer;-webkit-user-select:none;user-select:none}.stage-feed-line:hover{background:var(--surface-2)}.stage-feed-line.gone{cursor:default;opacity:.7}.stage-feed-line.gone:hover{background:transparent}.stage-feed-line .stage-marker{grid-column:1;grid-row:1 / span 2;align-self:start;margin-top:1px}.stage-feed-who{grid-column:2;grid-row:1;font-size:var(--text-sm);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stage-feed-age{grid-column:3;grid-row:1 / span 2;align-self:start;font-size:var(--text-xs);color:var(--text-muted);font-variant-numeric:tabular-nums;padding-top:2px}.stage-feed-text{grid-column:2;grid-row:2;font-size:var(--text-sm);line-height:1.35;color:var(--text-secondary);font-style:italic;overflow-wrap:anywhere}.cmdk-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;align-items:flex-start;justify-content:center;padding:12vh var(--space-8) var(--space-8);background:#00000047}.cmdk{width:min(560px,92vw);max-height:60vh;display:flex;flex-direction:column;overflow:hidden}.cmdk-input{border:none;border-bottom:1px solid var(--border-color);background:transparent;padding:var(--space-8) var(--space-8);font-size:var(--text-lg)}.cmdk-results{overflow-y:auto;padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-1)}.cmdk-hint,.cmdk-empty{padding:var(--space-5) var(--space-6);color:var(--text-muted);font-size:var(--text-sm)}.cmdk-row{display:flex;align-items:center;gap:var(--space-4);width:100%;padding:var(--space-4) var(--space-6);text-align:left;border:none;border-radius:var(--radius-md);background:transparent;cursor:pointer;--button-hover-bg: var(--primary-100);color:var(--text-primary)}.cmdk-row.active,.cmdk-row:hover{background:var(--primary-100)}.cmdk-row-label{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cmdk-row-sub{color:var(--text-muted);font-size:var(--text-xs);text-transform:capitalize}.cmdk-row-count{padding:0 6px;color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:var(--text-xs)}.dock-section{display:flex;flex-direction:column}.dock-section+.dock-section{border-top:1px solid var(--border-color)}.dock-head{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4)}.dock-toggle{display:flex;align-items:center;gap:var(--space-3);flex:1;min-width:0;color:var(--text-primary);text-align:left}.dock-toggle:disabled{cursor:default;opacity:.6}.dock-toggle:hover:not(:disabled) .dock-title{color:var(--text-primary)}.dock-chevron{width:14px;height:14px;flex-shrink:0;margin-left:auto;color:var(--text-muted);transition:transform .15s ease}.dock-section.collapsed .dock-chevron{transform:rotate(-90deg)}.dock-dot{width:8px;height:8px;border-radius:var(--radius-full);flex-shrink:0}.dock-title{color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dock-section.expanded .dock-title{color:var(--text-primary)}.dock-section--subject .dock-title,.dock-section--group .dock-title{text-transform:none;letter-spacing:0;font-size:var(--text-sm)}.dock-subtitle{font-size:var(--text-xs);color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dock-close{color:var(--text-muted);font-size:var(--text-lg);line-height:1}.dock-close:hover{color:var(--text-primary)}.dock-locate{color:var(--text-muted);line-height:1}.dock-locate svg{width:16px;height:16px}.dock-locate:hover{color:var(--text-primary)}.dock-body{display:flex;flex-direction:column;gap:var(--space-4);padding:0 var(--space-4) var(--space-4)}.dock-section.collapsed .dock-body{display:none}.stage-flank{display:flex;flex-direction:column;min-height:0;overflow-y:auto;box-sizing:border-box}.stage-flank-right{flex:0 0 auto;width:44px;align-self:flex-start;max-height:100%;transition:width .16s ease}.stage-flank-right.expanded{width:clamp(272px,30vw,384px)}.stage-flank-left{flex:0 0 auto;width:clamp(248px,27vw,360px);align-self:flex-start;max-height:100%;transition:width .16s ease}.stage-flank-left:not(.expanded){width:auto;overflow:hidden}.stage-flank-right .send-kind-selector .kind-tab{padding:var(--space-1) var(--space-2)}.stage-flank-right:not(.expanded) .dock-head{flex-direction:column;padding:var(--space-3) var(--space-1)}.stage-flank-right:not(.expanded) .dock-toggle{flex-direction:column;gap:var(--space-2)}.stage-flank-right:not(.expanded) .dock-title{writing-mode:vertical-rl}.stage-flank-right:not(.expanded) .dock-chevron{margin-left:0}.stage-flank-right:not(.expanded) .dock-close,.stage-flank-right:not(.expanded) .dock-head>*:not(.dock-toggle){display:none}.stage.is-map .stage-flank-left{justify-self:start;align-self:start;max-height:100%;z-index:1;pointer-events:auto;margin:var(--space-4) 0 var(--space-4) var(--space-4)}.stage.is-map .stage-flank-right{justify-self:end;align-self:start;max-height:100%;z-index:1;pointer-events:auto;margin:var(--space-4) var(--space-4) var(--space-4) 0}.sve{position:relative;height:100%;display:flex;min-height:0}.sve-svg{flex:1;min-height:0;background:var(--surface-2);border:1px solid var(--border-color);border-radius:8px}.sve-editable{cursor:move}.map-drawing .smap-room,.map-drawing .smap-zone{cursor:crosshair}.sve-toolbar{position:absolute;top:12px;left:12px;z-index:calc(var(--z-base) + 6);display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;padding:var(--space-2) var(--space-3);border-radius:var(--radius-xl);border:1px solid var(--border-color);background:var(--stage-glass, var(--neutral-100));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.sve-edit-tool{text-transform:capitalize}.sve-edit-tool:hover{background:var(--primary-100)}.sve-edit-tool.on{background:var(--primary-500);color:var(--neutral-50);border-color:var(--primary-500)}.sve-edit-tool:disabled{opacity:.5;cursor:default}.sve-units{display:flex;gap:var(--space-2);padding-left:var(--space-3);border-left:1px solid var(--border-color)}.sve-promote{margin-left:var(--space-3);padding:3px 12px;border-radius:var(--radius-lg);cursor:pointer;font-size:var(--text-xs);border:1px solid var(--success-color);background:transparent;color:var(--success-color)}.sve-promote:hover{background:var(--success-100)}.sve-promote:disabled{opacity:.5;cursor:default}.sve-clear{padding:3px 12px;border-radius:var(--radius-lg);cursor:pointer;font-size:var(--text-xs);border:1px solid var(--danger-color);background:transparent;color:var(--danger-color)}.sve-clear:hover{background:var(--danger-100)}.sve-clear:disabled{opacity:.5;cursor:default}.sve-offline{margin-left:var(--space-3);font-size:var(--text-xs);color:var(--warning-color)}.sve-edit-inspector{position:absolute;right:12px;top:12px;z-index:calc(var(--z-base) + 6);width:200px;display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--border-color);border-radius:var(--radius-xl);background:var(--stage-glass, var(--neutral-100));-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:var(--shadow-lg)}.sve-ei-title{font-weight:600;font-size:var(--text-xs);text-transform:capitalize}.sve-ei-size{font-size:var(--text-xs);color:var(--neutral-500)}.sve-edit-inspector label{display:flex;flex-direction:column;gap:var(--space-1);font-size:var(--text-xs);color:var(--neutral-600)}.sve-edit-inspector input,.sve-edit-inspector select{padding:3px 6px;border-radius:var(--radius-lg);color:var(--neutral-900)}.sve-ei-dup{align-self:flex-start;padding:var(--space-1) var(--space-5);border-radius:var(--radius-lg);font-size:var(--text-xs);cursor:pointer;border:1px solid var(--border-color);background:var(--neutral-50);color:var(--neutral-800)}.sve-ei-dup:hover{background:var(--primary-100)}.sve-ei-dup:disabled,.sve-ei-delete:disabled{opacity:.5;cursor:default}.sve-ei-delete{align-self:flex-start;padding:var(--space-1) var(--space-5);border-radius:var(--radius-lg);font-size:var(--text-xs);cursor:pointer;border:1px solid var(--danger-color);background:transparent;color:var(--danger-color);text-transform:capitalize}.sve-ei-delete:hover{background:var(--danger-light)}.sve-people-dim{opacity:.25}.sve-dot{fill:var(--neutral-500)}.ops{display:flex;flex-direction:column;gap:var(--space-6);padding:var(--space-6);height:100%;overflow-y:auto;box-sizing:border-box}.ops-tiles{display:flex;gap:var(--space-5);flex-wrap:wrap}.ops-tile{min-width:96px;padding:var(--space-4) var(--space-6);border-radius:var(--radius-xl);background:var(--surface-2);border:1px solid var(--border);text-align:center}.ops-tile.alarm{border-color:var(--danger-color)}.ops-tile-value{font-size:var(--text-xl);font-weight:800}.ops-tile.alarm .ops-tile-value{color:var(--danger-color)}.ops-held{display:flex;align-items:center;gap:var(--space-6);padding:var(--space-4) var(--space-6);border-radius:var(--radius-xl);border:1px solid var(--danger-color);background:var(--surface-2);font-size:var(--text-sm)}.ops-section{display:flex;flex-direction:column;gap:var(--space-3)}.ops-empty{color:var(--text-muted);font-size:var(--text-xs)}.ops-rows{display:flex;flex-direction:column;gap:var(--space-2)}.ops-row{display:flex;align-items:center;gap:var(--space-5);padding:var(--space-2) var(--space-5);border-radius:var(--radius-xl);background:var(--surface-2);border:1px solid var(--border);border-left-width:3px;font-size:var(--text-xs)}.ops-row.alarm{border-left-color:var(--danger-color)}.ops-clock{color:var(--text-muted);font-variant-numeric:tabular-nums}.ops-name{font-weight:600}.ops-meta{color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.ops-outcome{font-weight:700}.ops-outcome.failed{color:var(--danger-color)}.ops-outcome.partial{color:var(--warning-500)}.ops-outcome.ok{color:var(--success-500)}.ops-act:hover{background:var(--primary-100)}.ops-act.danger:hover{background:var(--danger-color);color:var(--on-accent)}.log-view{display:flex;flex-direction:column;height:100%;gap:var(--space-3);box-sizing:border-box;min-height:0}.log-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);padding:var(--space-3)}.log-scope-toggle{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-secondary);white-space:nowrap}.log-scope-toggle input{width:auto}.log-levels{display:flex;gap:var(--space-1);flex-wrap:wrap}.log-level-pill{padding:var(--space-1) var(--space-3);font-size:var(--text-xs);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:.03em;background:transparent;border:var(--border-width) solid currentColor;border-radius:var(--radius-full);cursor:pointer;line-height:1.2}.log-level-pill.on{color:var(--neutral-50)}.log-level-trace{color:var(--text-muted)}.log-level-trace.on{background:var(--text-muted);border-color:var(--text-muted)}.log-level-debug{color:var(--group-color)}.log-level-debug.on{background:var(--group-color);border-color:var(--group-color)}.log-level-info{color:var(--success-color)}.log-level-info.on{background:var(--success-color);border-color:var(--success-color)}.log-level-warn{color:var(--warning-color)}.log-level-warn.on{background:var(--warning-color);border-color:var(--warning-color)}.log-level-error{color:var(--danger-color)}.log-level-error.on{background:var(--danger-color);border-color:var(--danger-color)}.log-level-fatal{color:var(--danger-color)}.log-level-fatal.on{background:var(--danger-hover);border-color:var(--danger-hover)}.log-level-pill:not(.on):hover:not(:disabled){background:var(--neutral-100)}.log-level-pill.on:hover:not(:disabled){filter:brightness(1.12)}.log-action:hover:not(:disabled){background:var(--neutral-100);border-color:var(--accent-color);color:var(--text-primary)}.log-action.on:hover:not(:disabled){background:var(--success-color);color:var(--neutral-50);filter:brightness(1.08)}.log-search{flex:1 1 160px;min-width:120px;max-width:280px;padding:var(--space-2) var(--space-3);font-size:var(--text-sm)}.log-wire-level,.log-follow-user{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--text-muted)}.log-wire-level select{width:auto;padding:var(--space-1) var(--space-2);font-size:var(--text-xs);max-width:140px}.log-user-combo{position:relative;display:inline-block}.log-user-combo input{width:120px;padding:var(--space-1) var(--space-2);font-size:var(--text-xs)}.log-user-list{position:absolute;z-index:5;top:calc(100% + 2px);left:0;margin:0;min-width:150px;max-height:240px;overflow-y:auto;list-style:none;padding:var(--space-1);background:var(--neutral-50);border:var(--border-width) solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-md)}.log-user-list li{list-style:none}.log-user-list li button{display:block;width:100%;text-align:left;padding:var(--space-1) var(--space-2);font-size:var(--text-xs);font-family:var(--font-sans);color:var(--text-primary);background:transparent;border:none;border-radius:var(--radius-sm)}.log-user-list li button:hover{background:var(--neutral-100)}.log-user-empty{padding:var(--space-1) var(--space-2);font-size:var(--text-xs);color:var(--text-muted)}.log-actions{display:flex;gap:var(--space-2);margin-left:auto}.log-action.on{color:var(--neutral-50);background:var(--success-color);border-color:var(--success-color)}.log-action.danger{color:var(--danger-color);border-color:var(--danger-color);background:transparent}.log-action.danger:hover:not(:disabled){color:var(--neutral-50);background:var(--danger-color)}.log-chips{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);padding:0 var(--space-1)}.log-chip-kind{text-transform:uppercase;font-weight:var(--font-bold);color:var(--text-muted);font-size:var(--text-xs);letter-spacing:.04em}.log-chip-label{color:var(--text-primary);font-weight:var(--font-medium)}.log-chip-run{border-color:var(--cue-color)}.log-chip-user{border-color:var(--user-color)}.log-chip-context{border-color:var(--group-color)}.log-chip-evt{border-color:var(--template-color)}.log-chip-x{padding:0;width:1.1rem;height:1.1rem;min-width:0;font-size:var(--text-xs);color:var(--text-muted);background:transparent;border:none;border-radius:var(--radius-full)}.log-chip-x:hover{color:var(--danger-color)}.log-chip-error{font-size:var(--text-xs);color:var(--danger-color);padding:var(--space-1) var(--space-2)}.log-stream{flex:1;min-height:0;overflow-y:auto;font-family:var(--font-mono);font-size:var(--text-xs)}.log-row{display:grid;grid-template-columns:78px 64px minmax(110px,220px) minmax(110px,200px) 1fr;gap:var(--space-3);align-items:baseline;padding:var(--space-2) var(--space-3);border-bottom:var(--border-width) solid var(--border-color)}.log-row-head{position:sticky;top:0;z-index:1;background:var(--neutral-100)}.log-entry{border-left:3px solid transparent}.log-entry.log-level-warn{border-left-color:var(--warning-color)}.log-entry.log-level-error,.log-entry.log-level-fatal{border-left-color:var(--danger-color)}.log-entry .log-row{cursor:default;border-bottom:var(--border-width) solid var(--border-color)}.log-entry:hover{background:var(--neutral-100)}.log-col-time{color:var(--text-muted);white-space:nowrap}.log-col-msg{color:var(--text-primary);word-break:break-word;position:relative}.log-expand{color:var(--text-muted);margin-right:var(--space-2);cursor:pointer}.log-pill{font-family:var(--font-mono);max-width:100%;overflow:hidden;text-overflow:ellipsis}.log-pill:hover{border-color:var(--accent-color);color:var(--accent-color);background:var(--neutral-100)}.log-pill-sm{margin-left:var(--space-1);font-size:.62rem;padding:0 var(--space-1)}.log-copy{margin-left:var(--space-2);padding:0 var(--space-1);min-width:0;font-size:var(--text-xs);color:var(--text-muted);background:transparent;border:none;opacity:0}.log-entry:hover .log-copy{opacity:1}.log-copy:hover{color:var(--accent-color)}.log-fields{gap:var(--space-2) var(--space-4);padding:var(--space-2) var(--space-3) var(--space-3) calc(78px + var(--space-3));background:var(--neutral-100);border-bottom:var(--border-width) solid var(--border-color)}.log-field{display:flex;gap:var(--space-2);align-items:baseline;font-size:var(--text-xs)}.log-field-key{color:var(--text-muted);font-weight:var(--font-semibold);min-width:70px;flex-shrink:0}.log-field-val{color:var(--text-primary);overflow-wrap:anywhere}.log-field-wide{grid-column:1 / -1;align-items:stretch}.log-field-pre{flex:1;min-width:0;margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font-family:var(--font-mono);font-size:var(--text-xs);line-height:1.45;color:var(--text-primary);background:var(--neutral-50);border:var(--border-width) solid var(--border-color);border-radius:var(--radius-sm);padding:var(--space-2);max-height:320px;overflow:auto}.log-field-link{padding:0 var(--space-2);min-width:0;font-size:var(--text-xs);font-family:var(--font-mono);color:var(--accent-color);background:transparent;border:var(--border-width) solid var(--accent-color);border-radius:var(--radius-sm)}.log-field-link:hover{color:var(--neutral-50);background:var(--accent-color)}.log-empty{color:var(--text-muted);font-size:var(--text-sm);padding:var(--space-6);text-align:center;font-family:var(--font-sans)}.log-health{flex:1;min-height:0;overflow:auto}.log-health-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.log-health-table th{position:sticky;top:0;text-align:left;padding:var(--space-3);background:var(--neutral-100);color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;font-size:var(--text-xs);font-weight:var(--font-bold);border-bottom:var(--border-width) solid var(--border-color)}.log-health-table td{padding:var(--space-3);border-bottom:var(--border-width) solid var(--border-color);color:var(--text-primary);vertical-align:middle}.log-health-table tr:hover td{background:var(--neutral-100)}.log-mono{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-secondary)}.log-pending{color:var(--warning-color);font-weight:var(--font-bold)}.log-fail{color:var(--danger-color);font-weight:var(--font-semibold);display:inline-flex;align-items:center;gap:var(--space-1);flex-wrap:wrap}.log-run-stuck td,.log-run-timeout td{background:var(--warning-light)}.log-health-empty{color:var(--text-muted);text-align:center;padding:var(--space-6)}.users-container{height:100%;overflow:hidden;display:flex;flex-direction:column;background:var(--app-background);border-radius:var(--radius-xl);padding:var(--space-4)}.users{--card-min: 340px;--card-pane: 36vh;align-items:start;overflow-y:auto;max-height:100%;padding:var(--space-2)}.users .user-view-tab-content{height:var(--card-pane);max-height:none;overflow-y:auto}.users .user-view-tab-content.active[data-tab=transcript]{display:flex;flex-direction:column;overflow:visible}.users .user-view-tab-content[data-tab=transcript] .transcript-wrap{flex:1;min-height:0}.users .user-view-tab-content[data-tab=transcript] .transcript{flex:1 1 0;min-height:0;max-height:none}.users .user-view-tab-content.active:is([data-tab=vars],[data-tab=story]){display:flex;flex-direction:column;overflow:hidden}.users .user-view-tab-content.active[data-tab=vars]:has(.vars-add-form){overflow:visible}.users .user-view-tab-content[data-tab=vars] .vars-editor{flex:1 1 0;min-height:0}.users .user-view-tab-content[data-tab=vars] .vars-scroll{flex:1 1 0;min-height:0;overflow-y:auto;padding-right:var(--space-3)}.users .user-view-tab-content[data-tab=story] .story-pane{flex:1 1 0;min-height:0;max-height:none;overflow-y:auto}.users .user-view-tab-content.active[data-tab=comms]{display:flex;flex-direction:column;overflow:hidden}.users .user-view-tab-content[data-tab=comms] .stage-person-comms{flex:1;min-height:0}.users .user-view-tab-content[data-tab=comms] .comms-stream{flex:1 1 0;min-height:0;max-height:none}.filter-label{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--neutral-700);text-transform:uppercase;letter-spacing:.025em}.filter-input{padding:var(--space-3);border:1px solid var(--neutral-300);transition:var(--transition-paint-fast)}.filter-input::placeholder{color:var(--neutral-500)}.no-users-message{grid-column:1 / -1;text-align:center;padding:var(--space-8);color:var(--neutral-600);font-style:italic;font-size:var(--text-base);background-color:var(--neutral-50);border:2px dashed var(--neutral-300);border-radius:var(--radius-lg)}.subtitle{font-size:var(--text-base);font-weight:var(--font-medium);color:var(--neutral-700)}.users-facet-select{padding:var(--space-2) var(--space-3);border:1px solid var(--neutral-300);max-width:12rem}.show-audio-slot{display:inline-flex;align-items:center;gap:var(--space-1)}.show-audio-mute,.show-audio-name,.show-audio-ear{display:inline-flex;align-items:center;gap:var(--space-1);height:1.7rem;padding:0 var(--space-2);background:none;border:1px solid transparent;border-radius:6px;color:var(--neutral-600);font-size:var(--text-sm);font-weight:var(--font-medium);white-space:nowrap;cursor:pointer;--button-hover-bg: var(--neutral-200);--button-hover-border: transparent}.show-audio-mute{padding:0 var(--space-1)}.show-audio-mute.on{color:var(--success-vivid)}.show-audio-mute.muted,.show-audio-name.muted{color:var(--text-muted)}.show-audio-ear{gap:var(--space-2);color:var(--success-vivid);border-color:var(--success-vivid);background:color-mix(in srgb,var(--success-vivid) 12%,transparent);--button-hover-bg: color-mix(in srgb, var(--success-vivid) 20%, transparent);--button-hover-border: var(--success-vivid)}.show-audio-ear.muted{color:var(--text-muted);border-color:var(--border-color);background:none;--button-hover-bg: var(--neutral-200);--button-hover-border: var(--border-color)}.show-audio-ear.muted .show-audio-label{color:var(--text-muted)}.show-audio-ear .show-audio-label{color:var(--text-primary);font-weight:var(--font-semibold)}.show-audio-ear.away{color:var(--warning-color);border-color:var(--warning-color);background:color-mix(in srgb,var(--warning-color) 12%,transparent);--button-hover-bg: color-mix(in srgb, var(--warning-color) 20%, transparent);--button-hover-border: var(--warning-color)}.show-audio-away{color:var(--warning-color);font-size:var(--text-sm)}.show-audio-stop{color:var(--text-muted);font-size:var(--text-base);line-height:1}.show-audio-ear:hover .show-audio-stop{color:var(--text-primary)}.show-audio-slot svg{width:14px;height:14px}.dev-drawer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:var(--z-modal, 500);display:flex;justify-content:flex-start}.dev-drawer{width:min(700px,96vw);height:100%;background:var(--neutral-50, #fff);border-right:1px solid var(--border-color, #ddd);box-shadow:4px 0 24px #0003;display:flex;flex-direction:column}.dev-drawer-head{padding:var(--space-4, 16px);flex:none}.dev-drawer-head h2{display:flex;align-items:center;gap:var(--space-2, 8px);margin:0;font-size:1.1rem}.dev-drawer-close{background:none;border:none;font-size:1.5rem;line-height:1;cursor:pointer;color:var(--neutral-600, #666);padding:0 var(--space-2, 8px)}.dev-body{display:flex;flex:1;min-height:0}.dev-rail{width:150px;flex:none;border-right:1px solid var(--border-color, #ddd);display:flex;flex-direction:column;gap:2px;padding:var(--space-2, 8px)}.dev-rail-item{display:flex;align-items:center;gap:6px;text-align:left;background:transparent;border:none;border-radius:var(--radius-md, 6px);padding:8px 10px;cursor:pointer;font-size:.85rem;color:inherit}.dev-rail-item.on{background:var(--primary-600, #2563eb);color:var(--on-accent)}.dev-content{flex:1;min-width:0;overflow-y:auto;padding:var(--space-3, 12px);display:flex;flex-direction:column;gap:var(--space-3, 12px)}.dev-pane{display:flex;flex-direction:column;gap:var(--space-3, 12px)}.dev-warn{margin:0;color:var(--warning-600, #b45309);font-size:.85rem}.dev-section{border:1px solid var(--border-color, #ddd);border-radius:var(--radius-md, 8px);padding:var(--space-3, 12px);margin:0;display:flex;flex-direction:column;gap:var(--space-2, 8px)}.dev-section:disabled,.dev-section[disabled]{opacity:.5}.dev-section legend{font-weight:600;font-size:.85rem;padding:0 var(--space-2, 8px)}.dev-empty{color:var(--neutral-600, #888);font-size:.8rem;margin:4px 0}.dev-hint{margin:0 0 2px;font-size:.76rem;color:var(--neutral-600, #777)}.dev-counters{display:flex;flex-wrap:wrap;gap:8px;font-size:.78rem;color:var(--neutral-600, #555)}.dev-danger-zone{border-color:var(--danger-400, #f87171)}.dev-danger-zone legend{color:var(--danger-600, #dc2626)}.dev-danger-row{display:flex;align-items:center;gap:var(--space-3, 12px);padding:8px 0}.dev-danger-row+.dev-danger-row{border-top:1px solid var(--border-color, #eee)}.dev-danger-text{flex:1;min-width:0}.dev-danger-title{font-weight:600;font-size:.85rem}.dev-danger-zone .dev-danger{flex:none;white-space:nowrap}.dev-danger,.dev-rail-item,.dev-drawer-close{--button-hover-bg: transparent;--button-hover-border: var(--border-color, #ccc)}.dev-rail-item:hover:not(.on),.dev-drawer-close:hover{background:var(--neutral-100, #f0f0f0)}.dev-rail-item.on:hover{background:var(--primary-700, #0ca678)}.dev-danger:hover{background:var(--danger-100, #fee2e2)}.dev-cost-table{width:100%;border-collapse:collapse;font-size:.8rem;font-variant-numeric:tabular-nums}.dev-cost-table th,.dev-cost-table td{padding:4px 8px;text-align:right;vertical-align:top}.dev-cost-table th[scope=row],.dev-cost-table thead th:first-child{text-align:left}.dev-cost-table thead th{font-weight:600;color:var(--neutral-600);border-bottom:1px solid var(--border-color)}.dev-cost-table tbody tr.group-start:not(:first-child) th,.dev-cost-table tbody tr.group-start:not(:first-child) td{border-top:1px solid var(--border-color)}.dev-cost-table tfoot th,.dev-cost-table tfoot td{border-top:2px solid var(--border-color);font-weight:600}.dev-cost-source{display:block;font-weight:600}.dev-cost-model{display:block;font-weight:400;font-size:.72rem;color:var(--neutral-600);overflow-wrap:anywhere}.dev-cost-usd{display:block}.dev-cost-usd.muted{opacity:.4}.dev-cost-units{display:block;font-size:.7rem;color:var(--neutral-600);white-space:nowrap}.dev-cost-rates{flex-direction:column;gap:2px}.appearance-settings{height:100%;overflow-y:auto;padding:var(--space-4, 16px);display:flex;flex-direction:column;gap:16px}.appearance-section{max-width:520px;padding:var(--space-4, 16px);display:flex;flex-direction:column;gap:14px}.appearance-title{margin:0 0 2px}.appearance-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.appearance-row-label{font-size:.88em;color:var(--neutral-700)}.appearance-row input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:200px;height:4px;border-radius:2px;background:var(--neutral-200);cursor:pointer}.appearance-row input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:14px;height:14px;border-radius:50%;background:var(--primary-600);cursor:pointer}.appearance-row input[type=range]::-moz-range-track{height:4px;border-radius:2px;background:var(--neutral-200)}.appearance-row input[type=range]::-moz-range-thumb{width:14px;height:14px;border:none;border-radius:50%;background:var(--primary-600);cursor:pointer}.appearance-seg{display:inline-flex;gap:2px;background:var(--neutral-100);border-radius:8px;padding:3px}.appearance-seg-btn{text-transform:capitalize;padding:3px 12px;border:none;border-radius:6px;background:transparent;color:var(--neutral-600);cursor:pointer;font-size:.82em}.appearance-seg-btn:hover{background:var(--neutral-200)}.appearance-seg-btn.on{background:var(--primary-600);color:var(--on-accent)}.appearance-seg-btn.on:hover{background:var(--primary-600)}.appearance-reset{align-self:flex-start;margin-top:4px;padding:4px 12px;border-radius:6px;border:1px solid var(--border-color);background:var(--neutral-50);color:var(--neutral-700);cursor:pointer;font-size:.82em}.appearance-reset:hover{background:var(--neutral-200)}.appearance-hint{margin:2px 0 0;font-size:.76em;line-height:1.35;color:var(--neutral-500)}.add-people-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:var(--z-modal, 500);padding:1.5rem}.add-people-modal{width:min(540px,94vw);max-height:88vh;overflow-y:auto;background:var(--neutral-50);color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--radius-2xl);padding:1.75rem 2rem 2rem;box-shadow:var(--shadow-xl)}.add-people-head h2{margin:0;font-size:var(--text-xl);font-weight:var(--font-bold);color:var(--text-primary)}.add-people-close{background:none;border:none;color:var(--text-muted);font-size:var(--text-2xl);line-height:1;padding:0 .25rem;cursor:pointer}.add-people-close:hover{color:var(--text-primary)}.add-people-tabs{margin-bottom:1.75rem}.add-people-tabs button{flex:1}.add-people-tabs button:not(.active):hover{color:var(--text-primary)}.add-people-pane{display:flex;flex-direction:column;gap:1.5rem}.add-people-sub{margin:0;font-size:var(--text-sm);line-height:1.5;color:var(--text-secondary)}.add-people-warn{margin:0;font-size:var(--text-sm);color:var(--warning-color)}.add-people-error{padding:.625rem .75rem;border-radius:var(--radius-md);background:color-mix(in srgb,var(--danger-color) 12%,transparent);color:var(--danger-color);font-size:var(--text-sm)}.add-people-empty{font-size:var(--text-sm);color:var(--text-muted);padding:.5rem 0}.add-people-field{display:flex;flex-direction:column;gap:.625rem}.add-people-label em{font-style:normal;font-weight:var(--font-normal);text-transform:none;letter-spacing:0;opacity:.8}.add-people-chips{display:flex;flex-wrap:wrap;gap:.5rem}.add-people-chip{cursor:pointer}.add-people-chip:hover{border-color:var(--accent-color-lighter);color:var(--text-primary);background:var(--neutral-100)}.add-people-chip.on{background:var(--accent-color);border-color:var(--accent-color);color:var(--neutral-50)}.add-people-advanced-body{display:flex;flex-direction:column;gap:1.5rem;border-top:1px solid var(--border-color);padding-top:1.25rem}.add-people-actions{display:flex;align-items:center;gap:1.25rem;margin-top:.25rem}.add-people-primary{align-self:flex-start;padding:.5rem 1.1rem}.preregister-form,.preregister-intake,.sim-quick{display:flex;align-items:flex-end;gap:1rem;flex-wrap:wrap}.preregister-form input{flex:1 1 8rem;min-width:6rem}.preregister-form .add-people-primary{flex:0 0 auto}.preregister-intake label,.sim-quick label{display:flex;flex-direction:column;font-size:var(--text-xs);font-weight:var(--font-bold);text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);gap:.4rem;flex:1 1 9rem}.sim-quick label.count-field{flex:0 0 6.5rem}.preregister-list{display:flex;flex-direction:column;gap:.5rem}.preregister-row{display:flex;align-items:center;gap:.75rem;padding:.625rem .75rem;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--neutral-100)}.preregister-name{font-weight:var(--font-semibold);flex:1 1 auto}.preregister-phone{font-size:var(--text-sm);color:var(--text-muted)}.preregister-remove{color:var(--text-muted);font-size:var(--text-lg);line-height:1;padding:0 .25rem}.preregister-remove:hover{color:var(--danger-color)}.add-people-modal .qr-code-tab{padding:0}.add-people-modal .qr-codes-wrapper{gap:1.5rem}.add-people-modal .qr-code-section{min-width:0;max-width:210px}.add-people-modal .qr-code-section h3{font-size:var(--text-base);margin-bottom:.5rem}.add-people-modal .qr-code-container{max-width:190px;margin-bottom:.625rem}.add-people-modal .qr-code-container canvas{max-width:190px}.add-people-modal .qr-code-text{font-size:var(--text-xs)}.sims-panel{display:flex;flex-direction:column;gap:12px;max-width:1200px}.sims-warn{margin:0;color:var(--warning-700);font-size:.85rem}.sims-card{padding:14px;margin:0;display:flex;flex-direction:column;gap:12px;min-width:0}fieldset.sims-card:disabled{opacity:.5}.sims-cols{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:12px;align-items:start}@media (max-width: 1000px){.sims-cols{grid-template-columns:1fr}}.sims-col{display:flex;flex-direction:column;gap:12px;min-width:0}.sims-head{display:flex;align-items:center;gap:10px}.sims-count{font-size:.72rem;font-weight:600}.sims-spacer{flex:1}.sims-flag{font-size:.7rem;font-weight:700;padding:1px 7px;border-radius:999px;white-space:nowrap}.sims-flag.ok,.sims-status.s-connected,.sims-run-banner.ok{color:var(--success-700);background:var(--success-100)}.sims-flag.bad,.sims-status.s-stuck,.sims-status.s-disconnected,.sims-status.s-flapping,.sims-run-banner.bad{color:var(--danger-700);background:var(--danger-100)}.sims-fleet{flex-direction:row;align-items:center;flex-wrap:wrap;gap:12px;padding:10px 14px}.sims-fleet-total{font-size:.82rem;font-weight:600}.sims-brain{display:flex;align-items:center;gap:8px;font-size:.82rem;color:var(--neutral-700)}.sims-brain select,.sims-trow select{padding:3px 8px;font-size:.82rem;width:auto;max-width:60%}.sims-krow,.sims-trow{display:flex;align-items:center;justify-content:space-between;gap:16px}.sims-row-label{font-size:.82rem;color:var(--neutral-700)}.sims-krow input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:190px;height:4px;border-radius:2px;background:var(--neutral-200);cursor:pointer}.sims-krow input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:14px;height:14px;border-radius:50%;background:var(--primary-600);cursor:pointer}.sims-krow input[type=range]::-moz-range-track{height:4px;border-radius:2px;background:var(--neutral-200)}.sims-krow input[type=range]::-moz-range-thumb{width:14px;height:14px;border:none;border-radius:50%;background:var(--primary-600);cursor:pointer}.sims-rule{border:none;border-top:1px solid var(--border-color);margin:0;width:100%}.sims-roster{display:flex;flex-direction:column;max-height:300px;overflow-y:auto}.sims-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto auto auto;align-items:center;gap:8px;font-size:.8rem;padding:5px 0}.sims-char-btn{max-width:130px;overflow:hidden;text-overflow:ellipsis;display:inline-block}.sims-char-dialog{display:flex;flex-direction:column;gap:10px;width:min(440px,94vw)}.sims-char-field{display:flex;flex-direction:column;gap:3px;font-size:.82rem;color:var(--neutral-700)}.sims-char-field input,.sims-char-field textarea,.sims-char-field select{font:inherit;padding:4px 8px}.sims-row+.sims-row{border-top:1px solid var(--neutral-200)}.sims-name{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sims-action{color:var(--neutral-600);font-weight:400}.sims-meta{font-size:.72rem;color:var(--neutral-600);white-space:nowrap}.sims-status{font-size:.7rem;padding:1px 8px;border-radius:999px;background:var(--neutral-100);white-space:nowrap}.sims-actions{display:flex;gap:8px}.sims-hint{margin:0;font-size:.76rem;color:var(--neutral-600)}.sims-primary{padding:8px;border-radius:var(--radius-md)}.sims-primary:disabled{opacity:.55;cursor:default}.sims-run{display:flex;flex-direction:column;gap:6px}.sims-run-banner{font-size:.8rem;font-weight:600;padding:6px 8px;border-radius:var(--radius-md)}.sims-run-cues{display:flex;flex-direction:column;gap:2px;max-height:180px;overflow-y:auto}.sims-run-cue{display:flex;align-items:center;gap:8px;font-size:.76rem;padding:1px 0;font-variant-numeric:tabular-nums}.sims-run-cue .bad{color:var(--danger-600);font-weight:700}.sims-run-cue-name{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sims-run-cue-stat{color:var(--neutral-600)}.sims-empty-card{align-items:center;text-align:center;padding:36px 14px;gap:8px}.sims-empty-title{font-weight:600}.sims-empty-card p{margin:0;color:var(--neutral-600);font-size:.85rem;max-width:46ch}.sims-empty-card .sims-primary{padding:8px 16px;margin-top:4px}.undo-indicator{position:fixed;left:12px;bottom:12px;z-index:50;pointer-events:none;display:inline-flex;align-items:center;gap:4px;padding:3px 7px;border-radius:var(--radius-sm, 6px);font-size:12px;line-height:1;color:var(--text-muted, #8a8a8a);background:color-mix(in srgb,var(--surface, #1c1c1c) 70%,transparent);opacity:.55;-webkit-user-select:none;user-select:none}.undo-indicator-icon{font-size:13px}.undo-indicator-count{font-variant-numeric:tabular-nums}.settings-tab-content{max-width:760px;margin:0 auto;padding:1.5rem 1rem 3rem;display:flex;flex-direction:column;gap:2rem}.settings-section{display:flex;flex-direction:column;gap:.75rem}.settings-section-header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.settings-section-sub{margin:0;font-size:.85rem;opacity:.7}.settings-fields{display:flex;flex-direction:column;gap:1rem}.settings-field{display:flex;flex-direction:column;gap:.3rem}.settings-field-label{font-weight:600;font-size:.9rem}.settings-field-hint{font-size:.78rem;opacity:.6}.settings-input,select.settings-input{box-sizing:border-box}.settings-field .saving-field{display:block;width:100%}.settings-error{padding:.6rem .8rem;border-radius:6px;background:var(--danger-light);color:var(--danger-color);font-size:.85rem}.intake-schema-list{display:flex;flex-direction:column;gap:.5rem}.intake-schema-row{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.intake-schema-row .intake-key,.intake-schema-row .intake-label,.intake-schema-row .intake-options{flex:1 1 9rem;min-width:7rem;width:auto}.intake-schema-row .intake-type{flex:0 0 6rem;width:auto}.intake-schema-row .intake-required{display:flex;align-items:center;gap:.3rem;font-size:.8rem;white-space:nowrap}.intake-schema-row .intake-remove{flex:0 0 auto}.settings-field .var-picker{width:100%}.vars-manager-list{display:flex;flex-direction:column;gap:.35rem}.vars-manager-row{display:flex;align-items:center;gap:.5rem}.vars-manager-name{flex:1 1 8rem;min-width:6rem;font-family:var(--font-mono);font-size:.85rem;overflow-wrap:anywhere}.vars-manager-type{flex:0 0 6rem;width:auto}.vars-manager-tag{flex:0 0 auto;font-size:.7rem;padding:1px 6px;border-radius:8px;color:var(--text-muted);border:1px solid var(--border-color)}.vars-manager-row .intake-remove:disabled{opacity:.35;cursor:not-allowed}.empty-state{font-size:.85rem;opacity:.6;padding:.4rem 0}.settings-readonly-item,.settings-readonly-row{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--border-color, #d1d5db)}.settings-readonly-value{color:var(--text-muted, #6b7280);text-align:right;overflow-wrap:anywhere}.settings-readonly-list{display:flex;flex-direction:column}.model-picker{display:flex;flex-direction:column;gap:8px;width:100%}.model-tier{text-align:left;cursor:pointer;font:inherit;color:var(--text-primary);display:flex;flex-direction:column;gap:7px;border:var(--border-width) solid var(--border-color);border-radius:var(--radius-xl);background:var(--neutral-50);padding:11px 13px;transition:border-color .12s ease,box-shadow .12s ease,background .12s ease;--button-hover-bg: var(--neutral-100);--button-hover-border: var(--accent-color-lighter)}.model-tier.selected{border-color:var(--accent-color);box-shadow:inset 0 0 0 1px var(--accent-color);background:var(--primary-50);--button-hover-bg: var(--primary-100);--button-hover-border: var(--accent-color)}.mt-head{display:flex;align-items:center;justify-content:space-between;gap:6px}.mt-name{font-weight:600;font-size:var(--text-base);line-height:1.2}.mt-badge{font-size:var(--text-xs);font-weight:600;white-space:nowrap;color:var(--accent-color-darker);background:var(--primary-100);padding:1px 7px;border-radius:var(--radius-full)}.model-tier.selected .mt-badge{background:var(--primary-200)}.mt-tagline{margin:0;font-size:var(--text-xs);color:var(--text-muted);line-height:1.4}.mt-star{color:var(--accent-color-darker);font-weight:700}.mt-stats{display:flex;flex-direction:column;gap:3px;margin-top:auto;padding-top:6px}.mt-stat{display:flex;align-items:center;justify-content:space-between;gap:10px}.mt-lbl{font-size:var(--text-xs);color:var(--text-secondary)}.mt-stars{font-size:var(--text-xs);letter-spacing:1.5px;color:var(--neutral-300);line-height:1}.mt-stars .on{color:var(--accent-color)}.mt-cost{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-top:3px;padding-top:6px;border-top:var(--border-width) solid var(--border-color)}.mt-price{font-weight:600;font-size:var(--text-sm);font-variant-numeric:tabular-nums}.mt-latency{font-size:var(--text-xs);color:var(--text-muted);font-variant-numeric:tabular-nums}.mt-rel{font-size:var(--text-xs);color:var(--text-muted);line-height:1.3}.mt-foot{margin:2px 0 0;font-size:var(--text-xs);font-style:italic;color:var(--text-muted)}.mt-foot .mt-star{margin-right:2px}.model-tiers{--card-min: 180px}.about-tab-content{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;max-width:860px;width:100%;margin:0 auto;padding:var(--space-8, 16px)}.about-tab-content .saving-field{display:flex;flex:1 1 auto;min-height:0}.about-editor{flex:1 1 auto;width:100%;min-height:60vh;resize:none;padding:var(--space-10, 20px) var(--space-12, 24px);color:var(--text-primary, #212529);font:inherit;font-size:var(--text-sm, .9rem);line-height:1.55}.about-readonly{white-space:pre-wrap;font-size:var(--text-sm, .9rem);line-height:1.55;color:var(--text-primary, #212529);overflow-y:auto;padding:var(--space-10, 20px) var(--space-12, 24px)}.about-error{color:var(--danger-color);font-size:var(--text-sm, .85rem);margin-bottom:var(--space-2, 8px)}.venue-editor{display:flex;flex-direction:column;gap:8px;height:100%;min-height:0;padding:8px;box-sizing:border-box}.ve-toolbar{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.ve-tool{padding:3px 12px;border-radius:6px;border:1px solid var(--border, #4444);background:var(--surface-1, var(--background));color:var(--text, inherit);cursor:pointer;font-size:.85em;text-transform:capitalize}.ve-tool:hover{background:var(--primary-100, #e6efff)}.ve-tool.active{background:var(--primary-500, #3b82f6);color:var(--on-accent)}.ve-tool.active:hover{background:var(--primary-500, #3b82f6)}.ve-tool.finish{border-color:var(--success-500, #22c55e)}.ve-tool:disabled{opacity:.5;cursor:default}.ve-hint{margin-left:auto;font-size:.8em;color:var(--text-muted, #888)}.ve-body{display:flex;gap:8px;flex:1;min-height:0}.ve-svg{flex:1;min-height:0;background:var(--surface-2, var(--background-secondary));border:1px solid var(--border, #4444);border-radius:8px}.ve-room{fill:var(--map-wall);fill-opacity:.05;stroke:var(--map-wall);stroke-width:.05;cursor:pointer}.ve-room:hover{stroke:var(--primary-400, #60a5fa)}.ve-room.selected{stroke:var(--primary-500, #3b82f6);stroke-width:.12}.ve-zone{fill:var(--map-zone);fill-opacity:var(--map-zone-fill-op);stroke:var(--map-zone);stroke-width:.04;stroke-dasharray:.2 .15;cursor:pointer}.ve-zone:hover{fill-opacity:.16}.ve-zone.selected{stroke:var(--primary-500, #3b82f6);stroke-width:.1;fill-opacity:.22}.ve-shapes{display:flex;align-items:center;gap:6px;padding-left:6px;border-left:1px solid var(--border-color)}.ve-units{margin-left:auto;display:flex;gap:4px}.ve-room.draggable,.ve-zone.draggable{cursor:move}.map-drawing .ve-room,.map-drawing .ve-zone{cursor:crosshair}.ve-size{font-size:.78em;color:var(--neutral-500, #888)}.ve-name-edit input{height:100%;box-sizing:border-box;padding:0 6px;border:1px solid var(--primary-500, #3b82f6);border-radius:6px;font-size:13px;text-align:center;background:var(--neutral-50, #fff);color:var(--neutral-900, #111)}.ve-bg{display:flex;flex-direction:column;gap:6px;padding:8px;border:1px solid var(--border, #4444);border-radius:8px;background:var(--surface-1, var(--background))}.ve-bg-head{font-weight:600;font-size:.82em}.ve-bg-check{flex-direction:row!important;align-items:center;gap:6px!important}.ve-bg-op input[type=range]{width:100%}.ve-bg-actions{display:flex;gap:6px}.ve-bg-btn:hover{background:var(--primary-100, #e6efff)}.ve-bg-btn.upload{align-self:flex-start;border-color:var(--primary-400, #60a5fa)}.ve-inspector{width:240px;flex-shrink:0;display:flex;flex-direction:column;gap:10px;overflow-y:auto}.ve-frame,.ve-selected{display:flex;flex-direction:column;gap:6px;padding:8px;border:1px solid var(--border, #4444);border-radius:8px;background:var(--surface-1, var(--background))}.ve-inspector label{display:flex;flex-direction:column;gap:2px;font-size:.78em;color:var(--text-muted, #888)}.ve-inspector input,.ve-inspector select{padding:3px 6px;border-radius:5px;border:1px solid var(--border, #4444);background:var(--surface-2, var(--background-secondary));color:var(--text, inherit);font-size:.95em}.ve-sel-title{font-weight:600;font-size:.85em;text-transform:capitalize}.ve-counts{font-size:.8em;color:var(--text-muted, #888)}.ve-delete{align-self:flex-start;padding:2px 10px;border-radius:5px;border:1px solid var(--danger-500, #ef4444);background:transparent;color:var(--danger-500, #ef4444);cursor:pointer;font-size:.82em}.ve-delete:hover{background:var(--danger-100, #fee2e2)}.ve-actions{margin-top:auto;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.ve-status{width:100%;font-size:.78em;color:var(--text-muted, #888)}.ve-cancel{padding:4px 12px;border-radius:6px;border:1px solid var(--border, #4444);background:var(--surface-1, var(--background));color:var(--text, inherit);cursor:pointer}.ve-cancel:hover{background:var(--surface-2, var(--background-secondary))}.ve-save{margin-left:auto;padding:4px 14px;border-radius:6px;border:none;background:var(--primary-500, #3b82f6);color:var(--on-accent);cursor:pointer}.ve-save:hover{background:var(--primary-600, #2563eb)}.ve-save:disabled{opacity:.6;cursor:default}.replay-view{display:flex;flex-direction:column;height:100vh;overflow:hidden;background-color:var(--neutral-50);color:var(--neutral-800)}.replay-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) var(--space-4);background-color:var(--neutral-100);border-bottom:1px solid var(--neutral-200);flex:0 0 auto}.replay-title{font-weight:var(--font-medium);color:var(--neutral-800)}.replay-bb{color:var(--neutral-500);font-variant-numeric:tabular-nums}.replay-actions{display:flex;align-items:center;gap:var(--space-3)}.replay-back{color:var(--primary-600);text-decoration:none;font-size:var(--text-sm)}.replay-back:hover{text-decoration:underline}.replay-live{display:inline-flex;align-items:center;gap:var(--space-1);white-space:nowrap;font-size:var(--text-sm);color:var(--neutral-600);cursor:pointer;font-variant-numeric:tabular-nums;-webkit-user-select:none;user-select:none}.replay-live input{cursor:pointer}.scrubber{flex:0 0 auto;display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);background-color:var(--neutral-100);border-bottom:1px solid var(--neutral-200)}.scrub-play{display:inline-flex;align-items:center;justify-content:center;flex:none;width:32px;height:32px;border:1px solid var(--neutral-300);border-radius:var(--radius-full, 999px);background:var(--neutral-50);color:var(--neutral-700);cursor:pointer}.scrub-play:hover{background:var(--neutral-200)}.scrub-range{flex:1 1 auto;cursor:pointer;accent-color:var(--primary-600)}.scrub-time{font-size:var(--text-sm);color:var(--neutral-600);white-space:nowrap;font-variant-numeric:tabular-nums}.scrub-sep{color:var(--neutral-400)}.scrub-speeds{display:inline-flex;gap:2px;flex:none}.scrub-speed{border:1px solid var(--neutral-300);background:transparent;color:var(--neutral-600);font-size:var(--text-xs, .72rem);padding:2px 7px;cursor:pointer;border-radius:var(--radius-sm, 4px)}.scrub-speed.on{background:var(--primary-600);color:var(--on-accent);border-color:var(--primary-600)}.replay-stage{flex:1 1 45%;min-height:0;display:flex;overflow:hidden;padding:var(--space-3);background:var(--neutral-50);border-bottom:1px solid var(--neutral-200)}.replay-map{display:flex;flex-direction:column;min-height:0;width:100%;gap:var(--space-1)}.replay-map.empty{align-items:center;justify-content:center;color:var(--neutral-500);font-size:var(--text-sm)}.replay-map-occ{font-size:var(--text-xs, .72rem);color:var(--neutral-500);font-variant-numeric:tabular-nums}.replay-map .smap-marker{transition:none}.replay-map .smap-room,.replay-map .smap-zone{pointer-events:none}.replay-view .timeline{flex:1 1 55%;min-height:0}.replay-view .timeline-event.seekable{cursor:pointer}.replay-view .timeline-event.seekable:hover{background:var(--neutral-100)}.replay-view .timeline-event.future{opacity:.4}.timeline{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-3);height:100%;overflow:hidden}.timeline-controls{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.timeline-controls .timeline-refresh{padding:var(--space-1) var(--space-3);border:1px solid var(--primary-300);border-radius:var(--radius-sm);background-color:var(--primary-100);color:var(--primary-700);cursor:pointer}.timeline-controls .timeline-refresh:hover{background-color:var(--primary-200)}.timeline-controls .timeline-refresh:disabled{opacity:.5;cursor:default}.timeline-toggle{display:flex;align-items:center;gap:var(--space-1);font-size:var(--text-sm);color:var(--neutral-600);white-space:nowrap}.timeline-note{margin-left:auto;font-size:var(--text-xs);color:var(--neutral-500);font-style:italic}.timeline-empty{padding:var(--space-6);text-align:center;color:var(--neutral-500)}.timeline-list{list-style:none;margin:0;padding:0;overflow-y:auto;display:flex;flex-direction:column;gap:2px}.timeline-event{display:grid;grid-template-columns:56px 64px 140px 1fr;gap:var(--space-2);align-items:baseline;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-size:var(--text-sm)}.timeline-event:hover{background-color:var(--neutral-100)}.timeline-time{color:var(--neutral-500);font-variant-numeric:tabular-nums}.timeline-kind.kind-ai{color:var(--primary-600)}.timeline-event.kind-speech{background-color:var(--warning-light);box-shadow:inset 2px 0 0 var(--warning-color)}.timeline-kind.kind-speech{color:var(--neutral-700)}.timeline-event.kind-speech .timeline-content{color:var(--neutral-900);font-weight:var(--font-medium)}.timeline-who{color:var(--neutral-700);font-weight:var(--font-medium);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.timeline-content{color:var(--neutral-800);overflow:hidden;text-overflow:ellipsis}.timeline-event.kind-prompt{opacity:.65;font-style:italic}.timeline-event.kind-send{background-color:var(--primary-50);margin-top:var(--space-1)}.timeline-send-banner{grid-column:2 / -1;color:var(--primary-700);text-transform:uppercase;font-size:var(--text-xs);letter-spacing:.04em}.timeline-send-banner strong{font-size:var(--text-sm);letter-spacing:normal;text-transform:none}.replay-index-view{display:flex;flex-direction:column;height:100vh;overflow:hidden;background-color:var(--neutral-50);color:var(--neutral-800)}.replay-search{font-size:var(--text-sm);padding:var(--space-1) var(--space-2);border:1px solid var(--neutral-300);border-radius:var(--radius-sm);background-color:var(--neutral-50);color:var(--neutral-800);min-width:14rem}.replay-index-body{flex:1 1 auto;min-height:0;overflow:auto;padding:var(--space-4)}.replay-index-empty{padding:var(--space-8);text-align:center;color:var(--neutral-500)}.replay-index-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.replay-index-table th,.replay-index-table td{text-align:left;padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--neutral-200)}.replay-index-table th{position:sticky;top:0;background-color:var(--neutral-100);color:var(--neutral-600);font-weight:var(--font-medium);z-index:1}.replay-index-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.replay-index-table th.sortable:hover{color:var(--neutral-800)}.replay-index-table .num{text-align:right;font-variant-numeric:tabular-nums}.replay-index-row{cursor:pointer}.replay-index-row:hover{background-color:var(--neutral-100)}.replay-index-id{font-weight:var(--font-medium);color:var(--primary-600);font-variant-numeric:tabular-nums}.replay-index-titletext{margin-left:var(--space-2);color:var(--neutral-500)}.replay-badge{display:inline-block;padding:0 var(--space-2);border-radius:var(--radius-full, 999px);font-size:var(--text-xs);line-height:1.6;text-transform:lowercase}.replay-badge.real{background-color:var(--neutral-200);color:var(--neutral-700)}.replay-badge.sim{background-color:var(--template-100);color:var(--template-color)}.replay-badge.mixed{background-color:var(--primary-100);color:var(--primary-700)}.replay-badge.live{background-color:var(--success-100);color:var(--success-color)}body{overflow:hidden;margin:0;padding:0;height:100vh;width:100vw;position:fixed}.audience-error{color:#fff;font-size:24px;font-weight:700;text-align:center;margin-top:20px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace}.test-button{border:none!important}.show-audio-setup{display:flex;flex-direction:column;align-items:center;gap:12px;margin-top:18px;z-index:3}.audience-setup-error{max-width:min(360px,calc(100vw - 32px));color:#ffb4b4;font-size:13px;line-height:1.35}.audience{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;width:100vw;text-align:center;padding:0;margin:0;box-sizing:border-box;overflow:hidden;background-color:#000;font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace!important}.audience h1,.audience *{font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace!important}.audience.audio-playing:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:repeating-linear-gradient(0deg,rgba(0,0,0,.2) 0px,rgba(0,0,0,.2) 1px,transparent 1px,transparent 2px),repeating-linear-gradient(90deg,rgba(228,228,228,.2) 0px,rgba(255,255,255,.2) 1px,transparent 1px,transparent 2px);animation:glitch .05s infinite;pointer-events:none;z-index:2;mix-blend-mode:difference}.audience.audio-playing:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:repeating-linear-gradient(45deg,rgba(0,0,0,.1) 0px,rgba(0,0,0,.1) 1px,transparent 1px,transparent 2px);pointer-events:none;z-index:2;mix-blend-mode:overlay}@keyframes glitch{0%{transform:translate(0);clip-path:inset(0 0 0 0)}20%{transform:translate(-2px,1px);clip-path:inset(10% 0 85% 0)}40%{transform:translate(2px,-1px);clip-path:inset(85% 0 10% 0)}60%{transform:translate(-1px,2px);clip-path:inset(0 10% 0 85%)}80%{transform:translate(1px,-2px);clip-path:inset(0 85% 0 10%)}to{transform:translate(0);clip-path:inset(0 0 0 0)}}@keyframes glitch2{0%{transform:translate(0) skew(0)}20%{transform:translate(-1px,1px) skew(1deg)}40%{transform:translate(1px,-1px) skew(-1deg)}60%{transform:translate(-1px,1px) skew(1deg)}80%{transform:translate(1px,-1px) skew(-1deg)}to{transform:translate(0) skew(0)}}.audience.audio-playing{animation:colorShift .1s infinite}@keyframes colorShift{0%{filter:none}20%{filter:hue-rotate(90deg) brightness(1.1)}40%{filter:hue-rotate(-90deg) brightness(.9)}60%{filter:hue-rotate(45deg) brightness(1.1)}80%{filter:hue-rotate(-45deg) brightness(.9)}to{filter:none}}.audience-name{position:absolute;top:20%;left:50%;transform:translate(-50%);font-size:min(32px,6vw);max-width:90vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace!important;margin-bottom:1rem;color:#fff;text-shadow:none;letter-spacing:0;border-radius:var(--simple-radius);padding:8px 16px;border:var(--border-width) solid;display:inline-block}.audience-audio{width:16px;height:16px;margin:.5rem .5rem .7rem 1rem;vertical-align:middle;top:10px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%23000' d='M8 2v12c-2.2 0-4-1.8-4-4H2c0 3.3 2.7 6 6 6s6-2.7 6-6-2.7-6-6-6zm0 2c2.2 0 4 1.8 4 4s-1.8 4-4 4V4z'/%3E%3C/svg%3E");background-size:contain;background-repeat:no-repeat;background-position:center;filter:none;transition:none}.audience-audio:hover{transform:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%23000' d='M8 2v12c-2.2 0-4-1.8-4-4H2c0 3.3 2.7 6 6 6s6-2.7 6-6-2.7-6-6-6zm0 2c2.2 0 4 1.8 4 4s-1.8 4-4 4V4z'/%3E%3Cpath fill='%23000' d='M12 6v4c0 .6-.4 1-1 1s-1-.4-1-1V7c0-.6.4-1 1-1s1 .4 1 1z'/%3E%3C/svg%3E");filter:none}.hidden{visibility:hidden;display:none}.timestamp{font-size:.8rem;color:#ffffff4d;margin-top:.5rem;margin-bottom:.5rem;font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace}.debug-details{background:#0003;border-radius:4px;padding:8px 12px;margin:10px auto;max-width:90vw;font-size:.8rem;color:#ffffff80;text-align:left;font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace}.debug-details div{margin:3px 0}.emergencyButton{position:fixed;bottom:20px;left:50%;transform:translate(-50%);width:auto;max-width:90vw;border:var(--border-width) solid white;padding:0;margin:0;border-radius:var(--simple-radius)}.emergencyButton button{background:#141414;border:var(--border-width) solid;border-color:#fff;padding:6px 12px;border-radius:var(--simple-radius);color:#fff;font-weight:400;box-shadow:none;text-shadow:none;font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace!important;font-size:20px;letter-spacing:0;transform:translateY(0);position:relative;overflow:hidden;opacity:1;transition:transform .3s ease-out,opacity .3s ease-out;cursor:pointer;text-transform:none}.emergencyButton button.button-hidden{transform:translateY(500px);opacity:0;pointer-events:none}.emergencyButton button:not(.button-hidden){transform:translateY(0);opacity:1}.emergencyButton button:active{transform:translateY(1px);background:#2a2a2a;border-color:#2a2a2a;box-shadow:none;filter:none;mix-blend-mode:normal}.emergencyButton button:hover{background:#141414}.status-connected{font-size:14px;color:#908c8c;margin-top:.5rem;margin-bottom:.5rem;font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace!important}.status-disconnected{font-size:14px;margin-top:.5rem;margin-bottom:.5rem;color:#ffbdbd;animation:none;font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace!important}.audience-error{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;text-align:center;padding:20px;font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace}.audience-error h2{color:#e74c3c;margin-bottom:15px;font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace}.audience-error p{margin-bottom:25px;max-width:500px;font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace}.audience-error button{padding:10px 20px;background-color:#3498db;color:#fff;border:none;border-radius:5px;cursor:pointer;font-size:16px;font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace}.audience-error button:hover{background-color:#2980b9}.audio-icon-container{position:relative;display:inline-block}.audio-icon{position:fixed;top:25%;left:50%;transform:translate(-50%,-50%);z-index:-1;opacity:.3;filter:invert(1);width:200px;height:200px}.audio-icon.hidden{display:none}.live-session{margin:var(--space-3, 12px) auto;max-width:320px;padding:var(--space-3, 16px);border:var(--border-width) solid var(--border-color);border-radius:var(--radius, 8px);background:var(--neutral-50);text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px}.live-session-title{font-weight:700;font-size:var(--text-sm);color:var(--text-primary)}.live-session-note{font-size:var(--text-xs);color:var(--danger-color)}.live-session-detail{font-size:var(--text-xs);color:var(--text-muted);overflow-wrap:anywhere}.live-session-error{color:var(--text-primary);font-size:var(--text-sm);border-color:var(--danger-color);background:color-mix(in srgb,var(--danger-color) 8%,var(--neutral-50))}.live-session-active .live-session-note{color:var(--text-muted)}.live-session-error .live-session-note{color:var(--danger-color);font-weight:600}.live-session-join,.live-session-end{padding:10px 22px;font-size:var(--text-sm);font-weight:600;border-radius:6px;cursor:pointer;border:var(--border-width) solid var(--border-color)}.live-session-join{color:var(--neutral-50);background:var(--primary-700);border-color:var(--primary-700)}.live-session-join:hover:not(:disabled){background:var(--primary-500);border-color:var(--primary-500)}.live-session-end{color:var(--text-primary);background:var(--neutral-100)}.live-session-end:hover:not(:disabled){background:var(--neutral-100);border-color:var(--danger-color);color:var(--danger-color)}.live-session-pulse{width:14px;height:14px;border-radius:50%;background:var(--danger-color);animation:live-session-pulse 1.4s ease-in-out infinite}@keyframes live-session-pulse{0%,to{opacity:.35;transform:scale(.85)}50%{opacity:1;transform:scale(1.1)}}.player-stt{margin:var(--space-3, 12px) auto;max-width:320px;padding:var(--space-3, 12px);border:var(--border-width) solid var(--border-color);border-radius:var(--radius, 8px);background:var(--neutral-50);text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px}.player-stt-note{font-size:var(--text-xs);color:var(--danger-color)}.player-stt-enable{padding:10px 22px;font-size:var(--text-sm);font-weight:600;border-radius:6px;cursor:pointer;border:var(--border-width) solid var(--primary-700);color:var(--neutral-50);background:var(--primary-700)}.player-stt-enable:hover:not(:disabled){background:var(--primary-500);border-color:var(--primary-500)}.player-stt-active{flex-direction:row;justify-content:center}.player-stt-label{font-size:var(--text-sm);color:var(--text-primary)}.player-stt-dot{width:10px;height:10px;border-radius:50%;background:var(--danger-color);animation:player-stt-pulse 1.4s ease-in-out infinite}@keyframes player-stt-pulse{0%,to{opacity:.35;transform:scale(.85)}50%{opacity:1;transform:scale(1.1)}}.player-stt-stop{padding:4px 12px;font-size:var(--text-xs);font-weight:600;border-radius:6px;cursor:pointer;border:var(--border-width) solid var(--border-color);color:var(--text-primary);background:var(--neutral-100)}.player-stt-stop:hover:not(:disabled){background:var(--neutral-100);border-color:var(--danger-color);color:var(--danger-color)}.emote-button{--button-hover-bg: transparent;display:flex;align-content:center;padding:10px;font-size:40px;background:transparent;border-color:#fff;border-radius:var(--simple-radius);transform:translateY(0);position:relative;overflow:hidden;opacity:1;transition:transform 1s ease-out;cursor:pointer;text-transform:none}.emote-button img{display:block;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.emote-button:active{background-color:transparent!important;outline:none;border:none;box-shadow:none}.emote-button.emote-hidden{transform:translateY(-600vh);pointer-events:none}
