@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2) format("woff2-variations");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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2) format("woff2-variations");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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2) format("woff2-variations");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:IM Fell English;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/im-fell-english-latin-400-normal-BhowGHCQ.woff2) format("woff2"),url(/assets/im-fell-english-latin-400-normal-CxhBQSzl.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:IM Fell English;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/im-fell-english-latin-400-italic-DD_ylKHZ.woff2) format("woff2"),url(/assets/im-fell-english-latin-400-italic-hN89MLGX.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}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--color-night);color:var(--color-parchment);font-family:Inter Variable,system-ui,sans-serif;font-size:15px;line-height:1.5}.app{display:flex;flex-direction:column;height:100%}.app-header{display:flex;align-items:baseline;gap:1rem;padding:.7rem 1.4rem;background:var(--color-night-raised);border-bottom:1px solid var(--color-brass)}.app-header h1{margin:0;font-family:IM Fell English,serif;font-size:1.5rem;font-weight:400;letter-spacing:.14em;text-transform:uppercase;color:var(--color-parchment)}.app-header .subtitle{font-family:IM Fell English,serif;font-style:italic;color:var(--color-ink-faded);font-size:1rem}.app-header .turn-indicator{margin-left:auto;font-family:IM Fell English,serif;font-size:1.1rem;color:var(--color-brass)}.report-btn{margin-left:1rem;padding:.25rem .7rem;background:#8e403440;border:1px solid var(--color-austria);border-radius:2px;color:var(--color-parchment);font-family:IM Fell English,serif;font-size:.9rem;cursor:pointer}.report-btn:hover{background:#8e403473}.version-tag{margin-left:.6rem;padding:.2rem .6rem;background:transparent;border:1px solid rgb(160 134 72 / .4);border-radius:2px;color:var(--color-ink-faded);font-family:IM Fell English,serif;font-size:.9rem;cursor:pointer}.version-tag:hover{color:var(--color-parchment);border-color:var(--color-brass)}.changelog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;align-items:center;justify-content:center;background:#0f0c09b3}.changelog{width:min(560px,92vw);max-height:82vh;display:flex;flex-direction:column;background:var(--color-night-raised);border:1px solid var(--color-brass);box-shadow:0 12px 60px #0009;padding:1.4rem 1.6rem}.flag-editor{width:min(420px,92vw);background:var(--color-night-raised);border:1px solid var(--color-brass);box-shadow:0 12px 60px #0009;padding:1.2rem 1.4rem}.flag-editor h4{margin:.9rem 0 .4rem;color:var(--color-ink-faded);font-weight:600}.flag-preview{position:relative;height:70px;margin-top:.6rem;border:1px solid var(--color-ink);display:flex;align-items:center;justify-content:center}.flag-preview-emblem{font-family:serif;font-size:2rem;color:var(--color-night);text-shadow:0 0 2px rgb(226 212 178 / .6)}.flag-swatches,.flag-row{display:flex;gap:.4rem;flex-wrap:wrap}.swatch{width:30px;height:24px;border:1px solid var(--color-ink);cursor:pointer;padding:0}.swatch.active{outline:2px solid var(--color-brass);outline-offset:1px}.changelog-head{display:flex;align-items:baseline;justify-content:space-between}.changelog-head h2{margin:0;font-family:IM Fell English,serif;font-weight:400;font-size:1.6rem;letter-spacing:.12em;text-transform:uppercase;color:var(--color-parchment)}.changelog-close{background:transparent;border:none;color:var(--color-ink-faded);font-size:1.8rem;line-height:1;cursor:pointer}.changelog-close:hover{color:var(--color-parchment)}.changelog-sub{margin:.2rem 0 1rem;color:var(--color-ink-faded);font-size:.9rem}.changelog-body{overflow-y:auto}.changelog-entry{border-top:1px solid rgb(160 134 72 / .25);padding:.9rem 0 .3rem}.changelog-entry h3{display:flex;align-items:baseline;gap:.6rem;margin:0 0 .5rem;font-family:IM Fell English,serif;font-weight:400;font-size:1.15rem;color:var(--color-brass)}.changelog-version{font-size:.85rem;color:var(--color-parchment);background:#a0864840;padding:.05rem .4rem;border-radius:2px}.changelog-date{margin-left:auto;font-size:.8rem;color:var(--color-ink-faded);font-style:italic}.changelog-entry ul{margin:0;padding-left:1.2rem}.changelog-entry li{margin-bottom:.3rem;font-size:.92rem;color:var(--color-parchment);opacity:.9}.feedback-cats{display:flex;gap:.4rem;margin-bottom:.8rem}.feedback-cats button{flex:1;padding:.4rem;background:transparent;border:1px solid rgb(160 134 72 / .4);color:var(--color-parchment);font-family:IM Fell English,serif;font-size:.95rem;cursor:pointer}.feedback-cats button.active{background:#a0864859;border-color:var(--color-brass)}.feedback-text{width:100%;resize:vertical;padding:.6rem;background:#00000040;border:1px solid rgb(160 134 72 / .3);color:var(--color-parchment);font-family:Inter Variable,system-ui,sans-serif;font-size:.95rem;margin-bottom:.8rem}.feedback-failed{color:var(--color-austria);font-size:.88rem}.feedback-done{text-align:center;padding:1.5rem 0 .5rem}.linklike{background:none;border:none;padding:0;color:var(--color-brass);text-decoration:underline;cursor:pointer;font:inherit}.screen-tabs{display:flex;gap:.4rem;margin-left:1.2rem}.screen-tabs button{padding:.25rem .8rem;background:transparent;border:1px solid rgb(160 134 72 / .4);color:var(--color-parchment);font-family:IM Fell English,serif;font-size:.95rem;cursor:pointer}.screen-tabs button.active{background:#a0864859;border-color:var(--color-brass)}.main-row{display:flex;flex:1;min-height:0}.battlefield{position:relative;flex:1;min-width:0;padding:1.2rem}.canvas-fade{height:100%;width:100%;animation:layer-in .28s ease-out}@keyframes layer-in{0%{opacity:0}to{opacity:1}}.battlefield-canvas{height:100%;width:100%;overflow:hidden;box-shadow:0 8px 40px #00000080}.battlefield-canvas canvas{display:block}.panel{display:flex;flex-direction:column;gap:1rem;width:320px;padding:1.2rem;background:var(--color-night-raised);border-left:1px solid rgb(160 134 72 / .4);overflow-y:auto}.panel button{padding:.5rem .9rem;background:transparent;border:1px solid var(--color-brass);color:var(--color-parchment);font-family:IM Fell English,serif;font-size:1rem;cursor:pointer}.panel button:hover:not(:disabled){background:#a086482e}.panel button:disabled{opacity:.4;cursor:default}.panel button.primary{background:#a0864840}.panel-actions{display:flex;flex-direction:column;gap:.5rem}.orders-status{margin:0;font-size:.88rem;color:var(--color-ink-faded)}.orders-status.done{color:var(--color-brass)}.panel button.primary.ready{background:#a086488c;box-shadow:0 0 12px #a0864873}.formation-row{display:flex;gap:.35rem;flex-wrap:wrap}.formation-row button{font-size:.85rem;padding:.3rem .55rem}.formation-row button.active{background:#a0864866}.stat-bar{display:flex;align-items:center;gap:.5rem;margin:.3rem 0;font-size:.82rem}.stat-label{width:4.2rem;color:var(--color-ink-faded)}.stat-track{flex:1;height:8px;background:#00000059;border:1px solid rgb(160 134 72 / .3);overflow:hidden}.stat-fill{display:block;height:100%}.stat-fill.brass{background:var(--color-brass)}.stat-fill.red{background:var(--color-austria)}.stat-fill.ink{background:var(--color-ink-faded)}.stat-exact{min-width:3.6rem;text-align:right;color:var(--color-parchment);opacity:0;transition:opacity .12s}.stat-bar:hover .stat-exact{opacity:1}.hint{color:var(--color-ink-faded);font-size:.9rem;margin:0}.unit-card h3,.log-heading{margin:0 0 .4rem;font-family:IM Fell English,serif;font-weight:400;font-size:1.15rem;color:var(--color-brass)}.unit-card dl{display:grid;grid-template-columns:auto 1fr;gap:.15rem .9rem;margin:0 0 .8rem;font-size:.92rem}.unit-card dt{color:var(--color-ink-faded)}.unit-card dd{margin:0}.brigade-row{margin-bottom:.35rem}.brigade-vet{display:block;font-size:.72rem;font-style:italic;color:var(--color-ink-faded);margin-top:.05rem}.rename-btn{background:none;border:none;color:var(--color-ink-faded);cursor:pointer;font-size:.8rem;padding:0 .25rem;margin-left:.3rem}.rename-btn:hover{color:var(--color-brass)}.economy{margin-top:.8rem;border-top:1px solid rgb(160 134 72 / .25);padding-top:.6rem;font-size:.85rem}.economy h4{margin:0 0 .4rem;color:var(--color-brass);font-weight:600}.econ-head{width:100%;display:flex;justify-content:space-between;align-items:center;gap:.5rem;background:none;border:none;padding:0;cursor:pointer;color:var(--color-brass);font-weight:600;font-family:inherit;font-size:inherit;text-align:left}.income-row{display:flex;justify-content:space-between;color:var(--color-ink-faded);padding:.1rem 0}.raise-kinds{display:inline-flex;gap:.3rem}.income-row.total{margin-top:.3rem;border-top:1px solid rgb(160 134 72 / .25);padding-top:.3rem;color:var(--color-parchment);font-weight:600}.event-log{flex:1;min-height:0;overflow-y:auto;font-size:.85rem;border-top:1px solid rgb(160 134 72 / .25);padding-top:.6rem}.event-log p{margin:0 0 .45rem;color:var(--color-parchment);opacity:.85}.banner{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;background:#1b1712a6}.banner h2{font-family:IM Fell English,serif;font-weight:400;font-size:2.6rem;letter-spacing:.1em;color:var(--color-parchment);margin:0;text-shadow:0 2px 18px rgb(0 0 0 / .7)}.banner button{padding:.6rem 1.4rem;background:var(--color-night-raised);border:1px solid var(--color-brass);color:var(--color-parchment);font-family:IM Fell English,serif;font-size:1.1rem;cursor:pointer}.menu-btn{margin-left:1rem;padding:.25rem .7rem;background:#a086482e;border:1px solid var(--color-brass);border-radius:2px;color:var(--color-parchment);font-family:IM Fell English,serif;font-size:.9rem;cursor:pointer}.menu-btn:hover{background:#a0864857}.intro-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:flex;align-items:center;justify-content:center;padding:2rem;background:radial-gradient(ellipse at center,#2520198c,#0f0c09f5);animation:intro-fade .4s ease both}.intro{width:min(640px,94vw);max-height:92vh;overflow-y:auto;padding:2rem 2.4rem 1.6rem;background:var(--color-night-raised);border:1px solid var(--color-brass);box-shadow:0 18px 80px #000000b3;text-align:center}.intro-title{margin:0;font-family:IM Fell English,serif;font-weight:400;font-size:3.2rem;letter-spacing:.18em;text-transform:uppercase;color:var(--color-parchment)}.intro-tagline{margin:.2rem 0 1.6rem;font-family:IM Fell English,serif;font-style:italic;font-size:1.15rem;color:var(--color-ink-faded)}.intro-resume{display:block;width:100%;margin:0 0 1.6rem;padding:.7rem 1rem;background:#a0864838;border:1px solid var(--color-brass);color:var(--color-parchment);font-family:IM Fell English,serif;font-size:1.15rem;cursor:pointer}.intro-resume:hover{background:#a0864866}.intro-section{margin-bottom:1.5rem;text-align:left}.intro-section h2{margin:0 0 .2rem;font-family:IM Fell English,serif;font-weight:400;font-size:1.4rem;letter-spacing:.06em;color:var(--color-brass)}.intro-hint{margin:0 0 .7rem;font-size:.92rem;color:var(--color-ink-faded)}.intro-choices{display:flex;gap:.8rem}.intro-choice{flex:1;display:flex;flex-direction:column;gap:.25rem;padding:.8rem 1rem;background:var(--color-night);border:1px solid var(--color-ink-faded);border-left-width:4px;color:var(--color-parchment);font-family:inherit;text-align:left;cursor:pointer;transition:background .15s ease,border-color .15s ease}.intro-choice strong{font-family:IM Fell English,serif;font-size:1.2rem;font-weight:400}.intro-choice span{font-size:.85rem;color:var(--color-ink-faded)}.intro-choice.fr{border-left-color:var(--color-france)}.intro-choice.au{border-left-color:var(--color-austria)}.intro-choice.fr:hover{background:#34506e38;border-color:var(--color-france)}.intro-choice.au:hover{background:#8e403438;border-color:var(--color-austria)}.intro-dismiss{margin-top:.4rem;padding:.35rem 1rem;background:transparent;border:1px solid rgb(160 134 72 / .4);color:var(--color-ink-faded);font-family:IM Fell English,serif;font-size:.95rem;cursor:pointer}.intro-dismiss:hover{color:var(--color-parchment);border-color:var(--color-brass)}@keyframes intro-fade{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
