@font-face{font-family:Saira;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/saira-vietnamese-400-normal-BDft9Aer.woff2) format("woff2"),url(/assets/saira-vietnamese-400-normal-BxJNjdQK.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Saira;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/saira-latin-ext-400-normal-BJFFSgrL.woff2) format("woff2"),url(/assets/saira-latin-ext-400-normal-FApn06KW.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Saira;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/saira-latin-400-normal-6Q3FbzbH.woff2) format("woff2"),url(/assets/saira-latin-400-normal-Du12DsUY.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Saira;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/saira-vietnamese-500-normal-DnkVjnpC.woff2) format("woff2"),url(/assets/saira-vietnamese-500-normal-CGZ3WEl0.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Saira;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/saira-latin-ext-500-normal-C-BKQ_B5.woff2) format("woff2"),url(/assets/saira-latin-ext-500-normal-DNhYPXNS.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Saira;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/saira-latin-500-normal-BUkaYXVh.woff2) format("woff2"),url(/assets/saira-latin-500-normal-DeI90g98.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Saira;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/saira-vietnamese-600-normal-D5gszP3k.woff2) format("woff2"),url(/assets/saira-vietnamese-600-normal-BXtbQ9YO.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Saira;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/saira-latin-ext-600-normal-BDLPjVgT.woff2) format("woff2"),url(/assets/saira-latin-ext-600-normal-DVm3eXEL.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Saira;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/saira-latin-600-normal-DYxBFP1f.woff2) format("woff2"),url(/assets/saira-latin-600-normal-DF-o6wW3.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Saira;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/saira-vietnamese-700-normal-ChF51jJ6.woff2) format("woff2"),url(/assets/saira-vietnamese-700-normal-rQjWTXlX.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Saira;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/saira-latin-ext-700-normal-kJsnFdG-.woff2) format("woff2"),url(/assets/saira-latin-ext-700-normal-CrEf6OXZ.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Saira;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/saira-latin-700-normal-CObqxJsW.woff2) format("woff2"),url(/assets/saira-latin-700-normal-CWqLIJDh.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Saira Condensed;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/saira-condensed-vietnamese-500-normal-BO-iw4YA.woff2) format("woff2"),url(/assets/saira-condensed-vietnamese-500-normal-CtjeXiCW.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Saira Condensed;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/saira-condensed-latin-ext-500-normal-CIzImMjU.woff2) format("woff2"),url(/assets/saira-condensed-latin-ext-500-normal-CgTVcJE5.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Saira Condensed;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/saira-condensed-latin-500-normal-DIdKjHXc.woff2) format("woff2"),url(/assets/saira-condensed-latin-500-normal-BGC7F_dX.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Saira Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/saira-condensed-vietnamese-600-normal-DdheDV3O.woff2) format("woff2"),url(/assets/saira-condensed-vietnamese-600-normal-Cx33h9T1.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Saira Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/saira-condensed-latin-ext-600-normal-DwjIBGFg.woff2) format("woff2"),url(/assets/saira-condensed-latin-ext-600-normal-BQ2ZMbdg.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Saira Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/saira-condensed-latin-600-normal-0taFJMb7.woff2) format("woff2"),url(/assets/saira-condensed-latin-600-normal-CJ-Ib_yI.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--ink-0: #0e1426;--ink-1: #141c33;--ink-2: #1c2645;--ink-3: #26325a;--line: #2b3863;--line-soft: #222d52;--text: #e3e7f4;--muted: #8d97b7;--accent: #f2b544;--accent-ink: #2a1c05;--metal: #b3bdd1;--crystal: #8cc8ff;--deut: #5fd3b5;--energy: #c3a2ff;--am: #f472d0;--danger: #ff7272;--ok: #5fd3b5;--font: "Saira", system-ui, -apple-system, "Segoe UI", sans-serif;--font-num: "Saira Condensed", "Saira", system-ui, sans-serif;color-scheme:dark}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;font-family:var(--font);font-size:15px;line-height:1.5;color:var(--text);background-color:var(--ink-0);background-image:radial-gradient(1px 1px at 12% 18%,rgba(255,255,255,.35),transparent 60%),radial-gradient(1px 1px at 72% 8%,rgba(255,255,255,.25),transparent 60%),radial-gradient(1.5px 1.5px at 88% 62%,rgba(255,240,210,.3),transparent 60%),radial-gradient(1px 1px at 34% 78%,rgba(255,255,255,.22),transparent 60%),radial-gradient(1px 1px at 52% 44%,rgba(200,220,255,.2),transparent 60%),radial-gradient(1200px 600px at 85% -10%,rgba(86,104,190,.18),transparent 70%);background-attachment:fixed;-webkit-font-smoothing:antialiased;overflow-x:hidden}h1,h2,h3,h4{margin:0;font-weight:600;line-height:1.2}a{color:var(--crystal)}.num{font-family:var(--font-num);font-variant-numeric:tabular-nums;letter-spacing:.01em}.muted{color:var(--muted)}.small{font-size:13px}.pad{padding:4px 20px 16px;margin:0}.pos{color:var(--ok)}.neg{color:var(--danger)}.grow{flex:1}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button,input,select{font:inherit;color:inherit}button{cursor:pointer;border:0;background:none}button:disabled{cursor:not-allowed;opacity:.45}.primary{background:var(--accent);color:var(--accent-ink);font-weight:600;padding:7px 16px;border-radius:6px;white-space:nowrap}.primary:hover:not(:disabled){background:#ffc861}.primary:disabled{opacity:1;background:transparent;color:var(--muted);box-shadow:inset 0 0 0 1px var(--line)}.ghost{border:1px solid var(--line);padding:6px 12px;border-radius:6px;color:var(--text);white-space:nowrap}.ghost:hover:not(:disabled){border-color:var(--muted);background:var(--ink-2)}.ghost.small,.primary.small{padding:3px 9px;font-size:13px}.danger{color:var(--danger)}.link{color:var(--crystal);padding:0;text-decoration:underline;text-underline-offset:3px}.wide{width:100%;padding:10px}input[type=number],input:not([type]),input[type=password],input[type=email],input[type=search],select{background:var(--ink-0);border:1px solid var(--line);border-radius:6px;padding:6px 9px;min-width:0}input:focus,select:focus{border-color:var(--accent);outline:none}input[type=number]{font-family:var(--font-num);width:96px}input[type=range]{width:100%;accent-color:var(--accent)}.shell{display:grid;grid-template-columns:196px minmax(0,1fr);grid-template-rows:auto 1fr;grid-template-areas:"top top" "nav main";min-height:100vh}.topbar{grid-area:top;display:flex;align-items:center;gap:20px;padding:10px 20px;border-bottom:1px solid var(--line-soft);background:#0e1426eb;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);position:sticky;top:0;z-index:20}.brand{font-weight:700;font-size:18px;letter-spacing:.02em;white-space:nowrap}.planet-switch{position:relative;display:flex;align-items:center;gap:10px;padding:4px 12px 4px 4px;border:1px solid var(--line);border-radius:999px;cursor:pointer;min-width:0}.planet-switch:hover{background:var(--ink-1)}.planet-switch select{position:absolute;inset:0;opacity:0;cursor:pointer}.planet-switch-text{display:flex;flex-direction:column;line-height:1.15;min-width:0}.planet-switch-text strong{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:160px}.planet-switch-text .num{font-size:13px}.resbar{display:flex;gap:6px;flex:1;justify-content:center;min-width:0}.res{display:grid;grid-template-columns:auto;padding:2px 14px;border-left:1px solid var(--line-soft);min-width:112px}.res:first-child{border-left:0}.res-label{font-size:12px;color:var(--muted);display:flex;align-items:center;gap:6px}.res-value{font-size:20px;font-weight:600;line-height:1.1}.res-rate{font-size:12px;color:var(--muted)}.res-metal .res-value{color:var(--metal)}.res-crystal .res-value{color:var(--crystal)}.res-deuterium .res-value{color:var(--deut)}.res-energy .res-value{color:var(--energy)}.res.full .res-value,.res.neg .res-value{color:var(--danger)}.dot{display:inline-block;width:8px;height:8px;border-radius:50%;flex:none}.dot-metal{background:var(--metal)}.dot-crystal{background:var(--crystal);border-radius:2px;transform:rotate(45deg) scale(.85)}.dot-deuterium{background:var(--deut)}.dot-energy{background:var(--energy)}.topbar-tools{display:flex;gap:8px;align-items:center}.lang{padding:5px 6px}.sidenav{grid-area:nav;display:flex;flex-direction:column;padding:18px 12px;gap:2px;border-right:1px solid var(--line-soft);position:sticky;top:64px;align-self:start;height:calc(100vh - 64px)}.sidenav a{display:flex;align-items:center;justify-content:space-between;padding:7px 12px;border-radius:6px;color:var(--muted);text-decoration:none;font-weight:500}.sidenav a:hover{color:var(--text);background:var(--ink-1)}.sidenav a.active{color:var(--text);background:var(--ink-2);box-shadow:inset 3px 0 0 var(--accent)}.count{background:var(--accent);color:var(--accent-ink);font-family:var(--font-num);font-weight:600;font-size:12px;border-radius:999px;padding:0 7px}.nav-foot{margin-top:auto;padding:12px;line-height:1.4}.content{grid-area:main;padding:24px 28px 64px;max-width:1180px;width:100%;display:flex;flex-direction:column;gap:20px}.alert{border:1px solid var(--danger);background:#ff72721a;color:#ffd2d2;padding:10px 16px;border-radius:8px;font-weight:500}.toasts{position:fixed;right:20px;bottom:20px;display:flex;flex-direction:column;gap:8px;z-index:50;max-width:min(380px,calc(100vw - 40px))}.toast{padding:10px 14px;border-radius:8px;background:var(--ink-2);border:1px solid var(--line);box-shadow:0 10px 30px #0006}.toast-error{border-color:var(--danger)}.toast-ok{border-color:var(--ok)}.splash{display:grid;place-items:center;min-height:100vh;color:var(--muted)}.panel{background:#141c33d1;border:1px solid var(--line-soft);border-radius:10px}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:14px 20px;border-bottom:1px solid var(--line-soft)}.panel-head h2{font-size:18px}.panel-aside{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.items{list-style:none;margin:0;padding:0}.item{position:relative;display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:16px;align-items:center;padding:14px 20px;border-top:1px solid var(--line-soft)}.item:first-child{border-top:0}.item.locked .item-main h3,.item.locked .icon{opacity:.5}.item.active{background:linear-gradient(90deg,rgba(242,181,68,.08),transparent 60%)}.item-title{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.item-title h3{font-size:16px}.badge{font-family:var(--font-num);font-size:13px;color:var(--accent)}.item-desc{margin:2px 0 0;color:var(--muted);font-size:13px;max-width:68ch}.item-extra{margin:2px 0 0;font-size:12px;color:var(--muted);font-family:var(--font-num)}.item-req{margin:6px 0 0;font-size:13px;color:#d9b07a}.item-meta{display:flex;align-items:center;gap:14px;margin-top:6px;flex-wrap:wrap}.item-action{display:flex;align-items:center;gap:10px;justify-content:flex-end}.time{font-family:var(--font-num);font-size:13px;color:var(--muted)}.time:before{content:"";display:inline-block;width:9px;height:9px;border:1.5px solid currentColor;border-radius:50%;margin-right:6px;vertical-align:-.5px}.cost{display:inline-flex;gap:6px;flex-wrap:wrap}.chip{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-num);font-size:13px;padding:1px 9px;border-radius:999px;background:var(--ink-0);border:1px solid var(--line-soft)}.chip.short{color:var(--danger);border-color:#ff727273}.progress{display:block;height:3px;border-radius:2px;background:var(--ink-3);overflow:hidden;margin-top:8px;min-width:80px}.progress>span{display:block;height:100%;background:var(--accent);transition:width .9s linear}.icon{display:grid;place-items:center;border-radius:10px;flex:none;color:var(--text);background:var(--ink-2);border:1px solid var(--line)}.tone-metal{color:var(--metal);background:#b3bdd114}.tone-crystal{color:var(--crystal);background:#8cc8ff14}.tone-deut{color:var(--deut);background:#5fd3b514}.tone-energy{color:var(--energy);background:#c3a2ff14}.tone-building{color:#d9c9a4}.tone-research{color:#a8b8ff;background:#7c92ff12}.tone-ship{color:#e7ecf8;background:linear-gradient(160deg,var(--ink-3),var(--ink-1))}.tone-defense{color:var(--accent);background:#f2b5440f}.qty{display:flex;gap:6px;align-items:center}.qty input{width:84px}.queue{list-style:none;margin:0;padding:6px 20px 14px}.queue li{display:grid;grid-template-columns:minmax(0,1fr) minmax(80px,200px) auto;gap:16px;align-items:center;padding:6px 0}.queue .progress{margin:0}.overview{display:flex;flex-direction:column;gap:20px}.hero{overflow:clip;overflow-clip-margin:24px;display:flex;gap:40px;align-items:center;padding:12px 8px 4px}.planet-name{font-size:40px;font-weight:600;letter-spacing:-.01em}.planet-name .link{font-size:13px;font-weight:400;vertical-align:middle;margin-left:8px}.rename{display:flex;gap:8px;align-items:center}.rename input{font-size:22px;width:260px}.facts{display:grid;grid-template-columns:repeat(2,minmax(150px,auto));gap:14px 40px;margin:20px 0 0}.facts dt{font-size:13px;color:var(--muted)}.facts dd{margin:0;font-size:18px}.activity{list-style:none;margin:0;padding:6px 20px 12px}.activity li{display:grid;grid-template-columns:120px minmax(0,1fr);gap:16px;align-items:center;padding:8px 0;border-top:1px solid var(--line-soft)}.activity li:first-child{border-top:0}.act-label{color:var(--muted);font-size:13px}.act-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(80px,220px) 110px;gap:16px;align-items:center}.act-body .progress{margin:0}.act-body .num{text-align:right}.orb{position:relative;display:inline-block;flex:none}.orb-body{display:block;border-radius:50%}.orb-ring:before{content:"";position:absolute;inset:36% -32%;border-radius:50%;border:1px solid rgba(160,178,235,.45);border-top-color:transparent;transform:rotate(-16deg);pointer-events:none}.orb-ring:after{content:"";position:absolute;inset:22% -48%;border-radius:50%;border:1px dashed rgba(160,178,235,.16);transform:rotate(-16deg);pointer-events:none}.fleets{list-style:none;margin:0;padding:0}.fleet{display:grid;grid-template-columns:110px minmax(0,1fr) auto;gap:16px;align-items:center;padding:12px 20px;border-top:1px solid var(--line-soft)}.fleet:first-child{border-top:0}.fleet-when{display:flex;flex-direction:column;font-size:17px}.fleet.hostile{background:#ff727212;box-shadow:inset 3px 0 0 var(--danger)}.fleet.friendly{box-shadow:inset 3px 0 0 var(--ok)}.fleet.mission-attack strong{color:#ff9d9d}.fleet.mission-espionage strong{color:#ffd27a}.fleet.mission-transport strong,.fleet.mission-deploy strong{color:var(--deut)}.fleet-form{display:grid;grid-template-columns:minmax(240px,1.1fr) minmax(260px,1.2fr) minmax(220px,.8fr);gap:0}.fleet-form>*{padding:16px 20px}.fleet-form>*+*{border-left:1px solid var(--line-soft)}.fleet-form h3{font-size:14px;color:var(--muted);font-weight:500;margin:14px 0 8px}.fleet-form h3:first-child{margin-top:0}.fleet-ships ul{list-style:none;margin:0;padding:0}.fleet-ships li{display:flex;gap:10px;align-items:center;padding:5px 0}.fleet-ships input{width:80px}.row-actions{display:flex;gap:8px;margin-top:10px}.panel-aside .row-actions{margin:0}.coords-input{display:flex;align-items:center;gap:6px}.coords-input input{width:72px;text-align:center}.chips{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.missions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.mission{display:flex;align-items:center;gap:8px;padding:6px 10px;border:1px solid var(--line);border-radius:6px;cursor:pointer}.mission input{accent-color:var(--accent)}.mission.on{border-color:var(--accent);background:#f2b54414}.cargo{display:flex;flex-direction:column;gap:6px}.cargo label{display:grid;grid-template-columns:minmax(0,1fr) 110px auto;gap:8px;align-items:center}.cargo label span{display:flex;align-items:center;gap:8px}.cargo input{width:100%}.fleet-summary dl{display:grid;grid-template-columns:auto 1fr;gap:8px 14px;margin:0 0 18px}.fleet-summary dt{color:var(--muted);font-size:13px}.fleet-summary dd{margin:0;text-align:right}.table-wrap{overflow-x:auto}.grid{width:100%;border-collapse:collapse}.grid th{text-align:left;font-weight:500;font-size:13px;color:var(--muted);padding:10px 14px;border-bottom:1px solid var(--line-soft)}.grid td{padding:8px 14px;border-bottom:1px solid var(--line-soft);vertical-align:middle}.grid tr:last-child td{border-bottom:0}.grid th.num,.grid td.num,.grid.prod th:not(:first-child){text-align:right}.grid tr.own td{background:#f2b5440f}.grid tr.total td{font-weight:600;border-top:1px solid var(--line)}.grid.compact td,.grid.compact th{padding:4px 8px;font-size:13px}.grid select{padding:3px 6px}.galaxy td:first-child{width:48px}.planet-cell{display:inline-flex;align-items:center;gap:10px}.actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.tag{display:inline-block;margin-left:6px;font-size:12px;padding:0 7px;border-radius:999px;border:1px solid var(--accent);color:var(--accent)}.tag-bot{border-color:var(--line);color:var(--muted)}.tag-prot{border-color:var(--deut);color:var(--deut)}.galaxy-nav{display:flex;gap:16px;flex-wrap:wrap}.stepper{display:flex;align-items:center;gap:6px}.stepper label{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--muted)}.stepper input{width:64px;text-align:center}.tabs{display:flex;gap:4px;padding:10px 20px 0;border-bottom:1px solid var(--line-soft);overflow-x:auto}.tabs button{padding:8px 12px;color:var(--muted);border-bottom:2px solid transparent;white-space:nowrap}.tabs button.on{color:var(--text);border-bottom-color:var(--accent)}.messages{list-style:none;margin:0;padding:0}.msg{border-top:1px solid var(--line-soft)}.msg:first-child{border-top:0}.msg-head{width:100%;display:flex;justify-content:space-between;gap:12px;text-align:left;padding:12px 20px}.msg-head:hover{background:var(--ink-2)}.msg.unread .msg-title{font-weight:600}.msg.unread .msg-title:before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--accent);margin-right:10px;vertical-align:2px}.msg-body{padding:4px 20px 16px}.msg-body p{margin:6px 0;max-width:76ch}.verdict{font-weight:600}.sides{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:10px 0}.sides h4,.spy-block h4{font-size:14px;margin-bottom:4px}.spy-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:18px;margin-top:10px}.kv{list-style:none;margin:0;padding:0;font-size:13px}.kv li{display:flex;justify-content:space-between;gap:10px;padding:2px 0;border-bottom:1px dotted var(--line-soft)}.login{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,460px);align-items:center;gap:40px;padding:40px clamp(20px,6vw,96px)}.login-art{display:grid;place-items:center;animation:drift 1.6s cubic-bezier(.2,.7,.2,1) both}@keyframes drift{0%{opacity:0;transform:translateY(18px) scale(.96)}}.login-panel{position:relative;background:#141c33e0;border:1px solid var(--line-soft);border-radius:14px;padding:32px}.login-lang{position:absolute;top:16px;right:16px}.login-brand{font-size:44px;font-weight:700;letter-spacing:-.015em;margin-bottom:8px}.login-subtitle{margin:-4px 0 14px;font-family:var(--font-num);font-size:15px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--accent)}.brand-sub{display:block;font-family:var(--font-num);font-size:10px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--accent);line-height:1.1}.login-title{font-size:18px;margin:0 0 6px}.login-form{display:flex;flex-direction:column;gap:14px;margin:24px 0 12px}.login-form label{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--muted)}.login-form input{font-size:16px;padding:9px 12px;color:var(--text)}.login-form .primary{padding:10px;font-size:16px}.form-error{color:var(--danger);margin:0;font-size:14px}.login-switch{font-size:14px}@media(max-width:1180px){.topbar{flex-wrap:wrap}.resbar{order:5;flex-basis:100%;justify-content:flex-start}.topbar-tools{margin-left:auto}.sidenav{top:120px;height:calc(100vh - 120px)}.fleet-form{grid-template-columns:1fr 1fr}.fleet-summary{grid-column:1 / -1;border-left:0!important;border-top:1px solid var(--line-soft)}}@media(max-width:860px){.shell{grid-template-columns:minmax(0,1fr);grid-template-areas:"top" "nav" "main"}.topbar{position:static;gap:10px;padding:10px 16px}.brand{display:none}.resbar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.res{border-left:0;padding:4px 10px;background:var(--ink-1);border-radius:8px;min-width:0}.sidenav{position:sticky;top:0;z-index:15;height:auto;flex-direction:row;overflow-x:auto;padding:8px 12px;border-right:0;border-bottom:1px solid var(--line-soft);background:var(--ink-0)}.sidenav a{white-space:nowrap;gap:6px}.sidenav a.active{box-shadow:inset 0 -2px 0 var(--accent)}.nav-foot{display:none}.content{padding:16px 16px 64px}.item{grid-template-columns:44px minmax(0,1fr);padding:14px 16px}.item-action{grid-column:1 / -1;justify-content:flex-start;flex-wrap:wrap}.hero{flex-direction:column;align-items:flex-start;gap:20px}.hero .orb{align-self:center}.planet-name{font-size:30px}.activity li,.act-body{grid-template-columns:1fr;gap:6px}.act-body .num{text-align:left}.fleet{grid-template-columns:1fr;gap:6px;padding:12px 16px}.fleet-form{grid-template-columns:1fr}.fleet-form>*+*{border-left:0;border-top:1px solid var(--line-soft)}.sides{grid-template-columns:1fr}.queue li{grid-template-columns:1fr auto}.queue .progress,.queue li>.muted{grid-column:1 / -1;grid-row:2}.login{grid-template-columns:1fr;padding:24px 16px}.login-art{display:none}.panel-head{padding:12px 16px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.mission.off{opacity:.45;cursor:not-allowed}.hold{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.grid tr.deep td{background:repeating-linear-gradient(135deg,transparent 0 8px,rgba(141,151,183,.04) 8px 16px)}.exp-found{margin:8px 0}.exp-size{color:var(--accent);font-size:13px}.note{color:var(--crystal)}.sim-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--line-soft)}.sim-side{padding:16px 20px}.sim-side+.sim-side{border-left:1px solid var(--line-soft)}.sim-side header{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px}.sim-side header .row-actions{margin:0}.sim-side h3{font-size:16px}.sim-tech{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:12px}.sim-tech label{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--muted)}.sim-tech input{width:100%}.sim-units{list-style:none;margin:0;padding:0}.sim-units li{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:3px 0}.sim-units li.sep{margin-top:8px;padding-top:10px;border-top:1px solid var(--line-soft)}.sim-units label{font-size:14px}.sim-units input{width:100px}.sim-sub{font-size:14px;color:var(--muted);font-weight:500;margin:16px 0 8px}.sim-run{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:14px 20px;border-top:1px solid var(--line-soft)}.sim-run label{font-size:14px;color:var(--muted)}.sim-outcome{padding:16px 20px 4px}.sim-bar{display:flex;height:10px;border-radius:5px;overflow:hidden;background:var(--ink-3)}.sim-bar .win{background:var(--ok)}.sim-bar .draw{background:var(--muted)}.sim-bar .loss{background:var(--danger)}.sim-stats,.sim-extra{display:flex;flex-wrap:wrap;gap:14px 40px;margin:14px 0 0}.sim-extra{padding:0 20px}.sim-stats dt,.sim-extra dt{font-size:13px;color:var(--muted)}.sim-stats dd,.sim-extra dd{margin:0;font-size:20px}.sim-extra dd{font-size:16px;display:flex;align-items:center;gap:6px}.sim-losses{padding:8px 20px}@media(max-width:860px){.sim-grid{grid-template-columns:1fr}.sim-side+.sim-side{border-left:0;border-top:1px solid var(--line-soft)}.sim-side{padding:14px 16px}}.tone-moon{color:#d8dcea;background:#d8dcea12}.moon-chip{display:inline-flex;align-items:center;gap:6px;margin-left:10px;font-size:13px;color:var(--muted)}.body-switch{margin-left:12px;font-size:13px}.note-box{margin:12px 20px;padding:10px 14px;border-radius:8px;border:1px solid var(--line);background:var(--ink-0);color:var(--muted);font-size:14px}.target-type{display:flex;gap:6px;margin-top:8px}.target-type .mission{flex:1}.phalanx-panel{border-top:1px solid var(--line-soft)}.phalanx-panel h3{font-size:15px;padding:14px 20px 4px}.jump{padding:4px 20px 16px}.jump-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:10px}.jump .fleet-ships ul{columns:2;column-gap:32px}.jump .fleet-ships li{break-inside:avoid}@media(max-width:860px){.jump .fleet-ships ul{columns:1}}.stack{display:flex;flex-direction:column;gap:20px}textarea{font:inherit;color:inherit;background:var(--ink-0);border:1px solid var(--line);border-radius:6px;padding:8px 10px;width:100%;resize:vertical;min-width:0}textarea:focus{border-color:var(--accent);outline:none}a.ghost,a.primary{display:inline-block;text-decoration:none}.alert-calm{border-color:var(--deut);background:#5fd3b514;color:#c9f3e6}.alert-calm a{margin-left:6px}.tag-vac{border-color:var(--energy);color:var(--energy)}.ally-tag{margin-left:6px;font-size:13px;color:var(--crystal)}.ally-tag.mine{color:var(--deut);font-weight:600}.inactive{color:var(--muted);font-size:13px;cursor:help}.msg-text{white-space:pre-wrap;overflow-wrap:anywhere;margin:6px 0 10px}.row-actions.end{justify-content:flex-end;margin:0;flex-wrap:wrap}.inline-form{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end}.inline-form label{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--muted)}.inline-form label input{color:var(--text)}.inline-form>input{flex:1 1 200px}.inline-form .grow{flex:1 1 220px}.tag-input{width:110px}.compose{display:flex;flex-direction:column;gap:10px;padding:4px 20px 18px}.panel>.compose:first-child{padding-top:16px}.compose h3{margin:0;font-size:16px}.compose label{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--muted)}.compose label input,.compose label textarea{color:var(--text);font-size:15px}.compose .row-actions{margin-top:0}.compose label.check,.perms label{flex-direction:row;align-items:center;gap:8px;color:var(--text);font-size:14px}input[type=checkbox]{accent-color:var(--accent);width:16px;height:16px}.messages+.compose,.tabs+.compose{border-top:1px solid var(--line-soft)}.compose-inline{border-bottom:1px solid var(--line-soft);padding-top:14px}.list{list-style:none;margin:0;padding:0}.list li{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:12px 20px;border-top:1px solid var(--line-soft)}.list li:first-child{border-top:0}.list li .row-actions{margin:0}.grid tr.detail td{background:var(--ink-0)}.apply-form{display:flex;flex-direction:column;gap:8px;align-items:flex-start;max-width:560px}.grid.members select{max-width:160px}.ranks{list-style:none;margin:0;padding:0}.rank{display:grid;grid-template-columns:180px minmax(0,1fr) auto;gap:12px 16px;align-items:center;padding:12px 20px;border-top:1px solid var(--line-soft)}.rank:first-child{border-top:0}.rank.new{background:#0e142699}.rank .row-actions{margin:0}.perms{display:flex;flex-wrap:wrap;gap:6px 16px}.perms label{display:flex;font-size:13px}.participant+.participant{margin-top:12px;padding-top:10px;border-top:1px dashed var(--line-soft)}.participant h5{margin:0;font-size:14px}.fleet-actions{display:flex;flex-direction:column;gap:6px;align-items:stretch}.group-select{width:100%}@media(max-width:860px){.panel-head{flex-wrap:wrap}.panel-aside{max-width:100%;min-width:0}.panel-aside .row-actions{flex-wrap:wrap}.rank{grid-template-columns:minmax(0,1fr)}.list li{flex-direction:column}.fleet-actions{flex-direction:row;flex-wrap:wrap}}.account-kv{font-size:15px;padding-top:10px}.account-kv li{padding:6px 0}.field-hint{font-size:12px;color:var(--muted)}.form-notice{margin:0;font-size:14px;color:#c9f3e6;border:1px solid var(--deut);background:#5fd3b514;border-radius:8px;padding:10px 12px}.login-switch+.login-switch{margin-top:-6px}.tag-ban{border-color:var(--danger);color:var(--danger)}.tag-admin{border-color:var(--crystal);color:var(--crystal)}.live-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--muted);margin-right:6px;vertical-align:middle}.live-dot.on{background:var(--ok);box-shadow:0 0 0 3px #5fd3b52e}.stat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));border-top:1px solid var(--line-soft);overflow:hidden}.stat{margin:0 -1px -1px 0;border-right:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);padding:12px 20px;display:flex;flex-direction:column;gap:2px}.stat span{font-size:12px;color:var(--muted)}.stat strong{font-size:20px;font-weight:600}.stat strong.text{font-family:var(--font);font-size:15px}.admin-warn{margin:12px 20px}.secret{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:12px 20px;padding:12px 14px;border:1px solid var(--accent);border-radius:8px;background:#f2b5440f}.secret code{font-family:var(--font-num);font-size:20px;letter-spacing:.06em;-webkit-user-select:all;user-select:all}.secret p{flex-basis:100%;margin:0;font-size:13px;color:var(--muted)}.ban-form{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end}.ban-form label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--muted)}.ban-form label.grow{flex:1 1 220px}.ban-form input{color:var(--text)}.grid td.wrap{white-space:normal;overflow-wrap:anywhere}.tech-controls{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:12px 20px;border-bottom:1px solid var(--line-soft)}.tech-controls input[type=search]{flex:1 1 200px}.tech-controls label.check{display:flex;align-items:center;gap:8px;font-size:14px}.tech-list{list-style:none;margin:0;padding:0}.tech{display:grid;grid-template-columns:44px minmax(0,1fr);gap:4px 14px;padding:12px 20px;border-top:1px solid var(--line-soft);scroll-margin-top:90px}.tech:first-child{border-top:0}.tech:target{background:#f2b54412}.tech .icon{grid-row:span 3}.tech-name{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.tech-name strong{font-size:15px}.tech-reqs,.tech-unlocks{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:13px}.tech-reqs>span:first-child,.tech-unlocks>span:first-child{color:var(--muted);margin-right:2px}.req{display:inline-flex;gap:4px;align-items:baseline;padding:1px 9px;border-radius:999px;border:1px solid var(--line);text-decoration:none;color:var(--text);font-size:13px}.req.ok{border-color:#5fd3b58c;color:var(--ok)}.req.no{border-color:#ff727280;color:#ffb3b3}.req .num{color:var(--muted)}.req.ok .num{color:inherit}.unlock{color:var(--crystal);text-decoration:none;font-size:13px}.unlock:hover,.req:hover{text-decoration:underline}.tech-state{font-size:12px;padding:0 7px;border-radius:999px}.tech-state.ok{color:var(--ok);border:1px solid rgba(95,211,181,.55)}.tech-state.no{color:var(--muted);border:1px solid var(--line)}.account-forms{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}@media(max-width:860px){.account-forms{grid-template-columns:minmax(0,1fr)}.tech{grid-template-columns:36px minmax(0,1fr);padding:12px 16px}}.grid tr.gap td{border-top:2px dashed var(--line)}@media(max-width:860px){.overview{overflow-x:clip}}.am-icon{color:var(--am);flex:none;vertical-align:-2px}.am-chip{position:relative;display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border:1px solid rgba(244,114,208,.45);border-radius:999px;color:var(--text);text-decoration:none;background:#f472d012;font-size:15px}.am-chip:hover{background:#f472d026}.am-dot{position:absolute;top:-3px;right:-3px;width:10px;height:10px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 2px var(--ink-1)}.am-finish{display:inline-flex;align-items:center;gap:4px;border-color:#f472d073}.am-finish:hover:not(:disabled){border-color:var(--am)}.am-found{font-size:18px;display:flex;align-items:center;gap:6px}.icon-btn{display:inline-grid;place-items:center;width:36px;height:36px;padding:0}.icon-btn.on{color:var(--accent);border-color:var(--accent)}.tutorial{position:fixed;right:20px;bottom:20px;width:340px;max-width:calc(100vw - 32px);z-index:40;background:#141c33f7;border:1px solid var(--accent);border-radius:12px;box-shadow:0 18px 50px #00000073}.tutorial-head{display:flex;align-items:center;gap:8px;padding:10px 12px 10px 16px;border-bottom:1px solid var(--line-soft)}.tutorial.min .tutorial-head{border-bottom:0}.tutorial-title{flex:1;display:flex;align-items:baseline;justify-content:space-between;gap:8px;text-align:left;padding:0}.tutorial-body{padding:12px 16px 14px;display:flex;flex-direction:column;gap:8px;max-height:60vh;overflow:auto}.tutorial-body h3{margin:4px 0 0;font-size:16px}.tutorial-body p{margin:0;font-size:14px;color:var(--muted)}.tutorial-body .primary{align-self:flex-start}.tutorial-body .progress{width:100%}.tutorial-all{align-self:flex-start}.tutorial-list{margin:0;padding-left:20px;font-size:13px;color:var(--muted)}.tutorial-list li.done{color:var(--ok);text-decoration:line-through}.tutorial-list li.current{color:var(--text);font-weight:600}.shop-head{display:flex;flex-wrap:wrap;gap:24px 48px;align-items:center;padding-top:16px}.shop-balance,.shop-daily{display:flex;flex-direction:column;gap:6px}.shop-balance strong{font-size:32px;display:flex;align-items:center;gap:8px}.shop-daily .primary{align-self:flex-start}.order-status{padding-top:16px}.order-status p{margin:0 0 10px;font-size:16px}.packs{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:14px;padding:16px 20px}.pack{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px;padding:22px 14px 14px;border:1px solid var(--line);border-radius:10px;background:var(--ink-0)}.pack.best{border-color:var(--am)}.pack strong{font-size:26px;margin-top:6px}.pack-price{font-size:20px;margin:8px 0 10px}.pack-tag{position:absolute;top:-10px;font-size:11px;text-transform:uppercase;letter-spacing:.08em;padding:1px 8px;border-radius:999px;background:var(--am);color:#2a0a22;font-weight:600}label.check.accept{display:flex;gap:10px;align-items:flex-start;font-size:14px}label.check.accept input{margin-top:3px}.legal{min-height:100vh;padding:32px 16px 64px}.legal-page{max-width:760px;margin:0 auto;background:#141c33e6;border:1px solid var(--line-soft);border-radius:12px;padding:28px 32px;line-height:1.65}.legal-page h1{font-size:30px;margin:8px 0 4px}.legal-page h2{font-size:18px;margin:26px 0 6px}.legal-page li{margin-bottom:6px}@media(max-width:860px){.tutorial{right:8px;left:8px;bottom:8px;width:auto;max-width:none}.tutorial-body{max-height:42vh}.legal-page{padding:20px 18px}.am-chip{padding:4px 9px;font-size:14px}}.shell:has(.tutorial:not(.min)) .content{padding-bottom:300px}@media(min-width:861px){.shell:has(.tutorial:not(.min)) .content{padding-bottom:140px}}.item.flash{animation:item-flash 2.4s ease-out}@keyframes item-flash{0%,35%{background:#f2b5442e;box-shadow:inset 3px 0 0 var(--accent)}to{background:transparent;box-shadow:inset 3px 0 0 transparent}}
