@charset "UTF-8";
.publisher-credit{color:#c8ac72!important}
:root{color-scheme:dark;--ink:#e9e7db;--muted:#a3afa8;--gold:#c8ac72;--line:#55605a;--panel:#242e2cef;--red:#d57366;--green:#99ae8c;font-family:"Microsoft YaHei","PingFang SC",system-ui,sans-serif;font-size:14px}
*{box-sizing:border-box}body{margin:0;background:#243d4e;color:var(--ink);overflow:hidden}button,input,select{font:inherit}button{border:1px solid #59645c;background:#35403b;color:var(--ink);padding:9px 12px;cursor:pointer;border-radius:3px;transition:background .14s,border-color .14s;touch-action:manipulation}button:hover{background:#4c584e;border-color:var(--gold)}button:active{background:#655d46}button:disabled{opacity:.4;cursor:not-allowed}button.active{background:#696448;border-color:var(--gold);color:#fff5d5}button.primary{background:#aa915c;color:#171d19;border-color:#d9c18b;font-weight:700}button.primary:hover{background:#c3a973}button.danger{background:#7c3e39;border-color:#a96053}.quiet{color:var(--muted)}select,input[type=number]{background:#1d2724;border:1px solid var(--line);color:var(--ink);padding:9px;max-width:100%;border-radius:3px}select option{background:#26312c;color:var(--ink)}input[type=range]{accent-color:var(--gold);width:100%}a{color:#d8c596}small{color:var(--muted)}[hidden]{display:none!important}#app{position:fixed;inset:0}#map{position:absolute;inset:0;width:100%;height:100%;touch-action:none}
#top{position:absolute;top:0;left:0;right:0;height:70px;display:flex;align-items:center;gap:22px;padding:8px 16px;background:linear-gradient(#343d36,#242b27);border-bottom:2px solid #968354;box-shadow:0 5px 18px #0006;z-index:5}.wordmark{border:0;background:none;font-family:serif;font-size:23px;color:#e3ce9e;letter-spacing:6px;padding:0 14px 0 0;border-right:1px solid #656655;border-radius:0;min-width:96px}.wordmark span{display:block;font-size:10px;letter-spacing:3px;margin-top:2px}.resources{display:flex;align-items:center;gap:22px;flex:1}.resources span{display:flex;flex-direction:column;color:#a4afa5;font-size:10px;white-space:nowrap;gap:4px}.resources b{color:#e5dfc9;font-size:17px;font-weight:500;font-variant-numeric:tabular-nums}#nation-heading{font-size:14px;max-width:180px}.clock{text-align:center;white-space:nowrap;font-variant-numeric:tabular-nums}.clock>div{display:flex;justify-content:center;gap:6px;margin-top:4px}.clock button{padding:3px 9px;height:25px;font-size:12px}#speeds{display:flex;gap:3px}#date{font-size:12px;color:#d7c79f}
#nav{position:absolute;top:86px;left:12px;bottom:66px;width:74px;background:#26312bed;border:1px solid #666c57;box-shadow:0 6px 20px #0005;overflow-y:auto;scrollbar-width:thin;z-index:4;overscroll-behavior:contain;touch-action:pan-y}#nav button{width:100%;border:0;border-bottom:1px solid #ffffff0b;border-radius:0;padding:11px 2px;background:transparent;font-size:11px;color:#c1c7ba}#nav button span{display:block;font-size:23px;margin-bottom:5px;color:#bfaf87}#nav button.active{background:#80754a55;color:#f6e9c5;border-left:3px solid var(--gold)}#nav button:hover{background:#56604b80}#map-tools{position:absolute;top:87px;left:102px;display:flex;gap:4px;z-index:3}#map-tools button{background:#263632df;padding:6px 10px;font-size:12px}#map-caption{position:absolute;left:108px;top:132px;display:flex;gap:12px;align-items:center;pointer-events:none;font-size:12px;color:#cbd9d5;text-shadow:0 2px 3px #000}#map-caption small{font-size:9px;letter-spacing:2px;color:#c0cfce}
#panel{position:absolute;top:86px;right:14px;bottom:78px;width:340px;background:var(--panel);border:1px solid #7a7b64;box-shadow:0 10px 35px #0008;z-index:6;display:flex;flex-direction:column;backdrop-filter:blur(8px)}#panel>header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #62684f;padding:17px 19px;background:#323c32}#panel>header small{font-size:9px;letter-spacing:2px;color:var(--gold)}#panel h2{font-family:serif;font-weight:500;font-size:23px;letter-spacing:2px;margin:5px 0 0}#panel>header button{border:0;background:none;font-size:25px;color:#c2c7b7;padding:2px 6px}#panel-content{padding:17px;overflow:auto;overscroll-behavior:contain;touch-action:pan-y;scrollbar-width:thin;scrollbar-color:#7d836d #26302a;flex:1}#panel-content>p:first-child{margin-top:0}p{line-height:1.8;font-size:13px}.card{background:#161f1b5c;border:1px solid #566050;margin:0 0 12px;padding:13px;border-radius:3px}.card.selected{border-color:var(--gold);background:#776b3d30}.card h3{font-size:14px;margin:0 0 8px;font-weight:600}.card p{font-size:12px;color:#b2beb5;line-height:1.65;margin:7px 0}.card .actions,.actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.actions button{font-size:12px;padding:8px 10px}.pill{font-size:10px;padding:3px 6px;background:#87957125;color:#c3cba8;border:1px solid #747d6055}.row{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:9px 0;font-size:12px}.row b{color:#dfd4b5;font-weight:500}.section-label{color:#b4a371;letter-spacing:2px;font-size:11px;margin:20px 0 10px;border-bottom:1px solid #626449;padding-bottom:8px}.equipment-image{width:100%;height:135px;object-fit:contain;background:radial-gradient(ellipse,#88836a40,#111912);border-bottom:1px solid #5a604d;margin-bottom:10px;border-radius:3px}.unit-pic{width:54px;height:54px;border-radius:50%;object-fit:cover;border:2px solid #ad9970;background:#807d68;flex:none}.unit-head{display:flex;gap:10px;align-items:center}.unit-head h3{margin-bottom:3px}.unit-head small{font-size:11px}.meter{height:5px;background:#18211b;margin:10px 0;border-radius:3px;overflow:hidden}.meter>i{display:block;height:100%;background:linear-gradient(90deg,#7e9471,#c1bf88);width:0}.tiny{font-size:11px!important}.danger-text{color:#e2a397!important}.wide{width:100%}.field{display:grid;gap:6px;margin-bottom:12px}.field label{font-size:11px;color:#b8c0b1}.stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.stat-grid div{background:#14201c66;padding:12px}.stat-grid strong{display:block;font-size:23px;font-weight:400;color:#d4c391;margin-top:5px}.stat-grid span{font-size:11px;color:#b5c0b1}.guide-list{padding:0;list-style:none}.guide-list li{margin:5px 0}.guide-list button{text-align:left;width:100%;font-size:12px}.guide-list .done{color:#acbf98}.key{display:inline-block;background:#51604c;padding:2px 5px;border:1px solid #84916f;font-size:11px}
#tutorial{position:absolute;bottom:80px;left:102px;width:320px;background:#25332ced;border:1px solid #a99b6b;box-shadow:0 7px 25px #0007;z-index:5;padding:14px 17px;border-left:3px solid #c0aa6a}#tutorial .tutorial-top{display:flex;justify-content:space-between;align-items:center;color:var(--gold);font-size:10px;letter-spacing:2px}#tutorial h3{font-family:serif;font-size:20px;font-weight:500;margin:8px 0}#tutorial p{font-size:12px;margin:6px 0;color:#c1ccbf;line-height:1.7}#tutorial button{font-size:11px;padding:6px 9px}#tutorial .actions{margin-top:10px}.demonstrate{outline:2px solid #e9c76f!important;box-shadow:0 0 15px #e9c76f80!important;animation:highlight 1s 4}@keyframes highlight{50%{outline-offset:5px}}
#command{position:absolute;bottom:14px;left:102px;right:14px;min-height:55px;background:#25312aef;border:1px solid #8e8965;padding:9px 14px;display:flex;align-items:center;justify-content:space-between;gap:14px;z-index:7;box-shadow:0 6px 15px #0005}#command-info{font-size:12px;line-height:1.6;max-width:58%;color:#d4d7c8}.command-buttons{display:flex;gap:7px;flex-shrink:0}.command-buttons button{font-size:12px}#message-dock{position:absolute;bottom:17px;left:13px;width:73px;font-size:11px;background:#28342dee;z-index:7;padding:9px 5px}#message-count{margin-left:4px;color:var(--gold)}#audio-toggle{position:absolute;bottom:17px;right:14px;background:#28342dee;z-index:3;font-size:18px}#toast{position:absolute;bottom:86px;left:50%;transform:translateX(-50%);max-width:500px;background:#17231ff5;border:1px solid #baaa7b;padding:12px 20px;z-index:100;pointer-events:none;opacity:0;transition:opacity .2s;font-size:13px;box-shadow:0 5px 20px #0008}#toast.show{opacity:1}
.screen{position:absolute;inset:0;z-index:20;background:linear-gradient(90deg,#10201bf2 0%,#172822d9 32%,#16272465 62%,#102019c9 100%);overflow:auto}.menu-layout{max-width:1240px;min-height:calc(100% - 55px);margin:auto;display:grid;grid-template-columns:1fr 460px;align-items:center;gap:90px;padding:50px 64px}.menu-brand .eyebrow{font-size:10px;letter-spacing:5px;color:#b4b092;margin-bottom:24px}.menu-brand h1{font-family:"STSong","SimSun",serif;font-size:92px;letter-spacing:20px;font-weight:500;margin:0;color:#e5d8b6;text-shadow:0 5px 25px #000a}.menu-brand h1 span{display:block;font-size:36px;letter-spacing:13px;margin-top:4px}.gold-rule{height:1px;background:linear-gradient(90deg,#b2a171,transparent);margin:32px 0;width:230px}.menu-brand p{font-family:serif;line-height:2.3;letter-spacing:2px;color:#bec7b7;font-size:15px}.menu-date{font-size:39px;color:#c2ad7c;font-family:Georgia,serif;margin-top:28px}.menu-date span{font:11px sans-serif;letter-spacing:4px;display:inline-block;margin-left:18px;color:#b9c1b3}.build-label{display:block;margin-top:25px;font-size:10px;letter-spacing:1px;color:#9faa99}.campaign-card{background:#27342dec;border:1px solid #858163;padding:28px;box-shadow:0 15px 50px #0005}.eyebrow{font-size:10px;letter-spacing:3px;color:#c0b17f}.campaign-card h2{font:26px serif;letter-spacing:3px;margin:12px 0 22px}#factions{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}#factions button{background:#26332b;padding:12px 5px;font-size:11px;min-height:65px}#factions button.active{border-color:#dcc78b;background:#78714b70}.flag{display:block;width:32px;height:20px;margin:0 auto 7px;box-shadow:0 1px 5px #0007;border:1px solid #ffffff30}.flag-de{background:linear-gradient(#222 33.3%,#e5e3d8 33.3% 66.6%,#a8443e 66.6%)}.flag-fr{background:linear-gradient(90deg,#385c94 33.3%,#e5e3d8 33.3% 66.6%,#ae514a 66.6%)}.flag-it{background:linear-gradient(90deg,#548162 33.3%,#e5e3d8 33.3% 66.6%,#a64c44 66.6%)}.flag-gb{background:linear-gradient(90deg,transparent 41%,#e7e1d2 41% 59%,transparent 59%),linear-gradient(transparent 34%,#b54d48 34% 66%,transparent 66%),#3d5274}.flag-es{background:linear-gradient(#a5443d 25%,#d4b456 25% 75%,#a5443d 75%)}.flag-pl{background:linear-gradient(#e5e3d8 50%,#b85258 50%)}#faction-description{min-height:104px;margin-top:17px;font-size:12px;line-height:1.9;color:#bbc6b7}.check{display:flex;align-items:center;gap:8px;font-size:12px;color:#cdd4c3;margin:14px 0}.check input{accent-color:var(--gold)}.start{width:100%;display:flex;justify-content:space-between;padding:14px 17px}.menu-links{display:flex;justify-content:space-between;margin-top:10px}.menu-links button{background:none;border:0;font-size:11px;color:#b8c1ad;padding:8px 2px}.menu-bottom{height:45px;display:flex;justify-content:space-between;padding:0 45px;align-items:center;border-top:1px solid #ffffff12;font-size:10px;color:#9eac9c;letter-spacing:2px}
#modal-layer{position:absolute;inset:0;z-index:30;background:#07110cd9;display:flex;align-items:center;justify-content:center;padding:20px;backdrop-filter:blur(5px)}.modal{background:#28342e;border:1px solid #a99c72;box-shadow:0 20px 70px #000b;width:min(680px,96vw);max-height:90vh;display:flex;flex-direction:column}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;border-bottom:1px solid #737961}.modal-header h2{font:25px serif;margin:0;letter-spacing:3px}.modal-content{padding:22px 26px;overflow:auto;overscroll-behavior:contain;touch-action:pan-y}.modal-footer{display:flex;gap:10px;justify-content:flex-end;padding:15px 24px;border-top:1px solid #67705a}.newspaper{background:#d9d1b8;color:#302e25;border:7px double #4a4a3c}.newspaper .modal-header{border-bottom:3px double #585446}.newspaper .modal-header h2{font-size:34px;font-weight:700;letter-spacing:12px}.newspaper p{font:15px/2 "SimSun",serif}.newspaper h3{font:27px/1.5 "SimSun",serif;text-align:center}.newspaper .dateline{text-align:center;border-block:1px solid #6c6853;padding:7px;color:#68614a;font-size:11px;letter-spacing:3px}.newspaper .modal-footer{border-color:#8f896f}.newspaper small{color:#6c6651}.newspaper button{background:#4a5140;color:#efebd9}.alert-ribbon{background:#8d4c42;padding:8px;text-align:center;color:#f8e5d0;font-size:12px;letter-spacing:4px}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}#orientation{display:none}
@media(max-width:1050px){#top{gap:12px}.resources{gap:13px}.resources span{font-size:9px}.resources b{font-size:15px}#nation-heading{font-size:12px}.wordmark{min-width:78px;font-size:20px}.menu-layout{gap:45px;padding:30px 40px;grid-template-columns:1fr 400px}.menu-brand h1{font-size:70px}.menu-brand h1 span{font-size:28px}.campaign-card{padding:22px}}
@media(max-height:550px) and (orientation:portrait){:root{font-size:12px}#top{height:49px;padding:4px 9px;gap:9px}.wordmark{font-size:17px;min-width:65px;letter-spacing:3px}.wordmark span{font-size:8px}.resources{gap:13px}.resources span{font-size:8px;gap:1px}.resources b{font-size:12px}#nation-heading{font-size:10px;max-width:100px}#date{font-size:10px}.clock>div{margin-top:2px}.clock button{height:20px;padding:1px 7px;font-size:10px}#nav{top:58px;left:7px;bottom:50px;width:56px}#nav button{font-size:9px;padding:7px 1px}#nav button span{font-size:17px;margin-bottom:3px}#map-tools{top:58px;left:72px}#map-tools button{padding:5px 8px;font-size:10px}#map-caption{left:77px;top:91px;font-size:10px}#map-caption small{font-size:7px}#panel{top:58px;right:7px;bottom:57px;width:280px}#panel>header{padding:10px 13px}#panel h2{font-size:19px}#panel-content{padding:12px}#tutorial{left:73px;bottom:57px;width:255px;padding:9px 12px}#tutorial h3{font-size:16px;margin:5px 0}#tutorial p{font-size:10px;line-height:1.55}#tutorial .tutorial-top{font-size:9px}#tutorial button{font-size:10px;padding:5px 7px}#tutorial .actions{margin-top:6px}#command{left:72px;bottom:7px;right:7px;min-height:42px;padding:5px 9px;gap:8px}#command-info{font-size:10px}.command-buttons{gap:5px}.command-buttons button{font-size:10px;padding:8px 10px}#message-dock{left:7px;bottom:7px;width:56px;font-size:9px;padding:8px 2px}#audio-toggle{bottom:7px;right:7px;font-size:13px}#toast{bottom:58px;font-size:11px;padding:10px 14px;max-width:450px}.menu-layout{min-height:calc(100% - 30px);grid-template-columns:1fr 355px;padding:15px 40px;gap:40px}.menu-brand h1{font-size:57px;letter-spacing:14px}.menu-brand h1 span{font-size:23px;letter-spacing:8px}.menu-brand .eyebrow{font-size:8px;letter-spacing:2px;margin-bottom:13px}.gold-rule{margin:18px 0}.menu-brand p{font-size:11px;line-height:1.8}.menu-date{font-size:28px;margin-top:14px}.build-label{font-size:8px;margin-top:13px}.campaign-card{padding:14px 18px}.campaign-card h2{font-size:19px;margin:6px 0 12px}.campaign-card .eyebrow{font-size:8px}#factions{gap:5px}#factions button{padding:5px 3px;font-size:10px;min-height:42px}.flag{width:25px;height:15px;margin-bottom:4px}#faction-description{min-height:48px;font-size:10px;line-height:1.6;margin-top:9px}.check{font-size:10px;margin:8px 0}.start{padding:9px 13px;font-size:11px}.menu-links{margin-top:3px}.menu-links button{font-size:9px;padding:5px 2px}.menu-bottom{height:28px;font-size:8px;padding:0 30px}.modal{max-height:95vh}.modal-header{padding:10px 18px}.modal-header h2{font-size:20px}.modal-content{padding:12px 20px}.modal-footer{padding:9px 18px}.newspaper .modal-header h2{font-size:23px}.newspaper h3{font-size:21px;margin:8px 0}.newspaper p{font-size:12px}.equipment-image{height:100px}}
.flag-gb{background:url('assets/flag-gb-1912.svg') center/100% 100%}.flag-it{background:url('assets/flag-it-1912.svg') center/100% 100%}
.officer-preview{display:flex;gap:12px;align-items:center;padding:9px;margin-bottom:8px;background:#1b251f;border:1px solid #515d4e}.officer-preview img{width:72px;height:70px;object-fit:cover;object-position:center 25%;border:1px solid #a99a73}.officer-preview b{font-size:12px;display:block;margin-bottom:7px}.officer-preview small{font-size:10px;display:block;line-height:1.5}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
.menu-links a{background:none;border:0;font-size:11px;color:#d8c596;padding:8px 2px;text-decoration:none}.deluxe-links{border-top:1px solid #ffffff14;margin-top:12px;padding-top:7px}.deluxe-note{display:block;color:#9eafa0;font-size:10px;line-height:1.6;margin-top:8px}

@media(max-width:550px){
  html,body{width:100%;min-width:0;overflow:hidden} 
  .modal-content{width:calc(100vw - 24px);max-width:420px;max-height:82vh;margin:6vh auto 0;border-radius:8px}
  .modal-header{padding:8px 12px}
  .modal-header h2{font-size:16px}
  .modal-body{padding:10px 12px;max-height:62vh;overflow:auto}
  .modal-footer{padding:8px 12px;gap:6px}
  .modal-footer button{min-height:36px;padding:7px 10px;font-size:13px}
}
