:root{--cv-primary: #0A2540;--cv-secondary: #1FB8C6;--cv-accent: #3F8CFF;--cv-success: #18B06B;--cv-warning: #FFBF4D;--cv-danger: #E34F4F;--cv-neutral-100: #F4F6F8;--cv-neutral-900: #08131E}:root{--space-xs: 4px;--space-sm: 8px;--space-md: 12px;--space-lg: 16px;--space-xl: 24px;--space-2xl: 32px;--space-3xl: 48px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-full: 9999px;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .12);--shadow-md: 0 4px 12px rgba(0, 0, 0, .15);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .2);--shadow-xl: 0 12px 32px rgba(0, 0, 0, .25);--z-base: 1;--z-dropdown: 100;--z-sticky: 200;--z-header: 300;--z-modal: 900;--z-action-bar: 980;--z-toast: 1000;--touch-min: 44px;--touch-comfortable: 48px;--transition-fast: .1s;--transition-base: .15s;--transition-slow: .25s;--transition-slower: .4s;--ease-in: cubic-bezier(.4, 0, 1, 1);--ease-out: cubic-bezier(0, 0, .2, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1)}:root{--bg: #0d0d0d;--text: #e0e0e0;--panel-bg: #1a1a1a;--border: #14f0ff;--accent: #39ff14;--off-border: #6c6cff;--notes-bg: #0f0f1f;--muted: #aaa;--cell-bg: #262626;--column-width: 260px;--box-font-size: 1.05em;--gap: 8px;--notes-h: 120px;--stage-count: 1;--auto-scale: 1;--user-font-scale: 1;--resizer-hit: 10px;--lower-off-w: var(--column-width);--notes-h-min: 220px;--notes-h-max: 72vh;--btn-primary: #39ff14;--btn-primary-text: #0d0d0d;--btn-save: #d335ff;--btn-save-text: #ffffff;--btn-secondary: #333333;--btn-secondary-text: #e0e0e0;--btn-task: #14f0ff;--btn-task-text: #06242c;--btn-danger: #ff6b6b;--btn-danger-text: #111111;--lower-off-max: 80vw;--notes-min-w: 280px;--controls-h: 44px;--tabs-h: 36px;--board-extra-offset: calc(var(--controls-h) + var(--tabs-h) + 28px);--row-pad: 4px;--row-gap: 6px;--row-line: 1.15;--time-scale: 1;--chip-scale: 1;--li-min-h: 34px}.rowsize-S{--row-pad: 0px;--row-gap: 4px;--row-line: 1.05;--time-scale: .85;--chip-scale: .88;--li-min-h: 23px}.rowsize-M{--row-pad: 2px;--row-gap: 5px;--row-line: 1.1;--time-scale: .95;--chip-scale: .97;--li-min-h: 32px}.rowsize-L{--row-pad: 3px;--row-gap: 7px;--row-line: 1.16;--time-scale: 1;--chip-scale: 1.02;--li-min-h: 34px}@media(pointer:coarse),(hover:none){body.rowsize-S{--li-min-h: 40px;--row-pad: 2px}body.rowsize-M{--li-min-h: 44px;--row-pad: 4px}body.rowsize-L{--li-min-h: 48px;--row-pad: 6px}}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{height:100%}body{background:var(--bg);color:var(--text);font-family:sans-serif;margin:0;padding:0;text-align:center;font-size:clamp(14px,1.8vw,16px)}.app{width:auto;max-width:100vw;margin:0 auto;padding:0 8px;min-height:0}h2{font-size:1em;margin:4px 0 6px;color:var(--accent);display:flex;align-items:center;justify-content:space-between;gap:6px}h2 .hdr-left,h2 .hdr-right{display:flex;align-items:center;gap:8px}.column h2 .hdr-left{font-size:1.18em;font-weight:900;letter-spacing:.2px}.off-title{font-size:1.22em;font-weight:900;letter-spacing:.2px;display:flex;align-items:center;justify-content:space-between;gap:8px}.off-count{color:#b0b8ff;font-size:.9em}ul{list-style:none;padding:0;margin:0}label{color:var(--text);font-size:.9em}.brand{display:inline-flex;align-items:center;gap:8px;padding:4px 12px;border-radius:8px;background:linear-gradient(135deg,#14f0ff18,#39ff140f);border:1px solid var(--border);box-shadow:0 4px 14px #0418291a;-webkit-user-select:none;user-select:none}.brand__icon{width:24px;height:24px;display:block}.brand__label{font-size:.95rem;font-weight:700;letter-spacing:.3px;color:var(--text)}.total{margin-left:auto;font-size:.95em;color:var(--accent);white-space:nowrap}.hidden{display:none!important}#app-container.hidden,#login-container.hidden{display:none}[data-theme=bright]{--bg: #ffffff;--text: #111;--panel-bg: #f6f8fb;--border: #2d7ff9;--accent: #0a7f2c;--off-border: #6c8cff;--notes-bg: #eef2f7;--muted: #444;--cell-bg: #fff;--btn-primary: #2d7ff9;--btn-primary-text: #ffffff;--btn-save: #6c5ce7;--btn-save-text: #ffffff;--btn-task: #0a7f2c;--btn-task-text: #ffffff;--btn-danger: #ff5252;--btn-danger-text: #ffffff}[data-theme=dark]{--cell-bg: #262626;--bg: #0d0d0d;--text: #e0e0e0;--panel-bg: #1a1a1a;--border: #14f0ff;--accent: #39ff14;--off-border: #6c6cff;--notes-bg: #0f0f1f;--muted: #aaaaaa;--btn-primary: #39ff14;--btn-primary-text: #0d0d0d;--btn-save: #d335ff;--btn-save-text: #ffffff;--btn-task: #14f0ff;--btn-task-text: #05242c;--btn-danger: #ff6b6b;--btn-danger-text: #111111}[data-theme=contrast]{--cell-bg: #111;--bg: #000;--text: #fff;--panel-bg: #101010;--border: #ff2d2d;--accent: #fff;--off-border: #ff5a5a;--notes-bg: #0a0a0a;--muted: #e0e0e0;--btn-primary: #ffffff;--btn-primary-text: #000000;--btn-save: #ff2d2d;--btn-save-text: #ffffff;--btn-task: #00a3ff;--btn-task-text: #00121f;--btn-danger: #ff2d2d;--btn-danger-text: #000000}[data-theme=neon]{--cell-bg: #29183e;--bg: #160a1f;--text: #c7e9ff;--panel-bg: #1f1230;--border: #00e5ff;--accent: #ff39c6;--off-border: #7a7aff;--notes-bg: #1b0f2a;--muted: #a7b3c2;--btn-primary: #00e5ff;--btn-primary-text: #061f26;--btn-save: #ff39c6;--btn-save-text: #310019;--btn-task: #7a7aff;--btn-task-text: #070736;--btn-danger: #ff6b8f;--btn-danger-text: #2a000d}[data-theme=blue]{--cell-bg: #17213a;--bg: #0b1020;--text: #d9e6ff;--panel-bg: #121a2e;--border: #2ea8ff;--accent: #5cffb6;--off-border: #4b7cff;--notes-bg: #0f172a;--muted: #9fb3d0;--btn-primary: #5cffb6;--btn-primary-text: #003122;--btn-save: #2ea8ff;--btn-save-text: #02142a;--btn-task: #4b7cff;--btn-task-text: #080f33;--btn-danger: #ff6b7d;--btn-danger-text: #2c0007}[data-theme=stageflow-brand]{--cell-bg: #16202a;--bg: #0b0b0b;--text: #f5f7fa;--panel-bg: #11161c;--border: #40a8e0;--accent: #00c49a;--off-border: #f8d000;--notes-bg: #111c24;--muted: #9ab3c9;--btn-primary: #00c49a;--btn-primary-text: #002721;--btn-save: #40a8e0;--btn-save-text: #05182a;--btn-task: #f8d000;--btn-task-text: #251f00;--btn-danger: #ff6b6b;--btn-danger-text: #220000}[data-theme=miami-neon]{--cell-bg: #16203a;--bg: #0b1020;--text: #d6f3ff;--panel-bg: #111832;--border: #08f7fe;--accent: #00ff85;--off-border: #f700ff;--notes-bg: #0e1430;--muted: #aac9e6;--btn-primary: #00ff85;--btn-primary-text: #003221;--btn-save: #08f7fe;--btn-save-text: #00363a;--btn-task: #f700ff;--btn-task-text: #3a003b;--btn-danger: #ff6bb2;--btn-danger-text: #330019}[data-theme=sunset-pop]{--cell-bg: #1e1f33;--bg: #0d0e1c;--text: #f9f6ff;--panel-bg: #15162a;--border: #ff7a59;--accent: #fdcb6e;--off-border: #6c5ce7;--notes-bg: #15152c;--muted: #f2c9b1;--btn-primary: #fdcb6e;--btn-primary-text: #2e1800;--btn-save: #ff7a59;--btn-save-text: #2f0900;--btn-task: #6c5ce7;--btn-task-text: #0d0b2d;--btn-danger: #ff4f64;--btn-danger-text: #2a0007}[data-theme=bubblegum]{--cell-bg: #1d1e32;--bg: #0b0b12;--text: #fceefe;--panel-bg: #151528;--border: #ff4d8d;--accent: #00c2ff;--off-border: #5e60ce;--notes-bg: #191a32;--muted: #d3c7ff;--btn-primary: #ff4d8d;--btn-primary-text: #360015;--btn-save: #5e60ce;--btn-save-text: #080a33;--btn-task: #00c2ff;--btn-task-text: #002a3f;--btn-danger: #ff7ab3;--btn-danger-text: #320015}[data-theme=electric-tropic]{--cell-bg: #1f1f32;--bg: #121212;--text: #f1f5ff;--panel-bg: #1a1a29;--border: #00b5e2;--accent: #ffd700;--off-border: #8a4fff;--notes-bg: #1a1a33;--muted: #c1d1ff;--btn-primary: #00b5e2;--btn-primary-text: #022430;--btn-save: #ffd700;--btn-save-text: #2f2400;--btn-task: #8a4fff;--btn-task-text: #16002c;--btn-danger: #ff6b6b;--btn-danger-text: #220000}[data-theme=bright] .theme-option{background:#00000005}[data-theme=bright] .theme-option:hover,[data-theme=bright] .theme-option:focus{background:#0000000d}:root{--theme-primary: var(--cv-primary, #0A2540);--theme-secondary: var(--cv-secondary, #1FB8C6);--theme-accent: var(--cv-accent, #3F8CFF);--theme-success: var(--cv-success, #18B06B);--theme-warning: var(--cv-warning, #FFBF4D);--theme-danger: var(--cv-danger, #E34F4F);--theme-bg-primary: #08131E;--theme-bg-secondary: #0D1B2A;--theme-bg-tertiary: #1B2838;--theme-text-primary: #F4F6F8;--theme-text-secondary: rgba(244, 246, 248, .8);--theme-text-tertiary: rgba(244, 246, 248, .6);--theme-border: rgba(255, 255, 255, .1);--theme-border-hover: rgba(255, 255, 255, .2);--theme-shadow-sm: 0 1px 3px rgba(0, 0, 0, .3);--theme-shadow-md: 0 4px 12px rgba(0, 0, 0, .4);--theme-shadow-lg: 0 8px 24px rgba(0, 0, 0, .5);--bg: #08131E;--text: #F4F6F8;--panel-bg: #0D1B2A;--cell-bg: #1B2838;--border: #3F8CFF;--accent: #1FB8C6;--notes-bg: #0D1B2A;--muted: rgba(244, 246, 248, .6)}body{background:var(--theme-bg-primary);color:var(--theme-text-primary)}.app{background:var(--theme-bg-primary)}.command-bar{background:var(--theme-bg-secondary);border-color:var(--theme-border)}.add-entertainer__input{background:var(--theme-bg-tertiary);color:var(--theme-text-primary);border-color:var(--theme-accent)}.add-entertainer__input::placeholder{color:var(--theme-text-tertiary)}.autocomplete-dropdown{background:var(--theme-primary);border-color:var(--theme-secondary)}.autocomplete-item:hover,.autocomplete-item:focus{background:#1fb8c626}.command-group__divider{background:var(--theme-border)}.total-count{background:var(--theme-bg-tertiary);color:var(--theme-text-primary)}.dancer-card,.name-cell{background:var(--theme-bg-secondary);border-color:var(--theme-border);color:var(--theme-text-primary)}.dancer-card:hover{border-color:var(--theme-border-hover)}.off-rotation,.section{background:var(--theme-bg-secondary);border-color:var(--theme-border)}.task-item,.note-item{background:var(--theme-bg-tertiary);border-color:var(--theme-border)}.modal{background:var(--theme-bg-primary);box-shadow:var(--theme-shadow-lg)}.backdrop{background:#000000b3}input[type=text],input[type=number],input[type=time],textarea,select{background:var(--theme-bg-tertiary);color:var(--theme-text-primary);border-color:var(--theme-border)}input[type=text]:focus,input[type=number]:focus,input[type=time]:focus,textarea:focus,select:focus{border-color:var(--theme-accent);background:var(--theme-bg-secondary)}.stage{background:var(--theme-bg-secondary);border-color:var(--theme-border)}.stage-header{background:var(--theme-bg-tertiary);color:var(--theme-text-primary)}.stage-label{color:var(--cv-accent)}.action-bar{background:var(--theme-bg-secondary);border-color:var(--theme-border)}@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(prefers-contrast:high){:root{--theme-border: rgba(255, 255, 255, .4)}}.controls{width:100%;margin:2px auto 4px;display:flex;gap:6px;row-gap:2px;flex-wrap:wrap;align-items:center;position:sticky;top:0;z-index:1000;background:var(--bg);padding:4px 0;border-bottom:1px solid rgba(255,255,255,.05)}.controls .controls-break{flex-basis:100%;height:0}.board{display:flex;gap:var(--gap);align-items:stretch;flex-wrap:nowrap;overflow-x:auto;padding-bottom:6px;scroll-behavior:smooth;min-height:0}.host-view-banner{width:100%;background:linear-gradient(90deg,#0ea5e9,#14f0ff,#0ea5e9);color:#fff;text-align:center;padding:5px 16px;font-weight:900;font-size:.95em;letter-spacing:.06em;border:2px solid rgba(255,255,255,.4);border-radius:8px;margin-bottom:8px;box-shadow:0 3px 10px #0ea5e980,0 0 18px #14f0ff4d;text-shadow:0 2px 4px rgba(0,0,0,.4),0 0 10px rgba(255,255,255,.3);display:none;-webkit-user-select:none;user-select:none}body.bouncer .host-view-banner{display:flex;align-items:center;justify-content:center}.host-view-banner__text{-webkit-user-select:none;user-select:none}.column{position:relative;flex:0 0 var(--column-width);min-width:0;border:2px solid var(--border);border-radius:6px;padding:6px;background:var(--panel-bg);font-size:calc(var(--box-font-size) * var(--auto-scale) * var(--user-font-scale))}.column>h2{position:sticky;top:0;z-index:3;background:var(--panel-bg);padding-top:6px}.lower-deck{display:flex;gap:var(--gap);align-items:stretch}.off-panel{flex:0 0 var(--lower-off-w);display:flex;flex-direction:column;min-width:200px;max-width:var(--lower-off-max)}.off-panel .column{border-color:var(--off-border);flex:1}.splitter{flex:0 0 6px;cursor:col-resize;background:#3a3a6a;border-radius:4px;align-self:stretch}.notes-panel{flex:1;display:flex;flex-direction:column;min-width:var(--notes-min-w)}.notes-card{border:2px solid var(--off-border);border-radius:6px;background:var(--panel-bg);padding:6px;display:flex;flex-direction:column;height:100%}.notes-card h3{margin:0 0 6px;font-size:.95em;color:var(--accent);text-align:left}.h-splitter{height:10px;cursor:row-resize;margin:4px 0;background:linear-gradient(180deg,#14f0ff24,#14f0ff0a);border-top:1px solid rgba(20,240,255,.35);border-bottom:1px solid rgba(20,240,255,.15);border-radius:6px}.col-resizer{position:absolute;top:0;right:-4px;width:var(--resizer-hit);height:100%;cursor:col-resize;opacity:0}.manual .col-resizer{opacity:1}.totals-bar{display:flex;flex-wrap:wrap;gap:6px;align-items:center;justify-content:flex-start;margin:4px 8px;font-size:.8em}.totals-bar .total-chip{padding:2px 6px;border-radius:999px;border:1px solid var(--border);background:var(--panel-bg)}.totals-bar .total-count{color:gold;font-weight:700}.totals-bar .chip-bor{background:#14b8a6;border-color:#14b8a6;color:#fff}.mobile-tabs{display:none;gap:8px;overflow-x:auto;padding:6px 4px;position:sticky;top:var(--controls-h);z-index:900;background:var(--bg);border-bottom:1px solid rgba(255,255,255,.06)}.mobile-tabs .tab{flex:0 0 auto;padding:6px 10px;border-radius:999px;background:#1b1b1b;color:#e0e0e0;border:1px solid #333;cursor:pointer;font-weight:700;-webkit-user-select:none;user-select:none;white-space:nowrap}.mobile-tabs .tab.active{border-color:var(--border);box-shadow:0 0 0 2px #14f0ff33 inset}@media(max-width:700px){.board{scroll-snap-type:x mandatory}.column{scroll-snap-align:start;flex-basis:92vw}.mobile-tabs{display:flex}.column>h2{top:0}.lower-deck{flex-direction:row;height:auto}#splitter{display:block}.off-panel{flex-basis:var(--lower-off-w)}.quick-actions{display:none}}.print-summary{display:none;padding:24px;background:#fff;color:#000;font-family:Segoe UI,Tahoma,Geneva,sans-serif}.print-summary h1{margin:0 0 8px;font-size:1.6rem}.print-summary-meta{margin:0 0 6px;font-size:.95rem;color:#333}.print-summary-table{width:100%;border-collapse:collapse;margin-top:12px;font-size:.95rem}.print-summary-table th,.print-summary-table td{border:1px solid #666666;padding:6px 8px;text-align:left}.print-summary-table th{background:#f1f1f1;font-weight:600}.print-summary-table tfoot td{font-weight:600;background:#f9f9f9}.print-summary-note{margin-top:10px;font-size:.8rem;color:#555}@media print{:root{color-scheme:light}html,body{background:#fff!important;color:#000!important;font-family:Segoe UI,Tahoma,Geneva,sans-serif}#login-container,#app-container,.toast-container,.sf-modal,.tasks-drawer,.sf-Tooltip{display:none!important}#printSummary{display:block!important}.print-summary-table th,.print-summary-table td{color:#000!important;border-color:#333!important;background:transparent!important}.print-summary{display:block;padding:24px}}.app-header{display:flex;align-items:center;justify-content:space-between;background:linear-gradient(90deg,#fff,#e8f0f8,#b8d4e8 30%,#0d2f52 50%,#0a2540);color:var(--cv-neutral-100, #F4F6F8);padding:6px 16px;border-top:2px solid var(--cv-aqua, #1FB8C6);border-bottom:1px solid rgba(255,255,255,.1);min-height:40px;position:sticky;top:0;z-index:var(--z-header, 300);gap:12px}.app-header__brand{display:flex;align-items:center}.brand-logo-wordmark{height:28px;width:auto;object-fit:contain}.app-header__session{font-size:.95rem;opacity:.9;display:flex;align-items:center;gap:var(--space-sm, 8px)}.session-dj{font-weight:600}.session-separator{opacity:.5}.session-shift{font-weight:400}.app-header__session.hidden{display:none}.clock-in-prompt{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;background:#e34f4f26;border:1px solid var(--cv-danger, #E34F4F);border-radius:6px;color:var(--cv-neutral-100, #F4F6F8);font-size:.95rem;font-weight:600;cursor:pointer;font-family:inherit;transition:all var(--transition-base, .15s) var(--ease-out, ease-out)}.clock-in-prompt:hover{background:#e34f4f40;border-color:#ff6b6b;transform:scale(1.02)}.clock-in-prompt:active{transform:scale(.98)}.clock-in-prompt:focus-visible{outline:2px solid var(--cv-accent, #3F8CFF);outline-offset:2px}.clock-in-prompt.hidden{display:none}.clock-in-dot{width:10px;height:10px;background:var(--cv-danger, #E34F4F);border-radius:50%;animation:pulse-dot 1.5s ease-in-out infinite}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.3;transform:scale(1.2)}}.app-header__actions{display:flex;align-items:center;gap:var(--space-md, 12px)}.header-conn-status{display:inline-flex;align-items:center;justify-content:center;color:var(--cv-success, #18B06B);font-size:.875rem;opacity:.8;transition:opacity var(--transition-base, .15s) var(--ease-out, ease-out)}.header-conn-status i,.header-conn-status svg{width:20px;height:20px}.header-conn-status.disconnected{color:var(--cv-danger, #E34F4F);opacity:1}.header-conn-status.connecting{color:var(--cv-warning, #FFBF4D);opacity:.6}.header-btn{background:#ffffff1a;border:1px solid rgba(255,255,255,.15);border-radius:var(--radius-md, 8px);padding:8px 12px;color:var(--cv-neutral-100, #F4F6F8);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px;transition:all var(--transition-base, .15s) var(--ease-out, ease-out);font-family:inherit;font-size:.875rem;min-height:36px}.header-btn:hover{background:#ffffff26;border-color:#ffffff40}.header-btn:focus-visible{outline:2px solid var(--cv-accent, #3F8CFF);outline-offset:2px}.header-btn i,.header-btn svg{width:18px;height:18px}.header-btn--icon-only{padding:8px;min-width:36px}.header-user-menu{position:relative}.header-user-btn{gap:8px;padding:8px 12px}.header-user-email{font-size:.875rem;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:200px;background:var(--cv-neutral-900, #08131E);border:1px solid rgba(255,255,255,.15);border-radius:var(--radius-md, 8px);box-shadow:0 8px 24px #0006;padding:8px 0;z-index:calc(var(--z-header, 300) + 10);opacity:1;transform:translateY(0);transition:opacity var(--transition-base, .15s) var(--ease-out, ease-out),transform var(--transition-base, .15s) var(--ease-out, ease-out)}.header-dropdown.hidden{display:none;opacity:0;transform:translateY(-8px)}.header-dropdown__item{width:100%;display:flex;align-items:center;gap:12px;padding:10px 16px;background:transparent;border:none;color:var(--cv-neutral-100, #F4F6F8);font-family:inherit;font-size:.875rem;text-align:left;cursor:pointer;transition:background var(--transition-base, .15s) var(--ease-out, ease-out)}.header-dropdown__item:hover{background:#ffffff1a}.header-dropdown__item:focus-visible{outline:2px solid var(--cv-accent, #3F8CFF);outline-offset:-2px}.header-dropdown__item i,.header-dropdown__item svg{width:18px;height:18px;opacity:.8}.header-dropdown__item--danger{color:var(--cv-danger, #E34F4F)}.header-dropdown__item--danger:hover{background:#e34f4f1a}.header-dropdown__divider{height:1px;background:#ffffff1a;margin:8px 0}@media(max-width:1024px){.app-header{padding:8px 16px}.brand-logo-wordmark{height:32px}.app-header__session{font-size:.875rem}.header-user-email{display:none}.header-user-btn{padding:8px}}@media(max-width:768px){.app-header{flex-wrap:wrap;gap:var(--space-sm, 8px)}.app-header__brand{flex:1 0 auto}.app-header__session{font-size:.8rem}.app-header__actions{flex-wrap:wrap;gap:var(--space-sm, 8px)}.brand-logo-wordmark{height:28px}}@media(max-width:640px){.app-header{padding:8px 12px;min-height:48px}.brand-logo-wordmark{height:24px}.app-header__session{font-size:.75rem}.header-btn{padding:6px 10px;font-size:.8rem;min-height:32px}.header-btn--icon-only{padding:6px;min-width:32px}.header-conn-status i,.header-conn-status svg{width:18px;height:18px}.header-dropdown{min-width:180px}}body.monitor .app-header{min-height:56px}body.host-mode .header-btn--theme,body.monitor .header-btn--theme{display:none}@media(prefers-reduced-motion:reduce){.header-btn{transition:none}}@media(prefers-contrast:high){.app-header{border-bottom:2px solid currentColor}.header-btn{border:2px solid currentColor}}.command-bar{display:flex;flex-direction:column;gap:6px;padding:8px 12px;background:var(--cv-neutral-900, #08131E);border-bottom:1px solid rgba(255,255,255,.1)}.add-entertainer{display:flex;flex-direction:column;gap:8px}.add-entertainer__input-group{display:flex;gap:8px;align-items:flex-start;flex-wrap:wrap}.add-entertainer__input-wrapper{flex:1;min-width:280px;position:relative}.add-entertainer__input{width:100%;min-height:44px;padding:12px 16px;font-size:1rem;border:2px solid var(--cv-accent, #3F8CFF);border-radius:var(--radius-md, 8px);background:#ffffff0d;color:var(--cv-neutral-100, #F4F6F8);font-family:inherit;transition:all var(--transition-base, .15s) var(--ease-out, ease-out)}.add-entertainer__input::placeholder{color:#ffffff80}.add-entertainer__input:focus{outline:none;border-color:var(--cv-secondary, #1FB8C6);background:#ffffff14;box-shadow:0 0 0 3px #1fb8c633}.add-entertainer__actions{display:flex;gap:8px;flex-wrap:wrap}.autocomplete-dropdown{position:absolute;top:100%;left:0;right:0;margin-top:4px;background:var(--cv-primary, #0A2540);border:1px solid var(--cv-secondary, #1FB8C6);border-radius:var(--radius-md, 8px);max-height:320px;overflow-y:auto;z-index:var(--z-dropdown, 400);box-shadow:var(--shadow-md, 0 4px 12px rgba(0, 0, 0, .15));display:none}.autocomplete-dropdown.visible{display:block}.autocomplete-item{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;cursor:pointer;transition:background var(--transition-base, .15s) var(--ease-out, ease-out);border-bottom:1px solid rgba(255,255,255,.05)}.autocomplete-item:last-child{border-bottom:none}.autocomplete-item:hover,.autocomplete-item:focus{background:#1fb8c626;outline:none}.autocomplete-item__info{display:flex;flex-direction:column;gap:4px}.autocomplete-item__name{font-weight:600;color:var(--cv-neutral-100, #F4F6F8)}.autocomplete-item__meta{font-size:.875rem;color:#fff9}.autocomplete-item__action{display:flex;gap:6px;align-items:center;padding:6px 12px;background:var(--cv-secondary, #1FB8C6);color:#fff;border-radius:var(--radius-sm, 4px);font-size:.875rem;font-weight:600;white-space:nowrap}.autocomplete-empty{padding:16px;text-align:center;color:#ffffff80;font-size:.875rem}.shift-hint{position:relative;display:inline-flex;align-items:center;margin-left:6px}.shift-hint-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:#ffffff40;color:#fff;font-size:.75rem;font-weight:700;cursor:help;transition:all var(--transition-base, .15s) var(--ease-out, ease-out)}.shift-hint-icon:hover{background:#fff6;transform:scale(1.1)}.shift-hint-tooltip{position:absolute;bottom:100%;left:50%;transform:translate(-50%);margin-bottom:8px;padding:8px 12px;background:var(--cv-primary, #0A2540);color:var(--cv-neutral-100, #F4F6F8);border:1px solid var(--cv-secondary, #1FB8C6);border-radius:var(--radius-md, 8px);font-size:.875rem;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity var(--transition-base, .15s) var(--ease-out, ease-out);z-index:var(--z-tooltip, 500)}.shift-hint-icon:hover+.shift-hint-tooltip{opacity:1}.command-group{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.command-group__label{font-size:.875rem;font-weight:600;color:#ffffffb3;text-transform:uppercase;letter-spacing:.05em;margin-right:var(--space-sm, 8px)}.command-group__divider{width:1px;height:32px;background:#ffffff26;margin:0 6px}.total-count{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;background:#ffffff14;border-radius:var(--radius-md, 8px);font-weight:600;color:var(--cv-neutral-100, #F4F6F8);margin-left:auto}.total-count__value{font-size:1.125rem;color:var(--cv-accent, #3F8CFF)}@media(max-width:1024px){.command-bar{padding:var(--space-lg, 16px);gap:var(--space-md, 12px)}.add-entertainer__input-wrapper{min-width:240px}}@media(max-width:768px){.command-bar{padding:var(--space-md, 12px)}.add-entertainer__input-group{flex-direction:column}.add-entertainer__input-wrapper{min-width:100%}.add-entertainer__actions{width:100%}.command-group{gap:var(--space-sm, 8px)}.command-group__label{width:100%;margin-bottom:4px}.total-count{width:100%;justify-content:center}}@media(max-width:640px){.add-entertainer__actions{flex-direction:column}.add-entertainer__actions button{width:100%}.command-group{flex-direction:column;align-items:stretch}.command-group button{width:100%}.command-group__divider{display:none}}@media(prefers-reduced-motion:reduce){.add-entertainer__input,.autocomplete-item,.shift-hint-icon,.shift-hint-tooltip{transition:none}}@media(prefers-contrast:high){.add-entertainer__input{border-width:3px}.autocomplete-dropdown{border-width:2px}}.badge-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;margin-left:6px;background:var(--cv-secondary, #1FB8C6);color:var(--theme-bg-primary, #08131E);border-radius:10px;font-size:.75rem;font-weight:700;line-height:1}.btn-primary,.btn-success,.btn-danger,.btn-secondary-new,.btn-tertiary{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm, 8px);font-family:inherit;font-size:.95rem;line-height:1;text-align:center;padding:12px 20px;border:none;border-radius:var(--radius-md, 8px);cursor:pointer;-webkit-user-select:none;user-select:none;transition:all var(--transition-base, .15s) var(--ease-out, ease-out);min-height:var(--touch-min, 44px)}.btn-primary:disabled,.btn-success:disabled,.btn-danger:disabled,.btn-secondary-new:disabled,.btn-tertiary:disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.btn-primary:focus-visible,.btn-success:focus-visible,.btn-danger:focus-visible,.btn-secondary-new:focus-visible,.btn-tertiary:focus-visible{outline:3px solid var(--cv-accent, #3F8CFF);outline-offset:2px}.btn-primary{background:var(--cv-accent, #3F8CFF);color:#fff;font-weight:700}.btn-primary:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-1px);box-shadow:var(--shadow-md, 0 4px 12px rgba(0, 0, 0, .15))}.btn-primary:active:not(:disabled){transform:scale(.98)}.btn-primary i,.btn-primary svg,.btn-success i,.btn-success svg,.btn-danger i,.btn-danger svg,.btn-secondary-new i,.btn-secondary-new svg,.btn-tertiary i,.btn-tertiary svg{width:18px;height:18px;flex-shrink:0}.btn-success{background:var(--cv-success, #18B06B);color:#fff;font-weight:700}.btn-success:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-1px);box-shadow:var(--shadow-md, 0 4px 12px rgba(0, 0, 0, .15))}.btn-success:active:not(:disabled){transform:scale(.98)}.btn-danger{background:var(--cv-danger, #E34F4F);color:#fff;font-weight:700}.btn-danger:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-1px);box-shadow:var(--shadow-md, 0 4px 12px rgba(0, 0, 0, .15))}.btn-danger:active:not(:disabled){transform:scale(.98)}.btn-secondary-new{background:var(--cv-secondary, #1FB8C6);color:#fff;font-weight:600;min-height:40px;padding:10px 16px}.btn-secondary-new:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-1px);box-shadow:var(--shadow-sm, 0 1px 3px rgba(0, 0, 0, .12))}.btn-secondary-new:active:not(:disabled){transform:scale(.98)}.btn-tertiary{background:#ffffff14;color:var(--cv-neutral-100, #F4F6F8);font-weight:500;min-height:36px;padding:8px 14px;border:1px solid rgba(255,255,255,.12)}.btn-tertiary:hover:not(:disabled){background:#ffffff1f;border-color:#fff3}.btn-tertiary:active:not(:disabled){transform:scale(.98)}#tasksBtn.has-due-tasks{animation:cv-task-alert-pulse 2s ease-in-out infinite;border:2px solid rgba(227,79,79,.9)!important}@keyframes cv-task-alert-pulse{0%,to{box-shadow:0 0 #e34f4fcc,0 0 25px #e34f4f80}50%{box-shadow:0 0 0 10px #e34f4f4d,0 0 40px #e34f4fb3}}@media(prefers-reduced-motion:reduce){#tasksBtn.has-due-tasks{animation:none;box-shadow:0 0 25px #e34f4fb3;border:2px solid rgba(227,79,79,.9)!important}}.btn-large{min-height:48px;padding:14px 24px;font-size:1rem}.btn-small{min-height:36px;padding:8px 14px;font-size:.875rem}.btn-compact{min-height:32px;padding:6px 12px;font-size:.8rem}.btn-block{width:100%}.btn-icon-only{padding:12px;aspect-ratio:1 / 1}.btn-loading{position:relative;color:transparent;pointer-events:none}.btn-loading:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:18px;height:18px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:translate(-50%,-50%) rotate(360deg)}}.btn-group{display:inline-flex;gap:var(--space-sm, 8px)}.btn-group--compact{gap:var(--space-xs, 4px)}.btn-group--vertical{flex-direction:column}@media(max-width:768px){.btn-primary,.btn-success,.btn-danger,.btn-secondary-new,.btn-tertiary{padding:10px 16px;font-size:.875rem}.btn-group{flex-wrap:wrap}}@media(max-width:480px){.btn-primary,.btn-success,.btn-danger{min-height:42px}.btn-group--mobile-stack{flex-direction:column;width:100%}.btn-group--mobile-stack>button{width:100%}}.btn-badge{position:relative}.btn-badge:after{content:attr(data-badge);position:absolute;top:-8px;right:-8px;background:var(--cv-warning, #FFBF4D);color:var(--cv-neutral-900, #08131E);font-size:.7rem;font-weight:800;padding:2px 6px;border-radius:var(--radius-full, 9999px);min-width:18px;text-align:center}@media(prefers-reduced-motion:reduce){.btn-primary,.btn-success,.btn-danger,.btn-secondary-new,.btn-tertiary{transition:none}.btn-primary:hover,.btn-success:hover,.btn-danger:hover,.btn-secondary-new:hover,.btn-tertiary:hover{transform:none}}@media(prefers-contrast:high){.btn-primary,.btn-success,.btn-danger,.btn-secondary-new,.btn-tertiary{border:2px solid currentColor}}#settingsToggleBtn{position:relative;z-index:100;pointer-events:auto;cursor:pointer}.settings-panel{position:fixed;top:0;right:0;width:420px;max-width:90vw;height:100vh;background:var(--theme-bg-secondary, #0D1B2A);border-left:1px solid var(--cv-secondary, #1FB8C6);box-shadow:-4px 0 24px #0006;z-index:10000;transform:translate(100%);transition:transform .3s cubic-bezier(.16,1,.3,1);display:flex;flex-direction:column;overflow:hidden;pointer-events:auto}.settings-panel.visible{transform:translate(0)!important}body.host-mode .settings-panel,body .settings-panel{position:fixed!important;right:0!important}body.host-mode .settings-panel.visible,body .settings-panel.visible{transform:translate(0)!important;display:flex!important;visibility:visible!important}.settings-panel-overlay{position:fixed;inset:0;background:#00000080;z-index:9999;opacity:0;visibility:hidden;transition:opacity .3s ease-out,visibility 0ms linear .3s;pointer-events:none}.settings-panel-overlay.visible{opacity:1;visibility:visible;transition-delay:0ms;pointer-events:auto}.settings-panel__header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-lg, 16px) var(--space-xl, 24px);background:var(--cv-primary, #0A2540);border-bottom:1px solid rgba(31,184,198,.3);flex-shrink:0}.settings-panel__title{display:flex;align-items:center;gap:var(--space-md, 12px);font-size:1.25rem;font-weight:700;color:var(--cv-secondary, #1FB8C6)}.settings-panel__title i,.settings-panel__title svg{width:24px;height:24px}.settings-panel__close{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-md, 8px);background:#ffffff1a;border:1px solid rgba(255,255,255,.15);color:var(--cv-neutral-100, #F4F6F8);cursor:pointer;transition:all var(--transition-base, .15s) var(--ease-out, ease-out)}.settings-panel__close:hover{background:#ffffff26;border-color:var(--cv-danger, #E34F4F);color:var(--cv-danger, #E34F4F)}.settings-panel__close i,.settings-panel__close svg{width:20px;height:20px}.settings-panel__body{flex:1;overflow-y:auto;padding:var(--space-xl, 24px);-webkit-overflow-scrolling:touch}.settings-panel__body::-webkit-scrollbar{width:8px}.settings-panel__body::-webkit-scrollbar-track{background:#ffffff0d}.settings-panel__body::-webkit-scrollbar-thumb{background:var(--cv-secondary, #1FB8C6);border-radius:var(--radius-sm, 4px)}.settings-panel__body::-webkit-scrollbar-thumb:hover{background:var(--cv-accent, #3F8CFF)}.settings-section{margin-bottom:var(--space-2xl, 32px)}.settings-section:last-child{margin-bottom:0}.settings-section__title{font-size:.875rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#fff9;margin-bottom:var(--space-md, 12px);padding-bottom:var(--space-sm, 8px);border-bottom:1px solid rgba(255,255,255,.1)}.setting-item{display:flex;flex-direction:column;gap:var(--space-sm, 8px);margin-bottom:var(--space-lg, 16px)}.setting-item:last-child{margin-bottom:0}.setting-item__label{font-size:.95rem;font-weight:600;color:var(--cv-neutral-100, #F4F6F8);display:flex;align-items:center;gap:var(--space-sm, 8px)}.setting-item__description{font-size:.85rem;color:#fff9;line-height:1.4}.setting-item select{width:100%;padding:10px 14px;font-size:.95rem;font-family:inherit;background:#ffffff0d;border:2px solid rgba(255,255,255,.15);border-radius:var(--radius-md, 8px);color:var(--cv-neutral-100, #F4F6F8);cursor:pointer;transition:all var(--transition-base, .15s) var(--ease-out, ease-out)}.setting-item select:hover{background:#ffffff14;border-color:#ffffff40}.setting-item select:focus{outline:none;border-color:var(--cv-accent, #3F8CFF);box-shadow:0 0 0 3px #3f8cff33}.setting-item select option{background:var(--theme-bg-secondary, #0D1B2A);color:var(--cv-neutral-100, #F4F6F8);padding:10px;font-size:.95rem}.setting-item select option:hover,.setting-item select option:checked{background:var(--cv-accent, #3F8CFF);color:#fff}.setting-item__slider-wrapper{display:flex;align-items:center;gap:var(--space-md, 12px)}.setting-item input[type=range]{flex:1;height:6px;background:#ffffff1a;border-radius:var(--radius-full, 9999px);outline:none;cursor:pointer;-webkit-appearance:none}.setting-item input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:var(--cv-accent, #3F8CFF);cursor:pointer;border:2px solid var(--theme-bg-secondary, #0D1B2A);box-shadow:0 2px 4px #0000004d;transition:transform var(--transition-base, .15s) var(--ease-out, ease-out)}.setting-item input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.1)}.setting-item input[type=range]::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:var(--cv-accent, #3F8CFF);cursor:pointer;border:2px solid var(--theme-bg-secondary, #0D1B2A);box-shadow:0 2px 4px #0000004d;transition:transform var(--transition-base, .15s) var(--ease-out, ease-out)}.setting-item input[type=range]::-moz-range-thumb:hover{transform:scale(1.1)}.setting-item__slider-value{min-width:60px;text-align:right;font-weight:700;font-size:.95rem;color:var(--cv-accent, #3F8CFF);font-variant-numeric:tabular-nums}.setting-item__button-group{display:flex;gap:var(--space-sm, 8px)}.setting-item__button-group button{flex:1;padding:10px 16px;font-size:.95rem;font-weight:700;font-family:inherit;background:#ffffff0d;border:2px solid rgba(255,255,255,.15);border-radius:var(--radius-md, 8px);color:var(--cv-neutral-100, #F4F6F8);cursor:pointer;transition:all var(--transition-base, .15s) var(--ease-out, ease-out)}.setting-item__button-group button:hover{background:#ffffff14;border-color:#ffffff40}.setting-item__button-group button.active{background:var(--cv-accent, #3F8CFF);border-color:var(--cv-accent, #3F8CFF);color:#fff}.setting-item__button-group button:focus-visible{outline:3px solid rgba(63,140,255,.5);outline-offset:2px}.setting-item__checkbox{display:flex;align-items:center;gap:var(--space-md, 12px);padding:var(--space-md, 12px);background:#ffffff08;border-radius:var(--radius-md, 8px);cursor:pointer;transition:background var(--transition-base, .15s) var(--ease-out, ease-out)}.setting-item__checkbox:hover{background:#ffffff0d}.setting-item__checkbox input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:var(--cv-accent, #3F8CFF)}.setting-item__checkbox-label{flex:1;font-size:.95rem;font-weight:600;color:var(--cv-neutral-100, #F4F6F8);cursor:pointer}@media(max-width:768px){.settings-panel{width:100vw;max-width:100vw}.settings-panel__header{padding:var(--space-md, 12px) var(--space-lg, 16px)}.settings-panel__title{font-size:1.1rem}.settings-panel__body{padding:var(--space-lg, 16px)}.settings-section{margin-bottom:var(--space-xl, 24px)}}@media(prefers-reduced-motion:reduce){.settings-panel,.settings-panel-overlay{transition:none}.setting-item input[type=range]::-webkit-slider-thumb,.setting-item input[type=range]::-moz-range-thumb{transition:none}}@media(prefers-contrast:high){.settings-panel{border-left-width:3px}.setting-item select,.setting-item__button-group button,.setting-item__checkbox{border-width:3px}}.panel-description{color:var(--cv-neutral-300, #9ab3c9);font-size:.9rem;margin-bottom:var(--space-md, 12px);line-height:1.5}.promotions-textarea{width:100%;min-height:300px;padding:var(--space-md, 12px);background:var(--theme-bg-tertiary, #1B2838);border:1px solid rgba(31,184,198,.2);border-radius:6px;color:var(--cv-neutral-100, #F4F6F8);font-family:inherit;font-size:.95rem;line-height:1.6;resize:vertical;transition:border-color .15s ease,box-shadow .15s ease}.promotions-textarea:focus{outline:none;border-color:var(--cv-secondary, #1FB8C6);box-shadow:0 0 0 3px #1fb8c61a}.promotions-textarea::placeholder{color:var(--cv-neutral-400, #6b7b8c)}.checked-out-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-sm, 8px)}.checked-out-list li{display:flex;align-items:center;gap:var(--space-sm, 8px);padding:var(--space-sm, 8px) var(--space-md, 12px);background:var(--theme-bg-tertiary, #1B2838);border-radius:6px;font-size:.9rem;color:var(--cv-neutral-100, #F4F6F8);transition:background .15s ease}.checked-out-list li:hover{background:#1fb8c614}.checked-out-list:empty:after{content:"No checked out entertainers yet";display:block;padding:var(--space-xl, 24px);text-align:center;color:var(--cv-neutral-400, #9ab3c9);font-style:italic}.tasks-modal{width:min(680px,94vw);max-height:90vh;overflow-y:auto;border-radius:16px;border:1px solid rgba(63,140,255,.35);background:var(--theme-bg-primary, #050f1f);box-shadow:var(--theme-shadow-lg, 0 30px 80px rgba(0, 0, 0, .55));padding:clamp(16px,3vw,28px);display:flex;flex-direction:column;gap:clamp(16px,2vw,24px)}@media(max-width:900px){.tasks-modal{width:min(580px,94vw)}}.tasks-modal__header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.tasks-modal__title h3{margin:4px 0;font-size:clamp(1.4rem,2vw,1.8rem);color:var(--theme-text-primary)}.tasks-subtitle{margin:0;font-size:.95rem;color:#f4f6f8bf;max-width:620px}.tasks-eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.72rem;color:var(--theme-accent, #1fb8c6);margin:0 0 4px}.tasks-modal__grid{display:grid;grid-template-columns:minmax(0,1fr);gap:20px}@media(min-width:1200px){.tasks-modal{width:min(900px,94vw)}.tasks-modal__grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px}}.tasks-card{background:var(--theme-bg-secondary, #091529);border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:clamp(18px,2vw,26px);display:flex;flex-direction:column;gap:18px;min-height:0}.tasks-card__header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.tasks-card__header h4{margin:0;font-size:1.1rem}.tasks-hint{font-size:.8rem;color:#f4f6f894}.tasks-list{display:flex;flex-direction:column;gap:12px;min-height:200px}.tasks-list:empty:after{content:"No reminders yet. Use the form to add your first task.";display:block;text-align:center;padding:36px 12px;border:1px dashed rgba(255,255,255,.15);border-radius:14px;color:#f4f6f899;font-size:.9rem}.task-item{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;background:#091529d9;border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:14px 16px}.task-title{font-weight:600;font-size:1rem}.task-meta{font-size:.85rem;color:#f4f6f8b3;margin-top:6px}.task-item>div:last-child{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.task-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:999px;padding:8px 16px;font-size:.85rem;font-weight:600;border:1px solid transparent;background:transparent;color:var(--theme-text-primary);cursor:pointer;transition:background .16s ease,border-color .16s ease}.task-btn.primary{background:var(--theme-accent, #1fb8c6);color:#04121f;border-color:var(--theme-accent, #1fb8c6)}.task-btn.primary:hover{filter:brightness(1.05)}.task-btn.secondary{border-color:#ffffff2e;color:#f4f6f8e6;background:#ffffff0a}.task-btn.secondary:hover{border-color:#ffffff59}.task-btn.danger{border-color:#e34f4f99;color:#ffbcbc;background:#e34f4f1f}.tasks-field{display:flex;flex-direction:column;gap:6px}.tasks-field label,.tasks-label{font-size:.85rem;font-weight:600;color:#f4f6f8d9}.tasks-input,.tasks-select{width:100%;padding:10px 12px;border-radius:10px;border:1px solid rgba(255,255,255,.12);background:#050f1fbf;color:var(--theme-text-primary);font-size:.95rem}.tasks-field--split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}@media(max-width:520px){.tasks-field--split{grid-template-columns:1fr}}.tasks-quick{display:flex;flex-wrap:wrap;gap:8px}.tasks-radio-group{display:grid;gap:10px}.tasks-radio{display:flex;gap:10px;align-items:flex-start;padding:12px;border-radius:12px;border:1px solid rgba(255,255,255,.12);background:#050f1f80}.tasks-radio input{margin-top:4px}.tasks-radio__title{font-weight:600;font-size:.92rem}.tasks-radio__hint{display:block;font-size:.8rem;color:#f4f6f8a6}.tasks-actions{display:flex;justify-content:flex-end;padding-top:8px}.tasks-close{align-self:flex-start}.tasks-close i,.tasks-actions i{width:16px;height:16px}.off-rotation-card{background:var(--theme-bg-secondary, #0D1B2A);border:1px solid var(--cv-secondary, #1FB8C6);border-radius:8px;padding:var(--space-lg, 16px);margin:var(--space-lg, 16px) 0;box-shadow:0 2px 8px #0003}.off-rotation-card__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-md, 12px);padding-bottom:var(--space-sm, 8px);border-bottom:1px solid rgba(31,184,198,.2)}.off-rotation-card__title{display:flex;align-items:center;gap:var(--space-sm, 8px);margin:0;font-size:1.1rem;font-weight:600;color:var(--cv-secondary, #1FB8C6)}.off-rotation-card__title i{width:20px;height:20px}.off-rotation-card__count{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:28px;padding:0 8px;background:var(--cv-secondary, #1FB8C6);color:var(--theme-bg-primary, #08131E);border-radius:14px;font-size:.875rem;font-weight:700}.off-rotation-card__list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-sm, 8px)}.off-rotation-card__list li{list-style:none}.off-rotation-card__list:empty:after{content:"No entertainers off rotation";display:block;padding:var(--space-lg, 16px);text-align:center;color:var(--cv-neutral-400, #9ab3c9);font-style:italic;font-size:.9rem}@media(max-width:768px){.off-rotation-card{margin:var(--space-md, 12px) 0;padding:var(--space-md, 12px)}.off-rotation-card__title{font-size:1rem}}button{padding:5px 8px;border:none;border-radius:6px;cursor:pointer;font-size:.82em;line-height:1em;color:#0d0d0d}.btn-add{background:var(--btn-primary, #39ff14);color:var(--btn-primary-text, #0d0d0d)}.btn-save{background:var(--btn-save, #d335ff);color:var(--btn-save-text, #ffffff)}.btn-secondary{background:var(--btn-secondary, #333);color:var(--btn-secondary-text, #e0e0e0)}.btn-danger{background:var(--btn-danger, #ff6b6b);color:var(--btn-danger-text, #111)}.btn-task{background:var(--btn-task, #444);color:var(--btn-task-text, #f0f0f0);border:1px solid rgba(255,255,255,.18);border-radius:6px;padding:5px 12px;display:inline-flex;align-items:center;gap:6px;transition:background .2s ease,color .2s ease,border-color .2s ease}.btn-task:hover,.btn-task:focus{outline:none;border-color:#ffffff59}.theme-toggle-btn{background:var(--border);color:var(--text);border:1px solid rgba(255,255,255,.18);display:flex;align-items:center;gap:6px;transition:background .2s ease,color .2s ease,border-color .2s ease}.theme-toggle-btn:after{content:"▾";font-size:.65em;opacity:.7;transition:transform .2s ease,opacity .2s ease}.theme-toggle-btn[aria-expanded=true]:after{transform:rotate(180deg)}.btn-small{padding:3px 6px;font-size:.75em;margin:0 3px;background:#333;border:none;color:#e0e0e0;border-radius:3px}.btn-paid{background:#7c5cff;border:1px solid #7c5cff;color:#100629}.btn-paid:hover,.btn-paid:focus{background:#8f74ff;border-color:#8f74ff}h2 .btn-next-small{background:#14f0ff;color:#0d0d0d;border:1px solid var(--border);border-radius:6px;padding:4px 10px;font-size:.88em;font-weight:800;line-height:1;min-height:28px;cursor:pointer}.btn-next-small[data-lock="1"],.btn-next-small.disabled,.btn-next-small:disabled{opacity:.7;pointer-events:none;cursor:not-allowed}h2 .btn-next-small:focus-visible{outline:2px solid rgba(20,240,255,.8);outline-offset:2px}.row-size button.active{background:#14f0ff;color:#111;border:1px solid var(--border)}.sec-toggle{background:#333;color:#e0e0e0;border:1px solid #444;border-radius:8px;padding:6px 10px;cursor:pointer}body.sec-collapsed .sec-item{display:none!important}.debug-btn{display:none;padding:6px 10px;border-radius:6px;border:1px solid var(--border);background:#0b1b1f;color:#baf7ff}#tasksBtn{background:#ffffff14;color:var(--cv-neutral-100, #F4F6F8);font-weight:500;border:1px solid rgba(255,255,255,.12);text-shadow:none}#tasksBtn:hover{filter:none}#tasksBtn.alerting{animation:none}#tasksBadge{display:inline-block;margin-left:6px;padding:2px 6px;border-radius:999px;background:#0ae;color:#111;font-weight:800}.quick-actions{display:flex;gap:6px;margin-left:6px}.quick-actions .qa-btn{padding:6px 10px;border-radius:6px;border:1px solid var(--border);background:#14f0ff;color:#111;font-weight:800;cursor:pointer}.quick-actions .qa-btn.secondary{background:#5cffb6;color:#111;border-color:#5cffb6}.r-btn{padding:6px 10px;border:none;border-radius:6px;cursor:pointer}.r-btn.primary{background:#14f0ff;color:#111}.r-btn.secondary{background:#333;color:#eee}.r-btn.danger{background:#ff6b6b;color:#111}.btn-small:disabled{opacity:.35;cursor:not-allowed;filter:grayscale(.4)}.btn-accent-dance{background:#facc15!important;border:1px solid rgba(250,204,21,.8)!important;color:#1a1a10!important}.btn-accent-dance:disabled{background:#facc1540!important;border-color:#facc154d!important;color:#1a1a1099!important}.btn-accent-vip{background:#ef4444!important;border:1px solid rgba(239,68,68,.85)!important;color:#281010!important}.btn-accent-vip:disabled{background:#ef444440!important;border-color:#ef44444d!important;color:#28101099!important}.btn-accent-special{background:#22c55e!important;border:1px solid rgba(34,197,94,.85)!important;color:#041b0c!important}.btn-accent-special:disabled{background:#22c55e40!important;border-color:#22c55e52!important;color:#041b0c99!important}.btn-accent-tour{background:#ec4899!important;border:1px solid rgba(236,72,153,.85)!important;color:#22020f!important}.btn-accent-tour:disabled{background:#ec489940!important;border-color:#ec489952!important;color:#22020f99!important}.btn-accent-bor{background:#14b8a6!important;border:1px solid rgba(20,184,166,.85)!important;color:#052220!important}.btn-accent-bor:disabled{background:#14b8a640!important;border-color:#14b8a64d!important;color:#05222099!important}.btn-accent-available{background:#94a3b8!important;border:1px solid rgba(148,163,184,.55)!important;color:#0f172a!important}.btn-accent-available:disabled{background:#94a3b838!important;border-color:#94a3b847!important;color:#0f172a99!important}input[type=text],input[type=email],input[type=password]{flex:1;padding:4px 6px;border:1px solid #555;background:var(--bg);color:var(--text);border-radius:4px;font-size:.93em;height:1.6em}select#stageCount,input[type=range]{accent-color:#14f0ff}.note-input{width:100%;padding:4px;margin-bottom:6px;background:#20203a;border:1px solid #555;color:var(--text);border-radius:3px;font-size:.9em}.time-inline-input{flex:0 0 auto;width:92px;padding:2px 6px;border:1px solid var(--line, #ccc);border-radius:6px;font-size:.9em;font-variant-numeric:tabular-nums;background:var(--panel-bg, #111);color:var(--text);box-sizing:border-box}.time-inline-input:focus{outline:2px solid var(--accent, #39ff14);outline-offset:1px}.time-inline-error{flex:0 0 auto;color:#c00;font-size:11px;margin-left:.35rem}#notesArea{flex:1;width:100%;resize:none;padding:6px 10px 6px 24px;background:transparent;color:var(--text);border:1px solid #555;border-radius:4px;font-family:sans-serif;font-size:.9em;min-height:160px;line-height:1.4;outline:none;white-space:pre-wrap}.r-search{display:flex;gap:6px}.r-search input{flex:1;padding:6px;border:1px solid #555;background:#0d0d0d;color:#eaeaea;border-radius:6px}.r-form label{font-size:.85em;color:#aaa;display:block;margin-top:6px}.r-form input[type=text],.r-form textarea,.r-form input[type=date]{width:100%;padding:6px;border:1px solid #555;background:#0d0d0d;color:#eaeaea;border-radius:6px}.r-form textarea{min-height:90px;resize:vertical}.r-form .btn-row{display:flex;gap:6px;margin-top:8px;flex-wrap:wrap}.r-topbar .close-on-add{display:flex;align-items:center;gap:6px;margin-left:auto;font-size:.9em;color:var(--text)}.r-topbar .close-on-add input{accent-color:var(--border)}.roster-backdrop{position:fixed;inset:0;background:#0006;z-index:9998;opacity:0;visibility:hidden;transition:opacity .3s ease-out,visibility 0ms linear .3s}.roster-backdrop.visible{opacity:1;visibility:visible;transition-delay:0ms}#rosterModal{position:fixed;top:0;right:0;width:700px;max-width:90vw;height:100vh;background:var(--theme-bg-secondary, #0D1B2A);border-left:2px solid var(--cv-secondary, #1FB8C6);box-shadow:-4px 0 24px #00000080;z-index:9999;transform:translate(100%);transition:transform .35s cubic-bezier(.16,1,.3,1);display:flex;flex-direction:column;overflow:hidden;padding:16px}#rosterModal.visible{transform:translate(0)}#rosterModal h3{margin:0 0 12px;color:var(--cv-secondary, #1FB8C6);font-size:1.25rem;font-weight:700;display:flex;align-items:center;gap:8px}.r-topbar{display:flex;flex-direction:column;gap:8px;padding-bottom:10px;border-bottom:1px solid var(--border, #333);margin-bottom:10px;flex-shrink:0}.r-topbar-row{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.r-search-group{flex:1;display:flex;gap:6px;min-width:200px}.r-search-wrapper{flex:1;position:relative;display:flex;align-items:center}.r-search-wrapper input{flex:1;padding:8px 32px 8px 12px;border-radius:6px;border:1px solid var(--border, #333);background:#0d0d0de6;color:var(--text, #f5f7fb);font-size:.95em}.r-search-wrapper input:focus{outline:2px solid var(--accent, #14f0ff);outline-offset:1px}.r-search-clear{position:absolute;right:6px;background:transparent;border:none;color:var(--text, #f5f7fb);font-size:1.2em;padding:4px 8px;cursor:pointer;opacity:.6;transition:opacity .2s ease;line-height:1}.r-search-clear:hover{opacity:1;color:var(--accent, #14f0ff)}.r-result-count{font-size:.85em;color:#a8b0c0;padding:4px 8px}.r-options-panel{display:flex;flex-direction:column;gap:8px;padding:10px;background:#0d0d0d99;border:1px solid var(--border, #333);border-radius:6px;margin-top:6px}.r-option{display:flex;align-items:center;gap:8px;font-size:.9em;color:var(--text, #f5f7fb);cursor:pointer;-webkit-user-select:none;user-select:none}.r-option input[type=checkbox]{cursor:pointer}.r-view-toggle{display:flex;gap:4px;padding:8px;background:#0d0d0d99;border-radius:6px;border:1px solid var(--border, #333)}.r-view-btn{flex:1;padding:8px 16px;border:none;border-radius:4px;background:transparent;color:var(--text, #f5f7fb);font-size:.9em;cursor:pointer;transition:all .2s ease}.r-view-btn:hover{background:#ffffff0d}.r-view-btn.active{background:var(--accent, #14f0ff);color:#111;font-weight:700}.roster-layout{display:flex;gap:0;min-height:420px;flex:1;overflow:hidden}.roster-left{flex:0 0 240px;min-width:180px;max-width:550px;display:flex;flex-direction:column}.roster-splitter{flex:0 0 6px;cursor:col-resize;background:linear-gradient(90deg,transparent 0%,var(--cv-secondary, #1FB8C6) 50%,transparent 100%);opacity:.3;transition:opacity .2s ease;position:relative;-webkit-user-select:none;user-select:none}.roster-splitter:hover{opacity:.8;background:var(--cv-secondary, #1FB8C6)}.roster-splitter:active{opacity:1;background:var(--cv-accent, #3F8CFF)}.roster-right{flex:1;display:flex;flex-direction:column;padding-left:12px;overflow:auto;position:relative;min-width:150px}.r-list{flex:1;overflow:auto;border:1px solid var(--border, #333);border-radius:6px;background:#0d0d0de6}.r-item{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid rgba(255,255,255,.06);transition:background .15s ease;cursor:pointer}.r-item>div:first-child{flex:1;min-width:0;display:flex;flex-direction:column;align-items:flex-start}.r-item>div:last-child{flex-shrink:0;display:flex;gap:6px}.r-item:hover{background:#ffffff0d}.r-item.selected{background:linear-gradient(90deg,rgba(20,240,255,.15) 0%,transparent 80%);border-left:3px solid var(--accent, #14f0ff);padding-left:9px}.r-name{font-weight:700;color:var(--text, #f5f7fb);-webkit-user-select:none;user-select:none}.r-meta{font-size:.85em;color:#a8b0c0;margin-top:2px}.r-chip{font-size:.75em;padding:2px 6px;border-radius:999px;background:#ff4d4d;color:#fff;margin-left:6px}.r-count-chip{padding:5px 10px;border-radius:999px;border:1px solid var(--border, #333);background:var(--panel-bg, #111);font-weight:800;font-size:.85em;color:var(--text, #f5f7fb);white-space:nowrap}.r-form{position:relative;display:flex;flex-direction:column;gap:16px}.r-mode-indicator{font-size:1.1em;font-weight:600;color:var(--accent, #14f0ff);padding-bottom:12px;border-bottom:2px solid var(--border, #333);margin-bottom:4px}.r-mode-indicator strong{color:var(--text, #f5f7fb)}.r-form label{display:flex;flex-direction:column;gap:6px;font-size:.9em;font-weight:600;color:var(--text, #f5f7fb)}.r-form input[type=text],.r-form textarea{font-size:1em;padding:10px 12px;border-radius:6px;border:1px solid var(--border, #333);background:#0d0d0de6;color:var(--text, #f5f7fb);width:100%;font-family:inherit;transition:border-color .2s ease,outline .2s ease}.r-form input[type=text]:focus,.r-form textarea:focus{outline:2px solid var(--accent, #14f0ff);outline-offset:1px;border-color:var(--accent, #14f0ff)}.r-form textarea{min-height:100px;resize:vertical;line-height:1.5}.btn-row{display:flex;gap:8px;margin-top:8px}.btn-row button{flex:1}.r-saved-chip{position:absolute;top:-8px;right:0;display:none;font-size:.75em;padding:3px 10px;border-radius:999px;background:#14f0ff;color:#111;font-weight:700;text-transform:uppercase;box-shadow:0 4px 10px #00000059;animation:fadeIn .3s ease}.r-saved-chip.show{display:inline-block}@keyframes fadeIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}body.roster-host-checkin .roster-right{display:none!important}body.roster-host-checkin .r-item{cursor:pointer}body.roster-host-checkin .r-item .r-btn{display:none!important}body.roster-host-checkin .r-item:hover{background:#7c5cff1f}@media(min-width:768px)and (max-width:979px){.roster-left{flex:0 0 400px;min-width:280px}.roster-right{padding-left:12px}.r-search-group{min-width:240px}}@media(max-width:767px){.roster-layout{flex-direction:column;height:auto;min-height:60vh;max-height:72vh}.roster-left{order:1;flex:1 1 auto;min-height:300px}.roster-right{order:2;flex:1 1 auto;padding-left:0;padding-top:16px;border-left:none;border-top:2px solid var(--border, #333);min-height:300px}.r-view-toggle{display:flex!important}.roster-layout.view-editor .roster-left,.roster-layout.view-list .roster-right{display:none}.r-search-group{min-width:100%}.r-topbar-row{flex-wrap:wrap}}@media(max-width:480px){.r-topbar{gap:8px}.r-topbar-row{gap:6px}.r-search-group{flex-direction:column}.r-search-group input,.r-search-group button{width:100%}.btn-row{flex-direction:column}.btn-row button{width:100%}}.action-bar{position:fixed;left:0;right:0;bottom:-120px;transition:bottom var(--transition-base, .15s) var(--ease-out, ease-out);background:linear-gradient(180deg,rgba(8,19,30,0) 0%,rgba(8,19,30,.6) 40%,var(--theme-bg-primary, #08131E) 80%);padding:var(--space-md, 12px) var(--space-lg, 16px);z-index:var(--z-action-bar, 980);border-top:1px solid rgba(31,184,198,.25);display:flex;justify-content:center;box-shadow:0 -4px 16px #0000004d}.action-bar-inner{width:min(1080px,96vw);display:flex;align-items:center;gap:var(--space-sm, 8px);background:var(--theme-bg-secondary, #0D1B2A);border:1px solid rgba(31,184,198,.3);border-radius:var(--radius-lg, 12px);padding:var(--space-md, 12px) var(--space-lg, 16px);position:relative;overflow-x:auto;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;scroll-behavior:smooth;scroll-padding:var(--space-md, 12px);box-shadow:var(--shadow-md, 0 4px 12px rgba(0, 0, 0, .15));scrollbar-width:auto;scrollbar-color:rgba(31,184,198,.6) rgba(255,255,255,.1)}.action-bar-inner::-webkit-scrollbar{height:14px}.action-bar-inner::-webkit-scrollbar-track{background:#ffffff0d;border-radius:var(--radius-sm, 6px);margin:0 var(--space-md, 12px)}.action-bar-inner::-webkit-scrollbar-thumb{background:var(--cv-secondary, #1FB8C6);border-radius:var(--radius-sm, 6px);border:2px solid var(--theme-bg-secondary, #0D1B2A);transition:background var(--transition-base, .15s) var(--ease-out, ease-out)}.action-bar-inner::-webkit-scrollbar-thumb:hover{background:var(--cv-accent, #3F8CFF)}.action-bar-inner::-webkit-scrollbar-thumb:active{background:var(--cv-accent, #3F8CFF);filter:brightness(1.2)}.action-name{flex:0 0 auto;text-align:left;font-weight:700;font-size:.95rem;color:var(--cv-secondary, #1FB8C6);white-space:nowrap;letter-spacing:.02em}.ab-btn{min-height:44px;padding:11px 16px;border-radius:var(--radius-md, 8px);border:1px solid rgba(0,0,0,.2);background:var(--cv-secondary, #1FB8C6);color:var(--theme-bg-primary, #08131E);font-weight:800;font-size:.9rem;font-family:inherit;letter-spacing:.01em;white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;cursor:pointer;-webkit-user-select:none;user-select:none;transition:all var(--transition-base, .15s) var(--ease-out, ease-out);box-shadow:0 2px 4px #0003}.ab-btn:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-1px);box-shadow:0 4px 8px #00000040}.ab-btn:active:not(:disabled){transform:scale(.98);box-shadow:0 1px 2px #0003}.ab-btn.secondary{background:var(--cv-success, #18B06B);border-color:#0003}.ab-btn.warn{background:var(--cv-warning, #FFBF4D);border-color:#0003}.ab-btn[disabled]{opacity:.4;cursor:not-allowed;pointer-events:none;filter:grayscale(.5)}#abPaid{display:none;background:#7c5cff;border-color:#7c5cff;color:#100629}#abPaid:focus-visible{outline:2px solid #b19cff;outline-offset:2px}#abHostCheckIn,#abHostCheckOut{display:none}body.host-view #abHostCheckIn,body.host-view #abHostCheckOut{display:inline-flex}#abBOR{display:none}body.host-view #abBOR,body.bouncer #abBOR{display:inline-block}.host-note{display:none;color:#b0b8ff;font-size:.9em;margin-right:auto;white-space:nowrap}body.host-view .host-note{display:block}#abDance,#abMinusDance{background:var(--cv-warning, #FFBF4D);border-color:#0003;color:var(--theme-bg-primary, #08131E);box-shadow:0 2px 6px #ffbf4d4d}#abDance:hover:not(:disabled),#abMinusDance:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-1px);box-shadow:0 4px 10px #ffbf4d66}#abDance:focus-visible,#abMinusDance:focus-visible{outline:3px solid rgba(255,191,77,.6);outline-offset:2px}#abVIP15,#abVIP30,#abVIP60,#abVipRemove{background:var(--cv-danger, #E34F4F);border-color:#0003;color:#fff;box-shadow:0 2px 6px #e34f4f4d}#abVIP15:hover:not(:disabled),#abVIP30:hover:not(:disabled),#abVIP60:hover:not(:disabled),#abVipRemove:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-1px);box-shadow:0 4px 10px #e34f4f66}#abVIP15:focus-visible,#abVIP30:focus-visible,#abVIP60:focus-visible,#abVipRemove:focus-visible{outline:3px solid rgba(227,79,79,.6);outline-offset:2px}#hostToggle.active{background:var(--cv-danger, #E34F4F);border-color:#0003;color:#fff}#abSpecial,#abMinusSpecial{background:var(--cv-success, #18B06B);border-color:#0003;color:#fff;box-shadow:0 2px 6px #18b06b4d}#abSpecial:hover:not(:disabled),#abMinusSpecial:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-1px);box-shadow:0 4px 10px #18b06b66}#abSpecial:focus-visible,#abMinusSpecial:focus-visible{outline:3px solid rgba(24,176,107,.6);outline-offset:2px}#abTour{background:#ff8b60;border-color:#0003;color:var(--theme-bg-primary, #08131E);box-shadow:0 2px 6px #ff8b604d}#abTour:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-1px);box-shadow:0 4px 10px #ff8b6066}#abTour:focus-visible{outline:3px solid rgba(255,139,96,.6);outline-offset:2px}#abAvailable{background:var(--cv-success, #18B06B);border-color:#0003;color:#fff;margin-left:auto;box-shadow:0 2px 6px #18b06b4d;font-weight:900}#abAvailable:hover:not(:disabled){filter:brightness(1.15);transform:translateY(-1px);box-shadow:0 4px 10px #18b06b80}#abAvailable:focus-visible{outline:3px solid rgba(24,176,107,.6);outline-offset:2px}body.bouncer .action-bar{bottom:0}body.bouncer{padding-bottom:76px}body.bouncer .quick-actions{display:none!important}body.bouncer .action-bar-inner{overflow-x:auto;flex-wrap:nowrap}@media(max-width:768px){.action-bar{box-shadow:0 -2px 8px #0003}.action-bar-inner{box-shadow:0 2px 6px #0000001a;padding:var(--space-sm, 8px) var(--space-md, 12px)}.ab-btn{box-shadow:0 1px 3px #00000026}.ab-btn:hover:not(:disabled){box-shadow:0 2px 6px #0003}}@media(max-width:700px){.action-bar-inner{touch-action:pan-x}.action-bar-inner:before,.action-bar-inner:after{content:"";position:absolute;top:2px;bottom:2px;width:20px;pointer-events:none;z-index:1}.action-bar-inner:before{left:2px;background:linear-gradient(90deg,var(--theme-bg-secondary, #0D1B2A),rgba(13,27,42,0))}.action-bar-inner:after{right:2px;background:linear-gradient(270deg,var(--theme-bg-secondary, #0D1B2A),rgba(13,27,42,0))}.ab-btn{padding:9px 12px;font-size:.85rem;min-height:42px}}@media(min-width:701px)and (max-width:980px){.action-bar-inner{flex-wrap:nowrap}}@media(max-width:640px){.action-bar-inner{gap:var(--space-xs, 6px)}.ab-btn{padding:8px 10px;font-size:.82rem;min-height:40px}}@media(max-width:480px){.action-bar{padding:var(--space-sm, 8px)}.action-bar-inner{gap:var(--space-xs, 4px);padding:var(--space-sm, 8px)}.ab-btn{padding:7px 9px;font-size:.8rem;min-height:40px}}@media(max-width:420px){.action-bar-inner{gap:4px}.ab-btn{padding:6px 8px;font-size:.78rem;min-height:38px}}#abBOR,#abBORMinus{background:var(--cv-success, #18B06B);border-color:#0003;color:#fff;box-shadow:0 2px 6px #18b06b4d}#abBOR:hover:not(:disabled),#abBORMinus:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-1px);box-shadow:0 4px 10px #18b06b66}#abBOR:focus-visible,#abBORMinus:focus-visible{outline:3px solid rgba(24,176,107,.6);outline-offset:2px}#abPaid{background:#7c5cff;border-color:#0003;color:#fff;box-shadow:0 2px 6px #7c5cff4d}#abPaid:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-1px);box-shadow:0 4px 10px #7c5cff66}#abPaid:focus-visible{outline:3px solid rgba(124,92,255,.6);outline-offset:2px}@media(prefers-reduced-motion:reduce){.action-bar,.action-bar-inner,.ab-btn{transition:none}.ab-btn:hover:not(:disabled){transform:none}}@media(prefers-contrast:high){.action-bar-inner,.ab-btn{border-width:2px}}.shift-type-btn{background:var(--panel-bg);border:2px solid var(--border);color:var(--text);border-radius:6px;cursor:pointer;transition:all .2s ease;font-weight:500}.shift-type-btn:hover{background:var(--hover-bg);border-color:var(--accent);transform:translateY(-1px)}.shift-type-btn:active{transform:translateY(0)}.shift-type-btn.selected{background:var(--accent);border-color:var(--accent);color:#fff}.session-indicator{margin-left:12px;padding:4px 12px;background:var(--accent);color:#fff;border-radius:4px;font-size:.875rem;font-weight:600;letter-spacing:.02em;white-space:nowrap}#start-shift-dialog{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.session-chip{background:linear-gradient(135deg,var(--accent) 0%,var(--accent-dark, var(--accent)) 100%);border:2px solid var(--accent);color:#fff;font-weight:700;box-shadow:0 2px 8px #0003}.session-chip .total-count{font-weight:900;text-shadow:0 1px 2px rgba(0,0,0,.3)}@media(max-width:768px){.session-indicator{display:block!important;margin-left:0;margin-top:8px;text-align:center}}li{background:var(--cell-bg);margin:3px 0;padding:var(--row-pad);border-radius:4px;cursor:grab;font-size:1em;transition:background .12s ease,box-shadow .12s ease}li[data-selected="1"]{outline:2px solid #14f0ff;box-shadow:0 0 0 3px #14f0ff33 inset}.limited li{cursor:default}li.state-dance{border-left:2px solid yellow}li.state-vip{border-left:2px solid red}li.state-special{border-left:2px solid #39ff14}li.state-tour{border-left:2px solid #ff3ea5}li.state-dance .li-header .name{color:#ff0}li.state-vip .li-header .name{color:red}li.state-special .li-header .name{color:#39ff14}li.state-tour .li-header .name{color:#ff3ea5}.state-bor{outline:2px solid #14B8A6;background:#14b8a614}.name-bor{color:#14b8a6!important}.chip-bor{background:transparent;color:inherit;border-radius:999px;padding:0 6px}.chip-hidden{display:none!important}.totals-bar .chip-bor{background:var(--panel-bg);border-color:var(--border);color:var(--text)}.li-header{display:flex;align-items:center;gap:var(--row-gap);min-height:var(--li-min-h);white-space:nowrap;flex-wrap:nowrap;overflow:hidden;line-height:var(--row-line)}.li-header .name{flex:1 1 auto;min-width:0;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:700}.li-header .note-ico,.li-header .time,.li-header .timer,.li-header .counts{flex:0 0 auto;white-space:nowrap}.li-header .time{font-size:.9em;color:var(--muted);font-variant-numeric:tabular-nums;display:inline-block;transform:scale(var(--time-scale));transform-origin:left center;cursor:text;-webkit-user-select:none;user-select:none}.li-header .time.is-empty{opacity:.45}.li-header .time.is-disabled{cursor:default}.li-header .timer{margin-left:auto;font-family:monospace;font-size:.9em;display:inline-block;transform:scale(var(--time-scale));transform-origin:left center}.timer-bor{color:#14b8a6!important}.badge{padding:2px 6px;border-radius:999px;border:1px solid var(--border);background:transparent;font-size:.78em;margin-left:4px;display:inline-block;transform:scale(var(--chip-scale));transform-origin:left center}.badge.badge-vip{border-color:#ff6b6b}.badge .vip-breakdown{opacity:.85;margin-left:2px;font-variant-numeric:tabular-nums;white-space:nowrap}.badge.zero{opacity:.6}.badge.zero{display:none!important}.badge-owed{border-color:#ff8b60;background:#ff6b6b1f;color:#ffb39c}.details{display:none;margin-top:4px}.btns-line{display:grid;grid-template-columns:repeat(4,1fr);gap:3px 2px;margin:4px 0 3px}.btns-line>*{min-width:0}.btns-line .btn-small{margin:0;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;font-size:.7em}.btns-line>.counter-control{grid-row:1}.btns-line>.btn-small:not(.counter-control *){grid-row:2}#checkedOut li{opacity:.7}#checkedOut .li-header .name{font-style:italic}#checkedOut .li-header:after{content:"✓";margin-left:8px;color:#5cffb6;font-weight:800}.limited .li-header{gap:calc(var(--row-gap) - 2px);min-height:calc(var(--li-min-h) - 4px)}.limited li{padding:calc(var(--row-pad) - 1px)}@media(max-width:700px){.limited .li-header .time{font-size:.85em}.limited .li-header .timer,.limited .li-header .note-ico{display:none}.limited .column{overflow-x:hidden}}.sf-song-notes{display:flex;flex-direction:column;gap:4px;background:radial-gradient(circle at top,#2d374859,#0f121cf2);border:1px solid rgba(148,163,184,.3);border-radius:12px;padding:6px 8px;box-shadow:inset 0 1px #ffffff0a,0 18px 35px #0f172a38}.sf-song-notes .note-input{background:transparent;border:1px solid rgba(148,163,184,.22);border-radius:8px;padding:6px 8px;font-size:.9em;color:#fcd9b6;resize:none;min-height:32px;max-height:100px;box-shadow:inset 0 1px 4px #0000004d;transition:min-height .2s ease}.sf-song-notes .note-input:focus{outline:2px solid rgba(125,211,252,.35);border-color:#7dd3fc8c;min-height:54px}.stage-timer-large{font-family:Courier New,Consolas,Monaco,monospace;font-size:1.8rem;font-weight:700;letter-spacing:.1em;padding:0 16px;color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.6);flex-grow:1;text-align:center;-webkit-user-select:none;user-select:none}@media(max-width:768px){.stage-timer-large{font-size:1.4rem;padding:0 8px}}.column{scrollbar-width:thin;scrollbar-color:#14f0ff33 transparent;scrollbar-gutter:stable}.column::-webkit-scrollbar{width:10px}.column::-webkit-scrollbar-track{background:transparent}.column::-webkit-scrollbar-thumb{background-color:#14f0ff59;border-radius:8px;border:2px solid transparent;background-clip:content-box}.column:hover::-webkit-scrollbar-thumb{background-color:#14f0ff99}.board{scrollbar-width:thin;scrollbar-color:#14f0ff33 transparent;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scrollbar-gutter:stable}.board::-webkit-scrollbar{height:10px}.board::-webkit-scrollbar-track{background:transparent}.board::-webkit-scrollbar-thumb{background-color:#14f0ff59;border-radius:8px;border:2px solid transparent;background-clip:content-box}.board:hover::-webkit-scrollbar-thumb{background-color:#14f0ff99}.action-bar-inner{scrollbar-width:thin;scrollbar-color:#14f0ff33 transparent;scrollbar-gutter:stable}.action-bar-inner::-webkit-scrollbar{height:10px}.action-bar-inner::-webkit-scrollbar-track{background:transparent}.action-bar-inner::-webkit-scrollbar-thumb{background-color:#14f0ff59;border-radius:8px;border:2px solid transparent;background-clip:content-box}.action-bar-inner:hover::-webkit-scrollbar-thumb{background-color:#14f0ff99}@keyframes pulse{0%{box-shadow:0 0 #14f0ffcc}70%{box-shadow:0 0 0 10px #14f0ff00}to{box-shadow:0 0 #14f0ff00}}@keyframes offlinePulse{0%{box-shadow:0 0 #ff4d4dbf}70%{box-shadow:0 0 0 10px #ff4d4d00}to{box-shadow:0 0 #ff4d4d00}}@keyframes boardFlash{0%{box-shadow:0 0 #14f0ffcc inset}to{box-shadow:0 0 0 14px #14f0ff00 inset}}@keyframes rosterPulse{0%{box-shadow:0 0 #14f0ffb3;background:#0f2f35}to{box-shadow:0 0 0 14px #14f0ff00;background:transparent}}@keyframes highlight-pulse{0%{box-shadow:0 0 #1fb8c6cc;transform:scale(1)}50%{box-shadow:0 0 0 8px #1fb8c600;transform:scale(1.02)}to{box-shadow:0 0 #1fb8c600;transform:scale(1)}}.conn-pill.offline{animation:offlinePulse 1.2s ease-in-out infinite}.board-flash{animation:boardFlash .9s ease-out 1;outline:2px solid var(--border)}.r-item.flash{animation:rosterPulse .9s ease-out 1}.skip-link{position:absolute;top:-100px;left:0;background:var(--cv-accent, #3F8CFF);color:#fff;padding:12px 24px;font-weight:700;text-decoration:none;border-radius:0 0 var(--radius-md, 8px) 0;z-index:var(--z-skip-link, 9999);transition:top var(--transition-base, .15s) var(--ease-out, ease-out)}.skip-link:focus{top:0;outline:3px solid var(--cv-warning, #FFBF4D);outline-offset:2px}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--cv-accent, #3F8CFF);outline-offset:2px;position:relative;z-index:1}a:focus:not(:focus-visible),button:focus:not(:focus-visible),input:focus:not(:focus-visible),textarea:focus:not(:focus-visible),select:focus:not(:focus-visible),[tabindex]:focus:not(:focus-visible){outline:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal}.keyboard-hint{display:inline-flex;align-items:center;gap:4px;padding:2px 6px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:var(--radius-sm, 4px);font-size:.75rem;font-weight:600;color:#ffffffb3;font-family:monospace;margin-left:8px}@media(pointer:coarse){.keyboard-hint{display:none}}.focus-trap{position:relative}.focus-trap:focus{outline:none}@media(prefers-contrast:high){*{border-width:2px!important}body{background:#000;color:#fff}*:focus-visible{outline-width:4px;outline-offset:3px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}*{transform:none!important}}.color-status{position:relative;padding-left:24px}.color-status:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:16px;height:16px}.color-status--success:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2318B06B' stroke-width='3'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E")}.color-status--warning:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFBF4D' stroke-width='3'%3E%3Cpath d='M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z'%3E%3C/path%3E%3Cline x1='12' y1='9' x2='12' y2='13'%3E%3C/line%3E%3Cline x1='12' y1='17' x2='12.01' y2='17'%3E%3C/line%3E%3C/svg%3E")}.color-status--danger:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23E34F4F' stroke-width='3'%3E%3Cline x1='18' y1='6' x2='6' y2='18'%3E%3C/line%3E%3Cline x1='6' y1='6' x2='18' y2='18'%3E%3C/line%3E%3C/svg%3E")}@media(pointer:coarse){button,a,input[type=button],input[type=submit],input[type=reset],[role=button]{min-height:44px;min-width:44px}a:not(.btn-primary):not(.btn-secondary-new):not(.btn-tertiary),button:not(.btn-primary):not(.btn-secondary-new):not(.btn-tertiary){padding:12px 16px}}[aria-live=polite],[aria-live=assertive]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[disabled],[aria-disabled=true]{opacity:.4;cursor:not-allowed;pointer-events:none;filter:grayscale(.5)}.conn-pill{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:4px 10px;border-radius:999px;font-weight:900;border:1px solid var(--border);-webkit-user-select:none;user-select:none;cursor:default;font-size:.82em;line-height:1em;min-height:1.6em}.conn-pill:focus{outline:2px solid var(--border);outline-offset:2px}.conn-pill.ok{background:var(--accent);color:#111}.conn-pill.offline{background:#ff4d4d;color:#fff;border-color:#ff9a9a}.theme-menu{position:absolute;z-index:2000;padding:12px;border-radius:12px;border:1px solid rgba(255,255,255,.12);background:var(--panel-bg);color:var(--text);box-shadow:0 14px 30px #00000059;min-width:220px;max-width:280px;display:flex;flex-direction:column;gap:8px}.theme-menu[hidden]{display:none}.theme-option{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:10px;border:1px solid rgba(255,255,255,.08);background:#ffffff08;color:inherit;cursor:pointer;font-size:.92em;transition:border-color .15s ease,background .15s ease,transform .15s ease}.theme-option:hover,.theme-option:focus{border-color:#ffffff40;background:#ffffff14;outline:none}.theme-option.is-active{border-color:var(--theme-accent, var(--border));box-shadow:0 0 0 1px var(--theme-accent, var(--border));background:#ffffff12}.theme-option .theme-swatches{display:flex;gap:4px}.theme-option .theme-swatch{width:16px;height:16px;border-radius:4px;background:var(--swatch-color, #fff);border:1px solid rgba(0,0,0,.18);box-shadow:0 0 0 1px #ffffff1f inset}.sf-toast{position:fixed;bottom:32px;left:50%;transform:translate(-50%);background:#0f0f0feb;padding:8px 14px;border-radius:8px;color:var(--text);font-size:.9em;box-shadow:0 10px 30px #00000073;opacity:0;pointer-events:none;transition:opacity .3s ease;z-index:4000}.sf-toast.show{opacity:1}.version-banner{position:fixed;inset:0;background:#000000d1;color:var(--text);display:none;align-items:center;justify-content:center;text-align:center;padding:24px;z-index:4000}.version-banner.show{display:flex;flex-direction:column;gap:12px}.version-banner .version-title{font-size:1.4em;font-weight:900}.version-banner .version-msg{font-size:1em;font-weight:500}.backdrop{position:fixed;inset:0;background:#0000008c;display:none;align-items:center;justify-content:center;z-index:9999}.modal{background:var(--panel-bg);color:var(--text);border:2px solid var(--border);border-radius:10px;width:min(980px,96vw);padding:14px;text-align:left;max-height:92vh;overflow:auto}.modal h3{margin:0 0 8px;color:var(--accent);font-size:1.05em}.alert-banner{display:none;position:sticky;top:0;z-index:9998;background:#f2f6ff;color:#06122a;border-bottom:2px solid var(--border);padding:10px 12px;text-align:left;gap:10px;align-items:center;justify-content:space-between;width:100%;box-sizing:border-box;min-height:48px;flex-wrap:wrap}.alert-banner .msg{font-weight:800}.alert-banner .actions button{padding:6px 10px;border-radius:6px;border:none;cursor:pointer}.alert-banner .snooze{background:#d3d9ea}.alert-banner .dismiss{background:#14f0ff;color:#111}.sf-Tooltip{position:fixed;max-width:240px;padding:6px 8px;border-radius:6px;background:#1c1c1ef2;color:#fff;font:500 12px/1.3 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;box-shadow:0 6px 20px #00000040;pointer-events:none;z-index:2000;transform-origin:center;transition:opacity .12s ease,transform .12s ease;opacity:1;white-space:pre-line}@media(hover:none){.sf-Tooltip{display:none}.sf-Tooltip.sf-touch{display:block}}@media(prefers-reduced-motion:reduce){.sf-Tooltip{transition:none}}.debug-chip{display:none;align-items:center;gap:8px;padding:4px 8px;border:1px dashed var(--border);background:#0b1b1f;color:#baf7ff;font-size:12px;margin-left:4px}.debug-chip .dot{width:8px;height:8px;border-radius:999px;background:#ff5d5d}.debug-chip.online .dot{background:#39ff14}.debug-chip .copy{cursor:pointer;border-bottom:1px dotted #baf7ff}.night-modal{width:min(520px,92vw)}.night-modal p{margin:0 0 12px;line-height:1.4}.night-skip{display:flex;align-items:center;gap:6px;font-size:.8em;color:var(--muted);margin-bottom:12px}.night-skip input{accent-color:#38bdf8}
