:root{color-scheme:light;--background: #f8fafc;--foreground: #1f2628;--muted: #667174;--surface: #ffffff;--surface-subtle: #eef2f5;--surface-strong: #e5f1ee;--side-rail: #edf2f4;--border: #d4dde2;--primary: #236568;--primary-strong: #163f42;--primary-foreground: #ffffff;--accent: #6f7d2d;--success: #47744b;--warning: #96691f;--warning-surface: #f5ead8;--danger: #9b4a3c;--danger-surface: #f7e9e6;--focus: #2f6f73;--shadow: 0 18px 50px rgba(31, 38, 40, .1);--radius: 8px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{min-width:320px;background:var(--background)}body{margin:0;color:var(--foreground);background:var(--background)}button,input,textarea,select{font:inherit}button:disabled,select:disabled{cursor:not-allowed;opacity:.62}a{color:inherit}.app-shell{display:grid;grid-template-columns:244px minmax(0,1fr);min-height:100vh}.side-rail{position:sticky;top:0;display:flex;flex-direction:column;gap:var(--space-8);height:100vh;padding:22px;border-right:1px solid var(--border);background:var(--side-rail)}.brand-mark{display:flex;align-items:center;gap:var(--space-3);color:var(--foreground);text-decoration:none}.brand-glyph{display:grid;place-items:center;width:40px;height:40px;border-radius:var(--radius);background:var(--primary-strong);color:var(--primary-foreground);font-size:.9rem;font-weight:800}.brand-mark strong,.brand-mark small{display:block}.brand-mark strong{line-height:1.1}.brand-mark small{margin-top:2px;color:var(--muted);font-size:.8rem}.rail-nav{display:grid;gap:var(--space-1)}.rail-nav a{padding:9px 10px;border-radius:6px;color:var(--foreground);text-decoration:none;font-size:.92rem}.rail-nav a:hover,.rail-nav a:focus-visible{background:#2365681f;outline:none}.workspace{display:grid;gap:var(--space-6);align-content:start;padding:24px min(5vw,64px) 56px}.topbar,.section-heading,.linked-row,.campaign-row{display:flex;gap:var(--space-4);align-items:center;justify-content:space-between}.topbar{min-height:64px;padding-bottom:var(--space-5);border-bottom:1px solid var(--border)}.eyebrow,.section-kicker{margin:0 0 var(--space-2);color:var(--accent);font-size:.76rem;font-weight:800;letter-spacing:0;text-transform:uppercase}h1,h2,h3,p{margin-top:0}h1{margin-bottom:0;font-size:1.6rem;line-height:1.1}h2{margin-bottom:10px;font-size:1.35rem;line-height:1.18}h3{margin-bottom:var(--space-2);font-size:1rem}p{color:var(--muted);line-height:1.6}.auth-controls{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--space-2)}.button,.icon-button{display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:7px;cursor:pointer;font-weight:700;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.button{gap:7px;min-height:38px;padding:8px 12px;font-size:.92rem}.icon-button{width:38px;height:38px;background:var(--surface);border-color:var(--border);color:var(--foreground)}.button:focus-visible,.icon-button:focus-visible,.list-row:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.button.primary{background:var(--primary);color:var(--primary-foreground)}.button.primary:hover{background:var(--primary-strong)}.button.ghost,.icon-button:hover{border-color:var(--border);background:var(--surface);color:var(--foreground)}.button.ghost:hover{border-color:var(--primary)}.button.danger{border-color:#9b4a3c52;background:var(--danger-surface);color:var(--danger)}.button.danger:hover{border-color:var(--danger);background:#f3d9d3}.auth-warning,.auth-skeleton{min-height:38px;padding:9px 11px;border:1px solid var(--border);border-radius:7px;color:var(--muted);background:var(--surface);font-size:.88rem}.user-button-anchor{display:grid;place-items:center;min-width:38px;min-height:38px}.intro-band{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,340px);gap:var(--space-6);align-items:end;padding:34px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}.intro-copy{max-width:720px}.intro-copy h2{max-width:660px;font-size:3rem;line-height:1.02}.intro-copy p:last-child,.plain-section p:last-child,.form-panel p:last-child{margin-bottom:0}.status-panel{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--space-3);align-items:start;padding:15px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-strong)}.status-panel svg{color:var(--success)}.status-panel strong,.status-panel span,.linked-row strong,.linked-row small,.campaign-row strong,.campaign-row small{display:block}.status-panel span,.linked-row small,.campaign-row small{margin-top:var(--space-1);color:var(--muted);font-size:.86rem}.workspace-grid{display:grid;grid-template-columns:minmax(300px,.95fr) minmax(360px,1.25fr);gap:var(--space-6);align-items:start}.stack,.detail-stack,.campaign-band,.admin-section,.rulebook-section{display:grid;gap:var(--space-4)}.form-panel,.detail-shell,.plain-section,.campaign-band{padding:var(--space-5);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.form-title{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--primary-strong)}.form-title svg{color:var(--primary)}.creation-wizard{gap:var(--space-4)}.wizard-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-2)}.wizard-step{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--space-2);align-items:center;min-height:42px;padding:var(--space-2);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--muted);cursor:pointer;text-align:left}.wizard-step span{display:grid;place-items:center;width:24px;height:24px;border-radius:999px;background:var(--surface-subtle);color:var(--primary-strong);font-size:.78rem;font-weight:800}.wizard-step strong{overflow-wrap:anywhere;font-size:.84rem}.wizard-step.active,.wizard-step.complete{border-color:var(--primary);color:var(--foreground)}.wizard-step.complete span{background:var(--primary);color:var(--primary-foreground)}.wizard-pane{display:grid;gap:var(--space-3)}.helper-copy{margin-bottom:0;font-size:.92rem}.ability-preview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2)}.ability-preview span{display:flex;min-height:38px;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-2);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-subtle);font-weight:800}.ability-preview strong{color:var(--muted);font-size:.78rem}.skill-rating-grid{display:grid;gap:var(--space-3)}.skill-rating-group{display:grid;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-subtle)}.skill-rating-group h3{margin-bottom:var(--space-1)}.skill-rating-row{display:grid;grid-template-columns:minmax(110px,1fr) auto;gap:var(--space-2);align-items:center}.skill-rating-row>span{color:var(--foreground);font-size:.9rem;font-weight:700}.rating-buttons{display:grid;grid-template-columns:repeat(5,32px);gap:var(--space-1)}.rating-button{width:32px;height:32px;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--foreground);cursor:pointer;font-size:.86rem;font-weight:800}.rating-button.selected{border-color:var(--primary);background:var(--primary);color:var(--primary-foreground)}.wizard-actions{display:flex;justify-content:space-between;gap:var(--space-3)}.form-panel,.form-panel label,.inline-form label{display:grid;gap:var(--space-2)}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}label span{color:var(--muted);font-size:.84rem;font-weight:700}input,textarea,select{width:100%;min-height:40px;padding:9px 11px;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--foreground)}textarea{resize:vertical}input:focus,textarea:focus,select:focus{border-color:var(--focus);outline:2px solid rgba(47,111,115,.15)}.character-list-toolbar{display:grid;gap:var(--space-3)}.status-filter{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));min-height:42px;overflow:hidden;border:1px solid var(--border);border-radius:7px;background:var(--surface)}.status-filter button{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:var(--space-1);padding:8px 10px;border:0;border-left:1px solid var(--border);background:transparent;color:var(--muted);cursor:pointer;font-size:.82rem;font-weight:800}.status-filter button:first-child{border-left:0}.status-filter button:hover,.status-filter button.selected{background:var(--primary);color:var(--primary-foreground)}.status-filter button:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.status-filter span{min-width:0;overflow:hidden;text-overflow:ellipsis}.status-filter strong{display:inline-grid;place-items:center;min-width:24px;min-height:24px;border-radius:999px;background:#1f262814;font-size:.74rem}.status-filter button.selected strong{background:#fff3}.item-list,.campaign-list,.ruleset-list,.rulebook-results{display:grid;gap:var(--space-2)}.list-row{display:flex;width:100%;min-height:62px;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--foreground);text-align:left}.list-row:hover,.list-row.selected{border-color:var(--primary);background:var(--surface-strong)}.list-row strong,.list-row small{display:block}.list-row small{margin-top:var(--space-1);color:var(--muted);font-size:.84rem}.list-row-main{display:grid;grid-template-columns:minmax(0,1fr) auto;flex:1;gap:var(--space-3);align-items:center;min-width:0}.list-row-main>span:first-child{min-width:0}.list-row.archived{background:#f7f4ef}.list-row svg{flex:0 0 auto;color:var(--primary)}.detail-shell{display:grid;gap:var(--space-4)}.management-panel{display:grid;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-subtle)}.management-header,.profile-summary{display:flex;gap:var(--space-3);align-items:center;justify-content:space-between}.management-header h3{margin-bottom:0}.management-header small,.profile-summary small{display:block;margin-top:var(--space-1);color:var(--muted);font-size:.82rem;overflow-wrap:anywhere}.profile-summary strong{display:block}.profile-edit-form{display:grid;gap:var(--space-3)}.profile-edit-form .field-grid{align-items:start}.management-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center;justify-content:flex-end}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(126px,1fr));gap:var(--space-3)}.metric{min-width:0;padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-subtle)}.metric span,.metric strong{display:block}.metric span{color:var(--muted);font-size:.78rem;font-weight:800;text-transform:uppercase}.metric strong{margin-top:var(--space-1);overflow-wrap:anywhere;font-size:1rem}.detail-block{padding-top:var(--space-4);border-top:1px solid var(--border)}.sheet-section-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}.sheet-section-grid .detail-block{min-width:0}.block-heading,.skill-group-heading,.selected-skill-summary,.roll-group{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center;justify-content:space-between}.block-heading h3{margin-bottom:0}.block-heading small,.skill-group-heading span{color:var(--muted);font-size:.82rem;font-weight:800}.ability-score-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:var(--space-2)}.ability-score{display:flex;min-width:0;min-height:50px;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-subtle)}.ability-score span{min-width:0;color:var(--muted);font-size:.82rem;font-weight:800;overflow-wrap:anywhere}.ability-score strong{font-size:1.2rem}.skill-matrix{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.skill-group{display:grid;gap:var(--space-2);min-width:0;padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-subtle)}.skill-group-heading strong{color:var(--primary-strong)}.skill-list{display:grid;gap:var(--space-1)}.sheet-skill-row{display:grid;grid-template-columns:minmax(112px,1fr) 34px 58px 58px minmax(78px,auto);gap:var(--space-2);align-items:center;min-height:34px;padding:5px 0;border-top:1px solid var(--border);font-size:.88rem}.sheet-skill-row:first-child{border-top:0}.sheet-skill-row>span:first-child{min-width:0;overflow-wrap:anywhere;font-weight:700}.skill-rating,.skill-points,.skill-die,.proficiency-pill{justify-self:end;white-space:nowrap}.skill-rating{display:inline-grid;place-items:center;width:28px;min-height:28px;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--primary-strong);font-size:.82rem;font-weight:800}.skill-points{color:var(--muted);font-size:.8rem;font-weight:700}.skill-die{color:var(--foreground);font-weight:800}.proficiency-pill{min-height:24px;padding:3px 7px;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--muted);font-size:.72rem;font-weight:800}.proficiency-pill.active{border-color:#23656859;background:var(--surface-strong);color:var(--primary-strong)}.skill-check-tool{display:grid;gap:var(--space-3)}.skill-check-controls{display:grid;grid-template-columns:minmax(220px,1fr) minmax(250px,auto) auto;gap:var(--space-3);align-items:end}.roll-mode-field{display:grid;gap:var(--space-2)}.roll-mode-field>span{color:var(--muted);font-size:.84rem;font-weight:700}.segmented-control{display:grid;grid-template-columns:repeat(3,minmax(78px,1fr));min-height:40px;overflow:hidden;border:1px solid var(--border);border-radius:7px;background:var(--surface)}.segmented-control button{border:0;border-left:1px solid var(--border);background:transparent;color:var(--muted);cursor:pointer;font-size:.84rem;font-weight:800}.segmented-control button:first-child{border-left:0}.segmented-control button:hover,.segmented-control button.selected{background:var(--primary);color:var(--primary-foreground)}.segmented-control button:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.selected-skill-summary{justify-content:flex-start}.selected-skill-summary span{min-height:26px;padding:4px 8px;border:1px solid var(--border);border-radius:999px;background:var(--surface-subtle);color:var(--muted);font-size:.78rem;font-weight:800}.roll-result{display:grid;gap:var(--space-3);padding:var(--space-3);border:1px solid rgba(35,101,104,.28);border-radius:var(--radius);background:var(--surface-strong)}.roll-total{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-1) var(--space-3);align-items:end}.roll-total span,.roll-total small{min-width:0;overflow-wrap:anywhere}.roll-total span{color:var(--primary-strong);font-weight:800}.roll-total strong{grid-row:span 2;font-size:2rem;line-height:1}.roll-total small{color:var(--muted);font-weight:700}.roll-groups{display:grid;gap:var(--space-2)}.roll-group{justify-content:flex-start}.roll-group>span{min-width:120px;color:var(--muted);font-size:.82rem;font-weight:800}.roll-group>div{display:flex;flex-wrap:wrap;gap:var(--space-1)}.roll-chip{display:inline-grid;place-items:center;min-width:32px;min-height:28px;padding:3px 7px;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--muted);font-weight:800}.roll-chip.used{border-color:var(--primary);background:var(--primary);color:var(--primary-foreground)}.ledger-list{display:grid;gap:var(--space-2)}.ledger-step{display:grid;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-subtle)}.ledger-step strong,.ledger-step small{display:block}.ledger-step small{margin-top:var(--space-1);color:var(--muted);font-size:.82rem}.ledger-choice-list{display:flex;flex-wrap:wrap;gap:var(--space-2)}.ledger-choice{min-height:26px;padding:4px 8px;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--primary-strong);font-size:.78rem;font-weight:800}dl{display:grid;gap:var(--space-2);margin:0}dl div{display:grid;grid-template-columns:130px minmax(0,1fr);gap:var(--space-3)}dt{color:var(--muted);font-size:.84rem;font-weight:700}dd{min-width:0;margin:0;overflow-wrap:anywhere}.inline-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-3);align-items:end}.link-actions{display:grid;gap:var(--space-3)}.create-campaign{max-width:620px}.linked-row,.campaign-row,.ruleset-row{min-height:58px;padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-subtle)}.campaign-layout{display:grid;grid-template-columns:minmax(240px,.72fr) minmax(320px,1.28fr);gap:var(--space-4);align-items:start}.campaign-select-row{width:100%;color:var(--foreground);cursor:pointer;text-align:left}.campaign-select-row:hover,.campaign-select-row.selected{border-color:var(--primary);background:var(--surface-strong)}.campaign-detail-panel{display:grid;gap:var(--space-4);min-width:0;padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-subtle)}.campaign-detail-panel h3{margin-bottom:0}.campaign-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.member-list{display:grid;gap:var(--space-2)}.member-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-3);align-items:center;min-height:64px;padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.member-main{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--space-3);align-items:center;min-width:0;border:0;background:transparent;color:var(--foreground);cursor:pointer;text-align:left}.member-main svg{color:var(--primary)}.member-main strong,.member-main small{display:block}.member-main small{margin-top:var(--space-1);color:var(--muted);font-size:.84rem}.member-main span{min-width:0}.member-main:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.member-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center;justify-content:flex-end}.ruleset-import-form{max-width:860px}.ruleset-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-3);align-items:center;background:var(--surface)}.ruleset-row strong,.ruleset-row small{display:block}.ruleset-row small{margin-top:var(--space-1);color:var(--muted);font-size:.84rem;overflow-wrap:anywhere}.ruleset-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center;justify-content:flex-end}.rulebook-toolbar{display:grid;grid-template-columns:minmax(220px,.55fr) minmax(280px,.45fr);gap:var(--space-4);align-items:end;padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.ruleset-summary strong,.ruleset-summary span{display:block}.ruleset-summary span{margin-top:var(--space-1);color:var(--muted);font-size:.86rem;text-transform:capitalize}.search-field{display:grid;gap:var(--space-2)}.search-field div{position:relative}.search-field svg{position:absolute;left:11px;top:50%;color:var(--muted);pointer-events:none;transform:translateY(-50%)}.search-field input{padding-left:36px}.search-field.compact{min-width:0}.rulebook-layout{display:grid;grid-template-columns:minmax(280px,.82fr) minmax(360px,1.18fr);gap:var(--space-4);align-items:start}.rulebook-results{max-height:720px;overflow:auto;padding-right:var(--space-1)}.rulebook-result{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-2);align-items:center;min-height:58px;padding:var(--space-2);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.rulebook-result:hover,.rulebook-result.selected{border-color:var(--primary);background:var(--surface-strong)}.rulebook-result-main{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--space-3);align-items:center;min-width:0;border:0;background:transparent;color:var(--foreground);cursor:pointer;text-align:left}.rulebook-result-main:focus-visible,.snippet-trigger:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.rulebook-result-main strong,.rulebook-result-main small{display:block}.rulebook-result-main small{margin-top:var(--space-1);color:var(--muted);font-size:.8rem;overflow-wrap:anywhere}.section-level{display:inline-grid;place-items:center;width:34px;min-height:28px;border:1px solid var(--border);border-radius:6px;background:var(--surface-subtle);color:var(--primary-strong);font-size:.74rem;font-weight:800}.section-level.level-3,.section-level.level-4,.section-level.level-5,.section-level.level-6{color:var(--muted)}.rulebook-reader{display:grid;gap:var(--space-4);min-width:0;padding:var(--space-5);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.reader-heading{display:flex;gap:var(--space-3);align-items:start;justify-content:space-between}.reader-heading h3{margin-bottom:0;font-size:1.28rem}.section-meta{display:flex;flex-wrap:wrap;gap:var(--space-2)}.section-meta span{display:inline-flex;min-height:26px;align-items:center;padding:4px 8px;border:1px solid var(--border);border-radius:999px;color:var(--muted);font-size:.78rem;font-weight:700}.rulebook-html{max-width:76ch;overflow-wrap:anywhere;line-height:1.65}.rulebook-html h1,.rulebook-html h2,.rulebook-html h3,.rulebook-html h4,.rulebook-html h5,.rulebook-html h6{margin:var(--space-5) 0 var(--space-2);line-height:1.2}.rulebook-html h1:first-child,.rulebook-html h2:first-child,.rulebook-html h3:first-child,.rulebook-html h4:first-child,.rulebook-html h5:first-child,.rulebook-html h6:first-child,.rulebook-html p:first-child{margin-top:0}.rulebook-html p,.rulebook-html ul,.rulebook-html ol,.rulebook-html table{margin:0 0 var(--space-3)}.rulebook-html table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse}.rulebook-html th,.rulebook-html td{padding:7px 9px;border:1px solid var(--border);vertical-align:top}.snippet-anchor{position:relative;display:inline-flex;align-items:center;justify-content:flex-end}.snippet-trigger{min-height:32px;padding:6px 9px;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--primary-strong);cursor:pointer;font-size:.82rem;font-weight:800}.snippet-trigger:hover{border-color:var(--primary)}.snippet-popover{position:absolute;right:0;top:calc(100% + var(--space-2));z-index:5;display:grid;gap:var(--space-1);width:min(320px,calc(100vw - 32px));padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);color:var(--foreground);text-align:left}.snippet-popover small{color:var(--muted);font-size:.78rem;font-weight:700}.snippet-popover span{color:var(--muted);font-size:.88rem;line-height:1.5}.status-pill{display:inline-flex;align-items:center;min-height:28px;padding:5px 9px;border:1px solid var(--border);border-radius:999px;background:var(--surface-subtle);color:var(--primary-strong);font-size:.8rem;font-weight:800;text-transform:capitalize;white-space:nowrap}.status-pill.status-draft{background:var(--warning-surface);color:var(--warning)}.status-pill.status-active{background:var(--surface-strong);color:var(--primary-strong)}.status-pill.status-archived{background:#eceff1;color:var(--muted)}.notice{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--space-3);align-items:start;padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.notice svg{margin-top:2px}.notice.error{border-color:#9b4a3c59;background:var(--danger-surface);color:var(--danger)}.notice.admin-needed{background:var(--surface-strong)}.notice strong,.notice span{display:block}.notice span{color:var(--muted)}.empty-state{display:grid;place-items:center;gap:var(--space-2);min-height:140px;padding:var(--space-5);border:1px dashed var(--border);border-radius:var(--radius);color:var(--muted);text-align:center}.empty-state.compact{min-height:86px}.empty-state strong{color:var(--foreground)}.empty-copy{margin-bottom:0}.spin{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:1080px){.app-shell{grid-template-columns:1fr}.side-rail{position:static;height:auto;flex-direction:row;align-items:center;justify-content:space-between;padding:14px 18px;border-right:0;border-bottom:1px solid var(--border)}.rail-nav{grid-auto-flow:column}}@media(max-width:860px){.workspace-grid,.intro-band,.campaign-layout,.rulebook-layout,.rulebook-toolbar,.wizard-steps,.ability-preview,.sheet-section-grid,.skill-matrix,.skill-check-controls{grid-template-columns:1fr}.workspace-grid{gap:var(--space-5)}}@media(max-width:720px){.workspace{padding:18px 16px 42px}.side-rail,.topbar,.section-heading,.management-header,.profile-summary,.inline-form,.linked-row,.campaign-row,.field-grid,.summary-grid,.skill-rating-row{grid-template-columns:1fr}.side-rail,.topbar,.section-heading,.management-header,.profile-summary,.linked-row,.campaign-row{align-items:stretch}.list-row-main,.status-filter{grid-template-columns:1fr}.status-filter button{border-top:1px solid var(--border);border-left:0}.status-filter button:first-child{border-top:0}.management-actions{justify-content:stretch}.management-actions .button{flex:1 1 150px}.management-header,.profile-summary{flex-direction:column}.rail-nav{grid-auto-flow:row;grid-template-columns:repeat(5,minmax(0,1fr))}.auth-controls{justify-content:flex-start}.intro-band,.form-panel,.detail-shell,.plain-section,.campaign-band,.campaign-detail-panel,.rulebook-reader{padding:var(--space-4)}.ruleset-row,.member-row,.rulebook-result{grid-template-columns:1fr}.ruleset-actions,.member-actions,.reader-heading,.wizard-actions{justify-content:flex-start}.wizard-actions{flex-direction:column}.rating-buttons{grid-template-columns:repeat(5,minmax(32px,1fr))}.rating-button{width:100%}.sheet-skill-row{grid-template-columns:minmax(0,1fr) auto auto}.sheet-skill-row .skill-points,.sheet-skill-row .proficiency-pill{justify-self:start}.sheet-skill-row .skill-points{grid-column:1 / 2}.segmented-control{grid-template-columns:1fr}.segmented-control button{min-height:38px;border-top:1px solid var(--border);border-left:0}.segmented-control button:first-child{border-top:0}.reader-heading{flex-direction:column}.rulebook-results{max-height:none;overflow:visible;padding-right:0}.snippet-anchor,.snippet-trigger{width:100%}.snippet-popover{left:0;right:auto}.intro-copy h2{font-size:2rem}dl div{grid-template-columns:1fr;gap:var(--space-1)}}@media(max-width:460px){.rail-nav,.button{grid-template-columns:1fr}.button{width:100%}}
