.character-tab { display: inline-flex; align-items: center; margin: 7px 0 0 7px; border: 1px solid var(--edge); border-radius: 6px; background: transparent; }
.character-tab.active { background: #294034; }
.character-tab .tab { display: inline-block; width: auto; margin: 0; border: 0; border-radius: 6px; }
.tab-close { border: 0; border-left: 1px solid var(--edge); background: transparent; color: var(--muted); cursor: pointer; padding: 5px 7px; font-size: 16px; line-height: 1; }
.tab-close:hover { color: var(--text); background: #3a5542; }
.users-card{width:min(46rem,100%);max-height:min(90vh,52rem);overflow:auto}.user-row{border-bottom:1px solid #29382e;padding:.2rem 0}.user-row:last-of-type{border-bottom:0}.checkbox-label{display:flex!important;grid-template-columns:auto 1fr;align-items:center;gap:.5rem!important}.checkbox-label input{padding:0}.user-sheets{margin:.35rem 0 .6rem}.user-sheets summary{cursor:pointer;color:var(--accent);font-size:.9rem}.sheet-choices{max-height:13rem;overflow:auto;display:grid;gap:.3rem;padding:.55rem;background:#0d1713;border:1px solid #29382e;border-radius:.35rem}.sheet-choices label{display:block;font-size:.88rem}.sheet-choices input{padding:0;margin-right:.25rem}.sheet-choices small{color:var(--muted)}
/* Shared Combat Tracker inactive marker: compact, directly below Edge. */
.tracker-inactive{display:block;grid-column:1/-1;font-size:11px;color:var(--muted);cursor:pointer;user-select:none}
.tracker-inactive input{vertical-align:middle;margin:0 3px 0 0}
:root{--theme-background:#101614;--theme-panel:#17211d;--theme-primary:#132119;--theme-secondary:#294034;--theme-highlight:#8cce7d;--theme-border:#355642;--theme-text:#eef5ee;--theme-muted:#a8b9aa;--bg:var(--theme-background);--panel:var(--theme-panel);--edge:var(--theme-border);--accent:var(--theme-highlight);--text:var(--theme-text);--muted:var(--theme-muted)}
header,aside{background:var(--theme-primary)}
.player:hover,.character:hover,.tab:hover,.subtab:hover,.active,.character-tab.active,.tab-close:hover{background:var(--theme-secondary)}
.asset-tabs .subtabs{overflow:visible;white-space:normal}
.asset-tabs .subtab{display:block;width:100%;margin:6px 0 0}
.category-tab,.box,.fire,.row button,.tracker-edge button,.edge-state button{background:var(--theme-panel)}
.assignment button,.roll-actions button,#rescan,.die,.sheet-inactive{background:var(--theme-secondary)}
.assignment input,.browser-tools input,.browser-tools select{background:var(--theme-background)}
.group{background:var(--theme-primary);border-left-color:var(--theme-border)}
.row,.quick,.ledger-row,.user-row{border-bottom-color:var(--theme-border)}
.edge-state{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.status-defend-wrap{margin-left:auto;display:inline-flex;gap:4px}.edge-state .status-defend{padding:2px 7px;font-size:12px;white-space:nowrap}@media(max-width:560px){.status-defend-wrap{margin-left:0;flex-basis:100%}}
.settings-card{width:min(48rem,100%);max-height:min(90vh,52rem);overflow:auto}.settings-card h3{margin:0;color:var(--accent);font-size:15px}.theme-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:.65rem}.theme-grid label{display:grid;gap:.3rem;color:var(--muted);font-size:.9rem}.theme-grid select{background:var(--bg);color:var(--text);border:1px solid var(--edge);border-radius:5px;padding:.55rem}.settings-actions{display:flex;gap:.5rem;flex-wrap:wrap}.settings-actions button,.settings-admin button{background:var(--theme-secondary);color:var(--text);border:1px solid var(--edge);border-radius:5px;padding:.55rem .75rem}.settings-admin{display:grid;gap:.5rem;border-top:1px solid var(--edge);padding-top:.75rem}
.auth-card,.sheet-choices{background:var(--theme-panel);border-color:var(--theme-border)}.tab-close:hover{color:var(--text);background:var(--theme-secondary)}.character-tab.active{background:var(--theme-secondary)}
#tabs{overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-ms-overflow-style:none;cursor:grab;touch-action:pan-y}#tabs::-webkit-scrollbar{display:none}#tabs:active{cursor:grabbing}
.narrative .row small{white-space:pre-wrap;overflow-wrap:anywhere}
.weapon-actions{display:inline-flex;align-items:center;justify-self:end;gap:3px}
.narrative-row{display:block;padding:0;border:0}.narrative-row>span:empty,.narrative-row>strong:empty{display:none}.narrative-text{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.55;color:var(--text);padding:3px 0 10px}
.tracker-character.tracker-current{background:linear-gradient(90deg,#355a3a 0%,#203a27 68%,transparent 100%);border-left:5px solid var(--accent);border-radius:6px;padding-left:9px;box-shadow:0 0 0 1px #6ebd76 inset}.tracker-character.tracker-current .tracker-name{color:#e9ffb2}.tracker-character.tracker-current .tracker-conscious{color:#e9ffb2;font-weight:800}

/* Keep navigation reachable even while a tall sheet is scrolled. */
header{position:sticky;top:0;z-index:8}
#tabs{position:sticky;top:58px;z-index:7;background:var(--bg)}
.npc-monitor-override{display:flex!important;align-items:center;gap:.45rem;color:var(--muted);font-size:.9rem}.npc-monitor-override input{padding:0}
.npc-initiative-mode{display:flex;align-items:center;gap:.45rem;margin:.35rem 0 .65rem;color:var(--muted);font-size:.9rem}.npc-initiative-mode select{background:var(--bg);color:var(--text);border:1px solid var(--edge);border-radius:5px;padding:.35rem}

/* Automation choices must never wrap into one another on narrow Status cards. */
.combat-automation .automation-option{display:flex;align-items:flex-start;gap:.45rem;margin:.5rem 0;line-height:1.35}.combat-automation .automation-option input{flex:0 0 auto;margin:.18rem 0 0;padding:0}.combat-automation small{display:block;margin-top:.55rem}
.active-effects .effect-row{align-items:center;gap:.6rem}.active-effects .effect-row button{margin-left:auto}.active-effects h4{margin:1rem 0 .35rem}.active-effects .bound-foci-heading{border-top:1px solid var(--edge);margin-top:.8rem;padding-top:.8rem}.effect-focus{display:flex!important;align-items:center;gap:.45rem;margin:.45rem 0}.effect-focus input{padding:0}.sustain-options{display:grid;gap:.45rem;margin:.65rem 0;padding:.7rem;border:1px solid var(--edge);border-radius:.4rem}.sustain-options label{display:block}.sustain-options input[type=radio]{padding:0;margin-right:.35rem}.sustain-options small{display:block;margin:.15rem 0 0 1.45rem}

/* Cast and treatment cards are deliberately scrollable: mobile-height
   viewports must never strand controls below the visible page. */
#roller-modal{overflow-y:auto;align-items:start;padding-block:max(16px,4vh)}
.roller-card{max-height:calc(100vh - 32px);overflow-y:auto}
.effect-maintenance{display:flex;flex-wrap:nowrap;gap:.45rem;align-items:center;justify-self:end;white-space:nowrap}.effect-maintenance select{max-width:100%;background:#101614;color:var(--text);border:1px solid var(--edge);border-radius:4px;padding:.3rem}.effect-maintenance button{margin:0!important}.active-effects .astral-perception{margin-top:.7rem}.skillsoft-loaded{color:#7fdaff!important;font-weight:700}.skillsoft-loaded small{color:#a9dff2!important}
