@charset "UTF-8";
:root{--bg:#22252a;--panel:#2c3032;--panel-dark:#252a2d;--border:#4b514e;--ink:#dbd6bd;--muted:#929c91;--teal:#8db7a6;--gold:#d6bd86;--rust:#ce896e;--shadow:#171e23;--mono:"Cascadia Mono","Consolas","Microsoft YaHei",monospace}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:"Microsoft YaHei","PingFang SC",sans-serif;font-size:13px;line-height:1.6;background-image:repeating-linear-gradient(90deg,#ffffff02 0px,#ffffff02 1px,transparent 1px,transparent 7px)}
body::after{content:"";position:fixed;inset:0;pointer-events:none;z-index:40;background:repeating-linear-gradient(0deg,transparent 0,transparent 3px,#00000012 3px,#00000012 4px);opacity:.48}.no-scanlines::after{display:none}
button,input,select{font:inherit}button{cursor:pointer;color:inherit}button,a,input,select{touch-action:manipulation}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:2px solid var(--gold);outline-offset:3px}button:disabled{opacity:.4;cursor:not-allowed}button{transition:background .15s,color .15s,border-color .15s}a{color:inherit;text-decoration:none}svg{width:20px;height:20px;flex-shrink:0;vertical-align:middle}h1,h2,h3,p{margin:0}h2{font-size:18px;line-height:1.5;font-weight:600}h3{font-size:15px;font-weight:600}small{font-size:11px}strong,b{font-weight:600}button{border-radius:0}input,select{border:1px solid var(--border);background:#222a2d;color:var(--ink);min-height:36px;padding:6px 10px;border-radius:0;max-width:100%}select{min-width:0}option{background:#252b2e}::selection{background:#6d8c7a;color:#f1e7ca}
.shell{max-width:1720px;margin:0 auto;padding:0 34px}.header{height:112px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid #626153}.brand{display:flex;gap:15px;align-items:center}.brand-mark{position:relative;font:bold 37px var(--mono);border:2px solid var(--teal);line-height:48px;width:51px;height:52px;text-align:center;color:var(--teal);box-shadow:3px 3px 0 #111c21}.brand-mark span{position:absolute;font:15px var(--mono);right:-6px;bottom:-9px;background:var(--bg);padding:0 3px;color:var(--gold)}.brand strong{display:flex;align-items:center;font-size:25px;letter-spacing:4px;color:#e5dcc0;gap:14px}.brand strong small{font:12px var(--mono);color:var(--gold);letter-spacing:2px}.brand>div>span{font-size:11px;letter-spacing:3px;color:var(--muted)}.terminal-id{text-align:center;font-size:11px;letter-spacing:3px;color:#a5a895}.terminal-id span{display:block;font:10px var(--mono);letter-spacing:1px;margin-top:5px;color:#737d76}.time-controls{display:flex;align-items:center;gap:19px}.clock{display:flex;flex-direction:column;gap:3px}.clock small{font-size:10px;color:var(--muted);letter-spacing:2px}.clock strong{font:13px var(--mono);color:var(--gold);white-space:nowrap}.speed-controls{display:flex;background:#1b2427;border:1px solid #4c5550;padding:3px;gap:2px}.speed-controls button{background:none;border:0;font:12px var(--mono);width:30px;height:29px;color:#96a498}.speed-controls button.selected{background:#495c52;color:#e0dbc2}.icon-button{background:transparent;border:1px solid var(--border);height:36px;width:36px}.icon-button:hover{background:#3a4843}.navigation{display:flex;align-items:stretch;height:59px;border-bottom:1px solid #4a504a;margin-bottom:26px;gap:15px}.navigation>button{padding:0 19px;border:0;border-bottom:2px solid transparent;background:transparent;display:flex;align-items:center;gap:11px;color:#a5ad9f;font-size:13px;position:relative}.navigation>button svg{width:17px;height:17px}.navigation>button small{color:#6d7972;font:10px var(--mono);margin-left:10px}.navigation>button.active{color:#c4d0b7;border-bottom-color:var(--teal);background:linear-gradient(0deg,#7ca78d15,transparent)}.navigation>button.active::before{content:"";width:4px;height:4px;background:var(--teal);position:absolute;bottom:8px;left:5px}.navigation>button:hover{color:var(--gold)}.nav-end{margin-left:auto;display:flex;align-items:center;gap:8px;font:9px var(--mono);letter-spacing:1px;color:#93a697;white-space:nowrap}.live-dot,.status-led{display:inline-block;width:5px;height:5px;background:var(--teal);box-shadow:0 0 7px #9fd2ad40;flex-shrink:0}.live-dot{background:var(--rust);box-shadow:0 0 7px #e6906640}.layout{display:grid;grid-template-columns:236px minmax(0,1fr) 252px;gap:24px;align-items:start}.panel{background:var(--panel);border:1px solid var(--border);box-shadow:3px 3px 0 #161e244f}.panel-cap{height:38px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 14px;font-size:11px;color:#bfc4ac;letter-spacing:1px;background:#323735;gap:10px}.panel-cap>span{display:flex;align-items:center;gap:9px}.panel-cap small{color:var(--muted);font:10px var(--mono)}.panel-cap .tag{font-size:9px;padding:1px 5px}.room-frame{position:relative;border-bottom:1px solid var(--border);overflow:hidden}.room-frame canvas{display:block;width:100%;image-rendering:pixelated}.room-frame>span{position:absolute;bottom:7px;left:10px;font:7px var(--mono);letter-spacing:1px;color:#a9b7a0}.tenant-info{display:flex;gap:10px;align-items:center;margin:18px 16px}.citizen-icon{font-size:31px;line-height:32px;color:#a0b5a3;background:#3b4742;border:1px solid #607165;width:37px;text-align:center}.tenant-info strong{font-size:13px;letter-spacing:1px}.tenant-info small{display:block;font-size:9px;color:#9ba394;margin-top:2px}.tenant-level{margin-left:auto;font:10px var(--mono);color:var(--gold);border:1px solid #716e57;padding:2px 4px}.wallet{background:#202a2b;margin:0 15px;padding:13px 12px;border:1px solid #56675a;box-shadow:inset 2px 2px 0 #142021;display:flex;flex-direction:column}.wallet>span{font-size:10px;letter-spacing:2px;color:#a3b4a1}.wallet strong{font:31px var(--mono);color:#b3d0ac;padding:4px 0 2px}.wallet strong small{font:19px var(--mono);color:#9eb79b}.wallet>small{font:10px var(--mono);color:#809e8a}.vitals{padding:18px 16px 8px}.meter{margin-bottom:13px}.meter>div{display:flex;justify-content:space-between;font-size:11px;line-height:1.4;margin-bottom:7px}.meter b{font:11px var(--mono);color:#bfc8aa}.meter small{color:#657d73;font-size:9px}.meter>i{height:5px;display:block;background:#1f282b}.meter em{display:block;background:#a3ac7e;height:100%}.meter:nth-child(2) em{background:#78a7a4}.meter.danger em{background:var(--rust)}.rent-note{border:0;border-block:1px solid #52574c;background:#393c34;display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px;width:100%;padding:12px 15px;font-size:10px;color:#b8ba9d}.rent-note b{color:#d3bd89;font-weight:400}.rent-note.overdue{background:#593e37}.tenant>.button{margin:13px 15px;width:calc(100% - 30px);font-size:11px}.notice{margin-top:22px;position:relative;background:#c2b18a;color:#4d5146;padding:20px 18px 15px;border:1px solid #d4c399;box-shadow:3px 3px 0 #121e23;transform:rotate(-1deg);background-image:repeating-linear-gradient(0deg,transparent,transparent 23px,#60573c14 23px,#60573c14 24px)}.notice::before{content:"";position:absolute;top:-5px;left:calc(50% - 18px);height:11px;width:36px;background:#8b948580;border:1px solid #a3a79155}.notice p{font-size:17px;line-height:1.9;font-weight:600;margin:12px 0 17px;letter-spacing:1px}.notice .tiny{font-size:9px;color:#62654f}.notice-code{font:7px var(--mono);letter-spacing:1px;border-top:1px dashed #7b795f;display:block;padding-top:9px}.connection{display:flex;align-items:center;gap:7px;color:#6f877b;font-size:9px;margin-top:25px}.connection>span:last-child{margin-left:auto;font:9px var(--mono)}
.page-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 20px;min-height:91px}.eyebrow{font:9px var(--mono);letter-spacing:2px;color:var(--teal)}h1{font-size:30px;font-weight:600;letter-spacing:2px;line-height:1.6;margin:3px 0}h1>span{font:12px var(--mono);color:#8f9d8d;letter-spacing:3px;margin-left:12px;white-space:nowrap}.page-heading p{font-size:11px;color:#a1a89a;line-height:1.8}.planet-badge{display:flex;align-items:center;gap:10px;color:#c7cbb0;white-space:nowrap;font-size:11px}.planet-badge small{display:block;font-size:9px;color:var(--muted)}.orbit-mini{font-size:40px;font-family:var(--mono);color:#b5b899;line-height:1}.world-stats{display:grid;grid-template-columns:repeat(4,1fr);margin-bottom:20px;border-top:1px solid #4c5147;border-bottom:1px solid #4c5147;background:#2c312e;padding:14px 0}.world-stats>div{padding:0 17px;border-right:1px solid #50554a}.world-stats>div:last-child{border-right:0}.world-stats span{display:block;color:#9fa895;font-size:10px;letter-spacing:1px}.world-stats strong{display:block;font:25px var(--mono);color:#d4d2af;margin-top:5px;white-space:nowrap}.world-stats strong small{font:10px "Microsoft YaHei",sans-serif;margin-left:6px;color:#98a08f}.orange{color:var(--rust)!important}.map-panel{overflow:hidden}.map-panel .panel-cap{height:39px}.segmented{display:flex;gap:1px;align-items:stretch}.segmented button{background:transparent;border:1px solid transparent;font-size:10px;padding:3px 12px;color:#9aa891}.segmented button.active{background:#4b5d50;border-color:#6f8066;color:#d3d6b4}.segmented button:hover{color:var(--gold)}.map-wrap{position:relative;background:#1c3033;overflow:hidden}.map-wrap canvas{width:100%;display:block;cursor:crosshair;touch-action:none}.map-overlay{position:absolute;top:15px;left:19px;font:10px var(--mono);color:#b8c8af;pointer-events:none;letter-spacing:1px;text-shadow:1px 1px #173439}.map-overlay small{display:block;font:8px "Microsoft YaHei";color:#89a194;letter-spacing:0;margin-top:4px}.map-tools{position:absolute;right:12px;bottom:29px;display:flex;flex-direction:column;gap:4px}.map-tools button{background:#233632df;border:1px solid #607668;width:27px;height:27px;color:#b2c5ab;font:18px var(--mono)}.map-tools button:hover{background:#4b6659}.map-legend{display:flex;align-items:center;gap:16px;padding:11px 13px;border-top:1px solid #4b554c;font-size:9px;background:#293330;flex-wrap:wrap}.map-legend>span{display:flex;align-items:center;gap:5px}.map-legend i{display:inline-block;width:7px;height:7px}.map-legend small{margin-left:auto;font-size:8px;color:#879a89}.legend-battle{color:var(--rust)}.below-map{display:grid;grid-template-columns:1.25fr 1fr;gap:17px;margin-top:20px}.region-title{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:16px 15px 10px}.region-title h2{font-size:18px}.region-title>span{font-size:10px}.region-picker{display:flex;align-items:center;gap:8px;margin:0 15px 10px}.region-picker label{font-size:10px;color:var(--muted);white-space:nowrap}.region-picker select{font-size:10px;min-height:27px;padding:3px 6px;flex:1;width:100%}.data-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 10px;padding:10px 15px}.data-grid span{display:block;font-size:10px;color:#929e8f}.data-grid strong{display:block;font:16px var(--mono);color:#c8cbb1;margin-top:3px}.region-panel>.fine{margin:0 15px;font-size:9px}.fine{font-size:11px;color:var(--muted);line-height:1.9}.army-chips{display:flex;flex-wrap:wrap;gap:6px;padding:12px 15px 16px}.army-chips>span{font:9px var(--mono);padding:5px 6px;border:1px solid #4c5b50;color:#a2bba5;background:#26312e}.army-chips b{font-weight:400;color:#c6cbb1}.army-chips small{color:#7d9787;font-size:8px}.power-row{margin:17px 15px}.power-row>div{display:flex;justify-content:space-between;align-items:center;font-size:11px}.power-row b{font:14px var(--mono)}.power-row b small{font-size:9px;color:#8a9589}.power-row>i{display:block;height:4px;background:#202a29;margin:8px 0 5px}.power-row em{display:block;height:100%}.power-row>small{color:#8e9c8c;font:9px var(--mono);display:flex;justify-content:space-between}
.heat-panel .panel-cap{color:#cfb38e}.heat-panel .panel-cap>span:last-child{color:var(--rust);font-size:8px}.heat-number{font:36px var(--mono);color:#d9ab7c;padding:17px 16px 11px;display:flex;flex-wrap:wrap;align-items:baseline}.heat-number>small{font:16px var(--mono);margin-left:4px}.heat-number>span{font:10px "Microsoft YaHei";margin-left:auto;color:#aaae91;white-space:nowrap}.heat-bars{display:flex;gap:3px;padding:0 16px}.heat-bars i{flex:1;height:16px;background:#45463c}.heat-bars i.lit{background:#b88660;box-shadow:0 0 6px #d3ad6d20}.heat-panel>p{font-size:9px;color:#959d88;margin:12px 16px 16px}.heat-meta{display:flex;justify-content:space-between;padding:10px 16px;background:#34382f;border-top:1px solid #505347;font-size:10px;color:#b0b09a}.heat-meta b{font:11px var(--mono);color:#cbaa75}.frontline{margin-top:24px}.section-label{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;font-size:11px;letter-spacing:1px}.section-label small{font:8px var(--mono);color:#869382;letter-spacing:0}.section-label .live-dot{margin-right:5px}.battle-card{width:100%;border:1px solid #52564a;padding:13px 12px;margin-bottom:10px;background:#30362f;text-align:left;box-shadow:2px 2px 0 #161e23}.battle-card:hover{background:#3b453b;border-color:#81927b}.tiny{font-size:9px;color:#95a18f}.battle-card .tiny{display:flex;align-items:center;gap:6px}.battle-card .tiny em{font:9px var(--mono);margin-left:auto;color:#798b79}.battle-card>strong{display:flex;align-items:center;justify-content:space-between;font-size:14px;color:#d0d3b6;margin:6px 0 9px}.battle-card svg{width:15px;height:15px;color:#7c947f}.combatants{display:flex;align-items:center;gap:7px;justify-content:space-between;font-size:9px}.combatants>span{display:flex;gap:5px}.combatants small{color:#64786a;font-size:9px}.combatants b{font:10px var(--mono)}.battle-bar{display:flex;height:3px;gap:3px;margin-top:10px}.wire{margin-top:22px}.wire>div:not(.section-label){display:flex;gap:10px;padding:10px 0;border-top:1px solid #424c43}.wire time{font:9px var(--mono);color:#789480;padding-top:3px}.wire p{font-size:10px;color:#aab19b;line-height:1.8}.manual-button{display:flex;align-items:center;gap:8px;width:100%;margin-top:20px;padding:12px;border:1px dashed #546450;background:#28332d;color:#a7b59a;font-size:10px}.manual-button svg{width:16px;height:16px}.manual-button span{margin-left:auto}.footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #465045;margin-top:29px;padding:18px 0 22px;color:#758574;font:9px var(--mono);letter-spacing:1px;gap:10px}.footer b{font:9px "Microsoft YaHei";margin-left:13px;color:#7c8778}.footer button{background:none;border:0;color:#a0ad94;font-size:10px}.button{display:inline-flex;justify-content:center;align-items:center;gap:7px;border:1px solid #8ea58a;background:#849d87;color:#1d302a;min-height:36px;padding:8px 14px;font-size:11px;font-weight:600;box-shadow:2px 2px 0 #152322}.button:hover:not(:disabled){background:#a5b79a;border-color:#c1c9a7}.button.subdued{background:#35453b;border-color:#657b63;color:#b6c6a4}.button.subdued:hover:not(:disabled){background:#475e49}.button.rust{background:#ac725d;border-color:#c58b70;color:#241f22}.button.rust:hover:not(:disabled){background:#c58b70}.button svg{width:14px;height:14px}.full{width:100%}.tag{display:inline-block;border:1px solid #5a6150;color:#a9af94;background:#353c32;padding:2px 7px;font-size:9px;font-weight:400;white-space:nowrap}.tag.teal{color:#b7cbaa;background:#3e5040;border-color:#788d6b}.tag.orange{border-color:#87694e;background:#493c31}.text-button{border:0;background:transparent;color:#a7bfa4;font-size:10px;padding:7px 0;text-align:left}.text-button:hover{color:var(--gold)}.empty{padding:45px 20px;color:#93a38c;text-align:center;width:100%;border:1px dashed #465543;grid-column:1/-1}.empty.small{font-size:11px;padding:25px 12px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.battle-layout{display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:16px}.battlefield-panel{align-self:start}#battle-map{display:block;width:100%;aspect-ratio:1;image-rendering:pixelated}#battle-map.targeting{cursor:crosshair;touch-action:none}.battle-caption{padding:10px 12px;font-size:9px;color:#b5baa0;border-top:1px solid var(--border)}.side-card{padding:13px;margin-bottom:12px}.side-card>div:first-child{display:flex;justify-content:space-between;gap:6px;font-size:11px}.side-card .tag{font-size:8px;padding:1px 4px}.side-count{display:block;font:26px var(--mono);margin:10px 0 5px}.side-count small{font:10px var(--mono);color:var(--muted)}.side-card>.button{margin-top:11px;font-size:10px}.battle-details>.fine{margin:10px 0 15px;font-size:9px}.unit-key{margin-top:16px;border:1px solid var(--border);padding:10px;font-size:10px;color:#98a78f}.unit-key>span{display:flex;justify-content:space-between;padding:3px 0}.result-note{transform:none;margin-top:18px;font-size:13px}.result-note::before{display:none}
.market-toolbar{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 0 16px;border-bottom:1px solid var(--border);margin-bottom:16px;flex-wrap:wrap}.market-toolbar>span{font-size:9px;color:var(--muted)}.segmented.large{gap:5px}.segmented.large>button{font-size:11px;padding:7px 11px;background:#2b342e;border:1px solid #485c49}.segmented.large>button.active{background:#50664e;border-color:#8da47c}.stake-panel{display:flex;align-items:center;gap:7px;background:#2c352e;border:1px solid #4b604b;padding:12px;flex-wrap:wrap}.stake-panel label{font-size:10px;color:#a1b091;margin-right:6px}.stake-input{position:relative;width:88px}.stake-input input{width:100%;padding-right:20px;font:13px var(--mono);color:#cfcca1}.stake-input span{position:absolute;right:10px;top:8px;color:#929e81}.stake-panel select{margin-left:auto;font-size:10px}.chip{background:transparent;border:1px solid #5f7459;color:#aabf98;font:11px var(--mono);padding:6px 9px;min-height:32px}.chip.active{background:#556c4e;color:#d4d9ad}.stake-panel+.fine{margin:12px 0 18px;font-size:10px}.market-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.market-card{padding:16px;min-width:0}.market-meta{display:flex;justify-content:space-between;gap:6px;font-size:9px;color:#97ac91;align-items:center}.market-meta small{font:8px var(--mono);color:#6e856f}.market-card h3{margin:13px 0 17px;font-size:14px}.market-options{display:flex;gap:6px}.outcome{flex:1;min-width:0;border:1px solid #56694f;background:#26322a;color:#aebc9e;padding:10px 5px;text-align:center}.outcome>span{display:block;font-size:9px;min-height:29px;line-height:1.5}.outcome strong{display:block;font:21px var(--mono);color:#bdc8a2;white-space:nowrap}.outcome strong small{font-size:10px;margin-left:2px;color:#7f997c}.outcome.chosen{background:#4a5d42;border-color:#afbb8a;box-shadow:inset 0 -2px #afbb8a}.outcome.winner{border-color:#b8c398;opacity:1;color:#d3d5aa}.outcome>small{font-size:9px}.market-footer{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:15px}.market-footer>small{font:9px/1.8 var(--mono);color:#819a7e}.market-footer>.button{font-size:10px;padding:6px 10px;white-space:nowrap}.market-card>.text-button{font-size:9px;padding-bottom:0;margin-top:8px}.ticket-summary{display:flex;flex-wrap:wrap;gap:25px;padding:18px 0;color:#9eae91;font-size:10px}.ticket-summary b{display:block;font:20px var(--mono);color:#c9cba1;margin-top:4px}.tickets{display:grid;gap:12px}.ticket{padding:17px;display:flex;justify-content:space-between;gap:15px}.ticket small{font:9px var(--mono);color:#819877}.ticket h3{margin:7px 0;font-size:13px}.ticket p{font-size:10px;color:#a1b28f}.ticket>div:last-child{display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between;white-space:nowrap}.ticket strong{font:20px var(--mono);color:#bbcba0}
.intervention-intro{display:flex;align-items:center;gap:20px;padding:20px;background:#333b32;border:1px solid #56634f;margin-bottom:22px}.large-symbol{font:65px var(--mono);color:#a6b28b;line-height:1}.intervention-intro p{font-size:11px;color:#a0af92;line-height:2}.intervention-intro strong{font-weight:400;color:#c2c7a2}.intervention-intro>div{margin-left:auto;font-size:9px;color:#a8ae8c;white-space:nowrap}.intervention-intro>div strong{display:block;font:24px var(--mono);color:var(--rust)}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.service{padding:20px;min-width:0}.service:last-child{grid-column:1/-1}.service-code{font:9px var(--mono);color:#829a7c;letter-spacing:2px}.service h2{font-size:18px;margin-top:7px}.service-art{text-align:center;font:38px var(--mono);height:100px;display:flex;justify-content:center;align-items:center;color:#adb88a;text-shadow:3px 3px #1b2927;background:repeating-linear-gradient(0deg,transparent,transparent 16px,#afbb8d0a 16px,#afbb8d0a 17px);margin:13px 0}.bomb-art{color:#d19a71}.revelation-art{height:65px;font-size:45px}.service p{font-size:11px;color:#9fab91;line-height:1.9;min-height:60px}.service footer{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:17px 0}.service footer strong{font:24px var(--mono);color:#cecb9e}.service footer strong small{font-size:10px;color:#94a184}.service>select{display:block;width:100%;margin-bottom:10px;font-size:11px}.ethics-note{padding:20px;margin-top:20px}.ethics-note>span{font-size:10px;letter-spacing:2px;color:#bbaa81}.ethics-note p{font-size:11px;color:#a2ad92;line-height:2;margin:10px 0}.ethics-note small{font-size:9px;color:#788e73}
.home-banner{display:grid;grid-template-columns:1fr 1fr;background:#313b33;border:1px solid #5d6b54;overflow:hidden}.home-banner canvas{width:100%;height:100%;object-fit:cover;image-rendering:pixelated}.home-banner>div{padding:24px 20px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.home-banner .eyebrow{font-size:8px;letter-spacing:1px}.home-banner h2{font-size:22px;margin:7px 0}.home-banner p{font-size:11px;line-height:2;color:#a4b097;margin-bottom:16px}.home-banner>div>small{font-size:8px;color:#809977;margin-top:7px}.section-title{font-size:16px;margin:26px 0 15px}.section-title span{font:9px var(--mono);color:#7c9577;letter-spacing:2px;margin-left:10px}.food-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.food-card{padding:15px 12px;display:flex;flex-direction:column;align-items:flex-start}.food-card h3{font-size:12px;margin:5px 0 8px}.food-card .tag{font-size:8px;padding:1px 4px}.food-card p{font-size:10px;color:#9daa91;line-height:1.9;margin:10px 0;flex:1}.food-card>small{font-size:9px;color:#b1b48c;margin-bottom:10px}.food-card>.button{padding:7px 3px;font-size:9px;white-space:nowrap}.food-icon{height:75px;width:100%;display:flex;align-items:center;justify-content:center;filter:drop-shadow(4px 4px 0 #1d2826)}.food-icon i{position:relative;display:block;image-rendering:pixelated}.food-icon.meal i{width:39px;height:43px;background:#c2b38b;border:4px solid #7f886c;box-shadow:inset 0 7px #e0cca0,inset 0 -7px #adb28c}.food-icon.meal i:before{content:"配 给";font-size:9px;position:absolute;inset:10px 0;text-align:center;background:#aa6f58;color:#e8d6a6}.food-icon.fruit i{width:34px;height:31px;background:#96a276;box-shadow:5px -6px #829a67,-5px 0 #7d9467,inset -7px -5px #607d59}.food-icon.fruit i:before{content:"";position:absolute;width:4px;height:12px;background:#b4b388;left:18px;top:-14px;transform:rotate(20deg)}.food-icon.fried i{width:35px;height:34px;background:#a96750;box-shadow:inset 0 -6px #8c5144;transform:skew(-5deg)}.food-icon.fried i:before{content:"";position:absolute;top:-14px;left:3px;width:5px;height:20px;background:#d3b571;box-shadow:8px -4px #bca166,16px 1px #d8c184,24px -3px #bd985f}.food-icon.water i{width:24px;height:45px;background:#84b0a2;border:3px solid #547e73;box-shadow:inset 4px 0 #b3cbb3,inset 0 -8px #6a9385}.food-icon.water i:before{content:"";position:absolute;left:3px;top:-10px;width:12px;height:8px;background:#bdc9aa;box-shadow:0 -3px #697d6c}.food-icon.water i:after{content:"H₂O";position:absolute;left:0;top:12px;background:#b4c4a3;font:8px var(--mono);color:#4d7368;padding:2px 0}.home-services{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:22px}.bill{padding:20px}.bill h2{font-size:17px;margin:7px 0 10px}.bill h2>span{font:12px var(--mono);color:#9ab18b}.bill p{font-size:11px;line-height:1.9;color:#9eac90}.bill>div{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin:16px 0}.bill>div strong{font:26px var(--mono);color:#d2cc9f}.bill>div strong small{font:11px var(--mono);color:#9baf8d}.bill>div>span{font-size:9px;color:#9aab8c}.archive-stats{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid #56634e;background:#2e382f;padding:20px;margin-bottom:20px;gap:10px}.archive-stats span{display:block;font-size:10px;color:#9bac8e}.archive-stats strong{font:26px var(--mono);color:#c6c59b;display:block;margin-top:5px}.archive-stats strong small{font-size:12px}.faction-dossiers{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px}.dossier{padding:15px 12px}.dossier h3{font-size:12px}.dossier>p{font-size:9px;color:#97a38a;margin:8px 0}.dossier .data-grid{padding:8px 0}.dossier .data-grid strong{font-size:15px}.dossier .data-grid span{font-size:9px}.event-log{max-height:800px;overflow:auto}.event-log .panel-cap{position:sticky;top:0;z-index:1}.log-row{padding:13px;display:grid;grid-template-columns:110px 33px 1fr;gap:12px;align-items:baseline;border-bottom:1px solid #414e41;font-size:10px}.log-row time{font:9px var(--mono);color:#7e9879;white-space:nowrap}.log-type{font-size:8px;background:#41523e;color:#a5b895;text-align:center;padding:2px}.log-type.battle,.log-type.intervention{background:#554238;color:#c39677}.log-type.market{background:#4d513a;color:#bdb68a}.log-row p{font-size:10px;line-height:1.8;color:#a9b59a}
#toast{position:fixed;bottom:32px;left:50%;transform:translate(-50%,15px);background:#b5c3a0;color:#233a2b;border:1px solid #d6d8b0;box-shadow:5px 5px 0 #151f23;font-size:12px;padding:13px 23px;max-width:90vw;z-index:100;opacity:0;pointer-events:none;transition:opacity .15s,transform .15s;text-align:center}#toast.visible{opacity:1;transform:translate(-50%,0)}#toast.error{background:#bc8d73;color:#362c29;border-color:#d5ae8a}.modal-backdrop{position:fixed;inset:0;background:#101921da;z-index:50;backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;padding:24px;overflow:auto}.modal{width:560px;max-width:100%;max-height:90dvh;overflow:auto;padding:35px;background:#2c3530;border:1px solid #8c9874;box-shadow:8px 8px 0 #121e24, inset 0 4px #6e8064;position:relative}.modal::after{content:"CIVILIAN SYSTEM / 0471";display:block;font:8px var(--mono);letter-spacing:2px;text-align:center;color:#647b61;border-top:1px solid #4c5e45;margin-top:24px;padding-top:12px}.modal h2{font-size:25px;margin:12px 0 20px;color:#dbd4ac}.modal p{font-size:12px;color:#aeb99b;line-height:2;margin:14px 0}.modal .fine{font-size:10px;color:#889c7d}.modal-close{position:absolute;top:13px;right:15px;border:0;background:transparent;font-size:22px;color:#b4c09e;width:32px;height:32px}.intro-logo{font:bold 44px var(--mono);letter-spacing:3px;color:#d1c79c;margin:23px 0 17px}.intro-logo span{color:#91b498}.intro-steps{display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid #5b6d4f;margin:25px 0;padding:20px 0;gap:12px}.intro-steps>span{font:10px var(--mono);color:#8caa7e}.intro-steps b{font:15px "Microsoft YaHei";margin-left:5px;color:#c5cba3}.intro-steps small{display:block;font:9px "Microsoft YaHei";color:#829976;margin-top:9px}.modal .full{margin-top:14px}.settings-row{display:flex;justify-content:space-between;align-items:center;padding:14px 0;border-bottom:1px solid #4c6045;font-size:12px}.settings-actions{display:flex;gap:12px;margin:20px 0}.settings-actions>button{flex:1}.help-content{max-height:55dvh;overflow:auto;padding-right:10px}.help-content h3{font-size:13px;color:#c1c89d;margin-top:23px}.help-content p{font-size:11px;color:#9ead90;line-height:2}.modal .ticket-summary{border-block:1px solid #4c6045}
@media(min-width:1800px){.shell{padding:0 40px}.layout{grid-template-columns:250px minmax(0,1fr) 260px;gap:29px}.header{height:120px}.map-wrap canvas{min-height:360px}}
@media(max-width:1300px){.shell{padding:0 24px}.layout{grid-template-columns:205px minmax(0,1fr) 220px;gap:18px}.brand strong{font-size:22px}.brand strong small{display:none}.terminal-id{font-size:9px}.navigation{gap:4px}.navigation>button{padding:0 14px}.navigation>button small{margin-left:3px}.world-stats>div{padding:0 10px}.world-stats strong{font-size:22px}.planet-badge{display:none}.world-stats span{font-size:9px}.heat-number{font-size:30px}.heat-number>span{font-size:9px}.battle-layout{grid-template-columns:minmax(0,1fr)}.battle-details{display:grid;grid-template-columns:1fr 1fr;gap:12px}.battle-details>.fine{margin:0}.unit-key{margin:0;grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:5px 15px}.side-card{margin:0}.home-banner{grid-template-columns:1fr}.home-banner canvas{max-height:210px;object-position:center 65%}.home-banner>div{padding:20px}.food-grid{grid-template-columns:repeat(2,1fr)}.faction-dossiers{grid-template-columns:1fr}.dossier .data-grid{grid-template-columns:repeat(4,1fr)}.market-grid{grid-template-columns:1fr}.market-card .outcome>span{min-height:15px}.below-map{grid-template-columns:1fr}.power-panel{display:none}.map-legend{gap:9px;font-size:8px}.map-legend small{display:none}.service-grid{grid-template-columns:1fr}.service:last-child{grid-column:auto}.home-services{grid-template-columns:1fr}.home-banner .eyebrow{font-size:7px}.intervention-intro{gap:12px;padding:16px}.intervention-intro p{font-size:10px}.intervention-intro strong{display:block}.log-row{grid-template-columns:85px 25px 1fr;gap:8px}.log-row time{font-size:8px}}
@media(max-width:1050px){.layout{grid-template-columns:190px minmax(0,1fr)}.right-column{display:none}.terminal-id{display:none}.header{height:100px}.navigation>button{flex:1;padding:0 12px;justify-content:center}.nav-end{display:none}.page-heading{min-height:85px}.world-stats{margin-bottom:17px}.below-map{grid-template-columns:1.2fr 1fr}.power-panel{display:block}.market-grid{grid-template-columns:1fr 1fr}.outcome>span{font-size:8px}.market-card{padding:12px}.market-footer{flex-wrap:wrap}.market-footer>.button{width:100%}.service-grid{grid-template-columns:1fr 1fr}.service:last-child{grid-column:1/-1}.food-grid{grid-template-columns:repeat(2,1fr)}.home-services{grid-template-columns:1fr 1fr}.battle-layout{grid-template-columns:1fr}.market-meta{flex-wrap:wrap}.bill{padding:16px}.nav-end{display:none}.heat-panel{display:none}}
@media(max-width:760px){body{font-size:12px}.shell{padding:0 15px}.header{height:auto;min-height:114px;flex-wrap:wrap;gap:10px;padding:16px 0 12px}.brand{gap:11px}.brand-mark{width:37px;height:39px;font-size:28px;line-height:36px}.brand strong{font-size:22px;letter-spacing:3px}.brand strong small{display:inline;font-size:9px;letter-spacing:1px}.brand>div>span{font-size:8px;letter-spacing:2px}.time-controls{width:100%;gap:12px;justify-content:space-between;margin-top:8px}.clock{flex-direction:row;align-items:center;gap:10px}.clock small{font-size:8px;letter-spacing:1px}.clock strong{font-size:11px}.speed-controls{margin-left:auto}.speed-controls button{width:25px;height:25px;font-size:10px}.icon-button{width:31px;height:31px}.icon-button svg{width:17px;height:17px}.navigation{margin-bottom:18px;height:59px;gap:0;position:sticky;top:0;background:#222b2bf7;z-index:20;backdrop-filter:blur(8px)}.navigation>button{padding:5px 3px;flex-direction:column;gap:3px;justify-content:center;font-size:10px;min-width:0}.navigation>button small{display:none}.navigation>button svg{width:16px;height:16px}.navigation>button.active::before{display:none}.layout{display:flex;flex-direction:column;gap:18px}.left-column{width:100%;order:0}.tenant{display:grid;grid-template-columns:1fr 1fr;border:1px solid #586450}.tenant .panel-cap,.room-frame,.tenant-info,.tenant>.button,.notice,.connection{display:none}.wallet{margin:10px;padding:8px 10px;grid-row:1 / 3;justify-content:center;min-width:0}.wallet>span{font-size:9px}.wallet strong{font-size:27px}.wallet strong small{font-size:17px}.wallet>small{font-size:9px}.vitals{padding:13px 12px 0 0;min-width:0}.meter{margin-bottom:10px}.meter>div{font-size:10px;margin-bottom:4px}.meter b{font-size:10px}.meter small{font-size:8px}.meter>i{height:4px}.rent-note{grid-column:2;border:0;background:transparent;padding:0 12px 9px 0;font-size:8px;line-height:1.5}.rent-note span{font-size:8px}.rent-note b{font-size:8px}.rent-note.overdue{background:transparent;color:var(--rust)}main{width:100%;order:1;scroll-margin-top:76px;min-width:0}.right-column{display:block;width:100%;order:2}.right-column .heat-panel,.right-column .wire,.right-column .manual-button{display:none}.frontline{margin-top:7px;display:grid;grid-template-columns:1fr 1fr;gap:10px}.frontline .section-label{grid-column:1/-1;margin-bottom:0}.battle-card{margin:0}.page-heading{min-height:0;margin-bottom:18px;align-items:flex-start}.page-heading .eyebrow{font-size:8px;letter-spacing:1.5px}h1{font-size:26px;margin-top:4px}h1>span{font-size:10px;letter-spacing:2px;margin-left:7px}.page-heading p{font-size:10px;margin-top:4px}.page-heading>.tag{font-size:8px;padding:2px 5px;margin-top:5px}.page-heading>.button{font-size:9px;padding:6px 10px}.world-stats{padding:12px 0;margin-bottom:16px}.world-stats>div{padding:0 9px}.world-stats span{font-size:8px;letter-spacing:0}.world-stats strong{font-size:21px;margin-top:7px}.world-stats strong small{font-size:8px;margin-left:3px}.world-stats>div:first-child strong{font-size:20px}.world-stats>div:first-child small{display:none}.map-overlay{top:10px;left:14px;font-size:8px}.map-overlay small{font-size:6px}.map-legend{padding:10px;gap:12px;font-size:8px}.map-tools{right:7px;bottom:20px;gap:3px}.map-tools button{width:24px;height:24px;font-size:16px}.panel-cap{font-size:10px;padding-inline:12px}.below-map{grid-template-columns:1fr;margin-top:16px}.power-panel{display:block}.power-row{margin:14px}.power-panel{display:grid;grid-template-columns:repeat(3,1fr)}.power-panel .panel-cap{grid-column:1/-1}.power-row>div{flex-wrap:wrap;gap:4px;font-size:9px}.power-row>small{flex-wrap:wrap;font-size:8px;gap:3px}.power-row b{font-size:12px}.region-title{margin:14px}.data-grid{grid-template-columns:repeat(4,1fr);gap:6px;padding:9px 14px}.data-grid span{font-size:9px}.data-grid strong{font-size:14px}.army-chips{padding:12px 14px}.market-grid{grid-template-columns:1fr}.market-card{padding:16px}.market-meta{flex-wrap:nowrap}.market-card .outcome>span{font-size:10px;min-height:18px}.market-options{gap:8px}.outcome strong{font-size:24px}.outcome{padding:13px 5px}.market-footer{flex-wrap:nowrap}.market-footer>.button{width:auto;min-height:40px}.market-toolbar{padding-top:0}.market-toolbar>span{font-size:8px}.segmented.large>button{font-size:10px;padding:7px 12px}.stake-panel{padding:10px;gap:6px}.stake-panel label{font-size:9px;margin-right:0}.stake-input{width:75px}.stake-panel select{font-size:9px;padding:6px;max-width:98px}.chip{padding:6px;font-size:10px}.stake-panel+.fine{font-size:9px}.ticket-summary{gap:24px}.ticket-summary b{font-size:19px}.ticket{padding:14px;gap:10px}.ticket h3{font-size:12px}.ticket>div:last-child strong{font-size:18px}.ticket small{font-size:8px}.service-grid{grid-template-columns:1fr}.service:last-child{grid-column:auto}.intervention-intro{padding:15px;gap:12px}.large-symbol{font-size:45px}.intervention-intro p{font-size:10px}.intervention-intro>div strong{font-size:20px}.service{padding:20px}.service h2{font-size:20px}.service p{min-height:0}.service-art{height:85px}.home-banner{grid-template-columns:1fr}.home-banner canvas{max-height:none;height:auto}.home-banner>div{padding:22px}.home-banner h2{font-size:23px}.home-banner .eyebrow{font-size:7px}.home-banner>div>small{font-size:9px}.food-grid{gap:12px}.food-card{padding:16px 13px}.food-card h3{font-size:13px}.food-card p{font-size:10px}.food-card>.button{font-size:10px;min-height:40px}.home-services{grid-template-columns:1fr}.bill{padding:20px}.bill>div{margin:18px 0}.archive-stats{padding:15px 12px;gap:8px}.archive-stats strong{font-size:23px}.archive-stats span{font-size:8px}.faction-dossiers{grid-template-columns:1fr}.dossier{padding:15px}.dossier h3{font-size:13px}.dossier .data-grid{grid-template-columns:repeat(4,1fr)}.event-log{max-height:650px}.log-row{grid-template-columns:82px 25px 1fr;padding:12px 10px;gap:7px}.log-row p{font-size:9px}.log-row time{font-size:8px}.battle-layout{gap:14px}.battle-details{gap:10px}.side-card{padding:13px}.side-card>div:first-child{font-size:10px;flex-wrap:wrap}.side-count{font-size:24px}.side-card>.button{font-size:9px;min-height:40px}.battle-details>.button{min-height:42px;align-self:start}.unit-key{font-size:9px}.battle-caption{font-size:9px}.footer{flex-wrap:wrap;line-height:1.9;padding:17px 0 24px;margin-top:23px;font-size:8px;letter-spacing:0}.footer>span:first-child{width:100%}.footer b{font-size:8px;margin-left:8px}.footer button{font-size:9px}.modal-backdrop{padding:16px}.modal{padding:26px 22px;max-height:90dvh}.modal h2{font-size:23px}.modal p{font-size:11px}.modal .eyebrow{font-size:8px;letter-spacing:1.4px}.intro-logo{font-size:36px;letter-spacing:1px;margin-top:30px}.intro-steps{gap:8px}.intro-steps small{font-size:8px}.intro-steps b{font-size:14px}.modal .button{min-height:44px}.help-content{max-height:52dvh}.settings-actions{gap:10px}.modal-close{top:8px;right:8px}.notice.result-note{display:block}.button{min-height:38px}.section-title span{font-size:8px}#toast{bottom:20px;font-size:11px;padding:12px 18px}}
@media(max-width:380px){.shell{padding-inline:10px}.brand strong small{display:none}.clock small{display:none}.world-stats>div{padding-inline:7px}.world-stats strong{font-size:19px}.world-stats>div:first-child strong{font-size:18px}.stake-panel select{max-width:83px}.stake-panel label{display:none}.data-grid strong{font-size:13px}.frontline{grid-template-columns:1fr}.power-row{margin:12px 9px}.intro-logo{font-size:31px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}body::after{display:none}}
