:root{--ink:var(--text);--muted:var(--text-soft);--canvas:var(--paper);--panel:var(--leaf);--panel2:var(--foxed);--line:var(--rule);--lime:var(--vermilion);--violet:var(--lapis);--red:var(--wound);--bg:var(--sheet);--border:var(--rule);--sans:var(--font-text);--serif:var(--font-display);--mono:var(--font-label)}*{box-sizing:border-box}body{margin:0;background:var(--canvas);color:var(--ink);font-family:var(--sans);font-size:16px}.app-shell{min-height:100vh;display:flex;background:var(--canvas)}.rail{width:218px;border-right:1px solid var(--line);padding:28px 17px 20px;display:flex;flex-direction:column;position:fixed;inset:0 auto 0 0;background:var(--ink-wash);}.brand{display:flex;align-items:center;gap:10px;font-family:var(--mono);font-size:14px;font-weight:500;line-height:1.02;letter-spacing:.16em;margin:2px 10px 46px}.rune{font-size:30px;color:var(--lime);filter:none}nav{display:grid;gap:5px}.nav-item{color:var(--muted);border:0;background:transparent;text-align:left;padding:12px 12px;border-radius:var(--radius);font:600 15px var(--sans);display:flex;align-items:center;gap:12px;cursor:pointer}.nav-item span{font-size:19.5px;width:18px}.nav-item:hover,.nav-item.active{color:var(--ink);background:color-mix(in srgb,var(--vermilion) 9%,transparent)}.nav-item.active{box-shadow:inset 2px 0 0 var(--lime)}.rail-bottom{margin-top:auto;border-top:1px solid var(--line);padding:19px 9px 0;display:flex;align-items:center;gap:10px}.avatar{display:grid;place-items:center;border-radius:50%;width:31px;height:31px;font-size:11.5px;font-weight:800}.dm{background:var(--foxed);color:var(--on-vermilion)}.small-label{font-size:11.5px;color:var(--muted);line-height:1.45}.small-label b{color:var(--ink);font-size:14px}.workspace{margin-left:218px;width:calc(100% - 218px);max-width:1440px;padding:0 5.8vw 55px}.topbar{height:150px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.eyebrow{font:500 11.5px var(--mono);letter-spacing:.14em;color:var(--lime);margin:0 0 9px;font-variant-caps:all-small-caps}.topbar h1,h2{font-family:var(--serif);letter-spacing:0;margin:0}.topbar h1{font-size:35.5px}.top-actions{display:flex;gap:9px}.quiet-btn,.icon-btn,.text-btn{border:0;background:transparent;color:var(--muted);font:600 14px var(--sans);cursor:pointer}.quiet-btn{border:1px solid var(--line);padding:9px 12px;border-radius:var(--radius);color:var(--ink)}.icon-btn{font-size:20.5px;padding:4px}.view{display:none}.view.active{display:block}.session-strip{height:75px;display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:14px}.session-strip>div:first-child{display:flex;align-items:center;gap:9px}.session-strip strong{color:var(--ink);font-size:14px}.live-dot{width:7px;height:7px;border-radius:50%;background:var(--lime);box-shadow:none}.label{font:500 11.5px var(--mono);letter-spacing:.12em;color:var(--lime)}.table-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:17px}.panel{border:1px solid var(--line);background:linear-gradient(135deg,var(--foxed),var(--leaf));border-radius:var(--radius);padding:23px}.panel-heading,.section-title{display:flex;align-items:flex-start;justify-content:space-between}.panel h2,.section-title h2{font-size:24px}.status-pill{font:500 11.5px var(--mono);letter-spacing:.08em;border:1px solid color-mix(in srgb,var(--gold-leaf) 35%,transparent);color:var(--gold);padding:7px 9px;border-radius:var(--radius-tag)}.turn-list{margin:23px 0 18px}.turn{display:grid;grid-template-columns:31px 36px 1fr auto;gap:11px;align-items:center;padding:9px 8px;border-radius:var(--radius);border-bottom:1px solid color-mix(in srgb,var(--text) 6%,transparent);transition:.2s}.turn.active{background:color-mix(in srgb,var(--vermilion) 11%,transparent);box-shadow:inset 2px 0 0 var(--lime)}.turn-index{font:500 12.5px var(--mono);color:var(--text-soft)}.turn-avatar{width:34px;height:34px;border-radius:var(--radius);display:grid;place-items:center;font-size:14px;font-weight:800;color:var(--on-vermilion)}.turn-name{display:block;font-size:14px;font-weight:800}.turn-meta{display:block;color:var(--muted);font-size:11.5px;margin-top:2px}.init{font:500 16px var(--mono);color:var(--lime)}.turn-controls{display:flex;justify-content:space-between;gap:10px}.outline-btn,.primary-btn{font:700 14px var(--sans);border-radius:var(--radius);padding:10px 12px;cursor:pointer}.outline-btn{border:1px solid var(--line);background:transparent;color:var(--ink)}.primary-btn{border:1px solid var(--lime);background:var(--lime);color:var(--on-vermilion)}.primary-btn span{margin-left:10px;font-size:18.5px}.command-grid{display:grid;gap:4px;margin-top:20px}.command-card{border:0;border-bottom:1px solid color-mix(in srgb,var(--text) 7%,transparent);background:transparent;color:var(--ink);display:grid;grid-template-columns:38px 1fr 20px;gap:10px;align-items:center;padding:11px 5px;text-align:left;cursor:pointer}.command-card:hover{background:color-mix(in srgb,var(--vermilion) 6%,transparent);border-radius:var(--radius)}.command-icon{width:30px;height:30px;border-radius:var(--radius);display:grid;place-items:center;font-size:18.5px}.violet{background:var(--foxed);color:var(--violet)}.gold{background:var(--foxed);color:var(--gold)}.green{background:var(--foxed);color:var(--lime)}.red{background:var(--foxed);color:var(--red)}.command-card b{font-size:14px;display:block}.command-card small{font-size:11.5px;color:var(--muted);display:block;margin-top:2px}.command-card i{font-size:27.5px;font-style:normal;color:var(--muted)}.keyhint{font:11.5px var(--mono);border:1px solid var(--line);color:var(--muted);padding:5px;border-radius:var(--radius)}.notification-note{display:flex;gap:9px;padding:11px;background:var(--ink-wash);border-radius:var(--radius);margin-top:17px;color:var(--muted);font-size:11.5px;line-height:1.45}.notification-note span{color:var(--gold);font-size:19.5px}.notification-note p{margin:0}.notification-note b{color:var(--ink)}.activity-section{margin-top:37px}.section-title{margin-bottom:15px}.text-btn{color:var(--lime)}.activity-feed{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}.activity{border:1px solid var(--line);padding:13px;border-radius:var(--radius);background:var(--leaf)}.activity time{font:11.5px var(--mono);color:var(--muted)}.activity p{font-size:12.5px;line-height:1.5;margin:7px 0 0}.activity b{color:var(--lime)}.wiki-layout{display:grid;grid-template-columns:260px 1fr;gap:18px}.wiki-list,.wiki-article,.file-card,.person-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--leaf)}.wiki-list{padding:10px}.wiki-item{border:0;background:transparent;color:var(--muted);width:100%;padding:13px 11px;text-align:left;border-radius:var(--radius);cursor:pointer;font:600 14px var(--sans)}.wiki-item.active,.wiki-item:hover{background:color-mix(in srgb,var(--vermilion) 10%,transparent);color:var(--ink)}.wiki-article{padding:31px;min-height:390px}.portrait{float:right;display:grid;place-items:center;width:86px;height:86px;border-radius:50%;background:radial-gradient(circle at 50% 32%,var(--gold-leaf) 0 22%,var(--foxed) 23% 30%,var(--foxed) 31%);font:700 37px var(--serif);color:var(--gold);border:4px solid var(--rule)}.wiki-article h2{font-size:38px;margin-bottom:18px}.wiki-article h3{font-family:var(--serif);font-size:19.5px}.wiki-article p{color:var(--text);max-width:650px;line-height:1.75;font-size:15px}.tag-row{display:flex;gap:7px;margin:19px 0}.tag-row span{font:11.5px var(--mono);padding:6px 8px;background:color-mix(in srgb,var(--vermilion) 8%,transparent);color:var(--lime);border-radius:var(--radius)}.article-rule{border-top:1px solid var(--line);margin:22px 0}.file-grid,.people-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.file-card{padding:18px;min-height:135px;display:flex;flex-direction:column;gap:9px}.file-card span{font:11.5px var(--mono);background:var(--foxed);color:var(--lime);padding:5px;border-radius:var(--radius);width:max-content}.file-card b{font-size:15px}.file-card small{color:var(--muted);font-size:11.5px;margin-top:auto}.person-card{padding:18px}.person-head{display:flex;gap:11px;align-items:center}.person-avatar{width:39px;height:39px;border-radius:var(--radius);display:grid;place-items:center;font-weight:800;color:var(--on-vermilion)}.person-card h3{margin:0;font-size:15px}.person-card p{margin:3px 0 0;font-size:11.5px;color:var(--muted)}.sheet{border-top:1px solid var(--line);margin-top:16px;padding-top:13px;display:flex;justify-content:space-between;font:11.5px var(--mono);color:var(--muted)}.sheet b{color:var(--lime)}.modal-backdrop{position:fixed;inset:0;background:color-mix(in srgb,var(--shadow) 72%,transparent);display:none;align-items:center;justify-content:center;padding:20px;z-index:3}.modal-backdrop.open{display:flex}.modal{width:min(520px,100%);background:var(--leaf);border:1px solid var(--rule-strong);border-radius:var(--radius);padding:28px;position:relative;box-shadow:0 20px 70px var(--shadow)}.modal-close{position:absolute;right:15px;top:12px;border:0;background:transparent;color:var(--muted);font-size:30px;cursor:pointer}.modal h2{font-size:30px;margin:3px 0 8px}.modal p{color:var(--muted);font-size:14px;line-height:1.6}.form-row{display:grid;gap:7px;margin-top:18px}.form-row label{font:600 11.5px var(--mono);letter-spacing:.1em;color:var(--lime)}select,input,textarea{background:var(--sheet);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius);padding:10px;font:14px var(--sans)}textarea{min-height:95px;resize:vertical}.recipient-pills{display:flex;gap:7px;flex-wrap:wrap}.recipient{font:600 12.5px var(--sans);padding:6px 8px;border:1px solid var(--line);border-radius:var(--radius-tag);color:var(--muted);cursor:pointer}.recipient.selected{background:color-mix(in srgb,var(--vermilion) 14%,transparent);border-color:var(--lime);color:var(--lime)}.modal-actions{display:flex;gap:9px;justify-content:flex-end;margin-top:22px}.player-overlay{position:fixed;z-index:4;inset:0;background:var(--paper);display:none;align-items:center;justify-content:center;padding:20px}.player-overlay.open{display:flex}.player-phone{width:min(375px,100%);min-height:680px;border:10px solid var(--rule);border-radius:var(--radius-tag);padding:30px 22px;background:var(--leaf);box-shadow:0 30px 100px var(--shadow);position:relative}.phone-exit{position:absolute;right:18px;top:13px;border:0;background:transparent;color:var(--muted);cursor:pointer;font-size:12.5px}.player-kicker{margin-top:37px;color:var(--lime);font:11.5px var(--mono);letter-spacing:.12em}.player-phone h2{font-size:33.5px;margin:7px 0 32px}.request-card{background:linear-gradient(145deg,var(--foxed),var(--foxed));border:1px solid color-mix(in srgb,var(--vermilion) 35%,transparent);border-radius:var(--radius);padding:20px;box-shadow:none}.request-card .attention{color:var(--gold);font:700 11.5px var(--mono);letter-spacing:.1em}.request-card h3{font:25.5px var(--serif);margin:14px 0 5px}.request-card p{font-size:14px;color:var(--text);line-height:1.5}.roll-result{display:none;margin-top:14px;background:var(--paper);padding:12px;border-radius:var(--radius);color:var(--lime);font:700 16px var(--mono);text-align:center}.player-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:25px}.phone-tab{border:1px solid var(--line);background:transparent;color:var(--muted);padding:9px 3px;border-radius:var(--radius);font:11.5px var(--sans)}.phone-tab.active{color:var(--ink);background:color-mix(in srgb,var(--vermilion) 8%,transparent)}.phone-note{margin-top:24px;border-top:1px solid var(--line);padding-top:18px;color:var(--muted);font-size:12.5px;line-height:1.55}.toast{position:fixed;bottom:22px;right:24px;background:var(--lime);color:var(--on-vermilion);border-radius:var(--radius);padding:11px 15px;font-weight:800;font-size:14px;transform:translateY(90px);opacity:0;transition:.3s;z-index:7}.toast.show{transform:translateY(0);opacity:1}@media(max-width:900px){.rail{width:63px;padding:25px 8px}.brand span:last-child,.nav-item:not(.active){font-size:0}.nav-item{justify-content:center;padding:13px}.nav-item span{font-size:20.5px}.rail-bottom .small-label{display:none}.workspace{margin-left:63px;width:calc(100% - 63px);padding:0 25px 40px}.table-grid{grid-template-columns:1fr}.activity-feed,.file-grid,.people-grid{grid-template-columns:1fr 1fr}}@media(max-width:610px){.rail{display:none}.workspace{margin:0;width:100%;padding:0 16px 35px}.topbar{height:116px}.topbar h1{font-size:28.5px}.quiet-btn{font-size:11.5px}.last-save{display:none}.activity-feed,.file-grid,.people-grid,.wiki-layout{grid-template-columns:1fr}.wiki-list{display:flex;overflow:auto}.wiki-item{min-width:max-content}.wiki-article{padding:23px}.panel{padding:18px}.top-actions .icon-btn{display:none}}

.compendium-layout{display:grid;grid-template-columns:minmax(190px,1fr) minmax(0,3fr);gap:24px;margin-top:20px}.creature-list{max-height:70vh;overflow:auto}.creature-list button{display:block;width:100%;text-align:left}.creature-detail{padding:26px;overflow-wrap:anywhere}.creature-detail p{line-height:1.7;white-space:pre-line}.creature-detail h3{margin-top:26px}.ability-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin:20px 0}.ability-grid div{text-align:center;background:color-mix(in srgb,var(--text) 3%,transparent);padding:8px;border-radius:var(--radius)}#creature-search{width:100%;max-width:600px;margin-top:8px}#compendium-view a{color:var(--text)}#creature-status{color:var(--text)}button:disabled{opacity:.5}@media(max-width:800px){.compendium-layout{grid-template-columns:1fr}.creature-list{max-height:240px}.ability-grid{grid-template-columns:repeat(3,1fr)}}
.home-grid{grid-template-columns:1fr}.setup-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;margin-top:24px}.setup-name{display:grid;gap:8px;max-width:520px;margin:24px 0}.setup-party{margin-top:20px}.setup-player{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 0;border-bottom:1px solid var(--line)}.setup-player label:first-child{display:flex;align-items:center;gap:10px;font-weight:700}.setup-player input[type=checkbox]{accent-color:var(--lime);width:18px;height:18px}.modifier-label{display:grid;gap:6px;font-size:11.5px;color:var(--muted)}.modifier-label input{width:85px}.local-note,.encounter-intro{color:var(--muted);line-height:1.7}.local-note{font-size:14px}.encounter-status{padding:16px 20px;border:1px solid var(--line);border-radius:var(--radius);background:color-mix(in srgb,var(--vermilion) 3%,transparent);margin:20px 0}.response-row{display:grid;gap:10px;padding:18px 0;border-bottom:1px solid var(--line)}.response-row span{color:var(--muted);font-size:14px}.response-row a{width:fit-content;text-decoration:none}.initiative-result{color:var(--lime);font:700 25.5px var(--mono);margin:20px 0}.player-side select{width:100%;margin-top:12px}.modal{max-height:90vh;overflow:auto}#encounter-content{padding-top:28px}.turn-name{overflow-wrap:anywhere}@media(max-width:850px){.setup-grid{grid-template-columns:1fr}.setup-player{flex-wrap:wrap}}@media(max-width:610px){.rail{display:flex;position:sticky;top:0;width:100%;height:auto;padding:8px;z-index:2}.rail .brand,.rail-bottom{display:none}.rail nav{display:flex;overflow:auto}.rail .nav-item{font-size:12.5px;flex-shrink:0;gap:6px;padding:10px}.app-shell{display:block}.workspace{margin-left:0;width:100%}.section-title{flex-wrap:wrap;gap:16px}.topbar h1{font-size:25.5px}}
.creature-controls{margin-top:24px}.roster-group{padding:20px 0;border-top:1px solid var(--line)}.roster-group h3{font:600 15px var(--sans);color:var(--lime)}.manage-creature{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0}.manage-creature p{font-size:14px;color:var(--muted);margin:6px 0}.reserve-actions{display:flex;align-items:center;gap:12px}.reserve-actions label{display:grid;gap:5px;font-size:11.5px;color:var(--muted)}.reserve-actions input{width:75px}.public-turns{margin-top:22px}.public-turn{display:grid;grid-template-columns:24px 1fr 35px;gap:12px;align-items:center;padding:18px 14px;border-bottom:1px solid var(--line);border-radius:var(--radius)}.public-turn.active{background:color-mix(in srgb,var(--vermilion) 7%,transparent);box-shadow:inset 3px 0 var(--lime)}.public-turn small{display:block;color:var(--muted);font-size:12.5px;margin-top:6px}.public-turn strong{font:20.5px var(--mono);text-align:right}.roll-receipt{color:var(--lime);font-size:14px}.public-turn.is-bloodied{box-shadow:inset 0 0 0 2px var(--wound)}.public-turn.is-bloodied.active{box-shadow:inset 0 0 0 2px var(--wound),inset 3px 0 var(--lime)}.public-turn.is-dead{opacity:.4;filter:grayscale(1)}.public-turn.is-dead b{text-decoration:line-through}.player-encounter h2{font-size:32px}.player-encounter>p{line-height:1.7}.player-web{overflow:auto}.player-overlay{overflow:auto}.player-content{min-width:0}.player-web-body{min-height:0}#encounter-roster>p{display:flex;flex-wrap:wrap;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}#encounter-roster label{display:inline-flex;align-items:center;gap:8px;font-size:12.5px}.public-turn b{overflow-wrap:anywhere}[hidden]{display:none!important}@media(max-width:650px){.manage-creature,.reserve-actions{flex-wrap:wrap}.player-web-body{display:block}.player-side{border:0}.player-content{padding:22px}.player-web-header{gap:15px}.player-overlay{padding:0}}
.setup-grid>.creature-controls{margin-top:0}.compact-responses{margin-top:24px}.compact-responses .response-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}@media(max-width:850px){.compact-responses .response-list{grid-template-columns:1fr 1fr}}@media(max-width:550px){.compact-responses .response-list{grid-template-columns:1fr}}

.npc-toolbar{display:flex;gap:12px;margin:24px 0}.npc-toolbar input{flex:1}.npc-toolbar input,.npc-toolbar select{padding:12px;border:1px solid var(--line,var(--rule-strong));border-radius:var(--radius);background:var(--leaf);font:inherit;min-width:0}.npc-layout{display:grid;grid-template-columns:minmax(220px,1fr) minmax(0,2.5fr);gap:22px}.npc-list .wiki-item{width:100%;text-align:left}.npc-list small{display:block;margin-top:7px;font-size:12.5px;color:var(--text-soft)}.npc-detail hr{border:0;border-top:1px solid var(--rule-strong);margin:28px 0}.npc-note{padding:16px;background:var(--leaf);border-radius:var(--radius);margin:12px 0}.npc-note p,.npc-detail>p{white-space:pre-wrap;overflow-wrap:anywhere}.npc-player-section{margin-top:36px}.npc-player-section textarea{display:block;width:100%;min-height:90px;margin:10px 0;padding:12px;font:inherit;border:1px solid var(--rule-strong);border-radius:var(--radius);box-sizing:border-box}.npc-player-section .request-card{margin:18px 0}.npc-detail h2,.npc-list b{overflow-wrap:anywhere}@media(max-width:760px){.npc-layout{grid-template-columns:1fr}.npc-toolbar{flex-wrap:wrap}.npc-detail .section-title{flex-wrap:wrap;gap:12px}}
.npc-profile{display:flex;align-items:flex-start;gap:24px;margin:24px 0}.npc-portrait{display:block;width:160px;height:200px;object-fit:cover;border-radius:var(--radius);background:var(--foxed);flex-shrink:0}.npc-portrait-empty{display:grid;place-items:center;font-size:55px;color:var(--text-soft)}.npc-facts{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:0;flex:1;min-width:0}.npc-facts dt{font-size:12.5px;font-variant-caps:all-small-caps;letter-spacing:1px;color:var(--text-soft);margin-bottom:6px}.npc-facts dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.npc-description{white-space:pre-wrap;overflow-wrap:anywhere}#npc-form textarea{min-height:65px}#npc-form #npc-description{min-height:100px}#npc-image-preview:empty{display:none}@media(max-width:650px){.npc-profile{flex-direction:column}.npc-facts{width:100%;grid-template-columns:1fr}.npc-portrait{width:140px;height:175px}}
.player-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:20px}.setup-player-card{min-width:0;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--paper);transition:border-color .15s,box-shadow .15s}.setup-player-card.selected{border-color:color-mix(in srgb,var(--vermilion) 44%,transparent);box-shadow:0 0 0 1px color-mix(in srgb,var(--vermilion) 9%,transparent)}.player-card-select{display:block;position:relative;cursor:pointer}.player-card-select>input{position:absolute;opacity:0;width:1px;height:1px}.player-card-select:has(input:focus-visible){outline:2px solid var(--lime);outline-offset:-3px}.player-card-select img{width:100%;height:145px;object-fit:cover;display:block;filter:saturate(.65);transition:filter .15s}.selected .player-card-select img{filter:saturate(1)}.selection-mark{position:absolute;top:10px;right:10px;z-index:1;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;border:1px solid color-mix(in srgb,var(--text) 33%,transparent);background:var(--sheet);color:transparent}.selected .selection-mark{background:var(--lime);border-color:var(--lime);color:var(--on-vermilion)}.player-card-identity{display:grid;gap:7px;padding:15px 14px 13px;min-height:88px}.player-card-identity strong{font:600 23px/1.12 var(--serif);letter-spacing:0;color:var(--text);overflow-wrap:anywhere}.player-card-identity small{font:500 12.5px var(--sans);color:var(--text-soft);letter-spacing:.035em}.card-initiative{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-top:1px solid var(--line);font-size:12.5px;color:var(--muted)}.card-initiative input{width:60px;padding:7px}.creature-empty{display:grid;place-items:center;min-height:240px;border:1px dashed var(--line);border-radius:var(--radius);margin-top:22px;background:color-mix(in srgb,var(--text) 1%,transparent)}.creature-empty span{font-size:63px;color:var(--text-soft)}.setup-creatures{align-self:start}.setup-creatures .section-title{margin-bottom:0}@media(max-width:1100px) and (min-width:851px){.player-card-identity strong{font-size:19.5px}.player-card-select img{height:120px}.player-card-grid{gap:10px}}@media(max-width:400px){.player-card-grid{grid-template-columns:1fr}}
/* Compact encounter player cards. */
.player-card-grid{gap:10px;margin-top:14px}.player-card-select img{height:85px}.player-card-identity{padding:10px 11px;gap:5px;min-height:65px}.player-card-identity strong{font-size:18.5px}.player-card-identity small{font-size:11.5px}.card-initiative{padding:7px 11px;font-size:11.5px}.card-initiative input{width:49px;padding:5px}.selection-mark{width:20px;height:20px;top:7px;right:7px;font-size:14px}@media(max-width:1100px) and (min-width:851px){.player-card-select img{height:75px}.player-card-identity strong{font-size:17px}}@media(max-width:400px){.player-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.player-card-identity strong{font-size:16px}.player-card-select img{height:72px}.player-card-identity{padding:9px;min-height:72px}.card-initiative{padding:7px}}
/* Text-only setup cards keep the roster compact. */
.player-card-identity{padding:14px 32px 12px 12px;min-height:77px;align-content:center}.player-card-identity strong{font-size:18.5px}.player-card-identity small{font-size:11.5px}.selection-mark{top:12px;right:9px;width:17px;height:17px;font-size:11.5px}.card-initiative{padding:6px 12px}.setup-player-card:not(.selected){opacity:.65}@media(max-width:400px){.player-card-identity{padding:12px 26px 10px 10px;min-height:85px}.player-card-identity strong{font-size:16px}}
/* Encounter setup: creatures first, players second. */
#encounter-content .setup-grid:has(.setup-creatures)>.setup-creatures{grid-column:1;grid-row:1}#encounter-content .setup-grid:has(.setup-creatures)>section:has(.player-card-grid){grid-column:2;grid-row:1}@media(max-width:850px){#encounter-content .setup-grid:has(.setup-creatures)>section:has(.player-card-grid){grid-column:1;grid-row:2}}

/* People controls use explicit contrast, including native dropdown menus. */
.npc-toolbar{display:grid;grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) minmax(155px,.8fr) minmax(125px,.65fr);align-items:end}
.npc-toolbar label{display:flex;flex-direction:column;gap:8px;font-size:14px;color:var(--text);min-width:0}
.npc-toolbar input,.npc-toolbar select{width:100%;box-sizing:border-box;background:var(--sheet);color:var(--text);border-color:var(--rule);color-scheme:dark;min-height:46px}
.npc-toolbar select option{background:var(--sheet);color:var(--text)}
.npc-toolbar input::placeholder{color:var(--text);opacity:1}
.npc-toolbar input:focus-visible,.npc-toolbar select:focus-visible{outline:2px solid var(--vermilion);outline-offset:2px}
@media(max-width:1050px){.npc-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){.npc-toolbar{grid-template-columns:1fr}}
.player-roll-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px}.card-roll-result{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:12px;border-top:1px solid var(--line);color:var(--muted);font-size:12.5px;min-height:51px}.card-roll-result b{font:600 27.5px var(--mono);color:var(--lime)}.pending-roll{font:20.5px var(--mono)}.roll-received{border-color:color-mix(in srgb,var(--vermilion) 38%,transparent)}.player-screen-link{display:block;padding:0 12px 12px;font-size:11.5px;color:var(--muted);text-decoration:none}.player-screen-link:hover{color:var(--lime)}.player-roll-card .player-card-identity{min-height:78px;padding-right:12px}.player-roll-grid .player-card-identity strong{font-size:18.5px}@media(max-width:550px){.compact-responses .player-roll-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* People: shared card directory and readable character popups. */
.npc-toolbar{display:flex;flex-wrap:wrap;align-items:end;gap:12px;margin:24px 0 16px}.npc-toolbar label{display:grid;gap:8px;flex:1;min-width:140px;color:var(--muted);font-size:12.5px}.npc-toolbar .npc-search-control{flex:2;min-width:200px}.npc-toolbar input,.npc-toolbar select{width:100%;padding:12px;background:var(--panel2);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius);font:14px var(--sans)}.npc-toolbar .quiet-btn{min-height:42px}.npc-toolbar input:focus-visible,.npc-toolbar select:focus-visible{outline:2px solid var(--lime);outline-offset:2px}
.npc-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(205px,1fr));gap:20px;align-items:stretch}.npc-character-card{display:flex;flex-direction:column;padding:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);color:var(--ink);font:inherit;text-align:left;cursor:pointer;transition:transform .15s,border-color .15s}.npc-character-card:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--vermilion) 50%,transparent)}.npc-character-card:focus-visible{outline:2px solid var(--lime);outline-offset:4px}.npc-card-art{position:relative;aspect-ratio:4/5;width:100%;display:grid;place-items:center;background:radial-gradient(ellipse at center,var(--foxed),var(--leaf));overflow:hidden}.npc-card-art img{display:block;width:100%;height:100%;position:absolute;inset:0;object-fit:contain;object-position:center}.npc-card-placeholder{font-size:87.5px;color:var(--text-soft)}.npc-card-visibility{position:absolute;left:10px;top:10px;border:1px solid color-mix(in srgb,var(--vermilion) 25%,transparent);border-radius:var(--radius);background:var(--ink-wash);color:var(--ink);font:11.5px var(--mono);padding:6px 8px}.npc-card-copy{padding:17px;flex:1;min-width:0}.npc-card-copy h3{font:600 25.5px/1.2 var(--serif);margin:0 0 9px;overflow-wrap:anywhere}.npc-card-copy p{font-size:12.5px;line-height:1.6;margin:0;color:var(--muted);overflow-wrap:anywhere}.npc-card-copy small{display:block;font-size:12.5px;line-height:1.6;color:var(--gold);margin-top:12px;overflow-wrap:anywhere}
.modal-backdrop{z-index:8}.modal:has(.npc-detail){width:min(860px,100%);max-height:90dvh;padding:36px}.npc-detail .section-title{padding-right:20px;flex-wrap:wrap;gap:16px}.npc-detail .npc-profile{gap:26px}.npc-detail .npc-portrait{width:200px;height:260px;object-fit:contain;object-position:center;background:var(--paper)}.npc-detail .npc-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.npc-facts dt{color:var(--muted);font-size:11.5px;line-height:1.5}.npc-facts dd{color:var(--ink);line-height:1.6}.npc-detail hr{border:0;border-top:1px solid var(--line);margin:28px 0}.npc-note{background:var(--panel);color:var(--ink);border:1px solid var(--line);padding:18px;border-radius:var(--radius);margin:14px 0}.modal .npc-note p{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--ink);font-size:15px;line-height:1.7}.npc-detail .npc-description{color:var(--ink);font-size:15px;line-height:1.7}.npc-note .eyebrow{display:block;color:var(--gold);font-size:10.5px;line-height:1.6}.npc-note .quiet-btn{margin-right:8px;margin-top:8px}.npc-sharing{border:1px solid var(--line);padding:18px;border-radius:var(--radius);background:color-mix(in srgb,var(--vermilion) 2%,transparent)}.npc-field-sharing{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.npc-field-sharing label{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:14px}.npc-field-sharing input{accent-color:var(--lime)}.npc-party-form{display:grid;gap:12px;margin-top:22px}.npc-party-form textarea{width:100%;min-height:100px;background:var(--canvas);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius);padding:12px;font:inherit}.npc-party-form button{justify-self:start}
@media(max-width:650px){.npc-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.npc-card-copy{padding:12px}.npc-card-copy h3{font-size:20.5px}.npc-toolbar label,.npc-toolbar .npc-search-control{min-width:calc(50% - 12px)}.npc-toolbar .npc-search-control{flex-basis:100%}.modal:has(.npc-detail){padding:24px 18px}.npc-detail .npc-profile{flex-direction:column}.npc-detail .npc-portrait{align-self:center;width:100%;height:300px}.npc-detail .npc-facts{width:100%}.npc-field-sharing{grid-template-columns:1fr}.npc-card-visibility{font-size:9px;padding:5px;left:7px;top:7px}}
@media(prefers-reduced-motion:reduce){.npc-character-card{transition:none}.npc-character-card:hover{transform:none}}
.creature-toolbar{display:flex;align-items:center;gap:12px;margin-top:24px}.creature-toolbar #creature-search{margin:0;max-width:none;flex:1;min-width:0}.creature-toolbar button{white-space:nowrap;min-height:49px}.creature-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:16px;padding:20px}.creature-filters label{display:grid;gap:8px;font-size:12.5px;color:var(--muted)}.creature-filters select,.creature-filters input{width:100%;min-width:0}.creature-results-bar{display:flex;align-items:center;gap:16px;margin:12px 0}.creature-results-bar p{margin:0;font-size:14px}.creature-result b{display:block;font-weight:600}.creature-result small{display:block;font-size:11.5px;color:var(--muted);margin-top:7px}.creature-result[aria-pressed=true]{background:color-mix(in srgb,var(--vermilion) 6%,transparent);color:var(--lime)}#compendium-view .compendium-layout{grid-template-columns:minmax(210px,1fr) minmax(0,2.5fr)}#compendium-view .creature-list button{min-width:0;white-space:normal}.creature-detail{min-height:260px}@media(max-width:800px){.creature-filters{grid-template-columns:repeat(2,minmax(0,1fr))}#compendium-view .compendium-layout{grid-template-columns:1fr}.creature-toolbar{gap:8px}.creature-toolbar input{font-size:14px}}
/* Filled portrait cards, with character-specific framing shared to player views. */
.npc-card-art img{object-fit:cover;object-position:50% 35%}
.modal:has(.npc-editor){width:min(1240px,calc(100vw - 40px));padding:32px;max-height:94dvh}.npc-compare-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:30px;margin-top:24px}.npc-compare-grid>section{min-width:0;padding:22px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel)}.npc-compare-grid>section>h3:first-child{margin-top:0;font:600 27.5px var(--serif)}.npc-edit-field{display:grid;gap:8px;margin:16px 0;color:var(--muted);font-size:14px}.npc-edit-field textarea{display:block;width:100%;resize:vertical;min-height:44px;padding:11px 12px;background:var(--canvas);border:1px solid var(--line);color:var(--ink);border-radius:var(--radius);font:15px/1.6 var(--sans)}.npc-edit-field input[type=file]{display:block;width:100%;margin:12px 0;color:var(--muted);font-size:12.5px}.npc-field-toggle,.npc-share-character{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--ink);margin:10px 0}.npc-editor input[type=checkbox],.npc-editor input[type=range]{accent-color:var(--lime)}.npc-player-edit-row{border-bottom:1px solid var(--line);padding-bottom:8px}.npc-crop-controls{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:12px}.npc-crop-controls label{display:grid;gap:10px;font-size:12.5px}.npc-crop-controls input{width:100%;min-width:0}.npc-editor-portrait{height:260px;display:grid;place-items:center;overflow:hidden;border-radius:var(--radius);background:var(--canvas)}.npc-detail .npc-editor-portrait .npc-portrait{width:100%;height:100%;object-fit:cover}.npc-live-preview{padding:20px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel2)}.npc-live-preview .npc-profile{display:block}.npc-detail .npc-live-preview .npc-portrait{width:100%;height:310px;object-fit:cover}.npc-live-preview .npc-facts{margin-top:20px}.npc-hidden-preview{padding:12px;border:1px dashed var(--gold);color:var(--gold)!important;border-radius:var(--radius)}.npc-editor .modal-actions{position:sticky;bottom:-32px;background:var(--panel2);border-top:1px solid var(--line);padding:18px 0;margin-top:24px}.npc-editor textarea:focus-visible{outline:2px solid var(--lime);outline-offset:2px}
@media(max-width:800px){.npc-compare-grid{grid-template-columns:1fr;gap:18px}.modal:has(.npc-editor){width:100%;padding:24px 16px}.npc-compare-grid>section{padding:16px}.npc-editor .modal-actions{bottom:-24px}}
/* Match the two character records row by row, including both editable portraits. */
.npc-aligned-editor{margin-top:24px;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--panel)}.npc-compare-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);border-bottom:1px solid var(--line)}.npc-compare-row:last-child{border-bottom:0}.npc-compare-row>section{min-width:0;padding:18px 22px;display:flex;flex-direction:column}.npc-compare-row>section+section{border-left:1px solid var(--line)}.npc-column-headings h3{font:600 27.5px var(--serif);margin:0}.npc-column-headings p{margin-bottom:0}.npc-compare-row .npc-edit-field{margin:0;flex:1;align-content:start}.npc-compare-row textarea{min-height:60px}.npc-field-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;min-height:38px;margin-top:8px}.npc-compare-row .npc-editor-portrait{flex:none;height:290px;margin-bottom:18px}.npc-compare-row .npc-crop-controls{margin-top:12px}.npc-compare-row .npc-edit-field>label{display:block}.npc-compare-row .npc-field-toggle{margin:8px 0}.npc-common-notes{margin-top:24px}.npc-common-notes h3{margin-bottom:8px}
@media(max-width:650px){.npc-compare-row>section{padding:12px 10px}.npc-compare-row .npc-editor-portrait{height:170px}.npc-column-headings h3{font-size:22px}.npc-column-headings p{font-size:11.5px}.npc-compare-row .npc-crop-controls{grid-template-columns:1fr}.npc-compare-row textarea{font-size:14px;padding:9px}.npc-compare-row .npc-edit-field input[type=file]{font-size:10.5px}.npc-field-actions{align-items:start;flex-direction:column}.npc-compare-row .quiet-btn{font-size:11.5px;padding:8px}.npc-compare-row .npc-edit-field{font-size:12.5px}}
/* Encounter picker: quantities beside results, inspection in its own scroll area. */
#compendium-view .compendium-layout{grid-template-columns:minmax(300px,1.05fr) minmax(0,1fr);align-items:start;gap:20px}.picker-result{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:var(--radius);margin-bottom:7px;padding:7px;background:color-mix(in srgb,var(--text) 1%,transparent)}.picker-result.selected{border-color:color-mix(in srgb,var(--vermilion) 38%,transparent);background:color-mix(in srgb,var(--vermilion) 3%,transparent)}.creature-inspect{flex:1;min-width:0;border:0;background:none;text-align:left;color:var(--ink);padding:9px;cursor:pointer}.creature-inspect b{display:block;font:600 15px var(--sans)}.creature-inspect small{display:block;color:var(--muted);font-size:11.5px;margin-top:7px}.copy-stepper{display:flex;align-items:center;flex-shrink:0;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.copy-stepper button{background:color-mix(in srgb,var(--text) 2%,transparent);border:0;color:var(--lime);width:30px;height:34px;font-size:22px;cursor:pointer}.copy-stepper input{width:38px;border:0;border-radius:0;padding:5px 0;text-align:center;font:14px var(--mono);appearance:textfield}.copy-stepper input::-webkit-inner-spin-button{appearance:none}#compendium-view .creature-list{max-height:calc(100vh - 430px);min-height:260px;overflow:auto;padding-right:4px}#compendium-view .creature-detail{max-height:calc(100vh - 430px);overflow:auto;min-height:260px;padding:0 20px 20px;position:sticky;top:16px}.statblock-toolbar{position:sticky;top:0;z-index:1;display:flex;justify-content:space-between;align-items:center;gap:14px;background:var(--leaf);padding:18px 0;border-bottom:1px solid var(--line);margin-bottom:20px}.statblock-toolbar h2{font-size:25.5px}.statblock-toolbar button{white-space:nowrap;padding:9px 12px;font-size:12.5px}.statblock-toolbar .eyebrow{display:block;margin-bottom:6px}.creature-picker-tray{position:sticky;bottom:12px;z-index:2;background:var(--foxed);border:1px solid color-mix(in srgb,var(--vermilion) 27%,transparent);border-radius:var(--radius);padding:15px 20px;box-shadow:0 10px 40px color-mix(in srgb,var(--shadow) 47%,transparent);margin-top:18px;}.picker-tray-top{display:flex;justify-content:space-between;align-items:center;gap:15px}.picker-tray-top>div{display:flex;align-items:center;gap:15px}.picker-tray-top .eyebrow{margin:0}.picker-tray-top b{font-size:15px}.picker-chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px;max-height:100px;overflow:auto}.picker-chip{display:flex;align-items:center;gap:10px;background:var(--paper);border:1px solid var(--line);padding:7px 10px;border-radius:var(--radius);font-size:12.5px}.picker-chip span{color:var(--lime);font-family:var(--mono)}.picker-chip button{border:0;background:none;color:var(--muted);cursor:pointer;font-size:17px}.picker-empty-label{font-size:12.5px;color:var(--muted)}@media(max-width:900px){#compendium-view .compendium-layout{grid-template-columns:1fr}#compendium-view .creature-list{max-height:340px}#compendium-view .creature-detail{position:relative;top:0;max-height:400px}.creature-picker-tray{bottom:8px;padding:12px}.picker-tray-top>div{gap:10px}}
/* Compact comparison editor: transfer gutter and visibility icons. */
.modal:has(.npc-editor){width:min(1080px,calc(100vw - 32px));padding:24px;max-height:94dvh}.npc-editor>h2{font-size:28.5px}.npc-editor>.eyebrow{margin-bottom:6px}.npc-editor>.local-note{margin:6px 0 12px}.npc-aligned-editor{margin-top:14px;border-radius:var(--radius)}.npc-compare-row{position:relative}.npc-compare-row>section{position:relative;padding:12px 28px 12px 20px}.npc-compare-row>section+section{padding:12px 48px 12px 28px}.npc-column-headings>section{padding-top:14px;padding-bottom:14px}.npc-column-headings h3{font:600 18.5px var(--sans)}.npc-column-headings p{font-size:11.5px;margin-top:6px}.npc-compare-row .npc-edit-field{gap:5px;font-size:11.5px;letter-spacing:.025em}.npc-compare-row textarea{min-height:37px;padding:8px 10px;font-size:14px;line-height:1.5;background:transparent;border-color:transparent;border-radius:var(--radius)}.npc-compare-row textarea:hover{background:color-mix(in srgb,var(--text) 1%,transparent);border-color:var(--line)}.npc-compare-row textarea:focus{background:var(--canvas);border-color:color-mix(in srgb,var(--vermilion) 31%,transparent);outline:1px solid color-mix(in srgb,var(--vermilion) 31%,transparent);outline-offset:0}.npc-copy-arrow{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:2;width:28px;height:28px;border:1px solid var(--line);border-radius:var(--radius);display:grid;place-items:center;background:var(--panel2);color:var(--muted);cursor:pointer;transition:color .15s,border-color .15s}.npc-copy-arrow:hover{color:var(--lime);border-color:color-mix(in srgb,var(--vermilion) 50%,transparent)}.npc-copy-arrow:active{background:color-mix(in srgb,var(--vermilion) 13%,transparent)}.npc-visibility-toggle,.npc-note-visibility{position:absolute;right:14px;top:12px;border:0;border-radius:var(--radius);background:transparent;color:var(--muted);width:28px;height:28px;display:grid;place-items:center;cursor:pointer}.npc-visibility-toggle[aria-pressed=true],.npc-note-visibility[aria-pressed=true]{color:var(--lime)}.npc-visibility-toggle:hover,.npc-note-visibility:hover{background:color-mix(in srgb,var(--text) 3%,transparent)}.npc-field-hidden textarea{color:var(--muted)}.npc-character-visibility{display:inline-flex;align-items:center;gap:8px;background:transparent;border:1px solid var(--line);color:var(--muted);border-radius:var(--radius-tag);padding:6px 11px;font:12.5px var(--sans);cursor:pointer}.npc-character-visibility[aria-pressed=true]{color:var(--lime)}.npc-editor .npc-note{position:relative;padding:14px 44px 14px 14px}.npc-compare-row .npc-editor-portrait{height:200px;margin:0 0 10px;border-radius:var(--radius)}.npc-portrait-row>section+section{padding-right:28px}.npc-portrait-row .npc-visibility-toggle{top:20px;right:36px;background:var(--ink-wash);border:1px solid var(--line)}.npc-portrait-tools{display:flex;align-items:center;flex-wrap:wrap;gap:12px;font:11.5px var(--sans);color:var(--muted)}.npc-upload-tool{cursor:pointer;color:var(--ink);padding:5px 0}.npc-upload-tool input{position:absolute;width:1px;height:1px;opacity:0}.npc-upload-tool:focus-within{outline:2px solid var(--lime);outline-offset:3px}.npc-portrait-tools .text-btn{font-size:11.5px;padding:5px 0}.npc-framing{margin-left:auto}.npc-framing summary{cursor:pointer;padding:5px 0}.npc-framing[open]{flex-basis:100%;margin:0}.npc-framing .npc-crop-controls{margin:8px 0 0;padding:10px;background:var(--canvas);border-radius:var(--radius)}.npc-editor .modal-actions{bottom:-24px;padding:12px 0;margin-top:16px}.npc-common-notes{margin-top:18px}.npc-common-notes h3{font-size:16px}.npc-common-notes>p{margin-top:6px}.npc-copy-arrow:focus-visible,.npc-visibility-toggle:focus-visible,.npc-note-visibility:focus-visible,.npc-character-visibility:focus-visible{outline:2px solid var(--lime);outline-offset:3px}
@media(max-width:650px){.modal:has(.npc-editor){padding:20px 12px}.npc-compare-row>section{padding:10px 18px 10px 8px}.npc-compare-row>section+section{padding:10px 30px 10px 18px}.npc-compare-row .npc-editor-portrait{height:150px}.npc-portrait-row>section+section{padding-right:8px}.npc-portrait-row .npc-visibility-toggle{top:15px;right:13px}.npc-visibility-toggle{right:2px;top:7px}.npc-copy-arrow{width:24px;height:26px}.npc-portrait-tools{gap:8px}.npc-framing{margin-left:0}.npc-editor .modal-actions{bottom:-20px}.npc-compare-row textarea{padding:7px 2px}}

/* People uses the same search-and-disclosure layout as the Compendium. */
.npc-search-toolbar [data-npc-search]{margin:0;max-width:none;flex:1;min-width:0}
.npc-filter-panel[hidden]{display:none}
.npc-filter-panel select{color:var(--ink);background:var(--sheet);color-scheme:dark}
.npc-filter-panel option{color:var(--text);background:var(--leaf)}
/* Prioritize stat-block reading over picker-row width. */
#compendium-view .compendium-layout{grid-template-columns:minmax(275px,.48fr) minmax(0,1fr);gap:18px}.picker-result{gap:6px;padding:6px}.creature-inspect{padding:7px 5px}.creature-inspect b{font-size:14px;line-height:1.4;overflow-wrap:anywhere}.creature-inspect small{font-size:11.5px;line-height:1.4;margin-top:4px}.copy-stepper button{width:25px;text-align:center}.copy-stepper input{width:29px}@media(max-width:900px){#compendium-view .compendium-layout{grid-template-columns:1fr}}
/* Scale the whole card grid uniformly, preserving portrait and card proportions. */
.npc-card-grid{zoom:.8}

.party-level{color:var(--muted);margin:12px 0 0}.party-level strong{color:var(--lime);font-family:var(--mono)}
.party-character-card.is-static{cursor:default}.party-character-card.is-static:hover{transform:none;border-color:var(--line)}


/* Notes follow the same quiet, aligned comparison rows as the profile. */
.npc-common-notes [data-editor-notes]{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;margin:12px 0}
.npc-note-row{border-bottom:1px solid var(--border)}
.npc-note-row:last-child{border-bottom:0}
.npc-note-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.npc-note-heading>span,.npc-note-label{font-size:12.5px;color:var(--muted);display:block}
.npc-note-label{margin-bottom:8px}
.npc-note-prose{font-size:15px;line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere;padding-right:16px}
.npc-hidden-note{color:var(--muted);font-style:italic}
.npc-note-input{width:100%;min-height:90px;box-sizing:border-box;font:inherit;line-height:1.65;padding:8px}
.npc-note-row section{min-width:0}

.npc-card-visibility{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border-radius:var(--radius);background:var(--ink-wash)}
.npc-card-visibility.is-visible{color:var(--lime)}
.npc-card-visibility.is-hidden{color:var(--muted)}

.npc-card-visibility{background:var(--ink-wash);border:1px solid var(--line);border-radius:var(--radius);box-shadow:none}

.npc-character-card{position:relative}
.npc-card-open{position:absolute;inset:0;width:100%;height:100%;border:0;background:transparent;border-radius:inherit;cursor:pointer;z-index:1}
.npc-card-open:focus-visible{outline:2px solid var(--lime);outline-offset:-3px}
.npc-card-visibility{z-index:2;cursor:pointer;min-width:32px;min-height:32px}
.npc-card-visibility:hover{background:var(--panel2);border-color:var(--lime)}
.npc-card-visibility:focus-visible{outline:2px solid var(--lime);outline-offset:2px}

/* Browse across the full workspace until a stat block is requested. */
#compendium-view .compendium-layout:has(.creature-detail[hidden]){grid-template-columns:minmax(0,1fr)}
#compendium-view .creature-detail[hidden]{display:none}
#compendium-view .compendium-layout:has(.creature-detail[hidden]) .creature-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px;align-content:start;min-height:0}
.compendium-layout:has(.creature-detail[hidden]) .picker-result{margin:0}
.statblock-actions{display:flex;gap:10px;align-items:center}
@media(max-width:650px){#compendium-view .compendium-layout:has(.creature-detail[hidden]) .creature-list{grid-template-columns:1fr}}
.encounter-zones{display:grid;grid-template-columns:minmax(220px,1fr) minmax(300px,1.6fr) minmax(220px,1fr);gap:18px;margin-top:24px;align-items:stretch}.encounter-zone{min-height:440px;padding:22px;transition:background .15s,border-color .15s}.encounter-zone h2{font-size:23px}.encounter-stage{border:1px solid color-mix(in srgb,var(--vermilion) 50%,transparent);background:color-mix(in srgb,var(--vermilion) 3%,transparent)}.encounter-stage .setup-name{margin:14px 0 18px;max-width:none}.zone-caption{font-size:14px;color:var(--muted);line-height:1.6}.zone-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 12px;margin:10px 0;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);cursor:grab}.zone-card strong,.zone-card small{display:block}.zone-card small{color:var(--muted);font-size:12.5px;margin-top:6px}.zone-card .text-btn{font-size:12.5px;white-space:nowrap}.zone-participants{margin:22px 0;min-height:220px}.zone-empty{padding:32px 12px;border:1px dashed var(--line);border-radius:var(--radius);color:var(--muted);font-size:15px;line-height:1.8;text-align:center}.zone-selected{padding:14px 0;border-bottom:1px solid var(--line);opacity:.7}.zone-selected strong{display:block;margin-bottom:8px}.drag-over{background:color-mix(in srgb,var(--vermilion) 13%,transparent);outline:2px dashed var(--lime);outline-offset:-6px}@media(max-width:1100px){.encounter-zones{grid-template-columns:1fr 1.4fr}.encounter-zones>[data-zone=player]{grid-column:1/-1;min-height:0}}@media(max-width:700px){.encounter-zones{display:flex;flex-direction:column}.encounter-stage{order:-1}.encounter-zone{min-height:180px}}

.zone-toggle{display:grid;place-items:center;flex:0 0 24px;width:24px;height:24px;padding:0;border:1.5px solid var(--muted);border-radius:50%;background:transparent;color:var(--lime);cursor:pointer;font-size:16px}.zone-toggle[aria-pressed=true]{border-color:var(--lime);background:color-mix(in srgb,var(--vermilion) 8%,transparent)}.zone-toggle:hover{border-color:var(--lime)}.zone-toggle:focus-visible{outline:2px solid var(--lime);outline-offset:4px}.zone-card:has(.zone-toggle){flex-direction:row-reverse;justify-content:flex-end}.zone-card>div{min-width:0;flex:1}

.zone-player-card{width:100%;text-align:left;color:inherit;font:inherit;cursor:pointer;transition:border-color .16s,box-shadow .16s,background .16s}.zone-player-card:hover,.zone-player-card:focus-visible{border-color:var(--lime);box-shadow:0 0 0 1px color-mix(in srgb,var(--vermilion) 33%,transparent);background:color-mix(in srgb,var(--vermilion) 3%,transparent);outline:none}.zone-player-card:active{background:color-mix(in srgb,var(--vermilion) 8%,transparent)}.zone-player-card:has(.zone-toggle){flex-direction:row}

.encounter-zones{gap:14px;margin-top:18px;grid-template-columns:minmax(190px,1fr) minmax(280px,1.65fr) minmax(190px,1fr)}.encounter-zone{padding:16px;min-height:320px}.encounter-zone .section-title{margin-bottom:12px}.encounter-zone h2{font-size:20.5px}.encounter-zone .zone-card{padding:10px 12px;margin:6px 0;min-height:44px;border-radius:var(--radius)}.zone-card strong{font-size:15px}.zone-card small{font-size:11.5px;margin-top:3px}.encounter-stage .setup-name{margin:8px 0 12px;gap:6px;font-size:12.5px}.encounter-stage .setup-name input{padding:10px 12px}.zone-participants{margin:14px 0;min-height:120px}.zone-creature-card{justify-content:flex-start}.zone-creature-card:hover,.zone-creature-card:focus-visible{border-color:var(--lime);box-shadow:0 0 0 1px color-mix(in srgb,var(--vermilion) 33%,transparent)}.zone-player-card:hover,.zone-player-card:focus-visible{box-shadow:0 0 0 1px color-mix(in srgb,var(--vermilion) 33%,transparent)}@media(max-width:1100px){.encounter-zones{grid-template-columns:minmax(160px,1fr) minmax(240px,1.5fr) minmax(160px,1fr)}.encounter-zones>[data-zone=player]{grid-column:auto;min-height:320px}}@media(max-width:800px){.encounter-zones{display:flex;flex-direction:column}.encounter-stage{order:-1}.encounter-zone,.encounter-zones>[data-zone=player]{min-height:140px}}

.turn:has(.turn-menu){grid-template-columns:24px 34px minmax(0,1fr) auto 28px}.turn-menu{position:relative}.turn-menu summary{cursor:pointer;list-style:none;font-size:25.5px;color:var(--muted);text-align:center}.turn-menu summary::-webkit-details-marker{display:none}.turn-menu[open] summary,.turn-menu summary:hover{color:var(--lime)}.turn-menu>div{position:absolute;right:0;top:30px;z-index:5;min-width:165px;padding:5px;background:var(--panel2);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 8px 24px color-mix(in srgb,var(--shadow) 40%,transparent)}.turn-menu button{display:block;width:100%;background:none;border:0;color:var(--ink);text-align:left;padding:10px;border-radius:var(--radius);cursor:pointer}.turn-menu button:hover{background:color-mix(in srgb,var(--vermilion) 8%,transparent);color:var(--lime)}.queued-initiative{display:block;font:11.5px var(--sans);color:var(--muted);margin-top:5px}.creature-controls .manage-creature{padding:10px 0}.creature-controls .manage-creature p{font-size:12.5px}
.initiative-editor{padding:4px}.initiative-editor h2{margin:8px 0 26px;font-size:27.5px}.initiative-fields{display:grid;grid-template-columns:120px minmax(0,1fr);gap:20px}.initiative-fields label{display:grid;gap:9px;color:var(--muted);font-size:14px}.initiative-fields input,.initiative-fields select{width:100%;height:48px;padding:10px 14px;color:var(--ink);background:var(--canvas);border:1px solid var(--line);border-radius:var(--radius)}.initiative-fields input{font:600 27.5px var(--mono);text-align:center}.initiative-editor .modal-actions{margin-top:28px;padding-top:20px;border-top:1px solid var(--line)}.modal:has(.initiative-editor){max-width:430px;padding:26px}.combat-card{padding:13px 10px;row-gap:12px}.combat-identity{min-width:0}.combat-vitals{display:flex;align-items:baseline;gap:18px;margin-top:6px}.combat-vitals>strong{font:600 23px var(--mono);color:var(--ink)}.combat-vitals small{font:12.5px var(--sans);color:var(--muted)}.combat-vitals>span{font-size:12.5px;color:var(--muted)}.combat-vitals b{color:var(--ink);font:600 16px var(--mono)}.hp-actions{grid-column:3/-1;display:flex;align-items:center;gap:7px}.hp-actions input{width:82px;min-width:0;padding:8px;background:var(--canvas);border:1px solid var(--line);color:var(--ink);border-radius:var(--radius);font-size:14px}.hp-actions button{padding:8px 10px;border:1px solid var(--line);border-radius:var(--radius);cursor:pointer;background:transparent;font-size:12.5px;white-space:nowrap}.damage-btn{color:var(--red)}.heal-btn{color:var(--lime)}.hp-actions button:hover{background:color-mix(in srgb,var(--text) 4%,transparent)}.is-dead{filter:grayscale(1);opacity:.45}.is-dead .turn-name{text-decoration:line-through}.dead-label{font-variant-caps:all-small-caps;letter-spacing:1px}.combat-card.is-dead{grid-template-columns:24px 34px minmax(0,1fr) auto}.setup-grid:has(.combat-card){grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}@media(max-width:900px){.setup-grid:has(.combat-card){grid-template-columns:1fr}}@media(max-width:500px){.hp-actions{grid-column:1/-1}.initiative-fields{grid-template-columns:95px 1fr;gap:12px}}
/* Compact combat ledger: identity above, health and adjustment beneath. */
.turn.combat-card,.turn.combat-card:has(.turn-menu){position:relative;grid-template-columns:16px 30px minmax(0,1fr) auto 24px;column-gap:10px;row-gap:0;padding:13px 10px;border-radius:var(--radius);align-items:center;min-height:58px}.combat-card .turn-index{font-size:11.5px;opacity:.55}.combat-card .turn-avatar{width:30px;height:30px;border-radius:var(--radius);font-size:14px;grid-row:1/3}.combat-card .combat-identity{grid-column:3;grid-row:1/3}.combat-card .turn-name{font-size:14px;line-height:1.5}.combat-card .init{grid-column:4;grid-row:1;color:var(--muted);font-size:14px;align-self:start;padding-top:2px}.combat-card.active .init{color:var(--lime)}.combat-card .turn-menu{grid-column:5;grid-row:1;align-self:start}.combat-card .turn-menu summary{font-size:22px;line-height:20px}.combat-card .combat-vitals{gap:14px;margin-top:5px;min-height:24px}.combat-card .combat-vitals>strong{font-size:19.5px;font-weight:500;letter-spacing:0}.combat-card .combat-vitals small{font-size:11.5px;letter-spacing:0}.combat-card .combat-vitals>span{font-size:11.5px}.combat-card .combat-vitals b{font-size:14px;font-weight:500}.combat-card .hp-actions{grid-column:4/6;grid-row:2;gap:0;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;align-self:end;margin-top:5px;background:var(--ink-wash)}.combat-card .hp-actions input{width:42px;height:27px;padding:4px;text-align:center;border:0;border-radius:0;background:transparent;font:12.5px var(--mono);appearance:textfield;-moz-appearance:textfield}.combat-card .hp-actions input::-webkit-inner-spin-button,.combat-card .hp-actions input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.combat-card .hp-actions button{width:28px;height:27px;padding:0;border:0;border-left:1px solid var(--line);border-radius:0;font-size:18.5px;background:transparent}.combat-card .hp-actions button:hover{background:color-mix(in srgb,var(--vermilion) 7%,transparent)}.combat-card.active{background:color-mix(in srgb,var(--vermilion) 5%,transparent);border-left-color:var(--lime)}.combat-card.is-dead{grid-template-columns:16px 30px minmax(0,1fr) auto 24px}.turn-list{margin-top:12px}.setup-grid:has(.combat-card){margin-top:18px}.setup-grid:has(.combat-card)>.panel{padding:20px}.setup-grid:has(.combat-card)>.panel>.section-title{margin-bottom:14px}.combat-card .queued-initiative{font-size:10.5px;max-width:95px}.combat-card:has(.queued-initiative) .hp-actions{margin-top:20px}@media(max-width:500px){.turn.combat-card,.turn.combat-card:has(.turn-menu){column-gap:7px;padding:12px 6px}.combat-card .hp-actions{grid-column:4/6}.combat-card .combat-vitals{gap:8px}}
.combat-card .turn-index{grid-column:1;grid-row:1/3;align-self:center}.combat-card .turn-avatar{grid-column:2}.combat-card .init{justify-self:end;padding-right:7px}.combat-card .turn-menu{justify-self:end;width:24px}
.ac-rounds-field:not([hidden]){display:grid;grid-template-columns:120px 1fr;gap:9px 20px;align-items:center;margin-top:20px;font-size:14px;color:var(--muted)}.ac-rounds-field input{width:100%;height:42px;border:1px solid var(--line);border-radius:var(--radius);background:var(--canvas);color:var(--ink);padding:10px 14px}.ac-rounds-field small{grid-column:1/-1;font-size:12.5px;line-height:1.6}.combat-vitals .ac-duration{color:var(--lime);font:11.5px var(--mono)}
.creature-name-field{display:grid;gap:9px;color:var(--muted);font-size:14px}.creature-name-field input{height:46px;width:100%;padding:10px 14px;border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);background:var(--canvas);font:16px var(--sans)}.offstage-identity{display:flex;align-items:center;gap:10px;min-width:0}.offstage-identity .turn-avatar{width:30px;height:30px;flex-shrink:0;border-radius:var(--radius);font-size:12.5px;background:var(--gold-leaf);color:var(--canvas)}.combat-card .turn-avatar{font-size:12.5px;letter-spacing:0}

.setup-actions{display:flex;gap:10px;flex-wrap:wrap}.encounter-list{margin-top:24px}.scheduled-encounter{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;border-top:1px solid var(--line)}.scheduled-encounter p{font-size:14px;color:var(--muted);margin:6px 0 0}.history-encounter{border-top:1px solid var(--line)}.history-encounter summary{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center;padding:14px 0;cursor:pointer;list-style:none}.history-encounter summary::-webkit-details-marker{display:none}.history-encounter summary small{display:block;color:var(--muted);font-size:12.5px;margin-top:5px}.history-meta{font:14px var(--mono);color:var(--muted)}.history-body{padding:0 0 18px;overflow-x:auto}.history-body h4{font:600 15px var(--sans);color:var(--lime);margin:18px 0 8px}.history-body table{width:100%;border-collapse:collapse;font-size:14px}.history-body th{text-align:left;font:500 11.5px var(--mono);letter-spacing:.08em;color:var(--muted);font-variant-caps:all-small-caps;padding:6px 10px 6px 0}.history-body td{padding:7px 10px 7px 0;border-top:1px solid var(--line)}.history-stats,.history-notes{font-size:14px;color:var(--muted);white-space:pre-wrap}.end-fields{display:grid;gap:12px;margin:14px 0}.end-fields label{display:grid;gap:6px;font-size:14px}@media(max-width:650px){.history-encounter summary{grid-template-columns:1fr auto}.history-meta{grid-column:1}.scheduled-encounter{flex-wrap:wrap}}
.setup-creature{position:relative}.setup-creature .zone-creature-card{padding-right:40px}.setup-creature>.turn-menu{position:absolute;right:8px;top:12px}.encounter-zone:has(.turn-menu[open]){position:relative;z-index:10}.setup-creature>.turn-menu summary{font-size:22px;line-height:20px;width:24px}

/* Reference mode: the nav tab hides encounter-picking controls. */
#compendium-view:not(.picking) :is(.copy-stepper,#creature-picker-tray){display:none}
.encounter-notes{margin-top:24px}.encounter-notes h2{margin:0 0 12px}.encounter-notes textarea,.scheduled-notes{width:100%;box-sizing:border-box;resize:vertical;font:15px/1.5 var(--sans);color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);padding:10px 12px}.scheduled-encounter>div:first-child{flex:1;min-width:0}.scheduled-notes{margin-top:10px;font-size:14px}
.npc-view-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:6px 0 22px}
.npc-view-tabs{margin:0}
.npc-view-tabs button:disabled{opacity:.38;cursor:not-allowed}
.sb-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:16px}
.sb-toolbar>div{display:flex;gap:14px;align-items:center}
.sb-danger{color:var(--red)}
.sb{display:grid;gap:18px;color:var(--ink)}
.sb-card{background:var(--panel);border:1px solid var(--line);border-top:3px solid var(--gold);border-radius:var(--radius);padding:22px 24px 18px}
.sb-name{font:600 30px/1.15 var(--serif);color:var(--gold);margin:0}
.modal .sb p.sb-meta{font:italic 16px var(--serif);color:var(--muted);margin:4px 0 14px}
.sb-props{display:flex;flex-wrap:wrap;gap:4px 28px;margin:12px 0;padding:12px 0;border-block:1px solid var(--line)}
.sb-props div{display:flex;gap:8px;font-size:15px;line-height:1.55}
.sb-props dt{color:var(--gold);font-weight:700;white-space:nowrap}
.sb-props div{max-width:100%}
.sb-props dd{margin:0;color:var(--ink)}
.sb-abilities{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin:14px 0}
.sb-abilities div{display:grid;justify-items:center;gap:2px;padding:10px 4px;background:color-mix(in srgb,var(--text) 3%,transparent);border:1px solid var(--line);border-radius:var(--radius)}
.sb-abilities span{font:700 11.5px var(--sans);letter-spacing:.12em;color:var(--muted)}
.sb-abilities b{font:600 23px var(--serif);color:var(--ink)}
.sb-abilities small{font:14px var(--mono);color:var(--lime)}
.sb-section{font:700 14px var(--sans);letter-spacing:.14em;font-variant-caps:all-small-caps;color:var(--lime);margin:22px 0 10px;padding-bottom:6px;border-bottom:1px solid color-mix(in srgb,var(--vermilion) 25%,transparent)}
.modal .sb p{font-size:16px;line-height:1.65;color:var(--ink);margin:0 0 10px}
.modal .sb p.sb-text{color:var(--muted)}
.sb-feature>strong:first-child,.sb-feature>strong:first-child em,.sb-list li>strong:first-child em{font:italic 600 17px var(--serif);color:var(--gold)}
.modal .sb p.sb-aside{border-left:3px solid var(--violet);background:color-mix(in srgb,var(--lapis) 6%,transparent);padding:10px 14px;border-radius:0 var(--radius) var(--radius) 0;color:var(--muted)}
.sb-list{margin:0 0 10px;padding-left:20px;font-size:16px;line-height:1.65}
.sb-table{width:100%;border-collapse:collapse;font-size:15px;margin:8px 0 14px}
.sb-table th{color:var(--gold);text-align:left;font-weight:700}
.sb-table th,.sb-table td{padding:7px 8px;border-bottom:1px solid var(--line)}
.sb-editor{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;align-items:start}
.sb-editor textarea{width:100%;min-height:60vh;resize:vertical;background:var(--canvas);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius);padding:14px;font:14px/1.6 var(--mono)}
.sb-editor .sb{max-height:60vh;overflow:auto}
.sb-attach{max-width:620px;padding:26px;background:var(--panel);border:1px dashed color-mix(in srgb,var(--gold-leaf) 35%,transparent);border-radius:var(--radius)}
.sb-attach h3{font:600 25.5px var(--serif);color:var(--gold);margin:0 0 6px}
.sb-attach-row{display:flex;gap:10px;margin:16px 0 10px}
.sb-attach-row input{flex:1;min-width:0;background:var(--canvas);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius);padding:10px 12px;font:16px var(--sans)}
.sb-attach-actions{display:flex;justify-content:space-between}
@media (max-width:720px){.sb-abilities{grid-template-columns:repeat(3,1fr)}.sb-editor{grid-template-columns:1fr}.sb-card{padding:18px 16px}}
.modal .sb p.sb-label{font:700 11.5px var(--sans);letter-spacing:.16em;font-variant-caps:all-small-caps;color:var(--muted);margin:0 0 6px}

.party-card-copy{display:flex;flex-direction:column}
.party-card-copy h3{margin-bottom:8px}
.npc-card-copy .party-card-class{font-size:16px;font-weight:700;line-height:1.35;color:var(--lime)}
.npc-card-copy .party-card-subclass{font-size:14px;line-height:1.35;color:color-mix(in srgb,var(--vermilion) 70%,transparent)}
.npc-card-copy .party-card-race{font-size:15px;font-weight:600;line-height:1.35;margin-top:4px;color:var(--gold)}
.npc-card-copy .party-player-name{margin-top:auto;padding-top:12px;border-top:1px solid var(--line);font:500 12.5px/1.4 var(--mono);letter-spacing:.06em;font-variant-caps:all-small-caps;color:var(--violet)}
.party-card-copy .party-card-race{margin-bottom:14px}

/* Encounter picker: character rows carry a portrait; multi-form characters choose their stat blocks. */
.character-result .creature-inspect{display:flex;align-items:center;gap:10px}
.character-thumb{flex:none;width:38px;height:38px;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:color-mix(in srgb,var(--gold-leaf) 13%,transparent);color:var(--muted);font-weight:700}
.character-thumb img{width:100%;height:100%;object-fit:cover}
/* Stat block sequence: numbered chips; unused stat blocks fade below. */
.form-picker{margin:0 0 18px;padding-bottom:16px;border-bottom:1px solid var(--line)}
.form-picker-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.form-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.form-chip{display:inline-flex;align-items:center;gap:9px;padding:6px 14px 6px 6px;border:1px solid var(--line);border-radius:var(--radius-tag);background:transparent;color:var(--muted);font:600 15px var(--sans);cursor:pointer}
.form-chip:hover{border-color:color-mix(in srgb,var(--vermilion) 38%,transparent);color:var(--ink)}
.form-chip:focus-visible{outline:2px solid var(--lime);outline-offset:2px}
.form-chip[aria-pressed=true]{border-color:color-mix(in srgb,var(--vermilion) 44%,transparent);background:color-mix(in srgb,var(--vermilion) 7%,transparent);color:var(--ink)}
.form-chip-step{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;border:1px dashed var(--line);font:600 12.5px var(--mono)}
.form-chip[aria-pressed=true] .form-chip-step{border:0;background:var(--lime);color:var(--on-vermilion)}
.form-hint{margin:10px 0 0;color:var(--muted);font-size:14px}.form-hint b{color:var(--ink);font-weight:600}
.creature-detail .sb.is-unused{opacity:.4}
.combat-form{display:block;color:var(--muted);font-size:12.5px}
.creature-list .character-toggle{display:inline-block;width:auto;text-align:center;flex:none;min-width:84px;padding:8px 10px;font-size:14px}.creature-list .character-toggle[aria-pressed=true]{border-color:var(--lime);color:var(--lime);background:color-mix(in srgb,var(--vermilion) 6%,transparent)}
.party-status{z-index:2;cursor:pointer;font-weight:700;letter-spacing:.06em;font-variant-caps:all-small-caps}.party-status.is-visible{color:var(--lime);border-color:color-mix(in srgb,var(--vermilion) 50%,transparent)}.party-status.is-hidden{color:var(--muted);border-color:var(--line)}
.party-character-card.is-inactive .npc-card-art img,.party-character-card.is-inactive .party-card-copy{opacity:.45}

.player-roll-card{position:relative;overflow:visible}.player-roll-card .player-card-identity{padding-right:40px}.player-roll-card>.turn-menu{position:absolute;right:10px;top:12px;width:24px}.player-roll-card:has(.turn-menu[open]){z-index:6}

.initiative-request-list{margin-top:12px}.initiative-request{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;border-top:1px solid var(--line)}.initiative-request:first-child{border-top:0}.request-identity{display:grid;gap:5px;min-width:0}.request-identity strong{font-size:16px;color:var(--ink);overflow-wrap:anywhere}.request-identity small{font-size:12.5px;color:var(--muted)}.initiative-request>.turn-menu{flex:none;width:28px}.initiative-request>.turn-menu summary{line-height:28px}.initiative-requests{align-self:start}.initiative-requests>.section-title{margin-bottom:0}.initiative-request:has(.turn-menu[open]){position:relative;z-index:6}

.setup-creature>.zone-player-card{padding-right:40px}.manage-creature .reserve-actions{flex-wrap:wrap;justify-content:flex-end}.manage-creature .reserve-actions .turn-menu{width:28px;flex:none}

.encounter-conditions{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.encounter-conditions>span{font:11.5px var(--sans);color:var(--gold);background:color-mix(in srgb,var(--gold-leaf) 6%,transparent);border:1px solid color-mix(in srgb,var(--gold-leaf) 20%,transparent);border-radius:var(--radius);padding:3px 6px}.encounter-condition-options{max-height:55vh;overflow:auto;display:grid;gap:8px;margin-top:18px}.encounter-condition-option{display:flex;align-items:flex-start;gap:10px;padding:12px;border:1px solid var(--line);border-radius:var(--radius);cursor:pointer}.encounter-condition-option input{width:auto;margin-top:4px}.encounter-condition-option span{display:grid;gap:5px}.encounter-condition-option small{white-space:pre-line;color:var(--muted);font-size:12.5px;line-height:1.6}.encounter-condition-option:has(input:checked){border-color:var(--lime)}
.party-status{display:grid;place-items:center;padding:0;width:28px;height:28px;border-radius:var(--radius);letter-spacing:0}.party-status svg{display:block;pointer-events:none}

.modal:has(#campaign-invite){width:calc(100% - 32px);max-width:790px}.invite-character-picker{min-width:0;border:0;padding:0;margin:0}.invite-character-picker legend{font-size:14px;color:var(--muted);margin-bottom:12px}.invite-character-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.portal-form label.invite-character-card{position:relative;display:block;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--canvas);cursor:pointer}.invite-character-card>input{position:absolute;opacity:0;width:1px;height:1px}.invite-character-art{display:block;position:relative;height:150px;background:var(--leaf)}.invite-character-art img{width:100%;height:100%;object-fit:cover;object-position:top}.invite-character-initial{display:grid;place-items:center;height:100%;font:55px var(--serif);color:var(--muted)}.invite-character-check{position:absolute;right:8px;top:8px;display:grid;place-items:center;width:21px;height:21px;border:1px solid color-mix(in srgb,var(--text) 40%,transparent);border-radius:50%;background:var(--ink-wash);color:transparent;font-size:14px}.invite-character-copy{display:grid;gap:5px;padding:12px;min-height:96px}.invite-character-copy strong{font:600 18.5px var(--serif);color:var(--ink);overflow-wrap:anywhere}.invite-character-copy small{font-size:11.5px;color:var(--muted)}.invite-character-card:has(input:checked){border-color:var(--lime);box-shadow:0 0 0 1px var(--lime)}.invite-character-card:has(input:checked) .invite-character-check{background:var(--lime);border-color:var(--lime);color:var(--canvas)}.invite-character-card:has(input:focus-visible){outline:2px solid var(--lime);outline-offset:3px}.portal-form label.invite-create-option{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:var(--radius);padding:14px;margin-top:14px;cursor:pointer}.invite-create-option input{width:16px;flex:none;accent-color:var(--lime)}.invite-create-option>span{display:grid;gap:5px}.invite-create-option strong{font-size:14px}.invite-create-option small{font-size:12.5px;color:var(--muted)}.invite-create-option:has(input:checked){border-color:color-mix(in srgb,var(--vermilion) 50%,transparent);background:color-mix(in srgb,var(--vermilion) 3%,transparent)}@media(max-width:620px){.invite-character-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.invite-character-art{height:145px}.modal:has(#campaign-invite){padding:22px}}

.modal:has(#campaign-invite){box-sizing:border-box;max-width:760px;overflow-x:hidden;padding:26px}#campaign-invite{min-width:0;gap:16px}#campaign-invite>*{min-width:0;max-width:100%;box-sizing:border-box}#campaign-invite .invite-character-picker{width:100%;min-inline-size:0}#campaign-invite .invite-character-grid{width:100%;min-width:0}#campaign-invite .invite-character-card{min-width:0}#campaign-invite .invite-character-card>input{position:absolute;width:1px;height:1px;padding:0;margin:0;border:0;opacity:0}#campaign-invite .invite-create-option{min-height:0;height:auto;gap:10px;padding:11px 12px}#campaign-invite .invite-create-option input{appearance:auto;width:16px;height:16px;min-width:16px;flex:0 0 16px;padding:0;margin:0;border:0;border-radius:50%}#campaign-invite .invite-create-option>span{min-width:0}#campaign-invite .invite-create-option strong{font-weight:500;overflow-wrap:anywhere}#campaign-invite .invite-character-copy{min-height:80px;padding:10px;gap:4px}#campaign-invite .invite-character-copy small{overflow-wrap:anywhere}#campaign-invite .invite-character-art{height:130px}#campaign-invite .portal-footnote{margin:0;font-size:12.5px}#campaign-invite .modal-actions{margin-top:0}@media(max-width:480px){.modal:has(#campaign-invite){padding:20px}#campaign-invite .invite-character-art{height:110px}}

.creature-controls:not(:has(.roster-group)){padding:14px 20px;align-self:start}.creature-controls:not(:has(.roster-group))>.section-title{margin:0;gap:16px}.creature-controls:not(:has(.roster-group)) .eyebrow{display:none}.creature-controls:not(:has(.roster-group)) h2{font:600 16px var(--sans);color:var(--muted)}.creature-controls:not(:has(.roster-group)) #creature-management{display:none}
#compendium-view #creature-detail{background:none;border:0;box-shadow:none;padding:0}#creature-detail .statblock-toolbar{justify-content:flex-end;background:none;border:0;padding:0;margin:0;height:0;overflow:visible}#creature-detail .statblock-toolbar .icon-btn{transform:translate(-10px,12px)}#creature-detail .sb{max-height:none}
