:root{--u: clamp(12px, min(1.05vw, 1.9vh), 19px);--fs-xs: max(11px, calc(var(--u) * .95));--fs: max(13px, calc(var(--u) * 1.25));--fs-l: max(16px, calc(var(--u) * 1.6));--fs-xl: max(20px, calc(var(--u) * 2.2));--fs-xxl: max(28px, calc(var(--u) * 3.6));--paper: #e9dcc0;--paper-2: #cfc2a6;--paper-3: #fff8ea;--ink: #2a211a;--ink-2: #5e5646;--shadow: rgba(30, 22, 16, .45);--heal: #5b7a3a;--grow: #a8452a;--util: #4b5e7a;--danger: #8e2f2a;--gold: #c9a84a;--gold-2: #d6a63a;--doom: #7a4fd6;--heal-bg: #d9dcc0;--grow-bg: #e8d2bd;--util-bg: #d8dbe3;--backdrop: rgba(20, 15, 10, .62);--font: "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;--bw: max(2px, calc(var(--u) * .2));--border: var(--bw) solid var(--ink);--lift: calc(var(--u) * .3) calc(var(--u) * .3) 0 var(--shadow);--lift-sm: calc(var(--u) * .2) calc(var(--u) * .2) 0 var(--shadow);--gap: calc(var(--u) * .8);--pad: calc(var(--u) * 1);--bar-h: calc(var(--u) * 1.1);--z-back: -1;--z-base: 1;--z-bar: 10;--z-float: 20;--z-drop: 30;--z-modal: 40;--z-toast: 50;--safe-t: env(safe-area-inset-top, 0px);--safe-b: env(safe-area-inset-bottom, 0px);--safe-l: env(safe-area-inset-left, 0px);--safe-r: env(safe-area-inset-right, 0px)}@media(orientation:portrait){:root{--u: clamp(12px, 3.4vw, 18px)}}@media(orientation:landscape)and (max-height:560px){:root{--u: clamp(9px, 2.1vh, 12px)}}@font-face{font-family:Noto Sans SC;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/noto-sans-sc-chinese-simplified-500-normal-z_irmif2.woff2) format("woff2"),url(/assets/noto-sans-sc-chinese-simplified-500-normal-CtDGG6sn.woff) format("woff")}@font-face{font-family:Noto Sans SC;font-style:normal;font-display:swap;font-weight:900;src:url(/assets/noto-sans-sc-chinese-simplified-900-normal-Di-dyiBb.woff2) format("woff2"),url(/assets/noto-sans-sc-chinese-simplified-900-normal-BgOe1Og4.woff) format("woff")}@font-face{font-family:Noto Sans SC;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/noto-sans-sc-latin-500-normal-JVPArRf3.woff2) format("woff2"),url(/assets/noto-sans-sc-latin-500-normal-Bo6Vh9-d.woff) format("woff")}@font-face{font-family:Noto Sans SC;font-style:normal;font-display:swap;font-weight:900;src:url(/assets/noto-sans-sc-latin-900-normal-DBVNDsAU.woff2) format("woff2"),url(/assets/noto-sans-sc-latin-900-normal-XEWStAI8.woff) format("woff")}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}html,body{height:100%;overflow:hidden;overscroll-behavior:none;background:#2a2d24;color:var(--ink);font-family:var(--font);font-weight:500;font-size:var(--fs);line-height:1.5;touch-action:manipulation}body{user-select:none;-webkit-user-select:none}input,textarea{user-select:text;-webkit-user-select:text}#app{position:fixed;inset:0;overflow:hidden}img{display:block;max-width:none}.px{image-rendering:pixelated;image-rendering:crisp-edges}button{font:inherit;color:inherit;cursor:pointer;border:0;background:none;text-align:inherit}button:disabled{cursor:not-allowed;opacity:.45}:focus{outline:none}:focus-visible{outline:var(--bw) solid var(--gold-2);outline-offset:calc(var(--bw) * .5)}h1,h2,h3,h4,h5{font-weight:900;line-height:1.2}p{text-wrap:pretty}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important}}*{scrollbar-width:thin;scrollbar-color:var(--ink-2) var(--paper-2)}::-webkit-scrollbar{width:calc(var(--u) * .6);height:calc(var(--u) * .6)}::-webkit-scrollbar-track{background:var(--paper-2)}::-webkit-scrollbar-thumb{background:var(--ink-2);border:2px solid var(--paper-2)}.panel{background:var(--paper);border:var(--border);box-shadow:var(--lift);color:var(--ink);min-width:0;min-height:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:calc(var(--u) * .5);min-height:calc(var(--u) * 3.4);padding:0 calc(var(--u) * 1.4);font-weight:900;font-size:var(--fs);line-height:1.2;text-align:center;background:var(--paper);border:var(--border);box-shadow:var(--lift-sm);transition:transform .08s,box-shadow .08s}.btn:hover:not(:disabled){transform:translate(-1px,-1px)}.btn:active:not(:disabled){transform:translate(2px,2px);box-shadow:1px 1px 0 var(--shadow)}.btn.primary{background:var(--gold)}.btn.danger{background:var(--danger);color:#fff}.btn.sm{min-height:calc(var(--u) * 2.6);padding:0 calc(var(--u) * 1);font-size:var(--fs-xs)}.btn.block{width:100%}.btn.sidebtn{flex-direction:column;gap:0;min-height:calc(var(--u) * 4.4);min-width:calc(var(--u) * 4.4);padding:calc(var(--u) * .3);font-size:var(--fs-xs)}.btn.sidebtn .ico{font-size:var(--fs-l);line-height:1}.btn[aria-pressed=true]{background:var(--ink);color:var(--paper)}.bar{display:block;position:relative;height:var(--bar-h);background:var(--paper-2);border:calc(var(--bw) * .7) solid var(--ink);overflow:hidden;min-width:0}.bar>i{position:absolute;left:0;top:0;bottom:0;width:var(--v, 0%);background:var(--c, var(--gold));transition:width .4s ease}.tag{display:inline-block;padding:0 calc(var(--u) * .6);font-size:var(--fs-xs);font-weight:900;color:#fff;background:var(--ink);line-height:1.6;white-space:nowrap}.tag.you{background:var(--heal)}.tag.ai{background:var(--util)}.tag.act{background:var(--gold);color:var(--ink)}.tag.down,.tag.bad{background:var(--danger)}.tag.new{background:var(--grow)}.ribbon{display:flex;align-items:center;justify-content:space-between;gap:calc(var(--u) * .6);padding:calc(var(--u) * .4) var(--pad);font-size:var(--fs);font-weight:900;color:#fff;border-bottom:var(--border)}.ribbon.is-ally{background:var(--heal)}.ribbon.is-foe{background:var(--danger)}.cap{font-size:var(--fs-xs);color:var(--ink-2);line-height:1.4}.seg{display:flex;overflow-x:auto;overscroll-behavior:contain;border:var(--border);background:var(--paper-2)}.seg>button{flex:1 0 auto;min-height:calc(var(--u) * 3.2);padding:0 calc(var(--u) * 1.2);font-weight:900;white-space:nowrap;text-align:center}.seg>button+button{border-left:calc(var(--bw) * .7) solid var(--ink)}.seg>button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.input{width:100%;min-height:calc(var(--u) * 3.4);padding:0 calc(var(--u) * 1);font:inherit;font-weight:700;color:var(--ink);background:var(--paper-3);border:var(--border);border-radius:0}.field{display:grid;gap:calc(var(--u) * .4);min-width:0}.field>label,.field>.lab{font-size:var(--fs-xs);font-weight:900;color:var(--ink-2)}.modal-layer{position:fixed;inset:0;z-index:var(--z-modal);display:grid;place-items:center;padding:calc(var(--u) * 1.2 + var(--safe-t)) calc(var(--u) * 1.2 + var(--safe-r)) calc(var(--u) * 1.2 + var(--safe-b)) calc(var(--u) * 1.2 + var(--safe-l));background:var(--backdrop)}.modal{display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:min(var(--mw, 60ch),100%);max-height:100%;background:var(--paper);border:var(--border);box-shadow:var(--lift)}.modal.lg{--mw: min(110ch, 100%)}.modal.sm{--mw: 44ch}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:var(--gap);padding:calc(var(--u) * .8) var(--pad);border-bottom:var(--border);background:var(--paper-2)}.modal-head h2{font-size:var(--fs-l)}.modal-body{padding:var(--pad);overflow:auto;overscroll-behavior:contain;display:grid;gap:var(--gap);align-content:start}.modal-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:var(--gap);padding:calc(var(--u) * .8) var(--pad);border-top:var(--border);background:var(--paper-2)}.modal-actions>.btn{flex:0 1 auto}.lang{display:inline-flex;border:var(--border);background:var(--paper)}.lang button{min-height:calc(var(--u) * 2.6);padding:0 calc(var(--u) * .9);font-size:var(--fs-xs);font-weight:900}.lang button+button{border-left:calc(var(--bw) * .7) solid var(--ink)}.lang button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.sec{display:grid;gap:calc(var(--u) * .4)}.sec>h3{font-size:var(--fs);color:var(--ink-2)}.sec>p{font-size:var(--fs);line-height:1.65}.sprite{position:relative;overflow:hidden;flex:none}.card{position:relative;display:grid;grid-template-rows:auto auto 1fr auto;gap:calc(var(--u) * .4);text-align:center;background:var(--paper);border:var(--border);box-shadow:var(--lift-sm);padding:0 calc(var(--u) * .6) calc(var(--u) * .6);transition:transform .12s}.card .band{display:flex;align-items:center;justify-content:space-between;gap:calc(var(--u) * .4);margin:0 calc(var(--u) * -.6);padding:calc(var(--u) * .2) calc(var(--u) * 2.2) calc(var(--u) * .2) calc(var(--u) * .6);color:#fff;font-weight:900;font-size:var(--fs-xs);border-bottom:var(--border)}.card .band .chap{font-weight:500;opacity:.9}.card .cost{position:absolute;right:calc(var(--u) * -.7);top:calc(var(--u) * -.7);display:grid;place-items:center;width:calc(var(--u) * 2.2);height:calc(var(--u) * 2.2);background:var(--paper);border:var(--border);border-radius:50%;font-weight:900;font-size:var(--fs)}.card .art{display:grid;place-items:start center;padding-top:calc(var(--u) * .3);height:calc(var(--u) * 5.2);margin:0 calc(var(--u) * -.6);border-bottom:var(--border)}.card .art img{height:calc(var(--u) * 3);width:auto;filter:drop-shadow(2px 2px 0 rgba(0,0,0,.3))}.card .name{min-width:0;overflow-wrap:anywhere}.card .name h4{font-size:max(12px,calc(var(--u) * 1.1))}.card .name small{display:block;font-size:var(--fs-xs);color:var(--ink-2)}.card .desc{display:none;font-size:var(--fs);line-height:1.55}.card .fx{align-self:end;justify-self:center;padding:0 calc(var(--u) * .6);font-size:var(--fs-xs);font-weight:900;line-height:1.5;color:#fff;border:calc(var(--bw) * .7) solid var(--ink)}.card .art{position:relative}.card .hint{position:absolute;left:0;right:0;bottom:0;text-align:center;font-size:var(--fs-xs);font-weight:900;line-height:1.5;background:var(--paper-2);color:var(--ink);border-top:calc(var(--bw) * .7) solid var(--ink)}.card.is-cure .hint{background:var(--gold)}.card.is-bad .hint{background:var(--danger);color:#fff}.card.heal .band,.card.heal .fx{background:var(--heal)}.card.heal .art{background:var(--heal-bg) repeating-linear-gradient(45deg,transparent 0 8px,rgba(91,122,58,.14) 8px 10px)}.card.grow .band,.card.grow .fx{background:var(--grow)}.card.grow .art{background:var(--grow-bg) radial-gradient(circle at 50% 100%,rgba(168,69,42,.3),transparent 60%)}.card.grow{border-radius:calc(var(--u) * 1.2) calc(var(--u) * 1.2) 0 0}.card.grow .band{border-radius:calc(var(--u) * .9) calc(var(--u) * .9) 0 0}.card.util .band,.card.util .fx{background:var(--util)}.card.util .art{background:var(--util-bg)}.card.util{border-style:double;border-width:calc(var(--bw) * 1.6)}.card.sz-hand{width:calc(var(--u) * 11.5);height:100%;flex:none}.card.sz-hand:hover:not(:disabled){transform:translateY(calc(var(--u) * -.5))}.card.sz-hand.sel{transform:translateY(calc(var(--u) * -1));outline:var(--bw) solid var(--gold-2);outline-offset:calc(var(--bw) * .6)}.card.sz-hand.is-cure{box-shadow:0 0 0 calc(var(--bw) * .7) var(--gold-2),var(--lift-sm)}.card.sz-hand.is-bad{filter:grayscale(.85) brightness(.85)}.card:disabled:not(.sel){opacity:.55}.card.sz-big{width:calc(var(--u) * 17);min-height:calc(var(--u) * 24);cursor:pointer;padding-bottom:calc(var(--u) * .8)}.card.sz-big .art{height:calc(var(--u) * 7)}.card.sz-big .desc{display:block;font-size:var(--fs-xs)}.card.sz-big .fx{font-size:var(--fs)}.card.sz-big:hover{outline:var(--bw) solid var(--gold-2);outline-offset:calc(var(--bw) * .6)}.learn{display:grid;grid-template-columns:auto minmax(0,1fr);gap:calc(var(--u) * 1.6);align-items:start}.learn-art{display:grid;place-items:center;padding:var(--pad);background:var(--paper-2);border:var(--border)}.learn-text{display:grid;gap:calc(var(--u) * 1.2);min-width:0}.cure-group{display:grid;gap:calc(var(--u) * .4);margin-top:calc(var(--u) * .6)}.cure-group .lab{font-size:var(--fs-xs);font-weight:900;color:var(--ink-2)}.cure-list{display:flex;flex-wrap:wrap;gap:calc(var(--u) * .6)}.cure{display:grid;gap:0;padding:calc(var(--u) * .4) calc(var(--u) * .8);background:var(--paper-3);border:var(--border)}.cure[data-kind="ui.learn.fix.perfect"]{border-color:var(--heal);background:var(--heal-bg)}.cure[data-kind="ui.learn.fix.harmful"]{border-color:var(--danger);background:var(--grow-bg)}.cure b{font-size:var(--fs)}@media(orientation:portrait){.learn{grid-template-columns:minmax(0,1fr)}.learn-art{justify-self:start}}.codex{display:grid;gap:var(--gap)}.progress{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:var(--gap);font-weight:900}.codex-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(calc(var(--u) * 11),1fr));gap:var(--gap)}.codex-tile{display:grid;justify-items:center;align-content:start;gap:calc(var(--u) * .3);padding:var(--pad);text-align:center;background:var(--paper-3);border:var(--border);min-height:calc(var(--u) * 11)}.codex-tile:disabled{opacity:.6;background:var(--paper-2)}.codex-tile .q{display:grid;place-items:center;height:calc(var(--u) * 4.5);font-size:var(--fs-xl);font-weight:900;color:var(--ink-2)}.codex-tile b{font-size:var(--fs-xs)}.help-wrap{display:grid;gap:var(--gap)}.dots{display:flex;gap:calc(var(--u) * .6)}.dots i{width:calc(var(--u) * .9);height:calc(var(--u) * .9);border:calc(var(--bw) * .7) solid var(--ink);background:var(--paper-2)}.dots i.on{background:var(--ink)}.alloc{display:grid;gap:var(--gap)}.chips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gap)}.pool{display:grid;gap:calc(var(--u) * .6);align-content:start;padding:var(--pad);background:var(--paper-3);border:var(--border)}.pool.val{background:var(--util-bg)}.pool h3{font-size:var(--fs)}.pool .n{display:flex;align-items:baseline;gap:calc(var(--u) * .5);font-size:var(--fs-xxl);font-weight:900;line-height:1}.pool .n small{font-size:var(--fs-xs);color:var(--ink-2);font-weight:900}.stepper{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:calc(var(--u) * .6)}.stepper output{text-align:center;font-size:var(--fs-xl);font-weight:900}.stepper .btn{min-width:calc(var(--u) * 3.4);padding:0}.row{display:flex;flex-wrap:wrap;gap:var(--gap);justify-content:flex-start}@media(orientation:portrait){.chips{grid-template-columns:minmax(0,1fr)}}.home{position:absolute;inset:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,calc(var(--u) * 46));gap:calc(var(--u) * 2);align-items:center;padding:calc(var(--u) * 2 + var(--safe-t)) calc(var(--u) * 2 + var(--safe-r)) calc(var(--u) * 2 + var(--safe-b)) calc(var(--u) * 2 + var(--safe-l));background:#2d3328;isolation:isolate}.home .bg{position:absolute;inset:0;z-index:var(--z-back);background:url(/assets/battle/backgrounds/12.png) center / cover;image-rendering:pixelated;filter:saturate(.55) brightness(.62) sepia(.15)}.home .bg:after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 40%,transparent 45%,rgba(20,15,10,.7))}.home .intro{align-self:center;justify-self:start;display:grid;gap:var(--gap);width:min(calc(var(--u) * 40),100%);padding:calc(var(--u) * 1.6)}.home .intro h1{font-size:var(--fs-xxl)}.home .intro .sub{font-size:var(--fs);color:var(--ink-2);font-weight:900}.home .intro p{font-size:var(--fs);line-height:1.75}.home .setup{display:grid;grid-template-rows:auto minmax(0,1fr) auto;max-height:100%;align-self:center}.home .setup-body{display:grid;gap:calc(var(--u) * 1);align-content:start;padding:var(--pad);overflow:auto;overscroll-behavior:contain}.home .setup-foot{display:grid;gap:calc(var(--u) * .6);padding:calc(var(--u) * .8) var(--pad);border-top:var(--border);background:var(--paper-2)}.home .credit{font-size:var(--fs-xs);color:var(--ink-2)}.stack{display:grid}.stack>*{grid-area:1 / 1}.stack>.off{visibility:hidden}.party{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:calc(var(--u) * .5)}.seat{display:grid;justify-items:center;gap:calc(var(--u) * .2);padding:calc(var(--u) * .5) calc(var(--u) * .2);background:var(--paper-3);border:calc(var(--bw) * .7) solid var(--ink);font-size:var(--fs-xs);font-weight:900;text-align:center;min-width:0}.seat img{width:calc(var(--u) * 3.2);height:calc(var(--u) * 3.2);border:calc(var(--bw) * .7) solid var(--ink);background:var(--paper-2)}.seat.empty{opacity:.35}@media(orientation:portrait){.home{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);align-items:stretch;gap:var(--gap)}.home .intro{width:100%;padding:var(--pad)}.home .intro p{display:none}.home .intro h1{font-size:var(--fs-xl)}.home .setup{align-self:stretch}}@media(orientation:landscape)and (max-height:560px){.home .intro p{display:none}}.map{position:absolute;inset:0;overflow:hidden;background:#3d4a30}.mapview{position:absolute;inset:0;overflow:hidden;touch-action:none;cursor:grab}.mapview.drag{cursor:grabbing}.world{position:absolute;left:0;top:0;width:calc(var(--ww) * 1px);height:calc(var(--wh) * 1px);transform-origin:0 0;transform:translate(calc(var(--px) * 1px),calc(var(--py) * 1px)) scale(var(--z))}.world img{width:100%;height:100%;filter:saturate(.6) brightness(.85)}.world svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}.world svg path{fill:none;stroke-linecap:round;vector-effect:non-scaling-stroke}.world svg .under{stroke:var(--ink);stroke-width:calc(var(--u) * .7);opacity:.55}.world svg .dash{stroke:var(--paper);stroke-width:calc(var(--u) * .35);stroke-dasharray:2 12}.map .tone{position:absolute;inset:0;pointer-events:none;background:linear-gradient(160deg,#3c465a59,#28231e73);mix-blend-mode:multiply}.map .vig{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 50% 45%,transparent 55%,rgba(20,15,10,.55))}.map .fog{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse calc(30% + var(--fog) * 55%) calc(40% + var(--fog) * 40%) at 0% 100%,rgba(120,120,135,.92),transparent),radial-gradient(ellipse calc(22% + var(--fog) * 45%) calc(50% + var(--fog) * 30%) at 0% 40%,rgba(120,120,135,.75),transparent)}.markers{position:absolute;inset:0;pointer-events:none}.marker{position:absolute;left:calc(var(--x) * var(--z) * 1px + var(--px) * 1px);top:calc(var(--y) * var(--z) * 1px + var(--py) * 1px);transform:translate(-50%,-50%);pointer-events:none}.node{display:block;width:calc(var(--u) * 2);height:calc(var(--u) * 2);border-radius:50%;background:var(--danger);border:var(--border);box-shadow:var(--lift-sm);pointer-events:none}.node.done{background:#7a6338}.node.goal{width:calc(var(--u) * 3.2);height:calc(var(--u) * 3.2);background:var(--gold)}.node.here{width:calc(var(--u) * 3);height:calc(var(--u) * 3);background:var(--heal);box-shadow:0 0 0 calc(var(--u) * .5) #5b7a3a66;pointer-events:auto;cursor:pointer;animation:pulse 1.4s infinite}@keyframes pulse{0%,to{box-shadow:0 0 0 calc(var(--u) * .3) #5b7a3a8c}50%{box-shadow:0 0 0 calc(var(--u) * .9) #5b7a3a00}}.nlabel{transform:translate(-50%,calc(-100% - var(--u) * 2.2));padding:calc(var(--u) * .2) calc(var(--u) * .8);font-size:var(--fs-xs);font-weight:900;white-space:nowrap;background:var(--paper);border:calc(var(--bw) * .7) solid var(--ink)}.rlabel{transform:translate(-50%,-50%);padding:calc(var(--u) * .4) calc(var(--u) * 1.2);font-size:var(--fs-l);font-weight:900;white-space:nowrap;background:var(--paper);border:var(--border);box-shadow:var(--lift-sm)}.map-hero{transform:translate(-50%,-88%);filter:drop-shadow(2px 2px 0 var(--ink))}.nlabel.below{transform:translate(-50%,calc(var(--u) * 2.2))}.map-ui{position:absolute;inset:0;pointer-events:none;display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-rows:auto minmax(0,1fr) auto;grid-template-areas:"top top top" "left . right" "bottom bottom bottom";gap:var(--gap);padding:calc(var(--u) * .8 + var(--safe-t)) calc(var(--u) * .8 + var(--safe-r)) calc(var(--u) * .8 + var(--safe-b)) calc(var(--u) * .8 + var(--safe-l))}.map-ui>*{pointer-events:auto}.map-top{grid-area:top;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--gap);padding:calc(var(--u) * .6) var(--pad)}.map-top .title{display:grid;gap:calc(var(--u) * .2);min-width:0}.map-top .title b{font-size:var(--fs-l)}.map-top .title .bar{width:calc(var(--u) * 18);max-width:100%}.stats{display:flex;flex-wrap:wrap;align-items:center;gap:calc(var(--u) * 1.2)}.meter{display:grid;grid-template-columns:auto auto;grid-template-rows:auto auto;column-gap:calc(var(--u) * .5);align-items:center;font-weight:900;min-width:0}.meter .lab{font-size:var(--fs-xs);color:var(--ink-2)}.meter b{font-size:var(--fs);justify-self:end}.meter .bar{grid-column:1 / 3;width:calc(var(--u) * 8)}.side{display:grid;gap:calc(var(--u) * .6);align-content:start}.side.left{grid-area:left}.side.right{grid-area:right}.map-bottom{grid-area:bottom;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--gap);padding:calc(var(--u) * .7) var(--pad)}.map-bottom .party-mini{display:flex;flex-wrap:wrap;gap:calc(var(--u) * .8);align-items:center;min-width:0}.mini{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:calc(var(--u) * .5);font-size:var(--fs-xs);font-weight:900;line-height:1.3}.mini img{width:calc(var(--u) * 3);height:calc(var(--u) * 3);border:calc(var(--bw) * .7) solid var(--ink);background:var(--paper-2)}.ahead{display:grid;gap:calc(var(--u) * .2);min-width:0}.ahead .cap b{color:var(--ink)}.map-bottom .btn.go{min-height:calc(var(--u) * 4);font-size:var(--fs-l)}@media(orientation:portrait){.map-top{padding:calc(var(--u) * .4) calc(var(--u) * .8);gap:calc(var(--u) * .4)}.map-top .title .bar{display:none}.map-bottom{grid-template-columns:minmax(0,1fr) auto;padding:calc(var(--u) * .5) calc(var(--u) * .8)}.map-bottom .mini{display:none}.map-bottom .btn.go{min-height:calc(var(--u) * 3.4);font-size:var(--fs)}.stats{gap:calc(var(--u) * .8)}.meter .bar{width:calc(var(--u) * 6)}}.battle{position:absolute;inset:0;display:grid;gap:var(--gap);padding:calc(var(--u) * .8 + var(--safe-t)) calc(var(--u) * .8 + var(--safe-r)) calc(var(--u) * .8 + var(--safe-b)) calc(var(--u) * .8 + var(--safe-l));background:#2d3328;grid-template-columns:minmax(0,calc(var(--u) * 24)) minmax(0,1fr) minmax(0,calc(var(--u) * 26));grid-template-rows:auto minmax(0,1fr) calc(var(--u) * 20.5);grid-template-areas:"top top top" "ally scene foe" "hand hand act"}.mid,.info{display:contents}.topbar{grid-area:top;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--gap) calc(var(--u) * 1.4);padding:calc(var(--u) * .5) var(--pad)}.topbar .where{display:grid;gap:calc(var(--u) * .1);min-width:0}.topbar .where b{font-size:var(--fs-l);line-height:1.2}.topbar .where .cap{font-size:var(--fs-xs)}.topbar .group{display:flex;flex-wrap:wrap;align-items:center;gap:calc(var(--u) * 1.2)}.topbar .tools{display:flex;flex-wrap:wrap;align-items:center;gap:calc(var(--u) * .6)}.ally,.foe{display:grid;grid-template-rows:auto minmax(0,1fr);min-height:0}.ally{grid-area:ally}.foe{grid-area:foe}.side-body{display:grid;gap:calc(var(--u) * 1);align-content:start;padding:var(--pad);overflow:auto;overscroll-behavior:contain}.panel.ally{border-color:var(--heal)}.panel.foe{border-color:var(--danger)}.party-list{display:grid;gap:calc(var(--u) * .5)}.prow{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"img who" "img hp";column-gap:calc(var(--u) * .7);row-gap:calc(var(--u) * .1);align-items:center;padding:calc(var(--u) * .4);border:calc(var(--bw) * .7) solid var(--paper-2);background:var(--paper-3)}.prow img{grid-area:img}.prow .who{grid-area:who}.prow .meter{grid-area:hp;grid-template-columns:1fr auto}.prow .meter .bar{grid-column:1 / 3;width:100%}.prow.acting{border-color:var(--ink);background:var(--gold)}.prow.down{opacity:.5}.prow img{width:calc(var(--u) * 3);height:calc(var(--u) * 3);border:calc(var(--bw) * .7) solid var(--ink);background:var(--paper-2)}.prow .who{display:flex;flex-wrap:wrap;align-items:center;gap:calc(var(--u) * .4);font-weight:900;line-height:1.3}.stat{display:grid;gap:calc(var(--u) * .2)}.stat .line{display:flex;justify-content:space-between;align-items:baseline;gap:calc(var(--u) * .6);font-weight:900}.stat .line b{font-size:var(--fs-l)}.stat.gap b{color:var(--danger)}.model-h{display:flex;justify-content:space-between;align-items:baseline;gap:var(--gap);font-weight:900}.facts{display:flex;flex-wrap:wrap;gap:calc(var(--u) * .4) calc(var(--u) * 1);font-size:var(--fs-xs);color:var(--ink-2);font-weight:900}.afflictions{display:flex;flex-wrap:wrap;gap:calc(var(--u) * .4)}.foe-name{display:grid;gap:calc(var(--u) * .2)}.foe-name b{font-size:var(--fs-xl);line-height:1.15}.foe-name .tech{font-weight:900;color:var(--danger)}.sev{display:flex;align-items:center;justify-content:space-between;gap:var(--gap);padding:calc(var(--u) * .5) calc(var(--u) * .8);background:var(--grow-bg);border:var(--border);font-weight:900}.sev b{font-size:var(--fs-xl);line-height:1}.sev.done{background:var(--heal-bg)}.symptom{font-size:var(--fs);line-height:1.7}.symptom em{font-style:normal;font-weight:900;color:var(--danger)}.scene{grid-area:scene;display:grid;grid-template-rows:minmax(0,1fr) auto;overflow:hidden;background:var(--paper);border:var(--border);box-shadow:var(--lift);min-height:0}.stage{position:relative;container-type:size;overflow:hidden;background:#2d3328;min-height:0}.stage .bg{position:absolute;inset:0;background:var(--bg) center bottom / cover;image-rendering:pixelated;filter:saturate(.55) brightness(.7) contrast(1.05) sepia(.15)}.stage .shade{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 40%,transparent 50%,rgba(20,15,10,.6)),linear-gradient(to top,rgba(120,120,135,.3),transparent 30%)}.actor{position:absolute;bottom:8cqh;display:grid;justify-items:center;filter:saturate(.85) brightness(.95) drop-shadow(0 .5cqh 0 rgba(0,0,0,.3))}.actor.hero{left:20cqw}.actor.pet{left:4cqw;bottom:12cqh}.actor.foe-sprite{right:8cqw}.actor .nm{margin-top:calc(var(--u) * .4);padding:0 calc(var(--u) * .6);font-size:var(--fs-xs);font-weight:900;color:#fff;background:var(--ink);line-height:1.6;white-space:nowrap}.actor.foe-sprite .nm{background:var(--danger)}.actor.hero .nm,.actor.pet .nm{background:var(--heal)}.actor.hit{animation:shake .35s}.actor.cast{animation:cast .4s}.actor.die{animation:die .7s forwards}@keyframes shake{0%,to{translate:0}25%{translate:-1.2cqw 0}75%{translate:1.2cqw 0}}@keyframes cast{0%,to{translate:0}50%{translate:0 -2cqh}}@keyframes die{to{translate:0 2cqh;opacity:0;filter:grayscale(1)}}.log{display:flex;align-items:center;gap:calc(var(--u) * .8);padding:calc(var(--u) * .5) calc(var(--u) * 1);font-weight:900;background:var(--paper);border-top:var(--border);min-height:calc(var(--u) * 3.4)}.log.good{background:var(--heal-bg);border-color:var(--heal)}.log.bad{background:var(--grow-bg);border-color:var(--danger)}.dice{position:absolute;right:calc(var(--u) * .8);top:calc(var(--u) * .8);display:flex;gap:calc(var(--u) * .5)}.die{display:grid;place-items:center;width:calc(var(--u) * 3.2);height:calc(var(--u) * 3.2);font-size:var(--fs-l);font-weight:900;background:var(--paper);border:var(--border);box-shadow:var(--lift-sm);animation:roll .5s}@keyframes roll{0%{transform:rotate(-90deg) translateY(-30px);opacity:0}to{transform:none;opacity:1}}.banner{position:absolute;left:50%;top:28%;translate:-50% 0;padding:calc(var(--u) * .8) calc(var(--u) * 2.4);font-size:var(--fs-xl);font-weight:900;white-space:nowrap;animation:banner 1.5s forwards;pointer-events:none}@keyframes banner{0%{opacity:0;translate:-50% 20%}15%,80%{opacity:1;translate:-50% 0}to{opacity:0;translate:-50% -20%}}.handrow{grid-area:hand;display:grid;grid-template-rows:auto minmax(0,1fr);gap:calc(var(--u) * .3);min-width:0;min-height:0}.hand-head{display:flex;align-items:center;justify-content:space-between;gap:var(--gap)}.hand-head .cap{color:var(--paper);font-weight:900}.hand{display:flex;align-items:stretch;gap:var(--gap);overflow-x:auto;overflow-y:visible;overscroll-behavior:contain;padding:calc(var(--u) * 1.2) calc(var(--u) * .8) calc(var(--u) * .4) calc(var(--u) * .4);min-height:0;scroll-snap-type:x proximity}.hand>.card{scroll-snap-align:start}.hand:empty:after{content:attr(data-empty);align-self:center;padding:calc(var(--u) * .6) var(--pad);background:var(--paper);border:var(--border);font-weight:900}.actcol{grid-area:act;display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:calc(var(--u) * .6);min-height:0}.actbar{display:contents}.energy{order:1;display:flex;align-items:center;justify-content:space-between;gap:var(--gap);padding:calc(var(--u) * .4) calc(var(--u) * .9);font-weight:900}.cardinfo{order:2;display:grid;gap:calc(var(--u) * .3);align-content:start;padding:calc(var(--u) * .6) calc(var(--u) * .9);overflow:auto;overscroll-behavior:contain}.btnrow{order:3;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:calc(var(--u) * .5)}.btnrow .btn{padding:0 calc(var(--u) * .4)}.energy .pips{display:flex;gap:calc(var(--u) * .4)}.energy i{width:calc(var(--u) * 1.3);height:calc(var(--u) * 1.3);border:var(--border);border-radius:50%;background:var(--paper-2)}.energy i.on{background:var(--grow)}.cardinfo b{font-size:var(--fs)}.cardinfo p{font-size:var(--fs-xs);line-height:1.5}.cardinfo .fx{justify-self:start;padding:0 calc(var(--u) * .6);font-size:var(--fs-xs);font-weight:900;color:#fff;background:var(--ink);line-height:1.6}@media(orientation:portrait){.battle{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto auto auto;grid-template-areas:"top" "mid" "cardinfo" "hand" "btns"}.mid{grid-area:mid;display:grid;gap:var(--gap);overflow:auto;overscroll-behavior:contain;align-content:start;min-height:0}.scene{grid-area:auto;height:max(calc(var(--u) * 11),17dvh);order:0}.info{display:grid;gap:var(--gap);order:1}.info>.foe{order:1}.info>.ally{order:2}.ally,.foe{grid-area:auto;grid-template-rows:auto auto}.topbar{display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"back where tools" "group group group";align-items:center;gap:calc(var(--u) * .5) var(--gap)}.topbar>.btn{grid-area:back}.topbar .where{grid-area:where}.topbar .tools{grid-area:tools}.topbar .group{grid-area:group;justify-content:space-between}.handrow{grid-template-rows:auto calc(var(--u) * 17.5)}.card.sz-hand{width:calc(var(--u) * 10)}.card .name small{display:none}.btnrow .btn{font-size:var(--fs-xs)}.actcol{display:contents}.cardinfo{grid-area:cardinfo;max-height:calc(var(--u) * 7)}.actbar{grid-area:btns;display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--gap);align-items:stretch}.energy{gap:calc(var(--u) * .8)}}@media(orientation:landscape)and (max-height:560px){.battle{grid-template-rows:auto minmax(0,1fr) calc(var(--u) * 22)}.card .name small,.card .band .chap{display:none}}.result{position:absolute;inset:0;display:grid;place-items:center;padding:calc(var(--u) * 1.2 + var(--safe-t)) calc(var(--u) * 1.2 + var(--safe-r)) calc(var(--u) * 1.2 + var(--safe-b)) calc(var(--u) * 1.2 + var(--safe-l));background:#2d3328;isolation:isolate}.result .bg{position:absolute;inset:0;z-index:var(--z-back);background:url(/assets/battle/backgrounds/24.png) center / cover;image-rendering:pixelated;filter:saturate(.55) brightness(.55) sepia(.15)}.result .modal{--mw: min(calc(var(--u) * 52), 100%)}.result-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap)}.rstat{display:grid;gap:calc(var(--u) * .2);padding:calc(var(--u) * .8) var(--pad);background:var(--paper-3);border:var(--border)}.rstat small{font-size:var(--fs-xs);color:var(--ink-2);font-weight:900}.rstat b{font-size:var(--fs-xl);line-height:1.1}.exam-row{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(3,minmax(0,1fr));align-items:center;gap:var(--gap);padding:calc(var(--u) * .6) var(--pad);background:var(--paper-3);border:var(--border);font-weight:900}.exam-row.pass{border-color:var(--heal)}.exam-row.fail{border-color:var(--danger)}.exam-row.head{background:var(--paper-2);font-size:var(--fs-xs);color:var(--ink-2);border-color:var(--paper-2)}@media(orientation:portrait){.result-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
