:root{--bg:#1b1712;--panel:#2a231b;--edge:#5b4a30;--gold:#e3b04b;--text:#f2e8d5;--muted:#b9a98a;--ok:#6fbf73;--bad:#e0644f}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;height:100%;background:var(--bg);color:var(--text);font:16px/1.35 system-ui,sans-serif;overflow:hidden;touch-action:manipulation}#app{position:fixed;inset:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;grid-template-columns:1fr}#scene{min-height:0;min-width:0;contain:size;grid-area:2/1;width:100%;height:100%;display:block;outline:none;touch-action:none}#panel{grid-area:2/1;z-index:2;overflow:auto;background:#1b1712f7;padding:12px}#panel[hidden]{display:none}#toast{position:fixed;left:50%;top:64px;transform:translate(-50%);background:var(--gold);color:#222;padding:6px 14px;border-radius:16px;font-weight:600;opacity:0;transition:opacity .2s;pointer-events:none;z-index:10;max-width:90vw;text-align:center}#toast.show{opacity:1}#toast.err{background:var(--bad);color:#fff}button.btn{min-height:44px;padding:8px 14px;background:var(--gold);color:#2a1d08;border:0;border-radius:8px;font:inherit;font-weight:700;cursor:pointer}button.btn.sec{background:#4a3d2a;color:var(--text)}button.btn:disabled{opacity:.45;cursor:default}.card{background:var(--panel);border:1px solid var(--edge);border-radius:10px;padding:10px 12px;margin-bottom:10px}.card h3{margin:0 0 4px;font-size:16px}.card p{margin:2px 0;color:var(--muted);font-size:14px}.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.row.sp{justify-content:space-between}.bar{height:8px;background:#120f0b;border-radius:4px;overflow:hidden}.bar>i{display:block;height:100%;background:var(--gold)}.dock{grid-area:2/1;align-self:end;z-index:2;padding:8px 10px;background:#2a231bf5;border-top:1px solid var(--edge);display:flex;gap:8px;flex-wrap:wrap;max-height:45%;overflow:auto}.dock[hidden]{display:none}h2{margin:4px 0 10px;color:var(--gold);font-size:20px}.grid2{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px}.tag{font-size:12px;padding:2px 8px;border-radius:10px;background:#4a3d2a}.tag.ok{background:var(--ok);color:#122}.tag.open{background:var(--gold);color:#222}.battle{position:fixed;inset:0;z-index:20;background:#14100b;padding:10px 12px calc(10px + env(safe-area-inset-bottom));overflow:auto;display:flex;flex-direction:column;gap:6px}.battle h2{font-size:18px;margin:0}.battle p{margin:0;color:var(--muted)}.field{display:flex;flex-direction:column;gap:6px;max-width:960px;width:100%;margin:0 auto}.brow{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.slot{min-height:64px;border:1px solid var(--edge);border-radius:8px;padding:6px;display:flex;flex-direction:column;justify-content:center;gap:3px;background:var(--panel);font-size:13px}.slot.empty{opacity:.25;border-style:dashed}.slot.cur{outline:2px solid var(--gold)}.slot.target{border-color:var(--bad);cursor:pointer;background:#3b2620;min-height:64px}.slot.hit{animation:hit .3s}@keyframes hit{50%{background:var(--bad)}}.sep{text-align:center;font-size:11px;color:var(--muted)}.battle .row{max-width:960px;margin:0 auto;width:100%}.result{max-width:960px;margin:6px auto;width:100%}@media(orientation:landscape)and (max-height:520px){.slot{min-height:44px;padding:3px 6px}.field{gap:3px}.brow{gap:4px}}#rotate{display:none;position:fixed;inset:0;z-index:100;background:var(--bg);flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:24px;text-align:center}#rotate .phone{width:56px;height:96px;border:4px solid var(--gold);border-radius:10px;animation:rot 2.4s ease-in-out infinite}@keyframes rot{0%,20%{transform:rotate(0)}60%,to{transform:rotate(-90deg)}}@media(orientation:portrait){#rotate{display:flex}}@media(orientation:landscape)and (max-height:520px){#app{grid-template-rows:minmax(0,1fr);grid-template-columns:auto minmax(0,1fr)}#scene,#panel,.dock{grid-area:1/2}#panel{padding-top:44px}.dock{max-height:70%}#toast{top:12px}.battle{padding:6px 10px}}#login{position:fixed;inset:0;z-index:30;background:var(--bg);display:flex;align-items:center;justify-content:center;padding:12px;overflow:auto}#login[hidden]{display:none}#login form{width:min(420px,100%)}#login label{display:block;margin:6px 0 2px;color:var(--muted);font-size:14px}#login input{width:100%;min-height:44px;font-size:16px;padding:6px 10px;background:#17130e;color:var(--text);border:1px solid var(--edge);border-radius:8px}#login .msg{min-height:1.4em;color:var(--bad);margin:8px 0;font-size:14px}#login .msg.info{color:var(--gold)}#login .row{margin-top:8px}.dialog{position:fixed;inset:0;z-index:30;background:#0a0805b8;display:flex;align-items:flex-end;justify-content:center;padding:12px 12px calc(12px + env(safe-area-inset-bottom))}.dialog-box{background:var(--panel);border:1px solid var(--gold);border-radius:12px;padding:12px 14px;width:100%;max-width:720px;display:flex;flex-direction:column;gap:8px}.dialog-text{margin:0;font-size:17px;line-height:1.45}.portrait{width:64px;height:64px;overflow:hidden;border-radius:50%;display:grid;place-items:center;font-weight:700;font-size:20px;color:#fff;border:2px solid var(--gold);flex:none}.battle{isolation:isolate}.battle canvas.stage{position:absolute;inset:0;width:100%;height:100%;z-index:-1;outline:none;touch-action:none;pointer-events:none}.battle .slot{background:#14100b66}.worldmap{display:block;width:100%;height:clamp(220px,52vh,640px);border-radius:8px;margin:6px 0 10px;background:#14100b;touch-action:manipulation;cursor:pointer}.map-wrap{position:relative}.map-popup{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(92%,420px);max-height:90%;overflow:auto;background:#14100bf5;border:1px solid #d9a53a;border-radius:10px;padding:8px;z-index:5;box-shadow:0 8px 30px #000a}@media(min-width:1500px)and (min-height:900px){.card h3{font-size:20px}.card p{font-size:17px}h2{font-size:26px}}.battle{overflow:hidden;padding:6px 10px calc(6px + env(safe-area-inset-bottom))}.battle .field{flex:1;min-height:0;justify-content:space-around;max-width:none;gap:0}.battle .brow{gap:8px;max-width:900px;margin:0 auto;width:100%}.battle .slot{min-height:0;padding:2px 6px;font-size:12px;gap:1px;background:#14100b8c;border-radius:6px;flex-direction:row;flex-wrap:wrap;align-items:center}.battle .slot b{font-size:12px}.battle .slot small{font-size:10px}.battle .slot .bar{flex-basis:100%}.battle .slot.empty{visibility:hidden}.battle .sep{display:none}@media(min-width:1500px)and (min-height:900px){.battle .slot,.battle .slot b{font-size:16px}.battle h2{font-size:24px}.battle p{font-size:18px}}.battle{padding:0}.battle canvas.stage{z-index:0}.stage-ui{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden}.battle .stage-ui .slot{position:absolute;transform:translate(-50%,-100%);width:max-content;max-width:150px;min-height:0;padding:1px 6px 3px;font-size:12px;line-height:1.25;background:#14100b9e;border:1px solid rgba(217,165,58,.35);border-radius:6px;display:grid;grid-template-columns:auto auto;column-gap:6px;align-items:center;justify-content:center;text-align:center;pointer-events:none;transition:outline-color .2s}.battle .stage-ui .slot b{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:90px}.battle .stage-ui .slot .hero-lead{grid-column:1 / -1;font-size:10px;color:var(--gold)}.battle .stage-ui .slot .bar{grid-column:1 / -1;height:5px}.battle .stage-ui .slot.target{border-color:var(--bad);background:#501e18cc;cursor:pointer;pointer-events:auto;min-width:44px;min-height:34px}.battle .stage-ui .slot.hit{animation:hit .3s}.battle .stage-ui .slot.empty{display:none}.stage-ui .dmg{position:absolute;transform:translate(-50%,-50%);font-weight:800;font-size:22px;color:#ff6a4d;text-shadow:0 2px 4px #000;animation:dmgfloat .95s ease-out forwards}@keyframes dmgfloat{0%{opacity:1;margin-top:0}to{opacity:0;margin-top:-48px}}.btop{position:absolute;top:6px;left:10px;right:10px;z-index:3;display:flex;align-items:center;gap:12px;background:#14100b8c;border-radius:8px;padding:3px 10px;pointer-events:none}.btop h2{font-size:15px}.btop p{margin-left:auto;font-size:14px}.bctl{position:absolute;bottom:calc(8px + env(safe-area-inset-bottom));left:50%;transform:translate(-50%);z-index:3;display:flex;gap:8px}.battle .card.result{position:absolute;z-index:5;left:50%;top:50%;transform:translate(-50%,-50%);width:min(90%,420px)}@media(min-width:1500px)and (min-height:900px){.battle .stage-ui .slot,.battle .stage-ui .slot b{font-size:17px;max-width:200px}.battle .stage-ui .slot b{max-width:130px}.btop h2{font-size:24px}.btop p{font-size:20px}.stage-ui .dmg{font-size:32px}}#panel.map-mode{padding:0;overflow:hidden;position:relative;background:#9cc4e4}.map-mode .map-wrap{position:absolute;inset:0}.map-mode canvas.worldmap{position:absolute;inset:0;width:100%;height:100%;margin:0;border-radius:0;touch-action:none;cursor:grab;background:#9cc4e4;display:block}.map-loading{position:absolute;inset:0;display:grid;place-items:center;background:#9cc4e4;color:#14100b;font-weight:700;font-size:18px;pointer-events:none;z-index:2}.map-corner{position:absolute;top:8px;right:8px;z-index:4;display:flex;flex-direction:column;align-items:flex-end;gap:6px;max-width:60%}.map-corner .tag{background:#14100bc7}.conquest-mini{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;background:#14100bc7;border:1px solid var(--edge);border-radius:10px;padding:4px 8px}.conquest-mini .btn{min-height:36px;padding:4px 10px}.map-mode .map-popup{left:auto;right:10px;top:50%;width:min(46%,380px);max-height:calc(100% - 20px);transform:translateY(-50%);z-index:6}@media(max-width:700px),(max-height:520px){.map-mode .map-popup{width:min(52%,340px)}.map-popup .card{margin:0}}@media(min-width:1500px)and (min-height:900px){.map-corner .tag,.conquest-mini .btn{font-size:18px}.map-mode .map-popup{width:min(30%,520px);font-size:18px}}:root{--wood1:#4a3520;--wood2:#2f2214;--metal:#c9a45a;--rail-w:76px;--ico:30px}.ico{width:1.4em;height:1.4em;flex:none;display:inline-block;vertical-align:middle}#app{grid-template-rows:minmax(0,1fr);grid-template-columns:auto minmax(0,1fr)}#scene,#panel,.dock{grid-area:1/2}.badge{position:absolute;top:-5px;right:-5px;min-width:20px;height:20px;padding:0 5px;border-radius:10px;background:var(--bad);color:#fff;font:700 12px/20px system-ui,sans-serif;font-style:normal;text-align:center;border:2px solid #2f2214;animation:pulse 1.6s ease-in-out infinite}@keyframes pulse{50%{transform:scale(1.15)}}#panel{padding-top:56px;animation:panelin .22s ease-out}#panel.map-mode{padding:0}@keyframes panelin{0%{opacity:0;transform:translateY(10px) scale(.99)}}.dock{animation:panelin .18s ease-out;margin:0 8px 8px;border:2px solid #7a5d34;border-radius:12px;background:linear-gradient(180deg,#4a3520f0,#2f2214f5);max-height:70%}.ibtn{display:inline-flex;align-items:center;gap:6px;border:2px solid #fff3c4;box-shadow:0 2px #0008;transition:transform .1s}.ibtn.sec{border-color:#7a5d34}.ibtn:active:not(:disabled){transform:translateY(1px) scale(.97)}#toast{top:12px}@media(min-width:1500px)and (min-height:900px){:root{--rail-w:112px;--ico:44px}.badge{min-width:26px;height:26px;line-height:26px;font-size:15px;border-radius:13px}.ibtn{font-size:19px;min-height:56px}}@media(min-width:1200px)and (max-width:1499px)and (min-height:700px){:root{--rail-w:92px;--ico:36px}}@media(max-height:520px){:root{--rail-w:64px;--ico:26px}#panel{padding-top:40px}#panel.map-mode{padding:0}}html[data-reduce-motion="1"] *,html[data-reduce-motion="1"] *:before,html[data-reduce-motion="1"] *:after{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important}@font-face{font-family:Cinzel;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/cinzel-latin-ext-700-normal-C24KFjuG.woff2) format("woff2"),url(/assets/cinzel-latin-ext-700-normal-CORa-yIv.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cinzel;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/cinzel-latin-700-normal-Dkw14w9r.woff2) format("woff2"),url(/assets/cinzel-latin-700-normal-C-gK7hA8.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/nunito-cyrillic-ext-400-normal-CuPM9foi.woff2) format("woff2"),url(/assets/nunito-cyrillic-ext-400-normal-xaE7D4Sw.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/nunito-cyrillic-400-normal-xAOo5cBP.woff2) format("woff2"),url(/assets/nunito-cyrillic-400-normal-D1j0u8EH.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/nunito-vietnamese-400-normal-BHkVbP3T.woff2) format("woff2"),url(/assets/nunito-vietnamese-400-normal-DtOtW02z.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/nunito-latin-ext-400-normal-i-8OOpdj.woff2) format("woff2"),url(/assets/nunito-latin-ext-400-normal-CjMJVfGn.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/nunito-latin-400-normal-r8SDr6Up.woff2) format("woff2"),url(/assets/nunito-latin-400-normal-DKg4f3fz.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-cyrillic-ext-700-normal-BuR0mlCG.woff2) format("woff2"),url(/assets/nunito-cyrillic-ext-700-normal-DfoqN4Gs.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-cyrillic-700-normal-DP36NgGt.woff2) format("woff2"),url(/assets/nunito-cyrillic-700-normal-DfHRUDv-.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-vietnamese-700-normal-Ch8EUCfz.woff2) format("woff2"),url(/assets/nunito-vietnamese-700-normal-C9SQsXvj.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-latin-ext-700-normal-BWeMsAzO.woff2) format("woff2"),url(/assets/nunito-latin-ext-700-normal-D4woHhbd.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-latin-700-normal-Dort48En.woff2) format("woff2"),url(/assets/nunito-latin-700-normal-OcDqTBcA.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-cyrillic-ext-800-normal-B-cvGohL.woff2) format("woff2"),url(/assets/nunito-cyrillic-ext-800-normal-pjRatrRO.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-cyrillic-800-normal-D3igD7Kl.woff2) format("woff2"),url(/assets/nunito-cyrillic-800-normal-DymMgApb.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-vietnamese-800-normal-D_CZYdm9.woff2) format("woff2"),url(/assets/nunito-vietnamese-800-normal-Dz0hZPb5.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-latin-ext-800-normal-CtU8tJOV.woff2) format("woff2"),url(/assets/nunito-latin-ext-800-normal-CDcxIxx8.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-latin-800-normal-Dz8SOQK_.woff2) format("woff2"),url(/assets/nunito-latin-800-normal-D-J0wlBY.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--wood-d:#3b2412;--wood:#5a3a1e;--wood-l:#7b5330;--gold-d:#b8862a;--gold-l:#f6d77a;--parch:#f3e4bf;--parch-d:#dcc794;--ink:#3a2610;--royal:#2f5f9e;--royal-l:#5b8fd4;--crim:#9b2a2a;--crim-l:#c8453d;--leaf:#4e9a3f;--leaf-l:#7cc45f;--bg:#2b1d12;--panel:#4a3019;--edge:#b8862a;--gold:#f2c441;--text:#fbf1d8;--muted:#d3bf94;--ok:#7cc45f;--bad:#e0644f;--font-title:"Cinzel", Georgia, serif;--font-body:"Nunito", system-ui, sans-serif}html,body{font-family:var(--font-body)}h2,h3,.title-font{font-family:var(--font-title)}.ico{width:1.2em;height:1.2em;vertical-align:-.2em;flex:none}.gbtn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;min-width:92px;white-space:nowrap;padding:8px 18px;border-radius:12px;border:2px solid var(--gold-d);color:#fff;font:800 15px var(--font-body);text-shadow:0 1px 0 rgba(0,0,0,.45);cursor:pointer;background:linear-gradient(#8fd470,var(--leaf) 55%,#3b7a30);box-shadow:0 3px #2a5a22,0 5px 8px #0006,inset 0 1px #fff6}.gbtn:active{transform:translateY(2px);box-shadow:0 1px #2a5a22,0 2px 4px #0006}.gbtn.blue{background:linear-gradient(#7fb0ec,var(--royal) 55%,#224a7d);box-shadow:0 3px #17375d,0 5px 8px #0006,inset 0 1px #fff6}.gbtn.red{background:linear-gradient(#e2685f,var(--crim) 55%,#722020);box-shadow:0 3px #561818,0 5px 8px #0006,inset 0 1px #ffffff59}.gbtn.gold{background:linear-gradient(var(--gold-l),var(--gold) 55%,var(--gold-d));color:var(--ink);text-shadow:0 1px 0 rgba(255,255,255,.5);box-shadow:0 3px #8a6218,0 5px 8px #0006,inset 0 1px #fff9}.gbtn:disabled{filter:grayscale(.85) brightness(.8);cursor:not-allowed}.gbtn:focus-visible,.fab:focus-visible,.win-x:focus-visible{outline:3px solid #fff;outline-offset:2px}.fab{position:fixed;z-index:6;width:56px;height:56px;border-radius:50%;border:3px solid var(--gold);color:var(--gold-l);cursor:pointer;background:radial-gradient(circle at 35% 30%,var(--wood-l),var(--wood-d));box-shadow:0 4px #1f1209,0 6px 10px #00000080,inset 0 1px #ffffff40;display:flex;flex-direction:column;align-items:center;justify-content:center;font:800 10px var(--font-body);padding:0}.fab .ico{width:26px;height:26px}.fab:active{transform:translateY(2px)}.fab.big{width:auto;height:56px;border-radius:28px;padding:0 18px;flex-direction:row;gap:8px;font-size:15px}.fab.glow{animation:glow 1.4s ease-in-out infinite}@keyframes glow{50%{box-shadow:0 4px #1f1209,0 0 18px 6px #f6d77acc}}.fab .badge{position:absolute;top:-4px;right:-4px;min-width:20px;height:20px;border-radius:10px;background:var(--crim-l);color:#fff;font-size:12px;line-height:20px;text-align:center;border:2px solid #fff}.rescap{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px 0 4px;border-radius:16px;border:2px solid var(--gold-d);background:linear-gradient(var(--wood-l),var(--wood-d));color:var(--text);font:800 14px var(--font-body);box-shadow:0 2px 4px #00000073,inset 0 1px #ffffff2e}.rescap .ico{width:24px;height:24px;background:#0000004d;border-radius:50%;padding:2px}.rescap.full b{color:var(--bad)}.cost{display:inline-flex;align-items:center;gap:3px;margin-right:8px;font-weight:800}.cost.lack{color:var(--bad)}.win-back{position:fixed;inset:0;z-index:30;background:#0a06029e;display:flex;align-items:center;justify-content:center;padding:max(8px,env(safe-area-inset-top)) max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left))}.win{position:relative;width:min(960px,100%);max-height:100%;display:flex;flex-direction:column;border-radius:16px;border:4px solid var(--gold-d);background:var(--parch);color:var(--ink);box-shadow:0 0 0 4px var(--wood-d),0 12px 32px #000000a6}.win-title{position:relative;margin:-16px auto 0;padding:6px 36px;min-width:200px;max-width:80%;text-align:center;color:#fff;font:700 20px var(--font-title);text-shadow:0 2px 0 rgba(0,0,0,.5);background:linear-gradient(var(--crim-l),var(--crim));border:3px solid var(--gold-d);border-radius:8px;box-shadow:0 3px 6px #00000080}.win-x{position:absolute;top:-14px;right:-12px;width:40px;height:40px;border-radius:50%;border:3px solid var(--gold-d);background:linear-gradient(#e2685f,var(--crim));color:#fff;font:800 20px var(--font-body);cursor:pointer;box-shadow:0 3px 6px #00000080}.win-body{padding:12px 16px 16px;overflow:auto;min-height:0}.win h2,.win h3{color:var(--crim)}.win .muted{color:#7a6542}.stepper{display:inline-flex;align-items:center;gap:6px}.stepper output{min-width:3ch;text-align:center;font:800 18px var(--font-body)}.stepper button{width:40px;height:40px;border-radius:50%;border:2px solid var(--gold-d);background:linear-gradient(var(--gold-l),var(--gold-d));color:var(--ink);font:800 22px var(--font-body);cursor:pointer}@media(prefers-reduced-motion:reduce){.fab.glow{animation:none}}:root{--f:56px;--hs:14px;--hm:12px}@media(min-width:1200px)and (min-height:700px){:root{--f:64px;--hs:16px}}@media(min-width:1500px)and (min-height:900px){:root{--f:76px;--hs:20px}}@media(max-height:520px){:root{--f:50px;--hs:12px;--hm:8px}}#app{display:block}#scene,#panel,.dock{grid-area:auto}#scene{position:absolute;inset:0}#tabs{display:contents}.fab{width:var(--f);height:var(--f);font-size:calc(var(--f)*.2);line-height:1}.fab .ico{width:calc(var(--f)*.48);height:calc(var(--f)*.48)}.fab .lbl,.fab span{max-width:calc(var(--f) - 6px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-shadow:0 1px 0 #000a}.fab[aria-current=true]{border-color:#fff3c4;background:radial-gradient(circle at 35% 30%,var(--gold-l),var(--gold-d));color:var(--ink)}.fab:disabled{filter:grayscale(.7) brightness(.75);cursor:default}.fab:hover:not(:disabled){filter:brightness(1.12)}.fab .badge{top:-6px;right:-6px;animation:none}#tabs [data-tab=kingdom],#tabs [data-tab=quests],#tabs [data-tab=map],#tabs [data-tab=menu]{top:calc(var(--hm) + env(safe-area-inset-top))}#tabs [data-tab=menu]{right:calc(var(--hm) + env(safe-area-inset-right))}#tabs [data-tab=map]{right:calc(var(--hm) + var(--f)*1.1 + env(safe-area-inset-right))}#tabs [data-tab=quests]{right:calc(var(--hm) + var(--f)*2.2 + env(safe-area-inset-right))}#tabs [data-tab=kingdom]{right:calc(var(--hm) + var(--f)*3.3 + env(safe-area-inset-right))}.fab-build{width:calc(var(--f)*1.25);height:calc(var(--f)*1.25);right:calc(var(--hm) + env(safe-area-inset-right));bottom:calc(var(--hm) + env(safe-area-inset-bottom));background:radial-gradient(circle at 35% 30%,#e8913f,#a4531a);font-size:calc(var(--f)*.24)}.fab-build .ico{width:calc(var(--f)*.6);height:calc(var(--f)*.6)}.fab-build .lbl,.fab-build span{max-width:calc(var(--f)*1.1)}#tabs [data-tab=army]{bottom:calc(var(--hm) + env(safe-area-inset-bottom));right:calc(var(--hm) + var(--f)*1.4 + env(safe-area-inset-right));background:radial-gradient(circle at 35% 30%,var(--royal-l),#1d4378)}#tabs [data-tab=heroes]{bottom:calc(var(--hm) + var(--f)*1.2 + env(safe-area-inset-bottom));right:calc(var(--hm) + var(--f)*1.3 + env(safe-area-inset-right));background:radial-gradient(circle at 35% 30%,var(--crim-l),#7a1e1e)}#tabs [data-tab=summon]{bottom:calc(var(--hm) + var(--f)*1.45 + env(safe-area-inset-bottom));right:calc(var(--hm) + var(--f)*.15 + env(safe-area-inset-right));background:radial-gradient(circle at 35% 30%,#a56bd6,#5a2a8c)}#tabs [data-tab][aria-current=true]{color:var(--ink);background:radial-gradient(circle at 35% 30%,var(--gold-l),var(--gold-d))}.fab-collect{left:calc(var(--hm) + env(safe-area-inset-left));bottom:calc(var(--hm) + env(safe-area-inset-bottom));width:calc(var(--f)*1.4);height:calc(var(--f)*1.4);border-radius:50%;font-size:calc(var(--f)*.2)}.fab.gold{background:radial-gradient(circle at 35% 30%,var(--gold-l),var(--gold-d));color:var(--ink);border-color:#fff3c4}.fab-collect .ico{width:calc(var(--f)*.6);height:calc(var(--f)*.6)}.fab-collect span{max-width:calc(var(--f)*1.3);text-shadow:0 1px 0 #fff8}.dock{position:fixed;left:0;right:0;bottom:0;width:auto;box-sizing:border-box;margin:0 calc(var(--f)*2.6 + var(--hm)*2) var(--hm) var(--hm);max-height:50%;z-index:5}.dock.idle{display:contents}#hud{position:fixed;z-index:5;top:calc(var(--hm) + env(safe-area-inset-top));left:calc(var(--hm) + env(safe-area-inset-left));display:flex;align-items:flex-start;gap:6px;max-width:calc(100% - var(--f)*4.4 - var(--hm)*3 - env(safe-area-inset-left));font-size:var(--hs);background:none;border:0;padding:0;margin:0;pointer-events:none}#hud>*{pointer-events:auto}#hud .portrait{position:relative;flex:none;width:calc(var(--f)*1.05);height:calc(var(--f)*1.05);border-radius:50%;padding:3px;box-sizing:border-box;background:conic-gradient(var(--gold) 0 70%,var(--wood-d) 0);box-shadow:0 3px 8px #0000008c}#hud .portrait .face{display:flex;align-items:center;justify-content:center;width:100%;height:100%;border-radius:50%;background:radial-gradient(circle at 40% 30%,#8fb6e0,#3c5f8f);color:#fff6d8}#hud .portrait .face .ico{width:60%;height:60%}#hud .lvbadge{position:absolute;right:-6px;bottom:-4px;min-width:1.9em;padding:0 .4em;height:1.5em;line-height:1.5em;border-radius:.75em;background:linear-gradient(var(--crim-l),var(--crim));color:#fff;border:2px solid var(--gold-l);font:800 .8em var(--font-body);font-style:normal;text-align:center;white-space:nowrap}#hud .hudmain{display:flex;flex-direction:column;gap:4px;min-width:0}#hud .hudcaps{display:flex;flex-wrap:wrap;gap:4px}#hud .rescap{height:calc(var(--hs)*2.1);font-size:var(--hs);border-radius:calc(var(--hs)*1.05);padding-right:.7em}#hud .rescap .ico{width:calc(var(--hs)*1.6);height:calc(var(--hs)*1.6)}#hud .hudq{display:flex;flex-wrap:wrap;gap:4px}#hud .qchip{display:inline-block;padding:.15em .7em;border-radius:1em;background:#2b1d12d1;border:1px solid var(--gold-d);color:var(--text);font-size:.85em;font-weight:700;white-space:nowrap}#hud .qchip.goal{border-color:var(--gold-l);background:#5a3a14e6}#hud .qchip b{color:var(--gold-l);font-variant-numeric:tabular-nums}#hud .hudtoggle{align-self:center;flex:none;min-width:28px;min-height:28px;border-radius:50%;border:2px solid var(--gold-d);background:var(--wood-d);color:var(--gold-l);font-size:12px;cursor:pointer;padding:0}#hud[data-open=false] .hudmain{display:none}#panel:not(.map-mode){position:fixed;z-index:4;left:calc(var(--hm) + env(safe-area-inset-left));right:calc(var(--f)*2.6 + var(--hm)*2);top:calc(var(--hm) + var(--f)*1.1 + 10px);bottom:var(--hm);padding:0 14px 14px;border:4px solid var(--gold-d);border-radius:16px;background:linear-gradient(var(--wood),var(--wood-d));color:var(--text);box-shadow:0 0 0 3px var(--wood-d),0 12px 32px #000000a6}#panel:not(.map-mode):before{content:attr(data-title);position:sticky;top:0;z-index:3;display:block;width:max-content;max-width:80%;margin:0 auto 10px;padding:4px 36px;transform:translateY(-14px);text-align:center;color:#fff;font:700 calc(var(--hs)*1.3) var(--font-title);text-shadow:0 2px 0 rgba(0,0,0,.5);background:linear-gradient(var(--crim-l),var(--crim));border:3px solid var(--gold-d);border-radius:8px;box-shadow:0 3px 6px #00000080}#panel .panel-x{position:sticky;top:0;z-index:4;float:right;margin:-12px -22px 0 0}#panel.map-mode{position:fixed;inset:0;z-index:3}body[data-tab=map] #tabs [data-tab=army],body[data-tab=map] #tabs [data-tab=heroes],body[data-tab=map] #tabs [data-tab=summon]{display:none}#toast{top:calc(var(--f)*1.4);z-index:40}.bubbles{position:fixed;inset:0;pointer-events:none;z-index:3}.res-bubble{position:fixed;transform:translate(-50%,-100%);display:inline-flex;align-items:center;gap:3px;min-height:30px;padding:2px 8px 2px 3px;border-radius:16px;border:2px solid var(--gold-d);background:linear-gradient(180deg,#fff6dc,#f0d99a);color:#3a2610;font-weight:800;font-size:13px;pointer-events:auto;cursor:pointer;box-shadow:0 3px #00000059,0 4px 8px #0000004d;animation:bubble-bob 1.6s ease-in-out infinite}.res-bubble .ico{width:22px;height:22px}.res-bubble:after{content:"";position:absolute;left:50%;bottom:-7px;width:10px;height:10px;background:#f0d99a;border:2px solid var(--gold-d);border-top:0;border-left:0;transform:translate(-50%) rotate(45deg);z-index:-1}.res-bubble.full{border-color:#c0392b;box-shadow:0 0 0 2px #c0392b8c;animation:rt-pulse 1.2s ease-in-out infinite}@keyframes rt-pulse{50%{transform:translate(-50%,-100%) scale(1.08)}}@keyframes bubble-bob{0%,to{margin-top:0}50%{margin-top:-4px}}.build-pager{display:grid;grid-template-columns:auto 1fr auto;grid-template-rows:auto auto;gap:6px 8px;align-items:center;width:100%}.build-pager .pg-arrow{width:44px;height:44px;position:static}.build-pager .pg-arrow:disabled{opacity:.35}.build-strip{display:grid;grid-template-columns:repeat(var(--per,4),minmax(0,1fr));gap:8px;padding:4px 0;min-width:0;overflow:hidden}.pg-dots{grid-column:1 / -1;display:flex;justify-content:center;gap:10px}.pg-dot{width:12px;height:12px;padding:0;border-radius:50%;border:2px solid #3a2610;background:#e7d3a5}.pg-dot.on{background:#e0a92b}.bcard{min-width:0;width:auto;display:flex;flex-direction:column;gap:4px;align-items:stretch;text-align:left;padding:8px;border-radius:12px;scroll-snap-align:start;border:2px solid var(--gold-d);background:linear-gradient(180deg,#fff6dc,#ead08e);color:#3a2610;box-shadow:0 3px #00000059;cursor:pointer;font:inherit}.bcard .bc-pic{height:56px;border-radius:8px;display:flex;align-items:center;justify-content:center;border:2px solid rgba(58,38,16,.5)}.bcard .bc-pic .ico{width:34px;height:34px;color:#fff;filter:drop-shadow(0 1px 1px rgba(0,0,0,.5))}.bcard .bc-name{font-family:var(--font-title, serif);font-weight:700;font-size:14px}.bcard .bc-out{display:inline-flex;align-items:center;gap:3px;font-size:12px;font-weight:700;min-height:20px}.bcard .bc-out .ico{width:16px;height:16px}.bcard .costs{display:flex;flex-wrap:wrap;gap:4px}.bcard .cost{color:#3a2610;font-size:12px;font-weight:700}.bcard .cost .ico{width:16px;height:16px}.bcard .cost.lack{color:var(--bad, #b3261e)}.bcard.lack{filter:saturate(.7);outline:2px dashed var(--bad, #b3261e);outline-offset:-4px}.bcard.locked{filter:grayscale(1);opacity:.6;cursor:default}.place-info{position:fixed;z-index:5;left:calc(var(--hm) + env(safe-area-inset-left));top:calc(var(--hm) + var(--f)*1.9 + env(safe-area-inset-top));max-width:min(300px,42vw);padding:8px 12px;border:2px solid var(--gold-d);border-radius:12px;background:linear-gradient(180deg,#4a3520f0,#2f2214f5);color:var(--cream, #f6e9c8);font-size:var(--hs)}.place-info h3{margin:0 0 2px;font-family:var(--font-title);font-size:1.1em;color:var(--gold-l)}.place-info p{margin:2px 0}.place-info .pi-cost{display:flex;flex-wrap:wrap;align-items:center;gap:4px}.place-fabs{position:fixed;z-index:6;right:calc(var(--hm) + env(safe-area-inset-right));bottom:calc(var(--hm) + env(safe-area-inset-bottom));display:flex;gap:calc(var(--hm)*.6);touch-action:none;align-items:flex-end}.place-fabs .fab{position:relative}.place-fabs .fab:last-child{width:calc(var(--f)*1.25);height:calc(var(--f)*1.25)}.place-fabs .fab.violet{background:radial-gradient(circle at 35% 30%,#b58cf0,#5a2f9a)}.place-fabs .fab.red{background:radial-gradient(circle at 35% 30%,var(--crim-l),#7a1e1e)}.place-fabs .fab:disabled{filter:grayscale(.8);opacity:.6;cursor:not-allowed}.battle{background:#a9d3ef}.bribbon{position:absolute;top:calc(8px + env(safe-area-inset-top));left:50%;transform:translate(-50%);z-index:3;pointer-events:none;padding:4px 34px;min-width:220px;max-width:60%;text-align:center;background:linear-gradient(var(--crim-l),var(--crim));border:3px solid var(--gold-d);border-radius:8px;box-shadow:0 3px 6px #00000080}.bribbon h2{margin:0;color:#fff;font:700 clamp(14px,2.2vw,22px) var(--font-title);text-shadow:0 2px 0 rgba(0,0,0,.5);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.battle .bhint{position:absolute;top:calc(14px + clamp(30px,3.6vw,46px) + env(safe-area-inset-top));left:50%;transform:translate(-50%);z-index:3;margin:0;padding:3px 16px;border-radius:14px;background:#281c10c7;color:var(--text);font:800 clamp(12px,1.6vw,17px) var(--font-body);white-space:nowrap;pointer-events:none}.border{position:absolute;top:calc(8px + env(safe-area-inset-top));left:calc(10px + env(safe-area-inset-left));z-index:3;display:flex;gap:5px;pointer-events:none}.ochip{width:clamp(30px,3.4vw,44px);height:clamp(30px,3.4vw,44px);border-radius:50%;display:grid;place-items:center;border:2px solid var(--gold-d);color:#fff;font:800 clamp(13px,1.5vw,18px) var(--font-title);text-shadow:0 1px 0 #0008;box-shadow:0 2px 4px #00000073}.ochip.player{background:linear-gradient(#7fb0ec,var(--royal))}.ochip.enemy{background:linear-gradient(#e2685f,var(--crim))}.ochip.now{border-color:#fff3c4;transform:scale(1.2);box-shadow:0 0 0 2px var(--gold),0 2px 6px #00000080}.battle .bctl{left:calc(12px + env(safe-area-inset-left));bottom:calc(10px + env(safe-area-inset-bottom));transform:none;gap:10px}.battle .bctl .gbtn{min-width:clamp(80px,9vw,130px);font-size:clamp(14px,1.5vw,19px)}.battle .stage-ui .slot{display:flex;align-items:center;gap:4px;padding:2px 6px;border-radius:10px;background:#19120ab8;border:1px solid rgba(255,255,255,.35);max-width:none;min-height:0}.battle .stage-ui .slot b{display:none}.battle .stage-ui .slot.hero b{display:inline;font-size:11px;color:var(--gold-l);max-width:80px}.battle .stage-ui .slot .cnt{font:800 11px var(--font-body);color:#fff}.battle .stage-ui .slot .bar{width:clamp(36px,4.6vw,64px);height:6px;flex:none;border-radius:3px;background:#00000080;overflow:hidden}.battle .stage-ui .slot[data-side=enemy] .bar>i{background:linear-gradient(#ff8a7a,#d03a2e)}.battle .stage-ui .slot[data-side=player] .bar>i{background:linear-gradient(#9be27a,#3fa02e)}.battle .stage-ui .slot.target{background:#78281ee6;border-color:var(--gold);min-width:44px;min-height:30px}.battle .stage-ui .slot.cur{outline:2px solid var(--gold)}@media(min-width:1500px)and (min-height:900px){.battle .stage-ui .slot .cnt,.battle .stage-ui .slot.hero b{font-size:16px}.battle .stage-ui .slot .bar{height:9px}}.map-ribbon{position:absolute;top:calc(var(--hm) + env(safe-area-inset-top));left:50%;transform:translate(-50%);z-index:4;padding:6px 38px;color:#fff;pointer-events:none;font:700 calc(var(--hs)*1.5) var(--font-title);text-transform:uppercase;text-shadow:0 2px 0 rgba(0,0,0,.5);background:linear-gradient(var(--crim-l),var(--crim));border:3px solid var(--gold-d);border-radius:8px;box-shadow:0 3px 6px #00000080}.map-wrap .fab.map-back,.map-wrap .fab.map-zoom{position:absolute;z-index:5}.map-back{right:calc(var(--hm) + env(safe-area-inset-right));top:calc(var(--hm) + var(--f)*3.35 + env(safe-area-inset-top))}.map-zoom{right:calc(var(--hm) + env(safe-area-inset-right))}.map-zoom.in{top:calc(var(--hm) + var(--f)*1.25 + env(safe-area-inset-top))}.map-zoom.out{top:calc(var(--hm) + var(--f)*2.3 + env(safe-area-inset-top))}.map-zoom span,.map-back span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.map-pins{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:3}.map-pin,.map-pin-ic{position:absolute;left:0;top:0;will-change:transform}.map-pin{padding:2px 12px;border-radius:6px;white-space:nowrap;font:800 calc(var(--hs)*.95) var(--font-body);color:#fff;background:#22180ce0;border:1.5px solid var(--wood-l);text-shadow:0 1px 0 #000}.map-pin[data-status=open]{background:linear-gradient(var(--gold-l),var(--gold-d));color:var(--ink);border-color:#fff3c4;text-shadow:none}.map-pin[data-status=conquered]{background:#18305ceb;border-color:var(--royal-l)}.map-pin-ic{width:calc(var(--hs)*2.1);height:calc(var(--hs)*2.1);border-radius:50%;display:grid;place-items:center;color:#fff;background:#ffffffeb;border:2px solid #fff;box-shadow:0 2px 6px #0006}.map-pin-ic .ico{width:70%;height:70%;color:var(--wood-d)}.map-pin-ic.skull{background:var(--crim);border-color:#5b1212}.map-pin-ic.skull .ico{color:#f3e4bf}.map-mode .map-popup{background:none;border:0;padding:0;box-shadow:none;right:calc(var(--hm) + 6px);width:min(44%,400px);font-size:calc(var(--hs)*1.05)}.parch{background:linear-gradient(var(--parch),var(--parch-d));color:var(--ink);border:4px solid var(--gold-d);border-radius:14px;padding:12px 16px 14px;box-shadow:0 0 0 3px var(--wood-d),0 10px 28px #0009}.parch h3{margin:0 0 2px;color:var(--ink);font:700 1.5em var(--font-title);text-transform:uppercase}.parch h4{margin:8px 0 2px;color:var(--crim);font:700 .9em var(--font-title);text-transform:uppercase}.parch p{margin:0}.parch .req{font-weight:800}.parch .warn{margin-top:6px;color:var(--crim);font-weight:800}.parch .lore{margin-top:6px;font-style:italic;color:#6a5230}.parch .costs{display:flex;flex-wrap:wrap;gap:4px}.parch .cost{margin:0;padding:2px 10px 2px 4px;border-radius:12px;background:#fff8e4;border:1.5px solid var(--gold-d);color:var(--ink)}.parch .row{display:flex;gap:10px;margin-top:12px}.parch .row .gbtn{flex:1;min-width:0;padding:8px 10px}.parch .parch-btn{background:linear-gradient(#e9d7a6,#cdb57a);color:var(--ink);text-shadow:none;box-shadow:0 3px #8a6a2a,0 5px 8px #0000004d}.parch .tag{display:inline-block;padding:0 8px;border-radius:8px;background:#d9c79c;color:var(--ink);font-weight:800}.parch .tag.open{background:var(--gold)}.parch .tag.ok{background:var(--royal-l);color:#fff}.map-corner{top:auto;right:auto;left:calc(var(--hm) + env(safe-area-inset-left));bottom:calc(var(--hm) + env(safe-area-inset-bottom));align-items:stretch;max-width:min(46%,300px)}.conquest-mini{display:flex;flex-direction:column;align-items:stretch;gap:6px;padding:8px 12px 10px;border-radius:12px;border:3px solid var(--gold-d);background:#22180ceb;color:var(--text);box-shadow:0 4px 12px #00000080;font-size:calc(var(--hs)*.95)}.conquest-mini h3{margin:0;color:var(--gold-l);font:700 1.1em var(--font-title);text-transform:uppercase}.conquest-mini p{margin:0;font-weight:800}.cq-bar{height:10px;border-radius:5px;background:#14100b;border:1px solid var(--wood-l);overflow:hidden}.cq-bar i{display:block;height:100%;background:linear-gradient(var(--leaf-l),var(--leaf))}.conquest-mini .gbtn{min-height:36px;padding:4px 10px}@media(max-height:520px){.map-ribbon{padding:3px 24px}.map-mode .map-popup{width:min(46%,340px)}.parch{padding:8px 12px 10px}.parch .row{margin-top:8px}.parch h4{margin-top:4px}.parch .gbtn{min-height:36px}}body:has(#panel.map-mode) #dock{display:none!important}.army-wrap{display:grid;grid-template-columns:minmax(0,1fr) clamp(200px,26%,300px);gap:12px;align-items:start}.army-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:10px}.ucard{display:flex;gap:10px;padding:10px;border-radius:12px;background:#fff6dc;border:3px solid #6aa6e0;color:var(--ink)}.ucard.c-infantry{border-color:var(--gold)}.ucard.locked{border-color:#9a9a92;background:#d9cfb6;filter:grayscale(.7)}.upic{flex:0 0 28%;min-height:120px;border-radius:8px;display:flex;align-items:flex-end;justify-content:center;background:linear-gradient(#b9dc8a,#8fc260)}.upic .ico{width:70%;height:auto;margin-bottom:12px;color:#3a2610}.locked .upic{background:#a9a9a0}.uinfo{flex:1;min-width:0}.uinfo h3{margin:0;font:700 18px var(--font-title);color:var(--ink)}.urole{margin:2px 0 6px!important;color:#8a5a1a!important;font-weight:800;font-size:12px!important}.ustat{display:grid;grid-template-columns:34px 1fr 28px;gap:6px;align-items:center;font:800 11px var(--font-body)}.ustat .bar{height:8px;background:#e3d6b4}.ustat b{text-align:right}.s-hp .bar i{background:#5fb34a}.s-atk .bar i{background:#e08a3a}.s-def .bar i{background:#4a86d0}.s-spd .bar i{background:#dcb534}.ucost{display:flex;align-items:center;flex-wrap:wrap;gap:4px;margin:6px 0;font-weight:700;font-size:13px}.ucost .cost{color:var(--ink)}.ucost .cost.lack{color:var(--bad,#b3261e)}.urow{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.ulock{display:flex;align-items:center;gap:6px;padding:6px 8px;border-radius:6px;background:#00000014;font-weight:700;font-size:13px}.ulock .ico{width:18px;height:18px;flex:none}.stepper button .ico{width:18px;height:18px;display:block;margin:auto}.army-side{background:linear-gradient(#5a3a20,#3a2412);border:3px solid var(--gold-d);border-radius:12px;padding:12px;color:#f6e7c1}.army-side h3{color:var(--gold-l)!important;font:700 16px var(--font-title);margin:6px 0}.army-side p{margin:4px 0;font-weight:700}.army-side .bar{background:#1c120a;height:12px}.army-side .bar.pop i{background:linear-gradient(#9be27a,#3fa02e)}.qrow{display:grid;grid-template-columns:1fr auto;gap:2px 8px;padding:6px 8px;margin:6px 0;border-radius:8px;background:#0000004d}.qrow .bar{grid-column:1/-1;height:8px}.qrow .bar i{background:linear-gradient(#9be27a,#3fa02e)}.army-total{display:flex;flex-direction:column;gap:4px;margin-top:12px;padding:8px;border-radius:8px;background:#00000059}.army-total .cost{color:var(--gold-l)}@media(max-height:520px){.army-wrap{grid-template-columns:minmax(0,1fr) 190px}.upic{min-height:90px}}.qtabs{display:flex;gap:6px;margin:6px 0 10px}.qtab{flex:1;padding:8px 10px;border-radius:10px 10px 0 0;border:2px solid var(--gold-d);border-bottom:0;background:linear-gradient(var(--wood-l,#8a5a2e),var(--wood-d));color:#f3e4bf;font:700 1em var(--font-title);cursor:pointer;min-height:40px}.qtab.on{background:linear-gradient(var(--parch),var(--parch-d));color:var(--ink)}.qbody{display:flex;gap:12px;align-items:flex-start}.qbanner{flex:0 0 min(30%,240px);padding:12px;border-radius:12px;border:3px solid var(--gold-d);background:linear-gradient(160deg,#2f5a8a,#1d3556);color:#fff;display:flex;flex-direction:column;gap:6px}.qbanner h3{margin:0;font:700 1.25em var(--font-title);color:var(--gold-l)}.qbanner small{text-transform:uppercase;letter-spacing:.08em;opacity:.85}.qbanner p{margin:0}.qlist{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px}.qbody>.card,.qbody>h2,.qbody>p{flex:1 1 100%}.qcard{display:flex;gap:10px;align-items:center;padding:8px 10px;border-radius:12px;border:2px solid var(--gold-d);background:linear-gradient(var(--parch),var(--parch-d));color:var(--ink)}.qcard.locked{filter:grayscale(.85);opacity:.75}.qcard.done{opacity:.7}.qcard.claimable{box-shadow:0 0 0 3px var(--gold),0 0 14px #ffd25ab3}.qic{flex:none;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--wood-d);border:2px solid var(--gold-d);color:var(--gold-l)}.qic .ico{width:60%;height:60%}.qinfo{flex:1;min-width:0}.qinfo h3{margin:0;font:700 1.05em var(--font-title);color:var(--ink)}.qinfo p{margin:2px 0;color:#5b4a2e}.qinfo .warn{color:var(--crim);font-weight:800}.qinfo .bar{margin-top:4px;background:#cdb98a}.qinfo .cost{background:#fff8e4;border:1.5px solid var(--gold-d);color:var(--ink)}.qact{flex:none;display:flex;flex-direction:column;gap:6px;align-items:stretch}.qact .gbtn.small{padding:4px 10px;font-size:.85em}.qact .tag{display:inline-block;padding:2px 10px;border-radius:8px;background:var(--royal-l);color:#fff;font-weight:800;text-align:center}@media(max-height:480px){.qbody{flex-direction:row}.qbanner{flex-basis:26%}.qic{width:34px;height:34px}}@media(max-width:700px){.qbody{flex-direction:column}.qbanner{flex-basis:auto;width:100%}}.qbody.qcol{flex-direction:column;align-items:stretch}.hwrap{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:12px;align-items:start}.hgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:8px}.hcard{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 6px;border-radius:12px;border:3px solid var(--gold-d);background:linear-gradient(var(--parch),var(--parch-d));color:var(--ink);cursor:pointer;font:inherit;min-height:44px}.hcard b{font:700 .95em var(--font-title);text-align:center}.hcard small{font-weight:700;font-size:.75em;color:#5b4a2e;text-align:center}.hcard.sel{box-shadow:0 0 0 3px var(--gold),0 0 12px #ffd25ab3}.hcard.locked{filter:grayscale(.85);opacity:.7;cursor:default}.hcard.r-rare{border-color:#4a86d0}.hcard.r-epic{border-color:#9a4ac0}.hcard.r-legendary{border-color:#e8a21c}.hcard.r-prince{border-color:#c0392b}.hstars{color:#d99a12;letter-spacing:1px;font-size:.8em}.hport{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(#6a8fc8,#2f4a7a);border:3px solid var(--gold-d);color:#f6e7c1}.hport.big{width:84px;height:84px;flex:none}.hport .ico{width:60%;height:60%}.hport.r-epic{border-color:#9a4ac0}.hport.r-legendary{border-color:#e8a21c}.hport.r-rare{border-color:#4a86d0}.hdetail{padding:12px;border-radius:12px;border:3px solid var(--gold-d);background:linear-gradient(var(--parch),var(--parch-d));color:var(--ink);display:flex;flex-direction:column;gap:8px}.hdetail h3{margin:0;font:700 1.25em var(--font-title)}.hdetail h4{margin:6px 0 0;font:700 1em var(--font-title)}.hdetail p{margin:2px 0}.hhead{display:flex;gap:12px;align-items:center}.hstats{display:grid;gap:4px}.hdetail .warn{color:var(--crim);font-weight:800}.hskill{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:4px 8px;border-radius:8px;background:#00000012;font-size:.9em}.hskill.on{background:#5aaa4640}.hslots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.hslot{display:flex;flex-direction:column;gap:4px;padding:6px;border-radius:10px;border:2px dashed var(--gold-d);background:#0000000f}.hslot.full{border-style:solid}.hsmithy{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:8px}.hint{color:#f6e7c1;font-weight:700}@media(max-width:760px){.hwrap{grid-template-columns:1fr}}.menu-wrap{display:grid;grid-template-columns:minmax(120px,26%) 1fr;gap:14px;align-items:start}.menu-cats{display:flex;flex-direction:column;gap:8px;min-height:100%}.menu-cat{padding:10px 12px;border-radius:10px;border:2px solid var(--gold-d);text-align:left;cursor:pointer;min-height:44px;font:700 1em var(--font-title);color:var(--ink);background:linear-gradient(#d9bb7c,#c9a766)}.menu-cat.on{background:linear-gradient(#7a5230,#4a2f19);color:var(--gold-l);box-shadow:0 0 0 2px var(--gold)}.menu-build{margin-top:auto;padding-top:10px;display:flex;flex-direction:column;font-size:.78em;font-weight:700;color:#6b4f2a;word-break:break-all}.menu-body{background:linear-gradient(#5a3a20,#3a2415);border:3px solid #7a5230;border-radius:12px;padding:14px;color:var(--text);display:flex;flex-direction:column;gap:10px}.menu-body h3{margin:0 0 4px;color:var(--gold);font:700 1.3em var(--font-title)}.mrow{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;background:#00000047;border-radius:10px;padding:10px 12px}.mlabel{display:flex;flex-direction:column;min-width:0;flex:1 1 120px}.mlabel small{color:var(--muted);font-size:.8em}.seg{display:inline-flex;border:2px solid var(--gold-d);border-radius:10px;overflow:hidden}.seg-b{min-height:40px;padding:6px 14px;border:0;background:transparent;color:var(--text);font:700 .95em var(--font-body);cursor:pointer}.seg-b.on{background:linear-gradient(var(--gold-l),var(--gold-d));color:#3a2415}.tgl{position:relative;width:58px;height:32px;flex:none;border-radius:16px;border:2px solid var(--gold-d);background:#3b2a1c;cursor:pointer;padding:0}.tgl .knob{position:absolute;top:2px;left:2px;width:24px;height:24px;border-radius:50%;background:#9d8a6a;transition:left .15s}.tgl.on{background:#4aa84a}.tgl.on .knob{left:28px;background:#fff}.sl{display:flex;align-items:center;gap:10px;flex:1 1 180px;justify-content:flex-end}.gslider{-webkit-appearance:none;appearance:none;flex:1;min-width:100px;max-width:260px;height:8px;border-radius:4px;background:linear-gradient(90deg,var(--gold) var(--p,50%),#2a1b10 var(--p,50%));outline-offset:6px}.gslider::-webkit-slider-thumb{-webkit-appearance:none;width:24px;height:24px;border-radius:50%;background:#ffe9a8;border:3px solid var(--gold-d);cursor:pointer}.gslider::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:#ffe9a8;border:3px solid var(--gold-d);cursor:pointer}.sval{min-width:3em;text-align:right;font-weight:700}.mplaylist{display:flex;flex-direction:column;gap:8px;background:#00000047;border-radius:10px;padding:10px 12px;align-items:flex-start}.menu-actions{display:flex;gap:10px;flex-wrap:wrap}.menu-actions .gbtn{flex:1 1 160px}.credits-text{line-height:1.5;margin:0}@media(max-height:480px){.menu-wrap{grid-template-columns:minmax(100px,24%) 1fr;gap:8px}.menu-cat{padding:6px 8px;min-height:44px}}#hud,#panel,.map-popup,.dock{zoom:var(--tz,1)}.thumb{width:100%;height:100%;object-fit:contain;display:block;pointer-events:none}.bc-pic.has-thumb{background:linear-gradient(#cfe7a8,#9cc36c)!important}.bc-pic .thumb{height:100%}.bcard .bc-pic.has-thumb{height:78px}.upic.has-thumb{align-items:center}.upic .thumb{max-height:150px}.hport.has-thumb{overflow:hidden;background:radial-gradient(#8fb0e0,#3a5a92)}.hport .thumb{transform:scale(1.15)}.dcard{position:fixed;z-index:6;width:min(calc(var(--f)*9),92vw);box-sizing:border-box;padding:calc(var(--f)*.3);border:2px solid #c9a24a;border-radius:12px;background:linear-gradient(180deg,#4a3826,#2e2318);box-shadow:0 6px 18px #000a;--ax:50%}.dcard:after{content:"";position:absolute;left:var(--ax);bottom:-9px;margin-left:-9px;border:9px solid transparent;border-bottom:0;border-top-color:#c9a24a}.dcard.below:after{bottom:auto;top:-9px;border-top:0;border-bottom:9px solid #c9a24a;border-top-color:transparent}.dcard-x{position:absolute;top:-10px;right:-10px;width:calc(var(--f)*.9);height:calc(var(--f)*.9);border-radius:50%;border:2px solid #c9a24a;background:#7a2a22;color:#fff;font-size:calc(var(--f)*.6);line-height:1;cursor:pointer}.dcard .card{background:none;border:0;padding:0;margin:0;flex:none}.dcard-btns{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.dcard-cost{display:inline-flex;align-items:center;gap:4px;margin-left:6px}#panel.summon-page{position:fixed;z-index:5;inset:0;padding:0;border:0;border-radius:0;overflow:hidden;box-shadow:none;background:radial-gradient(ellipse at 40% 55%,#4b2a86,#2a1650 55%,#120a26)}#panel.summon-page:before,#panel.summon-page .panel-x{display:none}body[data-tab=summon] #tabs,body[data-tab=summon] #dock,body[data-tab=summon] #hud{display:none!important}.sm-back{position:absolute;left:calc(var(--hm) + env(safe-area-inset-left));top:calc(var(--hm) + 4px);z-index:6}.sm-title{position:absolute;left:50%;top:6px;transform:translate(-50%);z-index:6;padding:4px 36px;color:#fff;font:700 calc(var(--hs)*1.3) var(--font-title);background:linear-gradient(var(--crim-l),var(--crim));border:3px solid var(--gold-d);border-radius:8px;box-shadow:0 3px 6px #00000080;white-space:nowrap}.sm-dia{position:absolute;right:calc(var(--hm) + env(safe-area-inset-right));top:calc(var(--hm) + 4px);z-index:6}.sm-stage{position:absolute;left:0;top:0;bottom:0;right:min(44%,340px);display:flex;align-items:center;justify-content:center;cursor:pointer}.sm-circle{position:absolute;left:50%;bottom:6%;width:min(78%,520px);aspect-ratio:3.2/1;transform:translate(-50%);border-radius:50%;border:3px solid #b99cff;background:radial-gradient(ellipse,#c8aaff8c,#281450d9 70%);box-shadow:0 0 28px #9a6bff,inset 0 0 24px #7a4bd6}.sm-circle:after{content:"";position:absolute;inset:14%;border-radius:50%;border:2px dashed var(--gold-l)}.sm-pillar{position:absolute;left:50%;bottom:12%;width:22%;height:70%;transform:translate(-50%);background:linear-gradient(transparent,#c8aaff38);clip-path:polygon(40% 0,60% 0,100% 100%,0 100%)}.sm-area{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;width:100%;padding-bottom:6%}.sm-cards{position:relative;width:min(46vw,260px);height:min(40vh,220px)}.sm-card{position:absolute;bottom:0;width:42%;aspect-ratio:.72;display:flex;align-items:center;justify-content:center;border:3px solid var(--gold-l);border-radius:10px;background:linear-gradient(#4a2a9a,#27145a);color:var(--gold-l);font:800 calc(var(--hs)*2.2) var(--font-title);box-shadow:0 6px 14px #00000080}.sm-card.sm-l{left:2%;transform:rotate(-12deg);opacity:.85}.sm-card.sm-r{right:2%;transform:rotate(12deg);opacity:.85}.sm-card.sm-m{left:29%;z-index:2;bottom:8%;width:44%}@keyframes smfloat{0%,to{translate:0 0}50%{translate:0 -6px}}.sm-stage[data-phase=idle] .sm-cards{animation:smfloat 3s ease-in-out infinite}@keyframes smcharge{0%{filter:brightness(1);transform:scale(1)}to{filter:brightness(1.8) drop-shadow(0 0 18px #c9a8ff);transform:scale(1.08)}}.sm-stage[data-phase=charge] .sm-cards{animation:smcharge .9s ease-in forwards}.sm-stage[data-phase=charge] .sm-circle{box-shadow:0 0 60px #c9a8ff,inset 0 0 40px #b88aff}.sm-flash{position:absolute;inset:0;z-index:4;background:radial-gradient(circle,#fff 0%,rgba(255,240,200,.85) 35%,transparent 70%);opacity:0;pointer-events:none}@keyframes smburst{0%{opacity:0;transform:scale(.3)}40%{opacity:1}to{opacity:0;transform:scale(2.2)}}.sm-stage[data-phase=burst] .sm-flash{animation:smburst .45s ease-out forwards}.sm-stage[data-phase=burst] .sm-cards{opacity:0}.sm-hint{position:absolute;left:0;right:0;bottom:calc(var(--hm) + 2px);margin:0;text-align:center;z-index:5;color:var(--gold-l);font-size:calc(var(--hs)*.95);text-shadow:0 1px 3px #000}@keyframes smpop{0%{transform:scale(.4) rotateY(90deg);opacity:0}to{transform:none;opacity:1}}.sm-res{display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px;border-radius:10px;border:3px solid var(--gold-d);background:linear-gradient(#3b2570,#1f1240);color:#fff;animation:smpop .4s ease-out;font-size:calc(var(--hs)*.9)}.sm-res.back{justify-content:center;color:var(--gold-l);font:800 calc(var(--hs)*1.6) var(--font-title);border-color:#8a6ad0}.sm-res .hport{width:calc(var(--f)*2.2);height:calc(var(--f)*2.2)}.sm-res.r-epic{border-color:#b879ff;box-shadow:0 0 14px #b879ff}.sm-res.r-legendary{border-color:#ffd25a;box-shadow:0 0 22px #ffc233}.sm-res.r-rare{border-color:#5aa0ff}.sm-stage>.sm-area>.sm-res{width:min(34vw,170px);padding:12px}.sm-row{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;width:min(94%,520px)}.sm-side{position:absolute;right:calc(var(--hm) + env(safe-area-inset-right));top:calc(var(--hm) + var(--f)*1.6);bottom:var(--hm);width:min(42%,330px);z-index:5;overflow:hidden;padding:8px 12px;border:4px solid var(--gold-d);border-radius:14px;background:linear-gradient(var(--wood),var(--wood-d));box-shadow:0 8px 24px #0009;display:flex;flex-direction:column;gap:5px}.sm-side h3{margin:2px 0 0;color:var(--gold-l);font-size:calc(var(--hs)*1.05)}.pbar-h{display:flex;justify-content:space-between;font-size:calc(var(--hs)*.85)}.pbar.epic .pbar-h span{color:#c9a0ff}.pbar.legendary .pbar-h span{color:var(--gold-l)}.pbar-t{height:10px;border-radius:6px;background:#1b1209;overflow:hidden}.pbar-t i{display:block;height:100%}.pbar.epic .pbar-t i{background:linear-gradient(#b98bff,#7a4bd6)}.pbar.legendary .pbar-t i{background:linear-gradient(#ffd25a,#d59a1a)}.sm-rates{display:flex;flex-wrap:wrap;gap:4px}.rchip{padding:1px 8px;border-radius:99px;border:1px solid #fff4;font-size:calc(var(--hs)*.78);color:#fff}.rchip.r-legendary{background:#8a6212}.rchip.r-epic{background:#5d3a9c}.rchip.r-rare{background:#1f4f92}.rchip.r-common{background:#4d4d4d}.sm-free{margin:0;font-size:calc(var(--hs)*.72);line-height:1.15}.sm-btns{display:flex;flex-direction:column;gap:5px;margin-top:auto}.sm-btns .gbtn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%}.sm-side>.gbtn{width:100%}@media(max-height:420px){.sm-free{display:none}.sm-side{gap:3px;padding:6px 10px}.sm-cards{height:min(46vh,180px)}}#login{background:#2a1d3a;overflow:hidden;padding:0;flex-direction:column}#login .lg-scene{position:absolute;inset:0;width:100%;height:100%}#login .lg-main{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:8px;width:100%;padding:0 12px}#login .lg-logo h1{margin:0;font:800 clamp(24px,5.5vw,48px) var(--font-title);letter-spacing:.12em;text-transform:uppercase;text-align:center;color:var(--gold-l);text-shadow:0 3px 0 #6b2a14,0 0 18px rgba(255,200,100,.5),0 4px 10px rgba(0,0,0,.6)}#login .lg-card{width:min(360px,100%);box-sizing:border-box;display:flex;flex-direction:column;gap:8px;padding:12px 16px 14px;border-radius:16px;border:4px solid var(--gold-d);background:#2b1d12eb;box-shadow:0 0 0 3px var(--wood-d),0 12px 32px #0009}#login .lg-card h3{margin:0;text-align:center;font:800 16px var(--font-title);color:var(--gold-l)}#login .lg-card input{width:100%;box-sizing:border-box}#login .lg-btns{display:flex;gap:8px}#login .lg-btns .gbtn{flex:1;padding:8px 6px}#login .lg-card .msg{margin:0;min-height:1.2em}#login .lg-hint{margin:0;font-size:12px;color:var(--muted);text-align:center}#login .lg-lang{position:absolute;z-index:2;top:10px;right:10px;display:flex;border:2px solid var(--gold-d);border-radius:12px;overflow:hidden}#login .lg-l{min-height:36px;padding:4px 12px;border:0;background:var(--wood-d);color:var(--text);font:800 13px var(--font-body);cursor:pointer}#login .lg-l.on{background:linear-gradient(var(--gold-l),var(--gold-d));color:var(--ink)}#login .lg-build{position:absolute;z-index:2;left:10px;bottom:6px;font-size:11px;color:#fff0d2b3}@media(max-height:460px){#login .lg-hint{display:none}#login .lg-main{gap:4px}#login .lg-card{padding:8px 14px 10px;gap:6px}#login .lg-card h3{display:none}#login .lg-card input,#login .lg-btns .gbtn{min-height:40px}}.qreward{display:flex;gap:6px;flex:none}.rtile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:50px;padding:4px 6px;border-radius:10px;border:2px solid var(--gold-d);background:#ffffff8c;color:var(--ink)}.rtile svg,.rtile img{width:28px;height:28px}.rtile b{font-size:13px;line-height:1}.qcard.locked .rtile{opacity:.7}.qcard.done .qreward{display:none}#panel.full-page{left:calc(var(--hm) + env(safe-area-inset-left));right:calc(var(--hm) + env(safe-area-inset-right));top:calc(var(--hm) + var(--f)*1.1 + 10px);bottom:var(--hm);overflow:hidden auto;padding-top:0}#panel.full-page:before{transform:none;margin:6px auto 8px;padding:3px 36px}#panel.full-page .fp-back{position:fixed;left:calc(var(--hm) + env(safe-area-inset-left) + 8px);top:calc(var(--hm) + var(--f)*1.1 + 16px);z-index:7}body[data-tab=army] #tabs,body[data-tab=army] #dock,body[data-tab=heroes] #tabs,body[data-tab=heroes] #dock,body[data-tab=quests] #tabs,body[data-tab=quests] #dock,body[data-tab=menu] #tabs,body[data-tab=menu] #dock{display:none!important}.pg-row{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:6px;flex:none;width:100%}.pg-row .pg-arrow{width:36px;height:36px;position:static}.pg-row .pg-arrow:disabled{opacity:.35}.pg-row .pg-dots{grid-column:auto}.goal-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:8px;width:100%}.goal-grid .card{margin:0}.hgrid{grid-template-columns:repeat(3,minmax(0,1fr))}.dtabs{margin:0 0 4px}.dtabs .qtab{padding:4px 6px;font-size:.9em}.hwrap{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.hleft{display:flex;flex-direction:column;align-items:stretch}@media(max-height:480px){.hcard{padding:4px}.hcard .hport{width:44px;height:44px}.hdetail{padding:8px;gap:4px}.hdetail .hport.big{width:56px;height:56px}.qtabs{margin:0 0 6px}.qtab{padding:4px 8px}#panel.full-page{padding-bottom:6px}}@media(max-height:480px){#panel.full-page:before{margin:2px auto 4px;padding:1px 28px;font-size:calc(var(--hs)*1.05)}#panel.full-page .qtabs{margin:0 0 4px}#panel.full-page .qtab{padding:3px 8px;font-size:.9em}.hdetail{gap:3px}.hdetail .hhead{gap:8px}.hdetail .hhead p{margin:0;font-size:.85em}.hdetail h3{font-size:1.05em}.hdetail .hport.big{width:44px;height:44px}.hdetail .ustat{font-size:.85em}.hdetail .bar{height:7px}.hcard{padding:3px;gap:1px}.hcard small{font-size:.7em}.hcard .hstars{font-size:.8em}.qcard{padding:4px 8px}.qcard .qinfo p{margin:0;font-size:.85em}.qbanner{padding:6px}.pg-row{margin-top:2px}.pg-row .pg-arrow span{display:none}.pg-row .pg-arrow{width:30px;height:30px}}@media(max-height:480px){#panel.full-page .fp-back{width:34px;height:34px;top:calc(var(--hm) + var(--f)*1.1 + 14px)}#panel.full-page:before{margin-bottom:10px}.hdetail{display:grid;grid-template-columns:1fr auto;column-gap:8px;align-content:start}.hdetail>*{grid-column:1 / -1}.hdetail>.hhead{grid-column:1;grid-row:1}.hdetail>.dtabs{grid-column:2;grid-row:1;flex-direction:column;gap:2px;margin:0}.hdetail .dtabs .qtab{border-bottom:2px solid var(--gold-d);border-radius:8px;padding:1px 8px;font-size:.75em}.hdetail .hstats{display:grid;grid-template-columns:1fr 1fr;gap:2px 10px}.hleft .hint{display:none}.hdetail .urow{margin:0}.hdetail .gbtn{min-height:0;padding:3px 10px}}@media(max-height:480px){#panel.full-page .qtab{min-height:0;line-height:1.1}.menu-wrap{align-items:start}.menu-cats{gap:4px;min-height:0}.menu-cat{min-height:0!important;padding:4px 8px!important;font-size:.9em}.menu-build{font-size:.7em}.menu-body>h3{display:none}.menu-body{display:grid;grid-template-columns:1fr 1fr;gap:4px 8px;align-content:start}.menu-body .mrow{padding:3px 8px;gap:6px}.menu-body .mrow small{font-size:.7em}.menu-body>.mplaylist,.menu-body>[data-testid=access],.menu-body>.menu-actions,.menu-body>.credits-text{grid-column:1 / -1}.army-side{padding:6px 10px}.army-side h3{margin:2px 0;font-size:14px}.army-side p{margin:2px 0}.army-side .bar{height:8px}.ucard{padding:6px}}@media(max-height:480px){.mplaylist{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;padding:4px 8px}.mplaylist .row{display:flex;flex-wrap:wrap;gap:4px;margin:0}.mplaylist .btn,.mplaylist .seg-b,.mplaylist button{padding:2px 8px;font-size:.75em;min-height:0}#panel.full-page .qtabs{margin-bottom:2px}.hdetail .hhead .hport.big{width:40px;height:40px}.hdetail .hhead h3{font-size:1em}.hcard .hport{width:38px;height:38px}}@media(max-height:480px){.hdetail .warn{font-size:.7em;margin:0;line-height:1.1}.hdetail .urow small{font-size:.7em}.mplaylist>b{display:none}.menu-body .mrow .sl{gap:6px}.menu-body .mrow b{font-size:.9em}}.tut-icons{list-style:none;margin:6px 0;padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:4px 12px;text-align:left}.tut-icons li{display:flex;align-items:center;gap:8px;font-size:.85rem}.tut-icons svg{flex:none;width:26px;height:26px;padding:4px;border-radius:50%;background:#3a2a14;border:2px solid #d4a64a;color:#f3d98b}.tag{white-space:nowrap;padding-inline:10px}.portrait.has-thumb{background:radial-gradient(#8fb0e0,#3a5a92)!important}.portrait .thumb{transform:scale(1.25)}.iris{position:fixed;inset:0;z-index:60;pointer-events:none;--r:150%;background:radial-gradient(circle at 50% 50%,transparent var(--r),#0b0805 calc(var(--r) + 1%))}.iris-t{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;opacity:0;transition:opacity .15s}.iris.show .iris-t{opacity:1}.iris-t b{font:800 clamp(30px,6vw,64px) var(--font-title);color:var(--gold-l);text-shadow:0 3px 0 #000a;letter-spacing:.06em}.iris-t span{font:700 clamp(14px,2.4vw,24px) var(--font-title);color:#fff;text-shadow:0 2px 0 #000a}.turnmark{position:absolute;transform:translate(-50%,calc(-100% - 36px));display:flex;flex-direction:column;align-items:center;pointer-events:none;color:#ffd23f;font:800 11px var(--font-title);text-shadow:0 1px 2px #000;animation:tmbob .7s ease-in-out infinite alternate}.turnmark i{font-style:normal;font-size:16px;line-height:1}@keyframes tmbob{0%{margin-top:0}to{margin-top:5px}}.equip-ico{width:34px;height:34px;align-self:center}.equip-ico.big{width:44px;height:44px}.equip-ico.dim{opacity:.35;filter:grayscale(1)}.fab:not(.big) .lbl,.fab:not(.big)>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.fab:not(.big) .ico{width:calc(var(--f)*.56);height:calc(var(--f)*.56)}.fab-build .ico,.fab-collect .ico{width:calc(var(--f)*.7);height:calc(var(--f)*.7)}
