:root{--bg:#121510;--surface:#1a1e16;--surface-2:#22271c;--surface-3:#2b3124;--line:#333a2a;--line-strong:#48513b;--text:#ece7d6;--text-2:#c4bfab;--muted:#8f8f7a;--accent:#d9b45a;--accent-strong:#f0cd72;--accent-ink:#1a1508;--danger:#ef6b5b;--warn:#e0894f;--focus:#f0cd72;--r-sm:6px;--r:10px;--shadow:0 10px 30px #00000073, 0 2px 6px #0000004d;--font:"Segoe UI", system-ui, -apple-system, "Helvetica Neue", sans-serif;--mono:"Cascadia Code", ui-monospace, Consolas, monospace;--toolbar-w:56px;--sidebar-w:320px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#app{height:100%;margin:0}body{background:var(--bg);color:var(--text);font:14px/1.45 var(--font);-webkit-font-smoothing:antialiased}button,input,select{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.4}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}kbd{min-width:18px;font:600 11px/17px var(--mono);text-align:center;color:var(--text-2);background:var(--surface-3);border:1px solid var(--line-strong);border-bottom-width:2px;border-radius:4px;padding:0 5px;display:inline-block}.muted{color:var(--muted)}.mono{font-family:var(--mono);font-size:12px}.shell{grid-template:"top top top" auto "tools stage side" 1fr / var(--toolbar-w) minmax(0, 1fr) var(--sidebar-w);height:100%;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);display:grid}@supports (height:100dvh){.shell{height:100dvh}}.stage{grid-area:stage;min-width:0;position:relative;overflow:hidden}.map{position:absolute;inset:0}.sidebar{overscroll-behavior:contain;background:var(--surface);border-left:1px solid var(--line);grid-area:side;overflow:hidden auto}.sheet-handle{display:none}.topbar{scrollbar-width:none;background:var(--surface);border-bottom:1px solid var(--line);grid-area:top;align-items:center;gap:12px;min-width:0;height:52px;padding:0 12px 0 14px;display:flex;overflow:auto hidden}.brand{white-space:nowrap;align-items:center;gap:8px;display:flex}.brand-mark{fill:none;width:22px;height:22px;stroke:var(--accent);stroke-width:2.4px;stroke-linejoin:round}.brand-name{letter-spacing:.1em;text-transform:uppercase;font-size:13px;font-weight:700}.plan-title{border-radius:var(--r-sm);width:200px;min-width:80px;color:var(--text-2);text-overflow:ellipsis;background:0 0;border:1px solid #0000;padding:5px 8px;font-weight:600}.plan-title:hover{border-color:var(--line)}.plan-title:focus{border-color:var(--accent);background:var(--bg);color:var(--text);outline:none}.topbar-actions{align-items:center;gap:8px;margin-left:auto;display:flex}.topbar::-webkit-scrollbar{display:none}.btn-group{border-right:1px solid var(--line);gap:2px;padding-right:8px;display:flex}.icon-btn{border-radius:var(--r-sm);width:34px;height:34px;color:var(--text-2);background:0 0;border:0;flex:none;place-items:center;padding:0;display:inline-grid}.icon-btn.sm{width:26px;height:26px}.icon-btn:not(:disabled):hover{background:var(--surface-3);color:var(--text)}.icon-btn.on{color:var(--accent)}.icon-btn.danger:not(:disabled):hover{color:var(--danger)}.btn{background:var(--surface-3);border:1px solid var(--line-strong);border-radius:var(--r-sm);align-items:center;gap:6px;height:32px;padding:0 12px;font-size:13px;font-weight:600;display:inline-flex}.btn:not(:disabled):hover{border-color:var(--accent)}.btn.danger{background:var(--danger);border-color:var(--danger);color:#1b0b07}.btn.danger:hover{background:#ff8070}.search{flex:0 340px;min-width:120px;margin-left:4px;position:relative}.search input{background:var(--bg);border:1px solid var(--line);border-radius:var(--r-sm);outline:none;width:100%;height:34px;padding:0 34px 0 12px}.search input:focus{border-color:var(--accent)}.search input::-webkit-search-cancel-button{display:none}.search kbd{position:absolute;top:50%;right:8px;transform:translateY(-50%)}.search-results{z-index:1100;background:var(--surface-2);border:1px solid var(--line-strong);border-radius:var(--r);box-shadow:var(--shadow);margin:0;padding:4px;list-style:none;position:absolute;top:calc(100% + 6px);left:0;right:0}.search-results li{border-radius:var(--r-sm);cursor:pointer;align-items:center;gap:8px;padding:7px 8px;display:flex}.search-results li.active{background:var(--surface-3)}.r-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.r-nation{color:var(--muted);white-space:nowrap;font-size:12px}.toolbar{background:var(--surface);border-right:1px solid var(--line);z-index:1001;flex-direction:column;grid-area:tools;align-items:center;gap:4px;padding:10px 0;display:flex}.toolbar-sep{background:var(--line-strong);width:28px;height:1px;margin:4px 0}.tool-btn{border-radius:var(--r);width:40px;height:40px;color:var(--text-2);background:0 0;border:1px solid #0000;place-items:center;padding:0;transition:background .12s,color .12s;display:grid;position:relative}.tool-btn:hover{background:var(--surface-3);color:var(--text)}.tool-btn.active{background:var(--accent);color:var(--accent-ink);box-shadow:0 0 0 3px #d9b45a2e}.tool-key{font:600 9px var(--mono);opacity:.55;position:absolute;bottom:1px;right:3px}.tool-tip{text-align:left;background:var(--surface-2);border:1px solid var(--line-strong);border-radius:var(--r-sm);width:max-content;max-width:240px;box-shadow:var(--shadow);color:var(--text);pointer-events:none;opacity:0;visibility:hidden;padding:8px 10px;font-size:13px;transition:opacity .12s .25s;position:absolute;top:50%;left:calc(100% + 10px);transform:translateY(-50%)}.tool-tip small{color:var(--muted);margin-top:2px;font-size:12px;line-height:1.35;display:block}.tool-btn:hover .tool-tip,.tool-btn:focus-visible .tool-tip{opacity:1;visibility:visible}.floating{border:1px solid var(--line-strong);border-radius:var(--r);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#1a1e16eb}.map-chrome{z-index:1000;pointer-events:none;flex-direction:column;justify-content:space-between;gap:8px;display:flex;position:absolute;inset:12px}.map-chrome .tool-options,.map-chrome .follow-banner,.map-chrome .toast,.map-chrome .menu,.map-chrome .phase-bar,.map-chrome .zoom-ctl{pointer-events:auto}.chrome-top{flex-direction:column;align-items:center;gap:8px;min-height:0;display:flex}.chrome-notices{align-self:stretch;align-items:flex-start;gap:8px;display:flex}.map-chrome{--chrome-h:40px}.chrome-surface{border:1px solid var(--line-strong);border-radius:var(--r);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#1a1e16f0}.chrome-btn{border-radius:var(--r-sm);min-width:30px;height:30px;color:var(--text-2);background:0 0;border:0;flex:none;place-items:center;padding:0 6px;display:inline-grid}.chrome-btn:hover:not(:disabled){background:var(--surface-3);color:var(--text)}.chrome-btn:disabled{opacity:.35;cursor:default}.chrome-sep{background:var(--line-strong);flex:none;width:1px;height:20px;margin:0 2px}.chrome-bottom{align-items:flex-end;gap:8px;display:flex}.chrome-left{flex-wrap:wrap-reverse;flex:1;align-items:flex-end;gap:8px;min-width:0;display:flex}.chrome-row{flex:0 auto;align-items:center;gap:8px;min-width:0;display:flex}.zoom-ctl{height:var(--chrome-h);pointer-events:auto;align-items:center;gap:2px;padding:0 4px;display:flex}.tool-options{max-width:100%;min-height:var(--chrome-h);border:1px solid var(--line-strong);border-radius:var(--r);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#1a1e16f0;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 10px;padding:4px 10px;display:flex}.to-title{letter-spacing:.06em;text-transform:uppercase;color:var(--accent);white-space:nowrap;font-size:12px;font-weight:700}.to-sep{background:var(--line-strong);flex:none;width:1px;height:22px}.to-target{color:var(--muted);white-space:nowrap;font-size:12px}.segmented{background:var(--bg);border:1px solid var(--line);border-radius:var(--r-sm);padding:2px;display:inline-flex}.segmented button{height:28px;color:var(--text-2);white-space:nowrap;background:0 0;border:0;border-radius:4px;padding:0 10px;font-size:13px;font-weight:600}.segmented button:hover{color:var(--text)}.segmented button[aria-checked=true]{background:var(--surface-3);color:var(--text);box-shadow:inset 0 0 0 1px var(--line-strong)}.swatches{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.swatch-btn{background:var(--c);border:2px solid #00000059;border-radius:50%;width:22px;height:22px;padding:0}.swatch-btn[aria-checked=true]{box-shadow:0 0 0 2px var(--bg), 0 0 0 4px var(--text)}.swatch-btn.nation{background:var(--surface-3);border:1px solid var(--line-strong);white-space:nowrap;border-radius:11px;align-items:center;gap:6px;width:auto;height:22px;padding:0 9px 0 4px;font-size:11px;font-weight:700;display:inline-flex}.swatch-dot{border-radius:50%;width:14px;height:14px;box-shadow:inset 0 0 0 1px #0006}.player-pick{gap:6px;min-width:0;display:flex}.player-pick.many{scrollbar-width:thin;flex-wrap:wrap;flex:100%;justify-content:center;max-height:min(25vh,156px);padding:3px;overflow-y:auto}.player-pick.many .pick-sep{flex-basis:100%;height:0}.pick-chip{background:var(--bg);border:1px solid var(--line);white-space:nowrap;border-radius:15px;flex:none;align-items:center;gap:6px;height:30px;padding:0 8px 0 10px;font-size:13px;font-weight:600;display:inline-flex}.pick-chip:hover{border-color:var(--line-strong)}.pick-chip[aria-checked=true]{border-color:var(--accent);background:var(--surface-3);box-shadow:0 0 0 2px #d9b45a33}.pick-chip kbd{margin-left:2px}.dot{border-radius:50%;flex:none;width:10px;height:10px;display:inline-block;box-shadow:0 0 0 1px #0006}.icon-pick{flex-wrap:wrap;gap:4px;display:flex}.picker-btn{background:var(--bg);border:1px solid var(--line);border-radius:var(--r-sm);height:30px;color:var(--text-2);white-space:nowrap;align-items:center;gap:6px;padding:0 8px;font-size:13px;font-weight:600;display:inline-flex}.picker-btn:hover{border-color:var(--line-strong);color:var(--text)}.picker-swatch{border-radius:50%;flex:none;width:16px;height:16px;box-shadow:inset 0 0 0 2px #00000059}.picker-icon{place-items:center;display:inline-grid}.picker-icon svg{width:26px;height:18px}.picker-icon.round svg{width:20px;height:20px}.picker-menu .menu-panel{width:max-content;padding:2px 12px 12px}.picker-menu .swatches{grid-template-columns:repeat(6,22px);gap:8px;display:grid}.picker-menu .swatch-btn.nation{grid-column:1/-1;justify-self:start}.picker-menu .icon-pick{grid-template-columns:repeat(4,auto);display:grid}.icon-pick-btn{background:var(--bg);border:1px solid var(--line);border-radius:var(--r-sm);place-items:center;width:44px;height:34px;padding:0;display:grid}.icon-pick-btn.round{width:38px}.icon-pick-btn svg{width:30px;height:20px}.icon-pick-btn.round svg{width:26px;height:26px}.icon-pick-btn:hover{border-color:var(--line-strong)}.icon-pick-btn[aria-checked=true]{border-color:var(--accent);background:var(--surface-3)}.map-btn{height:var(--chrome-h);color:var(--text-2);flex:none;align-items:center;gap:7px;padding:0 12px;font-size:13px;font-weight:600;display:inline-flex}.map-btn:hover{color:var(--text);background:#24291ff5}.statusbar{min-width:0;min-height:var(--chrome-h);color:var(--text-2);pointer-events:none;flex:0 auto;align-items:center;gap:8px;padding:6px 14px;font-size:12.5px;line-height:1.4;display:flex}.statusbar-icon{color:var(--accent);flex:none}.phase-bar{min-width:0;height:var(--chrome-h);scrollbar-width:thin;flex:0 auto;align-items:center;gap:2px;padding:0 4px;display:flex;overflow-x:auto}.phase-bar-icon{width:28px;color:var(--muted);flex:none;place-items:center;display:grid}.phase-chip-wrap{flex:none;align-items:center;display:flex}.phase-chip{border-radius:var(--r-sm);height:30px;color:var(--text-2);white-space:nowrap;background:0 0;border:1px solid #0000;align-items:center;gap:6px;padding:0 10px;font-size:13px;font-weight:600;display:inline-flex}.phase-chip:hover{background:var(--surface-3);color:var(--text)}.phase-chip[aria-pressed=true]{background:var(--accent);color:var(--accent-ink)}.phase-num{font:700 11px var(--mono);opacity:.7}.phase-chip-wrap:has(.phase-del) .phase-chip{padding-right:30px}.phase-del{width:20px;height:20px;color:var(--accent-ink);background:0 0;border:0;border-radius:4px;place-items:center;margin-left:-26px;margin-right:6px;padding:0;display:grid}.phase-del:hover{background:#0000002e}.phase-input{background:var(--bg);border:1px solid var(--accent);border-radius:var(--r-sm);outline:none;width:120px;height:30px;padding:0 8px}.phase-add{border:1px dashed var(--line-strong);border-radius:var(--r-sm);height:30px;color:var(--text-2);white-space:nowrap;background:0 0;flex:none;align-items:center;gap:4px;margin-left:2px;padding:0 10px;font-size:12.5px;display:inline-flex}.phase-add:hover{border-color:var(--accent);color:var(--text)}.toasts{z-index:1050;flex-direction:column;align-items:flex-end;gap:8px;margin-left:auto;display:flex}.toast{background:var(--surface-2);border:1px solid var(--line-strong);border-radius:var(--r-sm);box-shadow:var(--shadow);align-items:center;gap:10px;padding:8px 8px 8px 14px;font-size:13px;display:flex}.toast-action{color:var(--accent-strong);background:0 0;border:0;border-radius:4px;padding:4px 6px;font-weight:700}.toast-action:hover{background:var(--surface-3)}.toast-enter-from,.toast-leave-to{opacity:0;transform:translateY(-6px)}.toast-enter-active,.toast-leave-active{transition:all .18s}.panel{border-bottom:1px solid var(--line)}.panel-bar{align-items:center;min-height:40px;padding:0 8px 0 4px;display:flex}.panel-toggle,.panel-title{text-align:left;background:0 0;border:0;flex:1;align-items:center;gap:6px;padding:10px 8px;display:flex}.panel h2{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0;font-size:11px;font-weight:700}.panel-title{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0;padding-left:12px;font-size:11px;font-weight:700}.panel-toggle:hover h2{color:var(--text-2)}.chev{color:var(--muted);transition:transform .15s}.panel.closed .chev{transform:rotate(-90deg)}.panel-actions{gap:2px;display:flex}.panel-body{padding:0 16px 16px}.badge{font:600 11px/18px var(--font);color:var(--text-2);background:var(--surface-3);border-radius:9px;padding:0 7px}.empty-state{color:var(--muted);margin:0;font-size:13px}.empty-state p{color:var(--text-2);margin:0 0 8px}.quick-tips{gap:7px;margin:0;padding:0;list-style:none;display:grid}.quick-tips li{line-height:1.6}.quick-tips kbd{margin-right:2px}.insp-head{align-items:center;gap:10px;margin-bottom:14px;display:flex}.insp-icon{border-radius:var(--r-sm);background:var(--surface-3);flex:none;place-items:center;width:34px;height:34px;display:grid}.insp-title{flex-direction:column;flex:1;min-width:0;display:flex}.insp-title strong{text-overflow:ellipsis;white-space:nowrap;font-size:15px;overflow:hidden}.insp-title small{font-size:12px}.province-name{font-size:18px!important}.field{flex-direction:column;gap:5px;min-width:0;margin-bottom:12px;display:flex}.field>span{color:var(--text-2);font-size:12px;font-weight:600}.field.inline{flex-direction:row;align-items:center;gap:10px}.field.inline>span{width:70px}.field-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;display:grid}.field input:not([type=range]):not([type=checkbox]):not([type=radio]),.field select,.add-row input{background:var(--bg);border:1px solid var(--line);border-radius:var(--r-sm);outline:none;width:100%;height:32px;padding:0 10px}.field.inline input{width:90px!important}.field input:focus,.field select:focus,.add-row input:focus{border-color:var(--accent)}.field input[type=range]{accent-color:var(--accent)}.assign-box{border-radius:var(--r-sm);background:color-mix(in srgb, var(--c) 10%, var(--surface-2));border:1px solid color-mix(in srgb, var(--c) 55%, var(--line));border-left-width:4px;margin:0 0 12px;padding:12px 12px 0}.swatch{border-radius:2px;flex:none;width:10px;height:10px;display:inline-block;box-shadow:inset 0 0 0 1px #00000059}.swatch.lg{border-radius:var(--r-sm);width:34px;height:34px}.facts{grid-template-columns:auto 1fr;gap:6px 16px;margin:0;font-size:13px;display:grid}.facts dt{color:var(--muted)}.facts dd{margin:0}.tag{background:var(--surface-3);border:1px solid var(--line-strong);white-space:nowrap;border-radius:99px;padding:1px 8px;font-size:11px;font-weight:700}.tag.warn{color:var(--warn);border-color:color-mix(in srgb, var(--warn) 40%, transparent)}.tag.me{color:var(--accent-strong);border-color:color-mix(in srgb, var(--accent) 45%, transparent)}.tag.ghost{color:var(--muted);background:0 0;border-style:dashed}.tag.ghost:hover{color:var(--text);border-color:var(--accent)}.sub{margin:16px 0 8px;font-size:13px;font-weight:600}.chips{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.chip{background:var(--surface-2);border:1px solid var(--line);border-radius:99px;align-items:center;gap:6px;padding:3px 9px;font-size:12px;display:inline-flex}.chip:hover{border-color:var(--accent)}.chip.foreign{border-color:color-mix(in srgb, var(--warn) 45%, var(--line))}.chip-tag{font:600 10px var(--mono);color:var(--warn)}.rows{grid-template-columns:minmax(0,1fr);gap:2px;margin:0 0 10px;padding:0;list-style:none;display:grid}.row{border-radius:var(--r-sm);align-items:center;gap:6px;min-height:36px;padding:2px 4px;display:flex;position:relative}.row:hover{background:var(--surface-2)}.row-name{text-overflow:ellipsis;background:0 0;border:1px solid #0000;border-radius:4px;flex:1;min-width:0;height:28px;padding:0 6px;font-weight:600}.row-name:hover{border-color:var(--line)}.row-name:focus{border-color:var(--accent);background:var(--bg);outline:none}.dot-btn{border:2px solid #0006;border-radius:50%;flex:none;width:18px;height:18px;padding:0}.dot-btn:hover{box-shadow:0 0 0 2px var(--text-2)}.count-btn{min-width:34px;height:24px;font:700 12px var(--mono);background:var(--surface-3);border:1px solid var(--line-strong);border-radius:12px;padding:0 8px}.count-btn:not(:disabled):hover{border-color:var(--accent)}.row-popover{z-index:5;background:var(--surface-2);border:1px solid var(--line-strong);border-radius:var(--r-sm);box-shadow:var(--shadow);padding:8px;position:absolute;top:100%;left:0}.layer-row.active{background:var(--surface-2);box-shadow:inset 3px 0 0 var(--accent)}.layer-row.hidden .row-name{color:var(--muted);text-decoration:line-through}.layer-radio{accent-color:var(--accent);margin:0 2px}.add-row{gap:6px;display:flex}.toggle{cursor:pointer;align-items:flex-start;gap:10px;padding:6px 0;display:flex}.toggle input{opacity:0;pointer-events:none;position:absolute}.toggle small{font-size:11.5px;display:block}.toggle-track{background:var(--line-strong);border-radius:99px;flex:none;width:32px;height:18px;margin-top:1px;transition:background .15s;position:relative}.toggle-track:after{content:"";background:var(--text);border-radius:50%;width:14px;height:14px;transition:transform .15s;position:absolute;top:2px;left:2px}.toggle input:checked+.toggle-track{background:var(--accent)}.toggle input:checked+.toggle-track:after{background:var(--accent-ink);transform:translate(14px)}.toggle input:focus-visible+.toggle-track{outline:2px solid var(--focus);outline-offset:2px}.menu{flex:none;position:relative}.menu-btn[aria-expanded=true]{border-color:var(--accent);color:var(--text)}.menu-chev{color:var(--muted);transition:transform .15s}.menu-btn[aria-expanded=true] .menu-chev{transform:rotate(180deg)}.menu-panel{z-index:1150;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r);width:300px;max-width:calc(100vw - 24px);box-shadow:var(--shadow);padding:4px 16px 16px;position:absolute}.menu-panel.below-end{top:calc(100% + 8px);right:0}.menu-panel.below-start{top:calc(100% + 8px);left:0}.menu-panel.above-start{bottom:calc(100% + 8px);left:0}.menu-title{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0;padding:10px 0;font-size:11px;font-weight:700}.menu-foot{border-top:1px solid var(--line);margin-top:12px;padding-top:12px}.menu-panel .fine{margin:4px 0 8px}.menu-foot .btn{margin-top:4px}.room-copy{justify-content:center;width:100%;margin-top:8px}.menu-panel>:last-child{margin-bottom:0}.dialog{max-width:min(760px,100vw - 32px);color:var(--text);background:var(--surface);border:1px solid var(--line-strong);box-shadow:var(--shadow);border-radius:14px;padding:20px 22px}.dialog::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#05060499}.dialog h2{margin:0 0 8px;font-size:17px}.dialog.confirm{width:420px}.dialog.confirm p{color:var(--text-2);margin:0 0 18px}.dialog-actions{justify-content:flex-end;gap:8px;display:flex}.dialog-head{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.help-grid{grid-template-columns:1fr 1fr;gap:24px;display:grid}.help h3{letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin:14px 0 8px;font-size:11px}.keys{grid-template-columns:auto 1fr;gap:6px 12px;margin:0;font-size:13px;display:grid}.keys dt{text-align:right;white-space:nowrap}.keys dd{color:var(--text-2);margin:0}.help-foot{margin:18px 0 0;font-size:12.5px}.leaflet-container{font-family:var(--font);background:#0d1418;outline:none}.map.leaflet-container{touch-action:none;background:#0d1418}.leaflet-tooltip.cow-tip{color:var(--text);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-sm);box-shadow:var(--shadow);flex-direction:column;gap:1px;padding:6px 10px;font-size:12.5px;display:flex}.leaflet-tooltip.cow-tip span{color:var(--muted);font-size:11.5px}.leaflet-tooltip.cow-tip em{align-items:center;gap:6px;margin-top:3px;font-size:12px;font-style:normal;font-weight:600;display:flex}.leaflet-tooltip.cow-tip em i{border-radius:50%;width:9px;height:9px}.leaflet-tooltip-top.cow-tip:before{border-top-color:var(--line-strong)}.objects-passive .leaflet-plan-pane .leaflet-interactive,.objects-passive .leaflet-planMarkers-pane .leaflet-interactive{pointer-events:none!important}.plan-marker,.plan-label{background:0 0;border:0}.pm{flex-direction:column;align-items:center;gap:2px;width:max-content;display:flex;transform:translate(-50%,-50%)}.pm-symbol{filter:drop-shadow(0 2px 3px #00000080);position:relative}.pm-count{min-width:18px;height:18px;font:700 11px/18px var(--font);text-align:center;color:#fff;background:#1b1509;border:1.5px solid #fff;border-radius:9px;padding:0 4px;position:absolute;top:-9px;right:-10px}.obj-badge{filter:drop-shadow(0 2px 3px #00000080)}.pm-label,.plan-label span{width:max-content;max-width:220px;font:700 12px/1.35 var(--font);color:#1c160b;background:#faf5e4eb;border:1px solid #1c160b59;border-radius:4px;padding:1px 6px;display:block;box-shadow:0 1px 3px #00000059}.plan-label span{transform:translate(-50%,-50%)}.plan-label.range-label span{transform:translate(-50%,-130%)}.pm-text span{text-shadow:0 0 3px #f5efdc,0 0 3px #f5efdc,0 0 6px #f5efdc;white-space:nowrap;font:700 15px/1.2 Georgia,Times New Roman,serif}.plan-marker.is-selected .pm-symbol,.plan-marker.is-selected .obj-badge,.plan-marker.is-selected .pm-text span{outline-offset:3px;border-radius:4px;outline:2.5px solid #ffcf3f}.plan-marker.is-selected .obj-badge{border-radius:50%}.edit-handle{cursor:move;background:#fff;border:2px solid #1b1509;border-radius:50%;box-shadow:0 1px 4px #00000080}.edit-handle.midpoint{cursor:copy;background:#ffffff8c;border-style:dashed}.edit-handle:hover{background:#ffcf3f}.leaflet-planMarkers-pane .leaflet-interactive{cursor:pointer}.splash{text-align:center;place-content:center;justify-items:center;gap:12px;height:100%;display:grid}.splash-mark{letter-spacing:.16em;text-transform:uppercase;color:var(--accent);font-weight:700}.splash-bar{background:var(--line);border-radius:2px;width:160px;height:3px;overflow:hidden}.splash-bar span{background:var(--accent);width:40%;height:100%;animation:1.1s ease-in-out infinite load;display:block}@keyframes load{0%{transform:translate(-100%)}to{transform:translate(250%)}}.splash p{color:var(--muted);margin:0}.splash p.err{color:var(--warn)}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn.primary:not(:disabled):hover{background:var(--accent-strong)}.btn.ghost{background:0 0}.btn.big{justify-content:center;height:44px;padding:0 18px;font-size:14px}.err{color:var(--danger);margin:0;font-size:13px}.warn-text{color:var(--warn);margin:0 0 12px;font-size:13px}.fine{margin:0;font-size:12px}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}a.brand{color:inherit;text-decoration:none}.conn{background:var(--surface-3);height:24px;color:var(--text-2);border-radius:12px;flex:none;align-items:center;gap:5px;padding:0 9px;font-size:12px;font-weight:600;display:inline-flex}.conn.connected{color:#7fdc9a;background:#3c8c502e}.conn.offline{color:var(--warn);background:#e0894f26}.presence{border-right:1px solid var(--line);align-items:center;gap:4px;padding-right:8px;display:flex}.avatar{width:30px;height:30px;font:700 11px var(--font);color:#111;background:var(--c,var(--surface-3));border:2px solid var(--surface);box-shadow:0 0 0 1px var(--line-strong);border-radius:50%;flex:none;place-items:center;padding:0;display:grid}.avatar:hover{box-shadow:0 0 0 2px var(--text)}.avatar.more{color:var(--text-2);background:var(--surface-3);font-size:10px}.room-menu{margin-left:4px}.room-menu .btn{height:30px}.me-chip{white-space:nowrap;background:var(--bg);border:1px solid var(--line);max-width:180px;height:30px;color:var(--text-2);border-radius:15px;padding:0 12px;font-size:12.5px;font-weight:600;overflow:hidden}.me-chip:hover{border-color:var(--accent);color:var(--text)}.me-name{text-overflow:ellipsis;min-width:0;overflow:hidden}.peer-cursor,.ping-marker{background:0 0;border:0}.peer-cursor{pointer-events:none;transition:transform 80ms linear}.peer-cursor svg{filter:drop-shadow(0 1px 2px #00000080);display:block}.peer-cursor span{white-space:nowrap;font:700 11px/16px var(--font);color:#111;border-radius:8px;padding:1px 7px;position:absolute;top:16px;left:14px;box-shadow:0 1px 3px #0006}.leaflet-zoom-anim .peer-cursor{transition:none}.ping{width:0;height:0;position:relative;transform:translate(-50%,-50%)}.ping i{border:3px solid var(--c);width:60px;height:60px;box-shadow:0 0 12px var(--c);border-radius:50%;animation:1.3s ease-out 2 both ping;position:absolute;top:-30px;left:-30px}.ping i+i{animation-delay:.35s}.ping b{white-space:nowrap;font:700 12px/18px var(--font);color:#111;background:var(--c);border-radius:9px;padding:1px 8px;animation:2.6s ease-in both fade;position:absolute;top:22px;left:50%;transform:translate(-50%)}@keyframes ping{0%{opacity:1;transform:scale(.15)}to{opacity:0;transform:scale(1.6)}}@keyframes fade{0%,70%{opacity:1}to{opacity:0}}.nation-row{align-items:center;min-height:46px}.nation-cell{flex-direction:column;flex:1;min-width:0;display:flex}.nation-sub{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:5px;padding-left:7px;font-size:11.5px;display:flex;overflow:hidden}.row-name::placeholder{color:var(--muted);font-style:italic;font-weight:500}.add-nation{grid-template-columns:minmax(0,1fr) auto;gap:6px;display:grid}.add-nation select{grid-column:1/-1}.add-nation select,.add-nation input,.to-select,.field-inline select{background:var(--bg);border:1px solid var(--line);border-radius:var(--r-sm);outline:none;min-width:0;height:32px;padding:0 8px}.add-nation select:focus,.add-nation input:focus,.to-select:focus{border-color:var(--accent)}.to-select{flex:none;width:170px}.field-inline{align-items:center;gap:6px;display:flex}.field-inline select{flex:1}.assign-box.achieved{background:color-mix(in srgb, #4caf6a 12%, var(--surface-2))}.done-text{color:#7fdc9a;align-items:center;gap:6px;margin:-4px 0 12px;font-size:13px;font-weight:600;display:flex}.done-text .icon-btn{margin-left:auto}.mark-taken{justify-content:center;width:100%;margin:-4px 0 12px}.dot.lg{width:14px;height:14px}.dialog.join{width:480px}.dialog.join p{margin:0 0 16px}.join-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:6px;display:grid}.join-opt{text-align:left;background:var(--bg);border:1px solid var(--line);border-radius:var(--r-sm);align-items:center;gap:10px;min-height:48px;padding:6px 10px;display:flex}.join-opt:hover{border-color:var(--line-strong)}.join-opt[aria-checked=true]{border-color:var(--accent);background:var(--surface-3);box-shadow:0 0 0 2px #d9b45a33}.join-opt-text{flex-direction:column;min-width:0;display:flex}.join-opt-text small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;overflow:hidden}.dialog-actions.spread{justify-content:space-between;margin-top:8px}.dialog .field select,.dialog .field input{height:44px}.lobby{background:radial-gradient(ellipse at top, #22281c, var(--bg) 60%);min-height:100%;padding:48px 16px;overflow-y:auto}.lobby-head{text-align:center;max-width:860px;margin:0 auto 28px}.lobby-head h1{letter-spacing:.08em;text-transform:uppercase;margin:10px 0 6px;font-size:28px}.lobby-head p{max-width:520px;color:var(--text-2);margin:0 auto}.brand-mark.lg{width:44px;height:44px}.lobby-grid{grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:16px;max-width:860px;margin:0 auto;display:grid}.lobby-col{flex-direction:column;gap:16px;display:flex}.lobby-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;flex-direction:column;gap:12px;padding:20px;display:flex}.lobby-card h2{align-items:center;gap:8px;margin:0;font-size:16px;display:flex}.lobby-card .field{margin:0}.lobby-card .field input,.big-input{height:44px!important}.big-input{background:var(--bg);border:1px solid var(--line);border-radius:var(--r-sm);outline:none;width:100%;padding:0 12px}.big-input:focus{border-color:var(--accent)}.lobby-rooms{grid-column:1/-1}.rooms-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.rooms-filter{height:34px;color:var(--muted);background:var(--bg);border:1px solid var(--line);border-radius:var(--r-sm);align-items:center;gap:6px;margin-left:auto;padding:0 10px;display:flex}.rooms-filter:focus-within{border-color:var(--accent)}.rooms-filter input{width:180px;color:var(--text);background:0 0;border:0;outline:none}.rooms{gap:4px;max-height:420px;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.room-row{min-height:44px;color:var(--text);background:var(--bg);border:1px solid var(--line);border-radius:var(--r-sm);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 12px;padding:6px 12px;text-decoration:none;display:flex}.room-row:hover{border-color:var(--accent)}.room-row.live{border-left:3px solid #4caf6a}.room-title{align-items:center;gap:7px;min-width:0;display:flex}.room-title strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.room-lock{color:var(--accent);flex:none}.room-meta{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.room-online{color:#7fdc9a;align-items:center;gap:6px;font-size:12px;font-weight:700;display:inline-flex}.live-dot{background:#4caf6a;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 3px #4caf6a40}.lobby-offline{min-height:44px;color:var(--text-2);justify-content:center;align-items:center;gap:8px;display:inline-flex}.gate{flex-direction:column;align-items:stretch;gap:10px;width:min(360px,100vw - 32px);margin-top:8px;display:flex}.gate h1{margin:0;font-size:18px}.gate p{margin:0}.gate input{background:var(--bg);border:1px solid var(--line);border-radius:var(--r-sm);outline:none;height:44px;padding:0 12px}.gate input:focus{border-color:var(--accent)}.gate-icon{color:var(--accent);align-self:center}.small-link{font-size:13px}.splash .btn{text-decoration:none}.measure-label{background:0 0;border:0}.measure-label span{width:max-content;font:700 12.5px/1.3 var(--font);color:#111;background:#fff;border-radius:6px;padding:3px 9px;display:block;transform:translate(12px,-50%);box-shadow:0 2px 8px #00000073}.to-field{color:var(--text-2);white-space:nowrap;align-items:center;gap:6px;font-size:12.5px;display:inline-flex}.to-field input{background:var(--bg);border:1px solid var(--line);border-radius:var(--r-sm);outline:none;width:72px;height:28px;padding:0 8px}.to-field input:focus{border-color:var(--accent)}.tool-options .btn{white-space:nowrap;height:28px;padding:0 10px}.avatar.following{box-shadow:0 0 0 2px var(--surface), 0 0 0 4px var(--accent)}.follow-banner{border:1px solid var(--accent);border-radius:var(--r);box-shadow:var(--shadow);background:#1a1e16f0;align-items:center;gap:10px;padding:6px 6px 6px 12px;font-size:13px;font-weight:600;display:flex}.follow-banner .btn{height:28px}.gone-overlay{z-index:1200;text-align:center;color:var(--text);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0a0c08d1;place-content:center;justify-items:center;gap:12px;display:grid;position:absolute;inset:0}.gone-overlay p{max-width:360px;margin:0}.gone-overlay .btn{text-decoration:none}.room-link{color:var(--muted);align-items:center;gap:6px;display:flex}.room-link input{min-width:0;height:30px;font:12px var(--mono);color:var(--text-2);background:var(--bg);border:1px solid var(--line);border-radius:var(--r-sm);outline:none;flex:1;padding:0 8px}.room-fact{color:var(--text-2);align-items:center;gap:6px;margin:10px 0 4px;font-size:13px;display:flex}.panel .fine{margin:4px 0 8px}.btn.danger-outline{border-color:color-mix(in srgb, var(--danger) 55%, var(--line));color:var(--danger);background:0 0}.btn.danger-outline:not(:disabled):hover{border-color:var(--danger);background:#ef6b5b1f}.dialog textarea{resize:vertical;width:100%;font:inherit;color:var(--text);background:var(--bg);border:1px solid var(--line);border-radius:var(--r-sm);outline:none;padding:10px 12px}.dialog textarea:focus,.dialog .field input:focus{border-color:var(--accent)}.dialog .field input{background:var(--bg);border:1px solid var(--line);border-radius:var(--r-sm);color:var(--text);outline:none;padding:0 12px}.help-meta{margin:10px 0 0;font-size:12px}.help-meta a,.lobby-foot a,.link-btn{color:var(--text-2)}.lobby-foot{max-width:860px;color:var(--muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 18px;margin:40px auto 0;font-size:13px;display:flex}.beta{letter-spacing:.06em;text-transform:uppercase;color:var(--accent);border:1px solid color-mix(in srgb, var(--accent) 50%, transparent);border-radius:99px;padding:2px 9px;font-size:11px;font-weight:700}.link-btn{cursor:pointer;background:0 0;border:0;padding:0;font-size:13px;text-decoration:underline}.legal{max-width:760px;min-height:100%;margin:0 auto;padding:40px 20px 64px;overflow-y:auto}.legal h1{margin:16px 0 20px;font-size:26px}.legal-back{color:var(--text-2);align-items:center;gap:6px;display:inline-flex}.legal-body{color:var(--text-2);line-height:1.6}.legal-body h2{color:var(--text);margin:28px 0 8px;font-size:17px}.legal-body a{color:var(--accent-strong)}.legal-body .todo{color:#1a1508;background:var(--accent);border-radius:4px;padding:2px 6px}:is(body:has(.legal),body:has(.lobby)){overflow-y:auto}.lobby-toasts .toasts{position:fixed;top:16px;right:16px}.kind-sym{border-radius:50%;flex:none;width:10px;height:10px;display:inline-block;position:relative}.kind-sym.k0{border:1px solid var(--muted);width:6px;height:6px;margin:0 2px}.kind-sym.k1{background:var(--text);box-shadow:0 0 0 1.5px var(--surface);width:8px;height:8px;margin:0 1px}.kind-sym.k2{border:2px solid var(--text)}.kind-sym.k2:after{content:"";background:var(--text);border-radius:50%;position:absolute;inset:2px}.leaflet-tooltip.cow-tip .tip-kind.city{color:var(--text-2);font-weight:600}.prod-tags{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.kind-tag{align-items:center;gap:6px;display:inline-flex}.kind-tag.city{color:var(--accent-strong);border-color:color-mix(in srgb, var(--accent) 45%, transparent)}.prod{align-items:center;gap:8px;margin:0 0 16px;font-size:13px;font-weight:600;display:flex}.prod strong{font:700 12.5px var(--mono)}.res-icon{vertical-align:middle;flex:none}.toggle .res-legend{color:var(--text-2);flex-wrap:wrap;gap:4px 12px;margin-top:4px;display:flex}.res-legend>span{align-items:center;gap:4px;display:inline-flex}.leaflet-tooltip.cow-tip .tip-kind{align-items:center;gap:4px;display:flex}.cost-line{color:var(--text-2);margin:-4px 0 12px;font-size:12.5px}.cost-line strong{color:var(--text)}.team-tag{cursor:pointer;color:var(--muted);background:0 0;border-style:dashed}.team-tag:hover{color:var(--text);border-color:var(--accent)}.team-tag[aria-pressed=true]{color:#7fdc9a;background:#3c8c5026;border-style:solid;border-color:#7fdc9a73}.points-allowance>span{flex:1;width:auto!important}.points-allowance input{text-align:right;font-family:var(--mono)}.points-list{grid-template-columns:minmax(0,1fr);gap:6px;margin:12px 0 0;padding:0;list-style:none;display:grid}.points-row{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-sm);padding:6px 8px 8px}.points-row.over{border-color:color-mix(in srgb, var(--danger) 55%, var(--line))}.points-head{text-align:left;background:0 0;border:0;align-items:center;gap:7px;width:100%;padding:2px 0;display:flex}.points-chev{color:var(--muted);transition:transform .15s}.points-head[aria-expanded=true] .points-chev{transform:rotate(90deg)}.points-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:600;overflow:hidden}.points-sum{font:700 12.5px var(--mono);white-space:nowrap}.points-row.over .points-sum,.points-over{color:var(--danger)}.points-bar{background:var(--line);border-radius:2px;height:4px;margin:6px 0 0;overflow:hidden}.points-bar span{background:var(--accent);border-radius:2px;height:100%;transition:width .2s;display:block}.points-row.over .points-bar span{background:var(--danger)}.points-meta{color:var(--muted);margin:5px 0 0;font-size:12px}.points-items{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr);gap:1px;margin:8px 0 0;padding:6px 0 0;list-style:none;display:grid}.points-item{align-items:center;gap:2px;display:flex}.points-item-main{text-align:left;background:0 0;border:0;border-radius:4px;flex:1;align-items:center;gap:7px;min-width:0;min-height:28px;padding:2px 4px;font-size:12.5px;display:flex}.points-item-main:hover{background:var(--surface-3)}.points-take{color:var(--muted);flex:none}.points-take[aria-pressed=true]{color:#7fdc9a}.points-actions{flex-wrap:wrap;gap:6px;margin:8px 0 0;display:flex}.points-row.current{border-color:color-mix(in srgb, var(--accent) 60%, var(--line))}.points-scope{flex-wrap:wrap;align-items:center;gap:4px;margin:10px 0 0;display:flex}.points-scope-label{color:var(--muted);margin-right:4px;font-size:12px}.points-scope .phase-chip{border-color:var(--line);height:24px;padding:0 8px;font-size:12px}.points-limit{margin-top:6px!important}.points-days{flex-wrap:wrap;gap:4px;margin:6px 0 0;padding:0;list-style:none;display:flex}.points-day{font:600 11.5px var(--mono);background:var(--bg);border:1px solid var(--line);border-radius:10px;align-items:center;gap:4px;padding:1px 6px;display:inline-flex}.points-day.over{color:var(--danger);border-color:color-mix(in srgb, var(--danger) 55%, var(--line))}.points-item-name{text-overflow:ellipsis;white-space:nowrap;flex:none;max-width:40%;font-weight:600;overflow:hidden}.points-item-cat{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--muted);flex:1;font-size:11.5px;overflow:hidden}.points-item-main b{font:700 12px var(--mono);white-space:nowrap}.points-item.done .points-item-name{color:var(--muted)}.to-points{font:700 12px var(--mono);white-space:nowrap;color:var(--text);background:var(--bg);border:1px solid var(--line);border-radius:12px;padding:3px 9px}.to-points.over{color:var(--danger);border-color:color-mix(in srgb, var(--danger) 55%, var(--line))}@media (width<=1280px){.brand-name,.conn-text,.menu-btn-label{display:none}.conn{padding:0 6px}.me-chip{max-width:150px}.presence .avatar:nth-child(n+4){display:none}}@media (width<=1000px){.plan-title{display:none}}@media (width<=900px){:root{--sidebar-w:280px}.presence .avatar:nth-child(n+3){display:none}.me-chip{max-width:110px}}@media (width<=820px){.me-chip{max-width:80px}.lineup-btn .lineup-count{display:none}.search{min-width:76px}}@media (width<=720px){.shell{--sheet-h:calc(58px + env(safe-area-inset-bottom));grid-template:"top" auto "tools" auto "stage" 1fr "side" var(--sheet-h) / 1fr;padding-bottom:0}.shell.sheet-half{--sheet-h:46%}.shell.sheet-full{--sheet-h:78%}.sidebar{flex-direction:column;display:flex;overflow:hidden;box-shadow:0 -6px 18px #00000059}.sheet-handle{text-align:left;width:100%;height:58px;color:var(--text-2);background:var(--surface-2);border:0;border-bottom:1px solid var(--line);touch-action:none;cursor:pointer;flex:none;grid-template-columns:1fr auto;align-items:center;gap:4px 10px;padding:6px 14px 8px;font-size:13px;line-height:1.3;display:grid}.sheet-grip{background:var(--line-strong);border-radius:2px;grid-column:1/-1;justify-self:center;width:36px;height:4px}.sheet-hint{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.sheet-chev{color:var(--muted);transition:transform .15s}.shell:not(.sheet-peek) .sheet-chev{transform:rotate(180deg)}.shell.sheet-full .map-chrome{display:none}.sheet-body{overscroll-behavior:contain;min-height:0;padding-bottom:env(safe-area-inset-bottom);flex:1;overflow-y:auto}.help-grid{grid-template-columns:1fr}.player-pick,.player-pick.many{scrollbar-width:none;flex-wrap:nowrap;flex:100%;justify-content:flex-start;max-height:none;padding:3px;overflow:auto hidden}.player-pick::-webkit-scrollbar{display:none}.player-pick.many .pick-sep{flex-basis:auto;height:22px}.toolbar{border-right:0;border-bottom:1px solid var(--line);flex-direction:row;justify-content:center;padding:4px 8px;overflow-x:auto}.toolbar-sep{width:1px;height:24px;margin:0 4px}.tool-tip{display:none}.sidebar{border-left:0;border-top:1px solid var(--line)}.brand-name,.file-group,.conn,.me-chip,.plan-title,.presence .avatar:nth-child(n+4){display:none}.search{flex:1}.statusbar,.menu-btn-label,.map-btn .menu-chev{display:none}.room-menu .btn{gap:4px;padding:0 8px}.menu-panel.below-end{width:auto;max-width:none;position:fixed;top:60px;left:12px;right:12px}}@media (pointer:coarse){input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea{font-size:max(16px,1em)!important}.map-chrome{--chrome-h:44px}.chrome-btn{min-width:40px;height:40px}.icon-btn{width:40px;height:40px}.icon-btn.sm{width:34px;height:34px}}@media (hover:none) and (pointer:coarse){.tool-key,.tool-btn kbd,.pick-chip kbd,.lineup-open kbd,.search kbd{display:none}}.keys.no-keys{grid-template-columns:1fr}.help-touch{order:-1}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.lobby{position:relative}.lobby-lang{position:absolute;top:16px;right:16px}.lobby-tagline{letter-spacing:.14em;text-transform:uppercase;font-size:13px;color:var(--accent)!important;margin:-2px auto 10px!important}@media (width<=720px){.lobby{padding-top:64px}}:root{--axis:#c88570;--allies:#7d9cc3}.cls-badge{min-width:24px;height:18px;font:800 10.5px/1 var(--font);letter-spacing:.04em;cursor:help;color:var(--text-2);background:var(--surface-3);border:1px solid var(--line-strong);border-radius:4px;flex:none;place-items:center;padding:0 4px;display:inline-grid}.team-swatch{border-radius:3px;flex:none;width:12px;height:12px;display:inline-block;box-shadow:inset 0 0 0 1px #00000059}.lineup-btn{gap:6px;height:30px}.lineup-count{font:700 11px var(--mono);color:var(--muted)}.me-chip{align-items:center;gap:7px;display:inline-flex}.avatar{border-color:var(--t,var(--surface))}.lineup-open{justify-content:center;width:100%;margin-bottom:10px}.lineup-open kbd{margin-left:auto}.nation-group{margin-bottom:6px}.nation-group-head{text-align:left;border:0;border-bottom:1px solid var(--line);width:100%;color:var(--text-2);background:0 0;align-items:center;gap:8px;padding:6px 4px;font-size:12px;display:flex}.nation-group-head strong{color:var(--text);letter-spacing:.04em}.nation-group-head .muted{margin-left:auto;font-size:11.5px}.nation-group-head .chev{transition:transform .15s;transform:rotate(90deg)}.nation-group-head[aria-expanded=false] .chev{transform:none}.nation-group .rows{margin-top:4px}.nation-main{align-items:center;gap:6px;min-width:0;padding-left:7px;display:flex}.nation-player{text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;overflow:hidden}.nation-player.ai{color:var(--muted);font-style:italic;font-weight:600}.nation-row.ai .dot-btn{opacity:.6}.capital-lost{color:var(--danger);font-weight:700}.capital-tag{color:#f1c232;border-color:#f1c23273}.pick-sep{background:var(--line-strong);width:1px;height:22px}.pick-chip.team-axis{box-shadow:inset 3px 0 0 var(--axis)}.pick-chip.team-allies{box-shadow:inset 3px 0 0 var(--allies)}.points-row.team-axis{border-left:3px solid var(--axis)}.points-row.team-allies{border-left:3px solid var(--allies)}.chrome-right{pointer-events:none;flex-direction:column;align-items:flex-end;gap:8px;display:flex}.chrome-right>*{pointer-events:auto}.map-legend{min-width:0;max-width:300px;padding:2px;font-size:12px}.legend-toggle{border-radius:var(--r-sm);width:100%;height:32px;color:var(--text-2);background:0 0;border:0;align-items:center;gap:6px;padding:0 10px;font-weight:600;display:flex}.legend-toggle:hover{color:var(--text);background:var(--surface-3)}.legend-toggle .chev{margin-left:auto;transition:transform .15s;transform:rotate(180deg)}.map-legend.open .legend-toggle .chev{transform:none}.legend-list{gap:5px;margin:0;padding:4px 12px 10px;list-style:none;display:grid}.legend-list li{white-space:nowrap;color:var(--text-2);align-items:center;gap:8px;display:flex}.legend-list small{margin-left:auto;padding-left:10px}.legend-swatch{border-radius:2px;flex:none;width:18px;height:12px;box-shadow:inset 0 0 0 1px #0006}.legend-swatch.hatch{background:repeating-linear-gradient(-45deg,#c8c8c2 0 2px,#3a3631 2px 3px,#c8c8c240 3px 5px);box-shadow:inset 0 0 0 2px #c8c8c2}.legend-swatch.dashed{background:var(--surface-3);outline-offset:-2px;box-shadow:none;outline:2px dashed #c8c8c2}.legend-star{text-align:center;color:#f1c232;text-shadow:0 0 1px #000;width:18px;font-size:15px;line-height:1}.dialog.join{width:640px;max-height:calc(100vh - 32px)}.dialog.join[open]{flex-direction:column;display:flex}.dialog.join form{flex-direction:column;flex:1;min-height:0;display:flex}.dialog.join .join-wish{flex-direction:column;flex:auto;min-height:150px;display:flex}.dialog.join .join-wish .join-teams{flex:1;min-height:0;max-height:none}.dialog.join .dialog-actions{flex:none}.join-players{flex-wrap:wrap;gap:6px;max-height:26vh;display:flex;overflow-y:auto}.join-player{background:var(--bg);border:1px solid var(--line);border-radius:18px;align-items:center;gap:7px;min-height:36px;padding:4px 12px 4px 10px;display:inline-flex}.join-player small{color:var(--muted);font-size:11.5px}.join-player:hover{border-color:var(--line-strong)}.join-player[aria-checked=true]{border-color:var(--accent);background:var(--surface-3);box-shadow:0 0 0 2px #d9b45a33}.join-teams{gap:10px;max-height:44vh;padding-right:4px;display:grid;overflow-y:auto}.join-team h3{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);align-items:center;gap:6px;margin:0 0 6px;font-size:11px;display:flex}.join-team h3:before{content:"";background:var(--team,var(--line-strong));border-radius:2px;width:10px;height:10px}.team-axis{--team:var(--axis)}.team-allies{--team:var(--allies)}.join-opt{justify-content:space-between;min-height:44px}.join-opt:disabled{opacity:.5;cursor:not-allowed}.join-seated{color:var(--text-2);background:var(--surface-2);border-radius:var(--r-sm);padding:10px 12px}.dialog.lineup{width:min(1120px,100vw - 32px);max-width:none;max-height:calc(100vh - 32px)}.lineup-intro{margin:0 0 12px;font-size:13px}.lineup-readonly{color:var(--text-2);background:var(--surface-2);border-radius:var(--r-sm);align-items:center;gap:8px;margin:0 0 12px;padding:8px 12px;font-size:13px;display:flex}.lineup-balance{grid-template-columns:1fr 1fr;gap:6px 16px;margin-bottom:14px;display:grid}.balance-team{flex-wrap:wrap;align-items:center;gap:4px 8px;font-size:13px;display:flex}.balance-team:nth-child(2){text-align:right;justify-content:flex-end}.balance-facts{color:var(--text-2);font-size:12px}.balance-classes{font-family:var(--mono);font-size:11.5px}.balance-bar{background:var(--surface-3);border-radius:3px;grid-column:1/-1;height:6px;display:flex;overflow:hidden}.balance-bar span{height:100%;transition:width .3s}.lineup-cols{grid-template-columns:1fr minmax(200px,.8fr) 1fr;gap:12px;display:grid}.lineup-col,.lineup-bench{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r);border-top:3px solid var(--team,var(--line-strong));min-width:0;padding:10px;transition:border-color .12s,background .12s}.lineup-col.over,.lineup-bench.over{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 8%, var(--surface-2))}.lineup-col-head{align-items:center;gap:8px;margin-bottom:8px;display:flex}.lineup-col-head h3{letter-spacing:.1em;text-transform:uppercase;margin:0;font-size:12px}.lineup-col-head .btn{margin-left:auto}.lineup-empty{text-align:center;color:var(--muted);border:1px dashed var(--line-strong);border-radius:var(--r-sm);margin:4px 0;padding:14px 8px;font-size:12.5px}.lineup-cards{gap:6px;max-height:46vh;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.lineup-card{background:var(--bg);border:1px solid var(--line);border-radius:var(--r-sm);grid-template-columns:minmax(0,1fr) auto;gap:4px 6px;padding:7px 8px;display:grid}.lineup-card[draggable=true]{cursor:grab}.lineup-card.over{border-color:var(--accent);box-shadow:0 0 0 2px #d9b45a40}.lineup-card.me{border-color:color-mix(in srgb, var(--accent) 55%, var(--line))}.lc-top{grid-column:1/-1;align-items:center;gap:7px;min-width:0;display:flex}.lc-name{text-overflow:ellipsis;white-space:nowrap;text-align:left;background:0 0;border:0;flex:1;min-width:0;padding:0;font-weight:700;overflow:hidden}.lc-name:hover{color:var(--accent-strong);text-decoration:underline}.lc-lost{color:var(--danger);cursor:help}.lc-player{align-items:center;gap:6px;min-width:0;display:flex}.lc-player select{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);flex:1;min-width:0;height:30px;padding:0 6px}.lineup-card.ai .lc-player select{color:var(--muted);font-style:italic}.lc-player-name{padding-left:2px;font-weight:600}.lc-player-name.ai{color:var(--muted);font-style:italic}.lc-handle{color:var(--muted);cursor:grab;-webkit-user-select:none;user-select:none;padding:0 2px}.lc-move{align-items:center;gap:2px;display:flex}.lc-wishes{color:var(--muted);flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:4px;font-size:11.5px;display:flex}.lc-wishes .chip{padding:1px 8px;font-size:12px}.lineup-bench{margin-top:12px}.bench-list{flex-wrap:wrap;gap:6px;margin:0 0 10px;padding:0;list-style:none;display:flex}.bench-player{background:var(--bg);border:1px solid var(--line);border-radius:16px;align-items:center;gap:6px;min-height:32px;padding:2px 12px;display:inline-flex}.bench-player .icon-btn{margin-right:-8px}.bench-player[draggable=true]{cursor:grab}.bench-player.me{border-color:var(--accent)}.bench-player small{color:var(--muted);font-size:11.5px}.bench-add{gap:6px;max-width:420px;display:flex}.bench-add input{background:var(--bg);border:1px solid var(--line);border-radius:var(--r-sm);outline:none;flex:1;min-width:0;height:32px;padding:0 10px}.bench-add input:focus{border-color:var(--accent)}.lineup-bench .fine{margin:8px 0 0}.admin-note{color:var(--accent-strong);flex-wrap:wrap;align-items:center;gap:6px;margin:0;font-size:12.5px;display:flex}.admin-note a{color:var(--accent-strong)}.lobby-foot .link-btn,.lobby-foot .link-icon{align-items:center;gap:5px;display:inline-flex}.admin-login{max-width:380px;margin:24px auto 0}.admin-login input{background:var(--bg);border:1px solid var(--line);border-radius:var(--r-sm);outline:none;height:44px;padding:0 12px}.admin-login input:focus{border-color:var(--accent)}.admin-page{background:radial-gradient(ellipse at top, #22281c, var(--bg) 60%);min-height:100%;padding:24px 16px 64px;overflow-y:auto}.admin-head{flex-wrap:wrap;align-items:center;gap:12px;max-width:1040px;margin:0 auto 16px;display:flex}.admin-head h1{align-items:center;gap:10px;margin:0;font-size:20px;display:flex}.admin-head h1 svg{color:var(--accent)}.admin-head .btn{color:var(--text);text-decoration:none}.admin-head-actions{align-items:center;gap:8px;margin-left:auto;display:flex}.admin-rooms{max-width:1040px;margin:0 auto}.admin-summary{flex-wrap:wrap;align-items:baseline;gap:6px 12px;display:flex}.admin-summary h2{margin:0;font-size:16px}.admin-summary .icon-btn{align-self:center;margin-left:auto}.admin-rooms>.fine{margin:-4px 0 0}.admin-filters{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.admin-filters .rooms-filter{margin-left:auto}.admin-sort{color:var(--text-2);align-items:center;gap:6px;font-size:12.5px;display:inline-flex}.admin-sort select{background:var(--bg);border:1px solid var(--line);border-radius:var(--r-sm);height:32px;padding:0 8px}.admin-bulk{z-index:2;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-sm);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;display:flex;position:sticky;top:0}.admin-bulk.active{border-color:color-mix(in srgb, var(--danger) 45%, var(--line))}.admin-check{cursor:pointer;align-items:center;gap:8px;font-size:13px;display:inline-flex}.admin-list{gap:4px;margin:0;padding:0;list-style:none;display:grid}.admin-row{background:var(--bg);border:1px solid var(--line);border-radius:var(--r-sm);grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:8px 12px;display:grid}.admin-row.checked{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 6%, var(--bg))}.admin-row.live{border-left:3px solid #4caf6a}.admin-row input[type=checkbox],.admin-check input{width:16px;height:16px;accent-color:var(--accent)}.admin-room{flex-direction:column;min-width:0;display:flex}.admin-room-title{min-width:0;color:var(--text);align-items:center;gap:6px;text-decoration:none;display:flex}.admin-room-title strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.admin-room-title:hover strong{color:var(--accent-strong);text-decoration:underline}.admin-room small{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.admin-empty{color:var(--warn);font-weight:700}.admin-meta{color:var(--text-2);text-align:right;white-space:nowrap;flex-direction:column;align-items:flex-end;gap:1px;font-size:12.5px;display:flex}.admin-meta small{font-size:11.5px}@media (width<=720px){.admin-row{grid-template-columns:auto minmax(0,1fr) auto}.admin-meta{text-align:left;white-space:normal;grid-area:2/2;align-items:flex-start}.admin-filters .rooms-filter,.admin-head-actions{margin-left:0}}@media (width<=860px){.lineup-cols{grid-template-columns:1fr}.lineup-cards{max-height:none}.lineup-balance{grid-template-columns:1fr}.balance-team:nth-child(2){text-align:left;justify-content:flex-start}}@media (width<=720px){.me-chip,.lineup-btn .lineup-count,.map-legend:not(.open) .legend-toggle span{display:none}}
