:root{--color-hero: #3b82f6;--color-hero-light: #60a5fa;--color-hero-bg: rgba(59, 130, 246, .15);--color-hero-bg-strong: rgba(59, 130, 246, .3);--color-director: #ef4444;--color-director-light: #f87171;--color-director-bg: rgba(239, 68, 68, .15);--color-director-bg-strong: rgba(239, 68, 68, .3);--color-success: #22c55e;--color-warning: #f59e0b;--surface-0: transparent;--surface-1: rgba(255, 255, 255, .04);--surface-2: rgba(255, 255, 255, .06);--surface-3: rgba(255, 255, 255, .08);--surface-4: rgba(255, 255, 255, .12);--border-subtle: rgba(255, 255, 255, .06);--border-default: rgba(255, 255, 255, .1);--border-medium: rgba(255, 255, 255, .15);--border-strong: rgba(255, 255, 255, .2);--text-secondary: rgba(255, 255, 255, .7);--text-muted: rgba(255, 255, 255, .55);--text-faint: rgba(255, 255, 255, .4);--text-ghost: rgba(255, 255, 255, .3);--font-2xs: 10px;--font-xs: 11px;--font-sm: 12px;--font-base: 13px;--font-md: 14px;--font-lg: 15px;--font-xl: 16px;--font-2xl: 18px;--space-1: 2px;--space-2: 4px;--space-3: 6px;--space-4: 8px;--space-5: 10px;--space-6: 12px;--space-7: 16px;--space-8: 24px;--radius-sm: 3px;--radius-md: 4px;--radius-lg: 6px;--radius-xl: 8px;--radius-full: 50%;--radius-icon-btn: 30%;--transition-fast: .15s ease;--icon-filter-invert: brightness(0) invert(1);--overlay-backdrop: rgba(0, 0, 0, .6);--tooltip-bg: rgba(0, 0, 0, .92);--tooltip-shadow: 0 2px 8px rgba(0, 0, 0, .3);--font-family: "Roboto", "Helvetica Neue", "Helvetica", "Arial", sans-serif;--hover-ghost: rgba(255, 255, 255, .03);--hover-subtle: rgba(255, 255, 255, .05);--hover-active: rgba(255, 255, 255, .08)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-family);font-size:var(--font-base);line-height:1.4;overflow-x:hidden;font-feature-settings:"lnum" 1;font-variant-numeric:lining-nums}.icon-invert{filter:var(--icon-filter-invert)}.text-hero{color:var(--color-hero)}.text-director{color:var(--color-director)}.app-container{display:flex;flex-direction:column;min-height:100px;width:100%;overflow-y:auto;padding:var(--space-4);gap:var(--space-4)}.loading-state,.waiting-state{display:flex;align-items:center;justify-content:center;height:100%;opacity:.6;font-size:var(--font-md);text-align:center;padding:var(--space-8)}.side-hero{color:var(--color-hero-light)}.side-director{color:var(--color-director-light)}.encounter-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5);border-radius:var(--radius-lg);background:var(--surface-1);box-shadow:0 2px 12px #00000026;flex-shrink:0}.encounter-header__status{display:flex;align-items:center;gap:var(--space-5)}.encounter-header__round{font-weight:700;font-size:var(--font-lg)}.encounter-header__side{font-size:var(--font-sm);font-weight:600;padding:var(--space-1) var(--space-4);border-radius:10px}.encounter-header__side.side-hero{background:var(--color-hero-bg)}.encounter-header__side.side-director{background:var(--color-director-bg)}.encounter-header__controls{display:flex;gap:var(--space-3)}.encounter-header__trackers{display:flex;gap:var(--space-4);font-size:var(--font-sm)}.btn{border:none;border-radius:var(--radius-md);cursor:pointer;font-size:var(--font-sm);font-weight:500;padding:var(--space-3) var(--space-6);transition:background var(--transition-fast),opacity var(--transition-fast)}.btn:hover{opacity:.9;background-image:linear-gradient(var(--hover-ghost),var(--hover-ghost))}.btn:active{opacity:.8}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-sm{padding:var(--space-1) var(--space-4);font-size:var(--font-xs)}.btn-primary{background:var(--color-hero);color:#fff}.btn-secondary{background:var(--surface-4);color:inherit}.btn-danger{background:var(--color-director);color:#fff}.btn-success{background:var(--color-success);color:#fff}.btn-ghost{background:transparent;color:var(--text-muted);border:1px solid var(--border-medium)}.btn-ghost:hover{background:var(--hover-subtle);color:var(--text-secondary)}.phase-setup,.phase-combat,.phase-ended{display:flex;flex-direction:column;gap:var(--space-4);flex:1;min-height:0}.initiative-list{display:flex;flex-direction:column;gap:var(--space-1);flex:1;overflow-y:auto;min-height:0;padding:var(--space-2) 0}.initiative-list__section-label{font-size:var(--font-2xs);font-weight:600;text-transform:uppercase;letter-spacing:.5px;padding:var(--space-4) var(--space-5) var(--space-1);color:var(--text-faint)}.initiative-list__empty{padding:var(--space-7);text-align:center;color:var(--text-muted);font-size:var(--font-base)}.creature-entry{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-5);border-radius:var(--radius-md);background:var(--surface-0);transition:background var(--transition-fast),opacity var(--transition-fast);min-height:36px}.creature-entry--hero{border-left:3px solid var(--color-hero)}.creature-entry--director{border-left:3px solid var(--color-director)}.creature-entry--active-hero{background:var(--color-hero-bg-strong)}.creature-entry--active-director{background:var(--color-director-bg-strong)}.creature-entry--acted{opacity:.5}.creature-entry--clickable{cursor:pointer}.creature-entry--clickable:hover{background:var(--hover-ghost)}.creature-entry__name{flex:1;font-weight:400;font-size:var(--font-base);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.creature-entry__name--active{font-weight:600}.creature-entry__org-label{font-size:var(--font-2xs);color:var(--text-muted);font-style:italic;margin-left:var(--space-2)}.creature-entry__conditions{display:flex;gap:var(--space-1);flex-shrink:0}.creature-entry__check{font-size:var(--font-md);color:var(--text-faint);flex-shrink:0;margin-left:var(--space-2)}.action-pips{display:flex;gap:2px;flex-shrink:0;margin-left:var(--space-2)}.action-pip{position:relative;display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:var(--radius-icon-btn);border:1px solid var(--border-subtle);background:transparent;cursor:pointer;padding:0;transition:background var(--transition-fast),border-color var(--transition-fast),opacity var(--transition-fast)}.action-pip__icon{width:14px;height:14px;filter:var(--icon-filter-invert);opacity:.35;transition:opacity var(--transition-fast);pointer-events:none}.action-pip--available{border-color:var(--border-subtle)}.action-pip--available:hover{background:var(--hover-subtle);border-color:var(--border-default)}.action-pip--used{background:#ffffff1f;border-color:var(--border-strong)}.action-pip--used .action-pip__icon{opacity:1}.action-pip--used:hover{background:#ffffff29}.action-pip--warning{border-color:var(--color-warning);background:#f59e0b1a}.action-pip--warning .action-pip__icon{opacity:.55}.action-pip--warning:hover{background:#f59e0b2e}.action-pip--blocked{border-color:#ef444466;background:#ef444414;cursor:not-allowed;opacity:.5}.action-pip--blocked .action-pip__icon{opacity:.3}.action-pip--blocked:after{content:"";position:absolute;top:3px;right:3px;bottom:3px;left:3px;border-top:1.5px solid rgba(239,68,68,.6);transform:rotate(-45deg);pointer-events:none}.action-pip__tooltip{display:none;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);background:var(--tooltip-bg);color:#fff;padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);font-size:var(--font-xs);line-height:1.3;white-space:nowrap;z-index:100;pointer-events:none;box-shadow:var(--tooltip-shadow)}.action-pip:hover .action-pip__tooltip{display:block}.action-pips--readonly .action-pip{cursor:default}.action-pips--readonly .action-pip:hover{background:transparent;border-color:var(--border-subtle)}.action-pips--readonly .action-pip--used:hover{background:#ffffff1f;border-color:var(--border-strong)}.action-pips--readonly .action-pip--warning:hover{background:#f59e0b1a;border-color:var(--color-warning)}.group-header{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-5);border-left:3px solid var(--color-director);border-radius:var(--radius-md);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background var(--transition-fast)}.group-header:hover{background:var(--hover-ghost)}.group-header--active{background:var(--color-director-bg)}.group-header--acted{opacity:.5}.group-header__toggle{font-size:var(--font-2xs);opacity:.6;flex-shrink:0}.group-header__name{font-weight:500;font-size:var(--font-base);flex:1}.group-header__chevron{font-size:var(--font-2xs);color:var(--text-muted);transition:transform var(--transition-fast);transform:rotate(0);flex-shrink:0}.group-header__chevron--expanded{transform:rotate(90deg)}.group-creatures{padding-left:14px;display:flex;flex-direction:column;gap:1px;animation:expand-in .18s ease both}@keyframes expand-in{0%{opacity:0;max-height:0;padding-top:0;padding-bottom:0}to{opacity:1;max-height:500px;padding-top:0;padding-bottom:0}}.retainer-entry{padding-left:20px;font-size:var(--font-sm);opacity:.85}.retainer-indent{padding-left:20px}.mark-done-btn{margin:var(--space-1) var(--space-5) var(--space-1) auto;padding:var(--space-1) var(--space-5);font-size:var(--font-xs);border-radius:var(--radius-lg);border:1px solid var(--border-strong);background:var(--surface-3);color:#fff;cursor:pointer;transition:background var(--transition-fast)}.mark-done-btn:hover{background:var(--hover-active)}.turn-history{margin-top:var(--space-2);border-top:1px solid var(--border-subtle);padding-top:var(--space-2)}.turn-history__toggle{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:var(--font-2xs);font-weight:600;text-transform:uppercase;letter-spacing:.5px;padding:var(--space-1) var(--space-2);width:100%;text-align:left}.turn-history__toggle:hover{color:var(--text-secondary)}.turn-history__list{margin:var(--space-2) 0 0 var(--space-7);padding:0;font-size:var(--font-xs);color:var(--text-secondary)}.turn-history__item{padding:1px 0}.turn-history__item--hero{color:var(--color-hero-light)}.turn-history__item--director{color:var(--color-director-light)}.creature-detail{display:flex;flex-direction:column;gap:var(--space-5);padding:var(--space-5);border-radius:var(--radius-lg);background:var(--surface-2);position:relative}.creature-detail__header{display:flex;align-items:center;gap:var(--space-4)}.creature-detail__name{font-size:var(--font-xl);font-weight:700;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.creature-detail__side-dot{width:10px;height:10px;border-radius:var(--radius-full);flex-shrink:0}.creature-detail__side-dot--hero{background:var(--color-hero)}.creature-detail__side-dot--director{background:var(--color-director)}.creature-detail__close{background:none;border:none;color:inherit;cursor:pointer;font-size:var(--font-xl);padding:var(--space-1) var(--space-2);opacity:.6;line-height:1;flex-shrink:0;border-radius:var(--radius-icon-btn);transition:opacity var(--transition-fast),background var(--transition-fast)}.creature-detail__close:hover{opacity:1;background:var(--hover-subtle)}.creature-detail__tags{display:flex;gap:var(--space-3);flex-wrap:wrap}.creature-detail__tag{font-size:var(--font-2xs);padding:1px var(--space-3);border-radius:var(--radius-sm);background:var(--surface-4);color:var(--text-secondary)}.creature-detail__section-label{font-size:var(--font-2xs);font-weight:600;text-transform:uppercase;letter-spacing:.5px;opacity:.5;margin-bottom:var(--space-1)}.creature-detail__empty{font-size:var(--font-xs);color:var(--text-faint);padding:var(--space-1) 0}.condition-row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-1) 0;font-size:var(--font-sm)}.condition-row__icon{width:16px;height:16px;flex-shrink:0}.condition-row__name{font-weight:500;flex:1}.condition-row__duration{font-size:var(--font-2xs);color:var(--text-muted);flex-shrink:0}.condition-row__note{font-size:var(--font-2xs);color:var(--text-muted);flex-shrink:0;font-style:italic}.condition-row__remove{background:none;border:none;color:var(--color-director-light);cursor:pointer;font-size:var(--font-md);padding:var(--space-1);line-height:1;flex-shrink:0;border-radius:var(--radius-icon-btn);transition:color var(--transition-fast),background var(--transition-fast)}.condition-row__remove:hover{color:var(--color-director);background:var(--hover-subtle)}.condition-add{display:flex;gap:var(--space-2);align-items:center;flex-wrap:wrap;margin-top:var(--space-2)}.form-select{font-size:var(--font-xs);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);border:1px solid var(--border-medium);background:var(--surface-3);color:inherit}.form-input{font-size:var(--font-xs);padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--border-medium);background:var(--surface-3);color:inherit;flex:1;min-width:60px}.form-textarea{font-size:var(--font-sm);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);border:1px solid var(--border-medium);background:var(--surface-2);color:inherit;resize:vertical;min-height:48px;width:100%;font-family:inherit}.form-number-input{font-size:var(--font-xs);padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--border-medium);background:var(--surface-3);color:inherit;width:50px;text-align:center}.check-row{display:flex;align-items:center;gap:var(--space-3);font-size:var(--font-sm);cursor:pointer}.check-row--compact{padding:var(--space-1) 0}.minion-count-row{display:flex;align-items:center;gap:var(--space-3);font-size:var(--font-sm)}.condition-badge{position:relative;display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:var(--radius-md);cursor:default;flex-shrink:0}.condition-badge__icon{width:16px;height:16px}.condition-badge__source-dot{position:absolute;bottom:-2px;right:-2px;width:8px;height:8px;border-radius:var(--radius-full);background:var(--color-warning);border:1px solid rgba(0,0,0,.3)}.condition-badge__tooltip{display:none;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);background:var(--tooltip-bg);color:#fff;padding:var(--space-3) var(--space-5);border-radius:var(--radius-lg);font-size:var(--font-xs);line-height:1.4;white-space:normal;width:180px;z-index:100;pointer-events:none;box-shadow:var(--tooltip-shadow)}.condition-badge:hover .condition-badge__tooltip{display:block}.save-ends-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay-backdrop);display:flex;align-items:center;justify-content:center;z-index:200}.save-ends-dialog{background:#1e1e2e;border:1px solid var(--border-default);border-radius:var(--radius-xl);padding:var(--space-7);width:90%;max-width:340px;display:flex;flex-direction:column;gap:var(--space-6)}.save-ends-dialog__title{font-size:var(--font-md);font-weight:600;color:#fff}.save-ends-dialog__subtitle{font-size:var(--font-xs);color:var(--text-muted);margin-top:calc(-1 * var(--space-2))}.save-ends-condition{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--surface-1)}.save-ends-condition__name{display:flex;align-items:center;gap:var(--space-3);font-size:var(--font-sm)}.save-ends-condition__note{font-size:var(--font-2xs);opacity:.5}.save-ends-result--saved{font-size:var(--font-sm);font-weight:600;color:var(--color-success)}.save-ends-result--failed{font-size:var(--font-sm);font-weight:600;color:var(--color-director-light)}.save-ends-dialog__footer{display:flex;justify-content:space-between;gap:var(--space-4);margin-top:var(--space-2)}.setup-panel{display:flex;flex-direction:column;gap:var(--space-6);overflow-y:auto}.setup-panel--waiting{display:flex;align-items:center;justify-content:center;height:100%;opacity:.6;text-align:center;padding:var(--space-8)}.setup-panel h2{font-size:var(--font-xl);font-weight:600}.setup-panel h3{font-size:var(--font-base);font-weight:600;margin-bottom:var(--space-2)}.setup-section{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-lg);background:var(--surface-1)}.setup-section--actions{align-items:center}.setup-empty{font-size:var(--font-sm);color:var(--text-muted);padding:var(--space-1) 0}.setup-token-list{list-style:none;display:flex;flex-direction:column;gap:var(--space-2)}.setup-token-item{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-2) 0}.setup-token-label{display:flex;align-items:center;gap:var(--space-2);flex:1;cursor:pointer;font-size:var(--font-sm)}.setup-token-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.setup-token-row{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-2) 0}.setup-token-row label{flex:1;font-size:var(--font-sm)}.setup-token-row select{font-size:var(--font-xs);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);border:1px solid var(--border-medium);background:var(--surface-3);color:inherit}.group-builder{display:flex;flex-direction:column;gap:var(--space-3)}.group-builder__row{display:flex;gap:var(--space-3);align-items:center}.group-builder__row input[type=text],.group-builder__row input[type=number]{flex:1;font-size:var(--font-sm);padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);border:1px solid var(--border-medium);background:var(--surface-3);color:inherit}.group-builder__row input[type=number]{width:60px;flex:none}.setup-group-color{width:24px;height:24px;border:none;border-radius:var(--radius-md);padding:0;cursor:pointer;background:transparent;flex-shrink:0}.setup-group-color::-webkit-color-swatch-wrapper{padding:var(--space-1)}.setup-group-color::-webkit-color-swatch{border:1px solid var(--border-strong);border-radius:var(--radius-sm)}.setup-group-header{display:flex;align-items:center;gap:var(--space-3);font-size:var(--font-sm)}.setup-group-wave{font-size:var(--font-2xs);color:var(--text-muted);font-style:italic}.setup-btn-remove{background:none;border:none;color:var(--color-director-light);cursor:pointer;font-size:var(--font-xl);padding:var(--space-1);line-height:1;margin-left:auto;border-radius:var(--radius-icon-btn);transition:color var(--transition-fast),background var(--transition-fast)}.setup-btn-remove:hover{color:var(--color-director);background:var(--hover-subtle)}.setup-group-creatures{display:flex;flex-direction:column;gap:var(--space-2)}.setup-add-group{display:flex;gap:var(--space-3);align-items:center}.setup-add-group input[type=text],.setup-add-group input[type=number]{font-size:var(--font-sm);padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);border:1px solid var(--border-medium);background:var(--surface-3);color:inherit}.setup-add-group input[type=text]{flex:1}.setup-round-input{width:60px;flex:none}.setup-drop-zone{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3) var(--space-4);border:1px dashed var(--border-medium);border-radius:var(--radius-lg);background:#ffffff05;transition:border-color var(--transition-fast),background var(--transition-fast)}.setup-drop-zone.drag-over{border-color:#3b82f699;background:#3b82f614}.setup-drag-item{display:flex;align-items:center;padding:var(--space-2) var(--space-4);font-size:var(--font-sm);border-radius:var(--radius-md);background:var(--surface-3);border:1px solid var(--border-default);cursor:grab;-webkit-user-select:none;user-select:none;transition:opacity var(--transition-fast),background var(--transition-fast)}.setup-drag-item:hover{background:var(--hover-active)}.setup-drag-item:active{cursor:grabbing;opacity:.5}.setup-drop-hint{font-size:var(--font-xs);color:var(--text-ghost);font-style:italic;padding:var(--space-2) 0;text-align:center}.setup-unassigned-pool{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3) var(--space-4);border:1px dashed var(--border-default);border-radius:var(--radius-lg);background:#ffffff03;transition:border-color var(--transition-fast),background var(--transition-fast)}.setup-unassigned-pool.drag-over{border-color:#ef444480;background:#ef44440f}.setup-unassigned-label{font-size:var(--font-2xs);font-weight:600;text-transform:uppercase;letter-spacing:.5px;opacity:.5;margin-bottom:var(--space-1)}.setup-surprise-row,.setup-first-side{display:flex;align-items:center;gap:var(--space-4);font-size:var(--font-sm)}.setup-surprise-row label{display:flex;align-items:center;gap:var(--space-2);cursor:pointer}.setup-checkbox-label{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) 0;font-size:var(--font-sm);cursor:pointer}.setup-roll-result{font-weight:600;font-size:var(--font-base);margin-top:var(--space-2)}.setup-validation{font-size:var(--font-xs);color:var(--text-muted);font-style:italic}.setup-btn-start{width:100%;padding:var(--space-4) var(--space-7);font-size:var(--font-md);font-weight:600}.settings-panel{padding:var(--space-4);border-radius:var(--radius-lg);background:var(--surface-1)}.settings-panel h2{font-size:var(--font-md);font-weight:600;margin-bottom:var(--space-4)}.settings-section{margin-bottom:var(--space-5)}.settings-section h3{font-size:var(--font-xs);font-weight:600;text-transform:uppercase;letter-spacing:.3px;opacity:.6;margin-bottom:var(--space-2)}.settings-radio-label{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-1) 0;font-size:var(--font-sm);cursor:pointer}.settings-radio-label input[type=radio]{accent-color:var(--color-hero)}.settings-data-row{display:flex;gap:var(--space-4);align-items:center;flex-wrap:wrap}.settings-import-status{font-size:var(--font-sm);opacity:.75;font-style:italic}.upcoming-waves{padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);background:var(--surface-1)}.upcoming-waves--player{font-size:var(--font-sm);opacity:.6;font-style:italic}.upcoming-waves-summary{font-size:var(--font-sm)}.upcoming-waves-toggle{background:none;border:none;color:inherit;cursor:pointer;font-size:var(--font-sm);padding:var(--space-1) 0;width:100%;text-align:left}.upcoming-waves-toggle:hover{opacity:.8}.upcoming-waves-list{list-style:none;margin-top:var(--space-3);display:flex;flex-direction:column;gap:var(--space-2)}.upcoming-waves-item{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2) 0;border-bottom:1px solid var(--border-subtle)}.upcoming-waves-info{display:flex;flex-direction:column;gap:1px}.upcoming-waves-name{font-size:var(--font-sm);font-weight:500}.upcoming-waves-round{font-size:var(--font-2xs);opacity:.5}.upcoming-waves-activate{font-size:var(--font-2xs);padding:var(--space-1) var(--space-4);border:1px solid rgba(239,68,68,.4);border-radius:var(--radius-sm);background:#ef44441a;color:var(--color-director-light);cursor:pointer}.upcoming-waves-activate:hover{background:#ef444433}.encounter-summary{text-align:center;padding:var(--space-8) var(--space-7)}.encounter-summary h2{font-size:var(--font-2xl);font-weight:600;margin-bottom:var(--space-4)}.encounter-summary p{font-size:var(--font-md);opacity:.7}.phase-ended .btn{align-self:center}[data-theme=dark] ::-webkit-scrollbar{width:6px}[data-theme=dark] ::-webkit-scrollbar-track{background:transparent}[data-theme=dark] ::-webkit-scrollbar-thumb{background:var(--border-medium);border-radius:var(--radius-sm)}[data-theme=dark] ::-webkit-scrollbar-thumb:hover{background:var(--border-strong)}.encounter-tabs{flex-shrink:0;border-bottom:1px solid var(--border-subtle)}.encounter-tabs__list{display:flex;align-items:stretch;gap:var(--space-1);overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch}.encounter-tabs__list::-webkit-scrollbar{display:none}.encounter-tabs__tab{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);font-size:var(--font-xs);font-weight:500;color:var(--text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;border-bottom:2px solid transparent;transition:color var(--transition-fast),border-color var(--transition-fast);min-height:28px;max-width:140px;position:relative;flex-shrink:0}.encounter-tabs__tab:hover{color:var(--text-secondary)}.encounter-tabs__tab--selected{color:inherit;border-bottom-color:var(--color-hero)}.encounter-tabs__tab--combat{color:var(--color-director-light)}.encounter-tabs__tab--selected.encounter-tabs__tab--combat{border-bottom-color:var(--color-director)}.encounter-tabs__tab-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100px}.encounter-tabs__combat-dot{display:inline-block;width:6px;height:6px;border-radius:var(--radius-full);background:var(--color-director);flex-shrink:0;animation:pulse-dot 2s ease-in-out infinite}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.4}}.encounter-tabs__delete{background:none;border:none;color:var(--text-ghost);cursor:pointer;font-size:var(--font-2xs);line-height:1;padding:0 var(--space-1);opacity:0;transition:opacity var(--transition-fast),color var(--transition-fast);flex-shrink:0}.encounter-tabs__tab:hover .encounter-tabs__delete{opacity:1}.encounter-tabs__delete:hover{color:var(--color-director-light)}.encounter-tabs__add{display:flex;align-items:center;justify-content:center;width:24px;min-width:24px;height:28px;background:none;border:none;color:var(--text-ghost);cursor:pointer;font-size:var(--font-md);border-radius:var(--radius-icon-btn);transition:color var(--transition-fast),background var(--transition-fast);flex-shrink:0}.encounter-tabs__add:hover{color:var(--text-secondary);background:var(--hover-subtle)}.encounter-tabs__rename-input{font-size:var(--font-xs);padding:var(--space-1) var(--space-2);border:1px solid var(--color-hero);border-radius:var(--radius-sm);background:var(--surface-3);color:inherit;width:80px;outline:none}.encounter-tabs__new-input{display:flex;align-items:center;padding:var(--space-1) 0;flex-shrink:0}.setup-token-other{font-size:var(--font-2xs);color:var(--text-faint);font-style:italic;margin-left:var(--space-2)}@media (pointer: coarse){.btn{min-height:36px;padding:var(--space-4) 14px;font-size:var(--font-base)}.btn-sm{min-height:30px;padding:var(--space-3) var(--space-5);font-size:var(--font-sm)}input[type=checkbox],input[type=radio]{width:18px;height:18px}select,input[type=text],input[type=number]{min-height:32px;font-size:var(--font-base)}.group-header,.creature-entry{padding:var(--space-4) var(--space-5);min-height:40px}.setup-group-color{width:30px;height:30px}.settings-radio-label{padding:var(--space-3) 0}.condition-badge{width:24px;height:24px}.mark-done-btn{min-height:30px;padding:var(--space-3) var(--space-5)}.encounter-tabs__tab{min-height:36px;padding:var(--space-3) var(--space-5);font-size:var(--font-sm)}.encounter-tabs__add{width:36px;min-width:36px;height:36px;font-size:var(--font-lg)}.encounter-tabs__delete{opacity:1;padding:var(--space-2)}.action-pip{width:24px;height:24px}.action-pip__icon{width:16px;height:16px}}[role=button]{user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}.app-container,.setup-panel{-webkit-overflow-scrolling:touch}
