:root{--bm-bg:#0a0f1a;--bm-bg-soft:#0f1728;--bm-panel:#111b2f;--bm-panel-2:#0d1628;--bm-border:#2d3a56;--bm-border-strong:#46638d;--bm-text:#e9f0fd;--bm-muted:#9aaecd;--bm-accent:#5ea4ff;--bm-accent-2:#7cc7ff;--bm-success:#2fc28d;--bm-danger:#ff6b79;--bm-warning:#ffb35f;--bm-radius-sm:10px;--bm-radius-md:14px;--bm-radius-lg:18px;--bm-space-1:8px;--bm-space-2:16px;--bm-space-3:24px;--bm-footer-clearance:58px;--bm-control-h:38px;--bm-control-h-compact:30px;--bm-topbar-control-h:32px;--bm-shadow:0 10px 26px rgba(3,8,18,0.28),0 2px 8px rgba(3,8,18,0.25)}*{box-sizing:border-box}body,html{margin:0;padding:0}body{min-height:100vh;color:var(--bm-text);font-family:var(--font-ui),"Space Grotesk","Trebuchet MS","Segoe UI",sans-serif;background:radial-gradient(1200px 520px at -15% -20%,rgba(94,164,255,.2),transparent 60%),radial-gradient(960px 560px at 120% -8%,rgba(124,199,255,.12),transparent 64%),linear-gradient(180deg,#0c1424 0,var(--bm-bg) 100%)}a{color:var(--bm-accent-2);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{border-radius:var(--bm-radius-sm);border:1px solid var(--bm-border);background:linear-gradient(180deg,rgba(36,52,80,.74),rgba(20,32,54,.86));color:var(--bm-text);font:inherit}button{cursor:pointer;min-height:var(--bm-control-h);padding:0 14px;transition:border-color .18s ease,transform .18s ease,filter .18s ease}button:hover:not(:disabled){border-color:var(--bm-border-strong);filter:brightness(1.05)}button:active:not(:disabled){transform:translateY(1px)}button:disabled{cursor:not-allowed;opacity:.55}input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=file]),select,textarea{min-height:var(--bm-control-h);padding:0 12px}select{color:var(--bm-text);background:linear-gradient(180deg,rgba(36,52,80,.74),rgba(20,32,54,.86))}select optgroup,select option{color:var(--bm-text);background:var(--bm-panel-2)}input::placeholder,textarea::placeholder{color:color-mix(in srgb,var(--bm-muted) 84%,transparent)}main{color:inherit}.site-shell{min-height:100vh;display:flex;flex-direction:column}.site-content{flex:1 0 auto;min-height:0;display:flex;flex-direction:column}.site-footer{margin-top:auto;position:-webkit-sticky;position:sticky;bottom:0;z-index:40;border-top:1px solid color-mix(in srgb,var(--bm-border) 84%,#1a2b4a);background:linear-gradient(180deg,rgba(11,18,32,.88),rgba(8,14,26,.94));backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 -8px 22px rgba(2,6,23,.28)}.site-footer-inner{max-width:1200px;margin:0 auto;padding:8px 16px;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;font-size:12px;color:var(--bm-muted)}.site-footer-brand{display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap}.site-footer-brand strong{color:var(--bm-text);letter-spacing:.08em;text-transform:uppercase;font-size:11px}.site-footer-actions,.site-footer-links{display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap}.site-footer-actions a{display:inline-flex;align-items:center;min-height:26px;padding:0 10px;border-radius:999px;border:1px solid color-mix(in srgb,var(--bm-accent) 40%,var(--bm-border));background:rgba(13,21,36,.72);color:#dce9ff;text-decoration:none;font-size:11px;font-weight:650;letter-spacing:.04em;text-transform:uppercase}.site-footer-actions a:hover{border-color:color-mix(in srgb,var(--bm-warning) 46%,var(--bm-border));text-decoration:none}.site-footer-meta{font-family:var(--font-mono),"JetBrains Mono",Consolas,monospace}.app-page{min-height:100vh;padding:var(--bm-space-3);padding-bottom:calc(var(--bm-space-3) + var(--bm-footer-clearance))}.battle-planner-page{min-height:0;padding-bottom:var(--bm-space-3)}.compact-hud-ui{--bm-space-1:6px;--bm-space-2:12px;--bm-space-3:18px;--bm-control-h:34px;--bm-control-h-compact:28px;--bm-topbar-control-h:28px}.compact-hud-ui .app-panel{padding:12px}.compact-hud-ui .status-line{font-size:11px}.compact-hud-ui .workspace-main-title{font-size:clamp(18px,1.7vw,29px)}.compact-hud-ui .workspace-main-header{margin-bottom:4px}.compact-hud-ui .workspace-main-header-centered,.compact-hud-ui .workspace-main-titlebar{gap:4px}.compact-hud-ui .workspace-main-titlebar-left,.compact-hud-ui .workspace-main-titlebar-right{gap:6px}.compact-hud-ui .battle-planner-sidebar{padding:10px}.compact-hud-ui .library-panel-header .section-title,.compact-hud-ui .library-panel-header h2{font-size:15px;margin-bottom:2px}.compact-hud-ui .library-section>summary{min-height:40px;padding:8px 10px;font-size:12px}.compact-hud-ui .library-collection-body,.compact-hud-ui .library-item-card,.compact-hud-ui .library-section-body{padding:8px}.compact-hud-ui .toolbar-row{margin-bottom:8px;padding:5px}.compact-hud-ui .battle-planner-toolbar-row{padding:4px 5px}.compact-hud-ui .tool-icon-button{width:32px;min-height:32px}.compact-hud-ui .tool-icon-button svg{width:16px;height:16px}.compact-hud-ui .battle-planner-panel-toggle{min-height:26px;font-size:10px}.compact-hud-ui .app-nav-link{min-height:28px;padding:0 10px;font-size:10px}.compact-hud-ui .app-nav-link svg{width:13px;height:13px}.compact-hud-ui .edition-switcher-shell{padding:2px 4px;gap:4px}.compact-hud-ui .edition-switcher-button{min-height:22px;min-width:38px;padding:0 9px;font-size:10px}.compact-hud-ui .edition-switcher-button-title{font-size:10px}.compact-hud-ui .account-chip{min-height:28px;padding:0 10px 0 5px}.compact-hud-ui .account-chip-avatar{width:26px;height:26px}.compact-hud-ui .account-chip-name{font-size:12px}.compact-hud-ui .role-pill{min-height:20px;padding:0 8px;font-size:10px}.compact-hud-ui .app-stats-chip{min-height:28px;padding:0 10px;gap:8px}.compact-hud-ui .app-stats-chip-value{font-size:12px}.compact-hud-ui .app-stats-chip-label{font-size:10px}.compact-hud-ui .view-as-trigger{width:28px;min-height:28px}.compact-hud-ui .view-as-menu{min-width:148px}.compact-hud-ui .view-as-menu-item{min-height:28px;font-size:11px}.site-content>.battle-planner-page{flex:1 1 auto;min-height:0;height:100%;display:flex;flex-direction:column}.site-content>.battle-planner-page .workspace-shell{flex:1 1 auto;height:calc(100vh - 48px - var(--bm-footer-clearance));min-height:0}.legal-page{padding:var(--bm-space-3);padding-bottom:calc(var(--bm-space-3) + var(--bm-footer-clearance));display:grid;justify-items:center}.legal-card{width:min(960px,100%);padding:var(--bm-space-3)}.legal-section{margin-top:16px}.legal-section h2{margin:0 0 8px;font-size:18px}.legal-section p{line-height:1.52}.legal-list,.legal-section p{margin:0;color:var(--bm-text)}.legal-list{padding-left:20px;display:grid;grid-gap:6px;gap:6px}.app-surface{border:1px solid var(--bm-border);background:linear-gradient(180deg,rgba(19,29,49,.95),rgba(12,21,38,.96));border-radius:var(--bm-radius-lg);box-shadow:var(--bm-shadow)}.app-panel{padding:var(--bm-space-2);overflow:auto}.app-stack{display:grid;grid-gap:var(--bm-space-1);gap:var(--bm-space-1)}.app-header{display:flex;align-items:center;justify-content:space-between;gap:var(--bm-space-2);flex-wrap:wrap}.app-title{margin:0;font-weight:700;letter-spacing:.02em}.app-muted{margin:0;color:var(--bm-muted);font-size:13px}.app-nav-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.app-nav-row-centered{justify-content:center;width:100%}.app-nav-row-dense{justify-content:flex-start;gap:4px;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;width:100%;padding:1px 0 3px;scrollbar-width:none}.app-edition-row,.app-nav-links-row{display:flex;justify-content:center;width:100%}.app-nav-links-row{align-items:center;gap:6px;flex-wrap:wrap}.app-nav-row-dense .app-edition-row,.app-nav-row-dense .app-nav-links-row{width:auto;flex:0 1 auto}.app-nav-row-dense::-webkit-scrollbar{width:0;height:0}.app-nav-row-dense .app-edition-row{flex:0 0 auto}.app-nav-row-dense .app-nav-links-row{flex:0 0 auto;flex-wrap:nowrap}.app-edition-row-dense,.app-nav-links-row-dense{justify-content:flex-start;gap:4px}.edition-switcher-shell{display:flex;align-items:center;justify-content:center;gap:8px;width:-moz-fit-content;width:fit-content;max-width:100%;padding:3px 6px;border-radius:999px;border:1px solid color-mix(in srgb,var(--bm-border-strong) 44%,var(--bm-border));background:rgba(8,15,28,.72);box-shadow:0 8px 18px rgba(8,15,28,.16)}.edition-switcher-label{color:var(--bm-muted);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}.edition-switcher{display:inline-flex;align-items:center;gap:4px;padding:2px;border-radius:999px;border:1px solid var(--bm-border);background:rgba(5,12,22,.82)}.edition-switcher-button{min-height:28px;min-width:58px;border:0;border-radius:999px;background:transparent;color:var(--bm-muted);padding:0 12px;font-size:12px;font-weight:700;letter-spacing:.02em;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.edition-switcher-button:hover{color:var(--bm-text);background:rgba(96,165,250,.08)}.edition-switcher-button-active{background:linear-gradient(180deg,rgba(29,78,216,.36),rgba(22,48,100,.58));color:#f8fbff;box-shadow:inset 0 0 0 1px rgba(96,165,250,.24)}.edition-switcher-button-title{font-size:12px;font-weight:800;line-height:1}.app-nav-link{display:inline-flex;align-items:center;gap:7px;min-height:30px;border-radius:999px;border:1px solid var(--bm-border);background:rgba(21,33,57,.85);color:var(--bm-text);padding:0 11px;font-size:11px;font-weight:600;line-height:1;text-decoration:none;letter-spacing:.01em}.app-nav-row-dense .app-nav-link{min-height:28px;padding:0 9px;font-size:10px;gap:5px}.app-nav-row-dense .app-nav-link svg{width:13px;height:13px}.app-nav-row-dense .edition-switcher-shell{gap:4px;padding:2px 4px}.app-nav-row-dense .edition-switcher-label{display:none}.app-nav-row-dense .edition-switcher{padding:1px}.app-nav-row-dense .edition-switcher-button{min-height:24px;min-width:40px;padding:0 10px;font-size:11px}.app-onboarding-banner{width:min(100%,860px);display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:8px 12px;border-radius:14px;border:1px solid color-mix(in srgb,var(--bm-success) 34%,var(--bm-border));background:radial-gradient(circle at top left,rgba(47,194,141,.14),transparent 34%),linear-gradient(180deg,rgba(11,21,36,.92),rgba(8,15,29,.96))}.app-onboarding-banner-copy{display:inline-flex;align-items:center;gap:8px;min-width:0;flex-wrap:wrap;font-size:12px;color:var(--bm-muted)}.app-onboarding-banner-copy strong{color:#eafff7;font-size:12px;letter-spacing:.02em}.app-onboarding-banner-actions{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}.app-onboarding-banner-actions a,.app-onboarding-banner-actions button{min-height:28px;padding:0 12px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.app-onboarding-banner-actions a{display:inline-flex;align-items:center;border:1px solid color-mix(in srgb,var(--bm-success) 50%,var(--bm-border));background:rgba(15,41,35,.74);color:#dcfff1;text-decoration:none}.app-nav-link:hover,.app-onboarding-banner-actions a:hover{text-decoration:none}.app-nav-link:hover{border-color:var(--bm-border-strong);filter:brightness(1.08)}.app-nav-link-active{border-color:color-mix(in srgb,#60a5fa 58%,var(--bm-border));background:linear-gradient(180deg,rgba(29,78,216,.34),rgba(22,48,100,.54));box-shadow:inset 0 0 0 1px rgba(96,165,250,.24)}.app-nav-link-danger{border-color:color-mix(in srgb,var(--bm-danger) 38%,var(--bm-border));color:#ffdce1;background:linear-gradient(180deg,rgba(92,33,48,.58),rgba(63,22,33,.72))}.app-nav-link-disabled{opacity:.62;cursor:default;-webkit-user-select:none;-moz-user-select:none;user-select:none}.account-chip{display:inline-flex;align-items:center;gap:var(--bm-space-1);min-height:var(--bm-topbar-control-h);border-radius:999px;padding:0 12px 0 6px;border:1px solid var(--bm-border);background:linear-gradient(180deg,rgba(21,34,58,.88),rgba(13,22,38,.96));color:var(--bm-text);text-decoration:none}.account-chip:hover{border-color:var(--bm-border-strong);text-decoration:none}.account-chip-avatar{width:30px;height:30px;border-radius:999px;border:1px solid var(--bm-border);object-fit:cover;background:rgba(8,14,24,.88)}.account-chip-fallback{display:grid;place-items:center;font-size:12px;font-weight:700;color:var(--bm-text)}.account-chip-name{max-width:164px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600}.app-stats-chip{gap:10px;min-height:var(--bm-topbar-control-h);border-radius:999px;padding:0 12px;border:1px solid color-mix(in srgb,var(--bm-border) 84%,rgba(88,199,170,.26));background:radial-gradient(circle at top left,rgba(73,163,139,.12),transparent 55%),linear-gradient(180deg,rgba(18,31,46,.86),rgba(11,19,33,.94));color:var(--bm-text);box-shadow:inset 0 1px 0 rgba(255,255,255,.03)}.app-stats-chip,.app-stats-chip-group{display:inline-flex;align-items:center}.app-stats-chip-group{gap:6px;white-space:nowrap}.app-stats-chip-value{font-size:13px;font-weight:700;color:#f6fbff}.app-stats-chip-label{font-size:11px;font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:var(--bm-muted)}.app-stats-chip-divider{width:1px;height:18px;background:color-mix(in srgb,var(--bm-border-strong) 52%,transparent)}.app-stats-chip-dot{width:8px;height:8px;border-radius:999px;background:rgba(122,139,168,.7);box-shadow:0 0 0 1px rgba(12,20,33,.85);flex-shrink:0}.app-stats-chip-dot-active{background:#4ade80;box-shadow:0 0 0 1px rgba(12,20,33,.85),0 0 0 4px rgba(74,222,128,.14)}.role-pill{display:inline-flex;align-items:center;min-height:24px;border-radius:999px;padding:0 10px;font-size:11px;font-weight:700;border:1px solid}.role-pill-admin{background:rgba(131,22,45,.38);border-color:rgba(255,106,139,.6);color:#ffd6df}.role-pill-moderator{background:rgba(118,74,0,.33);border-color:rgba(255,190,93,.58);color:#ffe8bf}.role-pill-master{background:rgba(12,106,80,.35);border-color:rgba(75,228,182,.6);color:#c7ffea}.role-pill-user{background:rgba(52,72,107,.42);border-color:rgba(145,171,214,.56);color:#dce9ff}.role-pill-tester{background:rgba(25,90,123,.34);border-color:rgba(106,201,255,.56);color:#d2f2ff}.profile-avatar{border-radius:999px;border:1px solid color-mix(in srgb,var(--bm-border-strong) 58%,var(--bm-border));object-fit:cover;background:radial-gradient(circle at 30% 28%,rgba(94,164,255,.24),transparent 56%),linear-gradient(180deg,rgba(18,28,48,.98),rgba(10,18,34,.98));box-shadow:0 12px 32px rgba(2,6,23,.34),inset 0 0 0 1px rgba(255,255,255,.04);flex-shrink:0}.profile-avatar-hero{width:116px;height:116px}.profile-avatar-card{width:58px;height:58px}.profile-avatar-fallback{display:grid;place-items:center;font-weight:800;letter-spacing:.04em;color:#f6fbff}.profile-avatar-hero.profile-avatar-fallback{font-size:30px}.profile-avatar-card.profile-avatar-fallback{font-size:18px}.profile-hero-shell{display:grid;grid-gap:18px;gap:18px;padding:18px;margin-bottom:12px;border:1px solid color-mix(in srgb,var(--bm-border-strong) 44%,var(--bm-border));border-radius:22px;background:radial-gradient(circle at top left,rgba(94,164,255,.16),transparent 36%),radial-gradient(circle at bottom right,rgba(47,194,141,.12),transparent 34%),linear-gradient(180deg,rgba(17,28,47,.98),rgba(11,19,34,.98));box-shadow:0 16px 42px rgba(2,6,23,.28)}.profile-hero-grid{display:grid;grid-template-columns:auto minmax(0,1fr);grid-gap:18px;gap:18px;align-items:center}.profile-hero-copy{display:grid;grid-gap:10px;gap:10px;min-width:0}.profile-hero-badges{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.profile-hero-title{margin:0;font-size:clamp(32px,4vw,44px);line-height:.96;letter-spacing:-.03em}.profile-hero-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.profile-meta-chip{display:inline-flex;align-items:center;min-height:28px;border-radius:999px;padding:0 10px;font-size:12px;color:var(--bm-muted);border:1px solid color-mix(in srgb,var(--bm-border) 88%,#1f3356);background:rgba(9,16,30,.58)}.profile-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:10px;gap:10px}.profile-stat-card{display:grid;grid-gap:4px;gap:4px;min-height:96px;align-content:start;padding:14px;border-radius:16px;border:1px solid color-mix(in srgb,var(--bm-border) 92%,#1f3356);background:linear-gradient(180deg,rgba(10,18,33,.72),rgba(7,14,27,.82))}.profile-stat-label{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--bm-muted)}.profile-stat-value{font-size:clamp(28px,3vw,36px);line-height:1;letter-spacing:-.04em}.profile-layout-grid{grid-template-columns:minmax(0,1.4fr) minmax(300px,.8fr)}.profile-layout-grid,.profile-side-stack{display:grid;grid-gap:12px;gap:12px}.profile-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.profile-asset-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.profile-asset-group{min-width:0;padding:14px;border-radius:16px;border:1px solid color-mix(in srgb,var(--bm-border) 92%,#1f3356);background:linear-gradient(180deg,rgba(9,17,31,.58),rgba(7,14,27,.76))}.profile-asset-group-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.profile-asset-group-head h3{margin:0;font-size:14px}.profile-asset-list{display:grid;grid-gap:8px;gap:8px}.profile-asset-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:12px;border:1px solid color-mix(in srgb,var(--bm-border) 88%,#1f3356);background:rgba(8,15,28,.56)}.profile-asset-row-main{display:grid;grid-gap:3px;gap:3px;min-width:0}.profile-asset-row-main strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-asset-row-meta{display:inline-flex;align-items:center;gap:8px;flex-shrink:0}.profile-info-list{display:grid;grid-gap:10px;gap:10px}.profile-info-row{display:flex;justify-content:space-between;gap:12px;align-items:baseline;padding-bottom:10px;border-bottom:1px solid color-mix(in srgb,var(--bm-border) 82%,#1f3356)}.profile-info-row:last-child{padding-bottom:0;border-bottom:0}.profile-admin-stack{display:grid;grid-gap:10px;gap:10px}.profile-admin-inline{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.directory-card,.directory-grid{display:grid;grid-gap:12px;gap:12px}.directory-card-head{display:grid;grid-template-columns:auto minmax(0,1fr);grid-gap:12px;gap:12px;align-items:center}.directory-card-copy{display:grid;grid-gap:4px;gap:4px;min-width:0}.directory-card-title-row{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}.directory-card-title-row>a{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.directory-card-pills{justify-content:flex-end;gap:6px;flex:0 0 auto}.directory-card-pills,.online-pill{display:inline-flex;align-items:center}.online-pill{border:1px solid rgba(34,197,94,.55);border-radius:999px;padding:2px 8px;background:rgba(34,197,94,.16);color:#bbf7d0;font-size:11px;font-weight:800;line-height:1.2;text-transform:uppercase;letter-spacing:.04em}.directory-card-id{word-break:break-all}.directory-card-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.view-as-shell{position:relative;flex:0 0 auto}.view-as-shell,.view-as-trigger{display:inline-flex;align-items:center}.view-as-trigger{justify-content:center;width:30px;min-height:30px;padding:0;border-radius:999px;border:1px solid var(--bm-border);background:rgba(15,26,44,.9);color:var(--bm-muted)}.view-as-trigger-open,.view-as-trigger:hover{border-color:var(--bm-border-strong);color:var(--bm-text)}.view-as-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:60;min-width:160px;display:grid;grid-gap:4px;gap:4px;padding:6px;border-radius:12px;border:1px solid var(--bm-border);background:rgba(9,16,30,.98);box-shadow:0 12px 30px rgba(0,0,0,.35)}.view-as-menu-item{min-height:30px;justify-content:flex-start;padding:0 10px;border-radius:8px;border:1px solid transparent;background:transparent;color:var(--bm-muted);font-size:12px}.view-as-menu-item-active{border-color:color-mix(in srgb,var(--bm-accent) 56%,var(--bm-border));background:linear-gradient(180deg,rgba(87,145,233,.35),rgba(35,60,101,.58));color:#f8fbff}.status-line{margin:0;font-size:12px;color:var(--bm-muted)}.status-line-error{color:#ffc6cf}.status-line-ok{color:#b9f5de}.editor-action-feedback{position:fixed;top:14px;left:50%;z-index:130;width:min(520px,calc(100vw - 32px));display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;grid-gap:10px;gap:10px;padding:10px 12px;border:1px solid var(--bm-border-strong);border-radius:10px;background:rgba(8,16,30,.98);box-shadow:0 14px 30px rgba(2,6,23,.42);color:var(--bm-text);transform:translateX(-50%)}.editor-action-feedback>span{min-width:0;overflow-wrap:anywhere;font-size:12px;font-weight:700;line-height:1.35}.editor-action-feedback>button{min-width:28px;min-height:28px;padding:0;border-radius:999px;font-size:13px;line-height:1}.editor-action-feedback-ok{border-color:color-mix(in srgb,#49d6a2 54%,var(--bm-border))}.editor-action-feedback-error{border-color:color-mix(in srgb,var(--bm-danger) 56%,var(--bm-border))}.auth-page{display:grid;place-items:center;padding:var(--bm-space-3);padding-bottom:calc(var(--bm-space-3) + var(--bm-footer-clearance));min-height:100vh}.login-page{min-height:0}.site-content>.login-page{flex:1 1 auto;min-height:0}.auth-card{width:100%;max-width:480px;padding:var(--bm-space-3)}.auth-tabs{display:inline-flex;border:1px solid var(--bm-border);border-radius:999px;padding:2px;margin-bottom:var(--bm-space-2);gap:2px}.auth-tab{border-radius:999px;min-height:34px;padding:0 14px;background:transparent;border-color:transparent;color:var(--bm-muted);font-size:12px}.auth-tab-active{background:rgba(94,164,255,.26);border-color:rgba(124,199,255,.6);color:#d8ebff}.planner-mobile-gate{width:min(720px,100%);margin:0 auto;padding:24px;display:grid;grid-gap:18px;gap:18px}.planner-mobile-gate-icon{width:52px;height:52px;display:grid;place-items:center;border-radius:16px;border:1px solid color-mix(in srgb,var(--bm-border-strong) 58%,var(--bm-border));background:radial-gradient(circle at top left,rgba(94,164,255,.22),transparent 58%),linear-gradient(180deg,rgba(18,31,54,.94),rgba(11,18,33,.98))}.planner-mobile-gate-copy{display:grid;grid-gap:10px;gap:10px}.planner-mobile-gate-eyebrow{margin:0;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#ffcf91}.planner-mobile-gate-actions{display:flex;flex-wrap:wrap;gap:10px}.planner-mobile-gate-actions>*{justify-content:center}.workspace-shell{display:grid;grid-template-columns:340px minmax(0,1fr) 340px;grid-template-rows:minmax(0,1fr);grid-gap:12px;gap:12px;height:calc(100vh - 48px);min-height:0}.workspace-shell>*{min-height:0}.workspace-center{min-width:0;min-height:0;display:flex;flex-direction:column;padding:var(--bm-space-2);overflow:hidden}.workspace-main-header{display:flex;align-items:center;justify-content:space-between;gap:var(--bm-space-2);flex-wrap:wrap;margin-bottom:6px}.app-header-titlebar{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;grid-gap:var(--bm-space-2);gap:var(--bm-space-2);margin-bottom:10px}.app-header-titlebar-main{grid-column:2;text-align:center}.app-header-titlebar-main .app-muted,.app-header-titlebar-main .app-title{text-align:center}.app-header-titlebar-controls{grid-column:3;justify-self:end;display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}.workspace-main-titlebar{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;grid-gap:6px;gap:6px;width:100%}.workspace-main-titlebar-left{grid-column:1;justify-self:start;display:inline-flex;align-items:center;gap:8px;min-width:0}.workspace-main-titlebar-center{grid-column:2;text-align:center}.workspace-main-titlebar-right{grid-column:3;justify-self:end;display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}.workspace-main-header-centered{flex-direction:column;align-items:center;justify-content:flex-start;gap:6px;text-align:center}.workspace-main-nav-centered{margin-left:0;justify-content:center;width:100%}.workspace-main-title{margin:0;font-size:clamp(22px,2vw,34px);line-height:1;letter-spacing:-.03em}.workspace-shell.battle-planner-shell{--planner-left-panel-width:0px;--planner-right-panel-width:0px;position:relative;grid-template-columns:var(--planner-left-panel-width) minmax(0,1fr) var(--planner-right-panel-width);transition:grid-template-columns .18s ease}.workspace-shell.battle-planner-shell.battle-planner-shell-left-open{--planner-left-panel-width:min(320px,26vw)}.workspace-shell.battle-planner-shell.battle-planner-shell-right-open{--planner-right-panel-width:min(320px,26vw)}.battle-planner-center{position:relative;z-index:1;padding:6px}.battle-planner-center .workspace-main-header{margin-bottom:4px;flex-direction:column;align-items:center;justify-content:flex-start;gap:4px}.battle-planner-toolbar-row{margin-bottom:4px;padding:4px 6px;gap:6px}.battle-planner-sidebar{padding:12px}.planner-left-panel-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:4px;gap:4px;margin-bottom:10px;padding:4px;border:1px solid color-mix(in srgb,var(--bm-border) 88%,#2e4568);border-radius:999px;background:rgba(7,12,23,.72)}.planner-left-panel-tab{min-width:0;min-height:32px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 10px;border-radius:999px;color:var(--bm-muted);font-size:12px;font-weight:850;white-space:nowrap}.planner-left-panel-tab-active{border-color:color-mix(in srgb,var(--bm-accent) 62%,var(--bm-border));background:linear-gradient(180deg,rgba(87,145,233,.4),rgba(34,61,105,.68));color:#eef5ff}.planner-left-panel-tab>span{min-width:20px;min-height:20px;display:inline-grid;place-items:center;padding:0 6px;border-radius:999px;background:rgba(9,16,30,.78);color:#dbeafe;font-size:11px}.planner-left-reserve-panel{display:grid;grid-gap:8px;gap:8px}.battle-planner-toolbar-meta{display:inline-flex;align-items:center;gap:6px;font-weight:600;white-space:nowrap}.battle-planner-toolbar-meta-group{display:inline-flex;align-items:center;gap:2px;min-height:30px;padding:0 8px;border-radius:999px;border:1px solid color-mix(in srgb,var(--bm-border) 88%,#365174);background:rgba(10,18,32,.72)}.battle-planner-toolbar-meta+.battle-planner-toolbar-meta{position:relative;padding-left:8px}.battle-planner-toolbar-meta+.battle-planner-toolbar-meta:before{content:"";position:absolute;left:0;top:50%;width:1px;height:14px;transform:translateY(-50%);background:color-mix(in srgb,var(--bm-border-strong) 48%,transparent)}.battle-planner-toolbar-meta-label{color:var(--bm-muted)}.battle-planner-toolbar-meta-value{color:var(--bm-text)}.snap-assist-pill{display:inline-flex;align-items:center;min-height:30px;padding:0 10px;border-radius:999px;border:1px solid color-mix(in srgb,var(--bm-border) 88%,#365174);background:rgba(12,21,37,.8);color:var(--bm-muted);font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}.snap-assist-pill-engaged{border-color:color-mix(in srgb,var(--bm-accent-2) 62%,var(--bm-border));background:linear-gradient(180deg,rgba(50,95,170,.34),rgba(18,35,66,.76));color:#e7f3ff}.battle-planner-context-row{margin-bottom:6px;padding:6px 8px;height:auto;min-height:38px}.battle-planner-display-settings-panel{margin-bottom:8px;border:1px solid var(--bm-border);border-radius:14px;padding:8px;background:rgba(8,15,28,.44)}.battle-planner-display-settings-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.battle-planner-map-stage{flex:1 1;min-height:0;display:flex;flex-direction:column;gap:8px;align-items:stretch;justify-content:stretch;position:relative;overscroll-behavior:contain}.battle-planner-map-stage>svg{order:2;min-height:0;flex:1 1 auto}.battle-planner-map-controls{order:1;display:flex;align-items:center;gap:6px;flex-wrap:wrap;min-height:36px;padding:0 2px}.battle-planner-map-stage .toolbar-context-row{position:absolute;left:12px;bottom:12px;z-index:24;margin:0;height:49px;min-height:49px;width:max-content;max-width:calc(100% - 320px);background:color-mix(in srgb,var(--bm-panel-2) 92%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 8px 22px rgba(2,6,18,.42)}.battle-planner-panel-toggle{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:0 10px;border-radius:999px;font-size:11px;font-weight:650}.battle-planner-panel-toggle-active{border-color:color-mix(in srgb,var(--bm-accent) 58%,var(--bm-border));background:linear-gradient(180deg,rgba(87,145,233,.4),rgba(34,61,105,.66))}.battle-planner-panel-toggle>span{white-space:nowrap}.battle-planner-drawer{min-width:0;height:100%;box-sizing:border-box;transition:opacity .15s ease,transform .18s ease}.battle-planner-drawer-left,.battle-planner-drawer-right{opacity:0;pointer-events:none;visibility:hidden}.battle-planner-drawer-left{transform:translateX(-12px)}.battle-planner-drawer-right{transform:translateX(12px)}.workspace-shell.battle-planner-shell.battle-planner-shell-left-open .battle-planner-drawer-left,.workspace-shell.battle-planner-shell.battle-planner-shell-right-open .battle-planner-drawer-right{opacity:1;pointer-events:auto;visibility:visible;transform:translateX(0)}.battle-planner-drawer-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.battle-planner-drawer-head>strong{font-size:12px;letter-spacing:.03em;text-transform:uppercase;color:var(--bm-muted)}.battle-planner-drawer-close{min-height:30px;padding:0 10px;font-size:12px}.battle-planner-drawer-backdrop{display:none}.layout-editor-drawer-rail{position:fixed;top:50%;z-index:85;width:34px;min-height:128px;max-height:min(220px,calc(100vh - 120px));display:inline-flex;align-items:center;justify-content:center;flex-direction:column;gap:7px;padding:8px 0;border-radius:8px;border-color:color-mix(in srgb,var(--bm-accent) 42%,var(--bm-border));background:linear-gradient(180deg,rgba(22,39,67,.96),rgba(10,20,38,.96));color:var(--bm-text);box-shadow:0 12px 24px rgba(2,6,23,.34);cursor:pointer;pointer-events:auto;transform:translateY(-50%)}.layout-editor-drawer-rail-left{left:0;border-top-left-radius:0;border-bottom-left-radius:0}.layout-editor-drawer-rail-right{right:0;border-top-right-radius:0;border-bottom-right-radius:0}.layout-editor-drawer-rail svg{width:15px;height:15px}.layout-editor-drawer-rail span{min-height:0;max-height:118px;overflow:hidden;text-overflow:ellipsis;writing-mode:vertical-rl;font-size:12px;font-weight:750;line-height:1}.layout-editor-drawer-rail-left span{transform:rotate(180deg)}.layout-editor-drawer-rail kbd,.layout-editor-hotkeys-panel kbd{display:inline-flex;align-items:center;justify-content:center;min-width:20px;min-height:20px;padding:0 5px;border:1px solid color-mix(in srgb,var(--bm-border-strong) 52%,var(--bm-border));border-radius:5px;background:rgba(2,6,23,.52);color:#e5edf8;font-family:var(--font-mono),Consolas,monospace;font-size:10px;font-weight:800;line-height:1}.layout-editor-hotkeys-panel{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:8px;gap:8px;margin:0 0 8px;padding:8px;border:1px solid var(--bm-border);border-radius:10px;background:rgba(8,15,28,.68)}.layout-editor-hotkeys-panel>div{min-width:0;display:grid;grid-gap:5px;gap:5px;align-content:start}.layout-editor-hotkeys-panel strong{color:var(--bm-muted);font-size:10px;letter-spacing:.06em;text-transform:uppercase}.layout-editor-hotkeys-panel span{min-width:0;display:flex;align-items:center;gap:4px;flex-wrap:wrap;color:var(--bm-text);font-size:11px;line-height:1.25}.layout-editor-map-stage{flex:1 1;min-height:0;display:flex;flex-direction:column;gap:8px;align-items:stretch;justify-content:stretch;overscroll-behavior:contain;position:relative}.layout-editor-map-stage>svg{order:2;min-height:0;flex:1 1 auto}.layout-editor-map-controls{order:1;display:flex;align-items:center;gap:6px;flex-wrap:wrap;min-height:36px;padding:0 2px}.layout-editor-shell .toolbar-context-row{order:3;margin:0;height:49px;min-height:49px}.layout-editor-shell .toolbar-context-row button{min-height:30px;padding:0 10px;font-size:12px;white-space:nowrap}.layout-editor-shell .toolbar-context-row .status-line{white-space:nowrap}.layout-editor-shell .toolbar-context-row .toolbar-context-primary{max-width:clamp(120px,22vw,260px);min-width:72px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700}@media (max-width:900px){.layout-editor-hotkeys-panel{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.layout-editor-hotkeys-panel{grid-template-columns:minmax(0,1fr)}.layout-editor-drawer-rail span{display:none}}.workspace-note{margin-top:0;margin-bottom:var(--bm-space-1);font-size:12px;color:var(--bm-muted)}.workspace-note strong{color:var(--bm-text)}.toolbar-row{display:flex;gap:var(--bm-space-1);align-items:center;margin-bottom:10px;flex-wrap:wrap;padding:6px;border:1px solid var(--bm-border);border-radius:var(--bm-radius-md);background:rgba(8,15,28,.42)}.tool-icon-button{display:inline-flex;align-items:center;justify-content:center;width:34px;min-height:34px;padding:0}.tool-icon-button svg{width:18px;height:18px}.tool-button-active{border-color:color-mix(in srgb,var(--bm-accent) 58%,var(--bm-border));background:linear-gradient(180deg,rgba(87,145,233,.44),rgba(34,61,105,.7))}.toolbar-divider{width:1px;height:22px;background:color-mix(in srgb,var(--bm-border-strong) 56%,transparent);margin:0 2px}.toolbar-context-row{display:flex;gap:var(--bm-space-1);align-items:center;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-ms-overflow-style:none;margin-bottom:var(--bm-space-2);padding:var(--bm-space-1);height:calc(var(--bm-control-h) + 18px);box-sizing:border-box;border:1px solid var(--bm-border);border-radius:var(--bm-radius-md);background:rgba(8,15,28,.36)}.toolbar-context-row::-webkit-scrollbar{width:0;height:0}.toolbar-context-row>*{flex-shrink:0}.toolbar-context-row-empty{justify-content:flex-start}.toolbar-inline-field{display:inline-flex;align-items:center;flex-shrink:0;gap:6px;font-size:11px;color:var(--bm-muted)}.toolbar-inline-field input{min-height:30px;padding:0 8px}.toolbar-inline-field select{min-height:30px}.library-panel{display:flex;flex-direction:column;gap:var(--bm-space-1);min-height:0;overflow-y:auto;overflow-x:hidden}.library-panel-header{margin-bottom:2px}.library-source-filter{flex-wrap:wrap;gap:4px;margin-bottom:8px;padding:4px;border:1px solid var(--bm-border);background:rgba(9,17,31,.6)}.library-source-filter,.library-source-pill{display:inline-flex;align-items:center;border-radius:999px}.library-source-pill{justify-content:center;flex:0 0 auto;min-height:28px;padding:0 12px;border:1px solid transparent;font-size:12px;font-weight:650;color:var(--bm-muted);background:transparent;white-space:nowrap}.library-source-pill-active{color:#dbeafe;border-color:color-mix(in srgb,var(--bm-accent) 52%,var(--bm-border));background:linear-gradient(180deg,rgba(72,116,189,.42),rgba(37,59,95,.64))}.library-section-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:6px;gap:6px;margin-bottom:8px}.library-section-nav-item{min-width:0;min-height:52px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;grid-gap:8px;gap:8px;padding:8px;border:1px solid var(--bm-border);border-radius:8px;background:rgba(8,16,29,.52);color:var(--bm-text);text-align:left}.library-section-nav-item>span{min-width:0;display:grid;grid-gap:3px;gap:3px}.library-section-nav-item strong{font-size:12px}.library-section-nav-item small,.library-section-nav-item strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.1}.library-section-nav-item small{color:var(--bm-muted);font-size:10px}.library-section-nav-item em{min-width:24px;min-height:24px;display:inline-flex;align-items:center;justify-content:center;padding:0 7px;border:1px solid color-mix(in srgb,var(--bm-accent) 40%,var(--bm-border));border-radius:999px;background:rgba(45,82,138,.36);color:#d5e8ff;font-size:11px;font-style:normal;font-weight:800}.library-section-nav-item-active{border-color:color-mix(in srgb,var(--bm-accent) 62%,var(--bm-border));background:linear-gradient(180deg,rgba(52,94,158,.45),rgba(17,31,54,.78))}.library-section-nav-item-active small{color:#bdd7ff}.battle-planner-sidebar .library-section>summary{align-items:flex-start}.battle-planner-sidebar .library-section>summary>span:first-child{white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere}.battle-planner-sidebar .library-section-body,.battle-planner-sidebar .library-section-body .status-line,.battle-planner-sidebar .library-section-body label,.battle-planner-sidebar .library-section-body p{overflow-wrap:anywhere}.battle-planner-sidebar .library-section-body button{white-space:normal;height:auto;line-height:1.25;padding-top:8px;padding-bottom:8px}.battle-planner-sidebar .library-section{flex-shrink:0}.battle-planner-sidebar .library-section[open] .library-section-body{padding-bottom:18px;scroll-padding-bottom:18px}.library-create-toolbar{margin-bottom:4px}.library-create-panel{margin-top:8px;padding:10px;border:1px solid var(--bm-border);border-radius:10px;background:rgba(10,19,34,.58);flex-shrink:0}.library-create-mode-switch{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.library-create-mode-switch>button{min-height:32px;padding:0 12px}.library-create-mode-active{border-color:color-mix(in srgb,var(--bm-accent) 56%,var(--bm-border));background:linear-gradient(180deg,rgba(87,145,233,.35),rgba(35,60,101,.58))}.battlemat-upload-status{display:grid;grid-gap:6px;gap:6px;margin:-2px 0 8px}.battlemat-upload-status progress{width:100%;height:7px;accent-color:#49d6a2}.library-section{display:flex;flex-direction:column;border:1px solid var(--bm-border);border-radius:var(--bm-radius-sm);background:rgba(7,14,26,.36);overflow:hidden;min-height:0}.library-section>summary{list-style:none;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;display:flex;align-items:center;justify-content:space-between;gap:var(--bm-space-1);padding:10px 12px;font-size:13px;font-weight:650;line-height:1.25;min-height:46px}.library-section>summary>span:first-child{min-width:0;flex:1 1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.library-section>summary::-webkit-details-marker{display:none}.library-section[open]>summary{border-bottom:1px solid var(--bm-border)}.library-section-count{display:inline-flex;align-items:center;justify-content:center;min-width:24px;min-height:24px;border-radius:999px;padding:0 8px;font-size:11px;font-weight:700;color:#d5e8ff;background:rgba(48,86,143,.52);border:1px solid color-mix(in srgb,var(--bm-accent) 46%,var(--bm-border))}.library-section-body{padding:10px;min-height:0}.library-section[open] .library-section-body{overflow-y:auto;overflow-x:hidden;max-height:min(62vh,700px);scrollbar-gutter:stable}.chapter-approved-browser-panel{padding:10px;flex-shrink:0}.battle-planner-sidebar .chapter-approved-browser-panel,.battle-planner-sidebar .library-collection-group,.battle-planner-sidebar .library-create-panel,.battle-planner-sidebar .library-section{position:relative;z-index:0}.battle-planner-sidebar .library-section[open] .library-section-body{overflow:visible;max-height:none;scrollbar-gutter:auto}.library-collection-group{border:1px solid color-mix(in srgb,var(--bm-border) 92%,#1f3356);border-radius:10px;background:rgba(7,15,27,.45);margin-bottom:10px;overflow:hidden}.library-collection-summary{list-style:none;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;grid-gap:8px;gap:8px;min-height:44px;padding:8px 10px;border-bottom:1px solid transparent}.library-collection-summary:before{content:">";flex:0 0 auto;width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;border:1px solid color-mix(in srgb,var(--bm-accent) 38%,var(--bm-border));border-radius:6px;background:rgba(34,62,105,.36);color:#d5e8ff;font-size:12px;font-weight:850;line-height:1;transition:transform .12s ease,background .12s ease,border-color .12s ease}.library-collection-group[open]>.library-collection-summary{border-bottom-color:color-mix(in srgb,var(--bm-border) 85%,#1f3356)}.library-collection-group[open]>.library-collection-summary:before{border-color:color-mix(in srgb,var(--bm-accent) 58%,var(--bm-border));background:rgba(59,101,168,.46);transform:rotate(90deg)}.library-collection-summary::-webkit-details-marker{display:none}.library-collection-title{display:block;min-width:0;font-size:13px;font-weight:700;line-height:1.2;overflow-wrap:anywhere}.library-collection-title-wrap{min-width:0;display:flex;flex-direction:column;gap:4px}.library-collection-badges{display:inline-flex;align-items:center;flex-wrap:wrap;gap:6px}.library-collection-actions{display:inline-flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:5px;max-width:128px}.library-collection-actions>.status-line,.library-collection-summary>.status-line{min-width:24px;min-height:24px;display:inline-flex;align-items:center;justify-content:center;margin:0;padding:0 8px;border:1px solid color-mix(in srgb,var(--bm-accent) 42%,var(--bm-border));border-radius:999px;background:rgba(45,82,138,.36);color:#d5e8ff;font-size:11px;font-weight:800;line-height:1}.library-collection-actions .library-item-menu{margin-left:0}.library-collection-actions .library-item-menu>button{min-width:24px;min-height:24px;padding:0 7px;border-radius:999px;border-color:color-mix(in srgb,var(--bm-accent) 34%,var(--bm-border));background:rgba(12,24,43,.58);color:#d5e8ff;font-size:13px}.library-collection-body{padding:10px}.layout-assets-section-body{display:grid;grid-gap:8px;gap:8px;overflow:visible}.layout-asset-subcategory{margin-bottom:0;overflow:visible}.layout-asset-templates{order:1}.layout-asset-parts{order:2}.layout-asset-plates{order:3}.layout-asset-subcategory>.library-collection-summary{min-height:44px;padding:8px 10px;background:transparent}.layout-asset-subcategory .library-collection-group{margin-top:6px;margin-bottom:0;border-radius:8px;overflow:visible}.layout-asset-subcategory .library-collection-summary{min-height:44px;padding:8px 10px}.layout-asset-subcategory>.library-collection-summary .library-collection-title{font-size:13px}.layout-asset-subcategory .library-collection-summary:before{width:20px;height:20px;font-size:12px}.layout-assets-section-body>.layout-asset-subcategory>.library-collection-summary{min-height:44px;padding:8px 10px}.layout-assets-section-body>.layout-asset-subcategory>.library-collection-summary:before{width:20px;height:20px;font-size:12px}.layout-asset-subcategory-body{padding:6px;overflow:visible}.layout-assets-section-body .terrain-base-variant-toggle{margin:0 0 6px;padding:3px;gap:4px}.layout-assets-section-body .terrain-base-variant-button{min-height:26px;padding:4px 8px;font-size:10px}.layout-assets-section-body .library-collection-body{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:6px;gap:6px;padding:6px;overflow:visible}.battlemat-section-body{display:grid;grid-gap:8px;gap:8px}.battlemat-section-body .library-collection-body,.deployment-preset-section-body .library-collection-body,.terrain-layout-section-body .library-collection-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px;padding:8px}.library-collection-badges{display:none}.library-item-card{border:1px solid var(--bm-border);border-radius:10px;padding:10px;margin-bottom:8px}.library-item-card[draggable=true]{cursor:-webkit-grab;cursor:grab}.library-item-card[draggable=true]:active{cursor:-webkit-grabbing;cursor:grabbing}.library-asset-card{position:relative;padding:8px;border-radius:8px;display:grid;grid-gap:7px;gap:7px;background:radial-gradient(circle at top right,rgba(59,130,246,.1),transparent 38%),linear-gradient(180deg,rgba(14,24,39,.96),rgba(9,15,27,.98))}.layout-assets-section-body .library-asset-card{padding:5px;gap:5px;margin-bottom:0;z-index:0;transform-origin:center;transition:transform .12s ease,border-color .12s ease,box-shadow .12s ease;will-change:transform}.layout-assets-section-body .library-asset-card:focus-within,.layout-assets-section-body .library-asset-card:hover{z-index:35;transform:scale(1.5);border-color:color-mix(in srgb,var(--bm-accent) 54%,var(--bm-border));box-shadow:0 12px 24px rgba(2,6,23,.42)}.layout-assets-section-body .library-collection-body>.library-asset-card:nth-child(3n+1){transform-origin:left center}.layout-assets-section-body .library-collection-body>.library-asset-card:nth-child(3n){transform-origin:right center}.layout-assets-section-body .library-collection-body>.library-asset-card:nth-child(-n+3){transform-origin:center top}.layout-assets-section-body .library-collection-body>.library-asset-card:nth-child(-n+3):nth-child(3n+1){transform-origin:left top}.layout-assets-section-body .library-collection-body>.library-asset-card:nth-child(-n+3):nth-child(3n){transform-origin:right top}.library-asset-card>svg{display:block;width:100%;height:108px;margin:0;border-radius:8px;background:rgba(8,14,25,.62)}.layout-assets-section-body .library-asset-card>svg{height:46px;border-radius:6px;background:transparent}.library-asset-card-footer{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;grid-gap:8px;gap:8px;min-height:32px}.layout-assets-section-body .library-asset-card-footer{min-height:24px;justify-content:end}.library-asset-card-footer>strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;line-height:1.15}.layout-assets-section-body .library-asset-card-footer>strong{display:none}.library-asset-card .library-item-menu>button{min-width:32px;min-height:32px;border-radius:8px}.layout-assets-section-body .library-asset-card .library-item-menu>button{min-width:24px;min-height:24px;border-radius:6px;font-size:12px}.battlemat-status-dot{width:9px;min-width:9px;height:9px;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;border:1px solid rgba(248,250,252,.48);border-radius:999px;box-shadow:0 1px 4px rgba(2,6,23,.45);color:transparent;font-size:0;font-weight:800;line-height:1;white-space:nowrap;transition:width .12s ease,height .12s ease,padding .12s ease,color .12s ease,font-size .12s ease,background-color .12s ease}.library-preview-asset-card:focus-within .battlemat-status-dot,.library-preview-asset-card:hover .battlemat-status-dot{width:auto;max-width:100%;height:15px;padding:0 5px;color:#f8fafc;font-size:8px}.battlemat-status-dot-approved,.battlemat-status-dot-owned{background:color-mix(in srgb,var(--bm-success) 72%,#0f172a)}.battlemat-status-dot-community,.battlemat-status-dot-public{background:color-mix(in srgb,var(--bm-accent) 72%,#0f172a)}.battlemat-status-dot-private,.battlemat-status-dot-rejected{background:color-mix(in srgb,var(--bm-danger) 72%,#0f172a)}.battlemat-status-dot-pending{background:color-mix(in srgb,var(--bm-warning) 78%,#0f172a)}.battlemat-status-dot-chapter{background:color-mix(in srgb,#7c3aed 68%,#0f172a)}.battlemat-status-dot-diverged{background:color-mix(in srgb,var(--bm-warning) 60%,var(--bm-success) 20%);outline:1px dashed color-mix(in srgb,var(--bm-warning) 85%,#0f172a);outline-offset:1px}.battlemat-status-dot-active{background:color-mix(in srgb,var(--bm-success) 78%,#0f172a)}.battlemat-active-strip{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;grid-gap:8px;gap:8px;padding:8px 10px;border:1px solid color-mix(in srgb,var(--bm-accent) 34%,var(--bm-border));border-radius:8px;background:rgba(12,25,45,.58)}.battlemat-active-strip>span{min-width:0;display:grid;grid-gap:2px;gap:2px}.battlemat-active-strip em,.battlemat-active-strip small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--bm-muted);font-size:10px;font-style:normal;line-height:1.1}.battlemat-active-strip strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.15}.battlemat-active-strip>button{min-height:30px;padding:0 10px;font-size:12px}.library-preview-asset-card{margin-bottom:0;padding:4px;gap:4px;cursor:pointer;align-self:start}.library-preview-asset-card-active{border-color:color-mix(in srgb,var(--bm-success) 58%,var(--bm-border));box-shadow:0 0 0 1px color-mix(in srgb,var(--bm-success) 32%,transparent)}.army-asset-card,.battlemat-asset-card{margin-bottom:0}.battlemat-asset-card-active{border-color:color-mix(in srgb,var(--bm-success) 58%,var(--bm-border));box-shadow:0 0 0 1px color-mix(in srgb,var(--bm-success) 32%,transparent)}.army-asset-preview,.battlemat-asset-preview,.library-board-asset-preview,.tts-theme-asset-preview{position:relative;overflow:hidden;border-radius:6px;background:rgba(8,14,25,.62)}.army-asset-preview{min-height:168px;display:grid;align-content:end;grid-gap:8px;gap:8px;padding:50px 8px 30px;background:linear-gradient(135deg,rgba(34,197,94,.16),transparent 42%),radial-gradient(circle at 82% 22%,rgba(59,130,246,.2),transparent 34%),linear-gradient(180deg,rgba(13,24,41,.96),rgba(7,13,25,.98))}.army-asset-title{padding-right:42px}.army-asset-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:6px;gap:6px}.army-asset-metrics>span{min-width:0;display:grid;grid-gap:1px;gap:1px;padding:6px;border:1px solid rgba(148,163,184,.24);border-radius:6px;background:rgba(15,23,42,.6);color:#aebdda;font-size:10px;font-weight:700;line-height:1.05;text-transform:uppercase}.army-asset-metrics strong{min-width:0;overflow:hidden;color:#f8fafc;font-size:16px;line-height:1;text-overflow:ellipsis;white-space:nowrap}.army-asset-meta{min-height:48px;display:grid;grid-gap:3px;gap:3px}.army-asset-meta>span{min-width:0;overflow:hidden;color:#cbd5e1;font-size:11px;font-weight:700;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.army-asset-units-metric{position:relative}.army-asset-unit-tooltip{position:absolute;left:-6px;bottom:calc(100% + 8px);z-index:40;width:min(280px,76vw);max-height:220px;overflow:auto;display:none;gap:4px;padding:8px;border:1px solid color-mix(in srgb,var(--bm-accent) 46%,var(--bm-border));border-radius:8px;background:rgba(7,15,27,.98);box-shadow:0 14px 30px rgba(2,6,23,.44);color:#dbeafe;font-size:11px;font-weight:700;line-height:1.25;text-align:left;text-transform:none;pointer-events:none}.army-asset-unit-tooltip>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.army-asset-units-metric:focus-within .army-asset-unit-tooltip,.army-asset-units-metric:hover .army-asset-unit-tooltip{display:grid}.army-asset-menu{position:absolute;top:6px;right:6px;z-index:8}.army-asset-actions{display:flex;justify-content:flex-end;gap:6px}.army-asset-actions>button{min-height:28px;padding:0 10px;border-radius:6px;font-size:12px}.active-army-unit-grid{max-height:360px;overflow-y:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:6px;gap:6px;margin-bottom:8px}.active-army-unit-card{position:relative;min-width:0;margin-bottom:0;padding:6px;gap:6px;align-content:start;cursor:context-menu}.active-army-unit-card-header{min-width:0;display:flex;flex-direction:column;align-items:stretch;gap:4px}.active-army-unit-name{min-width:0;color:#f8fafc;font-size:12px;line-height:1.18;overflow-wrap:break-word;white-space:normal;word-break:normal}.active-army-unit-card-header>.status-line{align-self:flex-start;max-width:100%;min-height:22px;margin:0;padding:3px 6px;overflow:hidden;overflow-wrap:normal;text-overflow:ellipsis;white-space:nowrap;font-size:10px;line-height:1.15}.active-army-unit-metrics{display:flex;flex-wrap:wrap;gap:4px}.active-army-unit-metrics>span{min-width:0;display:inline-flex;align-items:center;gap:4px;min-height:22px;padding:2px 6px;border:1px solid rgba(148,163,184,.22);border-radius:999px;background:rgba(15,23,42,.56);color:#f8fafc;font-size:11px;font-weight:800;line-height:1;white-space:nowrap}.active-army-unit-metrics strong{min-width:0;color:#aebdda;font-size:9px;line-height:1;text-transform:uppercase;white-space:nowrap}.reserve-unit-card-grid{max-height:360px;overflow-y:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:6px;gap:6px}.reserve-role-group{margin-top:8px}.reserve-role-group>summary{min-height:42px;display:flex;align-items:center;padding:8px 10px;list-style:none}.reserve-role-group>summary::-webkit-details-marker{display:none}.reserve-role-group>summary:before{content:">";flex:0 0 auto;margin-right:8px;color:#dbeafe;font-size:13px;font-weight:900;line-height:1;transition:transform .12s ease}.reserve-role-group[open]>summary:before{transform:rotate(90deg)}.reserve-role-group>summary>.library-collection-title-wrap{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:8px;flex:1 1 auto}.reserve-role-group .library-collection-title{color:#f8fafc;font-size:14px;line-height:1.15}.reserve-role-body{display:grid;grid-gap:6px;gap:6px}.reserve-panel-drag-instruction{margin-top:0;margin-bottom:8px;padding:7px 9px;border:1px solid rgba(148,163,184,.18);border-radius:8px;background:rgba(15,23,42,.44)}.reserve-unit-card{cursor:-webkit-grab;cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.reserve-unit-card:active{cursor:-webkit-grabbing;cursor:grabbing}.reserve-unit-card *{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.reserve-unit-card .active-army-unit-name{-webkit-user-drag:element}.reserve-unit-card-active{border-color:rgba(56,189,248,.7);background:linear-gradient(180deg,rgba(30,64,112,.54),rgba(10,18,32,.82));box-shadow:inset 0 0 0 1px rgba(56,189,248,.22)}.reserve-unit-card-status{color:#38bdf8}.reserve-unit-card-meta{min-width:0;color:#aebdda;font-size:10px;font-weight:750;line-height:1.15;overflow-wrap:break-word}.active-army-unit-detail-panel{max-height:150px;overflow-y:auto;display:grid;grid-gap:8px;gap:8px;margin-top:2px;padding:8px;border:1px solid rgba(148,163,184,.26);border-radius:8px;background:rgba(15,23,42,.72)}.active-army-unit-detail-panel p{min-width:0;margin:0;color:#dbeafe;font-size:12px;font-weight:700;line-height:1.35;overflow-wrap:break-word;white-space:normal}.active-army-unit-detail-panel p>span{display:block;margin-bottom:3px;color:#8ea6c9;font-size:10px;font-weight:850;letter-spacing:0;line-height:1.1;text-transform:uppercase}.active-army-unit-hover-card{z-index:2000;width:min(360px,calc(100vw - 16px));max-height:min(520px,calc(100vh - 16px));overflow-y:auto;display:grid;grid-gap:10px;gap:10px;padding:12px;border:1px solid rgba(105,135,190,.72);border-radius:8px;background:rgba(12,19,34,.98);box-shadow:0 18px 48px rgba(0,0,0,.42);color:#dbeafe;pointer-events:none}.active-army-unit-hover-header{display:grid;grid-gap:6px;gap:6px;padding-bottom:8px;border-bottom:1px solid rgba(148,163,184,.2)}.active-army-unit-hover-header strong{color:#f8fafc;font-size:15px;line-height:1.2;overflow-wrap:break-word}.active-army-unit-hover-header span{width:-moz-fit-content;width:fit-content;max-width:100%;padding:3px 7px;border:1px solid rgba(148,163,184,.24);border-radius:999px;background:rgba(15,23,42,.64);font-size:11px;font-weight:850;line-height:1.1}.active-army-unit-hover-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:6px;gap:6px}.active-army-unit-hover-stats span{min-width:0;display:grid;grid-gap:3px;gap:3px;padding:7px;border:1px solid rgba(148,163,184,.2);border-radius:7px;background:rgba(15,23,42,.55);color:#f8fafc;font-size:13px;font-weight:850;line-height:1}.active-army-unit-hover-card h5,.active-army-unit-hover-stats strong{margin:0;color:#8ea6c9;font-size:10px;font-weight:850;letter-spacing:0;line-height:1.1;text-transform:uppercase}.active-army-unit-hover-card section{display:grid;grid-gap:5px;gap:5px}.active-army-unit-hover-card p{min-width:0;margin:0;color:#dbeafe;font-size:12px;font-weight:650;line-height:1.35;overflow-wrap:break-word}.active-army-unit-hover-card ul{max-height:120px;overflow-y:auto;display:grid;grid-gap:3px;gap:3px;margin:0;padding-left:16px;color:#dbeafe;font-size:12px;font-weight:650;line-height:1.3}.active-army-unit-hover-card li{overflow-wrap:break-word}.active-army-unit-hover-muted{color:#93a4c3!important;font-size:11px!important}.active-army-unit-details{flex:1 1 100%;min-width:0}.active-army-unit-details>summary{width:-moz-fit-content;width:fit-content;max-width:100%;min-height:24px;display:inline-flex;align-items:center;padding:0 8px;border:1px solid rgba(148,163,184,.28);border-radius:6px;background:rgba(15,23,42,.62);color:#dbeafe;cursor:pointer;font-size:10px;font-weight:800;line-height:1;list-style:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.active-army-unit-details>summary::-webkit-details-marker{display:none}.active-army-unit-details>summary:before{content:">";margin-right:6px;color:#8ea6c9;font-size:10px;font-weight:900;transition:transform .12s ease}.active-army-unit-details[open]>summary:before{transform:rotate(90deg)}.active-army-unit-details>div{max-height:150px;overflow-y:auto;display:grid;grid-gap:8px;gap:8px;margin-top:6px;padding:8px;border:1px solid rgba(148,163,184,.26);border-radius:8px;background:rgba(15,23,42,.72)}.active-army-unit-details p{min-width:0;margin:0;color:#dbeafe;font-size:12px;font-weight:700;line-height:1.35;overflow-wrap:anywhere;white-space:normal}.active-army-unit-details p>span{display:block;margin-bottom:3px;color:#8ea6c9;font-size:10px;font-weight:850;letter-spacing:0;line-height:1.1;text-transform:uppercase}.active-army-unit-actions{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin-top:auto}.active-army-unit-actions>button{min-height:24px;padding:0 7px;border-radius:6px;font-size:10px}@media (max-width:720px){.active-army-unit-grid,.reserve-unit-card-grid{grid-template-columns:minmax(0,1fr)}}.battlemat-asset-preview>img,.library-board-preview,.tts-theme-asset-preview>img{width:100%;height:auto;display:block;border-radius:6px}.battlemat-asset-title{position:absolute;inset:0 0 auto;min-height:40px;display:grid;grid-template-columns:minmax(0,1fr);align-items:start;grid-gap:0;gap:0;padding:6px 8px 14px;background:linear-gradient(180deg,rgba(15,23,42,.88),rgba(15,23,42,.58) 58%,rgba(15,23,42,0));color:#f8fafc;font-size:12px;font-weight:700;line-height:1.16;pointer-events:none}.battlemat-asset-title>span{min-width:0;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow-wrap:anywhere;white-space:normal}.library-preview-asset-card:focus-within .battlemat-asset-title,.library-preview-asset-card:hover .battlemat-asset-title{min-height:54px;background:linear-gradient(180deg,rgba(15,23,42,.94),rgba(15,23,42,.72) 72%,rgba(15,23,42,0))}.library-preview-asset-card:focus-within .battlemat-asset-title>span,.library-preview-asset-card:hover .battlemat-asset-title>span{-webkit-line-clamp:3}.battlemat-status-dots{position:absolute;left:6px;right:6px;bottom:6px;z-index:6;display:flex;align-items:center;gap:4px;overflow:hidden;pointer-events:none}.library-preview-asset-card:focus-within .battlemat-status-dots,.library-preview-asset-card:hover .battlemat-status-dots{flex-wrap:wrap;overflow:hidden}.library-item-card-owned{border-color:color-mix(in srgb,var(--bm-accent) 44%,var(--bm-border))}.library-item-card-community{border-color:color-mix(in srgb,var(--bm-muted) 46%,var(--bm-border))}.tts-theme-section-copy{margin:0 0 10px;line-height:1.35}.tts-theme-controls{display:grid;grid-gap:10px;gap:10px;margin-bottom:10px}.tts-theme-readout{display:grid;grid-gap:3px;gap:3px;padding:8px;border:1px solid color-mix(in srgb,var(--bm-border) 86%,#1f3356);border-radius:8px;background:rgba(7,15,27,.48)}.tts-theme-readout>small,.tts-theme-readout>span{color:var(--bm-muted);font-size:10px;font-weight:800;line-height:1.2;text-transform:uppercase}.tts-theme-readout>strong{min-width:0;overflow-wrap:anywhere;font-size:13px;line-height:1.2}.tts-theme-readout>small{font-size:11px;font-weight:600;text-transform:none}.tts-theme-select-field{display:grid;grid-gap:6px;gap:6px;min-width:0}.battle-planner-sidebar .library-section-body .tts-theme-select-field{overflow-wrap:normal}.tts-theme-select-field>span{font-size:11px;font-weight:700;color:var(--bm-muted);text-transform:uppercase;white-space:nowrap}.tts-theme-select-field>select{width:100%;min-width:0;min-height:34px}.tts-theme-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:6px;gap:6px}.tts-theme-actions>button{min-width:0;min-height:34px;padding:0 8px;font-size:12px}.tts-theme-export-button{min-width:0;min-height:38px;padding:0 10px;font-size:13px;font-weight:800}.tts-theme-payload-review{display:grid;grid-gap:10px;gap:10px;margin:0 0 10px;padding:10px;border:1px solid color-mix(in srgb,var(--bm-border) 88%,#334155);border-radius:8px;background:rgba(8,15,27,.62)}.tts-theme-active-review{margin-top:0}.tts-theme-payload-review-header{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:10px;gap:10px;align-items:start}.tts-theme-payload-review-header strong{display:block;min-width:0;margin-bottom:3px;overflow-wrap:anywhere;font-size:13px;line-height:1.2}.tts-theme-review-state{display:inline-flex;align-items:center;justify-content:center;min-height:24px;max-width:140px;padding:0 8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:800}.tts-theme-review-context,.tts-theme-review-state{border:1px solid color-mix(in srgb,var(--bm-border) 80%,currentColor);border-radius:8px;background:rgba(2,6,23,.34)}.tts-theme-review-context{display:grid;grid-gap:2px;gap:2px;align-content:center;min-width:108px;max-width:156px;min-height:38px;padding:5px 8px}.tts-theme-review-context small{color:var(--bm-muted);font-size:9px;font-weight:800;line-height:1;text-transform:uppercase}.tts-theme-review-context small,.tts-theme-review-context strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tts-theme-review-context strong{margin:0;font-size:11px;line-height:1.15}.tts-theme-review-warning{color:#fde68a}.tts-theme-review-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:6px;gap:6px}.tts-theme-review-stats>span{min-width:0;min-height:46px;display:grid;grid-gap:2px;gap:2px;align-content:center;padding:6px;border:1px solid color-mix(in srgb,var(--bm-border) 78%,#475569);border-radius:8px;background:rgba(15,23,42,.54)}.tts-theme-review-stats strong{min-width:0;font-size:15px;line-height:1.1}.tts-theme-review-stats small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--bm-muted);font-size:10px;line-height:1.1}.tts-theme-review-meta{overflow-wrap:anywhere}.tts-theme-review-legend{display:grid;grid-gap:6px;gap:6px}.tts-theme-review-legend>span{min-width:0;display:grid;grid-gap:2px;gap:2px;padding:7px 8px;border:1px solid color-mix(in srgb,var(--bm-border) 70%,#475569);border-radius:8px;background:rgba(2,6,23,.18)}.tts-theme-review-legend strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:1.1}.tts-theme-review-legend small{min-width:0;color:var(--bm-muted);font-size:10px;line-height:1.25}.tts-theme-review-secondary-action{min-width:0;min-height:32px;padding:0 9px;justify-self:start;border-color:color-mix(in srgb,var(--bm-border) 88%,#475569);background:rgba(2,6,23,.22);color:color-mix(in srgb,var(--bm-text) 86%,var(--bm-muted));font-size:12px;font-weight:700}.tts-theme-review-issues{display:grid;grid-gap:6px;gap:6px;min-width:0}.tts-theme-review-issues>span{min-width:0;display:grid;grid-gap:2px;gap:2px;padding:7px 8px;border:1px solid color-mix(in srgb,var(--bm-border) 75%,currentColor);border-radius:8px;background:rgba(2,6,23,.26)}.tts-theme-review-issues strong{min-width:0;font-size:11px;line-height:1.15}.tts-theme-review-issues small{min-width:0;color:var(--bm-muted);font-size:10px;line-height:1.25}.tts-theme-mapping-review-badges{display:flex;flex-wrap:wrap;gap:5px;min-width:0}.tts-theme-mapping-review-badges>span{min-height:20px;display:inline-flex;align-items:center;padding:0 6px;border:1px solid color-mix(in srgb,var(--bm-border) 75%,currentColor);border-radius:8px;background:rgba(2,6,23,.26);font-size:10px;font-weight:800;line-height:1}.tts-theme-mapping-review-list{display:grid;grid-gap:6px;gap:6px}.tts-theme-mapping-review-row{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:8px;gap:8px;align-items:start;min-width:0;padding:8px;border:1px solid color-mix(in srgb,var(--bm-border) 76%,#334155);border-radius:8px;background:rgba(2,6,23,.2)}.tts-theme-mapping-review-row-error{border-color:color-mix(in srgb,#fca5a5 48%,var(--bm-border))}.tts-theme-mapping-review-main{min-width:0;display:grid;grid-gap:3px;gap:3px}.tts-theme-mapping-review-main span,.tts-theme-mapping-review-main strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tts-theme-mapping-review-main strong{display:grid;grid-gap:2px;gap:2px;font-size:12px;line-height:1.15}.tts-theme-mapping-review-main span{display:grid;grid-gap:2px;gap:2px;color:var(--bm-muted);font-size:11px;line-height:1.2}.tts-theme-mapping-review-main span>span,.tts-theme-mapping-review-main strong>span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:color-mix(in srgb,var(--bm-muted) 82%,transparent);font-size:9px;font-weight:800;line-height:1;text-transform:uppercase}.tts-theme-review-details{display:grid;grid-gap:8px;gap:8px}.tts-theme-review-details>summary{cursor:pointer;color:var(--bm-text);font-size:12px;font-weight:800}@media (max-width:760px){.tts-theme-review-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.tts-theme-mapping-review-row{grid-template-columns:minmax(0,1fr)}.tts-theme-mapping-review-main span,.tts-theme-mapping-review-main strong{white-space:normal}}.tts-theme-link-line{margin:0 0 10px;overflow-wrap:anywhere;color:color-mix(in srgb,var(--bm-muted) 88%,transparent);font-size:12px;line-height:1.35}.tts-theme-card{margin-bottom:0;width:100%;min-width:0;overflow:hidden;background:radial-gradient(circle at top right,rgba(80,186,255,.09),transparent 38%),linear-gradient(180deg,rgba(15,27,45,.96),rgba(9,16,29,.98))}.tts-theme-card-active{border-color:color-mix(in srgb,var(--bm-accent) 68%,var(--bm-border))}.tts-theme-collection-group .library-collection-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px}.tts-theme-collection-group .library-collection-body>.tts-theme-card{min-width:0}.tts-theme-asset-preview{width:100%;max-width:100%;height:82px;min-height:0;aspect-ratio:auto}.tts-theme-asset-preview>img{width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1.16)}.tts-theme-preview-fallback{position:relative;width:100%;height:100%;min-height:0;display:grid;place-items:center;overflow:hidden;color:#dbeafe;background:radial-gradient(circle at 50% 45%,rgba(96,165,250,.26),transparent 25%),linear-gradient(135deg,rgba(15,23,42,.96),rgba(20,83,103,.68))}.tts-theme-preview-orbit{position:absolute;border:1px solid rgba(147,197,253,.34);border-radius:999px;transform:rotate(-18deg)}.tts-theme-preview-orbit-wide{width:88%;height:44%}.tts-theme-preview-orbit-tight{width:58%;height:72%;transform:rotate(28deg)}.tts-theme-preview-core{position:relative;z-index:2;display:grid;place-items:center;width:52px;height:52px;border:1px solid rgba(191,219,254,.52);border-radius:999px;background:rgba(15,23,42,.72);box-shadow:0 10px 24px rgba(2,6,23,.36)}.tts-theme-preview-core>strong{font-size:18px;line-height:1}.tts-theme-preview-core>small{color:rgba(219,234,254,.76);font-size:9px;font-weight:800;letter-spacing:0;line-height:1;text-transform:uppercase}.tts-theme-preview-chip{position:absolute;z-index:3;bottom:8px;max-width:46%;overflow:hidden;padding:2px 6px;border:1px solid rgba(191,219,254,.26);border-radius:999px;background:rgba(15,23,42,.66);color:rgba(248,250,252,.88);font-size:9px;font-weight:800;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.tts-theme-preview-chip-left{left:8px}.tts-theme-preview-chip-right{right:8px}.tts-theme-card-header{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:8px;gap:8px;align-items:start}.tts-theme-card-title-block{min-width:0;display:grid;grid-gap:2px;gap:2px}.tts-theme-card-title-block>strong{min-width:0;overflow-wrap:anywhere;font-size:13px;line-height:1.18}.tts-theme-card-title-block>span{color:var(--bm-muted);font-size:12px;line-height:1.2}.tts-theme-active-badge{border-color:color-mix(in srgb,var(--bm-accent) 58%,var(--bm-border));background:color-mix(in srgb,var(--bm-accent) 28%,rgba(12,21,36,.76))}.tts-theme-card .library-item-badges{gap:4px;margin:0}.tts-theme-card .library-badge{min-height:18px;padding:0 6px;font-size:10px}.tts-theme-card-meta{display:grid;grid-gap:4px;gap:4px}.tts-theme-card-meta>span{min-width:0;display:grid;grid-template-columns:58px minmax(0,1fr);grid-gap:6px;gap:6px;align-items:baseline;color:color-mix(in srgb,var(--bm-muted) 88%,transparent);font-size:11px;line-height:1.2}.tts-theme-card-meta>span>span{color:var(--bm-muted);font-size:10px;font-weight:800;text-transform:uppercase}.tts-theme-card-meta strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--bm-text);font-size:12px}.tts-theme-card-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;grid-gap:6px;gap:6px;align-items:center}.tts-theme-card-actions>button{min-width:0;min-height:34px;padding:0 8px;font-size:12px}.tts-theme-card-actions .library-item-menu{margin-left:0}.tts-theme-card-actions .library-item-menu>button{min-width:34px;min-height:34px;border-radius:8px}.tts-theme-menu-fields{display:grid;grid-gap:10px;gap:10px}.tts-theme-menu-fields select{width:100%;min-width:0;min-height:32px;padding:0 8px;font-size:12px}.tts-theme-primary-action-active{color:color-mix(in srgb,var(--bm-text) 72%,var(--bm-muted))}.terrain-base-preset-card{background:radial-gradient(circle at top right,rgba(59,130,246,.12),transparent 36%),linear-gradient(180deg,rgba(14,24,39,.96),rgba(10,17,29,.98))}.terrain-base-preset-preview{display:block;width:100%;height:auto;margin-bottom:8px}.layout-assets-section-body .terrain-base-preset-preview{margin-bottom:0}.terrain-base-preset-meta{margin:0 0 8px;color:var(--bm-muted);font-size:12px}.terrain-base-variant-toggle{display:inline-flex;gap:6px;margin:0 0 12px;padding:4px;border-radius:999px;border:1px solid var(--bm-border);background:rgba(15,23,42,.78)}.terrain-base-variant-button{border:0;border-radius:999px;background:transparent;color:var(--bm-muted);padding:7px 12px;font-size:12px;font-weight:700;cursor:pointer}.terrain-base-variant-button-active{background:linear-gradient(180deg,rgba(59,130,246,.34),rgba(30,64,175,.5));color:#f8fbff}.library-item-badges{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin:6px 0}.library-item-badges-overlay{position:absolute;left:8px;right:8px;bottom:8px;margin:0}.library-item-collection-line{margin:0 0 6px;font-size:12px;color:color-mix(in srgb,var(--bm-muted) 88%,transparent)}.library-badge{display:inline-flex;align-items:center;min-height:20px;border-radius:999px;padding:0 8px;font-size:11px;font-weight:600;text-decoration:none;border:1px solid color-mix(in srgb,var(--bm-border) 88%,#1f3356);background:rgba(12,21,36,.7);color:var(--bm-text)}.library-badge-owned{border-color:color-mix(in srgb,var(--bm-success) 45%,var(--bm-border));background:color-mix(in srgb,var(--bm-success) 22%,rgba(12,21,36,.78))}.library-badge-community{border-color:color-mix(in srgb,var(--bm-muted) 48%,var(--bm-border));background:color-mix(in srgb,var(--bm-muted) 17%,rgba(12,21,36,.78))}.library-badge-mixed{border-color:color-mix(in srgb,var(--bm-warning) 45%,var(--bm-border));background:color-mix(in srgb,var(--bm-warning) 18%,rgba(12,21,36,.78))}.library-badge-public{border-color:color-mix(in srgb,var(--bm-accent) 50%,var(--bm-border));background:color-mix(in srgb,var(--bm-accent) 24%,rgba(12,21,36,.76))}.library-badge-private{border-color:color-mix(in srgb,var(--bm-danger) 42%,var(--bm-border));background:color-mix(in srgb,var(--bm-danger) 16%,rgba(12,21,36,.76))}.library-badge-owner-self{border-color:color-mix(in srgb,var(--bm-accent-2) 48%,var(--bm-border));background:color-mix(in srgb,var(--bm-accent-2) 22%,rgba(12,21,36,.76))}.library-badge-owner-community{border-color:color-mix(in srgb,var(--bm-accent) 42%,var(--bm-border));background:color-mix(in srgb,var(--bm-accent) 18%,rgba(12,21,36,.76))}.library-badge-approval-community{border-color:color-mix(in srgb,var(--bm-muted) 46%,var(--bm-border));background:color-mix(in srgb,var(--bm-muted) 14%,rgba(12,21,36,.76))}.library-badge-approval-pending{border-color:color-mix(in srgb,var(--bm-warning) 48%,var(--bm-border));background:color-mix(in srgb,var(--bm-warning) 22%,rgba(12,21,36,.76))}.library-badge-approval-approved{border-color:color-mix(in srgb,var(--bm-success) 50%,var(--bm-border));background:color-mix(in srgb,var(--bm-success) 22%,rgba(12,21,36,.76))}.library-badge-approval-rejected{border-color:color-mix(in srgb,var(--bm-danger) 48%,var(--bm-border));background:color-mix(in srgb,var(--bm-danger) 20%,rgba(12,21,36,.76))}a.library-badge:hover{text-decoration:none;filter:brightness(1.08)}.library-item-menu{position:relative;margin-left:auto;z-index:20;flex:0 0 auto}.library-item-menu-open{z-index:90}.library-item-menu>button{cursor:pointer;min-width:36px;min-height:36px;border-radius:10px;border:1px solid var(--bm-border);background:linear-gradient(180deg,rgba(36,52,80,.74),rgba(20,32,54,.86));color:var(--bm-text);display:inline-flex;align-items:center;justify-content:center;font-size:16px;line-height:1}.library-item-menu-panel{z-index:120;min-width:220px;max-width:min(340px,calc(100vw - 56px));padding:6px;border:1px solid var(--bm-border);border-radius:10px;background:rgba(8,16,30,.995);box-shadow:0 12px 24px rgba(2,6,23,.35);display:flex;flex-direction:column;gap:6px}.library-item-menu-panel>button{width:100%;min-height:32px;justify-content:flex-start;text-align:left;padding:0 10px}.library-item-menu-panel>button:disabled{cursor:not-allowed;opacity:.55}.library-item-menu-extra{border-bottom:1px solid color-mix(in srgb,var(--bm-border) 78%,#1f3356);padding:2px 2px 8px;margin-bottom:2px}.library-item-menu-move{display:flex;flex-direction:column;gap:6px}.library-item-menu-move>span{font-size:11px;color:var(--bm-muted)}.library-item-menu-move-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;grid-gap:6px;gap:6px}.library-item-menu-move-row>input{width:100%;min-width:0;min-height:32px;padding:0 8px;font-size:12px}.library-item-menu-move-row>button{min-height:32px;padding:0 10px;font-size:12px}.library-item-menu-danger{border-color:color-mix(in srgb,var(--bm-danger) 38%,var(--bm-border));color:#ffdce1;background:linear-gradient(180deg,rgba(92,33,48,.45),rgba(63,22,33,.62))}.visibility-confirm-overlay{position:fixed;inset:0;z-index:140;background:rgba(2,8,20,.68);display:flex;align-items:center;justify-content:center;padding:20px}.visibility-confirm-dialog{width:min(460px,100%);border:1px solid var(--bm-border-strong);border-radius:var(--bm-radius-md);background:linear-gradient(180deg,rgba(13,24,43,.97),rgba(9,16,31,.99));box-shadow:0 16px 36px rgba(2,6,23,.55);padding:16px}.visibility-confirm-dialog>h3{margin:0 0 8px;font-size:18px}.visibility-confirm-dialog>p{margin:0;color:var(--bm-muted);line-height:1.4}.visibility-confirm-session-toggle{margin-top:12px;display:inline-flex;align-items:center;gap:8px;font-size:12px;color:var(--bm-muted)}.visibility-confirm-actions{margin-top:14px;display:flex;justify-content:flex-end;gap:8px}.editor-confirm-dialog-danger{border-color:color-mix(in srgb,var(--bm-danger) 54%,var(--bm-border-strong))}.editor-confirm-danger-action{border-color:color-mix(in srgb,var(--bm-danger) 54%,var(--bm-border));background:linear-gradient(180deg,rgba(120,40,54,.78),rgba(88,29,41,.9));color:#ffe4e8}.editor-danger-button{border-color:color-mix(in srgb,var(--bm-danger) 48%,var(--bm-border));background:linear-gradient(180deg,rgba(92,33,48,.48),rgba(63,22,33,.66));color:#ffdce1}.editor-assist-toggle{min-height:34px;display:inline-flex;align-items:center;gap:7px;padding:6px 10px;border:1px solid color-mix(in srgb,#4aa6d8 40%,var(--bm-border));border-radius:8px;background:rgba(19,45,69,.46);color:#d8efff;font-size:12px;font-weight:700}.editor-assist-toggle input{accent-color:#4ac995}.editor-assist-button{border-color:color-mix(in srgb,#4aa6d8 44%,var(--bm-border));background:linear-gradient(180deg,rgba(24,71,96,.52),rgba(16,47,70,.66));color:#d8efff}.editor-assist-button:hover:not(:disabled){border-color:color-mix(in srgb,#4ac995 54%,var(--bm-border));background:linear-gradient(180deg,rgba(32,90,72,.54),rgba(18,57,52,.68));color:#dcfff0}.editor-assist-toggle-active{border-color:color-mix(in srgb,#4ac995 52%,var(--bm-border));background:linear-gradient(180deg,rgba(32,90,72,.5),rgba(18,57,52,.64));color:#dcfff0}.active-army-unit-detail-panel,.active-army-unit-details>div,.active-army-unit-grid,.active-army-unit-hover-card,.active-army-unit-hover-card ul,.app-panel,.army-asset-unit-tooltip,.bm-scrollarea,.library-panel,.library-section[open] .library-section-body,.reserve-unit-card-grid{scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--bm-accent) 40%,var(--bm-border)) rgba(10,18,33,.5)}.active-army-unit-detail-panel::-webkit-scrollbar,.active-army-unit-details>div::-webkit-scrollbar,.active-army-unit-grid::-webkit-scrollbar,.active-army-unit-hover-card ul::-webkit-scrollbar,.active-army-unit-hover-card::-webkit-scrollbar,.app-panel::-webkit-scrollbar,.army-asset-unit-tooltip::-webkit-scrollbar,.bm-scrollarea::-webkit-scrollbar,.library-panel::-webkit-scrollbar,.library-section[open] .library-section-body::-webkit-scrollbar,.reserve-unit-card-grid::-webkit-scrollbar{width:10px;height:10px}.active-army-unit-detail-panel::-webkit-scrollbar-track,.active-army-unit-details>div::-webkit-scrollbar-track,.active-army-unit-grid::-webkit-scrollbar-track,.active-army-unit-hover-card ul::-webkit-scrollbar-track,.active-army-unit-hover-card::-webkit-scrollbar-track,.app-panel::-webkit-scrollbar-track,.army-asset-unit-tooltip::-webkit-scrollbar-track,.bm-scrollarea::-webkit-scrollbar-track,.library-panel::-webkit-scrollbar-track,.library-section[open] .library-section-body::-webkit-scrollbar-track,.reserve-unit-card-grid::-webkit-scrollbar-track{background:rgba(10,18,33,.46);border-radius:999px}.active-army-unit-detail-panel::-webkit-scrollbar-thumb,.active-army-unit-details>div::-webkit-scrollbar-thumb,.active-army-unit-grid::-webkit-scrollbar-thumb,.active-army-unit-hover-card ul::-webkit-scrollbar-thumb,.active-army-unit-hover-card::-webkit-scrollbar-thumb,.app-panel::-webkit-scrollbar-thumb,.army-asset-unit-tooltip::-webkit-scrollbar-thumb,.bm-scrollarea::-webkit-scrollbar-thumb,.library-panel::-webkit-scrollbar-thumb,.library-section[open] .library-section-body::-webkit-scrollbar-thumb,.reserve-unit-card-grid::-webkit-scrollbar-thumb{background:linear-gradient(180deg,color-mix(in srgb,var(--bm-accent) 46%,var(--bm-border-strong)) 0,color-mix(in srgb,var(--bm-accent) 28%,var(--bm-border)) 100%);border-radius:999px;border:2px solid rgba(10,18,33,.42)}.active-army-unit-detail-panel::-webkit-scrollbar-thumb:hover,.active-army-unit-details>div::-webkit-scrollbar-thumb:hover,.active-army-unit-grid::-webkit-scrollbar-thumb:hover,.active-army-unit-hover-card ul::-webkit-scrollbar-thumb:hover,.active-army-unit-hover-card::-webkit-scrollbar-thumb:hover,.app-panel::-webkit-scrollbar-thumb:hover,.army-asset-unit-tooltip::-webkit-scrollbar-thumb:hover,.bm-scrollarea::-webkit-scrollbar-thumb:hover,.library-panel::-webkit-scrollbar-thumb:hover,.library-section[open] .library-section-body::-webkit-scrollbar-thumb:hover,.reserve-unit-card-grid::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,color-mix(in srgb,var(--bm-accent-2) 55%,var(--bm-border-strong)) 0,color-mix(in srgb,var(--bm-accent) 34%,var(--bm-border)) 100%)}.section-title{margin-top:0}@media (max-width:1380px){.workspace-shell{grid-template-columns:340px minmax(0,1fr) 340px}}@media (max-width:1080px){.app-page,.legal-card,.legal-page{padding:var(--bm-space-2)}.app-header-titlebar{grid-template-columns:1fr;justify-items:center;text-align:center}.app-header-titlebar-controls,.app-header-titlebar-main{grid-column:1;justify-self:center}.workspace-main-titlebar{grid-template-columns:1fr;justify-items:center;text-align:center;gap:6px}.workspace-main-titlebar-center,.workspace-main-titlebar-left,.workspace-main-titlebar-right{grid-column:1;justify-self:center}.app-nav-row-dense .app-edition-row,.app-nav-row-dense .app-nav-links-row{width:100%}.workspace-shell{grid-template-columns:1fr;height:auto}.app-onboarding-banner{justify-content:center;text-align:center}.app-panel,.workspace-center{min-height:420px;max-height:none}.library-section[open] .library-section-body{max-height:min(56vh,620px)}.account-chip-name{max-width:110px}.directory-card-head,.directory-grid,.profile-asset-groups,.profile-hero-grid,.profile-layout-grid,.profile-stat-grid{grid-template-columns:1fr}.profile-hero-title{font-size:30px}.directory-card-title-row,.profile-asset-row,.profile-info-row{align-items:flex-start;flex-direction:column}}@media (max-width:720px){.auth-page{padding:var(--bm-space-2) 12px;align-items:start}.auth-card{max-width:none;padding:var(--bm-space-2);border-radius:16px}.auth-tabs{display:flex;width:100%}.auth-tab{flex:1 1}.auth-card .app-nav-row{display:grid;grid-template-columns:1fr}.app-header-titlebar-controls,.auth-card .app-nav-row>*{width:100%;justify-content:center}.planner-mobile-gate{padding:18px}.planner-mobile-gate-actions{display:grid;grid-template-columns:1fr}}@media (max-width:1080px){.workspace-shell.battle-planner-shell{grid-template-columns:minmax(0,1fr);height:calc(100vh - 32px);overflow:hidden;position:relative}.workspace-shell.battle-planner-shell .workspace-center{min-height:0;height:100%}.workspace-shell.battle-planner-shell .battle-planner-drawer{position:absolute;top:0;bottom:0;min-height:0;width:min(88vw,380px);max-width:100%;z-index:45;border-radius:0}.workspace-shell.battle-planner-shell .battle-planner-drawer-left{left:0;transform:translateX(-104%)}.workspace-shell.battle-planner-shell .battle-planner-drawer-right{right:0;transform:translateX(104%)}.workspace-shell.battle-planner-shell.battle-planner-shell-left-open .battle-planner-drawer-left,.workspace-shell.battle-planner-shell.battle-planner-shell-right-open .battle-planner-drawer-right{transform:translateX(0)}.battle-planner-drawer-backdrop{position:absolute;inset:0;display:block;border:0;margin:0;padding:0;background:rgba(4,10,22,.58);opacity:0;pointer-events:none;z-index:30;transition:opacity .15s ease}.battle-planner-drawer-backdrop.battle-planner-drawer-backdrop-visible{opacity:1;pointer-events:auto}.battle-planner-panel-toggle>span{display:none}}.map-control-cluster{display:inline-flex;align-items:center;gap:2px;padding:4px;border-radius:999px;border:1px solid color-mix(in srgb,var(--bm-border) 82%,transparent);background:color-mix(in srgb,var(--bm-panel-2) 88%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 8px 22px rgba(2,6,18,.42),0 1px 4px rgba(2,6,18,.35)}.map-control-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:30px;height:30px;padding:0 7px;border-radius:999px;border:1px solid transparent;background:transparent;color:var(--bm-muted);font-size:11.5px;font-weight:650;line-height:1;cursor:pointer;transition:background .12s ease,color .12s ease,border-color .12s ease}.map-control-button:hover{background:color-mix(in srgb,var(--bm-accent) 16%,transparent);color:var(--bm-text)}.map-control-button:focus-visible{outline:2px solid var(--bm-accent);outline-offset:1px}.map-control-button-active{background:color-mix(in srgb,var(--bm-accent) 26%,transparent);border-color:color-mix(in srgb,var(--bm-accent) 48%,var(--bm-border));color:var(--bm-text)}.map-control-divider{width:1px;height:18px;margin:0 3px;background:color-mix(in srgb,var(--bm-border) 85%,transparent)}.map-zoom-percent{min-width:46px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.map-zoom-cluster{position:absolute;right:12px;bottom:12px;z-index:24}.map-view-menu-root{position:absolute;right:12px;top:10px;z-index:25;display:flex;flex-direction:column;align-items:flex-end;gap:6px}.map-view-menu-trigger>span:not(.map-view-menu-count){white-space:nowrap}.map-view-menu-count{display:inline-grid;place-items:center;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:color-mix(in srgb,var(--bm-accent) 34%,transparent);color:var(--bm-text);font-size:10px;font-weight:700}.map-view-menu-panel{display:grid;grid-gap:2px;gap:2px;min-width:216px;max-height:min(66vh,480px);overflow-y:auto;padding:6px;border-radius:var(--bm-radius-md);border:1px solid var(--bm-border);background:color-mix(in srgb,var(--bm-panel-2) 96%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 16px 38px rgba(2,6,18,.5)}.map-view-menu-item{display:flex;align-items:center;gap:9px;width:100%;min-height:30px;padding:0 9px;border:none;border-radius:8px;background:transparent;color:var(--bm-muted);font-size:12px;font-weight:600;text-align:left;cursor:pointer}.map-view-menu-item:hover{background:color-mix(in srgb,var(--bm-accent) 14%,transparent);color:var(--bm-text)}.map-view-menu-item-active{color:var(--bm-text)}.map-view-menu-check{display:inline-grid;place-items:center;width:15px;height:15px;border-radius:5px;border:1px solid var(--bm-border-strong);background:color-mix(in srgb,var(--bm-panel) 70%,transparent);color:var(--bm-accent-2);flex:0 0 auto}.map-view-menu-item-active .map-view-menu-check{border-color:color-mix(in srgb,var(--bm-accent) 62%,var(--bm-border-strong));background:color-mix(in srgb,var(--bm-accent) 30%,transparent)}.map-view-menu-footer{margin-top:4px;padding-top:6px;border-top:1px solid color-mix(in srgb,var(--bm-border) 80%,transparent);display:grid;grid-gap:2px;gap:2px}.workspace-toast-viewport{position:fixed;left:50%;bottom:22px;transform:translateX(-50%);z-index:90;display:flex;flex-direction:column;align-items:center;gap:8px;pointer-events:none}.workspace-toast{display:flex;align-items:center;gap:9px;max-width:min(520px,calc(100vw - 32px));padding:9px 12px;border-radius:12px;border:1px solid var(--bm-border);background:color-mix(in srgb,var(--bm-panel-2) 96%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 14px 34px rgba(2,6,18,.5);color:var(--bm-text);font-size:12.5px;font-weight:600;pointer-events:auto;animation:workspace-toast-in .16s ease-out}@keyframes workspace-toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.workspace-toast-dot{width:8px;height:8px;border-radius:999px;flex:0 0 auto;background:var(--bm-accent)}.workspace-toast-success .workspace-toast-dot{background:var(--bm-success)}.workspace-toast-error .workspace-toast-dot{background:var(--bm-danger)}.workspace-toast-error{border-color:color-mix(in srgb,var(--bm-danger) 45%,var(--bm-border))}.workspace-toast-message{min-width:0}.workspace-toast-close{border:none;background:transparent;color:var(--bm-muted);font-size:15px;line-height:1;padding:2px 4px;cursor:pointer;border-radius:6px}.workspace-toast-close:hover{color:var(--bm-text);background:color-mix(in srgb,var(--bm-accent) 16%,transparent)}.workspace-confirm-backdrop{position:fixed;inset:0;z-index:95;display:grid;place-items:center;padding:20px;background:rgba(4,8,18,.62);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.workspace-confirm-dialog{width:min(420px,100%);padding:18px;border-radius:var(--bm-radius-lg);border:1px solid var(--bm-border-strong);background:linear-gradient(180deg,color-mix(in srgb,var(--bm-panel) 98%,transparent) 0,var(--bm-panel-2) 100%);box-shadow:0 24px 60px rgba(2,6,18,.6)}.workspace-confirm-title{margin:0 0 8px;font-size:15px}.workspace-confirm-message{margin:0 0 16px;color:var(--bm-muted);font-size:13px;line-height:1.5}.workspace-confirm-actions{display:flex;justify-content:flex-end;gap:8px}.workspace-confirm-accept,.workspace-confirm-cancel{min-height:32px;padding:0 14px;border-radius:10px;font-size:12.5px;font-weight:650;cursor:pointer}.workspace-confirm-cancel{border:1px solid var(--bm-border);background:transparent;color:var(--bm-muted)}.workspace-confirm-cancel:hover{color:var(--bm-text);border-color:var(--bm-border-strong)}.workspace-confirm-accept{border:1px solid color-mix(in srgb,var(--bm-accent) 60%,var(--bm-border));background:linear-gradient(180deg,rgba(87,145,233,.5),rgba(34,61,105,.72));color:var(--bm-text)}.workspace-confirm-accept-danger{border-color:color-mix(in srgb,var(--bm-danger) 62%,var(--bm-border));background:linear-gradient(180deg,rgba(220,76,92,.5),rgba(120,32,44,.72))}.hotkey-help-backdrop{position:fixed;inset:0;z-index:94;display:grid;place-items:center;padding:20px;background:rgba(4,8,18,.62);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.hotkey-help-dialog{width:min(760px,100%);max-height:min(82vh,640px);overflow-y:auto;padding:18px 20px;border-radius:var(--bm-radius-lg);border:1px solid var(--bm-border-strong);background:linear-gradient(180deg,color-mix(in srgb,var(--bm-panel) 98%,transparent) 0,var(--bm-panel-2) 100%);box-shadow:0 24px 60px rgba(2,6,18,.6)}.hotkey-help-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.hotkey-help-head h2{margin:0;font-size:15px}.hotkey-help-close{border:none;background:transparent;color:var(--bm-muted);font-size:20px;line-height:1;cursor:pointer;border-radius:8px;padding:2px 8px}.hotkey-help-close:hover{color:var(--bm-text);background:color-mix(in srgb,var(--bm-accent) 16%,transparent)}.hotkey-help-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:14px 18px;gap:14px 18px}.hotkey-help-section{display:grid;grid-gap:6px;gap:6px;align-content:start}.hotkey-help-section strong{font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:.06em;color:var(--bm-muted)}.hotkey-help-entry{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--bm-text)}.hotkey-help-keys{display:inline-flex;align-items:center;gap:3px;flex:0 0 auto;min-width:74px}.hotkey-help-key-sep{color:var(--bm-muted);font-size:10px}.hotkey-help-dialog kbd{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:6px;border:solid var(--bm-border-strong);border-width:1px 1px 2px;background:var(--bm-panel);color:var(--bm-accent-2);font-family:inherit;font-size:10.5px;font-weight:700}.hotkey-help-footnote{margin:14px 0 0;color:var(--bm-muted);font-size:11.5px}.workspace-guide-card{position:absolute;left:14px;top:12px;z-index:23;width:min(320px,calc(100% - 28px));padding:13px 14px;border-radius:var(--bm-radius-md);border:1px solid color-mix(in srgb,var(--bm-accent) 34%,var(--bm-border));background:color-mix(in srgb,var(--bm-panel-2) 94%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 16px 38px rgba(2,6,18,.48)}.workspace-guide-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.workspace-guide-head strong{font-size:13px}.workspace-guide-dismiss{border:none;background:transparent;color:var(--bm-muted);font-size:11px;font-weight:650;cursor:pointer;padding:2px 6px;border-radius:6px}.workspace-guide-dismiss:hover{color:var(--bm-text);background:color-mix(in srgb,var(--bm-accent) 16%,transparent)}.workspace-guide-intro{margin:6px 0 0;color:var(--bm-muted);font-size:11.5px;line-height:1.45}.workspace-guide-steps{list-style:none;margin:10px 0 0;padding:0;display:grid;grid-gap:7px;gap:7px}.workspace-guide-step{display:flex;align-items:center;gap:9px;padding:7px 8px;border-radius:10px;border:1px solid transparent;color:var(--bm-muted)}.workspace-guide-step-current{border-color:color-mix(in srgb,var(--bm-accent) 40%,var(--bm-border));background:color-mix(in srgb,var(--bm-accent) 10%,transparent);color:var(--bm-text)}.workspace-guide-step-done{color:color-mix(in srgb,var(--bm-success) 75%,var(--bm-muted))}.workspace-guide-step-marker{display:inline-grid;place-items:center;width:19px;height:19px;border-radius:999px;border:1px solid var(--bm-border-strong);background:var(--bm-panel);font-size:10.5px;font-weight:700;flex:0 0 auto}.workspace-guide-step-done .workspace-guide-step-marker{border-color:color-mix(in srgb,var(--bm-success) 60%,var(--bm-border-strong));color:var(--bm-success)}.workspace-guide-step-body{display:grid;grid-gap:1px;gap:1px;min-width:0;flex:1 1 auto}.workspace-guide-step-label{font-size:12px;font-weight:650}.workspace-guide-step-hint{font-size:10.5px;color:var(--bm-muted)}.workspace-guide-step-action{flex:0 0 auto;min-height:26px;padding:0 10px;border-radius:999px;border:1px solid color-mix(in srgb,var(--bm-accent) 55%,var(--bm-border));background:linear-gradient(180deg,rgba(87,145,233,.42),rgba(34,61,105,.6));color:var(--bm-text);font-size:11px;font-weight:650;cursor:pointer}.map-stage-space-pan,.map-stage-space-pan svg{cursor:-webkit-grab!important;cursor:grab!important}.map-stage-space-panning,.map-stage-space-panning svg{cursor:-webkit-grabbing!important;cursor:grabbing!important}.workspace-guide-target-flash{animation:workspace-guide-target-pulse 2.4s ease-out}@keyframes workspace-guide-target-pulse{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--bm-warning) 90%,transparent)}30%{box-shadow:0 0 0 7px color-mix(in srgb,var(--bm-warning) 65%,transparent),0 0 24px 3px color-mix(in srgb,var(--bm-warning) 60%,transparent)}55%{box-shadow:0 0 0 2px color-mix(in srgb,var(--bm-warning) 75%,transparent)}80%{box-shadow:0 0 0 6px color-mix(in srgb,var(--bm-warning) 45%,transparent),0 0 20px 3px color-mix(in srgb,var(--bm-warning) 45%,transparent)}to{box-shadow:0 0 0 0 color-mix(in srgb,var(--bm-warning) 0%,transparent)}}.render-spike-page{display:flex;flex-direction:column;gap:10px;height:100vh;box-sizing:border-box;padding:12px 16px}.render-spike-header{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px}.render-spike-header h1{margin:0;font-size:16px}.render-spike-controls{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;font-size:12px}.render-spike-controls label{gap:6px;font-weight:600}.render-spike-controls label,.render-spike-hud{display:inline-flex;align-items:center;color:var(--bm-muted)}.render-spike-hud{gap:14px;margin-left:auto;padding:6px 12px;border-radius:999px;border:1px solid var(--bm-border);background:var(--bm-panel-2);font-size:12px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.render-spike-hud strong{color:var(--bm-text)}.render-spike-panes{display:grid;grid-template-columns:1fr;grid-gap:12px;gap:12px;flex:1 1;min-height:0}.render-spike-panes-split{grid-template-columns:1fr 1fr}.render-spike-pane{display:flex;flex-direction:column;gap:6px;min-height:0;min-width:0}.render-spike-pane h2{margin:0;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--bm-muted)}.render-spike-board{position:relative;flex:1 1;min-height:0;border:1px solid var(--bm-border);border-radius:var(--bm-radius-md);overflow:hidden;background:#0d1424;touch-action:none}.render-spike-layer{position:absolute;inset:0;width:100%;height:100%;display:block}.render-spike-board svg.render-spike-layer{cursor:-webkit-grab;cursor:grab}.render-spike-note{margin:0;font-size:11.5px;color:var(--bm-muted)}.board-lab-page{display:flex;flex-direction:column;gap:10px;height:100vh;box-sizing:border-box;padding:12px 16px}.board-lab-header{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px}.board-lab-header h1{margin:0;font-size:16px}.board-lab-controls{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;font-size:12px}.board-lab-controls label{display:inline-flex;align-items:center;gap:6px;color:var(--bm-muted);font-weight:600}.board-lab-controls button{min-height:26px;padding:0 10px;border-radius:999px;font-size:11.5px;font-weight:650}.board-lab-fps{margin-left:auto;padding:5px 12px;border-radius:999px;border:1px solid var(--bm-border);background:var(--bm-panel-2);font-size:12px;color:var(--bm-muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.board-lab-fps strong{color:var(--bm-text)}.board-lab-stage{position:relative;flex:1 1;min-height:0;border:1px solid var(--bm-border);border-radius:var(--bm-radius-md);overflow:hidden;background:#070c16;touch-action:none}.board-lab-layer{position:absolute;inset:0;width:100%;height:100%;display:block}.board-lab-tooltip{position:fixed;z-index:40;pointer-events:none;display:grid;grid-gap:2px;gap:2px;min-width:170px;padding:9px 11px;border-radius:10px;border:1px solid var(--bm-border-strong);background:rgba(9,14,26,.94);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 14px 32px rgba(2,6,18,.55);font-size:11.5px;color:var(--bm-muted)}.board-lab-tooltip strong{font-size:12.5px;color:var(--bm-text);margin-bottom:2px}.board-lab-tooltip-side-0{border-color:rgba(79,143,232,.65)}.board-lab-tooltip-side-1{border-color:rgba(240,121,56,.65)}.board-lab-note{margin:0;font-size:11.5px;color:var(--bm-muted)}.board-canvas-layer{position:absolute;inset:0;width:100%;height:100%;display:block}