/* Shared game palette and controls. Layout-specific rules stay with each view. */
:root {color-scheme:dark;--bg:#12101b;--paper:#1f1b2b;--panel:#1f1b2b;--surface:#1f1b2b;--ink:#f5f0ff;--muted:#beb4d0;--line:#3f354e;--control:#7e7191;--accent:#c79af0;--tint:#31243f;--radius:5px;--game-gold:#f5b346;--game-green:#86efac;--game-red:#fca5a5;--game-blue:#bfdbfe;--game-inset:#171320;--game-hover:#30283e;font-family:"Yu Gothic UI","Meiryo",system-ui,sans-serif}
body.game-ui {background:var(--bg);color:var(--ink);font-size:14px;line-height:1.65}
.game-ui h1 {font-size:22px;line-height:1.45;letter-spacing:0}.game-ui h2 {font-size:18px;line-height:1.5}.game-ui h3 {line-height:1.5}
.game-ui a {color:var(--accent)}
body.game-ui button {background:var(--paper);border-color:var(--control);color:var(--ink);box-shadow:none;transition:background-color .12s,border-color .12s,color .12s}
body.game-ui button:hover {background:var(--game-hover);border-color:var(--accent)}
body.game-ui button:active {background:#3b2e4d}
body.game-ui button.primary {background:var(--game-gold);border-color:var(--game-gold);color:#23180c;font-weight:700}
body.game-ui button.primary:hover {background:#f9c567;border-color:#f9c567}
body.game-ui button.text-button {background:transparent;border-color:transparent;color:var(--accent)}
body.game-ui button.text-button:hover {background:var(--tint);text-decoration:none}
body.game-ui button.danger-button {color:var(--game-red);border-color:#805360}
body.game-ui button:disabled {background:#292431;border-color:#51455f;color:#9d92ad;opacity:1;cursor:default}
body.game-ui :is(input,select,textarea) {background:var(--game-inset);color:var(--ink);border-color:var(--control);border-radius:4px}
.game-ui ::placeholder {color:#a89bb8}.game-ui input[type=checkbox] {accent-color:#9d4edd}
.game-ui :is(button,a,summary,input,select,textarea,[tabindex]):focus-visible {outline:2px solid var(--accent);outline-offset:3px}
.game-ui :is(h1,h2)[tabindex="-1"]:focus-visible {outline:none}
.game-ui dialog {background:var(--paper);border-color:var(--control);color:var(--ink);border-radius:8px;box-shadow:0 18px 60px #0008}
.game-ui dialog::backdrop {background:#080611b8}
.game-ui dialog>header {background:var(--paper)}
.game-ui .skip {background:var(--paper);color:var(--ink)}
.game-ui .app-header {position:sticky;top:0;z-index:40;min-height:64px;padding:0 max(20px,calc((100vw - 1560px)/2));gap:28px;border-bottom:1px solid #514160;background:var(--paper);box-shadow:0 3px 10px #0002}
.game-ui .app-header .brand {font-size:19px;font-weight:700;color:#efe5ff;letter-spacing:.02em}
.game-ui .app-header .brand span {font-size:11px;color:var(--muted);font-weight:400;letter-spacing:0}
.game-ui .app-header .primary-nav {gap:5px;align-self:stretch;align-items:stretch;margin:0}
.game-ui .app-header .nav-button {justify-content:center;gap:8px;padding:12px 20px;color:var(--muted);border:0;border-bottom:3px solid transparent;border-radius:0;background:transparent;min-height:61px;font-size:14px}
.game-ui .app-header .nav-button strong {font-size:14px;font-weight:600}.game-ui .app-header .nav-button small {display:none}
.game-ui .app-header .nav-button:hover {background:#292034;color:var(--ink)}
.game-ui .app-header .nav-button.active,.game-ui .app-header nav.primary-nav .nav-button[aria-current=page] {background:#2e223c;color:#ddbcfa;border-color:transparent;border-bottom-color:#b778eb}
.game-ui .app-header nav.primary-nav .nav-button {flex-direction:row}
.game-ui .app-header .nav-button .ui-icon {width:19px;height:19px}
.game-ui .app-header #about {margin-left:auto;font-size:12px;white-space:nowrap;min-height:44px}
.game-ui .app-header nav.primary-nav {display:flex;flex:1 1 auto;max-width:none;min-width:0;overflow-x:auto;scrollbar-width:thin}
.game-ui .app-header nav.primary-nav .nav-button {flex:0 0 auto;white-space:nowrap;padding-inline:14px}
@media(max-width:1180px){
  .game-ui .app-header {flex-wrap:wrap;gap:0 16px}
  .game-ui .app-header nav.primary-nav {order:3;flex-basis:100%;width:100%}
  .game-ui .app-header nav.primary-nav .nav-button {min-height:46px}
}
.game-ui #main,.game-ui .party-main {max-width:1560px;margin-inline:auto;padding:22px 24px 48px}
.game-ui .hom-roster-heading,.game-ui .party-presets-heading {margin-bottom:16px;gap:14px}
.game-ui .hom-roster-heading h1,.game-ui .party-presets-heading h1 {font-size:22px}
.game-ui .hom-roster-heading p,.game-ui .party-presets-heading p {font-size:12px}
.game-ui .hom-roster-filter {margin-bottom:14px}.game-ui .hom-roster-filter label {gap:4px}
.game-ui .hom-roster-grid {grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:10px}
.game-ui .hom-roster-card {max-width:none;background:var(--paper);border-color:#544662;border-radius:6px}
.game-ui .hom-roster-open {padding:8px;gap:4px;text-align:center;background:transparent;border:0}
.game-ui .hom-roster-open:hover {background:#2c2338}
.game-ui .hom-roster-art {height:124px;background:var(--game-inset);margin-bottom:4px}
.game-ui .hom-roster-level {background:#171320d9;color:#f8cf7d}
.game-ui .hom-roster-open strong {font-size:13px;line-height:1.45}
.game-ui .hom-roster-meta,.game-ui .hom-roster-species {font-size:11px}
.game-ui .hom-roster-edit-label {display:block;margin-top:2px;color:var(--accent);font-size:12px;font-weight:600}
.game-ui .hom-roster-create-card {max-width:none;min-height:222px;padding:16px 10px;gap:8px;background:#1d1728;color:#d8b9f0;border-color:#766186}
.game-ui .hom-roster-create-card:hover {background:var(--tint);border-color:var(--accent)}
.game-ui .hom-roster-create-plus {width:44px;height:44px;border:0;border-radius:0;font-size:36px;margin:0}
.game-ui .hom-roster-create-card strong {font-size:13px}.game-ui .hom-roster-create-hint {display:none}
.game-ui .hom-roster-empty {background:transparent;border:0;color:var(--muted)}
.game-ui .hom-roster-use {border:0;border-top:1px solid var(--line);border-radius:0;background:var(--game-inset);color:var(--accent);font-size:11px;min-height:38px}
.game-ui .hom-roster-menu>summary,.game-ui .party-presets-menu>summary {background:var(--paper);border-color:var(--control);color:var(--ink)}
.game-ui .hom-roster-menu>div,.game-ui .party-presets-menu-content,.game-ui .party-menu,.game-ui .library-actions {background:#282132;border-color:var(--control);box-shadow:0 8px 24px #0007;border-radius:5px}
.game-ui .hom-roster-menu>div button,.game-ui .party-presets-menu-content button {background:transparent;color:var(--ink)}
.game-ui .hom-roster-menu>div button:hover,.game-ui .party-presets-menu-content button:hover:enabled {background:#3b2c4b}
.game-ui .hom-editor-header {padding-bottom:12px;margin-bottom:12px;border-color:var(--line)}
.game-ui .hom-editor-heading {gap:8px 12px}
.game-ui .hom-editor-heading h1 {font-size:18px}.game-ui .hom-editor-heading>div>small {display:none}
.game-ui .hom-editor-heading button,.game-ui .hom-editor-heading summary {font-size:12px;padding:8px 10px;min-height:40px}
.game-ui .hom-editor-header .library-status {font-size:11px;margin-top:3px}
.game-ui .character-slots {background:var(--paper);border:1px solid var(--line);border-radius:6px;padding:12px;margin-bottom:12px;gap:8px}
.game-ui .character-card {gap:10px}.game-ui #character-card-open {border:0;min-width:0;padding:4px 8px;background:transparent;gap:10px}
.game-ui #character-card-open .homunculus-portrait {width:66px;height:72px;flex-basis:66px}
.game-ui .character-card-name {font-size:16px}.game-ui .character-card-copy {gap:2px}.game-ui .character-card-meta {font-size:11px}.game-ui .character-card-action {font-size:11px}
.game-ui #character-settings {padding:0;border:0}.game-ui #character-settings:not([open]) {display:none}
.game-ui .character-slots .slot-counters {padding:6px 0 0;gap:12px}
.game-ui .slot-counters strong {font-size:12px;font-weight:500}.game-ui .slot-rules {font-size:11px;margin:0}
.game-ui .editor-nav {background:transparent;padding:0;margin:0 0 12px;gap:10px;align-items:stretch;border-bottom:1px solid var(--line)}
.game-ui .editor-view-buttons {gap:3px}
.game-ui .editor-view-buttons button,.game-ui .catalog-modes button,.game-ui .party-tabs button {min-height:44px;background:transparent;border:0;border-bottom:3px solid transparent;border-radius:4px 4px 0 0;padding:9px 14px;color:var(--muted);font-size:13px}
.game-ui .editor-view-buttons button[aria-pressed=true],.game-ui .catalog-modes button[aria-pressed=true],.game-ui .party-tabs button[aria-pressed=true] {background:var(--tint);color:#dfbdf9;border-bottom-color:#b778eb}
.game-ui #editor-add {align-self:center;min-height:40px;padding:8px 12px;font-size:12px}
.game-ui .build-complete-bar {margin:10px 0;padding:8px 0;border-color:var(--line);gap:8px}
.game-ui .build-complete-bar>div {display:none}.game-ui .build-complete-bar button {min-height:40px;font-size:12px;padding:8px 12px}
.game-ui .build-complete-bar small {font-size:11px}
.game-ui .loadout-section {border-color:var(--line);background:var(--paper);border-radius:6px;overflow:hidden;margin-bottom:12px}
.game-ui .loadout-section>h2,.game-ui .loadout-section>header {background:#272030;color:var(--ink);border-color:var(--line);padding:9px 12px;font-size:13px}
.game-ui .loadout-row {background:var(--paper);border-color:var(--line);padding:3px 10px}
.game-ui .loadout-row:hover {background:#282033}
.game-ui .loadout-name {color:var(--ink);font-size:13px;background:transparent;border:0}
.game-ui .loadout-name:hover {background:transparent;color:#e5c8ff}
.game-ui .loadout-actions button {font-size:11px;min-height:36px;padding:6px 8px}
.game-ui .loadout-permanent {font-size:11px;color:var(--muted)}
.game-ui .loadout-detail {background:#171320;border-color:var(--line);color:var(--ink)}
.game-ui .loadout-detail p {font-size:13px;line-height:1.8}
.game-ui .loadout-end-add {background:#20192c;color:var(--accent);border-color:#776187;min-height:44px;margin-top:8px}
.game-ui .slot-lock,.game-ui .fixed-state {color:#b6a7c6;background:transparent;font-size:10px}
.game-ui .loadout-issue,.game-ui .loadout-warning {color:var(--game-red);background:#42222e}
.game-ui .loadout-group-title {color:var(--muted)}
.game-ui .search-box {background:var(--game-inset);border-color:var(--control)}
.game-ui .search-box input {background:transparent;border:0}
.game-ui .search-box>span,.game-ui .search-box .ui-icon {color:var(--muted)}
.game-ui .search-box:focus-within {outline-color:var(--accent)}
.game-ui .search-box kbd {border-color:var(--control);color:var(--muted)}
.game-ui .filter-category-list button[aria-selected=true] {background:var(--tint);color:#e1c1fc;border-color:var(--accent)}
.game-ui .kind-toggles label,.game-ui .filter-option-panel .discovery-option {background:var(--paper);border-color:var(--control);color:var(--ink)}
.game-ui .kind-toggles label:has(input:checked),.game-ui .filter-option-panel .discovery-option:has(input:checked) {background:var(--tint);border-color:var(--accent);color:var(--ink)}
.game-ui .result-table thead,.game-ui .result-table th,.game-ui .learner-table th {background:#2a2235;color:var(--muted);border-color:var(--line)}
.game-ui .result-table td,.game-ui .learner-table td {border-color:var(--line)}
.game-ui .result-table .skill-row {background:var(--paper)}
.game-ui .result-table .skill-row:hover,.game-ui .result-table .skill-row.selected {background:#2c2239}
.game-ui .result-table tr.selected>td {background:transparent}
.game-ui .list-skill-name,.game-ui .skill-name {color:var(--ink);background:transparent;border:0}
.game-ui .list-skill-name:hover,.game-ui .skill-name:hover {background:transparent;color:#e3c3ff}
.game-ui .skill-list .list-kind {background:#172e52;color:#bfdbfe;border:1px solid #254d7b;border-radius:3px;padding:2px 5px;font-size:10px}
.game-ui .skill-list .list-kind.active {background:#451e2a;border-color:#713347;color:#fecaca}
.game-ui .skill-list .list-kind.normal {background:#422d16;border-color:#805723;color:#fcd34d}
.game-ui .skill-brief,.game-ui .list-kind,.game-ui .list-chevron {color:var(--muted)}
.game-ui .metric,.game-ui .material-count {color:#dbb0ff}.game-ui .metric-note {color:var(--muted)}
.game-ui .detail-cell {background:#171320!important;border-color:var(--line)}
.game-ui .detail-content h3 {color:#dcc2f3}.game-ui .official-description {color:var(--ink)}
.game-ui .detail-notes {color:#f0cc88}
.game-ui .detail-heading button {color:var(--muted)}
.game-ui .loadout-detail .detail-heading {display:none}
.game-ui:not(.show-classification) .detail-content .search-tags {display:none}
.game-ui .search-tags>span {background:#302a3b;color:#d4c7e2;border-color:var(--line)}
.game-ui .skill-values {margin:10px 0;border-block:1px solid var(--line)}
.game-ui .detail-content .official-description {white-space:pre-wrap;overflow-wrap:anywhere}
.game-ui .pick-skill[aria-pressed=true] {background:#f0f3f4;color:#657078;border-color:transparent;cursor:pointer}
.game-ui .skill-values>summary {min-height:44px;padding:10px 0;font-size:12px;color:var(--muted);cursor:pointer}
.game-ui .quantified-effects li.quantity-relevant {background:#20372b;color:#b3edc4;border-color:#48644d}
.game-ui .learner-scroll {background:var(--game-inset);border-color:var(--line)}
.game-ui .learner-table .current-source {background:var(--tint)}
.game-ui .official-tags>span {background:#302a3b;color:#d4c7e2;border:0}
.game-ui .official-tags [data-element=fire] {background:#45252a;color:#ffb29c}.game-ui .official-tags [data-element=ice] {background:#20394c;color:#9ddcff}.game-ui .official-tags [data-element=dark] {background:#352443;color:#d7b0f1}.game-ui .official-tags [data-element=holy],.game-ui .official-tags [data-element=thunder] {background:#423821;color:#f5d77f}.game-ui .official-tags [data-element=earth] {background:#3d3028;color:#dec3a7}.game-ui .official-tags [data-element=wind] {background:#213a32;color:#9ce7c4}
.game-ui .effect-total {background:var(--paper);border-color:var(--line)}
.game-ui .effect-total>summary>strong {font-size:20px}.game-ui .effect-total small {font-size:11px}
.game-ui .effect-totals {gap:1px;border-color:var(--line)}
.game-ui .effect-overview h2 {font-size:16px}.game-ui .effect-scope {font-size:12px;line-height:1.75}
.game-ui .effect-entry {background:var(--paper);border-color:var(--line)}
.game-ui .effect-entry .official-description {font-size:13px}
.game-ui .party-page,.game-ui .formation-board {background:var(--paper)}
.game-ui .formation-board {border-color:var(--control);top:82px}
.game-ui .party-heading {padding:12px 0}.game-ui .party-heading h1 {font-size:20px}
.game-ui .party-heading p,.game-ui .party-hint,.game-ui .party-save-status {color:var(--muted)}
.game-ui .member-editor {background:var(--paper);border-color:var(--line)}
.game-ui .member-methods .method-button {background:var(--paper);border-color:var(--line)}
.game-ui .member-methods .method-button:hover {background:var(--tint);border-color:var(--accent)}
.game-ui .member-methods .method-button strong {color:var(--ink)}
.game-ui .party-preset-card,.game-ui .party-preset-new {background:var(--paper);border-color:var(--control)}
.game-ui .party-preset-card[data-active=true] {border-color:#b778eb}
.game-ui .party-presets-error {background:#39212d;color:#ffc7c7;border-color:#bd7082}
.game-ui .party-skill-table thead th {background:#2a2235}
.game-ui .party-skill-table tbody th,.game-ui .party-skill-table tbody td {border-color:var(--line)}
.game-ui .party-skill-table tbody tr:hover>* {background:#30283e}
.game-ui .party-skill-overview .party-skill-mark.state-off,.game-ui .party-skill-overview .party-skill-mark.state-disabled {background:#302936;color:#c1b4cc;border-color:#82718c}
.game-ui .party-skill-overview .party-skill-mark.state-uncertain,.game-ui .party-skill-overview .party-skill-mark.state-unknown {background:#3c3020;color:#f0d2a2;border-color:#ae8d56}
.game-ui .party-skill-state-note {color:#f0d2a2}
.game-ui .party-skill-empty {background:var(--paper)}
.game-ui .party-skill-error {color:var(--game-red)}
.game-ui .slot-color-0 {--slot-ink:#ffb4ae;--slot-bg:#42272f}.game-ui .slot-color-1 {--slot-ink:#f5cf93;--slot-bg:#3e3223}.game-ui .slot-color-2 {--slot-ink:#d3e4a1;--slot-bg:#323822}
.game-ui .slot-color-3 {--slot-ink:#a4dfee;--slot-bg:#203540}.game-ui .slot-color-4 {--slot-ink:#c0c6ff;--slot-bg:#2b2c48}.game-ui .slot-color-5 {--slot-ink:#edbce7;--slot-bg:#3d2940}
.game-ui .party-presets-menu-content .danger-button {color:var(--game-red)}
.game-ui .party-field :is(input,textarea,select) {background:var(--game-inset);color:var(--ink);border-color:var(--control)}
.game-ui .rule-form,.game-ui .transfer-preview,.game-ui .transfer-source,.game-ui .member-settings-summary {background:#211a2d;color:var(--ink);border-color:var(--control)}
.game-ui .history-item {color:var(--ink);border-color:var(--line)}
.game-ui .history-item[aria-pressed=true] {background:var(--tint);border-left-color:var(--accent)}
.game-ui .history-item small,.game-ui .history-note,.game-ui .rule-meta {color:var(--muted)}
.game-ui .transfer-slot {background:var(--game-inset);color:var(--ink);border-color:var(--control)}
.game-ui .transfer-slot[aria-pressed=true] {background:var(--tint);border-color:var(--accent);color:var(--ink)}
.game-ui .transfer-confirm {background:#3c3020;border-color:#ce9b4e;color:#f0d2a2}
.game-ui .selection-bar {background:var(--paper);border-color:var(--control)}
.game-ui .toast {background:#332441;border:1px solid var(--control);color:var(--ink);box-shadow:0 8px 24px #0005;font-size:13px}
.game-ui .notice {background:#382b1c;color:#f0d2a2;border-color:#d2a351}
.game-ui .error,.game-ui .effect-warning,.game-ui .filter-status,.game-ui .party-error-text,.game-ui .transfer-error {color:var(--game-red)}
.game-ui .party-alert,.game-ui .party-warning,.game-ui .conflict-banner,.game-ui .homunculus-picker-error {background:#39212d;color:#ffc7c7;border-color:#bd7082}
.game-ui .compare-success,.game-ui .acquired-note,.game-ui .party-ok,.game-ui .diff-add {color:var(--game-green)}
.game-ui .diff-remove {color:var(--game-red)}
.game-ui .usage-diagram {background:var(--game-inset);border-color:var(--line)}
.game-ui .usage-action {background:var(--tint);color:var(--accent)}
.game-ui .usage-guide .usage-topics button:hover {background:var(--tint)}
.game-ui .embedded-editor {background:var(--paper)}
.game-ui #hom-detail-pane {min-width:0}
.game-ui.has-hom-roster .build-library {display:none!important}
.game-ui .hom-roster-card.is-active {border-color:#be83ee;box-shadow:inset 0 0 0 1px #be83ee;background:#31243f}
.hom-roster-active-mark {position:absolute;top:4px;left:4px;padding:1px 5px;background:#623983;color:#f1dcff;font-size:10px;border-radius:3px}
.game-ui .editor-tools-menu {position:relative;align-self:center;font-size:11px}
.game-ui .editor-tools-menu>summary {padding:9px 10px;border:1px solid var(--control);border-radius:4px;min-height:40px;background:var(--paper)}
.game-ui .editor-tools-menu>div {position:absolute;top:calc(100% + 5px);right:0;z-index:10;display:flex;flex-direction:column;gap:4px;min-width:190px;padding:6px;background:#2a2035;border:1px solid var(--control);border-radius:5px;box-shadow:0 8px 24px #0005}
.game-ui .editor-tools-menu button {text-align:left;white-space:nowrap}
.game-ui .loadout-group {border:1px solid var(--line);background:var(--paper);border-radius:6px;overflow:hidden;margin-bottom:12px}
.game-ui .loadout-group>h2 {font-size:12px;font-weight:500;background:#272030;color:var(--muted);margin:0;padding:7px 12px;border-color:var(--line)}
.game-ui .loadout-group>h2 span {font-size:11px}
.game-ui .loadout-item {border-color:var(--line)}
.game-ui .loadout-item .loadout-name {display:flex;align-items:center;gap:7px;font-size:13px;padding-inline:0}
.game-ui .loadout-item .loadout-name>span:nth-child(2) {flex:1;min-width:0}
.loadout-kind {font-size:10px;font-weight:500;flex:0 0 auto;padding:2px 5px;border:1px solid;border-radius:3px;white-space:nowrap;line-height:1.5}
.loadout-kind.kind-normal {background:#422d16;border-color:#805723;color:#fcd34d}
.loadout-kind.kind-active {background:#451e2a;border-color:#713347;color:#fecaca}
.loadout-kind.kind-passive {background:#172e52;border-color:#254d7b;color:#bfdbfe}
.game-ui .loadout-toggle.is-on {background:#14392c;color:#86efac;border-color:#377959}
.game-ui .loadout-toggle.is-off {background:#302936;color:#c1b4cc;border-color:#6a5a76}
.game-ui .loadout-permanent.is-permanent {color:#f0abfc;background:#442349;border-radius:3px;padding:2px 5px}
.game-ui .loadout-permanent.is-permanent input {accent-color:#d06bde}
.game-ui .ut-error {color:var(--game-red)}
.game-ui dialog.system-preset-dialog {--preset-required:#9dd3ff;--preset-required-bg:#1f3347;--preset-recommended:#a4e8b1;--preset-recommended-bg:#203b2b;--preset-optional:#f0d191;--preset-optional-bg:#3f3222;--preset-warning:#fca5a5}
.game-ui .system-preset-dialog .preset-review {background:#39212d;border-color:#bd7082}
@media(min-width:1180px){
  body.game-ui.hom-split #main {display:grid;grid-template-columns:minmax(350px,.85fr) minmax(560px,1.15fr);gap:22px;align-items:start}
  body.game-ui.hom-split #storage-warning {grid-column:1/-1}
  body.game-ui.hom-split #hom-roster {grid-column:1;position:sticky;top:84px;max-height:calc(100dvh - 100px);overflow:auto;padding:14px;background:var(--paper);border:1px solid var(--line);border-radius:7px;scrollbar-gutter:stable}
  body.game-ui.hom-split #hom-detail-pane {grid-column:2}
  .hom-split #hom-roster .hom-roster-heading {margin-bottom:10px}.hom-split #hom-roster h1 {font-size:16px}
  .hom-split #hom-roster .hom-roster-tools,.hom-split #hom-roster .hom-roster-use,.hom-split #hom-roster .hom-roster-species {display:none}
  .hom-split #hom-roster .hom-roster-filter {gap:8px;margin-bottom:10px}.hom-split #hom-roster .hom-roster-filter label {font-size:11px}
  .hom-split #hom-roster .hom-roster-grid {grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}
  .hom-split #hom-roster .hom-roster-art {height:87px}.hom-split #hom-roster .hom-roster-open {padding:5px;gap:3px}
  .hom-split #hom-roster .hom-roster-open strong {font-size:11px}.hom-split #hom-roster .hom-roster-meta {font-size:9px}
  .hom-split #hom-roster .hom-roster-level {font-size:9px;bottom:2px;right:2px}
  .hom-split #hom-roster .hom-roster-create-card {min-height:147px;font-size:12px}.hom-split #hom-roster .hom-roster-create-card strong {font-size:11px}
  .hom-split .hom-editor-heading {padding-bottom:8px}.hom-split .hom-editor-header {margin-bottom:8px;padding-bottom:4px}
  .hom-split .loadout-actions {gap:6px}.hom-split .loadout-name {min-width:0}
}
@media(max-width:900px){
  .game-ui .app-header {position:relative;min-height:0;gap:0 8px;padding:6px 12px 0;flex-wrap:wrap}
  .game-ui .app-header .brand {font-size:16px}.game-ui .app-header .brand span {font-size:10px}
  .game-ui .app-header .primary-nav {width:100%;order:3;flex-basis:100%;gap:2px;margin-top:2px}
  .game-ui .app-header .nav-button {min-height:46px;padding:9px 7px;flex:1;gap:5px}
  .game-ui .app-header .nav-button strong {font-size:13px}.game-ui .app-header .nav-button .ui-icon {width:17px;height:17px}
  .game-ui .app-header #about {min-height:34px;padding:5px 8px}
  .game-ui #main,.game-ui .party-main {padding:14px 12px 32px}
  .game-ui .hom-roster-grid {grid-template-columns:repeat(auto-fill,minmax(138px,1fr));gap:9px}
  .game-ui .hom-editor-heading>div {flex:1;min-width:0}.game-ui .hom-editor-heading h1 {font-size:16px}
  .game-ui .character-slots {padding:9px}.game-ui #character-card-open .homunculus-portrait {width:56px;height:64px;flex-basis:56px}
  .game-ui .character-card-name {font-size:15px}.game-ui .slot-counters strong {font-size:11px}
  .game-ui .editor-nav {gap:6px;flex-wrap:wrap}.game-ui .editor-view-buttons {flex:1;min-width:0}
  .game-ui .editor-view-buttons button {padding:8px;font-size:12px;white-space:nowrap;flex:1;min-width:0}
  .game-ui .build-complete-bar {padding:6px 0;gap:6px}.game-ui .build-complete-bar button {font-size:11px;padding:7px 9px}
  .game-ui .formation-board {position:static}
}
@media(max-width:680px){
  body.game-ui .app-header nav.primary-nav {display:grid;grid-template-columns:repeat(6,minmax(0,1fr));overflow:visible;gap:2px}
  body.game-ui .app-header nav.primary-nav .nav-button {grid-column:span 2;padding-inline:4px;min-width:0;min-height:44px}
  body.game-ui .app-header nav.primary-nav .nav-button:nth-child(n+4) {grid-column:span 3}
  body.game-ui .app-header nav.primary-nav .nav-button strong {font-size:12px}
  .game-ui .hom-editor-heading {display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:6px 8px}
  .game-ui .hom-editor-heading #hom-roster-back {grid-column:1;grid-row:1}
  .game-ui .hom-editor-heading>div {grid-column:2/-1;grid-row:1;min-width:0}
  .game-ui .hom-editor-heading #hom-editor-name {font-size:17px;line-height:1.5}
  .game-ui .hom-editor-heading #hom-editor-rename {grid-column:2;grid-row:2;justify-self:end}
  .game-ui .hom-editor-heading #hom-editor-share {grid-column:3;grid-row:2}
  .game-ui .hom-editor-heading>.hom-roster-menu {grid-column:4;grid-row:2}
  .game-ui .hom-editor-heading>.hom-roster-menu summary {white-space:nowrap}
}
.game-ui .homunculus-rank-filters button[aria-pressed=true] {background:var(--accent);border-color:var(--accent);color:var(--bg)}
@media(prefers-reduced-motion:reduce){.game-ui * {scroll-behavior:auto!important;transition:none!important;animation:none!important}}
