.skill-bar{--skill-size: 56px;position:fixed;z-index:8;left:50%;bottom:max(10px,env(safe-area-inset-bottom));transform:translate(-50%);width:max-content;display:flex;flex-wrap:wrap-reverse;justify-content:center;align-items:center;gap:8px;max-width:min(calc(100vw - (2*(92px + env(safe-area-inset-left)))),640px);padding:6px 10px;border-radius:999px;background:#14281fa6;box-shadow:0 2px 12px #0d1d1659;pointer-events:none}.skill-bar[hidden]{display:none}.skill-btn,.skill-auto{pointer-events:auto;touch-action:manipulation;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.skill-btn{--charge: 0;position:relative;flex:none;width:var(--skill-size);height:var(--skill-size);min-width:48px;min-height:48px;padding:0;border:0;border-radius:50%;background:#243b30;color:#fff8df;font:inherit;cursor:pointer}.skill-btn img{position:absolute;inset:6px;width:calc(100% - 12px);height:calc(100% - 12px);border-radius:50%;object-fit:cover;object-position:50% 20%;pointer-events:none;filter:brightness(.55) saturate(.7);transition:filter .2s}.skill-ring{position:absolute;inset:0;border-radius:50%;background:conic-gradient(#ffd96a calc(var(--charge) * 360deg),#ffffff30 0);-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 6px),#000 calc(100% - 5px));mask:radial-gradient(farthest-side,transparent calc(100% - 6px),#000 calc(100% - 5px))}.skill-count{position:absolute;inset:0;display:grid;place-items:center;font:800 19px/1 system-ui,sans-serif;text-shadow:0 1px 3px #000,0 0 2px #000;pointer-events:none}.skill-mark{position:absolute;top:-4px;right:-4px;min-width:20px;height:20px;border-radius:50%;background:#ffd96a;color:#4a3200;font:800 13px/20px system-ui,sans-serif;text-align:center;pointer-events:none}.skill-mark:empty{display:none}.skill-badge{position:absolute;right:-5px;bottom:-3px;min-width:22px;height:18px;padding:0 5px;box-sizing:border-box;border:1.5px solid #4a3200;border-radius:9px;background:#fff3c4;color:#4a3200;font:900 12px/15px system-ui,sans-serif;text-align:center;white-space:nowrap;pointer-events:none}.skill-badge:empty{display:none}.skill-aim{position:absolute;left:-4px;bottom:-3px;display:none;width:18px;height:18px;padding:2px;box-sizing:border-box;border-radius:50%;background:#243b30;border:1.5px solid #ffd96a;color:#ffd96a;pointer-events:none}.skill-aim svg{display:block;width:100%;height:100%}.skill-btn[data-state=ready] .skill-aim{display:block}.skill-btn[data-state=ready]:not([data-target-count="0"]){animation:skill-ready 1.1s ease-in-out infinite}.skill-btn[data-state=ready] img{filter:none}.skill-btn[data-state=ready][data-target-count="0"] img{filter:brightness(.72) saturate(.8)}.skill-btn[data-state=ready][data-target-count="0"] .skill-aim{inset:-4px -4px auto auto;width:22px;height:22px;background:#ffd96a;color:#4a3200}.skill-btn[data-state=down]{cursor:default}.skill-btn[data-state=down] img{filter:grayscale(1) brightness(.5)}.skill-btn[data-state=down] .skill-ring{background:#ffffff30}.skill-btn[data-state=down] .skill-mark{background:#6a6a6a;color:#fff}.skill-btn,.skill-btn:hover:not(:disabled),.skill-btn:active:not(:disabled),.skill-btn:disabled{border:0;background:#243b30}.skill-btn:active:not(:disabled){scale:.92}.skill-btn:focus-visible,.skill-auto:focus-visible{outline:3px solid #fff;outline-offset:3px}.skill-name{position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%);padding:4px 9px;border-radius:8px;background:#203c30f5;color:#fff8df;font:700 13px/1.3 system-ui,sans-serif;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .12s}.skill-btn:hover .skill-name,.skill-btn:focus-visible .skill-name,.skill-btn[data-hint] .skill-name{opacity:1}.skill-auto{flex:none;min-width:48px;height:48px;padding:0 10px;border:2px solid #ffffff59;border-radius:24px;background:#243b30;color:#fff8df;font:800 12px/1 system-ui,sans-serif;letter-spacing:.04em;cursor:pointer}.skill-auto:hover:not(:disabled){border-color:#fff8df;background:#34543f}.skill-auto[aria-pressed=true],.skill-auto[aria-pressed=true]:hover:not(:disabled){border-color:#ffd96a;background:#ffd96a;color:#4a3200;box-shadow:0 0 10px #ffd96acc}@keyframes skill-ready{0%,to{box-shadow:0 0 6px 1px #ffd96a99}50%{box-shadow:0 0 16px 5px #ffe9a8f2}}@media(max-width:600px){.skill-bar{--skill-size: 48px;bottom:calc(max(10px,env(safe-area-inset-bottom)) + 38px);gap:6px;max-width:calc(100vw - 16px)}}@media(max-height:500px){.skill-bar{--skill-size: 48px;gap:6px;padding:4px 8px}}@media(prefers-reduced-motion:reduce){.skill-btn[data-state=ready]:not([data-target-count="0"]){animation:none;box-shadow:0 0 10px 3px #ffd96acc}.skill-btn:active:not(:disabled){scale:1}}.skill-cutin{--band-h: clamp(84px, 14dvh, 140px);position:fixed;inset:0;z-index:40;overflow:hidden;pointer-events:none}.skill-cutin[hidden]{display:none}.skill-cutin.playing{animation:cutin-dim .65s ease-out both}.skill-cutin-band{position:absolute;left:-6%;width:112%;height:var(--band-h);display:flex;align-items:center;gap:clamp(12px,3vw,32px);padding-left:14%;box-sizing:border-box;background:linear-gradient(100deg,#10241ad9,#1e4a38e6 55%,#3a6e4ecc);border-block:3px solid #ffd96a;box-shadow:0 0 28px #0008}.skill-cutin[data-side=top] .skill-cutin-band{top:max(96px,13dvh)}.skill-cutin[data-side=bottom] .skill-cutin-band{bottom:calc(max(10px,env(safe-area-inset-bottom)) + 96px)}.skill-cutin.playing .skill-cutin-band{animation:cutin-band .65s cubic-bezier(.2,.8,.2,1) both}.skill-cutin-band img{flex:none;width:calc(var(--band-h) * .92);height:calc(var(--band-h) * .92);border:3px solid #ffd96a;border-radius:50%;object-fit:cover;object-position:50% 20%;background:#243b30;box-shadow:0 4px 16px #000a}.skill-cutin-text{display:flex;flex-direction:column-reverse;gap:2px;color:#fff8df;text-shadow:0 2px 0 #4a3200,0 0 12px #000a}.skill-cutin-text b{font:900 clamp(26px,5.2vw,56px) / 1.05 system-ui,sans-serif;font-style:italic;letter-spacing:.04em;color:#fff;-webkit-text-stroke:1px #7a5a10}.skill-cutin-text small{font:700 clamp(12px,1.8vw,18px) / 1.2 system-ui,sans-serif;letter-spacing:.12em;color:#ffe9a8}@keyframes cutin-dim{0%{background:#0000}15%,75%{background:#0a14103d}to{background:#0000}}@keyframes cutin-band{0%{transform:translate(-40%);opacity:0}20%{transform:translate(0);opacity:1}82%{transform:translate(1.5%);opacity:1}to{transform:translate(12%);opacity:0}}#field .skill-target-ring{position:absolute;z-index:8;box-sizing:border-box;translate:-50% -50%;border:4px solid #fff3c4;border-radius:50%;background:radial-gradient(#ffd96a59,#ffd96a33 70%,transparent 72%);box-shadow:0 0 0 3px #b8860bcc,0 0 22px 4px #ffd96aee,inset 0 0 18px #ffd96acc;pointer-events:none;animation:target-ring .65s ease-in-out infinite alternate}#field .skill-target-ring[hidden]{display:none}#field .skill-target-ring i{position:absolute;left:50%;top:50%;width:16px;height:16px;border-radius:50%;background:#fff3c4;border:3px solid #b8860b;transform:translate(-50%,-50%) scaleX(var(--field-aspect-inverse, 1))}@keyframes target-ring{0%{opacity:.7;scale:.94}to{opacity:1;scale:1.02}}@media(max-width:600px){.skill-cutin{--band-h: 92px}.skill-cutin[data-side=top] .skill-cutin-band{top:120px}.skill-cutin[data-side=bottom] .skill-cutin-band{bottom:calc(max(10px,env(safe-area-inset-bottom)) + 142px)}.skill-cutin-band{padding-left:10%}}@media(max-height:500px){.skill-cutin{--band-h: 70px}.skill-cutin[data-side=top] .skill-cutin-band{top:56px}.skill-cutin[data-side=bottom] .skill-cutin-band{bottom:calc(max(10px,env(safe-area-inset-bottom)) + 66px)}}@media(prefers-reduced-motion:reduce){.skill-cutin.playing,.skill-cutin.playing .skill-cutin-band{animation-name:cutin-fade;animation-timing-function:linear}#field .skill-target-ring{animation:none}@keyframes cutin-fade{0%,to{opacity:0}20%,80%{opacity:1}}}.battle-special-status{display:none}@media(max-width:1179px){#app:has(#skill-bar:not([hidden])) .bhud-side{bottom:calc(max(10px,env(safe-area-inset-bottom)) + 76px)}}@media(max-width:1179px)and (max-height:500px){#app:has(#skill-bar:not([hidden])) .bhud-side{bottom:calc(max(10px,env(safe-area-inset-bottom)) + 64px)}}@media(max-width:600px){#app:has(#skill-bar:not([hidden])) .bhud-side{bottom:calc(max(10px,env(safe-area-inset-bottom)) + 106px)}}:root{font-family:Hiragino Sans,Hiragino Kaku Gothic ProN,Yu Gothic,Meiryo,system-ui,sans-serif;color:#304c3e;background:#244536;font-size:14px;font-synthesis:none;color-scheme:light;--ink: #304c3e;--forest: #365c46;--paper: #fbf6e9;--gold: #d6ac55;--muted: #6c7665;--line: #d9d8bf}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,input,select{font:inherit}button{cursor:pointer;color:inherit;border:1px solid #c9cbb2;background:#f7f4e7;border-radius:10px;padding:11px 15px;min-height:44px;font-weight:600;line-height:1.5;touch-action:manipulation;transition:background .12s,border-color .12s,box-shadow .12s,scale 80ms}button:hover:not(:disabled){background:#e9eddb;border-color:#8fa080}button:active:not(:disabled){background:#dbe4cb;scale:.97}button:disabled{cursor:not-allowed;color:#7a7e6c;background:#e9e8da;border-color:#d6d6c5;box-shadow:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid #b87d28;outline-offset:3px}[hidden]{display:none!important}h1,h2,p{margin:0}h2{font-size:19px;line-height:1.5}p{line-height:1.85;color:var(--muted)}small{line-height:1.5}#app{height:100dvh;min-height:360px;display:flex;flex-direction:column;padding:0 24px 16px;background:radial-gradient(ellipse at 28% 0,#4c6e53,#284836 65%)}.panel{background:var(--paper);border:1px solid #ddd9bd;box-shadow:0 8px 26px #10271924,inset 0 1px #fffdf5;border-radius:18px}.topbar{height:86px;flex:none;display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{display:flex;align-items:center;gap:11px;color:#fff1c6;font-size:23px;font-weight:850;letter-spacing:2px;text-decoration:none;white-space:nowrap}.brand i{font-style:normal;color:#b8c89a}.brand .brand-emblem{display:grid;place-items:center;width:38px;height:45px;font-size:27px;color:#f4d990;background:#45654b;border:1px solid #abc08b70;border-radius:12px 12px 19px 19px}.brand-emblem svg{width:25px;height:25px}.brand small{display:block;margin-top:3px;font-size:10px;color:#d4ddbe;letter-spacing:2px;font-weight:500}.tools{display:flex;align-items:center;gap:15px}.gold-purse{display:flex;align-items:center;gap:8px;padding:9px 13px;border:1px solid #b6c59435;border-radius:24px;background:#193a2d60;color:#f4d990;white-space:nowrap}.gold-purse>span{color:#e8be65;font-size:22px;line-height:1}.gold-purse b{font-size:16px;font-variant-numeric:tabular-nums;letter-spacing:.4px}.tools button{display:flex;align-items:center;gap:8px;background:#44644e;color:#f9f4db;border-color:#779173;font-size:12px}.tools button:hover:not(:disabled){background:#5a775a;border-color:#d8cc9b}.status-dot{width:7px;height:7px;border-radius:50%;background:#e8ba61}.status-dot[data-status=connected],.status-dot[data-status=offline]{background:#b1d89f}.game-layout{display:grid;grid-template-columns:minmax(0,1fr) 352px;gap:18px;min-height:0;flex:1}.battle-panel{display:flex;flex-direction:column;min-height:0;min-width:0}.deck-title small,.section-kicker{font-size:10px;letter-spacing:1.6px;font-weight:750;color:#7b846a}progress{height:6px;width:100%;border:0;border-radius:5px;overflow:hidden;background:#dfe2ce;appearance:none}progress::-webkit-progress-bar{background:#dfe2ce}progress::-webkit-progress-value{background:#7e9b66;border-radius:5px}progress::-moz-progress-bar{background:#7e9b66;border-radius:5px}#player-bar[data-health=low]::-webkit-progress-value{background:#b96648}#player-bar[data-health=low]::-moz-progress-bar{background:#b96648}.map-heading{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:13px 3px;font-size:13px;color:#f1edce;flex:none}.map-heading>span:first-child{display:flex;align-items:center;gap:12px}.map-heading small{font-size:11px;font-variant-numeric:tabular-nums;color:#d2dbbd;border-left:1px solid #b6c59d60;padding-left:12px}.map-help{font-size:11px;color:#c9d4b8}.map-shell{position:relative;flex:1;min-height:130px;isolation:isolate;border:1px solid #bfc39b;border-radius:18px;overflow:hidden;background:#819963;box-shadow:0 6px 18px #10271925}.map-shell:after{content:"";position:absolute;inset:0;pointer-events:none;border:5px solid #fff8d522;border-radius:16px;z-index:4}#map-scroll{position:absolute;inset:0;overflow:auto;scrollbar-width:thin;scrollbar-color:#e0cb8f #3e6246;overscroll-behavior:contain;touch-action:pan-x pan-y;cursor:grab}#map-scroll:focus-visible{outline-offset:-5px}#map-scroll.panning{cursor:grabbing;-webkit-user-select:none;user-select:none}#field{position:relative;width:1280px;height:960px;isolation:isolate}#field>canvas{display:block;width:100%;height:100%;image-rendering:pixelated}.range-legend{position:absolute;left:14px;bottom:16px;display:flex;flex-wrap:wrap;gap:12px;font-size:10px;pointer-events:none;z-index:4;color:#f6f6e4;background:#244536ed;border:1px solid #c4d4a660;border-radius:8px;padding:8px 11px}.range-legend span,.range-preview span{display:flex;align-items:center;gap:6px;white-space:nowrap}.movement-key:before,.attack-key:before{content:"";width:20px;flex:none;border-top:3px dashed #c6f7ff}.attack-key:before{border-top-style:solid;border-top-color:#ffd97b}.range-preview{position:absolute;display:grid;gap:5px;width:184px;padding:8px;border:1px solid #b7d6d7;border-radius:8px;background:#203f3bef;color:#f1fbef;font-size:11px;line-height:16px;font-variant-numeric:tabular-nums;pointer-events:none;-webkit-user-select:none;user-select:none;z-index:1}.command-deck{display:flex;flex-direction:column;min-height:0;padding:20px 17px 16px;overflow:auto;scrollbar-width:thin;scrollbar-color:#a9b594 #f5f0e1}.deck-title{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:16px;border-bottom:1px solid var(--line);margin-bottom:14px}.deck-title h2{font-size:20px;margin-top:3px;letter-spacing:.3px}.deck-title>span{border:1px solid #d2d7bb;border-radius:9px;padding:8px 10px;background:#eef0df;font-size:13px;font-weight:750;font-variant-numeric:tabular-nums;white-space:nowrap}.deck-title>span[data-full=true]{background:#dde8cb;border-color:#a8bb8e}.section-title{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:11px}.command-deck .section-title{font-size:11px}.mode-badge{padding:3px 6px;border-radius:5px;background:#ebeede;color:#6b785e;font-size:9px;font-weight:700;white-space:nowrap}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.unit{position:relative;display:flex;align-items:center;gap:4px;padding:8px 5px;min-height:73px;background:#f2f1e4;border:1px solid #d3d9bf;touch-action:pan-x;-webkit-user-select:none;user-select:none;cursor:grab;min-width:0;text-align:left}.unit.selected{border-color:#ba9145;background:#fff0c7;box-shadow:inset 0 0 0 1px #d8b368}.unit.selected:hover:not(:disabled){background:#fce7b1;border-color:#ba9145}.unit:disabled{background:#edf0e0;border-color:#d1d8be;color:#516345}.unit.locked:disabled{background:#eeecdf;border:1px dashed #cdcdbb;color:#747963}.unit.locked img{filter:saturate(.45);opacity:.58}.unit img{width:48px;height:49px;object-fit:contain;image-rendering:pixelated;pointer-events:none;-webkit-user-drag:none;flex:none}.unit>span:not(.unit-check){display:grid;gap:5px;min-width:0}.unit b{font-size:12px;white-space:nowrap;font-weight:750}.unit small{font-size:10px;color:#6b775d;white-space:nowrap}.unit kbd{position:absolute;left:6px;top:3px;font:10px/1.2 system-ui,sans-serif;color:#7c896b}.unit-check{display:none;position:absolute;top:3px;right:5px;color:#95712c;font-size:10px;font-weight:900}.unit.selected .unit-check{display:block}.unit.dragging{opacity:.55}.road-tools{flex:none;margin:0 0 12px;padding:10px;border:1px solid #d4c5a4;border-radius:10px;background:#f2e9d5}.road-tools>div:first-child{display:flex;justify-content:space-between;gap:8px;font-size:12px}.road-tools p,.road-tools>small{display:block;margin:6px 0 0;color:#68755e;font-size:10px;line-height:1.6}.road-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:8px}.road-actions button{min-height:36px;padding:7px 5px;font-size:11px}.road-actions [aria-pressed=true]{color:#294d3a;border-color:#64846a;background:#d8e7c6}#map-scroll.placing-sandbag:not(.panning){cursor:crosshair}.sandbag-preview{position:absolute;z-index:2;width:max-content;max-width:224px;transform:translate(-50%);padding:5px 8px;border:1px solid #e2c790;border-radius:6px;background:#40382ced;color:#fff1cb;font-size:11px;font-variant-numeric:tabular-nums;pointer-events:none;-webkit-user-select:none;user-select:none}.sandbag-preview[data-valid=true]{border-color:#a1e0b0;background:#254a36ed}.sandbag-preview[data-valid=false]{border-color:#f5b4a2;background:#733c35ed}.actions{display:grid;grid-template-columns:1fr 1.7fr;gap:8px;margin-top:auto;padding-top:5px}.actions button{font-size:12px;padding:10px 8px}.actions .primary{grid-column:1 / -1;min-height:48px;font-size:14px}.primary{background:var(--forest);border-color:var(--forest);color:#fff8dc;font-weight:750;box-shadow:0 3px #1f3f2e}.primary:hover:not(:disabled){background:#486f50;border-color:#486f50}.primary:active:not(:disabled){background:#2d513b;box-shadow:none}.primary:disabled{background:#dce1cf;color:#697961;border-color:#cbd3bb;box-shadow:none}.actions [aria-pressed=true]{background:#f6e0d1;border-color:#bd8c6c;color:#915a3f}dialog{color:var(--ink);border:1px solid #ddd9bd;border-radius:22px;background:var(--paper);padding:28px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);overflow:auto;overscroll-behavior:contain;box-shadow:0 24px 90px #0b201660,inset 0 1px #fff;scrollbar-width:thin;scrollbar-color:#acb896 #f5f0e1}dialog::backdrop{background:#102a22a8;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.settings{position:fixed;width:460px;inset:82px 24px auto auto;margin:0;max-height:calc(100dvh - 106px);padding:26px}.dialog-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:17px}.dialog-heading h2{margin-top:5px;font-size:24px}.close-button{display:grid;place-items:center;width:44px;height:44px;padding:0;border-radius:50%;font-size:25px;font-weight:400;background:#eed;flex:none}.eyebrow{font-size:10px;font-weight:750;letter-spacing:1.8px;color:#7b805f}.dialog-intro{font-size:12px;margin-bottom:17px}.settings label{display:block;margin:17px 0 7px;color:#506344;font-size:12px;font-weight:700}.settings input,.settings select{padding:12px;min-height:46px;width:100%;background:#fffdf5;border:1px solid #c7ceb0;color:var(--ink);border-radius:9px;font-size:16px}.settings input:disabled{background:#eaeede;color:#788268}.settings .hint{margin:10px 0 18px;font-size:12px}.connection-fields{padding:16px;background:#f0efdf;border:1px solid #daddc5;border-radius:12px}.connection-fields label{margin-top:13px}.section-kicker{font-size:9px}.settings #connect{width:100%;margin-top:17px}.notice{border:1px solid #d7dcc0;border-radius:9px;background:#eef2df;padding:11px 14px;color:#596d43;font-size:12px;line-height:1.75;overflow-wrap:anywhere}.settings .notice{margin-top:17px}.notice[data-status=pending]{background:#f6edd5;border-color:#e3d1a8;color:#846636}.ai-details{border-top:1px solid var(--line);margin-top:20px;padding-top:15px;font-size:12px}.ai-details summary{display:flex;align-items:center;gap:10px;list-style:none;cursor:pointer;min-height:34px;font-weight:650}.ai-details summary::-webkit-details-marker{display:none}.ai-details summary:before{content:"";width:0;height:0;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:6px solid #70815c}.ai-details[open] summary:before{transform:rotate(90deg)}.ai-details p{font-size:12px;overflow-wrap:anywhere}.ai-details pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:11px;line-height:1.8;padding:12px;background:#efefe0;border-radius:8px}.enemy-plan{margin-top:15px;padding:14px;background:#f2ead8;border:1px solid #dfd1ae;border-radius:10px}.enemy-plan h3{font-size:12px;margin:0 0 6px;color:#7b653f}.enemy-plan p{font-size:12px}#enemy-plan-status{font-weight:700;color:#5f694e}#enemy-plan-reason{margin-top:6px}#enemy-plan-progress{display:block;margin-top:10px;color:#856d41;font-size:11px}#enemy-plan-reconsideration{margin-top:8px;border-top:1px solid #dfd1ae;padding-top:8px}.shop{width:530px}.shop-balance{display:flex;justify-content:space-between;align-items:center;padding:13px 16px;margin-bottom:16px;background:#f5e9c9;border:1px solid #e2cd97;border-radius:11px;color:#856331}.shop-balance span{font-size:12px}.shop-balance b{font-size:21px;font-variant-numeric:tabular-nums}.upgrade-row{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:10px;padding:16px 0;border-bottom:1px solid var(--line);border-radius:4px}.upgrade-row>img{width:48px;height:56px;object-fit:contain;image-rendering:pixelated}.upgrade-row>div{display:grid;gap:4px}.upgrade-row b{font-size:13px}.upgrade-row small{font-size:11px;color:#748068;line-height:1.7}.upgrade-row .upgrade-hint{color:#8b7143;font-size:10px}.upgrade-row button{font-size:12px;white-space:nowrap;min-width:108px;padding:9px 10px}.upgrade-row[data-state=available] button{background:#e5ecd8;border-color:#aabb8d}.upgrade-row[data-state=locked]>img{opacity:.55;filter:saturate(.5)}.upgrade-row[data-state=locked] button{border-style:dashed}.shop-footnote{margin-top:16px;font-size:11px}.launch{width:760px;padding:28px 36px 24px}.launch-intro{text-align:center}.kingdom-crest{width:90px;height:78px;margin:13px auto 2px}.kingdom-crest svg{display:block;width:100%;height:100%}.launch h1{font-size:30px;line-height:1.55;letter-spacing:1px;margin:10px 0;font-weight:800}.launch h1 br{display:none}.launch-intro p{font-size:12px}.choice-heading{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-top:25px;margin-bottom:12px}.choice-heading h2{font-size:14px}.choice-heading>span{font-size:11px;color:#82876d}.coin-purse b{color:#9a6b12;font-size:14px}.stage-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(58px,1fr));gap:8px}.stage-card,.formation-card{display:grid;justify-items:center;gap:2px;padding:7px 4px;background:#f0f0df;border-radius:12px;min-width:0}.stage-card small{font-size:8px;letter-spacing:1px;color:#80886b}.stage-card b{font-size:18px;color:#3a573e}.stage-card em,.formation-card small{font-style:normal;font-size:10px;color:#737a62}.stage-card[data-cleared=true] em{color:#3f7a45}.stage-card[aria-pressed=true],.formation-card[aria-pressed=true]{border-color:#c5a056;box-shadow:0 0 0 2px #d8b36555;background:#fff0ca}.stage-card:disabled,.formation-card:disabled{opacity:.5}.formation-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:8px}.formation-card img{width:48px;height:48px;object-fit:contain}.formation-card b{font-size:11px;color:#3a573e;text-align:center}.stage-card[data-all-out=true]:after{content:"総力戦";position:absolute;top:-7px;right:4px;font-size:9px;font-weight:800;color:#fff;background:#a2402f;border-radius:4px;padding:1px 4px}.stage-card{position:relative}#formation-count[data-all-out=true]{color:#fff;background:#a2402f;border-radius:6px;padding:2px 8px;font-size:.85em;display:inline-block}.formation-card[data-all-out=true]:disabled{opacity:1}.formation-card[data-all-out=true][data-state=formation]{cursor:default}.formation-card[data-state=recruit] img{filter:grayscale(1) brightness(.8)}.formation-card[data-state=recruit] small{color:#9a6b12;font-weight:700}.launch-footer{border-top:1px solid var(--line);margin-top:22px;padding-top:17px}.launch #launch-status{margin-bottom:13px;text-align:center;font-size:11px}.launch-actions{display:flex;justify-content:center;gap:9px;flex-wrap:wrap}.launch-actions .primary{min-width:230px;flex:1}.launch-actions button{font-size:12px}.launch-actions .text-button{flex-basis:100%;border:0;background:transparent;text-decoration:underline;text-underline-offset:4px;color:#657657;min-height:34px;padding:4px}.launch-note{margin-top:8px;font-size:10px;text-align:center}.placement{position:absolute;width:44px;height:44px;min-height:44px;padding:0;transform:translate(-50%,-50%);border:0;border-radius:50%;background:transparent;z-index:2}.placement.battle-home{pointer-events:none}.placement.occupied,.placement.drop-target,.placement:hover:not(:disabled){background:transparent;border:0;box-shadow:none}.unit-health{position:absolute;transform:translate(-50%,-100%);pointer-events:none;width:48px;text-align:center;z-index:3;--health: #b8e79b}.unit-health span{display:block;font:700 8px/12px monospace;color:#f4f5df;background:#243e30e6;border-radius:3px 3px 0 0}.unit-health i{display:block;height:4px;background:#132e31;border:1px solid #a9cfa2;overflow:hidden}.unit-health.ai i{border-color:#de9a8b}.unit-health.boss{width:70px}.unit-health.boss span{color:#ffe1a0}.unit-health b{display:block;height:100%;background:var(--health);transition:width .15s}.unit-health.hit{animation:health-hit .24s ease-out}@keyframes health-hit{0%{filter:brightness(2)}to{filter:brightness(1)}}.drag-unit{position:fixed;z-index:40;pointer-events:none;transform:translate(-50%,-90%);display:grid;justify-items:center;filter:drop-shadow(0 5px 4px #08282088)}.drag-unit img{width:80px;height:80px;object-fit:contain;image-rendering:pixelated;opacity:.7}.drag-unit span{background:#f5e7ce;border:1px solid #c3956e;color:#785b3d;white-space:nowrap;font-size:12px;padding:7px 11px;border-radius:8px}.drag-unit.valid img{opacity:1}.drag-unit.valid span{background:#f5f2d9;border-color:#8caa73;color:#45643c}.result{width:440px;text-align:center;padding:32px}.result-icon{display:grid;place-items:center;width:76px;height:76px;margin:0 auto 19px;font-size:42px;color:#b1883f;background:#f6e8be;border:1px solid #dcc998;border-radius:50%;box-shadow:0 0 0 7px #f4efdb}.result-icon svg{width:40px;height:40px}.result[data-outcome=defeat] .result-icon{background:#f4e1d3;border-color:#ddbc9d;color:#a76a4e}.result[data-outcome=victory] .result-icon{color:#faf1c8;background:#466b48;border-color:#718a57}.result h2{font-size:24px;margin:12px 0 18px;line-height:1.6}.result-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;margin-bottom:17px;background:#f0edda;border-radius:9px}.result-summary span{font-size:11px}.result-summary b{color:#966d2f;font-size:18px;white-space:nowrap}.result p{font-size:13px;margin-bottom:23px;text-align:left}.result button{width:100%;min-height:48px}.result-note{display:block;margin-top:15px;font-size:10px;color:#81866e}.connection-warning{position:fixed;top:76px;left:50%;transform:translate(-50%);width:min(510px,calc(100% - 32px));padding:12px 16px;color:#855d32;background:#f9e9c9;border-color:#d7b877;z-index:25;font-size:12px;text-align:left;overflow-wrap:anywhere}@media(max-width:1120px){#app{padding-inline:16px}.game-layout{grid-template-columns:minmax(0,1fr) 320px;gap:13px}.command-deck{padding:17px 13px 13px}.unit img{width:42px}.unit b{font-size:11px}.unit small{font-size:9px}.map-help{display:none}}@media(max-width:780px){#app{padding:0 10px max(8px,env(safe-area-inset-bottom))}.topbar{height:68px;gap:8px}.brand{font-size:17px;letter-spacing:1px;gap:7px}.brand .brand-emblem{width:27px;height:34px;font-size:20px;border-radius:8px 8px 13px 13px}.brand small{font-size:8px;letter-spacing:1px}.tools{gap:7px}.gold-purse{padding:7px 9px;gap:5px}.gold-purse b{font-size:13px}.gold-purse>span{font-size:17px}.tools button{font-size:11px;padding:9px 10px;gap:6px}.game-layout{display:flex;flex-direction:column;gap:9px}.battle-panel{flex:1;min-height:220px}.map-heading{padding:8px 2px;font-size:12px}.command-deck{flex:none;max-height:43dvh;overflow:auto;padding:11px;border-radius:13px}.deck-title{padding:0 0 8px;margin:0;border:0}.deck-title>div{display:flex;align-items:center;gap:9px}.deck-title small{font-size:8px;letter-spacing:1px}.deck-title h2{font-size:14px;margin:0}.deck-title>span{font-size:11px;padding:4px 8px}.command-deck .section-title{display:none}.cards{display:flex;overflow-x:auto;gap:8px;padding:2px 2px 7px;scrollbar-width:thin;scrollbar-color:#a9b58f #eceede;overscroll-behavior-x:contain}.unit{min-width:128px;min-height:66px;padding:6px 5px;touch-action:pan-x}.unit img{width:44px;height:44px}.unit b{font-size:11px}.unit small{font-size:9px}.unit kbd{display:none}.actions{grid-template-columns:.9fr 1.2fr 2.1fr;gap:6px;margin-top:0;padding-top:1px}.actions .primary{grid-column:auto;min-height:44px;font-size:11px}.actions button{font-size:11px;padding:8px 5px}.range-legend{left:9px;bottom:10px;font-size:9px;padding:6px 8px;gap:8px}.launch{width:620px;padding:22px}.launch h1{font-size:25px}.launch h1 br{display:initial}.kingdom-crest{width:75px;height:65px;margin-top:10px}.launch-intro .eyebrow{font-size:9px;letter-spacing:1.2px}.choice-heading{margin-top:21px}.launch-actions .primary{min-width:0}.launch-actions button{font-size:11px}.launch-note{font-size:10px}.settings{right:12px;top:68px;max-height:calc(100dvh - 84px);padding:22px}.connection-warning{top:66px}}@media(max-width:420px){.brand .brand-emblem{display:none}.brand{font-size:15px}.brand small{font-size:7px}.tools{gap:5px}.gold-purse{padding:7px}.tools button{padding:8px}.status-dot,.deck-title small{display:none}.launch{padding:20px 16px}.launch h1{font-size:23px}.launch-intro p{font-size:11px}.launch-actions{display:grid;grid-template-columns:1fr}.launch-footer{margin-top:17px;padding-top:14px}.launch-note{text-align:left}.settings{inset:auto 8px 8px;width:auto;max-width:none;max-height:calc(100dvh - 24px);padding:20px 17px}.dialog-heading h2{font-size:22px}.upgrade-row{grid-template-columns:40px minmax(0,1fr) auto;gap:7px}.upgrade-row>img{width:40px}.upgrade-row button{min-width:88px;font-size:11px;padding:8px}.upgrade-row small{font-size:10px}.upgrade-row b{font-size:12px}.result{padding:26px}.result h2{font-size:22px}}@media(max-height:760px)and (min-width:781px){.topbar{height:70px}.command-deck{padding-block:14px}.deck-title{padding-bottom:11px;margin-bottom:10px}.unit{min-height:61px;padding-block:5px}.unit img{height:44px}.launch{padding-block:20px}.kingdom-crest{width:65px;height:57px;margin-top:8px}.launch h1{font-size:26px;margin-block:8px}.choice-heading{margin-top:19px}.launch-footer{margin-top:17px;padding-top:14px}.settings{top:70px;max-height:calc(100dvh - 86px)}}@media(max-height:600px)and (max-width:780px)and (orientation:landscape){.topbar{height:54px}.game-layout{display:grid;grid-template-columns:minmax(0,1fr) 244px;gap:8px}.battle-panel{min-height:0}.command-deck{max-height:none;min-height:0;overflow:auto}.deck-title>div{display:block}.deck-title small{display:none}.cards{display:grid;grid-template-columns:1fr 1fr;overflow:visible;gap:6px}.unit{min-width:0;flex-direction:column;min-height:85px;gap:1px}.unit>span{text-align:center}.actions{grid-template-columns:1fr 1.4fr}.actions .primary{grid-column:1 / -1}.map-shell{min-height:90px}.range-legend{max-width:190px}.launch{width:660px}.launch h1 br,.kingdom-crest{display:none}.launch-actions{display:flex}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}#app{position:relative;padding:0;min-height:0;width:100vw;height:100dvh;overflow:hidden}.topbar{position:absolute;z-index:8;right:max(12px,env(safe-area-inset-right));top:max(12px,env(safe-area-inset-top));height:auto}.tools{gap:8px}.gold-purse{padding:5px 10px}.game-layout,.battle-panel{display:block;position:absolute;inset:0}.map-shell{position:absolute;inset:0;border:0;border-radius:0;min-height:0;margin:0}#map-scroll{width:100%;height:100%;border-radius:0}#map-world{position:relative;width:1280px;height:960px}#field{transform-origin:top left}.map-heading{position:absolute;z-index:6;top:max(12px,env(safe-area-inset-top));left:max(14px,env(safe-area-inset-left));color:#fff8de;text-shadow:0 1px 3px #132b22;pointer-events:none}.map-heading small{color:#fff8de}.map-help{display:none}.command-deck{position:absolute;z-index:8;top:calc(max(12px,env(safe-area-inset-top)) + 60px);right:max(12px,env(safe-area-inset-right));width:310px;max-height:calc(100dvh - 90px - env(safe-area-inset-top) - env(safe-area-inset-bottom));min-height:0;padding:12px;display:flex;flex-direction:column;background:#fbf6e9f2;overflow:hidden}.deck-title{flex:none;padding:0 0 8px;margin:0;gap:8px}.deck-title h2{font-size:15px}.deck-title small{display:none}#count{margin-left:auto;white-space:nowrap}#deck-toggle{flex:none;padding:0;width:38px;min-height:38px;font-size:22px}#deck-body{overflow:auto;min-height:0;overscroll-behavior:contain;padding-top:8px}.command-deck.collapsed .deck-title{padding-bottom:0}.cards{display:grid;grid-template-columns:1fr 1fr;gap:5px}.unit{min-height:58px;padding:4px;gap:3px}.unit img{width:42px;height:42px}.unit b{font-size:10px}.unit small{font-size:9px}.road-tools{margin-top:8px;padding-top:8px}.actions{position:sticky;bottom:0;background:var(--paper);padding-top:8px}.range-legend{bottom:calc(max(12px,env(safe-area-inset-bottom)) + 18px);left:170px;right:auto;max-width:260px;pointer-events:none}.placement-cursor{position:absolute;width:12px;height:12px;transform:translate(-50%,-50%);pointer-events:none}.range-preview{width:240px;pointer-events:none}.placement-status{font-size:10px;color:#fff1c3}.range-preview[data-valid=false] .placement-status{color:#ffb5a7}@media(max-width:780px){.topbar{top:max(8px,env(safe-area-inset-top));right:max(8px,env(safe-area-inset-right))}.tools button{min-height:38px;padding:5px 10px}.gold-purse{padding:4px 8px}.gold-purse b{font-size:12px}.map-heading{top:max(8px,env(safe-area-inset-top));left:12px;font-size:11px}.command-deck{top:auto;bottom:max(8px,env(safe-area-inset-bottom));left:max(8px,env(safe-area-inset-left));right:max(8px,env(safe-area-inset-right));width:auto;max-height:43dvh;padding:8px}.deck-title>div{display:block}.deck-title h2{font-size:13px}.cards{display:flex;overflow-x:auto;padding-bottom:5px}.unit{flex:0 0 125px;min-width:125px;flex-direction:row}.road-tools{margin-top:4px;padding-top:5px}.road-tools p,#slow-surface-help{font-size:10px}.actions{display:grid;grid-template-columns:.8fr 1.1fr 1.7fr}.actions .primary{grid-column:auto}.actions button{font-size:11px;padding:6px}.range-legend{left:12px;bottom:calc(43dvh + 75px + env(safe-area-inset-bottom));max-width:calc(100vw - 24px);font-size:10px}#app:has(.command-deck.collapsed) .range-legend{bottom:calc(135px + env(safe-area-inset-bottom))}}.map-shell:after{border:0;border-radius:0}.range-preview .placement-status{white-space:normal}.sandbag-handle{position:absolute;width:52px;height:44px;min-height:44px;padding:0;transform:translate(-50%,-50%);border:1px solid #fff1b6a0;background:transparent;border-radius:12px;z-index:3}.sandbag-handle[aria-pressed=true]{border:3px solid #ffe184;box-shadow:0 0 9px #ffe18460}.sandbag-health{position:absolute;z-index:1;width:48px;height:7px;transform:translate(-50%);pointer-events:none;-webkit-user-select:none;user-select:none}.sandbag-health i{display:block;width:100%;height:100%;box-sizing:border-box;border:1px solid #fff0c9;border-radius:3px;background:#263b31;overflow:hidden}.sandbag-health b{display:block;width:var(--sandbag-hp, 100%);height:100%;background:#b8e79b}.sandbag-health[data-health=low] b{background:#f58b73}.road-actions{grid-template-columns:repeat(3,1fr)}.road-actions button{padding-inline:4px;font-size:11px}#sandbag-selected{font-size:10px;line-height:1.6}#sandbag-confirm .road-actions{grid-template-columns:1fr 2fr;margin-top:18px}.unit-health[data-slowed=true]:after{content:"霜";position:absolute;left:calc(100% + 3px);top:1px;padding:1px 4px;border:1px solid #bceef4;border-radius:5px;background:#244f6deb;color:#ddfbff;font-size:9px;line-height:14px}#asset-status{position:fixed;z-index:100;top:80px;left:50%;transform:translate(-50%);max-width:min(90vw,600px);padding:12px 18px;border:1px solid #e0c68b;border-radius:12px;background:#253c35;color:#fff4d6;pointer-events:none}#asset-status[data-status=error]{background:#743e38}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.stage-label{position:fixed;z-index:7;left:max(12px,env(safe-area-inset-left));bottom:max(12px,env(safe-area-inset-bottom));color:#fff7df;font-size:16px;font-weight:700;text-shadow:0 1px 3px #20382e;pointer-events:none}.base-health{position:absolute;z-index:4;width:100px;transform:translate(-50%);pointer-events:none}.base-health progress{display:block;width:100%;height:11px;border:2px solid #fff0c9;border-radius:6px;overflow:hidden;background:#32443c}.base-health progress::-webkit-progress-bar{background:#32443c}.base-health progress::-webkit-progress-value{background:#a7d384}.base-health progress[data-health=low]::-webkit-progress-value{background:#f18b73}.base-health progress::-moz-progress-bar{background:#a7d384}.range-legend{left:12px;bottom:46px}@media(max-width:800px){.stage-label{bottom:calc(43dvh + 18px + env(safe-area-inset-bottom))}.range-legend{bottom:calc(43dvh + 54px + env(safe-area-inset-bottom))}#app:has(.command-deck.collapsed) .stage-label{bottom:calc(80px + env(safe-area-inset-bottom))}#app:has(.command-deck.collapsed) .range-legend{bottom:calc(116px + env(safe-area-inset-bottom))}}#settings-toggle[data-save-state=error]{border-color:#9e3f29;color:#82311e;background:#fff0da}.save-tools{border-top:1px solid #c6b58d;margin-top:1rem;padding-top:1rem}.save-tools>button{margin:.25rem .4rem .5rem 0}.save-tools>small{display:block;line-height:1.65}#saved-run-note:empty{display:none}#resume-run{margin-bottom:.75rem;max-width:100%;white-space:normal}.decision-panel{position:fixed;z-index:8;left:max(12px,env(safe-area-inset-left));bottom:max(46px,calc(34px + env(safe-area-inset-bottom)));width:min(1120px,calc(100vw - 390px));max-height:min(360px,43dvh);padding:10px 12px;overflow:auto;overscroll-behavior:contain;color:#263c32;background:#faf4e5f5;box-shadow:0 5px 24px #15372940}.decision-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.decision-heading b{font-size:14px}.decision-heading small{display:block;margin-top:2px;color:#596953;font-size:10px}.decision-heading button{min-height:32px;width:34px;padding:2px;flex:0 0 34px}#decision-status,#decision-summary,.decision-note{margin:5px 0;line-height:1.5;font-size:11px;overflow-wrap:anywhere}#decision-status{color:#466758;font-weight:700}.decision-note{color:#75613e;font-size:10px}.decision-scroll{display:flex;align-items:stretch;gap:5px}.decision-scroll>button{flex:0 0 24px;width:24px;padding:0;min-height:40px;border-color:#c5b792;border-radius:8px;background:#f0e8d5;font-size:23px}.decision-cards{display:flex;gap:8px;min-width:0;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;padding:3px 2px 6px;scrollbar-width:thin}.decision-card{flex:0 0 146px;padding:7px 9px;border:1px solid #cbbd9b;border-radius:10px;background:#fffdf5}.decision-card[data-model-selected=true]{border-color:#557faa;box-shadow:inset 0 0 0 1px #557faa}.decision-card[data-applied=true]{background:#fff3c9;outline:2px solid #b0842b;outline-offset:-3px}.decision-card>b{display:block;min-height:30px;font-size:11px;line-height:1.4}.decision-portraits{display:flex;align-items:center;height:27px;font-size:24px;color:#766b53}.decision-portraits img{width:26px;height:26px;object-fit:contain}.decision-card p{margin:3px 0;font-size:11px;font-variant-numeric:tabular-nums}.decision-api-value{color:#345d81}.decision-game-value{color:#795621;font-weight:700}.decision-badges{display:block;min-height:12px;font-size:9px;font-weight:700;color:#715625}.decision-formula{margin-top:6px;font-size:10px;line-height:1.6}.decision-formula summary{cursor:pointer}.decision-formula p{margin:5px 0}@media(max-width:800px){.decision-panel{width:calc(100vw - 24px - env(safe-area-inset-left) - env(safe-area-inset-right));bottom:calc(43dvh + 50px + env(safe-area-inset-bottom));max-height:min(285px,calc(48dvh - 64px));padding:8px 10px}#app:has(.command-deck.collapsed) .decision-panel{bottom:calc(112px + env(safe-area-inset-bottom));max-height:min(300px,40dvh)}.decision-card{flex-basis:138px}}.decision-constraints{margin-top:6px;font-size:10px;line-height:1.6}.decision-constraints summary{cursor:pointer}.decision-constraints ul{margin:5px 0;padding-left:16px}.decision-constraints li{padding:3px 0;border-bottom:1px solid #dacdae;overflow-wrap:anywhere}.sound-tools{border-top:1px solid var(--line);margin-top:1rem;padding-top:.75rem}.sound-tools .sound-toggle{display:flex;align-items:center;gap:.5rem}.sound-tools input[type=checkbox]{width:1.1rem;height:1.1rem}.sound-tools input[type=range]{width:100%;accent-color:#547955}.sound-tools output{float:right;font-variant-numeric:tabular-nums}.selection-context{margin-top:8px;padding:9px;border:1px solid #b5bd9a;border-radius:10px;background:#fffdf4}.context-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.context-heading b{font-size:13px}.context-heading button{min-height:30px;width:30px;padding:0;font-size:20px}.selection-context p{margin:5px 0;font-size:11px;line-height:1.5}.context-actions{display:flex;gap:5px;flex-wrap:wrap}.context-actions button{flex:1 1 105px;min-height:38px;padding:6px;font-size:11px}.context-actions [aria-pressed=true]{background:var(--green);color:var(--paper)}.economy-hint{margin:7px 0 0;font-size:10px;line-height:1.5;color:var(--muted)}.unit[data-roster-state=reserve] .unit-check{display:block;color:#9d7742}.moving-defender,.moving-defender .defender-handle{cursor:grabbing}@media(max-width:780px){.selection-context{margin-top:4px;padding:6px 8px}.context-actions button{flex-basis:90px}.unit small{white-space:normal;line-height:1.3}}.range-preview .redeployment-key:before{content:"";width:20px;flex:none;border-top:3px dotted #e7b5ff}.fortification-icon{flex:none;width:28px;height:28px}.item-tools{grid-template-columns:repeat(4,minmax(0,1fr))}.item-tools .item-tool{display:flex;align-items:center;flex-direction:column;justify-content:center;gap:3px;min-height:72px;padding:5px 2px}.item-tool small{display:block;font-size:9px;line-height:1.3}#app[data-economy-version="1"] .item-tools{grid-template-columns:1fr}.equipment-actions{border-top:1px solid #d6d8bf;margin-top:7px;padding-top:3px}.equipment-actions button{display:flex;align-items:center;gap:6px;text-align:left}.equipment-actions button small{display:block;font-size:9px;line-height:1.4}.equipment-actions .fortification-icon{width:22px;height:22px}#map-scroll.placing-road-item:not(.panning){cursor:crosshair}.gate-panel{max-width:430px}.gate-upgrade{padding:12px 0;border-top:1px solid #d6d8bf}.gate-upgrade>div{display:flex;align-items:center;gap:8px}.gate-upgrade>p{font-size:12px;line-height:1.5;margin:7px 0}.gate-upgrade>button{width:100%;min-height:40px}#fortification-confirm-detail{line-height:1.8}.field-controls{position:absolute;z-index:10;top:calc(max(12px,env(safe-area-inset-top)) + 52px);right:max(12px,env(safe-area-inset-right));display:flex;align-items:center;gap:8px}.field-icon{position:relative;display:grid;place-items:center;width:56px;height:56px;min-height:56px;padding:4px;border-radius:16px;background:#faf4e5f5;box-shadow:0 4px 18px #15372930;font-size:23px;touch-action:none}.field-icon .fortification-icon{width:30px;height:30px}.field-icon[aria-expanded=true]{background:#fff0c7;border-color:#9d7a34}.icon-count{position:absolute;top:-5px;right:-5px;min-width:21px;height:21px;border-radius:50%;background:#375a44;color:#fff8df;font:700 12px/21px sans-serif}.reserve-dropzone.drop-ready{outline:3px dashed #ffe499;outline-offset:4px}.reserve-dropzone.drop-over{outline-style:solid;background:#cae6b5;transform:scale(1.08)}.floating-tray{position:absolute;z-index:9;top:calc(max(12px,env(safe-area-inset-top)) + 118px);right:max(12px,env(safe-area-inset-right));width:344px;max-width:calc(100vw - 24px - env(safe-area-inset-left) - env(safe-area-inset-right));max-height:min(46dvh,420px);overflow:auto;padding:10px;border-radius:18px;box-shadow:0 10px 34px #102a2259;overscroll-behavior:contain}.floating-tray[hidden],.field-controls [hidden],.unit[hidden],.item-tool[hidden]{display:none}.tray-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;gap:8px}.icon-close{min-width:40px;min-height:40px;padding:0;font-size:22px;margin-left:auto}.scout-button{display:flex;align-items:center;gap:8px;min-height:42px;padding:5px 12px;font-variant-numeric:tabular-nums}.scout-button .fortification-icon{width:26px;height:26px}.floating-tray .cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;overflow:visible;padding:0}.floating-tray .unit{display:grid;grid-template-rows:54px 17px;justify-items:center;min-width:0;min-height:82px;padding:5px 3px;gap:2px;text-align:center;touch-action:none;user-select:none;-webkit-user-select:none}.floating-tray .unit[hidden]{display:none}.floating-tray .unit img{width:54px;height:54px}.floating-tray .unit small{font-size:10px;line-height:17px;white-space:nowrap;font-variant-numeric:tabular-nums}.floating-tray .unit kbd{display:none}.unit-dragging .floating-tray,.floating-tray.drag-suspended{opacity:0;pointer-events:none}.floating-tray .item-tools{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.floating-tray .item-tool{display:grid;place-items:center;min-width:0;min-height:80px;padding:5px 2px;gap:4px}.floating-tray .item-tool[hidden]{display:none}.item-model{position:relative;display:block;width:64px;height:44px;overflow:hidden;flex:none}.item-model>.fortification-icon{position:absolute;width:32px;height:32px;left:16px;top:6px}.item-model>img{position:absolute;width:96px;height:96px;max-width:none;left:50%;top:50%;transform:translate(-50%,-62%);object-fit:contain;opacity:0;-webkit-user-select:none;user-select:none;pointer-events:none}.item-model.art-ready>img{opacity:1}.item-model.art-ready>.fortification-icon{visibility:hidden}.field-icon .item-model{width:64px;transform:scale(.7)}.selection-context.floating-tray{margin:0}.selection-context .context-actions{display:flex;gap:7px}.selection-context .context-actions button{flex:1 1 0;min-height:44px;padding:5px;font-size:14px}.selection-context .equipment-actions{margin:8px 0 0;padding-top:8px}.selection-context .equipment-actions button{display:flex;align-items:center;justify-content:center;gap:8px}.scout-result{position:relative;width:min(290px,calc(100vw - 40px));padding:18px;text-align:center}.scout-result .icon-close{display:block}.scout-result img{display:block;width:132px;height:132px;object-fit:contain;margin:8px auto 16px}.scout-result h2{margin:0 0 12px;font-size:20px}.stage-label{bottom:max(12px,env(safe-area-inset-bottom))}.decision-panel{bottom:max(46px,env(safe-area-inset-bottom))}@media(max-width:800px){.field-controls{gap:6px}.field-icon{width:48px;height:48px;min-height:48px;border-radius:14px}.floating-tray{top:calc(max(12px,env(safe-area-inset-top)) + 108px);max-height:42dvh}.decision-panel{bottom:max(46px,env(safe-area-inset-bottom));max-height:min(285px,32dvh)}}#control-tooltip{position:absolute;z-index:12;top:calc(max(12px,env(safe-area-inset-top)) + 58px);right:calc(max(12px,env(safe-area-inset-right)) + 198px);max-width:min(260px,48vw);margin:0;padding:7px 10px;border-radius:9px;background:#203c30f5;color:#fff8df;font-size:11px;line-height:1.5;pointer-events:none}#control-tooltip[hidden]{display:none}.floating-tray .context-heading button{min-width:40px;min-height:40px}.defender-handle{touch-action:none}.item-model>img[data-item-art=mud]{width:64px;height:48px;transform:translate(-50%,-54%)}.reserve-dropzone.drop-ready .icon-count{width:auto;padding-inline:4px;border-radius:7px}.battle-special-status,.battle-relocation-status{position:absolute;left:calc(100% + 4px);top:0;padding:1px 4px;border:1px solid #e7b5ff;border-radius:5px;background:#272034e8;color:#f2dfff;font-size:11px;font-style:normal;white-space:nowrap}#map-scroll[data-fit=true]{padding:72px 12px 16px;display:flex;overflow:hidden;cursor:default}#map-scroll[data-fit=true] #map-world{flex:none}#field>canvas{image-rendering:auto}#field .unit-health{transform:translate(-50%,-100%) scaleX(var(--field-aspect-inverse, 1))}#field .base-health,#field .sandbag-health,#field .sandbag-preview{transform:translate(-50%) scaleX(var(--field-aspect-inverse, 1))}#field .range-preview{transform:scaleX(var(--field-aspect-inverse, 1));transform-origin:left top}@media(max-width:420px){.map-heading{top:calc(max(8px,env(safe-area-inset-top)) + 48px)}}.battle-special-status{top:19px;border-color:#edda9d;color:#fff1b0}#campaign-loading{width:min(400px,calc(100vw - 32px))}#campaign-loading progress{width:100%;height:20px;accent-color:#365d49}#campaign-loading button{min-height:44px;margin:8px 8px 0 0}#campaign-loading-status{overflow-wrap:anywhere}.result{width:min(460px,calc(100vw - 32px));padding:22px 26px 20px;overflow:visible;background:linear-gradient(180deg,#fffaf0,var(--paper) 40%);border:2px solid #e6d29a;box-shadow:0 24px 90px #0b201680,0 0 0 6px #fbf6e922,inset 0 1px #fff}.result[open]{animation:result-pop .38s cubic-bezier(.2,1.3,.4,1) both}@keyframes result-pop{0%{opacity:0;transform:translateY(14px) scale(.92)}to{opacity:1;transform:none}}.result-main,.result-side{display:grid;justify-items:center;min-width:0}.result-main>*,.result-side>*{width:100%}.result-icon{width:56px;height:56px;margin:0 auto 8px;font-size:32px;box-shadow:0 0 0 5px #f4efdb}.result-icon svg{width:30px;height:30px}.result h2{font-size:24px;margin:4px 0 8px;line-height:1.4}.result-stars{display:flex;justify-content:center;align-items:flex-end;gap:8px;height:78px}.result-stars .rs{width:62px;height:62px;color:#e4dcc0;filter:drop-shadow(0 2px 0 #cfc6a4)}.result-stars .rs:nth-child(2){width:74px;height:74px}.result-stars .rs[data-on]{color:#f0bd3a;filter:drop-shadow(0 3px 0 #a9792b) drop-shadow(0 0 8px #ffe08a);animation:star-stamp .46s cubic-bezier(.2,1.5,.4,1) both}@keyframes star-stamp{0%{transform:scale(2.6) rotate(-24deg);opacity:0}55%{transform:scale(.88) rotate(6deg);opacity:1}to{transform:scale(1) rotate(0)}}.result p.result-hint{margin:4px 0 0;font-size:12px;line-height:1.5;text-align:center;color:#7b6a3d;font-weight:650}.result-tags{display:flex;justify-content:center;gap:8px;min-height:0;flex-wrap:wrap;margin:6px 0 0}.result-tags:not(:has(:not([hidden]))){display:none}.result-tag{font-size:12px;font-weight:800;padding:3px 12px;border-radius:999px;letter-spacing:.5px;opacity:0;transform:scale(.6)}.result-tag[data-shown]{opacity:1;transform:none;transition:opacity .2s,transform .36s cubic-bezier(.2,1.6,.4,1)}.result-tag.new{color:#fff8dc;background:linear-gradient(180deg,#d8624a,#b84330);box-shadow:0 2px #82291d}.result-tag.best{color:#6b4a0f;background:#ffe9a8;border:1px solid #d6ac55}.result-lines{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:6px}.result-lines li{display:flex;align-items:center;gap:8px;padding:7px 12px;background:#f4efd9;border-radius:9px;font-size:13px;font-weight:650}.result-lines svg,.result-chips svg{width:18px;height:18px;flex:none}.result-lines span{flex:1;text-align:left}.result-lines b{color:#8a5f1c;font-variant-numeric:tabular-nums}[data-line]{opacity:0;transform:translateY(8px)}[data-line][data-shown]{opacity:1;transform:none;transition:opacity .24s,transform .24s}.result-summary{margin:8px 0 0;padding:10px 14px;background:linear-gradient(180deg,#fff2c9,#f6dc94);border:1px solid #d6ac55}.result-summary span{font-size:11px;color:#6c5a2a;text-align:left}.result-summary b{font-size:22px;color:#7b4f10;font-variant-numeric:tabular-nums}.result-chips{list-style:none;margin:8px 0 0;padding:0;display:flex;justify-content:center;flex-wrap:wrap;gap:6px}.result-chips li{display:flex;align-items:center;gap:5px;padding:4px 10px;font-size:11px;font-weight:650;color:#4d6049;background:#eaeedc;border-radius:999px;white-space:nowrap}.result p#reward{margin:8px 0 0;font-size:12px;line-height:1.5;text-align:center}.result-actions{display:grid;gap:8px;margin-top:12px}.result .result-actions button{min-height:48px}.result .result-actions .primary{min-height:54px;font-size:16px;animation:cta-pulse 1.8s ease-in-out 1.2s infinite}@keyframes cta-pulse{50%{box-shadow:0 3px #1f3f2e,0 0 0 5px #d6ac5566}}.result .result-actions .text-button{border:0;background:transparent;text-decoration:underline;text-underline-offset:4px;min-height:40px;color:#657657}.result[data-outcome=defeat]{border-color:#dcc0a8}.result .unused-navigation{display:none}.result-note{margin-top:6px}.result-confetti{position:absolute;left:50%;top:34%;width:0;height:0;z-index:-1;pointer-events:none}.result-confetti i{position:absolute;left:-5px;top:-5px;width:11px;height:17px;border-radius:3px;box-shadow:0 0 0 1px #fff8;opacity:0;animation:confetti-burst 1.9s cubic-bezier(.2,.7,.3,1) var(--d) both}@keyframes confetti-burst{0%{opacity:1;transform:translate(0) scale(.3)}30%{opacity:1;transform:translate(var(--dx),var(--dy)) rotate(var(--rot)) scale(1)}to{opacity:0;transform:translate(calc(var(--dx) * 1.15),calc(var(--dy) + var(--fall))) rotate(calc(var(--rot) * 2)) scale(.9)}}@media(max-height:760px)and (min-width:561px){.result-icon{display:none}.result-stars{height:66px}.result-stars .rs{width:52px;height:52px}.result-stars .rs:nth-child(2){width:62px;height:62px}.result-note{display:none}.result h2{font-size:22px;margin:2px 0 4px}.result .result-actions .primary{min-height:48px}}@media(max-height:560px){.result[open]{width:min(780px,calc(100vw - 32px));padding:12px 20px;display:grid;grid-template-columns:1fr 1.1fr;column-gap:20px;align-items:center}.result-icon,.result-note,.result .eyebrow{display:none}.result h2{font-size:20px;margin:0 0 4px}.result-stars{height:62px}.result-stars .rs{width:48px;height:48px}.result-stars .rs:nth-child(2){width:58px;height:58px}.result-lines{margin-top:0;gap:4px}.result-lines li{padding:4px 10px;font-size:12px}.result-summary{margin-top:5px;padding:6px 12px}.result-summary b{font-size:18px}.result-chips{margin-top:5px}.result-chips li{padding:2px 8px;font-size:10px}.result p#reward{margin-top:4px;font-size:11px}.result-actions{margin-top:6px;grid-template-columns:1fr 1fr;gap:6px}.result .result-actions .primary{grid-column:1 / -1;min-height:46px;font-size:15px}.result .result-actions button{min-height:40px}}@media(max-width:420px){.result{padding:18px 16px 14px}.result-chips{gap:4px}.result-chips li{padding:3px 8px;font-size:10px;gap:4px}.result-stars .rs{width:56px;height:56px}.result-stars .rs:nth-child(2){width:68px;height:68px}}@media(prefers-reduced-motion:reduce){[data-line],.result-tag{opacity:1;transform:none}.result-confetti{display:none}}.stage-card .stage-stars{font-style:normal;font-size:10px;letter-spacing:1px;color:#d09a28;line-height:1.1;min-height:11px}.star-purse{margin-left:10px;color:#9a6b12}.star-purse b{color:#9a6b12}.coach{position:fixed;inset:0;z-index:30;pointer-events:none}#app.unit-dragging .coach{display:none}.coach-ring{position:fixed;border:4px solid #ffd45e;border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 3px #30422c88,0 0 16px #ffd45eaa;animation:coach-pulse 1.2s ease-out infinite}@keyframes coach-pulse{0%{scale:.9;opacity:1}to{scale:1.25;opacity:0}}.coach-pointer,.coach-ghost{position:fixed;width:30px;height:36px;margin-left:-15px;filter:drop-shadow(0 2px 2px #0006)}.coach-pointer svg,.coach-ghost svg{width:100%;height:100%}.coach-pointer{animation:coach-bounce .7s ease-in-out infinite alternate}@keyframes coach-bounce{to{translate:0 8px}}.coach-ghost{margin-top:-6px;opacity:0}.coach-bubble{position:fixed;display:flex;align-items:center;gap:8px;transform:translate(-50%);padding:7px 8px 7px 14px;border-radius:999px;background:var(--paper);border:2px solid var(--gold);color:var(--ink);font-size:14px;font-weight:800;white-space:nowrap;box-shadow:0 4px 14px #0a1c1488}.coach-skip{pointer-events:auto;min-width:30px;min-height:30px;padding:0;border-radius:50%;line-height:1;font-size:16px;color:#6c7665}@media(prefers-reduced-motion:reduce){.coach-ring{animation:none;opacity:.9}}#campaign-loading{width:min(420px,calc(100vw - 32px));text-align:center;background:linear-gradient(180deg,#fffaf0,var(--paper));border:2px solid #e6d29a}.loading-stage{display:inline-block;padding:2px 14px;border-radius:999px;background:var(--forest);color:#fff8dc;font-weight:800;letter-spacing:2px;font-size:13px}#campaign-loading h2{margin:8px 0 4px;font-size:17px}.loading-party{display:flex;justify-content:center;gap:6px;min-height:74px;margin:6px 0 10px}.loading-party img{width:64px;height:64px;object-fit:contain;animation:loading-hop .5s cubic-bezier(.3,1.6,.5,1) both;filter:drop-shadow(0 3px 2px #0003)}@keyframes loading-hop{0%{transform:translateY(14px) scale(.8);opacity:0}to{transform:none;opacity:1}}#campaign-loading progress{appearance:none;border:2px solid #c9b57c;border-radius:999px;background:#efe8cf;overflow:hidden;height:18px}#campaign-loading progress::-webkit-progress-bar{background:#efe8cf}#campaign-loading progress::-webkit-progress-value{background:linear-gradient(180deg,#f2cf75,#d6ac55);border-radius:999px;transition:width .2s}#campaign-loading progress::-moz-progress-bar{background:linear-gradient(180deg,#f2cf75,#d6ac55)}#campaign-loading-status{margin:4px 0 0;font-size:12px;line-height:1.5}.loading-tip{min-height:3em;margin:8px 0 4px;font-size:13px;line-height:1.5;color:#6b5a2c;font-weight:650}#campaign-loading button{margin:4px 4px 0}@media(max-height:460px){.loading-party{min-height:52px}.loading-party img{width:44px;height:44px}.loading-tip{min-height:0;margin:4px 0}}.result-lines:not(:has(li:not([hidden]))){display:none}.launch-footer{position:sticky;bottom:0;z-index:3;padding-bottom:2px;background:var(--paper);box-shadow:0 -16px 16px -8px var(--paper),0 40px 0 0 var(--paper)}.pause-dialog{width:min(320px,calc(100vw - 32px));text-align:center}.pause-dialog::backdrop{background:#0c1a1388}.pause-dialog h2{margin:0 0 14px;font-size:20px}.pause-actions,.pause-confirm{display:grid;gap:8px}.pause-actions button,.pause-confirm button{min-height:48px}.pause-confirm p{margin:0;font-weight:700;color:#82311e}.pause-confirm[hidden],.pause-actions[hidden]{display:none}.stage-goals{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 0;padding:0;list-style:none}.stage-goals li{display:inline-flex;align-items:center;gap:5px;padding:4px 9px;border:1.5px solid #b9a56a;border-radius:999px;font-size:12px;font-weight:700;color:#7a6a3a;background:transparent}.stage-goals li[data-got=true]{border-color:#c5a056;background:#fff0ca;color:#6b4a07}.stage-goals li[data-got=true] .goal-star{color:#d09a28}.stage-goals .goal-star{letter-spacing:0}.stage-label .stage-goal{display:block;width:fit-content;margin-top:3px;padding:3px 8px;border-radius:999px;background:#1c3a2cc7;font-size:12px}.stage-label .stage-goal[hidden],#app[data-phase=assault] .stage-label .stage-goal{display:none}.stage-enemies{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:8px 0 0;font-size:12px;color:#7a6a3a}.stage-enemies b{font-size:12px}.stage-enemies small{font-size:11px;font-weight:700}.foe{position:relative;display:inline-block;width:34px;height:34px;border:1.5px solid #b9a56a;border-radius:8px;background:#fff8e0}.foe img{width:100%;height:100%;object-fit:contain;border-radius:6px}.foe[data-boss=true]{border-color:#b8332a;box-shadow:0 0 0 1.5px #b8332a}.foe .crown{position:absolute;top:-9px;left:50%;translate:-50% 0;font-style:normal;font-size:13px;line-height:1;color:#d09a28;text-shadow:0 0 2px #fff}.foe em{position:absolute;bottom:-6px;left:50%;translate:-50% 0;padding:0 3px;border-radius:3px;background:#b8332a;color:#fff;font-size:8px;font-style:normal;font-weight:800;line-height:11px}.foe .wing{position:absolute;top:-5px;right:-5px;width:15px;height:15px;padding:1px;border-radius:50%;background:#3e6f9c;color:#fff}.result-leaks{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;margin:8px 0 0;font-size:11px;font-weight:700;color:#6a3a2a}.result-leaks[hidden]{display:none}.result-leaks .leak{position:relative;display:inline-flex;align-items:center;gap:2px;padding:1px 6px 1px 2px;border-radius:999px;background:#f3dfd6}.result-leaks img{width:26px;height:26px;object-fit:contain}.result-leaks .leak[data-boss=true]{box-shadow:0 0 0 1.5px #b8332a}.result-leaks .crown{font-style:normal;color:#d09a28;font-size:12px}@media(max-height:560px){.result-leaks{margin-top:3px;font-size:10px}.result-leaks img{width:20px;height:20px}}.title-screen{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:0;border:0;border-radius:0;background:#102c26;color:#f5eddc;overflow:auto;isolation:isolate}.title-screen::backdrop{background:#102c26}.title-screen a{color:inherit;text-decoration:none}.title-topline{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:30px 5vw;font:600 11px/1.5 system-ui,sans-serif;letter-spacing:.14em}.title-topline a{font-size:15px;letter-spacing:0;padding:8px 0}.title-content{position:relative;z-index:2;width:59%;min-height:650px;padding:7vh 0 6vh 9vw}#game-title{margin:0;color:#f6efd9;font-family:Georgia,Times New Roman,serif;font-size:clamp(44px,5.7vw,92px);line-height:1;font-weight:400;letter-spacing:-.05em}#game-title span{font-style:italic;color:#ddbb69}.title-menu{margin-top:32px;width:min(350px,90%);display:grid;gap:9px}.title-menu button,.title-menu a{display:flex;align-items:center;justify-content:space-between;min-height:57px;padding:14px 21px;background:#183d31;color:#f3ecd9;border:1px solid #66807177;border-radius:3px;font:500 17px/1.5 system-ui,sans-serif;text-align:left}.title-menu button.title-menu-primary{background:#ddbb69;border-color:#ddbb69;color:#17382a}.title-menu button:hover:not(:disabled),.title-menu a:hover{background:#2b5140;color:#fff6df;border-color:#ddbb69}.title-menu button:disabled{background:#18372e;color:#8b9d90;opacity:.62}.title-save-status{color:#a8b9a9;max-width:350px;font-size:11px;line-height:1.8;margin:14px 0 0}.title-atmosphere{position:absolute;inset:0;z-index:-1;overflow:hidden;background:radial-gradient(ellipse at 78% 38%,#52745366 0,transparent 48%),linear-gradient(125deg,#112d26,#183b2c)}.title-orbit{position:absolute;width:54vw;height:54vw;right:-4vw;top:4vh;border:1px solid #a9a86e33;border-radius:50%;box-shadow:0 0 0 55px #92a05c08,0 0 0 110px #92a05c06}.title-hill{position:absolute;width:120%;height:45%;bottom:-20%;border-radius:50%;background:#244938;transform:rotate(-9deg)}.title-hill-front{background:#0b231c;bottom:-30%;left:22%;transform:rotate(11deg)}.title-party{position:absolute;width:44%;right:0;top:22%;height:60%;pointer-events:none}.title-party-halo{position:absolute;inset:9% 9% 0 0;border-radius:50%;background:radial-gradient(ellipse,#acb36e35,transparent 64%)}.title-character{position:absolute;object-fit:contain;width:52%;filter:drop-shadow(0 24px 13px #071c1999);image-rendering:pixelated}.title-soldier{top:24%;left:11%;width:66%;z-index:2;transform:rotate(-6deg)}.title-archer{top:4%;left:-10%;transform:rotate(-12deg)}.title-mage{top:9%;right:0;transform:rotate(9deg)}.title-return{margin-right:auto}#settings .environment-art-tools,#settings .trial-art-tools,#settings .enemy-trial-art-tools{display:none}@media(max-width:700px){.title-topline{padding:18px 6vw}.title-content{padding:180px 8vw 20px;width:100%;min-height:0}#game-title{font-size:clamp(42px,10vw,66px)}.title-party{top:55px;right:9%;width:54%;height:190px}.title-character{width:40%}.title-soldier{width:53%;top:15%}.title-mage{right:8%}.title-menu{width:100%}.title-save-status{max-width:100%}}@media(prefers-reduced-motion:no-preference){.title-soldier{animation:title-breathe 5s ease-in-out infinite}@keyframes title-breathe{50%{transform:translateY(-8px) rotate(-4deg)}}}@media(max-width:420px){.topbar{padding-inline:8px;gap:5px}.topbar .tools{gap:5px}.topbar .tools button{padding-inline:8px;font-size:11px;gap:4px}.topbar .gold-purse{padding-inline:5px}.topbar .gold-purse b{font-size:12px}}.title-screen :is(button,a):focus-visible{outline:3px solid #fff4c9;outline-offset:3px}.title-menu button,.title-menu a,.title-topline a{cursor:pointer}.title-topline a{display:inline-flex;align-items:center;min-height:44px;min-width:44px}.title-menu button.title-menu-primary:hover:not(:disabled){background:#f0ce7b;color:#102c26}.launch-help{margin-top:12px}.launch-help summary{cursor:pointer;min-height:44px;display:list-item;padding:12px 0}.launch-help summary:focus-visible{outline:3px solid #ddbb69;outline-offset:3px}.ui-help summary{cursor:pointer;min-height:44px;padding:12px 0}.ui-help summary:focus-visible{outline:3px solid #ad7a22;outline-offset:3px}.title-character{image-rendering:auto;max-width:160px}.title-soldier{max-width:200px}@media(max-width:700px){.title-character{max-width:100px}.title-soldier{max-width:125px}}@media(max-height:900px){.launch{padding:16px 24px}.launch .kingdom-crest{width:48px;height:42px;margin:0 auto}.launch h1{font-size:22px;line-height:1.25;margin:4px 0 8px}.launch-footer{margin-top:8px;padding-top:8px}.launch #launch-status{margin-bottom:4px}.launch-help{margin-top:0}}.jev-ui,.unused-navigation{display:none!important}@media(min-width:701px){.title-party{width:330px;right:9vw}.title-archer{left:0}.title-soldier{left:22%}}@media(max-height:600px){.launch{position:fixed;padding:8px 16px}.launch .title-return{position:absolute;top:8px;left:16px}.launch .kingdom-crest{display:none}.launch h1{margin:8px 0 12px;font-size:18px}}.settings-pages{display:flex;gap:4px;margin-bottom:8px}.settings-pages button{flex:1;min-width:0;min-height:44px;padding:6px}.settings-pages button[aria-pressed=true]{background:#365d49;color:#fff8de}[data-settings-page][hidden]{display:none!important}.launch #saved-run-note:empty,.launch #launch-status:empty{display:none}@media(max-height:600px){.settings{top:8px;right:8px;max-height:calc(100dvh - 16px);padding:10px 14px}.settings .dialog-heading{margin-bottom:4px}.settings label{margin:5px 0}.settings-pages{margin-bottom:2px}}@media(max-height:600px){.settings .eyebrow{display:none}.settings .dialog-heading h2{margin:0;font-size:19px}.settings .sound-tools,.settings .save-tools{margin-top:4px;padding-top:4px}.settings .sound-tools h3,.settings .save-tools h3{margin:4px 0}}@media(max-height:600px){.settings{padding-block:6px}}@media(min-width:701px)and (max-height:600px){.title-topline{padding-block:2px}.title-content{min-height:0;padding-block:0 8px}.title-menu{margin-top:12px;gap:5px}.title-menu button,.title-menu a{min-height:44px;padding-block:8px}}@media(max-width:420px)and (max-height:600px){.title-content{padding-top:158px}.title-party{top:42px;height:155px}}.floating-tray .unit.page-away{display:none}.tray-page{min-width:44px;min-height:44px;padding:0;font-size:20px}.tray-page-count{white-space:nowrap;font-size:12px}@media(max-height:600px){.floating-tray{max-height:calc(100dvh - 130px)}.result{padding:12px 18px}.result-icon{width:44px;height:44px;margin-bottom:4px}.result-icon svg{width:28px;height:28px}.result h2{margin:4px 0;font-size:19px;line-height:1.2}.result-summary{padding:6px 10px;margin-bottom:4px}.result p{margin-bottom:6px}.result button{min-height:44px}.result-note{margin-top:4px;font-size:12px}}.gate-tabs{display:flex;gap:6px}.gate-tabs button{flex:1;min-height:44px}.gate-tabs button[aria-pressed=true]{background:#365d49;color:#fff8de}[data-gate-page][hidden]{display:none!important}@media(max-height:600px){.gate-panel .dialog-intro{margin-bottom:4px}.gate-panel .gate-upgrade{margin-top:4px;padding-top:4px}}.shop-pages{display:flex;align-items:center;justify-content:center;gap:12px}.shop-pages button{min-width:44px;min-height:44px}.upgrade-row[hidden]{display:none!important}.result-note small{font-size:12px;line-height:1.4}.title-character{max-width:none;width:105%}.title-soldier{max-width:none;width:125%;left:6%;top:16%}.title-archer{left:-25%;top:-6%}.title-mage{right:-22%;top:-4%}@media(max-width:700px){.title-character{width:75%}.title-soldier{width:90%;left:0;top:5%}.title-archer{left:-18%;top:0}.title-mage{right:-10%;top:0}}@media(min-width:701px)and (max-height:600px){.title-party{width:220px;height:180px;top:12%;right:12vw}}.games-home-link{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:8px 12px;border:1px solid #aebd9166;border-radius:10px;background:#203c32ed;color:#f4f1da;font-size:12px;font-weight:700;text-decoration:none;white-space:nowrap}.games-home-link:hover{background:#3b5843}@media(max-width:600px){.games-home-link{font-size:10px;padding-inline:9px;gap:4px}.topbar{gap:6px}}.battle-hud{position:fixed;z-index:6;top:max(12px,env(safe-area-inset-top));left:50%;translate:-50% 0;display:flex;align-items:center;gap:12px;height:48px;padding:0 6px 0 14px;border:1px solid #b6c59445;border-radius:16px;background:#1c3a2cdb;box-shadow:0 4px 14px #10271940;color:#fff8de;font:800 15px/1 Hiragino Sans,Hiragino Kaku Gothic ProN,Yu Gothic,Meiryo,system-ui,sans-serif;pointer-events:none}.battle-hud[hidden]{display:none}.bhud-main,.bhud-side{display:flex;align-items:center;gap:14px}.bhud-castle,.bhud-enemies,.bhud-coins{display:flex;align-items:center;gap:7px}.battle-hud svg{width:22px;height:22px;flex:none;filter:drop-shadow(0 1px 1px #0006)}.bhud-num{min-width:2.2ch;font-variant-numeric:tabular-nums;text-shadow:0 1px 2px #0008}.bhud-bar{position:relative;display:block;width:112px;height:13px;overflow:hidden;border:2px solid #0f261c;border-radius:8px;background:#0f261c;box-shadow:inset 0 0 0 1px #ffffff1f}.bhud-fill,.bhud-trail{position:absolute;inset:0 auto 0 0;display:block;border-radius:6px}.bhud-fill{background:linear-gradient(#a6e58b,#5fb852);box-shadow:inset 0 2px #fff5;transition:width .14s ease-out}.bhud-trail{background:#fffbe8;transition:width .3s ease-out .3s}.bhud-castle[data-level=mid] .bhud-fill{background:linear-gradient(#ffd77a,#e9a22f)}.bhud-castle[data-level=low] .bhud-fill{background:linear-gradient(#ff9a86,#e1493a)}.bhud-castle[data-level=low]{animation:bhud-pulse .9s ease-in-out infinite}.bhud-castle[data-level=low] .bhud-num{color:#ffb3a6}.bhud-enemies .bhud-fill{background:linear-gradient(#d9b7ff,#8f56d4)}.bhud-crown{display:grid;place-items:center;position:relative;width:24px;height:24px;margin-left:-2px;border-radius:50%;background:#0f261c;color:#6f7f74}.bhud-crown[hidden]{display:none}.bhud-crown svg{width:16px;height:16px;filter:none}.bhud-crown[data-state=alive]{color:#ffd24a;box-shadow:0 0 0 2px #ffd24a,0 0 10px #ffd24a;animation:bhud-pulse .8s ease-in-out infinite}.bhud-crown[data-state=down]{color:#ffd24a;box-shadow:0 0 0 2px #7be495}.bhud-crown[data-state=down]:after{content:"";position:absolute;right:-5px;bottom:-5px;width:12px;height:12px;border-radius:50%;background:#4cbf6a url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='m2.8 6.2 2.1 2.1 4.3-4.6' fill='none' stroke='white' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat}.bhud-coins{padding:0 8px 0 5px;height:30px;border-radius:15px;background:#0f261c99;color:#ffe6a0}.bhud-coins svg{width:20px;height:20px}.bhud-coins .bhud-num{min-width:3ch}.bhud-pause{pointer-events:auto;display:inline-grid;place-items:center;width:44px;height:44px;min-height:44px;padding:0;border:1px solid #779173;border-radius:12px;background:#44644e;color:#f9f4db}.bhud-pause[hidden]{display:none}.bhud-pause svg{width:18px;height:18px}.bhud-speed{pointer-events:auto;display:inline-flex;align-items:center;justify-content:center;gap:4px;min-width:52px;height:44px;min-height:44px;padding:0 8px;border:1px solid #779173;border-radius:12px;background:#44644e;color:#f9f4db;font:inherit;font-size:15px}.bhud-speed[hidden]{display:none}.bhud-speed svg{width:16px;height:16px}.bhud-speed[aria-pressed=true]{border-color:#fff0c7;background:var(--gold);color:var(--ink)}.bhud-speed[aria-pressed=true] svg{filter:none}@keyframes bhud-pulse{50%{opacity:.62}}@media(max-width:1179px){.battle-hud{display:contents}.bhud-main,.bhud-side{position:fixed;z-index:6;border:1px solid #b6c59445;background:#1c3a2cdb;box-shadow:0 4px 14px #10271940;color:#fff8de;font:800 14px/1 Hiragino Sans,Hiragino Kaku Gothic ProN,Yu Gothic,Meiryo,system-ui,sans-serif;pointer-events:none}.bhud-main{top:max(10px,env(safe-area-inset-top));left:calc(max(14px,env(safe-area-inset-left)) + 138px);height:40px;padding:0 12px;border-radius:14px;gap:12px}.bhud-side{left:max(12px,env(safe-area-inset-left));bottom:calc(46px + max(0px,env(safe-area-inset-bottom)));gap:6px;padding:0 0 0 6px;border-radius:14px;height:48px}.bhud-bar{width:84px}}@media(max-width:420px){.bhud-main{top:max(6px,env(safe-area-inset-top));left:max(6px,env(safe-area-inset-left));height:auto;width:max(104px,calc(100vw - 262px));flex-direction:column;align-items:stretch;gap:4px;padding:5px 7px}.bhud-castle,.bhud-enemies{gap:5px}.bhud-bar{flex:1;width:auto;min-width:28px;height:11px}.battle-hud svg{width:16px;height:16px}.bhud-num{font-size:13px;min-width:2ch}.bhud-enemies .bhud-num{min-width:3.4ch}.bhud-crown{width:17px;height:17px;margin-left:0}.bhud-crown svg{width:11px;height:11px}}.fx-overlay{position:fixed;inset:0;z-index:5;overflow:hidden;pointer-events:none}.fx-overlay>*{pointer-events:none}.fx-vignette,.fx-flash{position:absolute;inset:0;opacity:0}.fx-vignette{box-shadow:inset 0 0 110px 36px #e0281ccc,inset 0 0 36px 8px #ff3b2e99}.fx-coin{position:absolute;left:0;top:0;display:flex;align-items:center;gap:3px;padding:2px 7px 2px 3px;border-radius:14px;background:#3a2a0bdd;border:1.5px solid #ffd96b;color:#ffe9a8;font:900 15px/18px Hiragino Sans,Hiragino Kaku Gothic ProN,system-ui,sans-serif;font-variant-numeric:tabular-nums;white-space:nowrap;will-change:transform}.fx-coin svg{width:18px;height:18px}.fx-banner{position:absolute;left:50%;top:max(22%,120px);display:grid;justify-items:center;gap:4px;width:max-content;max-width:100vw;padding:10px 56px 12px;text-align:center;color:#fff8de;background:linear-gradient(90deg,transparent,#1c3a2ce6 28%,#1c3a2ce6 72%,transparent);animation:fx-banner 1.3s cubic-bezier(.2,.8,.3,1) forwards;transform:translate(-50%)}.fx-banner small{font:800 14px/1 Hiragino Sans,system-ui,sans-serif;letter-spacing:.34em;color:#ffe6a0;text-shadow:0 1px 2px #000a}.fx-banner b{font:900 clamp(34px,6.4vw,72px) / 1.05 "Hiragino Sans","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,system-ui,sans-serif;letter-spacing:.04em;text-shadow:-3px 0 #1d2b21,3px 0 #1d2b21,0 -3px #1d2b21,0 3px #1d2b21,-2px -2px #1d2b21,2px 2px #1d2b21,-2px 2px #1d2b21,2px -2px #1d2b21,0 6px 12px #0007}.fx-banner.boss{padding-block:24px 24px;background:linear-gradient(90deg,transparent,#7d1712f0 24%,#7d1712f0 76%,transparent)}.fx-banner.boss:before,.fx-banner.boss:after{content:"";position:absolute;left:6%;right:6%;height:11px;background:repeating-linear-gradient(-45deg,#ffcf2e 0 14px,#1b1512 14px 28px);border-radius:3px}.fx-banner.boss:before{top:0}.fx-banner.boss:after{bottom:0}.fx-banner.boss b{color:#ffefc0}.fx-banner.boss small{font-size:17px;color:#ffd0c8}.fx-banner.win{background:linear-gradient(90deg,transparent,#5c3d0bd9 26%,#5c3d0bd9 74%,transparent)}.fx-banner.win b{color:#ffd84d;background:linear-gradient(#fff7c4,#ffd23e 50%,#f19b1a);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 3px 0 #6b3a05) drop-shadow(0 0 10px #ffd24a99);text-shadow:none}.fx-banner.lose{background:linear-gradient(90deg,transparent,#2d3330e6 26%,#2d3330e6 74%,transparent);filter:saturate(.25)}.fx-banner.lose b{color:#cfd4d0}.fx-banner i{position:absolute;width:24px;height:24px;left:calc(8% + var(--i) * 15%);top:14%;background:#fff3b0;clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);animation:fx-twinkle .7s ease-in-out infinite alternate;animation-delay:calc(var(--i) * 90ms)}.fx-banner i:nth-of-type(2n){top:auto;bottom:calc(8% + var(--i) * 6%)}@keyframes fx-banner{0%{opacity:0;transform:translate(-50%) scale(1.7)}16%{opacity:1;transform:translate(-50%) scale(1)}78%{opacity:1;transform:translate(-50%) scale(1)}to{opacity:0;transform:translate(-50%) translateY(-14px) scale(.92)}}@keyframes fx-twinkle{0%{transform:scale(.4) rotate(0);opacity:.4}to{transform:scale(1.1) rotate(25deg);opacity:1}}#field{--anchor: translate(-50%, -50%) scaleX(var(--field-aspect-inverse, 1))}#field .fx-num,#field .fx-burst,#field .fx-puff,#field .fx-chip,#field .fx-landing,#field .fx-combo{position:absolute;z-index:7;pointer-events:none;transform:var(--anchor);white-space:nowrap}#field .fx-num{font:900 27px/1 Hiragino Sans,Hiragino Kaku Gothic ProN,Yu Gothic,Meiryo,system-ui,sans-serif;font-variant-numeric:tabular-nums;color:#fffaf0;text-shadow:-2px 0 #2b1a14,2px 0 #2b1a14,0 -2px #2b1a14,0 2px #2b1a14,-2px -2px #2b1a14,2px 2px #2b1a14,-2px 2px #2b1a14,2px -2px #2b1a14,0 4px 5px #0006;animation:fx-num-pop .75s ease-out forwards}#field .fx-num.heavy{font-size:42px;color:#ffd84a;text-shadow:-3px 0 #7a2a00,3px 0 #7a2a00,0 -3px #7a2a00,0 3px #7a2a00,-2px -2px #7a2a00,2px 2px #7a2a00,-2px 2px #7a2a00,2px -2px #7a2a00,0 5px 6px #0007;animation:fx-num-heavy .9s ease-out forwards}#field .fx-num.ally{font-size:20px;color:#ff7a6b;text-shadow:-2px 0 #3a0f0b,2px 0 #3a0f0b,0 -2px #3a0f0b,0 2px #3a0f0b,0 3px 4px #0006}#field .fx-num.heal{font-size:22px;color:#8cf0a2;text-shadow:-2px 0 #0e3a1b,2px 0 #0e3a1b,0 -2px #0e3a1b,0 2px #0e3a1b,0 3px 4px #0006}#field .fx-num.base{font-size:32px;color:#ff5b4a;text-shadow:-3px 0 #3a0a06,3px 0 #3a0a06,0 -3px #3a0a06,0 3px #3a0a06,0 5px 6px #0007;animation:fx-num-heavy 1.1s ease-out forwards}@keyframes fx-num-pop{0%{opacity:0;transform:var(--anchor) scale(.6)}14%{opacity:1;transform:var(--anchor) translateY(-6px) scale(1.25)}30%{transform:var(--anchor) translateY(-12px) scale(1)}to{opacity:0;transform:var(--anchor) translateY(-30px) scale(1)}}@keyframes fx-num-heavy{0%{opacity:0;transform:var(--anchor) scale(.5)}14%{opacity:1;transform:var(--anchor) translateY(-8px) scale(1.5)}30%{transform:var(--anchor) translateY(-14px) scale(1.1)}to{opacity:0;transform:var(--anchor) translateY(-38px) scale(1.1)}}#field .fx-burst{width:150px;height:150px;animation:fx-burst .55s ease-out forwards}#field .fx-burst.boss{width:260px;height:260px;animation-duration:.8s}#field .fx-burst.small{width:76px;height:76px;animation-duration:.4s}#field .fx-burst svg{display:block;width:100%;height:100%;overflow:visible}#field .fx-burst circle{stroke:#fff6c8}#field .fx-burst path{fill:#ffd54a;stroke:#fff6c8;stroke-width:.12}#field .fx-burst.boss path{fill:#fff1a8}@keyframes fx-burst{0%{opacity:1;transform:var(--anchor) scale(.25) rotate(0)}60%{opacity:.9}to{opacity:0;transform:var(--anchor) scale(1.35) rotate(24deg)}}#field .fx-puff{width:54px;height:40px;border-radius:50%;background:radial-gradient(#d8dcd6e6,#9ea59f80 60%,transparent 72%);animation:fx-puff .9s ease-out forwards}@keyframes fx-puff{0%{opacity:.95;transform:var(--anchor) scale(.4)}to{opacity:0;transform:var(--anchor) translateY(-10px) scale(1.7)}}#field .fx-chip.miss{background:#3a3f3ccc;color:#d9ded6;font-size:15px;letter-spacing:.08em}#field .fx-chip{padding:2px 9px;border-radius:10px;background:#2f3532e6;border:1px solid #aeb7b0;color:#f2f5f0;font:800 13px/16px Hiragino Sans,Hiragino Kaku Gothic ProN,system-ui,sans-serif;animation:fx-chip 1.5s ease-out forwards}@keyframes fx-chip{0%{opacity:0;transform:var(--anchor) translateY(4px)}12%{opacity:1;transform:var(--anchor)}70%{opacity:1}to{opacity:0;transform:var(--anchor) translateY(-18px)}}#field .fx-landing{width:0;height:0;animation:fx-landing .8s linear forwards}#field .fx-landing:before,#field .fx-landing:after{content:"";position:absolute;left:0;top:0;translate:-50% -50%;border-radius:50%}#field .fx-landing:before{width:76px;height:46px;border:4px solid #fff6c8;box-shadow:0 0 8px #fff6c8aa;animation:fx-landing-ring .6s ease-out forwards}#field .fx-landing:after{width:70px;height:42px;background:radial-gradient(#e6d9b3d0,#cdbd8c66 55%,transparent 70%);animation:fx-landing-dust .8s ease-out forwards}@keyframes fx-landing{to{opacity:.99}}@keyframes fx-landing-ring{0%{opacity:1;scale:.25}to{opacity:0;scale:1.4}}@keyframes fx-landing-dust{0%{opacity:.9;scale:.3}to{opacity:0;scale:1.6}}#field .fx-combo{--grow: 1;font:900 italic calc(22px * var(--grow)) / 1 "Hiragino Sans","Hiragino Kaku Gothic ProN",system-ui,sans-serif;letter-spacing:.04em;color:#fff0a0;text-shadow:-3px 0 #8a3200,3px 0 #8a3200,0 -3px #8a3200,0 3px #8a3200,-2px -2px #8a3200,2px 2px #8a3200,-2px 2px #8a3200,2px -2px #8a3200,0 5px 6px #0007;animation:fx-combo 1.3s ease-out forwards}@keyframes fx-combo{0%{opacity:0;transform:var(--anchor) rotate(-6deg) scale(.5)}12%{opacity:1;transform:var(--anchor) rotate(-6deg) scale(1.3)}24%{transform:var(--anchor) rotate(-6deg) scale(1)}78%{opacity:1}to{opacity:0;transform:var(--anchor) translateY(-24px) rotate(-6deg) scale(1)}}.unit-health span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;background:none;border:0}.unit-health{--hp: 1;transition:opacity .2s}.unit-health i{position:relative;width:40px;height:8px;margin:0 auto;border:2px solid #f1f7e6;border-radius:5px;background:#16261f;box-shadow:0 1px 3px #0009}.unit-health.ai i{border-color:#2a1511;box-shadow:0 1px 3px #000a,0 0 0 1px #ffb4a233}.unit-health i:before{content:"";position:absolute;inset:0 auto 0 0;width:calc(var(--hp) * 100%);background:#fffbe8;transition:width .3s ease-out .3s}.unit-health b{position:relative;border-radius:3px;background:linear-gradient(#fff5,#fff0 60%),var(--health);transition:width .12s ease-out}.unit-health.ai b{background:linear-gradient(#fff4,#fff0 60%),linear-gradient(90deg,#ff9a4a,#e5402f)}.unit-health.ai.full:not(.boss){opacity:.5}.unit-health.ai:before{content:"";position:absolute;left:-9px;top:50%;width:13px;height:13px;translate:0 -50%;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M2 2l6 5h8l6-5-1 9c0 6-4 11-9 11S3 17 3 11Z' fill='%23c4352a' stroke='%232a1511' stroke-width='2.4' stroke-linejoin='round'/%3E%3Ccircle cx='9' cy='13' r='1.8' fill='%23fff'/%3E%3Ccircle cx='15' cy='13' r='1.8' fill='%23fff'/%3E%3C/svg%3E") center / contain no-repeat}.unit-health.boss i{width:62px;height:10px;border-radius:6px}.unit-health.boss:before{content:"BOSS";position:absolute;left:50%;top:auto;bottom:calc(100% + 3px);width:auto;height:auto;translate:-50% 0;padding:2px 6px 2px 19px;border:1.5px solid #ffd24a;border-radius:7px;background:#8a1f1a url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 18.5 1.8 7.500l5.7 4.5L12 4l4.5 8 5.7-4.5L21 18.5Z' fill='%23ffd24a'/%3E%3C/svg%3E") 3px 50% / 14px 14px no-repeat;color:#ffeab0;font:900 10px/12px Hiragino Sans,system-ui,sans-serif;letter-spacing:.08em}.unit-health .battle-relocation-status{left:calc(100% - 2px);top:-3px;padding:0 4px;border:1px solid #8fb48a;border-radius:7px;background:#1e342a;color:#e6f3d8;font:800 10px/13px Hiragino Sans,system-ui,sans-serif;letter-spacing:0}.unit-health[data-relocation=used] .battle-relocation-status{opacity:.55}.base-health{opacity:.8}.field-icon:active:not(:disabled){scale:.91}#app[data-phase=preparation] #assault:not(:disabled){border-color:#ffe499;animation:assault-glow 1.7s ease-in-out infinite}@keyframes assault-glow{0%,to{box-shadow:0 4px 18px #15372930,0 0 #ffd24a00}50%{box-shadow:0 4px 18px #15372930,0 0 0 7px #ffd24a88,0 0 22px 4px #ffd24a66}}.fx-special{position:absolute;z-index:6;display:grid;justify-items:center;gap:1px;min-width:150px;padding:6px 16px 8px;border:2px solid #ffd96a;border-radius:14px;background:linear-gradient(#1c3a2cf2,#14281ff2);box-shadow:0 6px 22px #000a,0 0 18px #ffd96a66;color:#fff8de;text-align:center;white-space:nowrap;transform:translate(-50%,-100%);font-family:Hiragino Sans,Hiragino Kaku Gothic ProN,Yu Gothic,Meiryo,system-ui,sans-serif}.fx-special.pop{animation:fx-special 1.9s ease-out forwards}.fx-special small{font-size:14px;font-weight:800;letter-spacing:.12em;color:#ffe9a8}.fx-special b{font-size:40px;font-weight:900;font-style:italic;line-height:1.05;letter-spacing:.02em;color:#fff;text-shadow:-2px 0 #7a3b00,2px 0 #7a3b00,0 -2px #7a3b00,0 2px #7a3b00,0 4px 6px #0008}.fx-special span{font-size:18px;font-weight:800;font-variant-numeric:tabular-nums;color:#ffd84a}.fx-special i{margin-top:2px;padding:1px 12px;border-radius:999px;background:#e2402e;border:1.5px solid #fff3d6;font-size:17px;font-style:normal;font-weight:900}.fx-special[hidden],.fx-special [hidden]{display:none}.fx-special[data-empty=true]{border-color:#aeb7b0;box-shadow:0 6px 22px #000a}.fx-special[data-empty=true] b{font-size:24px;color:#d6dcd4;text-shadow:none}@keyframes fx-special{0%{opacity:0;scale:.55}10%{opacity:1;scale:1.2}20%{scale:1}80%{opacity:1}to{opacity:0}}@media(max-width:600px){.fx-special{min-width:128px;padding:4px 12px 6px}.fx-special b{font-size:32px}.fx-special span{font-size:16px}.fx-special i{font-size:15px}}#field .fx-burst.special{width:230px;height:230px;animation-duration:.75s}#field .fx-burst.special circle{stroke:#ffb347;stroke-width:7}#field .fx-burst.special path{fill:#ff7a3c;stroke:#fff3c4}.fx-coin.special{background:#5a1d3ee6;border-color:#ff9ed8;color:#ffe0f2;box-shadow:0 0 10px #ff9ed8aa}@media(prefers-reduced-motion:reduce){#field .fx-num,#field .fx-num.heavy,#field .fx-num.base,#field .fx-burst,#field .fx-puff,#field .fx-chip,#field .fx-combo{animation:fx-fade .6s ease-out forwards}.fx-special.pop{animation:fx-fade 1.9s ease-out forwards}#field .fx-landing:before,#field .fx-landing:after{animation:none;opacity:.6}.fx-banner{animation:fx-fade-banner 1.3s ease-out forwards}.fx-banner i,.bhud-castle[data-level=low],.bhud-crown[data-state=alive],#app[data-phase=preparation] #assault:not(:disabled){animation:none}#app[data-phase=preparation] #assault:not(:disabled){box-shadow:0 4px 18px #15372930,0 0 0 5px #ffd24a88}.unit-health i:before,.bhud-trail{transition-duration:0s;transition-delay:0s}}@keyframes fx-fade{0%{opacity:0}15%{opacity:1}to{opacity:0}}@keyframes fx-fade-banner{0%{opacity:0;transform:translate(-50%)}15%,80%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%)}}.fx-special.compact{display:block;min-width:0;padding:6px 12px;border-radius:12px}.fx-special.compact b{font-size:15px;font-style:normal;line-height:1.2;letter-spacing:0;text-shadow:0 1px 2px #000a}.fx-special.compact[data-empty=true] b{font-size:15px}
