@font-face{font-family:Noto Sans;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/NotoSans-400-cyrillic.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Noto Sans;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/NotoSans-400-latin.woff2) format("woff2");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:"Noto Serif";font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/NotoSerif-400-cyrillic.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:"Noto Serif";font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/NotoSerif-400-latin.woff2) format("woff2");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{--birch: #ead9b3;--parchment: #f3e6c6;--cinnabar: #a94132;--cinnabar-dark: #7f2f24;--pine: #31564b;--pine-dark: #22403a;--ochre: #c79b50;--wood: #71472f;--teal: #526967;--soot: #302923;--muted: #6f5d48;color-scheme:light}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{height:100%;margin:0}body{background:var(--birch);background-image:radial-gradient(ellipse at 50% 0%,rgba(255,250,235,.55),transparent 60%),repeating-linear-gradient(0deg,rgba(113,71,47,.035) 0 2px,transparent 2px 7px);color:var(--soot);font-family:Noto Sans,system-ui,sans-serif;font-size:15px;overflow:hidden;user-select:none;-webkit-user-select:none}#app{height:100%}.serif,h1,h2,h3,.logo-text{font-family:"Noto Serif",Georgia,serif}.screen{height:100%;display:flex;flex-direction:column;padding:calc(8px + env(safe-area-inset-top,0px)) 12px calc(8px + env(safe-area-inset-bottom,0px))}.screen.center{align-items:center;justify-content:center;text-align:center;gap:14px}.logo-img{width:min(300px,80vw);height:auto}.muted{color:var(--muted);margin:0;line-height:1.45}.caps{font-family:"Noto Serif",Georgia,serif;text-transform:uppercase;letter-spacing:.14em;font-size:12px;color:var(--muted)}button{font:inherit;color:var(--soot);background:linear-gradient(#f6ecd4,#e6d3ab);border:2px solid var(--wood);border-radius:8px;padding:10px 12px;cursor:pointer;box-shadow:inset 0 1px #fff9,0 2px #30292340}button:active{transform:translateY(1px);box-shadow:inset 0 1px #fff6}button:disabled{opacity:.45}button.red{color:#fbecd0;background:linear-gradient(#b85240,var(--cinnabar-dark));border-color:#4a2a1d}button.green{color:#fbecd0;background:linear-gradient(#4a7466,var(--pine-dark));border-color:#1d302b}button.big{width:100%;padding:14px;font-size:16px;font-family:"Noto Serif",Georgia,serif;letter-spacing:.08em;text-transform:uppercase}button:focus-visible{outline:3px solid var(--ochre);outline-offset:2px}.panel-card{background:linear-gradient(var(--parchment),#ead7ae);border:3px solid var(--wood);border-radius:12px;box-shadow:0 2px #30292333;position:relative}.panel-card:before{content:"";position:absolute;left:10px;right:10px;top:6px;height:6px;background:radial-gradient(circle,var(--cinnabar) 1.6px,transparent 2px) 0 0 / 14px 6px repeat-x;opacity:.55}.side-head{display:grid;gap:6px;justify-items:center;text-align:center;padding-block:6px 10px}.side-head .logo-img{width:min(260px,70vw)}.sides{display:grid;grid-template-columns:1fr 1fr;gap:10px;flex:1;align-content:start}.side-card{display:grid;grid-template-rows:auto 1fr;gap:6px;padding:10px 8px 12px;text-align:center;border-width:3px}.side-card img{width:100%;aspect-ratio:4 / 5;object-fit:contain}.side-card .side-name{font-family:"Noto Serif",Georgia,serif;font-size:20px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.side-card.rus{border-color:var(--pine)}.side-card.rus .side-name{color:var(--pine)}.side-card.nav{border-color:var(--cinnabar)}.side-card.nav .side-name{color:var(--cinnabar)}.side-card .side-hero{color:var(--wood);font-family:"Noto Serif",Georgia,serif}.side-card .side-style{color:var(--muted);font-size:13px;line-height:1.4}.small-note{text-align:center;font-size:13px;padding-top:8px}.battle{padding-inline:8px;gap:4px}.topbar{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:13.5px;color:var(--muted);padding-inline:4px;min-height:26px}.topbar .turn{color:var(--soot);font-family:"Noto Serif",Georgia,serif;font-weight:700}.topbar .turn.mine{color:var(--pine)}.topbar .timer{font-weight:700;font-variant-numeric:tabular-nums;color:var(--soot)}.topbar .timer.low{color:var(--cinnabar, #a94132);animation:pulse 1s infinite}@keyframes pulse{50%{opacity:.45}}.recruit-duel{margin:0;font-size:13.5px;text-align:center}#screen-wait{gap:14px}.mana{font-family:Noto Sans,sans-serif;font-weight:600;color:#3f5f9c;display:inline-flex;gap:4px;align-items:center}.mana img{width:18px;height:18px}.ribbon{text-align:center;font-family:"Noto Serif",Georgia,serif;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:#fbecd0;padding:1px 10px;margin-inline:14px;clip-path:polygon(0 0,100% 0,97% 100%,3% 100%)}.ribbon.enemy{background:linear-gradient(#b85240,var(--cinnabar-dark))}.ribbon.mine{background:linear-gradient(#4a7466,var(--pine-dark));clip-path:polygon(3% 0,97% 0,100% 100%,0 100%)}#board{flex:1;min-height:0;display:flex;align-items:center;justify-content:center}#board canvas{display:block;touch-action:manipulation}.panel{display:grid;gap:5px}.card{display:grid;grid-template-columns:40px 1fr;gap:8px;padding:10px 8px 6px;min-height:58px;border-width:2px;cursor:pointer}.card:before{top:3px}.card .portrait{width:40px;height:40px;border-radius:50%;border:2px solid var(--wood);background:#e6d3ab;object-fit:cover}.card .line{display:flex;flex-wrap:wrap;gap:0 8px;align-items:baseline}.card .more{display:none}.card.open .more{display:grid;gap:2px}.card .preview{display:grid;gap:2px;font-size:12.5px;line-height:1.35}.pv-target{display:flex;flex-wrap:wrap;gap:2px 10px;align-items:baseline;font-variant-numeric:tabular-nums}.pv-target b{font-family:"Noto Serif",Georgia,serif}.pv-row{display:flex;flex-wrap:wrap;justify-content:space-between;gap:2px 10px;font-weight:600;font-size:13.5px;font-variant-numeric:tabular-nums;padding:1px 6px;border-radius:6px}.pv-row.deal{color:#2c5e2e;background:#4f8a4624}.pv-row.take{color:var(--cinnabar-dark);background:#a941321f}.pv-row.none{color:#6b6559;background:#30292312;font-weight:500}.pv-death{color:var(--soot);font-weight:600}.pv-chances{font-size:12px;color:var(--muted)}.pv-chances .for{color:#7a5b12}.pv-chances .against{color:var(--cinnabar-dark)}.card .preview .hint{color:var(--wood);font-weight:600;font-size:12px}.log.deal,.log-line.deal{color:#2c5e2e}.log.take,.log-line.take{color:var(--cinnabar-dark)}.log.crit,.log-line.crit{color:#8a6412;font-weight:700}.log.heal,.log-line.heal{color:#2f7a4f}.log{width:100%;text-align:left;font-size:12.5px;line-height:1.3;padding:5px 8px;background:#f3e6c6d9;border-width:1.5px;box-shadow:none;color:var(--soot);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.actions.five{grid-template-columns:1fr 1fr 1fr 1.25fr auto;gap:4px}.actions.five button{padding:7px 4px;font-size:13.5px}.sheet .log-line{font-size:13px;line-height:1.4;border-bottom:1px dashed rgba(113,71,47,.35);padding-bottom:4px;margin:0}.card .body{display:grid;gap:3px;align-content:start;min-width:0}.card .rank{font-family:"Noto Serif",Georgia,serif;text-transform:uppercase;letter-spacing:.12em;font-size:10.5px;color:var(--muted)}.card .name{font-family:"Noto Serif",Georgia,serif;font-weight:700;font-size:15px;line-height:1.15}.card .range{color:var(--wood);font-size:12.5px;font-weight:600}.card .stats{display:flex;flex-wrap:wrap;gap:2px 10px;font-size:12.5px;font-variant-numeric:tabular-nums}.card .stat{display:inline-flex;align-items:center;gap:3px}.card .stat img{width:16px;height:16px}.card .proc{font-size:12.5px;color:var(--cinnabar-dark)}.card .state{font-size:12.5px;color:var(--muted)}.card.empty{display:flex;align-items:center;justify-content:center;color:var(--muted)}.actions{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:6px}.actions .icon{padding-inline:14px}.actions.three{grid-template-columns:1fr 1fr 1.4fr}#btn-endturn{width:100%}.hint{margin:0;font-size:13px;color:var(--muted);line-height:1.4;min-height:18px}.hint.warn{color:var(--cinnabar-dark)}.reserve{display:flex;flex-wrap:wrap;gap:6px}.chip{padding:5px 10px 5px 5px;border-radius:999px;font-size:13.5px;display:inline-flex;gap:6px;align-items:center}.chip img{width:26px;height:26px;border-radius:50%}.chip .n{color:var(--muted);font-size:12.5px;font-variant-numeric:tabular-nums}.chip.active{border-color:var(--ochre);box-shadow:0 0 0 2px var(--ochre)}.chip.empty{opacity:.5}.chip.hero{border-style:dashed}.stepper{display:flex;align-items:center;gap:6px;font-size:14px}.stepper button{padding:6px 12px;min-width:40px}.stepper output{min-width:34px;text-align:center;font-size:16px;font-weight:600;font-variant-numeric:tabular-nums}.recruit{gap:8px}.recruit-head{display:grid;gap:6px}.recruit-head h2{margin:0;font-size:22px;color:var(--wood);letter-spacing:.08em;text-transform:uppercase;text-align:center}.budget{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;font-weight:600;font-variant-numeric:tabular-nums}.budget-bar{height:12px;border-radius:6px;background:#e0cda3;border:2px solid var(--wood);overflow:hidden}#budget-fill{height:100%;background:linear-gradient(90deg,var(--pine),#4a7466);transition:width .2s}#budget-fill.over{background:linear-gradient(90deg,var(--cinnabar),#c15a45)}.hero-pick{display:grid;grid-template-columns:1fr 1fr;gap:8px}.hero-opt{display:grid;grid-template-columns:44px 1fr;gap:8px;align-items:center;padding:6px 8px;text-align:left}.hero-opt img{width:44px;height:44px;border-radius:50%}.hero-opt .n{font-family:"Noto Serif",Georgia,serif;font-weight:700;font-size:14px;line-height:1.2}.hero-opt .d{font-size:11.5px;color:var(--muted);line-height:1.3}.hero-opt.active{box-shadow:0 0 0 3px var(--ochre)}.packs{flex:1;min-height:0;overflow-y:auto;display:grid;gap:6px;align-content:start;padding:2px}.pack{display:grid;grid-template-columns:48px 1fr auto;gap:8px;align-items:center;padding:12px 8px 8px}.pack img{width:48px;height:48px;border-radius:50%}.pack .n{font-family:"Noto Serif",Georgia,serif;font-weight:700;font-size:15px}.pack .d{font-size:12px;color:var(--muted);line-height:1.35}.pack .p{font-size:12px;color:var(--cinnabar-dark)}.pack .ctrl{display:grid;grid-template-columns:34px 30px 34px;align-items:center;text-align:center;gap:2px}.pack .ctrl button{padding:4px 0;font-size:18px;line-height:1}.pack .ctrl output{font-weight:600;font-size:16px;font-variant-numeric:tabular-nums}.pack .total{grid-column:3;text-align:center;font-size:11.5px;color:var(--muted)}.pack.locked{opacity:.55}.pack.locked .ctrl{grid-template-columns:1fr;font-size:12px;color:var(--muted);max-width:90px;text-align:right}.invite-btn{margin-top:10px}.lobby{gap:10px;justify-content:center}.lobby-title{text-align:center;margin:0;color:var(--wood);letter-spacing:.08em;text-transform:uppercase;font-size:20px}.seats{display:grid;gap:6px}.seat{padding:14px 12px 10px;display:grid;gap:2px}.seat .who{font-family:"Noto Serif",Georgia,serif;font-weight:700;font-size:17px}.seat .st{font-size:13.5px;color:var(--muted)}.seat .st.ok{color:#2c5e2e;font-weight:600}.seat.empty .who{color:var(--muted);font-weight:400;font-style:italic}.vs{text-align:center;color:var(--muted);font-size:13px;letter-spacing:.1em;text-transform:uppercase}.lobby-label{margin:0;font-size:13px}.actions.two-eq{grid-template-columns:1fr 1fr}.side-pick.active{box-shadow:0 0 0 3px var(--ochre);font-weight:700}.prologue{justify-content:center;gap:14px}.prologue-img{width:100%;max-height:58vh;object-fit:contain;border:3px solid var(--wood);border-radius:12px;background:#e6d3ab}.prologue-text{font-size:19px;line-height:1.45;text-align:center;margin:0;min-height:3em;color:var(--soot)}.prologue-dots{display:flex;gap:8px;justify-content:center}.prologue-dots i{width:9px;height:9px;border-radius:50%;background:#d6c29b;border:1.5px solid var(--wood)}.prologue-dots i.on{background:var(--cinnabar)}.actions.two{grid-template-columns:1fr 1.4fr}.hint-bubble{display:grid;grid-template-columns:40px 1fr;gap:8px;align-items:center;padding:10px 10px 8px;border-color:var(--ochre)}.hint-bubble img{width:40px;height:40px;border-radius:50%;border:2px solid var(--wood)}.hint-bubble p{margin:0;font-size:13.5px;line-height:1.35;font-family:"Noto Serif",Georgia,serif}.sheet{position:fixed;left:8px;right:8px;bottom:calc(8px + env(safe-area-inset-bottom,0px));padding:16px 12px 12px;display:grid;gap:8px;max-height:78vh;overflow-y:auto;box-shadow:0 -8px 30px #30292359}.sheet h3{margin:0;font-weight:700;color:var(--wood);letter-spacing:.08em;text-transform:uppercase;font-size:15px}.sheet .caster{margin:0;color:var(--muted);font-size:13px}.sheet .spell{display:grid;grid-template-columns:44px 1fr;gap:10px;text-align:left;align-items:center}.sheet .spell img{width:44px;height:44px}.sheet .spell .top{display:flex;justify-content:space-between;gap:8px;font-family:"Noto Serif",Georgia,serif;font-weight:700}.sheet .spell .cost{color:#3f5f9c;font-family:Noto Sans,sans-serif}.sheet .spell .desc{color:var(--muted);font-size:12.5px;line-height:1.35}.banner{position:fixed;left:50%;top:40%;transform:translate(-50%,-50%);background:linear-gradient(var(--parchment),#ead7ae);border:3px solid var(--wood);color:var(--wood);padding:12px 26px;border-radius:10px;font-family:"Noto Serif",Georgia,serif;font-size:20px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;pointer-events:none;box-shadow:0 6px 24px #30292359}.result-hero{width:150px;height:150px;border-radius:50%;border:3px solid var(--wood);background:#e6d3ab}#result-title{font-family:"Noto Serif",Georgia,serif;font-size:34px;margin:0;letter-spacing:.06em;text-transform:uppercase;color:var(--wood)}.result-actions{display:grid;gap:10px;width:min(340px,100%);margin-top:8px}.toast{position:fixed;left:50%;top:calc(40px + env(safe-area-inset-top,0px));transform:translate(-50%);background:var(--soot);color:var(--parchment);padding:8px 14px;border-radius:8px;font-size:14px;max-width:90vw;text-align:center;z-index:10}.offline{position:fixed;left:0;right:0;bottom:0;padding:8px calc(8px + env(safe-area-inset-bottom,0px));background:var(--cinnabar-dark);color:var(--parchment);text-align:center;font-size:13px}[hidden]{display:none!important}@media (prefers-reduced-motion: reduce){*{transition:none!important}}.actions.two:has(>[hidden])>button{grid-column:1 / -1}
