:root{--bg: #08131b;--panel: #0d151c;--panel-2: #111c25;--line: #1e2e3a;--line-soft: #16232d;--text: #d6e2e8;--text-dim: #7e939f;--text-faint: #566a76;--cyan: #4fd8ff;--cyan-dim: #2b7f9c;--amber: #e8b05c;--amber-dim: #8a6630;--danger: #e0685c;--edge: #16222c;--hud-h: 68px;--mono: "IBM Plex Mono", "SF Mono", ui-monospace, Menlo, Consolas, monospace;--ui: "Barlow Condensed", "Rajdhani", "Helvetica Neue", Arial, sans-serif}*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden;background:var(--bg);color:var(--text);font-family:var(--ui);font-size:15px;-webkit-font-smoothing:antialiased}#app{position:fixed;inset:0}#map{position:absolute;inset:0}#map canvas{display:block}.attack-confirmation{max-width:min(480px,calc(100vw - 28px));padding:22px;color:var(--text);background:var(--panel);border:2px solid #f04444;border-radius:6px;font-family:var(--ui)}.attack-confirmation::backdrop{background:#000000a6}.attack-confirmation h2{display:flex;align-items:center;gap:10px;margin-top:0}.attack-confirmation svg{width:28px;height:28px;fill:#f04444;flex:none}.attack-confirmation .attack-warning{color:var(--text-dim);line-height:1.4}.attack-confirmation>div{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:20px}.attack-confirmation .attack-confirm{background:#9e2626;color:#fff;border-color:#f04444}.attack-confirmation .attack-confirm:hover{background:#c93232}#map-legend{position:absolute;top:calc(var(--hud-h) + 8px);right:10px;z-index:5;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px 12px;max-width:min(460px,calc(100vw - 75px));padding:7px 10px;background:#08131be0;border:1px solid var(--line);border-radius:4px;color:#e7eff5;font-size:12px;pointer-events:none}#map-legend[hidden]{display:none}#map-legend span{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}#map-legend i{width:10px;height:10px;border:1px solid rgba(255,255,255,.35);border-radius:2px}#hud{position:absolute;top:0;left:0;right:0;height:var(--hud-h);overflow:hidden;display:flex;align-items:stretch;gap:0;background:linear-gradient(180deg,#080d12f5,#080d12d1);border-bottom:1px solid var(--line);backdrop-filter:blur(6px);z-index:10}.hud-block{display:flex;align-items:center;gap:11px;padding:0 14px;border-right:1px solid var(--line-soft);flex:0 0 auto}.hud-block:last-child{border-right:0}.hud-spacer{flex:1 1 auto;min-width:0;overflow:hidden;border-right:0}.audio-toggle{border:0;border-left:1px solid var(--line-soft);background:transparent;color:var(--text-dim);cursor:pointer;font:500 10px IBM Plex Mono,monospace;letter-spacing:.08em}.audio-toggle.is-on{color:var(--cyan)}.brand{font-weight:600;letter-spacing:3px;text-transform:uppercase;font-size:19px}.brand span{color:var(--cyan)}.theatre{color:var(--text-dim);letter-spacing:1.2px;text-transform:uppercase;font-size:12px;white-space:nowrap}#powers-panel{position:absolute;left:56px;top:calc(var(--hud-h) + 8px);width:234px;z-index:11;background:var(--panel);border:1px solid var(--line);border-radius:3px}#powers-panel[hidden]{display:none}#powers-panel>header{padding:7px 11px;font-size:10px;letter-spacing:2.4px;text-transform:uppercase;color:var(--text-faint);border-bottom:1px solid var(--line-soft)}#powers-rows{display:flex;flex-direction:column;padding:4px;gap:2px}.standing{display:flex;flex-wrap:wrap;align-items:center;gap:0 7px;width:100%;text-align:left;padding:6px 8px;border:1px solid transparent;background:none;border-radius:2px;cursor:pointer;transition:border-color .12s,background .12s}.standing .swatch{flex:0 0 auto}.standing b{flex:1 1 auto;min-width:0}.standing .rel{flex:0 0 auto}.standing>i:last-of-type{flex:1 1 100%;margin-top:3px}.standing .share{flex:1 1 100%;display:block;height:3px;margin-top:4px;background:var(--line-soft);border-radius:2px;overflow:hidden;text-decoration:none}.standing .share span{display:block;height:100%;border-radius:2px;opacity:.85}.standing:hover{border-color:var(--cyan-dim);background:var(--panel-2)}.standing.is-active{border-color:var(--cyan)}.swatch{width:12px;height:12px;border-radius:1px;box-shadow:inset 0 0 0 1px #00000080}.standing b{font-weight:600;letter-spacing:1.1px;font-size:12px;text-transform:uppercase;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.standing i{font-style:normal;font-family:var(--mono);font-size:11px;color:var(--text-dim)}.btn{font-family:var(--ui);font-size:12px;letter-spacing:1.6px;text-transform:uppercase;color:var(--text-dim);background:var(--panel);border:1px solid var(--line);padding:6px 11px;border-radius:2px;cursor:pointer;transition:color .12s,border-color .12s,background .12s}.btn:hover{color:var(--text);border-color:var(--cyan-dim)}.btn.is-on{color:var(--bg);background:var(--cyan);border-color:var(--cyan);font-weight:600}.readout{font-family:var(--mono);font-size:11px;color:var(--text-faint);white-space:pre}.readout b{color:var(--cyan);font-weight:500}#province-panel{position:absolute;left:50%;bottom:14px;transform:translate(-50%,20px);display:none;border:1px solid var(--line);border-radius:3px;box-shadow:0 10px 40px #0000008c;z-index:11;opacity:0;transition:opacity .13s ease,transform .13s ease;max-width:min(1400px,calc(100vw - 180px))}#province-panel.is-open{display:block;transform:translate(-50%);opacity:1}#province-panel.is-open~#log-panel{bottom:calc(28px + var(--province-bar-h, 0px))}.pp-head{padding:12px 14px 10px;border-bottom:1px solid var(--line-soft);position:relative}.pp-owner-bar{position:absolute;left:0;top:0;bottom:0;width:3px}.pp-name{font-size:21px;letter-spacing:1.6px;text-transform:uppercase;line-height:1.1}.pp-sub{margin-top:3px;font-family:var(--mono);font-size:11px;color:var(--text-faint);letter-spacing:.4px}.pp-close{position:absolute;top:9px;right:9px;width:22px;height:22px;border:1px solid var(--line);background:transparent;color:var(--text-faint);cursor:pointer;border-radius:2px;line-height:1;font-size:13px}.pp-close:hover{color:var(--text);border-color:var(--cyan-dim)}.pp-section{padding:10px 14px;border-bottom:1px solid var(--line-soft)}.pp-section:last-child{border-bottom:0}.pp-title{font-size:10px;letter-spacing:2.4px;text-transform:uppercase;color:var(--text-faint);margin-bottom:7px}.kv{display:grid;grid-template-columns:1fr auto;gap:3px 10px}.kv dt{color:var(--text-dim);font-size:13px;letter-spacing:.6px}.kv dd{margin:0;font-family:var(--mono);font-size:12px;text-align:right}.kv dd.accent{color:var(--amber)}.res-row{display:flex;justify-content:space-between;align-items:center;padding:2px 0}.res-row span{color:var(--text-dim);font-size:13px;letter-spacing:.8px;text-transform:uppercase}.res-row b{font-family:var(--mono);font-size:12px;font-weight:500}.res-row.is-zero{opacity:.32}.chips{display:flex;flex-wrap:wrap;gap:5px}.chip{font-family:var(--mono);font-size:11px;padding:3px 7px;border:1px solid var(--line);border-radius:2px;color:var(--text-dim);background:var(--panel-2);cursor:pointer}.chip:hover{color:var(--cyan);border-color:var(--cyan-dim)}.chip.is-static{cursor:default}.chip.is-static:hover{color:var(--text-dim);border-color:var(--line)}.placeholder{color:var(--text-faint);font-size:12px;font-style:italic;letter-spacing:.4px}select.owner-select{width:100%;font-family:var(--ui);font-size:13px;letter-spacing:1px;background:var(--panel-2);color:var(--text);border:1px solid var(--line);border-radius:2px;padding:5px 7px}select.owner-select:focus{outline:none;border-color:var(--cyan)}#layer-panel{position:absolute;left:64px;top:calc(var(--hud-h) + 8px);width:208px;background:#0e1b2a;border:1px solid #27405a;border-radius:3px;box-shadow:0 14px 38px #0000008c;z-index:13;overflow:hidden}#layer-panel header{padding:8px 12px;font-size:10px;letter-spacing:2.4px;text-transform:uppercase;color:#7fa8cc;border-bottom:1px solid #27405a}.layer-row{display:flex;align-items:center;gap:9px;padding:6px 12px;cursor:pointer;font-size:13px;letter-spacing:.6px;color:#e4eefa}.layer-row:hover{background:#1a2e44}.layer-row input{accent-color:#4fd8ff;margin:0}#debug-readout{position:absolute;left:12px;bottom:46px;width:268px;background:#060f16;border:1px solid var(--cyan-dim);border-radius:3px;padding:9px 11px;font-family:var(--mono);font-size:11px;line-height:1.55;color:var(--text-dim);z-index:10;display:none;white-space:pre}#debug-readout.is-open{display:block}#debug-readout b{color:var(--cyan);font-weight:500}#attribution{position:absolute;left:12px;bottom:10px;z-index:8;font-size:9px;color:var(--text-faint);letter-spacing:.2px;max-width:44ch;line-height:1.4;pointer-events:none;opacity:.75}#boot{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:var(--bg);z-index:50;transition:opacity .35s ease}#boot.is-done{opacity:0;pointer-events:none}#boot .brand{font-size:26px}#boot .status{font-family:var(--mono);font-size:12px;color:var(--text-faint)}#boot .bar{width:220px;height:2px;background:var(--line);overflow:hidden}#boot .bar i{display:block;height:100%;width:30%;background:var(--cyan);animation:slide 1.1s infinite ease-in-out}@keyframes slide{0%{transform:translate(-100%)}to{transform:translate(340%)}}#boot .error{color:var(--danger);font-family:var(--mono);font-size:12px;max-width:520px;text-align:center}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--line);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--cyan-dim)}.purse{gap:11px}.res{display:flex;align-items:baseline;gap:5px;font-family:var(--mono);font-size:12px;color:var(--text)}.res em{font-style:normal;font-size:9px;letter-spacing:1.2px;color:var(--text-faint)}.res i{font-style:normal;font-size:10px;color:var(--amber-dim)}.standing.is-you{background:#4fd8ff12}.standing.is-you b{color:var(--cyan)}.link{font-family:var(--mono);font-size:10px;letter-spacing:1.4px;padding:4px 7px;border-radius:2px;border:1px solid var(--line)}.link.is-up{color:#6fd39a;border-color:#2c5c43}.link.is-down{color:var(--danger);border-color:#5c2f2c}.tiny-select{font-family:var(--mono);font-size:11px;background:var(--panel);color:var(--text-dim);border:1px solid var(--line);border-radius:2px;padding:4px 5px}.tiny-select:focus{outline:none;border-color:var(--cyan)}#force-bar{position:absolute;left:50%;bottom:14px;transform:translate(-50%,20px);display:none;align-items:stretch;gap:0;background:#0d151c;border:1px solid var(--line);border-radius:3px;box-shadow:0 10px 40px #0009;z-index:12;opacity:0;transition:opacity .13s ease,transform .13s ease;max-width:min(960px,calc(100vw - 340px))}#force-bar.is-open{display:flex;opacity:1;transform:translate(-50%)}.fb-mark{width:4px;border-radius:2px 0 0 2px}.fb-main{padding:9px 13px;border-right:1px solid var(--line-soft);min-width:190px}.fb-title{font-size:16px;letter-spacing:1.4px;text-transform:uppercase}.fb-sub{display:block;font-size:11px;letter-spacing:1px;color:var(--text-faint);margin-top:2px}.fb-main .chips{margin-top:7px}.fb-stats{padding:9px 13px;border-right:1px solid var(--line-soft);min-width:120px}.fb-stats .kv dt,.fb-stats .kv dd{font-size:11px}.fb-status{padding:9px 13px;min-width:300px;flex:1}.fb-line{font-size:13px;letter-spacing:.5px;color:var(--text);margin-bottom:3px}.fb-line em{font-style:normal;color:var(--text-faint);font-size:10px;letter-spacing:2px;text-transform:uppercase;margin-right:6px}.fb-line b{font-family:var(--mono);color:var(--amber);font-weight:500}.fb-preview b{color:var(--cyan)}.fb-hint{color:var(--text-faint);font-size:12px;font-style:italic}.fb-bad{color:var(--danger);font-size:12px}.fb-bar{height:3px;background:var(--line);border-radius:2px;overflow:hidden;margin-top:6px}.fb-bar i{display:block;height:100%;background:var(--cyan);transition:width .25s linear}.fb-actions{display:flex;align-items:center;gap:6px;padding:9px 13px;border-left:1px solid var(--line-soft)}.fb-stop{display:inline-flex;align-items:center;gap:6px;padding:5px 10px 5px 7px;border-radius:3px;cursor:pointer;background:#b23b30;border:1px solid #d0554a;color:#fff;font:inherit;font-size:11px;letter-spacing:1.6px;text-transform:uppercase}.fb-stop:hover{background:#c4453a}.fb-stop[hidden]{display:none}.fb-stop svg{width:13px;height:13px}.fb-fire{background:#8a6630;border-color:#b8873f}.fb-fire:hover{background:#9d7436}.fb-fire.is-on{background:#e8b05c;border-color:#ffd89a;color:#241a06}.fb-cease{background:#47606d;border-color:#6b8794}.fb-cease:hover{background:#55707e}#log-panel{position:absolute;right:12px;bottom:12px;width:312px;z-index:11;background:#0d151c;border:1px solid var(--line);border-radius:3px;display:none;flex-direction:column;max-height:260px}#log-panel.is-open{display:flex}#log-panel.is-collapsed #log-list{display:none}#log-header{padding:7px 11px;font-size:10px;letter-spacing:2.4px;text-transform:uppercase;color:var(--text-faint);border-bottom:1px solid var(--line-soft);cursor:pointer}#log-header:hover{color:var(--text)}#log-list{overflow-y:auto;padding:4px 0}.log-row{display:grid;grid-template-columns:16px 1fr auto;gap:7px;align-items:baseline;padding:4px 11px;font-size:12px;color:var(--text-dim);line-height:1.35}.log-row.is-clickable{cursor:pointer}.log-row.is-clickable:hover{background:var(--panel-2)}.log-icon{text-align:center;font-size:11px}.log-time{font-family:var(--mono);font-size:10px;color:var(--text-faint)}.army-chip{display:inline-flex;align-items:center;gap:6px}.army-chip.is-mine{border-color:var(--cyan-dim);color:var(--text)}@media(max-width:1180px){#force-bar{max-width:calc(100vw - 24px);flex-wrap:wrap}#log-panel{max-height:180px}}#toast{position:absolute;left:50%;top:60px;transform:translate(-50%,-10px);background:#16222b;border:1px solid var(--danger);color:var(--text);padding:8px 14px;border-radius:3px;font-size:13px;letter-spacing:.6px;z-index:30;opacity:0;pointer-events:none;transition:opacity .15s,transform .15s;box-shadow:0 8px 30px #00000080}#toast.is-open{opacity:1;transform:translate(-50%)}#toast.is-good{border-color:var(--cyan-dim)}@media(max-width:1500px){#theatre-name{display:none}}@media(max-width:1280px){.res i{display:none}.purse{gap:8px}}.theatre-select{font-family:var(--ui);font-size:12px;letter-spacing:1.4px;text-transform:uppercase;background:var(--panel);color:var(--text-dim);border:1px solid var(--line);border-radius:2px;padding:5px 7px;max-width:220px}.theatre-select:hover{color:var(--text);border-color:var(--cyan-dim)}.theatre-select:focus{outline:none;border-color:var(--cyan)}.screen{position:absolute;inset:0;z-index:25;display:none;align-items:center;justify-content:center;background:#04090db8;backdrop-filter:blur(3px)}.screen.is-open{display:flex}.ps-frame,.rs-frame{width:min(1180px,calc(100vw - 48px));max-height:calc(100vh - 64px);display:flex;flex-direction:column;background:#0d151c;border:1px solid var(--line);border-radius:4px;box-shadow:0 24px 80px #0009}.rs-frame{width:min(1480px,calc(100vw - 48px))}.ps-head{display:flex;align-items:flex-start;justify-content:space-between;padding:14px 18px 12px;border-bottom:1px solid var(--line)}.ps-title{font-size:26px;letter-spacing:2.5px;text-transform:uppercase;line-height:1}.ps-sub{margin-top:5px;font-family:var(--mono);font-size:11px;color:var(--text-faint)}.ps-close{width:28px;height:28px;border:1px solid var(--line);background:transparent;color:var(--text-faint);border-radius:2px;cursor:pointer;font-size:17px;line-height:1}.ps-close:hover{color:var(--text);border-color:var(--danger)}.ps-status{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line-soft)}.ps-slot{background:#101a22;padding:11px 16px;min-height:84px}.ps-slot-title{font-size:10px;letter-spacing:2.4px;text-transform:uppercase;color:var(--text-faint);margin-bottom:8px}.ps-idle{color:var(--text-faint);font-size:13px;font-style:italic}.ps-active{display:flex;align-items:center;gap:11px}.ps-active-main{flex:1;min-width:0}.ps-active-main b{letter-spacing:1px}.ps-active-main em{font-style:normal;color:var(--text-faint);font-size:12px;margin-left:6px}.ps-active-actions{display:flex;gap:5px}.ps-bar{height:4px;background:var(--line);border-radius:2px;overflow:hidden;margin:6px 0 4px}.ps-bar i{display:block;height:100%;background:var(--cyan);transition:width .4s linear}.ps-remain{font-family:var(--mono);font-size:11px;color:var(--amber)}.ps-queue{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.ps-queued{position:relative;display:flex;align-items:center;justify-content:center;width:46px;height:46px;padding:3px;border:1px solid var(--line);border-radius:3px;background:var(--panel-2)}.ps-queued .icon-btn{position:absolute;top:-6px;right:-6px;width:17px;height:17px;font-size:10px;line-height:1;padding:0;border-radius:50%}.ps-slot-empty{width:46px;height:46px;border-radius:3px;border:1px dashed var(--line);opacity:.55}.ps-flow{flex:0 0 auto;width:6px;height:6px;transform:rotate(-45deg);border-left:1.5px solid var(--line);border-bottom:1.5px solid var(--line)}.ps-icon{color:var(--text-dim);display:inline-flex}.ps-icon svg{display:block}.ps-icon.has-art{width:100%;height:100%}.bld-art{width:100%;height:100%;object-fit:contain;display:block;filter:drop-shadow(0 1px 2px rgba(0,0,0,.45))}.ps-portrait{position:relative;flex:0 0 auto;width:54px;height:54px;display:flex;align-items:center;justify-content:center}.ps-portrait.is-row{width:40px;height:40px}.ps-active .ps-portrait{width:62px;height:62px}.ps-lvl{position:absolute;right:-3px;bottom:-3px;min-width:17px;height:17px;display:inline-flex;align-items:center;justify-content:center;padding:0 4px;background:var(--panel);border:1px solid var(--cyan-dim);border-radius:3px;font-family:var(--mono);font-size:11px;line-height:1;color:var(--cyan);box-shadow:0 1px 3px #00000059}.ps-lvl.is-max{border-color:var(--amber-dim);color:var(--amber)}.ps-tabs{display:flex;gap:2px;padding:10px 16px 0;border-bottom:1px solid var(--line)}.ps-tab{font-family:var(--ui);font-size:12px;letter-spacing:1.6px;text-transform:uppercase;padding:8px 15px;border:1px solid var(--line);border-bottom:0;border-radius:3px 3px 0 0;background:var(--panel);color:var(--text-dim);cursor:pointer;margin-bottom:-1px}.ps-tab.is-on{background:#0d151c;color:var(--text);border-color:var(--line)}.ps-tab.is-disabled{opacity:.4;cursor:not-allowed}.ps-tab:hover:not(.is-disabled):not(.is-on){color:var(--text)}.ps-list{overflow-y:auto;padding-bottom:10px}.ps-section{padding:13px 16px 7px;font-size:10px;letter-spacing:2.6px;text-transform:uppercase;color:var(--text-faint);border-bottom:1px solid var(--line-soft)}.ps-section span{display:block;text-transform:none;letter-spacing:.3px;font-size:11px;margin-top:3px;opacity:.75}.ps-row{display:grid;grid-template-columns:34px 1fr auto 96px auto;gap:14px;align-items:center;padding:9px 16px;border-bottom:1px solid var(--line-soft)}.ps-row:hover{background:#111c25}.ps-row.is-maxed{opacity:.45}.ps-row-name{font-size:15px;letter-spacing:.6px}.ps-row-name em{display:block;font-style:normal;font-size:11px;color:var(--text-faint);margin-top:2px}.ps-row-cost{display:flex;gap:12px}.ps-row-time{font-family:var(--mono);font-size:11px;color:var(--text-dim);text-align:right}.ps-row-actions{display:flex;gap:5px}.ps-cost{display:inline-flex;align-items:center;gap:4px;font-family:var(--mono);font-size:12px;color:var(--text)}.ps-cost svg{color:var(--text-faint)}.ps-cost.is-short{color:var(--danger)}.ps-cost.is-short svg{color:var(--danger)}.ps-cost.is-short .res-art{filter:grayscale(.7) brightness(.8)}.res-art{width:16px;height:16px;object-fit:contain;vertical-align:-3px;flex:none}.icon-btn{width:28px;height:28px;border:1px solid var(--line);background:var(--panel);color:var(--text-dim);border-radius:2px;cursor:pointer;font-size:13px;line-height:1}.icon-btn:hover:not(:disabled){color:var(--text);border-color:var(--cyan-dim)}.icon-btn.is-go:hover:not(:disabled){color:#8fe6b4;border-color:#2c5c43}.icon-btn.is-danger:hover:not(:disabled){color:var(--danger);border-color:#5c2f2c}.icon-btn:disabled{opacity:.3;cursor:not-allowed}.ps-info{display:none;padding:2px 16px 12px 64px;border-bottom:1px solid var(--line-soft)}.ps-info.is-open{display:block}.ps-info p{margin:4px 0;font-size:13px;color:var(--text-dim);line-height:1.5}.ps-effects{color:var(--cyan)!important;font-family:var(--mono);font-size:11.5px!important}.ps-blocked{color:var(--danger)!important;font-size:12px!important}.rs-body{display:grid;grid-template-columns:1fr 336px;gap:1px;background:var(--line-soft);overflow:hidden}.rs-left{background:#0d151c;display:flex;flex-direction:column;min-width:0}.rs-side{background:#101a22;padding:12px;overflow-y:auto;display:flex;flex-direction:column;gap:12px}.rs-grid-wrap{overflow:auto;padding:4px 0 12px}.rs-grid{border-collapse:collapse;width:100%}.rs-grid th,.rs-grid td{border-right:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft)}.rs-grid thead th{position:sticky;top:0;background:#101a22;z-index:2;font-size:11px;letter-spacing:1.6px;text-transform:uppercase;color:var(--text-faint);padding:9px 12px;white-space:nowrap;font-weight:500}.rs-grid .is-today{background:#4fd8ff12}.rs-grid thead .is-today{color:var(--cyan);box-shadow:inset 2px 0 0 var(--cyan)}.rs-corner{text-align:left}.rs-corner span{display:block;color:var(--cyan);font-size:12px;margin-top:2px}.rs-branch{text-align:left;padding:9px 12px;min-width:190px;position:sticky;left:0;background:#0d151c;z-index:1}.rs-branch b{font-weight:500;font-size:14px;letter-spacing:.7px}.rs-branch span{display:block;font-size:11px;color:var(--text-faint);margin-top:2px;line-height:1.4}.rs-grid td{padding:6px;text-align:center}.rs-node{width:74px;padding:6px 4px;border-radius:3px;cursor:pointer;border:1px solid var(--line);background:var(--panel);color:var(--text-dim);display:flex;flex-direction:column;align-items:center;gap:3px}.rs-node:hover{border-color:var(--cyan-dim);color:var(--text)}.rs-lvl{font-size:11px;letter-spacing:1px}.rs-chev{font-size:8px;letter-spacing:1px;color:var(--amber)}.rs-node.is-done{background:#16301f;border-color:#2f6b45;color:#9fe0bb}.rs-node.is-running{background:#12262f;border-color:var(--cyan);color:var(--cyan)}.rs-node.is-ready{border-color:var(--amber-dim);color:var(--text)}.rs-node.is-short{border-color:#5c2f2c;color:var(--text-faint)}.rs-node.is-locked,.rs-node.is-future{opacity:.42}.rs-node.is-selected{box-shadow:0 0 0 2px var(--cyan)}.rs-panel{border:1px solid var(--line);border-radius:3px;background:#0d151c}.rs-panel-title{padding:8px 12px;font-size:10px;letter-spacing:2.4px;text-transform:uppercase;color:var(--text-faint);border-bottom:1px solid var(--line-soft)}.rs-panel>.ps-idle{padding:12px}.rs-slot{padding:10px 12px;border-bottom:1px solid var(--line-soft)}.rs-slot:last-child{border-bottom:0}.rs-slot.is-free{color:var(--text-faint);font-size:13px;font-style:italic;text-align:center;padding:16px 12px}.rs-slot-name{font-size:14px;letter-spacing:.6px}.rs-slot-name em{font-style:normal;color:var(--text-faint);font-size:11px;margin-left:5px}.rs-slot-foot{display:flex;align-items:center;justify-content:space-between;gap:8px}.rs-detail{padding:11px 12px}.rs-detail b{font-size:16px;letter-spacing:1px}.rs-detail em{font-style:normal;display:block;font-family:var(--mono);font-size:11px;color:var(--text-faint);margin-top:2px}.rs-detail p{margin:8px 0 0;font-size:13px;color:var(--text-dim);line-height:1.5}.rs-cost{display:flex;flex-wrap:wrap;gap:12px;padding:10px 12px;border-top:1px solid var(--line-soft)}.rs-clock{color:var(--text-faint)}.rs-start{display:block;width:calc(100% - 24px);margin:0 12px 12px;font-family:var(--ui);font-size:14px;letter-spacing:2px;text-transform:uppercase;padding:10px;border-radius:2px;cursor:pointer;background:#2f6b45;border:1px solid #3f8a5c;color:#eafaf0}.rs-start:hover:not(:disabled){background:#388052}.rs-start:disabled{background:var(--panel);border-color:var(--line);color:var(--text-faint);cursor:not-allowed}.day{font-family:var(--mono);font-size:12px;color:var(--text-dim)}.day b{color:var(--cyan);font-weight:500}.pp-build{display:block;width:100%;margin-top:8px;padding:8px;font-family:var(--ui);font-size:12px;letter-spacing:1.8px;text-transform:uppercase;background:var(--panel-2);border:1px solid var(--cyan-dim);color:var(--cyan);border-radius:2px;cursor:pointer}.pp-build:hover{background:#16323d}.ps-status.is-three{grid-template-columns:1fr 1fr 1fr}@media(max-width:1000px){.ps-status.is-three{grid-template-columns:1fr 1fr}}.fb-damage{color:var(--danger)!important}.screen.is-home{background-color:#070f16;background-image:url(../art/ui/front-door.webp);background-repeat:no-repeat;background-position:center top;background-size:cover;background-attachment:fixed;backdrop-filter:none;align-items:flex-start;overflow-y:auto}.screen.is-home:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;background:linear-gradient(180deg,#e6edf1c7,#e6edf19e 38%,#e6edf16b)}.screen.is-home>*{position:relative;z-index:1}.hs-frame{width:min(1080px,calc(100vw - 40px));margin:40px auto;display:flex;flex-direction:column;gap:14px}.hs-frame.is-narrow{width:min(460px,calc(100vw - 40px));margin-top:12vh}.hs-head{display:flex;align-items:center;justify-content:space-between}.hs-brand{font-size:30px;letter-spacing:5px;text-transform:uppercase;font-weight:600}.hs-brand span{color:var(--cyan)}.hs-strap{color:var(--text-dim);font-size:14px;line-height:1.6;margin:4px 0 18px}.hs-notice{border:1px solid var(--danger);color:#f0b2ac;background:#1d1214;padding:9px 12px;border-radius:3px;font-size:13px}.hs-auth{display:flex;flex-direction:column;gap:11px}.hs-auth label{display:flex;flex-direction:column;gap:5px;font-size:12px;letter-spacing:1.6px;text-transform:uppercase;color:var(--text-faint)}.hs-auth input{font-family:var(--ui);font-size:16px;letter-spacing:.6px;background:var(--panel-2);color:var(--text);border:1px solid var(--line);border-radius:2px;padding:9px 11px}.hs-auth input:focus{outline:none;border-color:var(--cyan)}.hs-auth-actions{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:stretch}.hs-auth-actions .rs-start{width:auto;margin:0}.hs-auth-actions .btn{padding:10px 14px}.hs-guest{background:none;border:0;color:var(--cyan);font-family:var(--ui);font-size:13px;letter-spacing:1.2px;cursor:pointer;padding:4px;text-align:left}.hs-guest:hover{text-decoration:underline}.hs-small{color:var(--text-faint);font-size:12px;line-height:1.55;margin:0}.hs-top{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media(max-width:820px){.hs-top{grid-template-columns:1fr}}.hs-panel{border:1px solid var(--line);border-radius:3px;background:#0d151c}.hs-pad{padding:14px}.hs-profile-body{display:flex;gap:14px;padding:14px;align-items:center}.hs-badge{width:54px;height:54px;flex:0 0 54px;border-radius:50%;border:2px solid var(--cyan-dim);color:var(--cyan);display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:600}.hs-profile-main{flex:1;min-width:0}.hs-name{font-size:19px;letter-spacing:1.2px;text-transform:uppercase}.hs-name em{font-style:normal;font-size:11px;color:var(--text-faint);letter-spacing:2px;margin-left:6px}.hs-xp{font-family:var(--mono);font-size:11px;color:var(--text-faint);margin-top:4px}.hs-new-body{padding:14px;display:flex;flex-direction:column;gap:10px}.hs-new-body label{display:flex;flex-direction:column;gap:4px;font-size:11px;letter-spacing:1.8px;text-transform:uppercase;color:var(--text-faint)}.hs-new-body select{font-family:var(--ui);font-size:14px;background:var(--panel-2);color:var(--text);border:1px solid var(--line);border-radius:2px;padding:8px 9px}.hs-new-body select:focus{outline:none;border-color:var(--cyan)}.hs-new-body .rs-start{width:100%;margin:4px 0 0}.hs-row{display:grid;grid-template-columns:4px 1fr auto auto auto;gap:14px;align-items:center;padding:11px 14px;border-top:1px solid var(--line-soft)}.hs-row:hover{background:#111c25}.hs-row-mark{align-self:stretch;border-radius:2px;background:var(--line)}.hs-row-mark.hs-running{background:var(--cyan)}.hs-row-mark.hs-lobby{background:var(--amber)}.hs-row-mark.hs-finished{background:var(--text-faint)}.hs-row-name{font-size:16px;letter-spacing:.8px}.hs-row-sub{font-size:12px;color:var(--text-faint);margin-top:2px}.hs-row-stat{text-align:right;min-width:92px}.hs-row-stat b{display:block;font-family:var(--mono);font-size:13px;font-weight:500}.hs-row-stat span{font-size:11px;color:var(--text-faint)}.hs-row-actions{display:flex;gap:6px;align-items:center}.rs-start.hs-inline{width:auto;margin:0;padding:8px 16px;font-size:12px}@media(max-width:720px){.hs-row{grid-template-columns:4px 1fr auto}.hs-row-stat:nth-of-type(2){display:none}}.ds-frame{width:min(1080px,calc(100vw - 48px))}.ds-body{padding:14px 18px 18px;overflow-y:auto;display:grid;gap:14px}.ds-row{display:grid;grid-template-columns:1fr 110px auto;gap:14px;align-items:center;padding:12px 14px;border-top:1px solid var(--line-soft);border-left:3px solid transparent}.ds-row:first-of-type{border-top:0}.ds-row.is-war{border-left-color:var(--danger)}.ds-row.is-alliance{border-left-color:var(--cyan)}.ds-row.is-peace{border-left-color:var(--line)}.ds-who{display:flex;align-items:center;gap:10px}.ds-name{font-size:16px;letter-spacing:.8px}.ds-seat{font-size:11px;color:var(--text-faint);margin-top:2px;font-family:var(--mono)}.ds-state{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--text-dim)}.ds-row.is-war .ds-state{color:var(--danger)}.ds-row.is-alliance .ds-state{color:var(--cyan)}.ds-actions{display:flex;gap:6px;align-items:center;justify-content:flex-end}.ds-actions .btn.is-danger{border-color:#4a2a28;color:#d08a84}.ds-actions .btn.is-danger:hover{border-color:var(--danger);color:#f0b6b0}.ds-actions .btn.is-armed{background:#4a1f1c;border-color:var(--danger);color:#ffd9d4}.ds-pending{font-family:var(--mono);font-size:11px;color:var(--amber);border:1px solid #5a441c;border-radius:2px;padding:6px 10px}.ds-pending b{font-weight:500}.ds-offer{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 14px;border-top:1px solid var(--line-soft)}.ds-offer:first-of-type{border-top:0}.ds-offer-text{display:flex;align-items:center;gap:8px;font-size:14px}.ds-offer-text em{font-style:normal;font-family:var(--mono);font-size:11px;color:var(--text-faint)}.ds-offer-wait{font-family:var(--mono);font-size:11px;color:var(--text-faint)}.ds-offer-actions{display:flex;gap:6px}.ds-offers{border-color:var(--cyan-dim)}.ds-blocs{display:flex;flex-wrap:wrap;gap:8px;padding:12px 14px}.ds-bloc{display:flex;align-items:center;gap:10px;padding:7px 11px;border:1px solid var(--line);border-radius:2px;background:var(--panel)}.ds-bloc.is-pact{border-color:var(--cyan-dim)}.ds-bloc-members{display:flex;align-items:center;gap:6px;font-size:12px;letter-spacing:1.2px;text-transform:uppercase}.ds-bloc-members i{font-style:normal;color:var(--text-faint);margin:0 2px}.ds-bloc-share{font-family:var(--mono);font-size:12px;color:var(--text-dim)}.ds-bloc.is-pact .ds-bloc-share{color:var(--cyan)}.ds-elsewhere{display:grid;gap:2px;padding:10px 14px}.ds-pair{display:flex;align-items:center;gap:7px;font-size:12px;letter-spacing:1px;text-transform:uppercase}.ds-pair em{font-style:normal;text-transform:none;letter-spacing:0;font-size:12px;color:var(--text-faint);margin:0 3px}.ds-pair.is-war em{color:var(--danger)}.ds-pair.is-alliance em{color:var(--cyan)}.standing .rel{font-style:normal;margin-left:5px;font-size:11px}.standing .rel.is-war{color:var(--danger)}.standing .rel.is-alliance{color:var(--cyan)}.standing .rel.is-pending{color:var(--amber)}.pp-relation{margin-top:6px;font-family:var(--mono);font-size:11px;letter-spacing:.4px}.pp-relation.is-war{color:var(--danger)}.pp-relation.is-alliance{color:var(--cyan)}.pp-relation.is-peace{color:var(--text-faint)}@media(max-width:720px){.ds-row{grid-template-columns:1fr;gap:8px}.ds-actions{justify-content:flex-start}}@supports (height: 100dvh){#app{height:100dvh}}@media(pointer:coarse){.btn{padding:11px 13px}.ps-close,.pp-close{width:34px;height:34px;font-size:20px}.log-row{padding:7px 11px}}@media(max-width:760px){#hud{height:auto;flex-wrap:wrap;padding-top:env(safe-area-inset-top);row-gap:0;overflow:visible}.hud-block{padding:0 8px;height:40px}.brand{font-size:13px;letter-spacing:1.5px}#camera-readout,#link-state,#timescale{display:none}.hud-spacer{order:3;flex:1 0 100%;overflow-x:auto;overflow-y:hidden;border-top:1px solid var(--line-soft);padding:5px 8px;height:auto;scrollbar-width:none}.hud-spacer::-webkit-scrollbar{display:none}.hud-spacer,.purse{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 20px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 20px),transparent)}.purse{overflow-x:auto;scrollbar-width:none;max-width:52vw}.purse::-webkit-scrollbar{display:none}#btn-debug{display:none}#province-panel{inset:auto 0 0;width:auto;max-height:48vh;border-radius:12px 12px 0 0;border-bottom:0;transform:translateY(18px);padding-bottom:calc(12px + env(safe-area-inset-bottom))}#province-panel.is-open{transform:none}#log-panel{inset:auto 8px;width:auto;max-height:168px}#log-panel.is-open{position:absolute;top:120px}#force-bar{left:0;right:0;bottom:0;transform:translateY(20px);max-width:none;border-radius:12px 12px 0 0;border-bottom:0;flex-wrap:wrap;padding-bottom:env(safe-area-inset-bottom)}#force-bar.is-open{transform:none}.fb-main,.fb-stats,.fb-status{min-width:0;flex:1 1 100%}.fb-stats{display:none}.fb-actions{flex:1 1 100%;border-left:0;border-top:1px solid var(--line-soft)}.screen{align-items:stretch}.ps-frame,.rs-frame,.ds-frame{width:100%;max-width:none;max-height:none;height:100%;border-radius:0;border-left:0;border-right:0;padding-bottom:env(safe-area-inset-bottom)}.hs-frame{width:100%;max-width:none;padding:0 10px calc(20px + env(safe-area-inset-bottom))}.hs-frame.is-narrow{width:100%;margin-top:6vh}.ps-title{font-size:21px}.ps-head{padding:12px 14px 10px}.rs-grid-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.rs-grid{min-width:680px}.rs-body{grid-template-columns:1fr}.rs-side{max-height:44vh}.ps-row{grid-template-columns:30px 1fr auto;gap:10px;padding:10px 12px}.ps-row-cost{grid-column:2 / 4;gap:10px;flex-wrap:wrap}.ps-row-time{grid-column:2 / 4;text-align:left}.ps-status,.ps-status.is-three{grid-template-columns:1fr}#debug-readout{display:none!important}#attribution{left:6px;right:6px;bottom:calc(52px + env(safe-area-inset-bottom));max-width:none;font-size:8px;opacity:.6;max-height:2.8em;overflow:hidden}#toast{bottom:auto;top:128px}}@media(max-height:460px)and (orientation:landscape){#hud .hud-spacer{display:none}#province-panel{max-height:78vh}#log-panel.is-open{display:none}}.ps-row.has-art{grid-template-columns:52px 1fr auto 96px auto}.ps-art{width:52px;height:52px;object-fit:contain;display:block;filter:drop-shadow(0 2px 4px rgba(0,0,0,.55))}.ps-info.has-art.is-open{display:grid;grid-template-columns:148px 1fr;gap:14px;align-items:start}.ps-info.has-art p{margin-top:0}.ps-art-large{grid-row:span 3;width:148px;height:148px;object-fit:contain;filter:drop-shadow(0 3px 8px rgba(0,0,0,.6))}.chip-art{width:20px;height:20px;object-fit:contain;vertical-align:-5px;margin-right:5px}@media(max-width:760px){.ps-row.has-art{grid-template-columns:40px 1fr auto}.ps-art{width:40px;height:40px}.ps-info.has-art.is-open{grid-template-columns:96px 1fr}.ps-art-large{width:96px;height:96px}}#hover-label{position:absolute;z-index:13;pointer-events:none;display:none;transform:translate(14px,14px);background:#080f14f0;border:1px solid var(--line);border-left-width:3px;border-radius:2px;padding:5px 9px 6px;box-shadow:0 6px 18px #00000080}#hover-label.is-open{display:block}#hover-label b{display:block;font-size:14px;letter-spacing:1.2px;text-transform:uppercase;line-height:1.1}#hover-label span{display:block;margin-top:2px;font-family:var(--mono);font-size:10px;color:var(--text-faint)}#hover-label em{font-style:normal}#hover-label.is-war em{color:var(--danger)}#hover-label.is-alliance em{color:var(--cyan)}@media(pointer:coarse){#hover-label{display:none!important}}#rail{position:absolute;left:8px;top:calc(var(--hud-h) + 8px);z-index:12;display:flex;flex-direction:column;gap:5px}.rail-btn{position:relative;width:44px;height:44px;padding:0;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text-dim);background:#080f14f2;border:1px solid var(--line);border-radius:3px;transition:color .12s,border-color .12s,background .12s}.rail-btn:hover{color:#fff;border-color:var(--cyan-dim);background:var(--panel-2)}.rail-btn.is-on{color:var(--bg);background:var(--cyan);border-color:var(--cyan)}.rail-btn svg{display:block;width:22px;height:22px}.rail-tip{position:absolute;left:calc(100% + 9px);top:50%;z-index:20;transform:translateY(-50%) translate(-5px);display:flex;align-items:center;gap:7px;padding:4px 9px 5px;white-space:nowrap;pointer-events:none;font-size:12px;letter-spacing:1.1px;text-transform:uppercase;color:var(--text);background:#080f14f5;border:1px solid var(--line);border-left:2px solid var(--cyan-dim);border-radius:2px;box-shadow:0 5px 16px #0000008c;opacity:0;transition:opacity .12s,transform .12s}.rail-tip kbd{font-family:var(--mono);font-size:10px;letter-spacing:0;text-transform:none;color:var(--text-faint);background:#ffffff12;border:1px solid var(--line);border-radius:2px;padding:0 4px}.rail-btn:hover .rail-tip,.rail-btn:focus-visible .rail-tip{opacity:1;transform:translateY(-50%) translate(0)}@media(pointer:coarse){.rail-tip{display:none}}.purse{gap:17px}.res{display:flex;align-items:center;gap:8px}.res>i{display:block;color:var(--text-faint)}.res>i .res-art{width:34px;height:34px;vertical-align:0}.res-figures{display:flex;flex-direction:column;line-height:1.08}.res-figures b{font-family:var(--mono);font-size:16px;font-weight:500;color:var(--text)}.res-figures u{text-decoration:none;font-family:var(--mono);font-size:11px;color:#5fbf7a;letter-spacing:-.2px}.res-figures u.is-down{color:var(--danger)}@media(max-width:760px){#rail{top:auto;bottom:calc(8px + env(safe-area-inset-bottom));left:6px;flex-direction:row}.rail-btn{width:44px;height:44px}.rail-tip{left:50%;top:auto;bottom:calc(100% + 9px);transform:translate(-50%) translateY(5px);border-left-width:1px;border-bottom:2px solid var(--cyan-dim)}.rail-btn:hover .rail-tip,.rail-btn:focus-visible .rail-tip{transform:translate(-50%) translateY(0)}.res{gap:6px}.res>i .res-art{width:24px;height:24px}.res-figures b{font-size:13px}.res-figures u{font-size:10px}#powers-panel{left:8px;right:8px;width:auto;top:calc(52px + env(safe-area-inset-top))}#layer-panel{left:8px;top:calc(52px + env(safe-area-inset-top))}}.hs-pick-back{position:fixed;inset:0;z-index:60;display:flex;align-items:center;justify-content:center;background:#04090eb8;backdrop-filter:blur(2px)}.hs-pick{width:min(420px,calc(100vw - 32px));padding:16px;background:var(--panel);border:1px solid var(--line);border-radius:4px;box-shadow:0 24px 60px #0000008c}.hs-pick-list{display:flex;flex-direction:column;gap:6px;margin:12px 0}.hs-pick-one{display:flex;align-items:center;gap:11px;width:100%;padding:9px 12px;cursor:pointer;background:var(--panel-2);border:1px solid var(--line);border-radius:3px;color:var(--text);text-align:left;font-size:14px;letter-spacing:.6px}.hs-pick-one:hover{border-color:var(--cyan-dim);background:var(--bg)}.hs-pick-one i{width:14px;height:14px;border-radius:2px;flex:0 0 auto;box-shadow:0 0 0 1px #00000059 inset}.hs-pick-any{width:100%}.hs-power{display:inline-flex;align-items:center;gap:7px}.hs-power i{width:11px;height:11px;border-radius:2px;flex:0 0 auto;box-shadow:0 0 0 1px #00000059 inset}.screen>*,#province-panel,.fb-frame,.fb-picker,#hover-label{--bg: #eef3f5;--panel: #ffffff;--panel-2: #e4ecf0;--line: #c3d2da;--line-soft: #dbe5ea;--text: #17252e;--text-dim: #4d6472;--text-faint: #78909e;--cyan: #0b7fa6;--cyan-dim: #6fb6cf;--amber: #9a6a14;--amber-dim: #c79a45;--danger: #b23b30;color:var(--text)}.ps-frame,.rs-frame,.ds-frame,.rs-panel,.hs-panel,#province-panel{background:var(--panel);box-shadow:0 18px 50px #030a0f73}#province-panel{background:linear-gradient(180deg,#fff,#f2f7f9)}.rs-side,.ps-row:hover,.hs-row:hover,.log-row.is-clickable:hover{background:var(--panel-2)}.rs-grid .is-today{background:#0b7fa61a}.ds-blocs .ds-bloc,.rail-btn{background:var(--panel)}.chip,.btn,.icon-btn,.tiny-select,.theatre-select,.hs-field input,.ps-tab{background:var(--panel-2);border-color:var(--line);color:var(--text-dim)}.btn:hover,.icon-btn:hover{background:#d7e3e9;color:var(--text)}.ps-tab.is-on{background:var(--panel);color:var(--text)}.hs-field input{background:#fff;color:var(--text)}#hover-label{background:#fffffff5}#log-panel{background:var(--panel)}#log-header{color:var(--text-dim)}.rs-start{background:#2f7d52;border-color:#2a6f49;color:#f2fbf5}.rs-start:hover:not(:disabled){background:#35915f}.rs-start:disabled{background:var(--panel-2);border-color:var(--line);color:var(--text-faint)}#hud,#rail,#toast,#debug-readout,#boot{color-scheme:dark}.fb-condition{position:relative;height:14px;margin:7px 0 8px;border-radius:2px;background:var(--panel-2);border:1px solid var(--line);overflow:hidden}.fb-condition i{display:block;height:100%;transition:width .3s ease}.fb-condition b{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:9px;font-weight:500;color:var(--text);letter-spacing:.4px}.fb-tiles{display:flex;flex-wrap:wrap;gap:6px}.fb-tile{position:relative;width:62px;padding:3px 3px 15px;border:1px solid var(--line);border-radius:3px;background:var(--panel-2)}.fb-tile-art{display:block;width:100%;height:40px;object-fit:contain}.fb-tile.is-plain{padding-top:22px}.fb-tile-name{position:absolute;left:0;right:0;bottom:2px;text-align:center;font-size:9px;line-height:1.1;color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 3px}.fb-tile-count{position:absolute;top:1px;right:1px;min-width:16px;padding:0 3px;font-family:var(--mono);font-size:10px;font-weight:500;text-align:center;color:var(--panel);background:var(--text);border-radius:2px}.fb-order{width:30px;height:30px;display:flex;align-items:center;justify-content:center}.fb-order svg{display:block}@media(max-width:760px){.fb-tiles{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.fb-tiles::-webkit-scrollbar{display:none}.fb-tile{flex:0 0 auto}}.ps-slot,.rs-side,.rs-head-row,.rs-left,.hs-panel,.ps-tab.is-on{background:var(--panel-2)}.ps-status{background:var(--line-soft)}.ps-status>*{background:var(--panel)}.rs-node.is-done{background:#dff0e6;border-color:#7fbf9b;color:#1c5c39}.rs-node.is-running{background:#ddeef5;border-color:var(--cyan);color:#0a5f7d}.rs-node{background:var(--panel-2)}.pp-build{background:var(--panel-2);color:var(--cyan);border-color:var(--cyan-dim)}.pp-build:hover{background:#d3e7ee}.hs-notice{background:#fbe3e0;color:#8a2b22;border-color:#e2a89f}.log-row{color:var(--text-dim)}.log-row.is-mine{color:var(--text)}.ds-pending{background:#fdf3e0}.hs-badge{color:var(--panel)}.screen.is-home{background-color:#e6edf1}.rs-grid thead th,.rs-branch{background:var(--panel-2)}.rs-branch b{color:var(--text)}.ps-counters{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px}.ps-counters em{font-style:normal;font-size:10px;letter-spacing:1.8px;text-transform:uppercase;color:var(--text-faint);margin-left:6px}.ps-counters em:first-child{margin-left:0}.ps-counter{font-size:11px;padding:2px 7px;border-radius:2px;border:1px solid var(--line);background:var(--panel-2);color:var(--text-dim)}.ps-counter b{font-family:var(--mono);font-weight:500}.ps-counter.is-strong{border-color:#7fbf9b;color:#1c5c39;background:#e4f2ea}.ps-counter.is-weak{border-color:#e2a89f;color:#8a2b22;background:#fbe9e6}.fb-tile-bar{position:absolute;left:3px;right:3px;bottom:12px;height:3px;background:var(--line);border-radius:1px;overflow:hidden}.fb-tile-bar i{display:block;height:100%}.fb-tile-count.is-over{background:#9a6a14}#debug-lines{margin:0;font:inherit;white-space:pre}#debug-controls{margin-top:8px;padding-top:8px;border-top:1px solid var(--line);display:flex;align-items:center;gap:8px}#debug-controls label{display:flex;align-items:center;gap:7px;letter-spacing:1.6px}.hud-profile{background:none;border:0;border-right:1px solid var(--line-soft);font:inherit;color:var(--text);cursor:pointer;gap:8px;transition:background .12s}.hud-profile:hover{background:var(--panel-2)}.hud-profile-name{font-size:12px;letter-spacing:1.4px;text-transform:uppercase}.hud-profile-level{font-family:var(--mono);font-size:11px;font-weight:500;min-width:20px;padding:2px 5px;text-align:center;color:var(--bg);background:var(--amber);border-radius:2px}.pf-frame{width:min(760px,calc(100vw - 48px))}.pf-body{padding:16px 18px 20px;overflow-y:auto;display:grid;gap:16px}.pf-identity{display:flex;align-items:center;gap:18px}.pf-rank{text-align:center;flex:none}.pf-badge{width:66px;height:66px;display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:26px;font-weight:600;color:var(--bg);background:linear-gradient(160deg,#e8c05c,#b8862f);border-radius:4px;box-shadow:inset 0 0 0 2px #ffffff40}.pf-rank-label{margin-top:5px;font-size:9px;letter-spacing:2px;text-transform:uppercase;color:var(--text-faint)}.pf-who{flex:1 1 auto;min-width:0;display:grid;gap:7px}.pf-name{font-size:20px;font-weight:600;letter-spacing:.6px}.pf-name em{font-style:normal;font-size:10px;letter-spacing:1.6px;text-transform:uppercase;color:var(--text-faint);border:1px solid var(--line);border-radius:2px;padding:2px 6px;margin-left:7px;vertical-align:3px}.pf-faction{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-dim)}.pf-faction i{font-style:normal;font-family:var(--mono);font-size:11px;color:var(--text-faint)}.pf-xp-bar{height:5px;background:var(--line);border-radius:3px;overflow:hidden}.pf-xp-bar span{display:block;height:100%;background:var(--amber);border-radius:3px}.pf-xp-text{font-family:var(--mono);font-size:10px;color:var(--text-faint)}.pf-victory{border:1px solid var(--line);border-radius:3px;padding:12px 14px}.pf-victory-head,.pf-victory-foot{display:flex;justify-content:space-between;align-items:baseline}.pf-victory-head span{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--text-faint)}.pf-victory-head b{font-family:var(--mono);font-size:15px}.pf-victory-bar{position:relative;height:9px;margin:9px 0 7px;background:var(--line);border-radius:4px;overflow:hidden}.pf-victory-bar span{display:block;height:100%;border-radius:4px}.pf-victory-foot span{font-family:var(--mono);font-size:11px;color:var(--text-dim)}.pf-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line-soft)}.pf-stat{background:var(--panel);padding:10px 12px}.pf-stat dt{font-size:9px;letter-spacing:1.8px;text-transform:uppercase;color:var(--text-faint)}.pf-stat dd{margin:4px 0 0;font-family:var(--mono);font-size:15px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pf-rings{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.pf-ring{text-align:center;position:relative}.pf-ring svg{display:block;margin:0 auto}.pf-ring b{position:absolute;top:30px;left:0;right:0;font-family:var(--mono);font-size:17px;font-weight:500;color:var(--text)}.pf-ring b small{font-size:12px;color:var(--text-faint)}.pf-ring span{display:block;margin-top:6px;font-size:10px;letter-spacing:1.4px;text-transform:uppercase;color:var(--text-faint)}@media(max-width:760px){.pf-stats,.pf-rings{grid-template-columns:repeat(2,1fr)}.hud-profile-name{display:none}}.pv-mark{width:4px;border-radius:2px 0 0 2px;flex:none}.pv-id{padding:13px 17px;border-right:1px solid var(--line-soft);min-width:178px;cursor:help}.pv-name{font-size:21px;letter-spacing:1.5px;text-transform:uppercase;line-height:1.1}.pv-sub{margin-top:4px;font-size:12px;letter-spacing:.9px;text-transform:uppercase;color:var(--text-dim)}.pv-block{padding:11px 17px;border-right:1px solid var(--line-soft);flex:none}.pv-block-wide{flex:0 0 auto}.pv-label{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--text-dim);margin-bottom:8px}.pv-vp{text-align:center;padding-top:7px;cursor:help}.pv-vp b{display:block;font-family:var(--mono);font-size:26px;color:var(--amber);line-height:1}.pv-vp span{font-size:10px;letter-spacing:2px;color:var(--text-faint)}.pv-outputs{display:grid;grid-template-columns:repeat(3,minmax(84px,auto));gap:5px 16px}.pv-out{display:flex;align-items:center;gap:6px;cursor:help}.pv-out i{display:block}.pv-out .res-art{width:26px;height:26px;vertical-align:0}.pv-out b{font-family:var(--mono);font-size:16px;color:#1f7a45;font-weight:500}.pv-out.is-zero{opacity:.35}.pv-out.is-zero b{color:var(--text-faint)}.pv-people{padding-left:14px;border-left:1px solid var(--line-soft);cursor:help;display:flex;flex-direction:column;justify-content:center;flex:none;min-width:64px}.pv-people b{font-family:var(--mono);font-size:16px;line-height:1.1;font-weight:500}.pv-people span{font-size:10px;letter-spacing:1.6px;text-transform:uppercase;color:var(--text-faint)}.pv-tiles{display:flex;gap:6px;flex-wrap:wrap;max-width:190px;min-height:42px}.pv-tile{position:relative;width:44px;height:44px;border-radius:3px;cursor:pointer;border:1px solid var(--line);background:var(--panel-2);display:flex;align-items:center;justify-content:center;color:var(--text-dim);transition:border-color .12s,color .12s}.pv-tile:hover{border-color:var(--cyan-dim);color:var(--text)}.pv-tile-art svg{width:24px;height:24px;display:block}.pv-tile-art{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.pv-tile-img{width:100%;height:100%;object-fit:contain;display:block;filter:drop-shadow(0 1px 2px rgba(0,0,0,.4))}.pv-tile-level{position:absolute;top:-5px;right:-5px;min-width:16px;padding:1px 3px;font-family:var(--mono);font-size:10px;font-weight:500;text-align:center;color:var(--bg);background:var(--amber);border-radius:2px}.pv-tile.is-working{border-color:var(--cyan-dim);color:var(--cyan)}.pv-tile.is-bare,.pv-force.is-bare{border-style:dashed;color:var(--text-faint);cursor:help;display:flex;align-items:center;justify-content:center}.pv-tile.is-unknown,.pv-force.is-unknown{border-style:dashed;color:var(--text-faint);cursor:help;font-family:var(--mono);font-size:18px;background:transparent;box-shadow:none}.pv-force.is-unknown{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:26px;padding:0 8px;font-size:14px;border:1px dashed var(--line);border-radius:2px}.pv-tile-bar{position:absolute;left:3px;right:3px;bottom:3px;height:3px;background:var(--line);border-radius:2px;overflow:hidden}.pv-tile-bar i{display:block;height:100%;background:var(--cyan)}.pv-forces{display:flex;gap:5px;flex-wrap:wrap;max-width:116px;min-height:42px}.pv-force{display:flex;align-items:center;gap:5px;cursor:pointer;font-family:var(--mono);font-size:12px;padding:4px 8px;border:1px solid var(--line);border-radius:2px;background:var(--panel-2);color:var(--text)}.pv-force:hover,.pv-force.is-mine{border-color:var(--cyan-dim)}.pv-empty{font-size:11px;color:var(--text-faint);font-style:italic;max-width:116px}.pv-actions{display:flex;align-items:center;gap:8px;padding:9px 12px;flex:none}.pv-do{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;width:86px;height:62px;cursor:pointer;font:inherit;border:1px solid var(--cyan-dim);border-radius:3px;background:var(--panel-2);color:var(--cyan);font-size:11px;letter-spacing:1.6px;text-transform:uppercase;transition:background .12s,color .12s}.pv-do:hover{background:var(--cyan);color:var(--bg);border-color:var(--cyan)}.pv-foreign{max-width:220px;font-size:11px;line-height:1.45}.pv-foreign .is-war{color:var(--danger)}.pv-foreign .is-alliance{color:var(--cyan)}.pv-foreign .is-peace,.pv-foreign .is-open-ground{color:var(--text-faint)}.pv-nocity{align-self:center;padding:6px 10px;border-radius:2px;border:1px dashed var(--line);color:var(--text-faint);font-family:var(--mono);font-size:11px;max-width:150px;line-height:1.4;cursor:help}.pv-spy{display:flex;align-items:center;gap:6px;margin-top:7px;flex-wrap:wrap}.pv-spy button{padding:5px 11px;border-radius:2px;cursor:pointer;background:var(--panel-2);border:1px solid var(--amber-dim);color:var(--amber);font-family:var(--mono);font-size:11px}.pv-spy button:hover{border-color:var(--amber);color:var(--text)}.pv-spy.is-in{font-family:var(--mono);font-size:11px;color:var(--amber)}.pv-spy.is-in button{border-color:var(--line);color:var(--text-dim)}.pv-flag{display:inline-block;width:22px;padding:1px 0;margin-right:8px;vertical-align:2px;text-align:center;border-radius:2px;background:var(--flag);color:#fff;border:1px solid rgba(0,0,0,.35);font-family:var(--mono);font-size:9px;letter-spacing:0;line-height:1.4;text-shadow:0 1px 1px rgba(0,0,0,.55)}.pv-block-vp{display:flex;align-items:center;justify-content:center}.pv-star{position:relative;width:46px;height:46px;cursor:help}.pv-star svg{width:100%;height:100%;display:block;fill:var(--amber);opacity:.9}.pv-star b{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding-top:3px;font-family:var(--ui);font-size:17px;color:#2a1c02}.pv-tools{display:flex;align-self:center;gap:4px;padding:0 4px}.pv-tool{width:26px;height:26px;display:flex;align-items:center;justify-content:center;padding:0;cursor:pointer;border-radius:2px;background:var(--panel-2);border:1px solid var(--line);color:var(--text-faint)}.pv-tool:hover{color:var(--cyan);border-color:var(--cyan-dim)}.pv-tool.is-on{color:var(--amber);border-color:var(--amber-dim);background:var(--panel)}.pv-tool svg{display:block}.pv-close{position:absolute;top:6px;right:6px;z-index:2;width:24px;height:24px;border:1px solid var(--line);background:var(--panel);color:var(--text-faint);cursor:pointer;border-radius:2px;line-height:1;font-size:14px}.pv-close:hover{color:var(--text);border-color:var(--cyan-dim)}#tip{position:fixed;z-index:40;max-width:290px;pointer-events:none;display:none;padding:9px 11px;background:#0b141b;border:1px solid var(--cyan-dim);border-radius:3px;box-shadow:0 10px 30px #0009;font-size:12px;line-height:1.45;color:var(--text)}#tip.is-open{display:block}#tip b{display:block;font-size:13px;letter-spacing:1.2px;text-transform:uppercase}#tip i{display:block;margin-top:3px;font-style:normal;color:var(--text-dim)}#tip p{margin:5px 0 0;color:var(--text-dim)}#tip u{display:flex;justify-content:space-between;gap:14px;text-decoration:none;margin-top:4px;font-family:var(--mono);font-size:11px;color:var(--text-dim)}#tip u span:last-child{color:var(--text)}#tip u.is-total{margin-top:6px;padding-top:5px;border-top:1px solid var(--line);color:var(--text)}#tip u.is-total span:last-child{color:var(--amber)}@media(max-width:1100px){#province-panel{flex-wrap:wrap;max-width:calc(100vw - 24px)}.pv-block,.pv-id{border-bottom:1px solid var(--line-soft)}.pv-tiles,.pv-forces,.pv-empty{max-width:none}}.ds-tabs{padding:0 18px}.ds-unread{display:inline-block;margin-left:7px;padding:1px 6px;border-radius:9px;font-family:var(--mono);font-size:10px;color:var(--bg);background:var(--amber)}.ds-wire{display:grid;grid-template-columns:268px 1fr;min-height:0;flex:1 1 auto}.ds-threads{border-right:1px solid var(--line);padding:12px;overflow-y:auto;display:flex;flex-direction:column;gap:4px}.ds-thread{display:flex;align-items:flex-start;gap:9px;width:100%;text-align:left;padding:9px 10px;cursor:pointer;font:inherit;border:1px solid transparent;border-left:3px solid var(--line);border-radius:2px;background:none;color:var(--text);transition:background .12s,border-color .12s}.ds-thread:hover{background:var(--panel-2)}.ds-thread.is-on{background:var(--panel-2);border-color:var(--cyan-dim)}.ds-thread.is-war{border-left-color:var(--danger)}.ds-thread.is-alliance{border-left-color:var(--cyan)}.ds-thread .swatch{margin-top:3px;flex:none}.ds-thread-text{min-width:0;flex:1 1 auto}.ds-thread-text b{display:block;font-size:12px;letter-spacing:1.1px;text-transform:uppercase}.ds-thread-text i{display:block;font-style:normal;font-size:10px;letter-spacing:.8px;color:var(--text-faint);margin-top:1px}.ds-thread-text u{display:block;text-decoration:none;margin-top:4px;font-size:11px;color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ds-chat{display:flex;flex-direction:column;min-height:0}.ds-chat-head{display:flex;align-items:center;gap:9px;padding:12px 18px;border-bottom:1px solid var(--line);font-size:15px;letter-spacing:1.2px;text-transform:uppercase}.ds-chat-head em{font-style:normal;font-size:10px;letter-spacing:1.6px;color:var(--text-faint);border:1px solid var(--line);border-radius:2px;padding:2px 7px}.ds-chat-head em.is-war{color:var(--danger);border-color:var(--danger)}.ds-chat-head em.is-alliance{color:var(--cyan);border-color:var(--cyan-dim)}.ds-chat-log{flex:1 1 auto;overflow-y:auto;padding:14px 18px;display:flex;flex-direction:column;gap:12px;min-height:220px}.ds-msg{display:flex;gap:10px;align-items:flex-start;max-width:76%}.ds-msg .swatch{margin-top:5px;flex:none}.ds-msg.is-mine{align-self:flex-end;flex-direction:row-reverse}.ds-msg-body{background:var(--panel-2);border:1px solid var(--line);border-radius:3px;padding:7px 11px}.ds-msg.is-mine .ds-msg-body{border-color:var(--cyan-dim)}.ds-msg-head{font-size:10px;letter-spacing:1.4px;text-transform:uppercase;color:var(--text-faint)}.ds-msg-head em{font-style:normal;margin-left:7px;font-family:var(--mono)}.ds-msg-body p{margin:3px 0 0;font-size:13px;line-height:1.45;word-break:break-word}.ds-compose{display:flex;gap:9px;align-items:flex-end;padding:12px 18px;border-top:1px solid var(--line)}.ds-compose textarea{flex:1 1 auto;resize:none;font:inherit;font-size:13px;line-height:1.4;padding:8px 10px;border-radius:2px;border:1px solid var(--line);background:var(--panel-2);color:var(--text)}.ds-compose textarea:focus{outline:none;border-color:var(--cyan)}.ds-send{align-self:stretch;padding-left:18px;padding-right:18px}@media(max-width:860px){.ds-wire{grid-template-columns:1fr}.ds-threads{flex-direction:row;overflow-x:auto;border-right:0;border-bottom:1px solid var(--line)}.ds-threads .rs-panel-title{display:none}.ds-thread{width:auto;flex:0 0 168px}.ds-msg{max-width:90%}}.pv-integrity{cursor:help;min-width:78px}.pv-integrity b{display:block;font-family:var(--mono);font-size:17px;line-height:1}.pv-integrity b small{font-size:11px;color:var(--text-faint)}.pv-int-bar{display:block;height:4px;margin:6px 0 4px;background:var(--line);border-radius:2px;overflow:hidden}.pv-int-bar i{display:block;height:100%;border-radius:2px}.pv-integrity em{font-style:normal;font-size:9px;letter-spacing:1.6px;text-transform:uppercase;color:var(--text-faint)}.day{cursor:pointer;background:none;border:0;padding:0;font-family:var(--mono)}.day:hover b{color:#fff}.dy-frame{max-width:760px}.dy-body{padding:16px 18px 20px;overflow-y:auto}.dy-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.dy-tile{padding:10px 12px;background:var(--panel-2);border:1px solid var(--line);border-radius:3px;text-align:center}.dy-tile dt{font-family:var(--ui);font-size:11px;letter-spacing:1.6px;text-transform:uppercase;color:var(--text-faint)}.dy-tile dd{margin:5px 0 2px;font-family:var(--ui);font-size:30px;line-height:1;color:var(--text)}.dy-tile dd small{font-size:15px;color:var(--text-dim)}.dy-tile small{font-family:var(--mono);font-size:10px;color:var(--text-faint)}.dy-up{color:#1d7a43;font-style:normal;font-size:.6em}.dy-down{color:var(--danger);font-style:normal;font-size:.6em}.dy-flat{color:var(--text-faint);font-style:normal;font-size:.6em}.dy-card dd .dy-up,.dy-card dd .dy-down,.dy-card dd .dy-flat{font-size:13px}.dy-net{margin-top:12px}.dy-net-bar{height:5px;background:var(--line-soft);border-radius:3px;overflow:hidden}.dy-net-bar span{display:block;height:100%;background:var(--cyan)}.dy-warn,.dy-calm{margin:8px 0 0;font-family:var(--mono);font-size:11.5px;line-height:1.5}.dy-warn{color:var(--danger)}.dy-calm{color:var(--text-faint)}.dy-two{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.dy-card{padding:11px 13px;background:var(--panel-2);border:1px solid var(--line);border-radius:3px}.dy-card h4{margin:0 0 8px;font-family:var(--ui);font-size:12px;letter-spacing:1.8px;text-transform:uppercase;color:var(--cyan);font-weight:500}.dy-card dl{margin:0}.dy-card dl>div{display:flex;justify-content:space-between;align-items:baseline;padding:3px 0;border-bottom:1px solid var(--line-soft)}.dy-card dl>div:last-child{border-bottom:0}.dy-card dt{font-family:var(--mono);font-size:11.5px;color:var(--text-dim)}.dy-card dd{margin:0;font-family:var(--mono);font-size:13px}.dy-income{display:grid;grid-template-columns:repeat(3,1fr);gap:6px 4px}.dy-res{display:flex;align-items:center;gap:5px}.dy-res .res-art{width:22px;height:22px}.dy-res b{font-family:var(--mono);font-size:12px;color:#1d7a43;font-weight:500}.dy-res.is-short b{color:var(--danger)}.dy-foot{margin:9px 0 0;font-family:var(--mono);font-size:10px;color:var(--text-faint)}.dy-standings{margin-top:12px}.dy-table{width:100%;border-collapse:collapse;font-family:var(--mono);font-size:11.5px}.dy-table th{text-align:left;padding:0 6px 5px;font-family:var(--ui);font-size:10px;letter-spacing:1.4px;text-transform:uppercase;color:var(--text-faint);font-weight:400}.dy-table td{padding:4px 6px;border-top:1px solid var(--line-soft);color:var(--text-dim)}.dy-table tr.is-you td{color:var(--text);background:var(--line-soft)}.dy-rank{width:22px;color:var(--text-faint)}.dy-move{width:26px}.dy-num{text-align:right}.dy-table .swatch{display:inline-block;width:9px;height:9px;margin-right:6px;border-radius:2px;vertical-align:baseline}.dy-empty{margin:0;padding:14px;background:var(--panel-2);border:1px solid var(--line);border-radius:3px;font-family:var(--mono);font-size:11.5px;line-height:1.7;color:var(--text-dim)}.dy-pager{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 18px;border-top:1px solid var(--line);font-family:var(--mono);font-size:10.5px;color:var(--text-faint)}.dy-pager button{padding:5px 10px;background:var(--panel-2);border:1px solid var(--line);border-radius:2px;color:var(--text-dim);font-family:var(--mono);font-size:11px;cursor:pointer}.dy-pager button:hover:not(:disabled){color:var(--cyan);border-color:var(--cyan-dim)}.dy-pager button:disabled{opacity:.3;cursor:default}@media(max-width:720px){.dy-tiles{grid-template-columns:repeat(2,1fr)}.dy-two{grid-template-columns:1fr}}#day-tab{position:absolute;bottom:12px;left:50%;transform:translate(-50%);z-index:10;display:flex;align-items:center;gap:12px;padding:6px 14px;border-radius:3px;cursor:pointer;background:#0d151ceb;border:1px solid var(--line);color:var(--text-dim);font-family:var(--mono);font-size:11px;backdrop-filter:blur(3px);transition:bottom .18s ease}#day-tab:hover{border-color:var(--cyan-dim);color:var(--text)}body:has(#province-panel.is-open) #day-tab,body:has(#force-bar.is-open) #day-tab,body:has(.screen.is-open) #day-tab{opacity:0;pointer-events:none}#day-tab b{color:var(--cyan);font-weight:500}#day-tab .dt-next{color:var(--text-faint)}#day-tab .dt-next b{color:var(--amber)}#day-tab .dt-speed{padding:1px 7px;border-radius:2px;background:var(--panel-2);border:1px solid var(--line-soft);color:var(--text-faint)}@media(max-width:620px){#day-tab{gap:8px;padding:5px 10px;font-size:10px}}.mk-frame{max-width:880px}.mk-body{padding:14px 18px 18px;overflow-y:auto}.mk-qty,.mk-post{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-bottom:12px;font-family:var(--mono);font-size:11px;color:var(--text-faint)}.mk-qty input,.mk-post input{width:92px;padding:5px 7px;border:1px solid var(--line);border-radius:2px;background:var(--panel-2);color:var(--text);font:inherit;font-size:12px}.mk-post label{display:inline-flex;align-items:center;gap:5px}.mk-qty em,.mk-post em{margin-left:auto;font-style:normal}.mk-chip{display:inline-flex;align-items:center;gap:5px;padding:5px 9px;background:var(--panel-2);border:1px solid var(--line);border-radius:2px;color:var(--text-dim);font-family:var(--mono);font-size:11px;cursor:pointer}.mk-chip:hover{color:var(--cyan);border-color:var(--cyan-dim)}.mk-chip.is-on{background:var(--cyan);border-color:var(--cyan);color:#fff}.mk-chip .res-art{width:18px;height:18px}.mk-go{padding:6px 14px;background:#2f7d52;border:1px solid #47a06c;border-radius:2px;color:#fff;font-family:var(--ui);font-size:12px;letter-spacing:1.6px;text-transform:uppercase;cursor:pointer}.mk-go:hover{background:#369060}.mk-table{width:100%;border-collapse:collapse;font-family:var(--mono);font-size:12px}.mk-table th{text-align:left;padding:0 8px 6px;font-family:var(--ui);font-size:10px;letter-spacing:1.4px;text-transform:uppercase;color:var(--text-faint);font-weight:400}.mk-table td{padding:6px 8px;border-top:1px solid var(--line-soft);color:var(--text-dim)}.mk-table tbody tr:hover td{background:var(--panel-2)}.mk-table tr.is-mine td{color:var(--text);background:var(--line-soft)}.mk-num{text-align:right}.mk-num.is-up{color:#1d7a43}.mk-num.is-down{color:var(--danger)}.mk-res{display:flex;align-items:center;gap:8px;color:var(--text)}.mk-res .res-art{width:24px;height:24px}.mk-do{text-align:right;white-space:nowrap}.mk-do button{margin-left:5px;padding:4px 11px;background:var(--panel-2);border:1px solid var(--line);border-radius:2px;color:var(--text-dim);font-family:var(--mono);font-size:11px;cursor:pointer}.mk-do button:hover:not(:disabled){color:var(--cyan);border-color:var(--cyan-dim)}.mk-do button:disabled{opacity:.35;cursor:default}.mk-picker{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.mk-two{display:grid;grid-template-columns:1fr 1fr;gap:10px}.mk-side h4,.mk-prints h4{margin:0 0 6px;font-family:var(--ui);font-size:11px;letter-spacing:1.8px;text-transform:uppercase;color:var(--cyan);font-weight:500}.mk-side .swatch{display:inline-block;width:9px;height:9px;margin-right:6px;border-radius:2px}.mk-empty,.mk-note{font-family:var(--mono);font-size:11px;line-height:1.6;color:var(--text-faint)}.mk-note{margin:12px 0 0}.mk-prints{margin-top:12px}.mk-print{display:inline-block;margin:0 6px 5px 0;padding:3px 8px;border-radius:2px;background:var(--panel-2);border:1px solid var(--line);font-family:var(--mono);font-size:11px;color:var(--text-dim)}.mk-print b{color:var(--text);font-weight:500}@media(max-width:720px){.mk-two{grid-template-columns:1fr}.mk-qty em,.mk-post em{margin-left:0;width:100%}}#province-panel{border:2px solid var(--edge);border-radius:4px;box-shadow:0 14px 40px #030a0f80}#province-panel .pv-do{background:var(--panel-2);color:#0a5d7a;border:1px solid #5a9fba;font-weight:500}#province-panel .pv-do:hover{background:#d2e6ee;color:#073f53;border-color:#2e86a6}#province-panel .pv-mark{box-shadow:none}.pv-tile{background:var(--panel-2);box-shadow:inset 0 1px 3px #0a192840,inset 0 0 0 1px #78beeb38}.pv-tile:hover{box-shadow:inset 0 1px 3px #0a192840,inset 0 0 0 1px var(--cyan),0 0 10px #4fd8ff59}.pv-do{box-shadow:inset 0 0 0 1px #78beeb4d,inset 0 1px #ffffff73}.pv-do:hover{box-shadow:inset 0 0 0 1px var(--cyan),0 0 12px #4fd8ff4d}.bar-row{display:flex;align-items:stretch;min-width:0}.bar-port{flex:none;width:196px;min-width:0;display:flex;flex-direction:column;justify-content:center;gap:7px;padding:11px 14px;background:var(--edge);color:#e8f1f8;border-radius:2px 0 0 2px}.bar-port-art{max-width:100%;max-height:62px;width:auto;height:auto;object-fit:contain;align-self:center}.bar-body{flex:1 1 auto;min-width:0;display:flex;flex-direction:column}.bar-title{flex:none;height:30px;display:flex;align-items:center;gap:10px;padding:0 14px 0 26px;min-width:0;background:var(--band, #8a2f2f);color:#fff;clip-path:polygon(14px 0,100% 0,100% 100%,0 100%)}.bar-title b{font-family:var(--ui);font-size:17px;letter-spacing:1.6px;line-height:1;text-transform:uppercase;white-space:nowrap;flex:0 0 auto}.bar-title span{font-size:11px;letter-spacing:1.2px;text-transform:uppercase;white-space:nowrap;opacity:.82;overflow:hidden;text-overflow:ellipsis;min-width:0}.bar-blocks{flex:1 1 auto;display:flex;align-items:stretch;gap:7px;min-width:0;padding:7px;overflow-x:auto;scrollbar-width:none}.bar-blocks::-webkit-scrollbar{display:none}.bar-block{flex:none;min-width:0;display:flex;flex-direction:column;background:var(--panel-2);border:1px solid var(--line);border-radius:3px;padding:7px 11px 9px}.bar-block-head{font-size:9px;letter-spacing:1.8px;text-transform:uppercase;color:#e9eff3;background:var(--edge);margin:-7px -11px 7px;padding:4px 11px 3px;border-radius:2px 2px 0 0}.bar-block.is-actions{background:none;border:none;padding:0;display:flex;flex-direction:row;align-items:center;gap:8px}.bar-step{position:absolute;top:50%;transform:translateY(-50%);width:30px;height:56px;padding:0;cursor:pointer;display:flex;align-items:center;justify-content:center;background:var(--panel);border:2px solid var(--edge);border-radius:4px;box-shadow:0 14px 40px #030a0f80;color:var(--text-dim);font-size:20px;line-height:1;transition:color .12s,background .12s}.bar-step.is-prev{left:-40px}.bar-step.is-next{right:-40px}.bar-step:hover:not(:disabled){color:var(--text);background:#d7e3e9}.bar-step:disabled{color:#b7c7d0;cursor:default}.bar-step.is-prev:before{content:"◀";font-size:13px}.bar-step.is-next:before{content:"▶";font-size:13px}.pv-id{cursor:help;gap:8px}.pv-who{display:flex;align-items:center;gap:8px;min-width:0}.pv-flag{flex:none;padding:2px 6px 1px;border-radius:2px;background:var(--flag);font-size:10px;letter-spacing:1.2px;color:#0a1218;font-weight:600}.pv-tier{font-size:10px;letter-spacing:1.4px;text-transform:uppercase;color:#9db6c6;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pv-facts{display:flex;flex-direction:column;gap:3px}.pv-star,.pv-pop{display:flex;align-items:center;gap:6px}.pv-star svg{width:14px;height:14px;fill:var(--amber);flex:none}.pv-star b{font-size:19px;line-height:1;color:#f3c879}.pv-star span,.pv-pop span{font-size:9px;letter-spacing:1.4px;text-transform:uppercase;color:#8ba5b6}.pv-pop b{font-size:14px;line-height:1;color:#dae8f2}.pv-integrity{display:flex;flex-direction:column;gap:4px}.pv-int-bar{display:block;height:5px;border-radius:3px;overflow:hidden;background:#00000073;box-shadow:inset 0 0 0 1px #ffffff1a}.pv-int-bar i{display:block;height:100%;transition:width .3s ease}.pv-integrity em{font-style:normal;font-size:10px;letter-spacing:1.2px;text-transform:uppercase;color:#9db6c6}.pv-holdings{display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-height:40px}#force-bar{background:none;border:none;box-shadow:none;padding:0;width:auto;max-width:min(1180px,calc(100vw - 180px))}.fb-frame{position:relative;overflow:hidden;background:var(--panel);border:2px solid var(--edge);border-radius:4px;box-shadow:0 14px 40px #030a0f80;font-family:var(--mono);font-size:13px;color:var(--text)}.fb-orders{position:absolute;left:0;bottom:100%;margin-bottom:7px;display:flex;gap:6px}.fb-bar{position:relative;height:16px;flex:none;display:flex;align-items:center;overflow:hidden;border-radius:2px;background:#00000073;box-shadow:inset 0 0 0 1px #ffffff1f}.fb-bar i{display:block;height:100%;transition:width .4s linear}.fb-bar b{position:absolute;left:0;right:0;text-align:center;font-size:11px;color:#fff;font-weight:500;text-shadow:0 1px 2px rgba(0,0,0,.8)}.fb-slot-row{display:flex;align-items:stretch;gap:5px;flex:1 1 auto}.fb-slot{position:relative;width:54px;display:flex;align-items:center;justify-content:center;background:var(--panel-2);border:1px solid var(--line);border-radius:2px;min-width:0;overflow:hidden}.fb-slot.is-empty{display:none}.fb-slot-art{max-width:90%;max-height:46px;width:auto;height:auto;object-fit:contain}.fb-slot-name{font-size:9px;text-align:center;line-height:1.1;color:var(--text-dim)}.fb-slot-count{position:absolute;right:3px;top:0;font-size:13px;color:var(--text);font-weight:500}.fb-slot-count.is-over{color:var(--amber)}.fb-slot-bar{position:absolute;left:3px;right:3px;bottom:2px;height:3px;background:#0000002e;border-radius:2px;overflow:hidden}.fb-slot-bar i{display:block;height:100%}.fb-page{flex:none;width:20px;padding:0;cursor:pointer;background:none;border:none;border-right:1px solid var(--line-soft);color:var(--text-faint);font:inherit;font-size:16px;line-height:1;transition:color .12s,background .12s}.fb-page:hover:not(:disabled){color:var(--text);background:var(--panel-2)}.fb-page:disabled{color:#c3d2da;cursor:default}.fb-page.is-prev:before{content:"‹"}.fb-page.is-next:before{content:"›"}.fb-stats{min-width:136px}.fb-activity{min-width:205px;max-width:280px;flex:0 1 auto}.fb-stat{display:flex;justify-content:space-between;align-items:baseline;gap:12px;line-height:1.45}.fb-stat span{color:var(--text-dim);font-size:12px;white-space:nowrap}.fb-stat b{font-size:14px;color:var(--text);font-weight:500;white-space:nowrap}.fb-stat b.is-warm{color:var(--amber)}.fb-stat b.is-bad{color:var(--danger)}.fb-stat.is-wide{display:block}.fb-stat.is-wide b{display:block;text-align:right;white-space:normal;line-height:1.25}.fb-stat.is-wide span:empty{display:none}.fb-orders{display:flex;align-items:center;gap:5px}.fb-order{width:36px;height:36px;flex:none;display:flex;align-items:center;justify-content:center;background:var(--panel-2);border:1px solid #a9bcc7;border-radius:3px;padding:0;cursor:pointer;color:var(--text);transition:color .12s,background .12s,border-color .12s}.fb-order svg{width:20px;height:20px}.fb-order:hover:not(:disabled){color:var(--text);background:#d7e3e9;border-color:var(--cyan-dim)}.fb-order:disabled{color:#b7c7d0;cursor:default}.fb-order.is-on{color:#fff;background:var(--cyan);border-color:var(--cyan)}.fb-close{position:absolute;top:-25px;right:0;width:22px;height:22px;background:none;border:none;padding:0;cursor:pointer;color:#cfe0ee;font-size:17px;line-height:1;text-shadow:0 1px 4px rgba(0,0,0,.9)}.fb-close:before{content:"×"}.fb-close:hover{color:#ff8e82}.fb-combat{max-height:min(260px,32vh);overflow:auto;background:var(--panel);border:1px solid var(--danger);padding:10px;pointer-events:auto}.fb-combat[hidden]{display:none}.fb-combat header{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;color:var(--danger)}.fb-combat-force{margin-top:8px;padding:6px;border-left:3px solid var(--line)}.fb-combat-force.is-selected{border-color:var(--cyan)}.fb-combat h4{margin:0 0 5px;font-size:14px}.fb-combat small{color:var(--text-faint);font-weight:400}.fb-combat table{width:100%;border-collapse:collapse;font-size:13px}.fb-combat th,.fb-combat td{padding:3px 6px;text-align:right}.fb-combat th:first-child,.fb-combat td:first-child{text-align:left}.fb-group{background:var(--panel);border:1px solid var(--cyan);padding:12px;pointer-events:auto}.fb-group header{display:flex;justify-content:space-between;gap:12px;align-items:center}.fb-group p{margin:8px 0}.fb-group-list{display:flex;gap:6px 16px;flex-wrap:wrap;max-height:90px;overflow:auto;margin-bottom:10px}.fb-group-list span{font-size:13px}.fb-group small{display:block;margin-top:6px;color:var(--text-faint)}.fb-picker{position:absolute;left:50%;bottom:calc(100% + 10px);transform:translate(-50%);min-width:320px;max-width:min(560px,calc(100vw - 32px));background:#081017f7;border:1px solid #2b4a63;border-radius:4px;box-shadow:0 14px 40px #0009;font-family:var(--mono);font-size:12px;color:#dfeeff;z-index:3}.fb-picker-head{padding:9px 13px 7px;border-bottom:1px solid #1d3346;font-size:10px;letter-spacing:2px;text-transform:uppercase;color:#7fb2dc}.fb-picker-body{padding:7px 9px;display:flex;flex-direction:column;gap:3px;max-height:46vh;overflow-y:auto}.fb-pick{display:flex;align-items:center;gap:8px;padding:4px}.fb-pick-art{width:30px;height:26px;display:flex;align-items:center;justify-content:center}.fb-pick-img{max-width:100%;max-height:100%;object-fit:contain}.fb-pick-name{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fb-pick-step,.fb-pick-all{min-width:26px;height:26px;padding:0 6px;cursor:pointer;font:inherit;background:#13242f;border:1px solid #2b4a63;border-radius:3px;color:#cfe9ff}.fb-pick-step:hover:not(:disabled),.fb-pick-all:hover{background:#1b3444;color:#fff}.fb-pick-step:disabled{opacity:.35;cursor:default}.fb-pick-all{font-size:10px;letter-spacing:1px;text-transform:uppercase}.fb-pick-n{min-width:20px;text-align:center;color:#6f8ea6}.fb-pick-n.is-on{color:#ffd36a}.fb-pick-of{font-size:10px;color:#6f8ea6}.fb-picker-foot{display:flex;align-items:center;gap:8px;padding:8px 11px;border-top:1px solid #1d3346}.fb-picker-foot span{flex:1 1 auto;font-size:11px;color:#8fc2ea}.fb-pick-go,.fb-pick-cancel{height:28px;padding:0 12px;cursor:pointer;font:inherit;font-size:11px;letter-spacing:1.4px;text-transform:uppercase;border-radius:3px}.fb-pick-go{background:#1d5f43;border:1px solid #3fae7a;color:#d9ffe9}.fb-pick-go:hover:not(:disabled){background:#267955}.fb-pick-go:disabled{opacity:.4;cursor:default}.fb-pick-cancel{background:#13242f;border:1px solid #2b4a63;color:#9dc8ea}.fb-pick-cancel:hover{background:#1b3444;color:#fff}.fb-join{display:flex;align-items:baseline;gap:10px;width:100%;padding:7px 9px;cursor:pointer;font:inherit;text-align:left;background:#13242f;border:1px solid #2b4a63;border-radius:3px;color:#dfeeff}.fb-join:hover{background:#1b3444;border-color:#3f7ea8}.fb-join-name{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fb-join-size{font-size:11px;color:#8fc2ea}@media(max-width:860px){.fb-frame{aspect-ratio:auto;background:#0a121af5;border:1px solid #27405a;border-radius:3px;font-size:12px;color:#dfeeff;display:flex;flex-wrap:wrap;align-items:center;gap:7px;padding:9px}.fb-frame>*{position:static;width:auto;height:auto}.fb-orders{order:-1;flex:1 1 100%;display:flex;gap:6px;padding-bottom:7px;border-bottom:1px solid #27405a}.fb-order{width:34px;height:33px;aspect-ratio:auto;border-radius:3px}.fb-order svg{width:19px;height:19px}.fb-portrait{width:54px;height:54px;flex:0 0 auto}.fb-title{flex:1 1 auto;min-width:0;padding:0}.fb-title b{font-size:1.15em}.fb-gauge{flex:1 1 100%;height:8px;background:#00000073;border-radius:2px}.fb-slots{flex:1 1 100%;height:54px}.fb-slot-row{padding:0;gap:5px}.fb-stats,.fb-status{flex:1 1 45%;min-width:0;padding:0}.fb-status .fb-hint{-webkit-line-clamp:3;line-clamp:3}.fb-arrow,.fb-page{display:none}.fb-close{width:28px;height:28px;color:var(--text-dim)}}
