@layer base{:root{--ink:#e5e4d9;--muted:#abb7bf;--faint:#abb7bf;--canvas:#11181c;--surface:#182126;--surface-alt:#202b31;--line:#35434b;--line-strong:#50616b;--brass:#cfb77d;--accent:#cfb77d;--accent-dark:#e6d3a6;--accent-soft:#202b31;--structural:#202b31;--command:#0d1418;--action-ink:#151a1d;--danger:#ff9c94;--warning:#efc37c;--z-bar:20;--z-overlay:50;--step-small:.875rem;--step-body:1rem;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:var(--ink);background:var(--canvas);font:16px/1.45 ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}*{box-sizing:border-box}html,body{background:var(--canvas);min-height:100%;margin:0}main{min-height:100vh}button,input,select{font:inherit}button,select,summary{cursor:pointer}button{border:1px solid var(--line-strong);background:var(--surface);min-height:40px;color:var(--ink);border-radius:5px;padding:8px 12px;font-size:.85rem;font-weight:650}button:hover{border-color:var(--accent);background:var(--accent-soft)}button:disabled{opacity:.55;cursor:default}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--brass);outline-offset:3px}input,select{border:1px solid var(--line-strong);background:var(--surface);width:100%;min-width:0;min-height:44px;color:var(--ink);border-radius:5px;padding:8px 10px}input[type=checkbox]{width:20px;min-height:20px}h1,h2,h3,h4,h5,p,strong,small,label,legend{overflow-wrap:anywhere}h1,h2{letter-spacing:normal;font-family:ui-sans-serif,system-ui,sans-serif;font-weight:700}h1,h2,h3,p{margin-top:0}h3{font-size:1rem}label{color:var(--muted);gap:5px;font-size:.85rem;font-weight:600;display:grid}small{color:var(--muted);font-size:.75rem}fieldset{min-inline-size:0}.app-shell :is(button,input,select,textarea,summary,a[href],[tabindex]),[data-task-heading],.sheet-heading,[id^=unit-section-]{scroll-margin-top:calc(var(--workspace-sticky-height,68px) + 16px)}[hidden]{display:none!important}details{border:1px solid var(--line);background:var(--surface);border-radius:5px;margin:8px 0;padding:10px}summary{min-height:30px}.primary-action,.browse-choices{color:var(--action-ink);background:var(--accent);border-color:var(--accent)}.primary-action:hover,.browse-choices:hover{color:var(--action-ink);background:var(--accent-dark)}a{color:var(--accent);text-underline-offset:3px}a:hover{color:var(--accent-dark)}a:focus-visible{outline:3px solid var(--brass);outline-offset:3px}[data-task-heading]:focus-visible{outline:1px solid var(--brass);outline-offset:4px}input[type=checkbox],input[type=radio]{accent-color:var(--accent)}::selection{background:var(--accent);color:var(--action-ink)}}@layer workspace{.app-shell{min-height:100vh}.app-topbar{z-index:var(--z-bar);min-height:68px;color:var(--ink);background:var(--command);grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:16px;padding:10px 24px;display:grid;position:sticky;top:0}.brand{font:700 1.8rem ui-sans-serif,system-ui,sans-serif}.brand-subtitle{color:var(--muted);margin-left:12px;font:500 .75rem ui-sans-serif,system-ui,sans-serif}.appbar-army{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:3px 12px;min-width:0;max-width:660px;display:grid}.appbar-army h1{margin:0;font-size:1.35rem;line-height:1.2}.command-save{color:var(--muted);grid-column:1;font-size:.7rem}.appbar-points{white-space:nowrap;font-variant-numeric:tabular-nums;grid-area:1/2;align-items:baseline;gap:4px;display:flex}.appbar-points strong{font-size:1.35rem}.appbar-points>span{color:var(--muted);font-size:.8rem}.appbar-review{min-height:20px;color:var(--brass);text-align:right;background:0 0;border:0;grid-area:2/2;padding:0;font-size:.68rem}.mode-switch{border:1px solid var(--line-strong);border-radius:5px;gap:4px;padding:3px;display:flex}.mode-switch button{min-width:70px;min-height:34px;color:var(--ink);background:0 0;border:0}.mode-switch button[aria-pressed=true]{background:var(--accent);color:var(--action-ink)}.topbar-actions{align-items:center;gap:8px;display:flex}.topbar-actions>button,.topbar-actions .account-status>button{border:1px solid var(--line-strong);min-height:34px;color:var(--ink);background:0 0;font-size:.75rem}.topbar-account{grid-column:1/-1;min-width:0}.topbar-account:not(:has(.account-controls)){display:none}.account-status>span{font-size:.72rem}.workspace-summary{background:var(--surface);padding:0 24px}.workspace-summary:empty{display:none}.army-context{background:0 0;border:0;margin:0;padding:0;font-size:.75rem}.army-context summary{padding:6px 0}.army-context>span,.army-context>button{margin:4px 10px 8px 0}.task-navigation{top:var(--appbar-height,68px);z-index:19;border-bottom:1px solid var(--line-strong);background:var(--surface);align-items:stretch;gap:4px;padding:0 24px;display:flex;position:sticky}.task-navigation button{background:0 0;border:0;border-bottom:3px solid #0000;border-radius:0;min-width:100px;min-height:44px;font-size:.84rem}.task-navigation button[aria-current]{color:var(--accent);border-color:var(--brass);background:var(--accent-soft)}.builder-layout{grid-template-columns:248px minmax(0,1fr);align-items:start;width:100%;display:grid}.detachment-rail{min-width:0;top:var(--workspace-sticky-height,68px);max-height:calc(100dvh - var(--workspace-sticky-height,68px));background:var(--canvas);padding:24px 16px;position:sticky;overflow-y:auto}.outline-toggle{display:none}.rail-heading{justify-content:space-between;gap:10px;display:flex}.rail-heading h2{margin:3px 0 16px;font:700 1rem ui-sans-serif,system-ui,sans-serif}.rail-heading>div>span,.section-label,.browser-heading>div>span{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:.7rem}.detachment-list{gap:8px;display:grid}.detachment-row{min-width:0}.detachment-item{text-align:left;background:0 0;border-color:#0000;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:6px;width:100%;padding:10px 8px;display:grid}.detachment-item[aria-pressed=true]{background:var(--surface);border-color:var(--line-strong);border-left:3px solid var(--brass)}.detachment-item strong,.detachment-item small{display:block}.detachment-item strong{font-size:.82rem}.detachment-item small{font-size:.7rem}.detachment-number{color:var(--brass);font:700 1.3rem ui-sans-serif,system-ui,sans-serif}.detachment-item>.finding-badge{grid-column:2;font-size:.7rem}.detachment-action{display:none}.detachment-item .chevron{color:var(--muted);font-size:1.2rem}.new-detachment,.linked-outline{text-align:left;width:100%;margin-top:12px}.linked-outline small{display:block}.detachment-rail>.outline-content>button{width:100%;margin-top:12px}.army-canvas,.unit-browser,.unit-editor{min-width:0;padding:24px}.work-pane{min-width:0}.canvas-heading,.browser-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.canvas-heading h2,.browser-heading h2{margin:0;font-size:1.45rem}.army-allowances{flex-wrap:wrap;gap:8px 20px;margin:0 0 16px;display:flex}.army-allowances .budget{gap:12px}.empty-detachment-requirements{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;font-size:.76rem;display:flex}.empty-detachment-requirements button{background:var(--accent-soft);min-height:32px;padding:3px 8px;font-size:.75rem}.detachment-panel[data-empty=true] .detachment-panel-body{flex-wrap:wrap;align-items:center;gap:8px 16px;padding:4px 12px;display:flex}.detachment-panel[data-empty=true] .detachment-details{margin:0}.detachment-panel[data-empty=true] .detachment-details[open]{flex-basis:100%}.detachment-panel[data-empty=true] .detachment-panel-heading{padding:8px 12px}.detachment-panel[data-empty=true] .detachment-panel-heading button{min-height:32px}.detachment-panel[data-empty=true] .detachment-panel-actions{padding:4px 12px}.army-detachments{gap:24px;display:grid}.mobile-army-actions{display:none}.detachment-panel{border:1px solid var(--line-strong);background:var(--surface);border-radius:6px;overflow:hidden}.detachment-panel-heading{background:var(--structural);color:var(--ink);flex-wrap:wrap;align-items:center;gap:8px 16px;padding:12px 16px;display:flex}.detachment-panel-heading>div{flex:1;align-items:center;gap:12px;min-width:0;display:flex}.detachment-panel-heading h3{margin:0;font-size:1.05rem}.detachment-emblem{color:var(--brass);font-size:1.1rem}.detachment-total{white-space:nowrap;font-variant-numeric:tabular-nums;font-size:.8rem}.detachment-panel-heading button{border-color:var(--line-strong);min-height:34px;color:var(--ink);background:0 0}.detachment-panel-heading .finding-badge{color:var(--brass)}.detachment-panel-actions{background:var(--surface-alt);border-top:1px solid var(--line);text-align:left;gap:10px;padding:8px 12px;font-size:.75rem;display:flex}.detachment-panel-actions button{min-height:32px;padding:4px 8px}.detachment-details{border:0;margin:0 0 12px;padding:0;font-size:.78rem}.detachment-details label{max-width:440px;margin-top:8px}.roster-sections{grid-template-columns:minmax(0,1fr);gap:16px;display:grid}.roster-role{min-width:0}.roster-role-heading{background:var(--accent-soft);align-items:center;gap:12px;margin-bottom:10px;padding:8px 12px;display:flex}.roster-role-heading h4{flex:1;margin:0;font-size:.84rem}.roster-role-heading>span{color:var(--muted);font-size:.72rem}.roster-role-heading>button{min-height:32px;padding:4px 8px;font-size:.75rem}.role-units{gap:10px;display:grid}.required-role-empty{color:var(--muted);padding:12px;font-size:.8rem}.roster-unit{border:1px solid var(--line);background:var(--surface);border-radius:5px;min-width:0;padding:14px}.roster-unit[data-prime=true]{border-top:3px solid var(--brass)}.roster-title{grid-template-columns:32px minmax(0,1fr) auto;align-items:start;gap:10px;display:grid}.role-glyph{border:1px solid var(--line);width:32px;height:32px;color:var(--accent);background:var(--surface-alt);place-items:center;font-size:1.2rem;display:grid}.roster-title strong{font-size:1rem;display:block}.roster-title small{margin-top:3px;font-size:.73rem;display:block}.roster-point-chip{background:var(--surface-alt);white-space:nowrap;font-variant-numeric:tabular-nums;padding:4px 8px;font-size:.85rem}.roster-loadout{color:var(--muted);margin:12px 0;font-size:.78rem;line-height:1.5}.roster-unit-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.unit-secondary{gap:8px;display:flex}.unit-secondary button{min-height:36px;font-size:.75rem}.remove-unit{color:var(--danger);background:0 0;border-color:#0000}.duplicate-unit{color:var(--accent);background:0 0;border-color:#0000}.unit-finding-count,.finding-badge{color:var(--warning);font-size:.75rem}.inline-confirm{flex-wrap:wrap;align-items:center;gap:8px;padding:8px 0;font-size:.8rem;display:flex}.roster-empty{text-align:left;align-items:center;gap:10px;padding:10px 12px;display:flex}.roster-empty h3{margin:0;font-size:.85rem}.roster-empty p{color:var(--muted);margin:0;font-size:.85rem}.linked-army-card{border:1px solid var(--line);background:var(--surface);margin-top:20px;padding:16px}.unit-browser{width:100%}.recruit-tools{grid-template-columns:minmax(260px,.8fr) minmax(0,1fr);align-items:end;gap:12px;margin-bottom:12px;display:grid}.catalogue-destination,.search{margin:0}.role-filter{flex-wrap:wrap;gap:6px;margin-bottom:24px;display:flex}.role-filter button{min-height:36px;font-size:.78rem}.role-filter button[aria-pressed=true]{color:var(--action-ink);background:var(--accent);border-color:var(--accent)}.added-receipt{top:var(--workspace-sticky-height,68px);z-index:2;border:1px solid var(--line-strong);border-left:4px solid var(--brass);background:var(--accent-soft);justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;padding:10px 12px;font-size:.85rem;display:flex;position:sticky}.unit-list{gap:20px;display:grid}.unit-group{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:10px;display:grid}.unit-group-heading{background:var(--structural);color:var(--ink);grid-column:1/-1;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;display:flex}.unit-group-heading h3{margin:0;font-size:.88rem}.unit-group-heading>span{color:var(--muted);font-size:.75rem}.unit-row{border:1px solid var(--line);background:var(--surface);border-radius:5px;grid-template-columns:28px minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:14px;display:grid}.unit-inspect{text-align:left;background:0 0;border:0;min-width:0;padding:0}.unit-inspect strong,.unit-inspect small{display:block}.unit-inspect strong{letter-spacing:normal;font-size:1rem;font-weight:600;line-height:1.4}.unit-inspect small{margin-top:4px;font-size:.75rem;font-weight:400;line-height:1.45}.unit-cost{white-space:nowrap;font-variant-numeric:tabular-nums;justify-items:end;font-size:.9rem;display:grid}.unit-cost small{font-size:.67rem}.add-icon{min-width:52px;color:var(--action-ink);background:var(--accent);border-color:var(--accent)}.row-configure{border-top:1px solid var(--line);grid-column:1/-1;justify-content:space-between;align-items:center;gap:10px;padding-top:10px;font-size:.75rem;display:flex}.row-configure button{min-height:34px;color:var(--accent);border-color:var(--accent)}.catalogue-inspection{border:1px solid var(--line);background:var(--surface);padding:18px}.catalogue-inspection h3{margin:16px 0 8px;font:600 1.7rem ui-sans-serif,system-ui,sans-serif}.editor-heading{justify-content:space-between;align-items:start;gap:12px;margin-bottom:16px;display:flex}.editor-heading>div{min-width:0}.editor-heading span{color:var(--muted);font-size:.75rem}.editor-heading h2{margin:4px 0;font-size:1.9rem;line-height:1.2}.editor-heading p{color:var(--muted);margin:0;font-size:.8rem}.build-unit-choices{gap:8px;padding:16px 24px;display:grid;overflow-y:auto}.build-unit-choices button{text-align:left}.build-unit-choices small{margin-top:4px;display:block}.build-unit-choices button[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft)}.unit-heading-actions{flex-wrap:wrap;gap:8px;display:flex}.catalogue-role-glyph{background:var(--surface-alt);width:28px;height:28px;color:var(--accent);place-items:center;display:grid}.build-unit-switcher{align-items:end;gap:10px;margin-bottom:14px;display:flex}.build-unit-switcher label{flex:1;min-width:0}.required-choice-jump{min-height:36px;color:var(--accent);border-color:var(--accent);margin-top:6px;padding:5px 10px;font-size:.8rem}.unit-issue-slot{min-height:60px;margin-bottom:14px}.unit-issues{border-left:3px solid var(--warning);margin:0;padding:8px 10px;font-size:.8rem}.unit-issue-preview{margin-top:4px;font-size:.75rem;display:block}.unit-check-status{color:var(--muted);border:1px solid var(--line);background:var(--surface);margin:0;padding:12px;font-size:.8rem}.editor-loading,.editor-save-warning{border-left:3px solid var(--warning);background:var(--surface);padding:14px;font-size:.85rem}.editor-save-warning{border-color:var(--danger)}.unit-sheet-tabs,.unit-reference-tabs{border-bottom:1px solid var(--line-strong);gap:4px;margin-bottom:16px;display:flex}.unit-sheet-tabs button,.unit-reference-tabs button{background:0 0;border:0;border-bottom:3px solid #0000;border-radius:0}.unit-sheet-tabs button[aria-pressed=true],.unit-reference-tabs button[aria-pressed=true]{border-color:var(--brass);color:var(--accent);background:var(--surface)}.configuration-grid,.selection-graph{gap:16px;min-width:0;display:grid}.configuration-grid>label{border:1px solid var(--line);background:var(--surface);border-radius:5px;grid-template-columns:minmax(0,1fr) 116px;align-items:center;padding:14px}.configuration-group,.selection-group{border:1px solid var(--line-strong);background:var(--surface);border-radius:5px;min-width:0;margin:0;padding:0 14px 14px}.configuration-group>legend,.selection-group>legend{background:var(--structural);width:calc(100% + 28px);min-height:44px;color:var(--ink);border-radius:4px 4px 0 0;justify-content:space-between;align-items:center;gap:12px;margin-inline:-14px;padding:10px 14px;font-size:.86rem;font-weight:650;display:flex}.configuration-group>legend small,.selection-group>legend small{color:var(--muted);font-size:.7rem}.configuration-group>div,.selection-group>div{min-width:0}.selection-group .selection-group{border:0;border-top:1px solid var(--line);border-radius:0;margin:10px 0 0;padding:0}.selection-group .selection-group>legend{width:100%;color:var(--ink);background:0 0;margin:0;padding:10px 0;font-size:.83rem}.selection-group .selection-group>legend small{color:var(--muted)}.choice-repair{color:var(--danger);flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:8px;font-size:.74rem;display:flex}.choice-repair button{min-height:32px;padding:3px 8px;font-size:.72rem}.selection-choice-wrap{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) 40px;align-items:center;gap:8px;padding:6px 0;display:grid}.selection-choice{text-align:left;background:0 0;border:0;align-items:center;gap:10px;width:100%;min-height:44px;padding:8px 0;display:flex}.selection-choice>span:last-child{min-width:0;display:grid}.selection-choice strong{font-size:.83rem}.choice-indicator{border:1px solid var(--line-strong);border-radius:3px;flex:0 0 20px;place-items:center;width:20px;height:20px;display:grid}.selection-choice[aria-pressed=true] .choice-indicator{background:var(--accent);color:var(--action-ink);border-color:var(--accent)}.selection-node{color:var(--ink);grid-template-columns:minmax(0,1fr) 116px;align-items:center;gap:4px 10px;font-size:.84rem;display:grid}.selection-node>input{text-align:right;grid-area:1/2/span 2;min-width:0;min-height:44px;padding-right:10px}.selection-node small{grid-column:1;font-size:.72rem;font-weight:400}.view-rules{background:0 0;border:0;width:40px;min-height:44px;padding:4px;font-size:0}.view-rules:after{content:"ⓘ";color:var(--accent);font-size:1.15rem}.additional-unit-options{background:0 0;border:0;margin:12px 0;padding:0;font-size:.82rem}.additional-unit-options summary{color:var(--accent);padding:8px 0}.structure-badge{border:1px solid var(--brass);color:var(--warning);margin:4px 0;padding:2px 6px;font-size:.68rem;display:inline-block}.unit-editor[data-prime=true] .editor-heading{border-bottom:2px solid var(--brass);padding-bottom:10px}.play-grid{grid-template-columns:248px minmax(0,1fr);width:100%;display:grid}.play-nav{min-width:0;top:var(--appbar-height,68px);max-height:calc(100dvh - var(--appbar-height,68px));padding:24px 16px;position:sticky;overflow-y:auto}.play-nav h2{font:700 1rem ui-sans-serif,system-ui,sans-serif}.play-unit-navigation{gap:10px;display:grid}.play-unit-navigation ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.play-unit-navigation button{text-align:left;width:100%}.play-unit-navigation button[aria-pressed=true]{border-color:var(--accent);border-left:3px solid var(--brass);background:var(--surface)}.play-unit-navigation small{margin-top:4px;display:block}.reference{min-width:0;padding:24px}.reference>.mode{color:var(--muted);font-size:.7rem}.reference>h2{margin:4px 0 8px;font-size:1.9rem}.reference>p{color:var(--muted);font-size:.8rem}.play-context-content{padding:16px 24px;overflow-y:auto}.current-unit-switcher{display:none}.play-filters{font-size:.8rem}.play-filters label{margin-bottom:8px}.play-nav .linked-lists-panel{background:0 0;width:100%;max-height:none;padding:0}.setup-progress{border-bottom:1px solid var(--line);color:var(--muted);gap:20px;margin:0;padding:14px 24px;font-size:.8rem;list-style:none;display:flex}.setup-progress li[aria-current]{color:var(--accent);font-weight:700}.faction-choices{grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr));gap:10px;min-height:0;padding:8px 24px 24px;display:grid;overflow-y:auto}.faction-choices button{text-align:left;min-height:64px}.faction-choices button[aria-pressed=true]{border:2px solid var(--accent);background:var(--accent-soft)}.game-choices button small{margin-top:6px;font-weight:400;display:block}.count-badge{color:var(--muted);font-size:.8rem}.empty-state{color:var(--muted);font-size:.85rem}.guidance{border:1px solid var(--brass);background:var(--surface-alt);margin-top:16px;padding:10px 14px;font-size:.8rem}.guidance p{margin:4px 0}.budget-list{padding:0;list-style:none}.budget{justify-content:space-between;gap:12px;padding:5px 0;font-size:.8rem;display:flex}.budget.over{color:var(--danger)}.build-roster-navigation h2{margin-bottom:20px;font:700 1rem ui-sans-serif,system-ui,sans-serif}.build-roster-navigation h3{color:var(--muted);margin:16px 0 8px;font-size:.75rem}.build-roster-navigation button{text-align:left;background:0 0;border-color:#0000;width:100%;margin-bottom:6px}.build-roster-navigation button[aria-pressed=true]{border:1px solid var(--line-strong);border-left:3px solid var(--brass);background:var(--surface)}.build-roster-navigation small{margin-top:4px;display:block}.app-topbar{border-bottom:1px solid var(--line)}.app-shell>footer{color:var(--muted);border-top:1px solid var(--line);padding:12px 24px;font-size:.75rem}.brand{letter-spacing:normal}.appbar-points strong{color:var(--brass)}.detachment-rail,.play-nav{background:var(--surface);border-right:1px solid var(--line)}.detachment-panel{container-type:inline-size}.detachment-panel-heading{background:var(--command);border-bottom:1px solid var(--line)}.detachment-panel-heading button{color:var(--brass);border-color:var(--brass)}.detachment-panel-body{padding:12px 0 0}.detachment-details{margin-inline:16px}.roster-sections{gap:12px}.roster-role-heading{border-block:1px solid var(--line);background:var(--structural);margin-bottom:0}.role-units{gap:0}.roster-unit{border:0;border-bottom:1px solid var(--line);background:var(--surface);border-radius:0;padding:14px 16px}.roster-unit:last-child{border-bottom:0}.roster-unit[data-prime=true]{border-top:0;border-left:3px solid var(--brass);background:var(--surface-alt);padding-left:13px}.roster-title{grid-template-columns:32px minmax(0,1fr) 88px}.roster-point-chip{text-align:right;color:var(--ink);background:0 0;padding:2px 0}.roster-loadout{margin:8px 0 10px 42px}.roster-unit-actions{margin-left:42px}.roster-unit-actions .primary-action{color:var(--brass);border-color:var(--brass);background:0 0}.roster-unit-actions .primary-action:hover{background:var(--accent);color:var(--action-ink)}.roster-unit-actions .duplicate-unit,.roster-unit-actions .remove-unit:not(:hover){color:var(--muted)}.detachment-panel-actions{background:var(--surface)}.linked-edit-context{color:var(--ink);border-left:3px solid var(--brass)}@container (min-width:740px){.roster-unit{grid-template-columns:minmax(0,1fr) 268px;gap:0 24px;display:grid}.roster-title{grid-area:1/1}.roster-loadout{grid-area:2/1;margin-bottom:0}.roster-unit-actions{grid-area:1/2/span 2;place-content:center end;gap:4px;margin:0}.roster-unit-actions .unit-secondary{gap:0}.inline-confirm{grid-column:1/-1}}@media (max-width:767px){.app-shell>footer{padding-inline:12px}.detachment-panel-body{padding:10px 0 0}.roster-unit{padding:12px}.roster-unit[data-prime=true]{padding-left:9px}.roster-title{grid-template-columns:28px minmax(0,1fr) 66px}.roster-loadout,.roster-unit-actions{margin-left:36px}.roster-unit-actions{gap:6px}}.detachment-panel{border-top-color:var(--edition-line);border-radius:3px}.detachment-panel-heading{box-shadow:inset 0 1px #ffffff0d}.unit-group{align-items:stretch}.unit-row{border-radius:3px;align-content:start}.unit-row .row-configure{align-self:end}.unit-inspect{font-weight:400}.unit-group-heading{border-top:1px solid var(--line-strong)}}@layer components{.selection-reference{border:1px solid var(--line-strong);border-left:3px solid var(--brass);background:var(--surface-alt);min-width:0;margin-bottom:20px;padding:16px}.selection-reference-heading{justify-content:space-between;align-items:start;gap:12px;display:flex}.selection-reference-heading>div{min-width:0}.selection-reference-heading span{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:.7rem}.selection-reference-heading h3{margin:4px 0 12px;font:1.4rem ui-sans-serif,system-ui,sans-serif}.selection-reference-part h4{margin-bottom:6px}.rule-copy{margin-top:12px}.rule-copy p{white-space:pre-line;margin:4px 0 0;font-size:.9rem}.choice-browser-launch>p{color:var(--muted);margin-bottom:8px;font-size:.85rem}.sheet-backdrop,.surface-backdrop{z-index:var(--z-overlay);background:#03080bc2;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.choice-browser-sheet{border:1px solid var(--line-strong);background:var(--surface);border-radius:6px;flex-direction:column;width:min(1120px,100%);min-height:0;max-height:calc(100dvh - 48px);display:flex;overflow:hidden;box-shadow:0 24px 80px #00000040;container-type:inline-size}.choice-browser-heading,.dialog-heading{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:start;gap:12px;padding:20px 24px;display:flex}.choice-browser-heading>div,.dialog-heading>div{flex:200px;min-width:0}.choice-browser-heading span,.dialog-heading span{color:var(--muted);font-size:.75rem}.choice-browser-heading h2,.dialog-heading h2{margin:4px 0 0;font-size:1.8rem;line-height:1.2}.choice-browser-heading>button{min-width:44px}.choice-browser-tools{border-bottom:1px solid var(--line);gap:10px;padding:16px 24px;display:grid}.choice-browser-categories{flex-wrap:wrap;gap:6px;display:flex}.choice-browser-categories button{font-size:.8rem}.choice-browser-categories button[aria-pressed=true]{color:var(--action-ink);border-color:var(--accent);background:var(--accent)}.choice-browser-totals{flex-wrap:wrap;justify-content:space-between;gap:8px;font-size:.85rem;display:flex}.choice-browser-selected>div{flex-wrap:wrap;gap:6px;display:flex}.choice-browser-selected>strong{margin-bottom:6px;font-size:.8rem;display:block}.choice-browser-selected button{font-size:.8rem}.choice-browser-content{flex:1;grid-template-columns:minmax(0,1fr);min-height:0;display:grid;overflow-y:auto}.choice-browser-content.inspecting{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}.choice-browser-list{align-content:start;gap:8px;min-width:0;padding:18px 24px;display:grid}.choice-browser-content>.selection-reference{grid-column:auto;margin:18px 24px 18px 0}.choice-browser-row{grid-template-columns:minmax(0,1fr) 82px;align-items:center;gap:8px;min-width:0;display:grid}.choice-browser-select{text-align:left;align-items:center;gap:10px;min-width:0;display:flex}.choice-browser-select>span:last-child{gap:3px;min-width:0;display:grid}.choice-browser-select strong,.choice-browser-quantity strong{font-size:.95rem}.choice-browser-select small{color:var(--muted);font-size:.8rem;font-weight:400}.choice-browser-select[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft)}.choice-browser-quantity{border:1px solid var(--line);grid-template-columns:minmax(0,1fr) 76px;align-items:center;gap:8px;padding:8px;display:grid}.choice-browser-quantity>span{gap:4px;display:grid}.choice-browser-warning{border-top:1px solid var(--line);background:var(--surface-alt);color:var(--warning);margin:0;padding:10px 24px;font-size:.85rem}@container not (min-width:720px){.choice-browser-content.inspecting{grid-template-columns:minmax(0,1fr)}.choice-browser-content.inspecting .choice-browser-list{display:none}.choice-browser-content>.selection-reference{margin:16px}.choice-browser-heading,.choice-browser-tools,.choice-browser-list{padding-inline:16px}}.workspace-dialog{border:1px solid var(--line-strong);background:var(--surface);border-radius:6px;flex-direction:column;width:min(880px,100%);max-height:calc(100dvh - 48px);display:flex;overflow:hidden;box-shadow:0 24px 80px #00000040}.workspace-dialog>label,.workspace-dialog>p,.workspace-dialog>fieldset{margin:16px 24px}.setup-dialog .game-choices,.action-list,.settings-content{padding:20px 24px;overflow-y:auto}.game-choices{grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr));gap:10px;display:grid}.game-choices button{text-align:left;padding:14px}.game-choices button[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft)}.actions-dialog{width:min(640px,100%)}.action-list{gap:20px;display:grid}.action-group{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.action-group h3{color:var(--muted);grid-column:1/-1;margin:0 0 2px;font-size:.85rem;font-weight:600}.action-group>button,.action-group>label{text-align:left;min-height:44px}.action-group>label{border:1px solid var(--line-strong);color:var(--ink);border-radius:4px;align-items:center;padding:8px 12px;display:flex;position:relative}.action-account{border-bottom:1px solid var(--line);padding-bottom:16px}.action-account:not(:has(.account-controls)){display:none}.action-account h3{color:var(--muted);margin-bottom:8px;font-size:.85rem}.action-account .account-controls{border:0;padding:0}.action-group .file-action:focus-within,.welcome-actions .file-action:focus-within{outline:3px solid var(--brass);outline-offset:3px}.unit-completion{border-top:1px solid var(--line-strong);justify-content:flex-end;align-items:center;gap:12px;margin-top:20px;padding-top:16px;display:flex}.unit-completion>button{min-height:44px}.review-actions{border-top:1px solid var(--line-strong);background:var(--command);flex-wrap:wrap;align-items:center;gap:10px;padding:16px 24px;display:flex}@media (max-width:420px){.action-group{grid-template-columns:minmax(0,1fr)}}@media (max-width:767px){.welcome-panel{margin:24px 12px;padding:20px}}.file-action>input[type=file]{opacity:0;cursor:pointer;width:100%;position:absolute;inset:0}.dialog-actions{border-top:1px solid var(--line);background:var(--surface);flex-wrap:wrap;justify-content:end;gap:10px;padding:16px 24px;display:flex}.dialog-note,.welcome-note{color:var(--muted);font-size:.85rem}.settings-view,.review-view{background:var(--surface);border:1px solid var(--line);max-width:1100px;margin:28px auto 60px}.settings-view .dialog-actions{position:sticky;bottom:0}.settings-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-block:18px;display:grid}.settings-comp{border:1px solid var(--line);margin-block:20px;padding:16px}.settings-comp label,.settings-check{align-items:center;gap:10px;min-height:44px;display:flex}.settings-stale{border-left:3px solid var(--warning);background:var(--surface-alt);margin-bottom:24px;padding:16px}.review-view{padding:24px}.review-view .sheet-heading{justify-content:space-between;align-items:start;gap:16px;display:flex}.review-view .sheet-heading h2{margin:0;font-size:2rem}.review-view .sheet-heading button{border-radius:4px;width:auto;height:auto;padding:10px 12px;font-size:.85rem}.review-group{border-top:1px solid var(--line);padding-top:18px}.findings-all{gap:14px;padding:0;list-style:none;display:grid}.findings-all li{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;padding:14px 0;font-size:.9rem;display:grid}.findings-all b{color:var(--warning);display:block}.findings-all .hard b{color:var(--danger)}.review-advisories{border-top:3px double var(--line-strong);margin-top:28px;padding-top:24px}.workspace-error{border-bottom:1px solid var(--danger);color:var(--danger);background:var(--surface-alt);flex-wrap:wrap;align-items:center;gap:12px;padding:14px 24px;display:flex}.workspace-error p{flex:240px;margin:0;font-size:.9rem}.welcome-panel{border:1px solid var(--line-strong);border-top:2px solid var(--brass);background:var(--surface);max-width:720px;margin:clamp(24px,5vh,56px) auto;padding:24px}.welcome-panel h1{margin:0 0 12px;font-size:clamp(1.75rem,4vw,2.25rem);line-height:1.2}.welcome-panel>p{color:var(--muted);max-width:50ch}.welcome-actions{flex-wrap:wrap;gap:10px;margin-block:24px;display:flex}.welcome-actions label{border:1px solid var(--line-strong);border-radius:4px;align-items:center;min-height:44px;padding:8px 12px;display:flex;position:relative}.linked-lists-panel{background:var(--surface);border-radius:6px;width:min(680px,100%);max-height:calc(100dvh - 48px);padding:24px;overflow-y:auto}.linked-lists-panel h2{font-size:1.8rem}.linked-lists-panel article{border-top:1px solid var(--line);padding-block:20px}.linked-edit-context{color:var(--accent-dark);background:var(--accent-soft);padding:14px 28px}@media (max-width:1023px){.settings-view,.review-view{margin:18px 16px 90px}.settings-view .dialog-actions{bottom:calc(62px + env(safe-area-inset-bottom))}}@media (max-width:620px){.sheet-backdrop,.surface-backdrop{padding:12px}.workspace-dialog,.choice-browser-sheet{max-height:calc(100dvh - 24px)}.settings-pair{grid-template-columns:minmax(0,1fr)}.settings-content{padding:18px 16px}.review-view{padding:18px}.findings-all li{grid-template-columns:minmax(0,1fr)}}@media (max-height:420px){.choice-browser-sheet{overflow-y:auto}.choice-browser-content{flex:none;overflow:visible}}.detachment-sheet{border:1px solid var(--line-strong);background:var(--surface);border-radius:6px;flex-direction:column;width:min(720px,100%);max-height:min(760px,100vh - 48px);padding:20px;display:flex;box-shadow:0 24px 80px #00000038}.detachment-sheet>input{padding:11px 12px}.detachment-choices{gap:20px;min-height:0;margin-top:16px;padding-right:4px;display:grid;overflow-y:auto}.detachment-choices section{gap:7px;display:grid}.detachment-choices h3{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:.68rem}.detachment-choices section>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.detachment-choices section button{border:1px solid var(--line);color:var(--ink);background:var(--surface-alt);text-align:left;border-radius:5px;justify-content:space-between;align-items:center;gap:12px;padding:11px 12px;display:flex}.detachment-choices section button:hover{border-color:var(--line-strong);background:var(--accent-soft)}.detachment-choices section button>span:first-child{gap:3px;display:grid}.detachment-choices section button strong{font-size:.77rem}.detachment-choices section button>span:last-child{color:var(--faint);font-size:1rem}.saved-list-actions{gap:7px;display:flex}.saved-list-actions>button,.import-field{border:1px dashed var(--line);color:var(--ink);background:var(--surface-alt);text-align:center;border-radius:5px;flex:1;padding:11px 12px;font-size:.77rem;font-weight:650}.saved-list-actions>button:hover,.import-field:hover{border-color:var(--line-strong);background:var(--accent-soft)}.import-field{cursor:pointer}.import-field input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.saved-list-row{align-items:center;gap:7px;display:flex}.saved-list-row>button:first-child{border:1px solid var(--line);color:var(--ink);background:var(--surface-alt);text-align:left;border-radius:5px;flex:1;justify-content:space-between;align-items:center;gap:12px;padding:11px 12px;display:flex}.saved-list-row>button:first-child:hover{border-color:var(--line-strong);background:var(--accent-soft)}.saved-list-row>button:first-child>span:first-child{gap:3px;display:grid}.saved-list-row strong{font-size:.77rem}.sheet-note{color:var(--faint);margin:14px 0 0;font-size:.68rem}.rules-provenance{background:var(--surface);margin:10px 20px 0}.rules-provenance summary{overflow-wrap:anywhere}.rules-provenance dl{gap:7px;margin:12px 0;display:grid}.rules-provenance dl div{grid-template-columns:110px minmax(0,1fr);gap:10px;display:grid}.rules-provenance dt{color:var(--muted);font-size:.68rem;font-weight:650}.rules-provenance dd{overflow-wrap:anywhere;min-width:0;margin:0;font-size:.76rem}.rules-provenance p{color:var(--muted);margin:7px 0 0;font-size:.74rem}.comp-packages{border:1px solid var(--line);background:var(--surface);border-radius:6px;margin:10px 20px 0;padding:14px}.comp-packages h2{margin:0;font-size:.9rem}.comp-packages>p{color:var(--muted);margin:4px 0 10px;font-size:.76rem}.comp-package-options{gap:7px;display:grid}.comp-package-options label{align-items:center;gap:8px;display:flex}.comp-packages ol{gap:6px;padding-left:24px;display:grid}.comp-packages li{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:6px;display:grid}.lists-action{color:var(--ink);background:var(--surface-alt);border:0;border-radius:6px;padding:8px 13px;font-size:.8rem;font-weight:650}.print-sheet{display:none}@media print{.app-shell>:not(.print-sheet){display:none!important}.print-sheet{color:#000;padding:0;font-size:10pt;display:block}.print-sheet header{border-bottom:1pt solid #000;margin-bottom:14pt;padding-bottom:6pt}.print-sheet h1{margin:0;font-size:18pt}.print-sheet header p{margin:3pt 0 0;font-size:9pt}.print-sheet h2{border-bottom:.5pt solid #999;margin:12pt 0 4pt;font-size:11pt}.print-sheet ul{margin:0;padding:0;list-style:none}.print-sheet li{break-inside:avoid;margin-bottom:5pt}.print-sheet li>div{justify-content:space-between;gap:12pt;display:flex}.print-sheet li p{color:#333;margin:1pt 0 0;padding-left:10pt;font-size:8.5pt}.print-sheet section{break-inside:avoid-page}.print-sheet footer{color:#444;border-top:.5pt solid #999;margin-top:14pt;padding-top:4pt;font-size:7.5pt}}.army-configuration{gap:1rem;margin:1rem 0;display:grid}.army-configuration fieldset{border:1px solid;min-width:0;padding:1rem}.army-configuration label{gap:.35rem;display:grid}.army-configuration select{width:100%;max-width:36rem}.army-configuration small{margin:.4rem 0;display:block}.configuration-quantities{grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:.75rem;margin:1rem 0;display:grid}.configuration-quantities input{width:6rem}.configuration-rule-text{white-space:pre-line}.account-controls{border-bottom:1px solid var(--line);padding:.65rem 1rem}.account-status,.account-claim{flex-wrap:wrap;align-items:center;gap:.7rem;display:flex}.account-controls form{flex-wrap:wrap;align-items:end;gap:.7rem;margin-top:.7rem;display:flex}.account-controls label{gap:.2rem;min-width:min(100%,12rem);display:grid}.account-controls input{max-width:100%}.account-claim p{flex-basis:100%;margin:.5rem 0 0}.topbar-account .account-controls{border:0;flex-wrap:wrap;align-items:center;gap:8px 16px;padding:0;display:flex}.topbar-account .account-controls>p{margin:0}.topbar-account .account-claim{flex:28rem;min-width:0}.topbar-account .account-claim p{flex:20rem;margin:0}.review-button{border:1px solid var(--line-strong);min-height:44px;color:var(--ink);border-color:var(--brass);background:var(--surface-alt);border-radius:5px;padding:9px 15px;font-size:.9rem;font-weight:650}.surface-close{border:1px solid var(--line-strong);background:var(--surface);border-radius:6px;align-self:start;padding:8px 12px}@media (prefers-reduced-motion:reduce){:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.auth-dialog{border:1px solid var(--line);width:min(480px,100vw - 32px);max-height:min(90dvh,760px);color:var(--ink);background:var(--surface);border-radius:6px;margin:auto;padding:24px;position:fixed;inset:0;box-shadow:0 24px 80px #00000038}.auth-dialog::backdrop{background:#03080bc2}.auth-dialog form{gap:12px;margin:0;display:grid}.auth-dialog h2{margin:0 88px 8px 0;font-size:1.4rem}.auth-dialog label{font-size:.9rem}.auth-dialog input,.auth-dialog button{min-height:44px;font-size:1rem}.auth-dialog button{border:1px solid var(--line-strong);background:var(--surface);border-radius:6px;padding:9px 12px}.auth-dialog button[type=submit]{color:var(--action-ink);background:var(--accent);border-color:var(--accent)}.auth-dialog .auth-close{position:absolute;top:20px;right:20px}@media (max-width:620px){.auth-dialog{border-radius:0;width:100%;min-height:100dvh;max-height:100dvh}}.rules-update{border:1px solid var(--line-strong);background:var(--accent-soft);border-radius:5px;flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:10px;padding:9px 12px;font-size:.82rem;display:flex}.rules-update-dialog .dialog-content{padding:18px 24px;overflow-y:auto}.rules-update-dialog .dialog-content>p:first-child{margin-top:0}.rules-update-dialog .dialog-content h3{margin:18px 0 6px;font-size:1rem}.rules-update-dialog .dialog-content li{overflow-wrap:anywhere;margin:4px 0}.rules-update-comparison{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.rules-update-comparison>div{border:1px solid var(--line);border-radius:5px;padding:12px}.rules-update-comparison p{margin:5px 0 0}@media (max-width:600px){.rules-update-comparison{grid-template-columns:1fr}}.dialog-heading,.choice-browser-heading{background:var(--command)}.auth-dialog,.detachment-sheet{background:var(--surface)}.rules-update{border-color:var(--line-strong)}.surface-close{background:var(--surface)}.review-button{background:var(--surface-alt);border-color:var(--brass);color:var(--brass)}.catalogue-empty{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.catalogue-empty p{margin:0}}@layer responsive{@media (min-width:1200px){.build-unit-switcher{display:none}.app-shell button,.app-shell select{min-height:36px}.app-shell input{min-height:40px}.selection-node>input,.view-rules,.selection-choice{min-height:44px}}@media (max-height:600px){.app-topbar,.task-navigation,.settings-view .dialog-actions{position:static}.added-receipt{position:static;top:auto}}@media (max-width:1199px){.unit-group{grid-template-columns:repeat(2,minmax(0,1fr))}.builder-layout,.play-grid{grid-template-columns:minmax(0,1fr)}.detachment-rail{display:none}.mobile-army-actions{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.army-canvas,.unit-browser,.unit-editor,.reference{padding:16px}.play-nav{display:none}.current-unit-switcher{top:var(--appbar-height,68px);z-index:2;background:var(--canvas);flex-wrap:wrap;gap:6px;margin-bottom:14px;padding:6px 0;display:flex;position:sticky}.current-unit-switcher .play-context-action{min-height:44px;font-size:.72rem}.current-unit-switcher button:nth-child(2){text-align:left;flex:1;min-width:0}.app-topbar{gap:10px;padding-inline:16px}}@media (max-width:767px){.editor-heading{flex-direction:column}.unit-heading-actions{order:-1;justify-content:space-between;width:100%}.unit-heading-actions button{min-height:36px;padding:5px 10px;font-size:.74rem}.editor-heading>div{width:100%}.build-unit-switcher{margin-bottom:8px}.build-unit-switcher button{min-height:36px}.unit-issue-slot{min-height:45px;margin-bottom:10px}.unit-issues{padding:6px 10px}.unit-issues summary{justify-content:space-between;align-items:center;min-height:28px;display:flex}.unit-issues:not([open]) .unit-issue-preview{display:none}.unit-issues:not([open]) summary:after{content:"Review ▾";color:var(--accent);font-size:.72rem}.detachment-panel[data-empty=true] .detachment-panel-body{padding:4px 10px}.detachment-panel[data-empty=true] .detachment-panel-heading{padding:8px 10px}.detachment-panel[data-empty=true] .detachment-panel-heading>div{flex-basis:auto}.detachment-panel[data-empty=true] .detachment-panel-heading>button{min-height:30px;padding:3px 8px;font-size:.7rem}.detachment-panel[data-empty=true] .detachment-total{font-size:.68rem}.detachment-panel[data-empty=true] .detachment-panel-heading h3{font-size:.82rem}.detachment-panel[data-empty=true] .roster-role-heading{min-height:36px;margin-bottom:4px;padding:4px 8px}.detachment-panel[data-empty=true] .detachment-details{margin-bottom:4px}.detachment-panel[data-empty=true] .detachment-panel-actions{padding:4px 10px}.detachment-panel[data-empty=true] .army-detachments{gap:8px}.reference>.mode{align-items:center;gap:8px;display:flex}.reference-prime-badge{display:none}.current-unit-switcher .play-context-action{flex-basis:auto;min-height:44px;padding:5px 8px;font-size:.7rem}.unit-group{grid-template-columns:minmax(0,1fr)}.recruit-tools{grid-template-columns:minmax(0,1fr);gap:8px;margin-bottom:8px}.catalogue-destination{font-size:.72rem}.browser-heading{margin-bottom:8px}.unit-row{grid-template-columns:24px minmax(0,1fr) auto auto}.catalogue-role-glyph{width:24px;height:24px}.topbar-actions>.lists-action{display:none}.setup-dialog{border-radius:0;width:100%;height:100dvh;max-height:100dvh}.surface-backdrop:has(.setup-dialog){padding:0}.setup-dialog .game-choices{border:0}.app-topbar{grid-template-columns:minmax(0,1fr) auto;gap:6px 10px;padding:8px 12px}.appbar-army{grid-area:1/1/span 2;grid-template-columns:minmax(0,1fr) auto;gap:2px 6px}.appbar-army h1{-webkit-line-clamp:2;-webkit-box-orient:vertical;grid-column:1/-1;font-size:1.08rem;display:-webkit-box;overflow:hidden}.appbar-points{grid-area:2/1;justify-self:start;font-size:.73rem}.appbar-points strong{font-size:1rem}.command-save{grid-area:2/2;font-size:.65rem}.command-context{display:none}.appbar-review{text-align:left;grid-area:3/1/auto/-1}.mode-switch{grid-area:2/2}.mode-switch button{min-width:54px;min-height:34px;font-size:.78rem}.topbar-actions{grid-area:1/2;justify-content:end;gap:6px}.topbar-account{display:none}.topbar-actions>button,.topbar-actions .account-status>button{min-height:30px;padding:3px 8px;font-size:.7rem}.account-status{gap:4px}.workspace-summary{padding:0 12px}.army-context summary{font-size:.68rem}.task-navigation{gap:0;padding:0 8px}.task-navigation button{flex:1;min-width:0;padding:8px 6px;font-size:.8rem}.app-shell[data-pane=unit] .task-navigation,.app-shell[data-pane=unit] .workspace-summary,.app-shell[data-mode=play] .workspace-summary{display:none}.army-canvas,.unit-browser,.unit-editor,.reference{padding:14px 12px}.canvas-heading h2,.browser-heading h2{font-size:1.45rem}.canvas-heading>button{font-size:.75rem}.army-detachments{gap:16px}.detachment-panel-heading{gap:8px;padding:12px}.detachment-panel-heading>div{flex-basis:70%}.detachment-panel-heading h3{font-size:.92rem}.detachment-panel-body{padding:10px}.detachment-total{font-size:.73rem}.roster-unit{padding:12px}.roster-title{grid-template-columns:28px minmax(0,1fr) auto;gap:8px}.role-glyph{width:28px;height:28px}.roster-title strong{font-size:.9rem}.roster-point-chip{padding:3px 5px;font-size:.73rem}.role-filter{flex-wrap:nowrap;margin-bottom:16px;padding-bottom:6px;overflow-x:auto}.role-filter button{flex:none;min-height:44px}.unit-row{gap:8px;padding:12px}.editor-heading h2,.reference>h2{font-size:1.55rem}.unit-issue-preview{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.selection-node{grid-template-columns:minmax(0,1fr) 96px;gap:4px 8px}.configuration-group,.selection-group{padding-inline:12px}.configuration-group>legend,.selection-group>legend{width:calc(100% + 24px);margin-inline:-12px;padding-inline:12px}.build-unit-switcher button{font-size:.72rem}.added-receipt{font-size:.75rem}.added-receipt button{min-height:44px;font-size:.72rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}}@media print{:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#000;--muted:#333;--canvas:#fff;--surface:#fff;--surface-alt:#fff;--line:#999;--line-strong:#777;--accent:#000;--brass:#000}html,body{background:#fff}.legal-footer{display:none}}.army-resources summary{cursor:pointer;padding:.5rem 0}.resource-scope{min-width:0}.resource-scope h3{font-size:.95rem}.resource-scope dl>div{border-bottom:1px solid var(--border,#39434a);grid-template-columns:minmax(8rem,1fr) minmax(0,3fr);gap:.5rem;padding:.5rem 0;display:grid}.resource-scope dd{min-width:0;margin:0}.resource-scope small,.resource-limit-label{display:block}.resource-scope,.source-rule-text{overflow-wrap:anywhere}.source-rule-text{white-space:pre-wrap}.source-keyword{font-variant-caps:small-caps}.resource-scope [data-attention=true] dt{font-weight:700}@media (max-width:600px){.resource-scope dl>div{grid-template-columns:minmax(0,1fr)}}.app-shell[data-pane=unit] .workspace-summary.army-resources,.app-shell[data-mode=play] .workspace-summary.army-resources{display:block}
@layer components{.reference .reference-prime-badge{display:none}.configured-unit-reference{min-width:0}.configured-unit-stats{gap:14px;display:grid}.profile-table{border:1px solid var(--line-strong);background:var(--surface);border-radius:5px;min-width:0;padding:14px}.profile-table h5{margin:0 0 12px;font-size:.92rem}.stat-grid{font-variant-numeric:tabular-nums;grid-template-columns:repeat(auto-fit,minmax(48px,1fr));gap:5px;min-width:0;display:grid}.profile-prose{margin:12px 0 0;font-size:.82rem}.profile-prose>div{margin-top:10px}.profile-prose dt{margin-bottom:4px;font-weight:700}.profile-prose dd{white-space:pre-line;overflow-wrap:anywhere;margin:0}.weapon-card>.profile-prose{margin:0 12px 12px}.stat-cell[data-wide=true]{grid-column:span 2}.stat-cell{background:var(--surface-alt);border:1px solid var(--line);border-radius:3px;flex-direction:column;justify-content:start;align-items:center;min-width:0;padding:5px 3px;display:flex}.stat-cell>[role=rowheader],.stat-cell>span:first-child{color:var(--muted);white-space:nowrap;font-size:.66rem;font-weight:600}.stat-cell>[role=cell],.stat-cell>strong{padding-top:3px;font-size:1rem;font-weight:700}.profile-traits{color:var(--muted);margin:10px 0 0;font-size:.8rem}.reference-model-count{color:var(--muted);margin:8px 0;font-size:.78rem}.unit-reference-tabs{margin-top:20px}.weapon-section{margin-bottom:20px}.weapon-section>h4{color:var(--muted);margin:0 0 10px;font-size:.85rem}.weapon-cards{grid-template-columns:repeat(auto-fit,minmax(min(400px,100%),1fr));gap:12px;display:grid}.weapon-card{border:1px solid var(--line-strong);background:var(--surface);border-radius:5px;min-width:0;overflow:hidden}.weapon-card>header{background:var(--structural);color:var(--ink);justify-content:space-between;align-items:start;gap:12px;padding:10px 12px;display:flex}.weapon-card h5{margin:0;font-size:.88rem}.weapon-card>header>span{white-space:nowrap;color:var(--muted);font-size:.7rem}.weapon-stat-grid{gap:5px;padding:12px}.weapon-trait-cell{margin:0 0 12px;padding:0 12px;font-size:.8rem;line-height:1.6}.weapon-card>.profile-traits{margin:0 0 10px;padding:0 12px}.weapon-attack-stats{border-top:1px solid var(--line);margin:0 12px 12px;padding-top:10px}.weapon-attack-stats>small{margin-bottom:6px;font-size:.7rem;display:block}.weapon-attack-stats>.stat-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-width:260px}.equipment-reference-row{border:1px solid var(--line);background:var(--surface);flex-wrap:wrap;gap:6px 12px;margin-bottom:10px;padding:12px;font-size:.85rem;display:flex}.inline-rule-link{min-height:0;color:var(--accent);font:inherit;text-underline-offset:3px;background:0 0;border:0;border-radius:0;padding:0;text-decoration:underline;display:inline}.unit-rule-row{border:1px solid var(--line);background:var(--surface);margin-bottom:8px;padding:12px}.unit-rule-row small{margin-top:5px;font-size:.74rem;display:block}.reference-loadout{border-top:2px solid var(--line-strong);margin:20px 0;padding-top:12px}.rule-reference-content{max-height:65dvh;padding:16px 24px 24px;overflow-y:auto}.rule-reference-content nav{justify-content:space-between;gap:10px;font-size:.75rem;display:flex}.rule-reference-content h3{margin:16px 0 8px}.reference-provenance{color:var(--muted);margin-top:20px;font-size:.72rem}.rule-applies-to{color:var(--muted);font-size:.78rem}.reference-bullet{padding-left:20px}.unit-navigator-dialog>.play-unit-navigation{padding:16px 24px;overflow-y:auto}.stat-value{display:inline-block}.stat-change{text-underline-offset:3px;min-height:32px;font:inherit;white-space:nowrap;background:0 0;border:0;padding:2px 3px;font-weight:700;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.stat-change span{padding-left:2px;font-size:.75em}.stat-increase{color:#91d7aa}.stat-decrease{color:var(--danger)}.stat-changed{color:var(--ink)}.stat-explanation{border:1px solid var(--line-strong);background:var(--surface-alt);min-width:130px;max-width:240px;color:var(--ink);text-align:left;border-radius:4px;padding:8px;font-size:.75rem;font-weight:400;display:block}.stat-explanation>span,.stat-explanation small{margin-top:4px;display:block}.stat-detail-dialog{border:1px solid var(--line-strong);background:var(--surface);width:min(100%,540px);max-height:85dvh;color:var(--ink);border-radius:6px;margin:auto;padding:16px;position:fixed;inset:0;overflow-y:auto}.stat-detail-dialog::backdrop{background:#03080bc2}.stat-detail-dialog header{justify-content:space-between;align-items:center;gap:12px;display:flex}.stat-detail-dialog h3{margin:0}.stat-detail-dialog .stat-explanation{background:0 0;border:0;min-width:0;max-width:none;padding:12px 0;font-size:.875rem}.stat-detail-dialog .inline-rule-link{min-height:44px}.unit-editor[data-prime=true] .configured-unit-reference>.structure-badge{display:none}.unit-editor .editor-heading p .structure-badge{margin-left:8px}.workbench-reference{display:none}@media (min-width:1600px){.unit-workbench{grid-template-columns:minmax(540px,1fr) minmax(540px,1fr);align-items:start;gap:24px;display:grid}.unit-workbench>.unit-sheet-main{min-width:0}.workbench-reference{min-width:0;display:block}.workbench-reference>h3{margin:0 0 16px;font-size:1rem}.unit-workbench .unit-sheet-tabs,.unit-workbench .tabbed-datasheet{display:none}}@media (max-width:767px){.stat-grid{grid-template-columns:repeat(auto-fit,minmax(48px,1fr));gap:4px}.weapon-stat-grid{grid-template-columns:repeat(auto-fit,minmax(52px,1fr))}.stat-cell{min-height:52px}.stat-cell>[role=cell]{font-size:.92rem}.stat-change{min-width:36px;min-height:40px}.profile-table{padding:12px}.rule-reference-content{padding:14px 16px 20px}.weapon-card>header{padding:10px}.stat-detail-dialog{width:calc(100% - 24px)}}.profile-stat-groups{flex-wrap:wrap;align-items:stretch;gap:12px;min-width:0;display:flex}.physical-stat-grid{flex:360px;align-self:end}.mental-stat-group{border-inline:3px solid var(--brass);background:var(--surface-alt);flex:0 auto;min-width:0;max-width:100%;padding:0 8px}.mental-stat-label{color:var(--brass);letter-spacing:.045em;padding:3px 0 5px;font-size:.65rem;font-weight:650;display:block}.mental-stat-grid{grid-template-columns:repeat(4,minmax(48px,1fr))}.mental-stat-group[data-stat-count="1"] .mental-stat-grid{grid-template-columns:minmax(48px,1fr)}.mental-stat-group[data-stat-count="2"] .mental-stat-grid{grid-template-columns:repeat(2,minmax(48px,1fr))}.mental-stat-group[data-stat-count="3"] .mental-stat-grid{grid-template-columns:repeat(3,minmax(48px,1fr))}.mental-stat-grid .stat-cell{background:var(--surface)}.mental-stat-grid .stat-cell[data-wide=true]{grid-column:auto}.mental-stat-grid .stat-cell>[role=rowheader]{white-space:normal;text-align:center;overflow-wrap:anywhere}.profile-stat-groups .stat-cell{grid-template-rows:minmax(15px,1fr) 30px;place-items:center;min-height:57px;display:grid}.profile-stat-groups .stat-cell>[role=cell]{justify-content:center;align-items:center;min-height:30px;padding-top:0;line-height:1.45;display:flex}.profile-stat-groups .stat-value{justify-content:center;align-items:center;min-width:36px;height:30px;display:inline-flex;position:relative}.profile-stat-groups .stat-change{justify-content:center;align-items:center;gap:0;height:40px;min-height:40px;padding:0 2px;display:inline-flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.profile-table,.weapon-card{border-color:var(--line)}.weapon-card>header{border-bottom:1px solid var(--line)}@media (max-width:767px){.profile-stat-groups{gap:8px}.physical-stat-grid{flex-basis:100%}.mental-stat-group{flex:0 auto}}}
@layer workspace{.app-shell{--edition-wash:#263e45;--edition-line:#91b0bc}.app-shell[data-edition-palette=heresy]{--edition-wash:#432e2b;--edition-line:#ca9475}.app-shell[data-edition-palette=old-world]{--edition-wash:#1f3b36;--edition-line:#83b39e}.app-shell .app-topbar{box-shadow:inset 0 -3px 0 var(--edition-line)}.edition-identity{color:inherit}.edition-rail-art{pointer-events:none;z-index:-1;position:absolute;inset:0;overflow:hidden}.edition-rail-image{object-fit:cover;opacity:.2;width:100%;height:100%;position:absolute;inset:0}.edition-rail-art:after{content:"";background:linear-gradient(180deg, #18212659, var(--surface) 460px);position:absolute;inset:0}@media (min-width:1200px){.app-shell .edition-rail{isolation:isolate;background:linear-gradient(155deg, var(--edition-wash), var(--surface) 460px)}.edition-rail button{background-color:var(--surface)}.edition-rail button:hover{background-color:var(--accent-soft)}}@media (forced-colors:active){.app-shell .app-topbar{box-shadow:none}.app-shell .edition-rail{background:canvas}.edition-rail-art{display:none}}}@media print{.edition-rail-art{display:none}.app-shell .app-topbar{box-shadow:none}.app-shell .edition-rail{background:var(--surface)}}
