@font-face{font-family:Alegreya SC;font-style:normal;font-display:swap;font-weight:700;src:url(./alegreya-sc-cyrillic-ext-700-normal-CePcHN67.woff2) format("woff2"),url(./alegreya-sc-cyrillic-ext-700-normal-ByIo9Acb.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:Alegreya SC;font-style:normal;font-display:swap;font-weight:700;src:url(./alegreya-sc-cyrillic-700-normal-BY5dilpf.woff2) format("woff2"),url(./alegreya-sc-cyrillic-700-normal-DVboUH38.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Alegreya SC;font-style:normal;font-display:swap;font-weight:700;src:url(./alegreya-sc-greek-ext-700-normal-BVN5T79T.woff2) format("woff2"),url(./alegreya-sc-greek-ext-700-normal-DbTbJk_q.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Alegreya SC;font-style:normal;font-display:swap;font-weight:700;src:url(./alegreya-sc-greek-700-normal-j3kFtuCO.woff2) format("woff2"),url(./alegreya-sc-greek-700-normal-CLt0TAiK.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Alegreya SC;font-style:normal;font-display:swap;font-weight:700;src:url(./alegreya-sc-vietnamese-700-normal-BLsGj--a.woff2) format("woff2"),url(./alegreya-sc-vietnamese-700-normal-CcdsUaZF.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:Alegreya SC;font-style:normal;font-display:swap;font-weight:700;src:url(./alegreya-sc-latin-ext-700-normal-CuZmaoSz.woff2) format("woff2"),url(./alegreya-sc-latin-ext-700-normal-B9xc3XH6.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:Alegreya SC;font-style:normal;font-display:swap;font-weight:700;src:url(./alegreya-sc-latin-700-normal-SioZsmF2.woff2) format("woff2"),url(./alegreya-sc-latin-700-normal-BZaxovGs.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:Alegreya SC;font-style:normal;font-display:swap;font-weight:800;src:url(./alegreya-sc-cyrillic-ext-800-normal-SrS1AI64.woff2) format("woff2"),url(./alegreya-sc-cyrillic-ext-800-normal-Crl2a1ze.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:Alegreya SC;font-style:normal;font-display:swap;font-weight:800;src:url(./alegreya-sc-cyrillic-800-normal-CEvfF15L.woff2) format("woff2"),url(./alegreya-sc-cyrillic-800-normal-BqLtpqmc.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Alegreya SC;font-style:normal;font-display:swap;font-weight:800;src:url(./alegreya-sc-greek-ext-800-normal-B5osutqc.woff2) format("woff2"),url(./alegreya-sc-greek-ext-800-normal-Dz2eyy3l.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Alegreya SC;font-style:normal;font-display:swap;font-weight:800;src:url(./alegreya-sc-greek-800-normal-ClSVF0JP.woff2) format("woff2"),url(./alegreya-sc-greek-800-normal-Dn4krHsW.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Alegreya SC;font-style:normal;font-display:swap;font-weight:800;src:url(./alegreya-sc-vietnamese-800-normal-DlPmqVzo.woff2) format("woff2"),url(./alegreya-sc-vietnamese-800-normal-oRQEFx5T.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:Alegreya SC;font-style:normal;font-display:swap;font-weight:800;src:url(./alegreya-sc-latin-ext-800-normal-B9Enxxeh.woff2) format("woff2"),url(./alegreya-sc-latin-ext-800-normal-ChWD_maa.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:Alegreya SC;font-style:normal;font-display:swap;font-weight:800;src:url(./alegreya-sc-latin-800-normal-B2N-CndE.woff2) format("woff2"),url(./alegreya-sc-latin-800-normal-DTYWdYpe.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:PT Sans;font-style:normal;font-display:swap;font-weight:400;src:url(./pt-sans-cyrillic-ext-400-normal-Im1dTr1w.woff2) format("woff2"),url(./pt-sans-cyrillic-ext-400-normal-GrN53NB4.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:PT Sans;font-style:normal;font-display:swap;font-weight:400;src:url(./pt-sans-cyrillic-400-normal-BFXMYxFb.woff2) format("woff2"),url(./pt-sans-cyrillic-400-normal-Dc1w259T.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:PT Sans;font-style:normal;font-display:swap;font-weight:400;src:url(./pt-sans-latin-ext-400-normal-aCD0pSG5.woff2) format("woff2"),url(./pt-sans-latin-ext-400-normal-Bxa_eI9R.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:PT Sans;font-style:normal;font-display:swap;font-weight:400;src:url(./pt-sans-latin-400-normal-ByLavmr2.woff2) format("woff2"),url(./pt-sans-latin-400-normal-ClTl2AGM.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:PT Sans;font-style:normal;font-display:swap;font-weight:700;src:url(./pt-sans-cyrillic-ext-700-normal-C9JE-leH.woff2) format("woff2"),url(./pt-sans-cyrillic-ext-700-normal-D6nfb79s.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:PT Sans;font-style:normal;font-display:swap;font-weight:700;src:url(./pt-sans-cyrillic-700-normal-BqBQ8Z7i.woff2) format("woff2"),url(./pt-sans-cyrillic-700-normal-aOoW9Ph1.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:PT Sans;font-style:normal;font-display:swap;font-weight:700;src:url(./pt-sans-latin-ext-700-normal-D9b4TP_7.woff2) format("woff2"),url(./pt-sans-latin-ext-700-normal-yUquz1cA.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:PT Sans;font-style:normal;font-display:swap;font-weight:700;src:url(./pt-sans-latin-700-normal-B23mgray.woff2) format("woff2"),url(./pt-sans-latin-700-normal-DyqBczp0.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{--beacon: #f5b84b;--beacon-hover: #ffcb6e;--beacon-shadow: #b87a1e;--panel: #2b2118;--panel-2: #3a2d20;--panel-dark: #1d160f;--ink: #17110b;--border: #6e5a3e;--border-dim: #4a3a28;--edge: #5a4630;--text: #f3ead7;--text-2: #d9cbb0;--mist: #3e7c7a;--mist-dark: #1e3b45;--danger: #c9453b;--danger-bar: #e2584d;--danger-text: #f08a80;--elite: #c58bff;--outline: #140d08;--ground: #18231f;--ground-moss: #22332f;--road: #4a3a28;--plot-stone: #55524a;--fog: 156, 199, 192;--light: 245, 184, 75;--text-3: #b9aa90;--mana: #5fa8e0;--mana-text: #8fc6f0;--rare: #f5b84b;--uncommon: #5fb3ae;--common: #8a7a64;--shadow-unit: rgba(5, 4, 3, .45);--text-scale: 1;font-size:calc(16px * var(--text-scale))}*{box-sizing:border-box}html,body{margin:0;height:100%;background:#0e0905;overflow:hidden;color:var(--text)}button,input{font:inherit;color:inherit}button{cursor:pointer}#stage{position:fixed;inset:0;width:100%;height:100%;display:flex;flex-direction:column;background:#14100c;overflow:hidden;font-family:PT Sans,sans-serif;user-select:none;-webkit-user-select:none}#stage input,#stage textarea{user-select:text;-webkit-user-select:text}body.cb .card{outline:1px dashed var(--text-2)}h1,h2,.cname,.ctitle{font-family:Alegreya SC,serif;font-weight:700}h1{font-size:44px;margin:0;line-height:1}h2{margin:0;font-size:22px}.muted,.sub{color:var(--text-2)}.row{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.grow{flex:1}.btn,.btn.secondary,.btn.danger{min-height:44px;border-radius:8px;border:2px solid transparent;padding:8px 16px;background:var(--beacon);color:#2b2118;font-weight:700;box-shadow:0 3px 0 var(--beacon-shadow);display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn:hover{background:var(--beacon-hover)}.btn:active{transform:translateY(2px);box-shadow:none}.btn:disabled{background:#4a3c2b;color:#8a7a64;box-shadow:none}.btn.secondary{background:var(--panel-2);color:var(--text);border-color:var(--border);box-shadow:0 2px #0e0905}.btn.danger{background:var(--danger);color:#fff8f0;border-color:var(--outline);box-shadow:0 3px #6e241d}.btn.wide{width:100%}.icon-btn{width:44px;height:44px;padding:0;border-radius:8px;border:2px solid var(--border);background:var(--panel-2);color:var(--text);display:grid;place-items:center}.screen{flex:1;min-height:0;width:100%;display:flex;flex-direction:column;gap:12px;overflow:auto;background:radial-gradient(ellipse at 82% 78%,rgba(245,184,75,.16),transparent 46%),linear-gradient(180deg,#16262c,#12100c)}.eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--text-2);font-size:12px;font-weight:700;margin:0}.relics{display:flex;gap:6px}.relic-chip{width:44px;height:44px;border-radius:8px;border:2px solid var(--beacon);color:var(--beacon);display:grid;place-items:center;background:var(--panel-2);padding:0}.topbar{height:56px;flex:none;display:flex;align-items:center;gap:16px;padding:0 16px;background:linear-gradient(#2b2118,#1d160f);border-bottom:2px solid var(--edge);box-shadow:0 2px #0e0905}.hp-block{display:flex;align-items:center;gap:10px}.hp-block .meta{width:168px;display:flex;flex-direction:column;gap:3px}.hp-block .meta span{display:flex;justify-content:space-between;font-size:12px;font-weight:700;color:var(--text-2)}.bar{height:10px;border-radius:5px;background:#3a1512;border:1.5px solid var(--outline);overflow:hidden}.bar>span{display:block;height:100%;width:0;background:var(--danger-bar)}.gold-pill,.loot-pill{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 16px;border-radius:20px;background:var(--panel);border:2px solid var(--beacon);color:var(--beacon);font-weight:700;font-size:20px}.coin-inline{display:inline-flex;align-items:center;gap:8px;color:var(--beacon);font-weight:700;font-size:18px}.menu{justify-content:center;padding:48px 64px;background:radial-gradient(520px 420px at 78% 70%,rgba(245,184,75,.28),transparent 60%),radial-gradient(640px 360px at 10% 100%,rgba(62,124,122,.22),transparent 55%),#14100c}.menu h1{font-size:72px;font-weight:800;color:var(--beacon);text-shadow:0 0 28px rgba(245,184,75,.45)}.menu-home{padding:0;align-items:center;justify-content:center;background:#0e0905}.menu-frame{position:relative;width:min(100%,calc(100vh * 16 / 9));aspect-ratio:16 / 9;max-height:100%;container-type:size;background:#14100c center / 100% 100% no-repeat}.menu-home .menu-glow,.menu-home .beacon-mark,.menu-home .eyebrow,.menu-home h1,.menu-home .sub,.menu-home .menu-lyra{display:none}.menu-home .menu-actions{position:absolute;inset:0;width:auto;height:auto}.menu-home .menu-actions .btn{position:absolute;left:5.78%;width:21.64%;min-height:0;height:6.4%;font-size:2.2cqh;border-radius:10px}.menu-home .menu-actions .btn:nth-child(1){top:56.39%;height:7.08%}.menu-home .menu-actions .btn:nth-child(2){top:65.83%}.menu-home .menu-actions .btn:nth-child(3){top:74.17%}.menu-home .menu-actions .btn:nth-child(4){top:82.5%}.menu-home .menu-continue{position:absolute;left:32%;top:56.39%;width:18%;height:7.08%;min-height:0;font-size:2.2cqh}.menu-home>.menu-frame>.lyra{position:absolute;left:50%;top:46%;transform:translate(-50%,-50%);z-index:3}.beacon-mark{width:72px;height:120px;margin-bottom:8px}.lyra,.modal{background:var(--panel);border:2px solid var(--border);border-radius:12px;padding:16px 18px;max-width:640px;box-shadow:0 2px #0e0905}.orders{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px;padding:0 28px}.order,.panel,.offer{background:linear-gradient(#3a2d20,#2b2118);border:2px solid var(--border-dim);border-radius:12px;padding:16px;box-shadow:0 2px #0e0905}.order.locked{opacity:.55}.pad{padding:20px 28px;overflow:auto}.fight{flex:1;width:100%;min-height:0;display:flex;flex-direction:column;background:#14100c}.fight-mid{flex:1;height:auto;display:flex;min-height:0}.side{width:220px;flex:none;padding:12px;background:linear-gradient(#211911,#17110b);display:flex;flex-direction:column;gap:8px;overflow:auto}.side.left{display:none}.fight.sandbox .side.left{display:flex;width:300px;overflow:auto}.statbook{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:30;width:min(760px,calc(100% - 32px));max-height:calc(100% - 32px);overflow:auto;background:#1d160f;border:2px solid var(--beacon);border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:10px;pointer-events:auto}.statbook-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px}.stat-pick{min-height:108px;padding:6px;border-radius:8px;border:2px solid var(--border);background:var(--panel-2);color:var(--text);display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:4px;font-size:13px;font-weight:700}.stat-pick svg,.stat-pick img,.stat-who svg,.stat-who img{width:64px;height:64px}.stat-who{display:flex;align-items:center;gap:12px;font-size:28px}.stat-who svg,.stat-who img{width:96px;height:96px}.stat-fields{display:grid;gap:8px}.stat-field{display:grid;grid-template-columns:1fr 120px;gap:8px;align-items:center}.stat-field input{height:36px;border-radius:8px;border:2px solid var(--border);background:#120e0a;color:var(--text);padding:0 8px}.fight.sandbox .mid-cluster,.fight.sandbox .hud-bot,.fight.sandbox .coin-inline{display:none}.admin-grid .btn.on{background:var(--beacon);color:#2b2118;border-color:transparent}.actor.blast{pointer-events:none;z-index:8}.actor.blast i{position:absolute;inset:0;border-radius:50%;pointer-events:none}.boom-flash{background:#fff6d8e6;animation:boom-flash .18s ease-out forwards}.boom-core{background:radial-gradient(circle,#fff6d8,#ffb03a 28%,#e25822 58%,#e2582200 74%);animation:boom-core .42s ease-out forwards}.boom-ring{border:5px solid #ffb03a;box-shadow:0 0 16px #ff7a2fd9;animation:boom-ring .42s ease-out forwards}.admin{display:flex;flex-direction:column;gap:8px}.admin-grid{display:flex;flex-wrap:wrap;gap:6px}.admin-grid .btn{min-height:36px;padding:4px 8px;font-size:13px}.admin-slider{display:grid;grid-template-columns:1fr auto;gap:4px 8px;align-items:center;font-size:13px}.admin-slider input{grid-column:1 / -1}.menu-admin{position:absolute;right:4%;top:6%;min-height:36px;height:5%;font-size:1.8cqh}.side.right{border-left:2px solid #3e3020}#field{flex:1;min-width:0;min-height:0;position:relative;width:auto;height:auto;background:var(--ground);overflow:hidden}#board-fit{position:absolute;width:1024px;height:576px;transform-origin:top left}.swamp{display:none}.plot{position:absolute;width:40px;height:34px;border-radius:50%;background:radial-gradient(circle at 60% 35%,#7a7466,#55524a 55%,#3a3a34);border:2px solid #140d08;box-shadow:0 3px #0e0905}.plot:after{content:"";position:absolute;left:50%;top:46%;width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:50%;box-shadow:inset 0 0 0 1.5px rgba(var(--light),.22)}.plot.high{box-shadow:0 0 0 2px #f5b84b8c,0 0 12px #f5b84b40,0 3px #0e0905}.plot.high:before{content:"";position:absolute;inset:-6px;z-index:-1;border-radius:50%;background:radial-gradient(circle,#3a2e22,#2b2118 70%)}.beacon{width:48px;height:134px}.beacon svg{width:48px;height:134px}.side.right{width:256px;overflow:auto;border-left:2px solid #3e3020}.hud-bot{height:176px}.card.palm{width:112px;height:148px}.card.palm .art{height:62px}.roster{display:flex;flex-direction:column;gap:6px}.roster-row{display:grid;grid-template-columns:36px 1fr auto;gap:8px;align-items:center}.roster-row small{display:block;color:var(--text-2)}.roster-row .count{color:var(--beacon)}.road-title{font-family:Alegreya SC,serif;font-size:22px;margin:0 0 8px}.menu-v2{display:grid;grid-template-columns:minmax(320px,460px) 1fr;min-height:100%;background:radial-gradient(circle at 78% 40%,rgba(245,184,75,.35),transparent 28%),linear-gradient(#1a2428,#10140f)}.menu-v2 .menu-scene{grid-area:auto}.menu-v2 .menu-copy{grid-column:1;grid-row:1;padding:48px 64px;display:flex;flex-direction:column;gap:12px;justify-content:center;width:auto}.menu-v2 h1{font-size:64px;color:var(--beacon)}.menu-v2 .menu-actions{display:flex;flex-direction:column;align-items:flex-start;gap:10px;position:static;width:100%;max-width:360px}.menu-v2 .menu-actions>.btn{width:100%;min-width:0}.menu-v2 .row{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;flex-wrap:nowrap}.menu-v2 .row .btn{width:100%;min-width:0;padding-inline:6px;white-space:nowrap}.menu-v2 .row.menu-sub{display:flex;justify-content:flex-start}.menu-v2 .row.menu-sub .btn{flex:1}.btn.gold{background:var(--beacon);color:#2b2118;min-height:56px}.btn.ghost{background:transparent;color:var(--text-2);box-shadow:none;border-color:#4a3a28}.rotate-note{display:none}body.portrait .rotate-note{position:fixed;inset:0;z-index:40;display:grid;place-items:center;background:#080604eb;font-size:28px}.settings{max-width:560px;margin:24px auto}@media(max-width:800px)and (orientation:portrait){.menu-v2{grid-template-columns:1fr}.menu-v2 h1{font-size:40px}.menu-v2 .btn{width:100%;min-height:48px;font-size:16px}}#field canvas:not(#road){position:absolute;left:0;top:0;z-index:8;background:transparent!important;pointer-events:auto}.board,.board *{pointer-events:none}.board{position:absolute;inset:0;overflow:hidden}.road,.pads,.beacon-slot,.dim,.cells,.actors,.atmo{position:absolute;inset:0}.road{z-index:1}.pads{z-index:2}.decor-slot{position:absolute;width:48px;height:48px}.decor-slot span{display:block;width:48px;height:48px;transform-origin:50% 80%}.decor-slot svg{width:48px;height:48px;display:block}.decor-shadow{position:absolute;left:12px;bottom:6px;width:22px;height:6px;border-radius:50%;background:#05040361}.beacon-slot{z-index:6}.beacon{position:absolute;width:51px;height:134px;z-index:3}.beacon svg{width:51px;height:134px;position:relative;z-index:2}.beacon-ground{position:absolute;left:50%;bottom:-18px;width:240px;height:90px;margin-left:-120px;background:radial-gradient(ellipse,rgba(var(--light),.28),transparent 70%)}.beacon-glow{position:absolute;left:50%;top:8px;width:240px;height:240px;margin-left:-120px;border-radius:50%;background:radial-gradient(circle,rgba(var(--light),.3),rgba(var(--light),.1) 45%,transparent 70%);animation:flicker 2.4s ease-in-out infinite}.beacon-halo{position:absolute;left:50%;top:18px;width:52px;height:52px;margin-left:-26px;border-radius:50%;background:radial-gradient(circle,rgba(255,243,200,.65),transparent 70%)}.dim-light .beacon-glow{animation-duration:1.2s;opacity:.55}.dim{z-index:4;background:#080e1247}.cells{z-index:5}.cell{position:absolute;width:40px;height:40px;box-sizing:border-box;border-radius:8px;background:rgba(var(--light),.16);border:2px dashed rgba(var(--light),.85)}.cell.here{background:rgba(var(--light),.3);border-style:solid;box-shadow:0 0 12px rgba(var(--light),.45)}.ring{position:absolute;z-index:5;box-sizing:border-box;border-radius:50%;background:rgba(var(--light),.07);border:2px dashed rgba(var(--light),.75)}.actors{z-index:6}.atmo{z-index:9}.fog{position:absolute;border-radius:50%}.fog.a{width:700px;height:280px;left:-120px;bottom:-80px;background:radial-gradient(ellipse,rgba(var(--fog),.15),rgba(var(--fog),0) 70%);animation:drift 40s ease-in-out infinite alternate}.fog.b{width:620px;height:220px;left:300px;top:-70px;background:radial-gradient(ellipse,rgba(var(--fog),.1),rgba(var(--fog),0) 70%);animation:drift 60s ease-in-out infinite alternate-reverse}.cold{position:absolute;inset:0;background:linear-gradient(90deg,rgba(30,59,69,.25),transparent 30%)}.vignette{position:absolute;inset:0;background:radial-gradient(ellipse at 60% 50%,transparent 55%,rgba(5,4,3,.55) 100%)}.actor{position:absolute}.actor.tower{width:54px;height:54px}.actor.tower svg,.actor.foe svg{width:100%;height:100%;display:block;position:relative;z-index:2}.actor.tower.stunned{filter:grayscale(1);opacity:.7}.actor.ghost{opacity:.88}.actor.foe{width:40px}.actor.foe.boss{width:100px}.actor.foe .hp{display:block;height:5px;width:30px;margin:0 auto 2px;border-radius:3px;background:#140d08;border:1px solid rgba(243,234,215,.45);overflow:hidden}.actor.foe .hp b{display:block;height:100%;background:#e2584d}.actor.foe .marks{display:flex;justify-content:center;gap:2px;min-height:0}.actor.foe .marks svg{width:16px;height:16px}.actor.foe.elite{filter:drop-shadow(0 0 6px #c58bff)}.actor.foe.hidden-foe{opacity:.35}.actor>.shadow{position:absolute;left:50%;bottom:0;z-index:0;width:72%;height:20%;transform:translate(-50%);border-radius:50%;pointer-events:none;background:radial-gradient(ellipse,var(--shadow-unit),transparent 70%)}.actor.tower>.shadow{width:78%}.actor.flying>.shadow{width:50%;bottom:-18px;opacity:.7}.actor.foe .sprite{animation:sway .5s ease-in-out infinite;animation-delay:var(--phase, 0s);transform-origin:50% 90%}.actor.flying .sprite{animation:floaty 1.6s ease-in-out infinite}.actor.slow:after{content:"";position:absolute;left:50%;bottom:-2px;width:34px;height:12px;transform:translate(-50%);border-radius:50%;border:2px solid rgba(127,211,240,.85)}.sel-feet{position:absolute;left:50%;bottom:-8px;z-index:1;width:68px;height:30px;transform:translate(-50%);border-radius:50%;pointer-events:none;background:rgba(var(--light),.12);border:2px solid rgba(var(--light),.9);box-shadow:0 0 12px rgba(var(--light),.55)}.actor.tower>.strip{position:relative;z-index:3}.actor.tower>.strip.weapon{position:absolute;left:0;top:0;z-index:4;transform-origin:27px 22px}.actor.tower>b.lv{position:absolute;right:-4px;bottom:-2px;z-index:5;width:18px;height:18px;padding:0;border-radius:9px;background:#3a2d20;color:#f3ead7;border:2px solid #140d08;font:700 11px/14px PT Sans,sans-serif;text-align:center;pointer-events:none}.actor.tower.lv-1>b.lv{display:none}.actor.tower.lv-2>b.lv{background:#6b4e16;color:#f5b84b}.actor.tower.lv-3>b.lv{background:#8a5a12;color:#fff6d8}.hud-bot{height:152px;flex:none;display:flex;align-items:flex-end;background:linear-gradient(#241b13,#17110b);border-top:2px solid var(--edge);box-shadow:0 -2px #0e0905}.energy-box{width:256px;flex:none;padding:14px 16px;display:flex;flex-direction:column;gap:8px}.energy-num{display:flex;align-items:center;gap:8px}.energy-num span{font-size:13px;color:var(--text-2);font-weight:700}.energy-box .num{font-family:Alegreya SC,serif;font-weight:800;font-size:32px;color:var(--beacon);line-height:1}.card.type-spell .cost{background:var(--mana);color:#10202e}.energy-num.mana .num{color:var(--mana-text)}.energy-box .num small{font-size:20px;color:var(--text-2)}.energy-bar{height:8px;border-radius:4px;background:#140d08;overflow:hidden}.energy-bar>b{display:block;height:100%;width:0;background:linear-gradient(90deg,#b87a1e,#f5b84b)}.pips{display:none}.hand{flex:1;width:auto;min-width:0;height:100%;display:flex;align-items:flex-end;justify-content:center;gap:8px;padding-bottom:4px;overflow-x:auto}.piles{width:256px;flex:none;display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:14px 16px}.pile{width:72px;height:96px;border-radius:10px;border:2px solid var(--border);background:var(--panel);color:var(--text);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;box-shadow:3px 3px #3e3020,6px 6px 0 var(--outline)}.pile b{font-size:18px;line-height:1}.pile span{font-size:13px;color:var(--text-2);font-weight:700}.wave-head{display:flex;justify-content:space-between;align-items:baseline}.wave-head b{font-family:Alegreya SC,serif;font-size:18px}.wave-row{display:flex;align-items:center;gap:10px;min-height:52px;padding:0 8px;border-radius:8px;background:var(--panel);border:1.5px solid var(--border-dim)}.wave-row .ico{width:40px;height:40px;flex:none}.wave-row .wn{flex:1;display:flex;flex-direction:column;min-width:0}.wave-row .wn b{font-size:14px}.wave-row .wn small{font-size:12px;color:var(--text-2);font-weight:700}.wave-row.elite .wn small{color:#cdb6ff}.wave-pay{margin-top:auto;display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-2);font-weight:700}.wave-pay b,.wave-pay span{color:var(--text-2)}.leak{color:var(--danger-text)}.wave-row .ct{font-weight:700;font-size:18px;color:var(--beacon)}.wave-row.elite{border-color:#8e6fc8}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.stat{padding:6px;border-radius:8px;background:var(--panel);border:1.5px solid var(--border-dim);display:flex;flex-direction:column;align-items:center}.stat span{font-size:12px;color:var(--text-2)}.stat b{font-size:17px}.who{display:flex;gap:10px;align-items:center}.who .portrait{width:60px;height:60px;border-radius:8px;background:var(--mist-dark);border:2px solid var(--border);display:grid;place-items:center;flex:none}.who .portrait .ico{width:48px;height:48px}.target-row{display:grid;grid-template-columns:1fr 1fr;gap:6px}.target-row .btn{min-height:44px;padding:4px 8px;font-size:14px}.target-row .btn.on{background:var(--beacon);color:#2b2118;border-color:transparent}.mid-cluster{flex:1;display:flex;align-items:center;justify-content:center;gap:14px}.mid-cluster.boss-mode .wave-word,.mid-cluster.boss-mode .ddots,.mid-cluster.boss-mode>.wave-num,.mid-cluster.boss-mode .eta-row{display:none}.boss-hud{display:flex;align-items:center;gap:10px;min-width:0}.boss-hud[hidden]{display:none}.boss-crown{width:26px;height:22px;flex:none;background:radial-gradient(circle at 50% 70%,#f08a80,#c9453b);clip-path:polygon(0 70%,18% 20%,36% 70%,50% 8%,64% 70%,82% 20%,100% 70%,88% 100%,12% 100%)}.boss-hud>b{font-family:Alegreya SC,serif;color:#f08a80;font-size:20px;white-space:nowrap}.boss-meta{display:flex;flex-direction:column;gap:3px;min-width:280px}.boss-meta>span{font-size:12px;font-weight:700;color:var(--text-2)}.boss-hud .boss-hp{position:relative;width:min(440px,36vw);height:12px;border-radius:6px;background:#3a1512;border:2px solid #140d08;overflow:hidden}.boss-hud .boss-hp>b{display:block;height:100%;background:linear-gradient(#f0685d,#c9453b)}.boss-hud .boss-hp i{position:absolute;top:-2px;width:2px;height:16px;background:#f3ead7}.wave-num{font-family:Alegreya SC,serif;font-weight:800;font-size:28px;color:var(--beacon)}.wave-num small{color:var(--text-2);font-size:18px}.ddots{display:flex;gap:5px}.dot{width:12px;height:12px;border-radius:50%;background:var(--panel);border:2px solid var(--edge)}.dot.on{background:var(--beacon);border-color:var(--outline)}.dot.now{box-shadow:0 0 8px var(--beacon);border-color:var(--beacon)}.beam{height:44px;display:flex;align-items:center;gap:6px;padding:0 10px;border-radius:8px;border:2px solid var(--beacon);background:var(--panel-2);color:var(--beacon);font-weight:700}.gem{width:22px;height:22px}.gem path{fill:none;stroke:var(--beacon);stroke-width:2;stroke-linejoin:round}.gem.on path{fill:var(--beacon);stroke:#140d08;stroke-width:1.5}.wave-word{font-family:Alegreya SC,serif;font-weight:700;font-size:20px;color:var(--text-2)}.eta-row{display:flex;align-items:center;gap:6px;font-weight:700;font-size:15px;color:var(--text-2)}.call{height:32px;padding:0 10px;border-radius:8px;border:2px solid var(--border);background:var(--panel-2);color:var(--text);font-weight:700}.dot.boss{border-color:#e8685d}.speeds{display:flex;border-radius:8px;overflow:hidden;border:2px solid var(--border)}.speeds button{width:44px;height:40px;border:none;border-left:2px solid var(--border);background:var(--panel-2);color:var(--text);font-weight:700}.speeds button:first-child{border-left:none}.speeds button.on{background:var(--beacon);color:#2b2118}.speed-cycle,.fold-hand,.inspect-close{display:none}.speed-cycle{border-radius:8px;border:2px solid var(--beacon);background:var(--beacon);color:#2b2118;font-weight:700;place-items:center;padding:0}.inspect-close{position:absolute;top:8px;right:8px;z-index:2}.side.right{position:relative}.call{height:36px}.card-wrap{background:none;border:0;padding:0}.card{position:relative;color:var(--text)}.card .cost{position:absolute;z-index:2;display:grid;place-items:center;border-radius:50%;background:var(--beacon);border:2px solid var(--outline);color:#2b2118;font-weight:700}.card .art{display:flex;align-items:center;justify-content:center;background:linear-gradient(#264650,#1e3b45)}.card .art.type-spell{background:linear-gradient(#3a2a4a,#2a2036)}.card .art.type-blessing{background:linear-gradient(#4a4222,#332e1a)}.card .art.type-upgrade{background:linear-gradient(#1f4a44,#17332f)}.card .art .ico{width:52px;height:52px;flex:none}.card.palm,.card.grid{display:flex;flex-direction:column;align-items:stretch;width:112px;height:148px;transition:transform .12s ease,box-shadow .12s ease}.card.palm,.card.grid{border-radius:10px;border:2px solid #140d08;background:linear-gradient(#3a2d20,#241b13);box-shadow:0 3px #140d08,inset 0 0 0 3px var(--common);overflow:hidden}.card.palm .art,.card.grid .art{flex:none;width:100%;height:62px;border-bottom:2px solid #5a4a3a;border-radius:0;overflow:hidden;position:relative}.card.type-spell.palm .art,.card.type-spell.grid .art{border-bottom-color:#9a78c8}.card.type-blessing.palm .art,.card.type-blessing.grid .art{border-bottom-color:#e8dca8}.card.type-upgrade.palm .art,.card.type-upgrade.grid .art{border-bottom-color:#5fb3a0}.card.palm .body,.card.grid .body{padding:6px 7px;display:flex;flex-direction:column;gap:2px}.card.palm .cname,.card.grid .cname{font-family:PT Sans,sans-serif;font-size:15px;font-weight:700;line-height:1.1}.card.palm .cdesc,.card.grid .cdesc{font-size:13px;line-height:1.25;color:var(--text-2)}.card.palm .cost,.card.grid .cost{left:-7px;top:-8px;width:28px;height:28px;font-size:16px}.card.palm.rarity-U,.card.grid.rarity-U{box-shadow:0 3px #140d08,inset 0 0 0 3px var(--uncommon)}.card.palm.rarity-R,.card.grid.rarity-R{box-shadow:0 3px #140d08,inset 0 0 0 3px var(--rare)}.card.palm.up .cname,.card.large.up .ctitle{color:var(--beacon);text-shadow:0 0 16px rgba(245,184,75,.55)}.card.palm.broke .art,.card.palm.broke .body{filter:saturate(.35) brightness(.7)}.card.palm.broke .cost{background:#3a1512;color:#f08a80;border-color:#e2584d}.card.palm.armed{transform:translateY(-18px);box-shadow:0 14px 22px #0000008c,0 0 0 2px #f5b84b80;z-index:2}.card.palm:hover{transform:translateY(-18px)}.card.large{width:168px;height:236px;border-radius:12px;border:3px solid #8a7a64;background:linear-gradient(#3a2d20,#2b2118);box-shadow:0 4px 0 var(--outline);display:flex;flex-direction:column;overflow:visible}.card.large.rarity-U{border-color:#9db7d5}.card.large.rarity-R{border-color:var(--beacon);box-shadow:0 4px 0 var(--outline),0 0 14px #f5b84b66}.card.large .cost{left:-10px;top:-10px;width:38px;height:38px;font-size:21px}.card.large .ctitle{min-height:40px;padding:8px 10px 4px 36px;font-size:17px;line-height:1.05;display:flex;align-items:center}.card.large .art{margin:0 8px;height:92px;border-radius:6px;border-bottom:4px solid #b8844a}.card.large .art .ico{width:76px;height:76px}.card.large .ctype{align-self:center;margin-top:-10px;height:20px;padding:0 8px;border-radius:10px;color:#1d160f;font-size:12px;font-weight:700;border:1.5px solid var(--outline);display:inline-flex;align-items:center}.card.large .cdesc{padding:8px 10px;font-size:13px;line-height:1.35;color:#e8dec8}.card.large .gems{margin-top:auto;display:flex;gap:4px;justify-content:center;padding:0 0 8px}.card.large .gems svg{width:10px;height:10px}.kw{border-bottom:1.5px dotted var(--text);cursor:help}.reward-screen,.shop-screen{overflow:auto}.reward-screen,.shop-screen,.plain-screen{background:radial-gradient(ellipse at 50% 120%,rgba(245,184,75,.22),transparent 55%),linear-gradient(#16262c,#101c20)}.shop-screen{background:radial-gradient(ellipse at 15% 0%,rgba(245,184,75,.2),transparent 50%),linear-gradient(#1b1510,#120d09)}.center-col{display:flex;flex-direction:column;align-items:center;gap:8px;padding-top:18px}.offers,.shop-row{display:flex;gap:28px;justify-content:center;align-items:flex-end;flex-wrap:wrap;padding:12px 24px}.pick{display:flex;flex-direction:column;align-items:center;gap:10px}.price{height:44px;min-width:108px;border-radius:22px;border:2px solid var(--beacon);background:var(--panel);color:var(--beacon);font-weight:700;font-size:18px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 14px}.price:disabled{opacity:.4;filter:grayscale(1);background:#2a241c;color:#8a7a64;border-color:#4a3a28}.tutor{position:absolute;left:12px;bottom:222px;width:232px;z-index:4;background:#17110beb;border:2px solid var(--edge);border-radius:8px;padding:8px 10px;pointer-events:none;font-size:13px;line-height:1.35}.toast{position:absolute;left:50%;top:68px;transform:translate(-50%);background:var(--panel);border:2px solid var(--beacon);border-radius:99px;padding:8px 16px;pointer-events:none;z-index:6;animation:rise .2s ease}.pause-layer,.modal-layer{position:absolute;inset:0;background:#080503b8;display:grid;place-items:center;z-index:5}.pause-layer .panel,.modal-layer .panel{width:min(520px,calc(100% - 48px));display:flex;flex-direction:column;gap:10px}#overlay .ad-modal{position:fixed;inset:0;margin:auto;width:min(520px,calc(100% - 32px));height:fit-content;background:var(--ink);border:2px solid var(--beacon);border-radius:12px;padding:24px}#ghost{position:fixed;z-index:8;pointer-events:none}.tip{position:fixed;z-index:9;max-width:260px;background:#1d160f;border:2px solid var(--border);border-radius:10px;padding:8px 10px;pointer-events:none}.settings{display:grid;gap:12px;max-width:560px}.settings label{display:flex;justify-content:space-between;gap:12px;align-items:center;min-height:44px}.codex-list{display:grid;grid-template-columns:1fr 1fr;gap:8px;overflow:auto}.hidden{display:none!important}body.tight .side,body.compact .side{display:none}body.tight .fight.sandbox .side.left{display:flex;width:280px;overflow:auto}body.compact .fight{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,42%);grid-template-rows:44px minmax(0,1fr)}body.compact .topbar{grid-column:1 / -1;grid-row:1;height:44px;gap:8px;padding:0 8px}body.compact .fight-mid{grid-column:1;grid-row:2;position:relative;min-width:0;min-height:0}body.compact .fight.sandbox .mid-cluster,body.compact .fight.sandbox .hud-bot,body.compact .fight.sandbox .coin-inline{display:none}body.compact .hud-bot{grid-column:2;grid-row:2;height:auto;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) auto auto;grid-template-rows:44px minmax(0,1fr);align-items:stretch;gap:8px;padding:8px;border-top:none;border-left:2px solid var(--edge)}body.compact .energy-box{grid-column:1;grid-row:1;width:auto;padding:0;gap:4px;justify-content:center}body.compact .energy-num{gap:4px}body.compact .energy-num>span{display:none}body.compact .energy-box .num{font-size:22px}body.compact .pip{height:10px}body.compact .pips{gap:2px}body.compact .hand{grid-column:1 / -1;grid-row:2;width:auto;height:auto;min-height:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(110px,1fr);gap:8px;align-items:stretch;justify-content:stretch;padding:4px 0 0;overflow:auto}body.compact .card.palm{width:100%;height:100%;min-height:96px}body.compact .card.palm .art{height:44px}body.compact .card.palm .art .ico,body.compact .card.palm .art .card-pic{width:40px;height:40px}body.compact .card.palm .cname{font-size:12px}body.compact .card.palm .cdesc{font-size:11px}body.compact .card.palm .cost{width:24px;height:24px;font-size:14px;left:-5px;top:-6px}body.compact .piles{grid-column:2;grid-row:1;width:auto;padding:0;gap:6px}body.compact .pile{width:52px;height:44px;flex-direction:row;gap:4px;box-shadow:none}body.compact .pile span,body.compact .pile svg{width:16px;height:20px}body.compact .pile span{display:none}body.compact .pile b{font-size:15px}body.compact .fold-hand{display:grid;grid-column:3;grid-row:1;width:44px;height:44px}body.compact.hand-folded .fight{grid-template-columns:minmax(0,1fr)}body.compact.hand-folded .fight-mid{grid-column:1}body.compact.hand-folded .hud-bot{position:absolute;inset:auto 8px 8px;z-index:8;height:44px;width:auto;grid-column:1;grid-row:2;grid-template-rows:44px;border:2px solid var(--edge);border-radius:8px;background:#17110bf0;box-shadow:none}body.compact.hand-folded .hand{display:none}body.compact.hand-folded .fold-hand svg{transform:rotate(180deg)}body.compact.inspect .side.right{display:flex;position:absolute;z-index:14;left:8px;top:8px;width:min(256px,calc(100% - 16px));max-height:calc(100% - 16px);border:2px solid var(--border);border-radius:10px;box-shadow:0 8px 24px #0000008c}body.compact.inspect .inspect-close{display:grid}body.compact .hp-block .meta{width:92px}body.compact .hp-block .meta span b:first-child{display:none}body.compact .hp-block svg{width:22px;height:22px}body.compact .bar{height:8px}body.compact .beam{height:38px;padding:0 8px}body.compact .beam span,body.compact .wave-word,body.compact .ddots,body.compact .topbar>.icon-btn[data-act=battle-settings],body.compact .speeds{display:none}body.compact .speed-cycle{display:grid;width:44px;height:38px}body.compact .mid-cluster{gap:8px}body.compact .wave-num{font-size:22px}body.compact .icon-btn[data-act=pause]{width:44px;height:38px}body.compact h1,body.compact .menu h1{font-size:36px}body.compact .orders{grid-template-columns:1fr 1fr;padding:8px}body.compact .tutor{left:8px;width:460px}body.compact .shop-grid,body.compact .legend{flex-wrap:wrap}body.compact .shop-side{width:auto}body.compact .story-card{width:min(420px,calc(100% - 24px))}.menu-glow{position:absolute;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(245,184,75,.38),transparent 68%);pointer-events:none;animation:pulse 2.8s ease-in-out infinite}.menu{position:relative;align-items:flex-start}.menu.menu-home{align-items:center;justify-content:center;padding:0}.menu-actions{display:flex;flex-direction:column;gap:10px;width:min(280px,100%)}.menu-actions .btn{width:100%}.menu-lyra{max-width:420px}.prologue{align-items:center;justify-content:center;text-align:center;background:#070604}.prologue-line{font-family:Alegreya SC,serif;font-size:36px;line-height:1.25;max-width:760px;animation:rise .36s ease}.order-screen{justify-content:flex-start;gap:20px;padding:28px 36px 24px;background:radial-gradient(ellipse at 78% 0%,rgba(245,184,75,.2),transparent 42%),radial-gradient(ellipse at 8% 100%,rgba(62,124,122,.28),transparent 46%),#120e0a}.order-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.order-head h1{color:var(--beacon);font-size:40px}.order-screen .order{min-height:260px;border-color:#6e5a3e}.order-screen .order h2{color:var(--beacon);font-size:28px}.order-screen .difficulty .btn{min-width:108px}.card.after{border-color:var(--beacon);box-shadow:0 4px 0 var(--outline),0 0 16px #f5b84b73}.upgrade-sheet{width:min(760px,calc(100% - 32px));display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}.reward-relic{max-width:520px}.order{display:flex;flex-direction:column;gap:10px;min-height:220px}.order .btn{margin-top:auto}.order:hover{border-color:var(--beacon)}.act-name{text-align:center;font-size:20px;color:var(--text-2)}.deck-btn svg{width:18px;height:22px}.strip{display:block;background-repeat:no-repeat;pointer-events:none}.actor.face-left .strip{transform:scaleX(-1)}.actor.shot{width:30px;height:15px;z-index:7}.actor.shot img{display:block;width:30px;height:15px}.actor.spell{z-index:7;pointer-events:none}.card .art .card-pic{width:100%;height:100%;object-fit:contain}.actor.tower:has(.strip) .bolt{display:none}.actor.tower>svg{transform-origin:50% 78%}.actor.tower .bolt{position:absolute;left:50%;top:34%;width:26px;height:4px;margin-left:-2px;border-radius:2px;background:#f3ead7;transform-origin:left center;opacity:0;pointer-events:none;z-index:3}.actor.tower.firing>svg{animation:tower-kick .24s ease-out}.actor.tower.firing .bolt{animation:loose .26s ease-out}.actor.tower[data-art=archer] .bolt,.actor.tower[data-art=ballista] .bolt{background:#f5b84b}.actor.tower[data-art=spark] .bolt{background:#f2e85c;height:3px;box-shadow:0 0 8px #f2e85c}.actor.tower[data-art=mortar] .bolt,.actor.tower[data-art=brazier] .bolt{background:#ff7a2f}.actor.tower[data-art=frost] .bolt{background:#7fd3f0}.actor.tower[data-art=venom] .bolt{background:#a5e07a}@keyframes tower-kick{35%{transform:scale(.9) translateY(4px) rotate(-6deg)}}@keyframes loose{0%{opacity:1;transform:rotate(var(--aim, -1.2rad)) scaleX(.3)}to{opacity:0;transform:rotate(var(--aim, -1.2rad)) translate(42px) scaleX(1)}}.deck-panel{width:min(920px,calc(100% - 48px));max-height:calc(100% - 48px);overflow:auto}.deck-grid{display:flex;flex-wrap:wrap;gap:12px}.shop-head,.shop-grid,.shop-leave{padding-left:28px;padding-right:28px}.shop-head{display:flex;justify-content:space-between;align-items:flex-end;padding-top:16px}.shop-head p{margin:4px 0 0;color:var(--text-2)}.shop-head h1{font-size:40px}.shop-grid{display:flex;gap:20px;align-items:flex-start;padding-top:12px;min-height:0}.shop-grid section{min-width:0}.shop-grid .offers{justify-content:flex-start;flex-wrap:nowrap;overflow:auto;padding:12px 4px 8px;gap:16px}.shop-side{width:340px;flex:none;display:flex;flex-direction:column;gap:8px}.shop-side h2,.shop-grid h2{color:var(--beacon);font-size:20px}.shop-leave{margin-top:auto;display:flex;justify-content:flex-end;padding-bottom:18px}.relic-row{display:flex;gap:10px;align-items:center;padding:10px;border-radius:10px;background:var(--panel);border:2px solid var(--border-dim)}.relic-row>div{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.relic-row span{font-size:13px;color:var(--text-2);line-height:1.3}.relic-row.sold{opacity:.45}.relic-chip.service svg{width:22px;height:22px}.price.short{border-color:var(--danger-bar);color:var(--danger-text);background:#2a1311}.short-note{font-size:13px;font-weight:700;color:var(--danger-text)}.card.sold{opacity:.55}.reward-actions{margin-top:auto;display:flex;justify-content:center;gap:16px;padding-bottom:24px}.pick .btn{min-width:160px}.pick:hover .card.large,.pick:focus-within .card.large{transform:translateY(-12px);border-color:var(--beacon);box-shadow:0 12px 24px #0009,0 0 20px #f5b84b8c}.story{background:radial-gradient(ellipse at 50% 110%,rgba(245,184,75,.18),transparent 50%),#120e0a}.story-card{width:min(560px,calc(100% - 48px));margin:48px auto;padding:24px;display:flex;flex-direction:column;gap:12px;background:linear-gradient(#3a2d20,#2b2118);border:2px solid var(--border);border-radius:12px;box-shadow:0 2px #0e0905}.story-card h1{font-size:36px}.card.grid{width:104px;height:146px}.turn-note{font-size:12px;font-weight:700;color:var(--text-2);line-height:1.3}.difficulty{display:flex;flex-direction:column;gap:8px;padding:0 28px}.upgrade-pair{display:flex;align-items:center;gap:12px;background:none;border:0;padding:0;color:inherit}.upgrade-arrow{font-weight:700;color:var(--beacon)}.relic-sheet{width:min(560px,calc(100% - 48px));display:flex;flex-direction:column;gap:10px;max-height:calc(100% - 48px);overflow:auto}.story-card .btn,.event-choices .btn{white-space:normal;height:auto;min-height:44px;text-align:left}.card.grid .art{height:46px}.card.grid .art .ico{width:36px;height:36px}.card.grid .cdesc{display:none}.card.grid .cost{width:22px;height:22px;font-size:13px}.card.palm.deny{animation:deny .28s ease}.fly-card{position:fixed;z-index:30;margin:0;pointer-events:none;transition:transform .32s ease-in,opacity .32s ease-in}.ghost .card{transform:rotate(-3deg) scale(1.06);box-shadow:0 12px 20px #0009,0 0 16px #f5b84b80}.ctype{gap:4px}.beacon-glow{animation:pulse 2.4s ease-in-out infinite}.mist-blob{position:absolute;border-radius:50%;background:radial-gradient(circle,rgba(120,190,180,.16),transparent 70%);pointer-events:none}.mist-blob.a{left:-60px;top:330px;width:420px;height:150px}.mist-blob.b{left:300px;top:-30px;width:360px;height:120px}.range-label{position:absolute;z-index:9;transform:translate(-50%);height:24px;padding:0 10px;border-radius:12px;background:#1d160f;border:1.5px solid #7fd3f0;color:#7fd3f0;font-size:13px;font-weight:700;line-height:22px;white-space:nowrap}.bossbar{position:absolute;left:84px;top:8px;width:600px;z-index:12;box-sizing:border-box;padding:6px 12px 8px;border-radius:10px;background:#140d08e0;border:2px solid var(--danger-bar)}.boss-name{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.boss-name b{font-family:Alegreya SC,serif;font-size:18px}.boss-name span{font-size:13px;font-weight:700;color:var(--danger-text)}.boss-hp{position:relative;height:14px;margin-top:4px;border-radius:7px;background:#3a1512;border:1.5px solid var(--outline);overflow:hidden}.boss-hp>b{display:block;height:100%;background:var(--danger-bar)}.boss-hp i{position:absolute;top:0;bottom:0;width:3px;background:var(--outline)}.fx-wash{position:absolute;inset:0;z-index:9;pointer-events:none;opacity:0}.fx-wash.leak{background:#e2584d61;animation:wash .4s ease-out}.fx-wash.beam{background:radial-gradient(ellipse at 80% 30%,rgba(245,184,75,.45),transparent 55%);animation:wash .4s ease-out}.actor.born{animation:pop .28s ease-out}.actor.recoil{animation:recoil .16s ease-out}.actor .sprite{position:relative}.actor .ice,.actor .embers,.actor .elite-ring{display:none}.actor>.shadow{display:block}.actor.freeze .ice{display:block;position:absolute;inset:6px 2px 2px;border-radius:10px;background:#bfeaf780;border:2px solid #bfeaf7;pointer-events:none}.actor.freeze .sprite svg{filter:saturate(.7) hue-rotate(160deg)}.actor.burn .embers{display:block;position:absolute;left:16px;top:-6px;width:16px;height:16px;border-radius:50%;background:radial-gradient(circle,#ffd27a,#ff7a2f 60%,transparent 72%);animation:ember .36s ease-in-out infinite;pointer-events:none}.actor.flying>.shadow{width:50%;bottom:-18px;left:50%;opacity:.7}.actor .elite-ring{position:absolute;left:-8px;top:8px;width:64px;height:64px;box-sizing:border-box;border-radius:50%;border:2.5px solid var(--elite);box-shadow:0 0 14px var(--elite);pointer-events:none}.actor.elite .elite-ring{display:block}.actor .shieldbar,.actor .hp{display:block;height:6px;border-radius:3px;background:#140d08;border:1px solid rgba(243,234,215,.5);overflow:hidden;margin-bottom:2px}.actor .shieldbar{height:5px;background:#1a3c44}.actor .shieldbar b{display:block;height:100%;background:#7fd3f0}.boss-portrait{height:140px;border-radius:8px;border:2px solid var(--danger-bar);background:radial-gradient(circle at 50% 60%,#2f5a60,#1a333b);display:grid;place-items:center}.boss-portrait .ico{width:110px;height:110px}.phases{display:flex;flex-direction:column;gap:6px}.phase{display:flex;gap:8px;align-items:center;padding:8px;border-radius:8px;background:var(--panel);border:1.5px solid var(--border-dim);font-size:13px}.phase span{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-weight:700;flex:none;background:var(--edge)}.phase.now{border:2px solid var(--danger-bar);background:var(--panel-2)}.phase.now span{background:var(--danger-bar);color:var(--outline)}.phase.done{opacity:.6}.phase.later{border-style:dashed;color:var(--text-2)}.aim-label{margin:4px 0 0;font-size:13px;font-weight:700;color:var(--text-2)}.move-btn{width:100%}.tower-stats{grid-template-columns:1fr 1fr}.tower-stats .stat{flex-direction:row;justify-content:space-between}.tower-stats .stat b i{color:var(--beacon);font-style:normal}.portrait.picked,.portrait.elite{border-color:var(--text)}.portrait.elite{border-color:var(--elite)}.elite-tag{color:#cdb6ff;font-size:13px;font-weight:700}.hp-read{display:flex;flex-direction:column;gap:4px;font-size:13px;font-weight:700}.hp-read span,.shield-read{display:flex;justify-content:space-between}.shield-read{color:#7fd3f0}.bar.tall{height:12px}.status-row{display:flex;align-items:center;gap:8px;min-height:28px;font-size:14px}.status-row .ico{width:24px;height:24px}.status-row small{margin-left:auto;color:var(--text-2)}.statuses{display:flex;flex-direction:column;gap:4px}@keyframes pulse{50%{opacity:.72;transform:scale(1.06)}}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes pop{0%{opacity:0;transform:scale(.45)}to{opacity:1;transform:none}}@keyframes recoil{40%{transform:translateY(5px) scale(.94)}}@keyframes deny{25%{transform:translate(-5px)}50%{transform:translate(5px)}75%{transform:translate(-3px)}}@keyframes wash{0%{opacity:1}to{opacity:0}}@keyframes boom-core{0%{transform:scale(.15);opacity:1}to{transform:scale(1);opacity:0}}@keyframes boom-ring{0%{transform:scale(.2);opacity:1}to{transform:scale(1);opacity:0}}@keyframes boom-flash{0%{transform:scale(.15);opacity:1}to{transform:scale(.65);opacity:0}}@keyframes ember{50%{transform:translateY(-6px);opacity:.4}}@keyframes flicker{0%,to{opacity:.9}50%{opacity:1}}@keyframes drift{0%{transform:translate(0)}to{transform:translate(48px)}}@keyframes sway{0%,to{transform:translateY(-2px) rotate(-3deg)}50%{transform:translateY(2px) rotate(3deg)}}@keyframes floaty{0%,to{transform:translateY(-4px)}50%{transform:translateY(4px)}}@media(prefers-reduced-motion:reduce){.fog,.beacon-glow,.actor.foe .sprite,.actor.flying .sprite{animation:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.plot{transition:opacity .16s ease-out}.plot:not(.high){opacity:0}.plot.high{opacity:.9}.board.placing .plot{opacity:.85}.board.moving .plot:not(.move-ok){opacity:.25}.board.moving .plot.move-ok{opacity:.7}.board.moving .plot.move-ok.near{opacity:1}.plot .tag{display:none}.plot.move-ok.near .tag{position:absolute;left:50%;top:-15px;transform:translate(-50%);z-index:3;height:17px;padding:0 5px;border-radius:9px;display:flex;align-items:center;gap:1px;background:#2b2118;border:1.5px solid var(--beacon);color:var(--beacon);font:800 11px/1 PT Sans,sans-serif;white-space:nowrap}.plot.move-ok.near .tag svg{width:10px;height:10px;fill:var(--beacon)}.plot.hover-ok{box-shadow:0 0 0 3px var(--beacon),0 0 14px var(--beacon)}.plot.hover-no{opacity:1!important;box-shadow:0 0 0 3px var(--danger-bar),0 0 14px var(--danger-bar)}.actor.tower:not(.ghost):before{content:"";position:absolute;left:50%;bottom:-4px;width:40px;height:18px;margin-left:-20px;z-index:0;border-radius:50%;border:2px solid #140d08;background:radial-gradient(ellipse at 62% 32%,#7a7466,#55524a 45%,#3a3a34 80%)}.actor.tower.merge-ok:after{content:"";position:absolute;left:50%;bottom:-8px;width:56px;height:24px;margin-left:-28px;z-index:1;border-radius:50%;border:3px solid #8be07a;box-shadow:0 0 16px #8be07acc;animation:merge-pulse .9s ease-in-out infinite alternate}@keyframes merge-pulse{to{box-shadow:0 0 26px #8be07af2}}.actor.tower.dimmed>:not(.shadow){filter:saturate(.3) brightness(.55)}.actor.tower.lifted{opacity:.35}#tower-ghost{position:fixed;left:0;top:0;z-index:30;width:54px;height:54px;pointer-events:none;transform-origin:0 0;opacity:.9;filter:drop-shadow(0 10px 8px rgba(0,0,0,.55))}#tower-ghost>*{position:absolute}#tower-ghost b.lv,#tower-ghost .sel-feet{display:none}.drag-chip{position:fixed;z-index:31;pointer-events:none;display:flex;flex-direction:column;gap:2px;padding:7px 11px;border-radius:9px;border:2px solid;white-space:nowrap;box-shadow:0 6px 14px #0000008c;font-family:PT Sans,sans-serif}.drag-chip b{font-size:14px;font-weight:800}.drag-chip span{font-size:12px;color:#e8dcc4}.drag-chip.gold{background:#3a2d20;border-color:var(--beacon);color:var(--beacon)}.drag-chip.free{background:#1e3318;border-color:#8be07a;color:#8be07a}.drag-chip.no{background:#2a1311;border-color:var(--danger-bar);color:var(--danger-text)}.drag-help{display:flex;gap:10px;padding:9px 10px;margin-bottom:8px;border-radius:8px;background:#1d160f;border:1.5px solid}.drag-help>i{flex:none;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-weight:800;font-size:13px;color:#140d08}.drag-help b{display:block;font-size:13px}.drag-help span{display:block;font-size:12px;line-height:1.35;color:#d9cbb0}.drag-help.free{border-color:#8be07a}.drag-help.free>i{background:#8be07a}.drag-help.gold{border-color:var(--beacon)}.drag-help.gold>i{background:var(--beacon)}.drag-help.no{border-color:var(--danger-bar)}.drag-help.no>i{background:var(--danger-bar)}#energy .after{font-style:normal;font-size:.6em;color:var(--beacon);margin-left:4px}.merge-free{font-size:12px;margin:6px 0 0}.merge-hint{margin:10px 0 0;padding:10px;border-radius:8px;border:1.5px dashed var(--border);background:#1d160f;font-size:12px;line-height:1.4;color:#d9cbb0}.move-btn svg:last-child{width:14px;height:14px}body.tower-drag{cursor:grabbing}.decor-slot.soft{opacity:.8}.decor-slot.under{display:none}.menu-v2{position:relative;overflow:hidden;background:radial-gradient(ellipse at 82% 18%,#2a2014,#14100c 62%)}.menu-scene{position:absolute;inset:0;z-index:0;pointer-events:none}.menu-v2 .menu-copy{position:relative;z-index:2}.ms-glow{position:absolute;right:2%;top:-22%;width:48vmax;height:48vmax;border-radius:50%;background:radial-gradient(circle,rgba(245,184,75,.42),rgba(245,184,75,.14) 40%,transparent 66%);animation:flicker 2.4s ease-in-out infinite}.ms-beam{position:absolute;right:14%;top:13%;width:72%;height:9%;transform-origin:100% 50%;transform:rotate(-8deg);background:linear-gradient(270deg,rgba(255,226,160,.3),rgba(255,226,160,.08) 55%,transparent);clip-path:polygon(0 0,100% 42%,100% 58%,0 100%);animation:beam-sway 8s ease-in-out infinite alternate}@keyframes beam-sway{0%{transform:rotate(-10deg)}to{transform:rotate(-6deg)}}.ms-ridges{position:absolute;left:0;bottom:0;width:100%;height:28%}.ms-isle{position:absolute;right:4%;bottom:3%;width:26%;height:14%;border-radius:50% 50% 0 0;background:radial-gradient(ellipse at 50% 100%,#413b34,#2b2724 60%,transparent 72%)}.ms-tower{position:absolute;right:12%;bottom:7%;height:80%;width:auto}.ms-fog{position:absolute;left:0;bottom:0;width:100%;height:38%;background:linear-gradient(0deg,rgba(62,124,122,.22),transparent)}.ms-shine{position:absolute;right:6%;bottom:0;width:28%;height:15%;background:radial-gradient(ellipse at 50% 30%,rgba(245,184,75,.24),transparent 70%)}.ms-eyes{position:absolute;display:flex;gap:5px;animation:eyes-blink 6s ease-in-out infinite}.ms-eyes i{width:5px;height:3px;border-radius:50%;background:#bfefe6;box-shadow:0 0 6px #bfefe6}@keyframes eyes-blink{0%,90%,to{opacity:.9}94%{opacity:0}}.ms-fly{position:absolute;width:3px;height:3px;border-radius:50%;background:#ffe7a8;box-shadow:0 0 6px var(--beacon);animation:fly-drift 7s ease-in-out infinite alternate}@keyframes fly-drift{to{transform:translate(14px,-18px)}}.ms-shade{position:absolute;left:0;top:0;width:58%;height:100%;background:linear-gradient(90deg,rgba(14,11,8,.94),rgba(14,11,8,.72) 48%,transparent)}.menu-shards{position:absolute;z-index:2;right:24px;top:20px;display:flex;align-items:center;gap:8px;height:36px;padding:0 12px;border-radius:18px;background:#14100cb3;border:1.5px solid var(--border);color:var(--beacon);font-weight:700}.menu-shards span{font-size:12px;font-weight:400;color:var(--text-2)}.menu-version{position:absolute;z-index:2;left:24px;bottom:8px;margin:0;font-size:11px;color:#6e5a3e}.menu-v2 .btn.continue{flex-direction:column;gap:0;min-height:60px}.menu-v2 .btn.continue small{font-size:12px;opacity:.75}@media(max-width:800px)and (orientation:portrait){.ms-tower{right:10%;bottom:auto;top:6%;height:34%}.ms-beam{top:9%}.menu-version{display:none}.ms-glow{right:-20%;top:-10%}.ms-shade{width:100%;height:100%;background:linear-gradient(180deg,transparent 30%,rgba(14,11,8,.92) 52%,#14100c 70%)}.menu-v2 .menu-copy{padding:40vh 20px 24px;justify-content:flex-start;gap:10px}.menu-v2 .menu-actions{width:100%}.menu-v2 .lyra{display:none}}@media(prefers-reduced-motion:reduce){.ms-glow,.ms-beam,.ms-eyes,.ms-fly{animation:none}}.actor.zone{pointer-events:none;opacity:.95}.actor.zone .strip{display:block}.actor.foe.guard{width:34px}.actor.foe.guard .hp b,.hp.ally b{background:#8be07a}.actor.foe.guard.holding .sprite{animation:guard-shake .12s linear infinite}@keyframes guard-shake{50%{transform:translate(1px)}}.ward-shield{position:absolute;left:-2px;top:-4px;width:14px;height:14px;z-index:6;background:#9ce0f0;border:2px solid #140d08;clip-path:path("M7 0 L14 3 V8 Q14 12 7 14 Q0 12 0 8 V3 Z");opacity:.9}.altar-count{position:absolute;left:50%;top:-14px;transform:translate(-50%);z-index:6;font:800 11px/1 PT Sans,sans-serif;color:var(--beacon);text-shadow:0 2px 0 #140d08;white-space:nowrap}@media(prefers-reduced-motion:reduce){.actor.foe.guard.holding .sprite{animation:none}}.reward-screen{background:radial-gradient(ellipse at 50% 35%,#3a2d20,#1d160f 60%,#120e0a)}.reward-screen .eyebrow{letter-spacing:6px;margin:0;color:#9c8a6e}.reward-screen h1{font-size:46px;color:var(--beacon);text-shadow:0 0 30px rgba(245,184,75,.35)}.loot-row{display:flex;gap:10px}.reward-screen .loot-pill{height:38px;padding:0 14px;border-radius:19px;background:#2b2118;border:1.5px solid var(--border);color:var(--beacon);font-weight:700;display:inline-flex;align-items:center;gap:8px}.reward-relic{border:1.5px solid var(--beacon);border-radius:20px;padding:6px 14px;background:#2b2118}.pick-title{font-family:Alegreya SC,serif;font-size:20px;color:#d9cbb0;margin:8px 0 0}.reward-screen .offers{gap:36px}.reward-screen .pick{display:flex;flex-direction:column;align-items:center;gap:14px;transition:transform .12s ease-out}.reward-screen .pick:hover{transform:translateY(-10px)}.reward-screen .pick:hover .btn{background:var(--beacon);color:#2b2118;border-color:#140d08}.reward-actions .btn.secondary{background:transparent;box-shadow:none;border-color:#4a3a28;color:var(--text-2)}.codex-screen{display:flex;flex-direction:column;gap:14px;padding:24px 32px;overflow:auto}.codex-head{display:flex;align-items:baseline;gap:16px}.codex-head h1{margin:0}.codex-count{color:var(--beacon);font-weight:700}.codex-tabs{gap:8px}.codex-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;align-items:start;flex:none;overflow:visible}.codex-list .offer{position:relative;min-height:0;padding:12px;display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center}.codex-list .offer h2{font-size:17px;margin:0}.codex-list .offer p{margin:0;font-size:13px;line-height:1.35;color:#d9cbb0}.codex-list .offer.locked{opacity:.75}.codex-list .offer.locked h2{color:#6e5a3e;font-size:14px}.codex-list .silhouette{filter:brightness(0) opacity(.55)}.codex-list .lock{position:absolute;right:10px;top:10px;width:16px;height:18px;background:#6e5a3e;clip-path:path("M3 8 V5 A5 5 0 0 1 13 5 V8 H16 V18 H0 V8 Z M5.5 8 H10.5 V5 A2.5 2.5 0 0 0 5.5 5 Z")}body.compact .fight{grid-template-columns:minmax(0,1fr) 196px}body.compact .hud-bot{grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto minmax(0,1fr);gap:6px;padding:6px}body.compact .energy-box{grid-column:1 / -1;grid-row:1;flex-direction:row;align-items:center;gap:10px}body.compact .energy-box .energy-bar,body.compact .energy-box .turn-note{display:none}body.compact .piles{grid-column:1 / -1;grid-row:2;justify-content:space-between}body.compact .hand{grid-column:1 / -1;grid-row:3;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none;grid-auto-rows:84px;gap:10px 8px;padding-top:8px}body.compact .card.palm{min-height:0}body.compact .card.palm .art{height:100%;border-bottom:0}body.compact .card.palm .art .card-pic{width:100%;height:100%;object-fit:contain}body.compact .card.palm .body{display:none}.actor.tower.on-road:before{display:none}.actor.tower.on-road>.shadow{display:none}.actor.tower.on-road{transform:translateY(14px)}.actor.tower.on-road>b.lv{bottom:10px}.actor.shot[data-art=ballista] img,.actor.shot[data-art=sentinel] img{width:44px;height:22px;margin:-4px 0 0 -7px;filter:brightness(1.35) drop-shadow(0 0 3px rgba(255,241,201,.8))}.hand{overflow:visible;align-items:flex-end;padding-bottom:14px}.hand>.card+.card{margin-left:calc(-1 * var(--overlap, 0px))}.hand>.card:hover,.hand>.card.armed{z-index:3}#field{background:radial-gradient(ellipse at 20% 30%,rgba(34,51,47,.8),transparent 40%),radial-gradient(ellipse at 80% 70%,rgba(28,43,43,.8),transparent 45%),#18231f}#field:after{content:"";position:absolute;inset:0;z-index:7;pointer-events:none;background:radial-gradient(ellipse at 55% 50%,transparent 62%,rgba(5,4,3,.45) 100%)}.board .vignette,.board .cold{display:none}.hub-screen{display:flex;flex-direction:column;gap:14px;padding:0 32px 32px;overflow:auto;background:radial-gradient(ellipse at 50% 0%,#2a2014,#14100c 60%)}.hub-head{position:sticky;top:0;z-index:3;display:flex;align-items:center;gap:16px;padding:18px 0 12px;background:linear-gradient(#17110b 70%,#17110b00)}.hub-head h1{margin:0}.hub-wallet{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 14px;border-radius:20px;background:#2b2118;border:1.5px solid var(--beacon);color:var(--beacon);font-weight:800;font-size:18px}.hub-wallet small{font-size:12px;font-weight:400;color:var(--text-2)}.hub-tabs{display:flex;gap:8px}.hub-tab{display:inline-flex;align-items:baseline;gap:8px;height:44px;padding:0 18px;border-radius:8px;border:2px solid var(--border);background:#2b2118;color:var(--text);font:700 16px Alegreya SC,serif;cursor:pointer}.hub-tab small{font:700 12px PT Sans,sans-serif;color:var(--text-2)}.hub-tab.on{background:var(--beacon);border-color:#140d08;color:#2b2118}.hub-tab.on small{color:#5a4630}.hub-lead{margin:0;color:var(--text-2)}.hub-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;justify-content:start}.hub-tile{display:flex;flex-direction:column;gap:8px;padding:12px;border-radius:12px;background:#2b2118;border:1.5px solid #4a3a28}.hub-tile.owned{border-color:#6e5a3e}.hub-tile.far .hub-art{filter:saturate(.5) brightness(.75)}.hub-art{height:110px;border-radius:8px;display:grid;place-items:center;overflow:hidden;border:1.5px solid #140d08;background:linear-gradient(#2b4a50,#1a2e33)}.hub-art.type-relic{background:radial-gradient(circle,#3a2d20,#1d160f)}.hub-art.type-altar{background:radial-gradient(circle,#4a4222,#2a2614)}.hub-art .card-pic{width:100%;height:100%;object-fit:contain}.hub-tile h2{margin:0;font-size:18px}.hub-tile p{margin:0;font-size:13px;line-height:1.4;color:#d9cbb0;flex:1}.hub-foot{display:flex;flex-direction:column;gap:6px}.hub-buy{width:100%}.hub-buy svg{margin:0 2px 0 4px;vertical-align:-3px}.hub-need{height:6px;border-radius:3px;background:#140d08;overflow:hidden}.hub-need i{display:block;height:100%;background:linear-gradient(90deg,#b87a1e,var(--beacon))}.hub-short{font-size:12px;color:var(--danger-text)}.hub-tile:not(.far) .hub-short{color:#8be07a}.hub-owned{color:#8be07a;font-weight:700}@media(max-width:800px){.hub-screen{padding:0 16px 24px}.hub-head{flex-wrap:wrap;gap:10px}.hub-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}}.hub-art.type-relic .relic-chip{width:76px;height:76px;border-width:3px;border-radius:18px;display:grid;place-items:center;background:#1d160f}.hub-art.type-relic .relic-chip svg{width:48px;height:48px}.hub-art.type-relic .relic-chip svg path{stroke-width:2.2}.hub-altar-art{display:grid;place-items:center;filter:drop-shadow(0 4px 8px rgba(0,0,0,.5))}.admin .lab{display:flex;flex-direction:column;gap:6px;padding:10px;margin:8px 0;border-radius:8px;border:1.5px solid var(--border);background:#1d160f}.admin .lab .aim-label{margin:4px 0 0}.lab-row{display:flex;flex-wrap:wrap;gap:6px}.lab-row .btn{min-height:32px;height:32px;padding:0 10px;font-size:13px;flex:1 1 auto}.lab .btn.on{background:var(--beacon);color:#2b2118;border-color:#140d08}.card.palm,.card.grid{overflow:visible;box-shadow:0 3px #140d08;border-color:#140d08}.card.palm:after,.card.grid:after{content:"";position:absolute;inset:2px;border-radius:8px;pointer-events:none;z-index:3;box-shadow:inset 0 0 0 1.5px var(--common)}.card.palm.rarity-U,.card.grid.rarity-U,.card.palm.rarity-R,.card.grid.rarity-R{box-shadow:0 3px #140d08}.card.palm.rarity-U:after,.card.grid.rarity-U:after{box-shadow:inset 0 0 0 1.5px var(--uncommon)}.card.palm.rarity-R:after,.card.grid.rarity-R:after{box-shadow:inset 0 0 0 2px var(--rare),0 0 10px #f5b84b59}.card.palm .art,.card.grid .art{width:auto;margin:5px 5px 0;height:60px;border-radius:6px;border:1.5px solid #140d08;overflow:hidden;display:flex;align-items:center;justify-content:center}.card .art .card-pic{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;padding:2px;box-sizing:border-box}.card.palm .cost,.card.grid .cost{left:2px;top:2px;width:26px;height:26px;font-size:15px;font-weight:800;z-index:4;box-shadow:0 2px #140d08}.card.palm .body,.card.grid .body{padding:5px 7px 6px;gap:2px;min-height:0;overflow:hidden}.card.palm .cname{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card.palm .cdesc{font-size:11.5px;line-height:1.25;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.card.grid{width:156px;height:auto;min-height:216px}.card.grid .art{height:84px}.card.grid .cname{font-size:15px}.card.grid .cdesc{font-size:12.5px;line-height:1.35;color:#d9cbb0}.card.grid .cost{width:30px;height:30px;font-size:17px}.deck-panel .deck-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(156px,1fr));gap:16px;justify-items:center;align-items:start;padding:4px}body.compact .card.palm .art{margin:4px;height:auto;flex:1}.hub-art{position:relative}.hub-art .card-pic{position:absolute;inset:6px;width:calc(100% - 12px);height:calc(100% - 12px);max-width:none;max-height:none;object-fit:contain}.card.grid .cdesc{display:block}.modal-layer .panel.deck-panel{width:min(1040px,calc(100% - 48px));max-height:calc(100% - 48px)}.deck-stack{position:relative}.stack-n{position:absolute;right:-6px;top:-8px;z-index:5;min-width:30px;height:26px;padding:0 6px;box-sizing:border-box;border-radius:13px;background:#2b2118;border:2px solid var(--beacon);color:var(--beacon);font:800 14px/22px PT Sans,sans-serif;text-align:center}.codex-list .offer.card-only{padding:10px;background:transparent;border-color:transparent}.statbook{width:min(1080px,calc(100% - 24px));height:calc(100% - 24px);max-height:none;padding:0;gap:0;overflow:hidden;border-color:var(--border)}.statbook-head{display:flex;align-items:center;gap:10px;padding:12px 14px;border-bottom:1.5px solid #4a3a28;background:#2b2118}.statbook-head h2{margin:0 6px 0 0}.statbook-head .hub-tab{height:36px;padding:0 14px;font-size:15px}.statbook-search{height:36px;width:180px;padding:0 10px;border-radius:8px;border:2px solid var(--border);background:#120e0a;color:var(--text);font:14px PT Sans,sans-serif}.statbook-body{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 340px}.statbook-grid{overflow:auto;padding:12px;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));align-content:start;gap:10px}.stat-pick{position:relative;min-height:0;padding:8px 6px;gap:3px;background:#2b2118;border-width:1.5px;cursor:pointer}.stat-pick:hover{border-color:var(--beacon)}.stat-pick.on{border-color:var(--beacon);box-shadow:0 0 0 2px #f5b84b59;background:#3a2d20}.stat-pick.tuned:after{content:"";position:absolute;right:6px;top:6px;width:8px;height:8px;border-radius:50%;background:#8be07a;box-shadow:0 0 6px #8be07a}.stat-pick b{font-size:13px;line-height:1.15;text-align:center}.stat-pick small{font-size:11px;color:var(--text-2);font-weight:400;white-space:nowrap}.stat-pick .strip,.stat-pick .portrait-stack{flex:none}.portrait-stack{position:relative;display:inline-block;flex:none}.portrait-stack>*{position:absolute;left:0;top:0}.stat-editor{overflow:auto;padding:14px;border-left:1.5px solid #4a3a28;background:#1d160f;display:flex;flex-direction:column;gap:10px}.stat-editor.empty{justify-content:center;text-align:center}.stat-who{display:flex;align-items:center;gap:12px;font-size:22px;padding:6px;border-radius:10px;background:radial-gradient(circle at 30% 50%,#24332f,#18231f)}.stat-who b{display:block;font-family:Alegreya SC,serif}.stat-who small{font-size:12px;color:var(--text-2)}.stat-field{grid-template-columns:1fr auto;padding:6px 8px;border-radius:8px;border:1.5px solid transparent}.stat-field.changed{border-color:#8be07a;background:#8be07a0f}.stat-label{display:flex;flex-direction:column;font-size:14px;font-weight:700}.stat-label small{font-size:11px;font-weight:400;color:var(--text-2)}.stat-input{display:flex;align-items:center;gap:4px}.stat-input .btn{width:32px;min-width:32px;height:32px;min-height:32px;padding:0;font-size:18px}.stat-input input{width:72px;height:32px;text-align:center;border-radius:8px;border:2px solid var(--border);background:#120e0a;color:var(--text);font:700 14px PT Sans,sans-serif}.admin .unit-btn{display:flex;align-items:center;gap:6px;justify-content:flex-start;text-align:left;padding:0 6px}.admin .unit-btn>:first-child{flex:none}.side .portrait .strip,.side .portrait .portrait-stack{flex:none}.relic-chip{display:inline-grid;place-items:center;overflow:hidden}.relic-chip .relic-pic{width:100%;height:100%;object-fit:contain;display:block}.relic-pick-screen{display:flex;flex-direction:column;align-items:center;gap:10px;padding:40px 24px;overflow:auto;background:radial-gradient(ellipse at 50% 30%,#3a2d20,#14100c 65%)}.relic-pick-screen h1{margin:0;color:var(--beacon);font-size:44px;text-shadow:0 0 26px rgba(245,184,75,.35)}.relic-pick-screen .eyebrow{margin:0;letter-spacing:6px;color:#9c8a6e;text-transform:uppercase}.relic-choices{display:flex;flex-wrap:wrap;gap:24px;justify-content:center;margin-top:18px}.relic-choice{width:240px;display:flex;flex-direction:column;align-items:center;gap:8px;padding:18px 16px;border-radius:14px;background:#2b2118;border:2px solid var(--common);text-align:center;transition:transform .12s ease-out}.relic-choice:hover{transform:translateY(-8px)}.relic-choice.rarity-U{border-color:var(--uncommon)}.relic-choice.rarity-R{border-color:var(--rare);box-shadow:0 0 18px #f5b84b4d}.relic-choice-art{width:128px;height:128px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle,#3a2d20,#1d160f 70%)}.relic-choice-art .relic-chip{width:112px;height:112px;border:0;background:transparent}.relic-rarity{font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--text-2)}.relic-choice h2{margin:0;font-size:20px}.relic-choice p{margin:0;flex:1;font-size:14px;line-height:1.4;color:#d9cbb0}.relic-choice .btn{width:100%}.relic-owned{display:flex;align-items:center;gap:10px;margin-top:16px}.relic-own{display:inline-flex;align-items:center;gap:6px}.relic-own .relic-chip{width:32px;height:32px}.menu-profile{position:absolute;z-index:2;left:24px;top:20px;display:inline-flex;align-items:center;gap:8px;height:36px;padding:0 12px 0 4px;border-radius:18px;background:#14100cb3;border:1.5px solid var(--border);color:var(--text);font:700 14px PT Sans,sans-serif;cursor:pointer}.menu-profile:hover{border-color:var(--beacon)}.profile-avatar{width:28px;height:28px;flex:none;border-radius:50%;display:grid;place-items:center;background:#3a2d20;border:2px solid var(--beacon);color:var(--beacon);font:800 14px Alegreya SC,serif}.profile-screen{display:flex;flex-direction:column;gap:14px;padding:0 32px 32px;overflow:auto;background:radial-gradient(ellipse at 50% 0%,#2a2014,#14100c 60%)}.profile-cols{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,1fr);gap:20px;align-items:start}.profile-list,.profile-new{display:flex;flex-direction:column;gap:10px;padding:16px;border-radius:12px;background:#2b2118;border:1.5px solid #4a3a28}.profile-list h2,.profile-new h2{margin:0 0 4px;font-size:20px}.profile-card{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 40px 10px 12px;border-radius:10px;background:#1d160f;border:1.5px solid #4a3a28}.profile-card.on{border-color:var(--beacon)}.profile-card .profile-avatar{width:40px;height:40px;font-size:18px}.profile-meta b{display:block;font-size:16px}.profile-meta small{color:var(--text-2);font-size:12px}.profile-act{display:flex;gap:6px;align-items:center}.profile-act input,.profile-new input{height:38px;padding:0 10px;border-radius:8px;border:2px solid var(--border);background:#120e0a;color:var(--text);font:15px PT Sans,sans-serif}.profile-act input{width:150px}.profile-new label{display:flex;flex-direction:column;gap:4px;font-size:13px;font-weight:700}.profile-del{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:28px;height:28px;min-height:28px;font-size:13px}.profile-on{color:#8be07a;font-weight:700}.profile-error{margin:0;padding:10px 14px;border-radius:8px;background:#2a1311;border:1.5px solid var(--danger-bar);color:var(--danger-text);font-weight:700}.profile-remember{display:flex;align-items:center;gap:8px;font-size:14px}.muted.small{font-size:12px;line-height:1.4}@media(max-width:800px){.profile-cols{grid-template-columns:1fr}.profile-screen{padding:0 16px 24px}.profile-act input{width:110px}}.menu-version .srv-on{color:#8be07a}.menu-version .srv-off{color:#9c8a6e}.editor-ask{width:min(420px,calc(100vw - 32px));display:flex;flex-direction:column;gap:12px}.editor-ask h2{margin:0}.editor-ask .field{display:flex;flex-direction:column;gap:6px}.editor-ask input{padding:10px 12px;border-radius:8px;border:1.5px solid var(--line, #3a3a48);background:#00000059;color:inherit;font:inherit}.coop-screen{display:flex;flex-direction:column;align-items:center;gap:14px;padding:32px;overflow:auto;text-align:center;background:radial-gradient(ellipse at 50% 0%,#2a2014,#14100c 60%)}.coop-screen .field{display:flex;flex-direction:column;gap:6px;text-align:left;width:min(320px,100%)}.coop-screen input{background:var(--panel-dark);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:10px 12px;font:inherit}.coop-actions{display:flex;flex-direction:column;align-items:center;gap:12px}.coop-code-input{width:96px;text-transform:uppercase;letter-spacing:4px;text-align:center}.coop-code{font-size:48px;letter-spacing:12px;color:var(--beacon);margin:0;font-weight:700}.coop-seats{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px;width:min(360px,100%)}.coop-seat{display:flex;align-items:center;gap:10px;padding:10px 14px;border:1px solid var(--border-dim);border-radius:10px;background:var(--panel)}.coop-seat i{width:14px;height:14px;border-radius:50%;background:var(--pc, transparent);border:2px solid var(--pc, var(--border))}.coop-seat small{margin-left:auto;color:var(--text-3)}.coop-seat.empty{opacity:.5;border-style:dashed}.coop-bar{position:absolute;top:6px;left:50%;transform:translate(-50%);z-index:60;display:flex;gap:6px;align-items:center;padding:4px 6px;border-radius:999px;background:#140e09d9;border:1px solid var(--border-dim);pointer-events:auto}.fight~.coop-bar{top:auto;bottom:182px}.coop-p{display:inline-flex;align-items:center;gap:6px;padding:2px 10px 2px 6px;border-radius:999px;font-size:13px;color:var(--text)}.coop-p.me{background:#ffffff0f}.coop-p i{width:10px;height:10px;border-radius:50%;background:var(--pc)}.coop-p em{font-style:normal;font-size:11px;color:var(--text-3)}.coop-p em.ready{color:#7fd88a}.coop-quit{background:none;border:0;color:var(--text-3);font-size:18px;line-height:1;padding:0 6px;cursor:pointer}.voted{position:relative;box-shadow:0 0 0 2px #7fd88a8c}.vote-dots{position:absolute;top:-10px;right:-8px;display:flex;gap:2px;pointer-events:none;z-index:2}.vote-dots i{display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:var(--pc);color:#140d08;font-style:normal;font-size:11px;font-weight:700;border:2px solid #140d08}#coop-cursors{position:fixed;inset:0;pointer-events:none;z-index:900}.coop-cursor{position:absolute;display:flex;align-items:flex-start;gap:2px;transition:left .08s linear,top .08s linear}.coop-cursor svg path{fill:var(--pc);stroke:#140d08;stroke-width:1.5}.coop-cursor span{margin-top:12px;padding:1px 6px;border-radius:6px;background:var(--pc);color:#140d08;font-size:12px;font-weight:700;white-space:nowrap;display:flex;flex-direction:column}.coop-cursor small{font-weight:400;font-size:11px}.coop-ring{position:absolute;transform:translate(0);border:3px solid var(--pc);border-radius:10px;box-shadow:0 0 10px var(--pc)}.cam-btns{position:absolute;right:8px;bottom:8px;z-index:5;display:flex;flex-direction:column;gap:4px}.cam-btns button{width:32px;height:32px;border-radius:8px;border:1px solid var(--border);background:#1d160fd9;color:var(--text);font-size:18px;cursor:pointer}.actor.tower.owned:before{content:"";position:absolute;left:50%;bottom:0;width:40px;height:12px;transform:translate(-50%);border-radius:50%;background:radial-gradient(ellipse,color-mix(in srgb,var(--owner) 75%,transparent),transparent 72%);z-index:0;pointer-events:none}.actor.tower.owned:after{content:"";position:absolute;left:2px;top:6px;width:3px;height:18px;background:#3a2d20;border-radius:2px;box-shadow:3px 1px 0 -0px transparent;z-index:6;pointer-events:none}.actor.tower.owned>.pennant{position:absolute;left:5px;top:6px;width:12px;height:9px;background:var(--owner);clip-path:polygon(0 0,100% 50%,0 100%);z-index:6;pointer-events:none;filter:drop-shadow(0 1px 0 #140d08)}.tower-owner{display:flex;align-items:center;gap:6px;margin:4px 0 0;font-size:13px;color:var(--text-2)}.tower-owner i{width:10px;height:10px;border-radius:50%;background:var(--pc)}.coop-as{margin:0;font-size:16px;color:var(--text)}.coop-h{margin:8px 0 0;font-size:18px}.coop-rooms{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px;width:min(420px,100%)}.coop-room{display:flex;align-items:center;gap:10px;padding:8px 10px 8px 14px;border:1px solid var(--border-dim);border-radius:10px;background:var(--panel);text-align:left}.coop-room b{flex:1}.coop-room span{color:var(--text-3);font-size:13px}.coop-room.empty{justify-content:center;color:var(--text-3);border-style:dashed}.coop-bycode{align-items:center;gap:8px}.auth-screen .menu-copy{gap:14px}.auth-screen .lyra{margin:0}.auth-card{display:flex;flex-direction:column;gap:14px;width:100%;max-width:360px;padding:18px;border-radius:14px;background:#1d160fe6;border:2px solid var(--border);box-shadow:0 10px 30px #00000073,inset 0 1px #f5b84b1f;backdrop-filter:blur(4px)}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:4px;border-radius:10px;background:var(--ink);border:1.5px solid var(--border-dim)}.auth-tab{height:38px;border:0;border-radius:7px;background:transparent;color:var(--text-2);font:700 15px Alegreya SC,serif;cursor:pointer}.auth-tab:hover{color:var(--text)}.auth-tab.on{background:var(--beacon);color:#2b2118;box-shadow:0 2px 0 var(--beacon-shadow)}.auth-form{display:flex;flex-direction:column;gap:12px}.auth-field{display:flex;flex-direction:column;gap:6px;font:700 13px PT Sans,sans-serif;color:var(--text-2);letter-spacing:.02em}.auth-field input{height:44px;padding:0 12px;border-radius:9px;border:2px solid var(--border-dim);background:#120e0a;color:var(--text);font:16px PT Sans,sans-serif;transition:border-color .15s,box-shadow .15s}.auth-field input:focus{outline:none;border-color:var(--beacon);box-shadow:0 0 0 3px #f5b84b2e}.auth-field input::placeholder{color:#6f604b}.auth-form .btn{width:100%}.auth-error{margin:0;padding:8px 12px;border-radius:8px;background:#c9453b26;border:1.5px solid var(--danger);color:var(--danger-text);font:700 14px PT Sans,sans-serif}.auth-note{margin:0;font:13px PT Sans,sans-serif;color:var(--text-3);line-height:1.35}.auth-fine{margin:0;max-width:360px;font:12px PT Sans,sans-serif;color:#8d7d65;line-height:1.35}.auth-who{display:flex;align-items:center;gap:12px}.auth-who .profile-avatar{width:44px;height:44px;font-size:20px}.auth-who div{display:flex;flex-direction:column;gap:2px}.auth-who b{font:700 20px Alegreya SC,serif}.auth-who small{font:13px PT Sans,sans-serif;color:var(--text-3)}.coach{position:absolute;left:50%;bottom:208px;transform:translate(-50%);z-index:6;display:flex;align-items:center;gap:12px;width:min(640px,calc(100% - 32px));padding:12px 16px;border-radius:14px;pointer-events:none;background:#17110bf2;border:2px solid var(--beacon);box-shadow:0 8px 26px #00000080,0 0 0 4px #f5b84b1f}.coach.pop{animation:coach-pop .32s ease-out}@keyframes coach-pop{0%{transform:translate(-50%) translateY(8px) scale(.97);opacity:.4}to{transform:translate(-50%);opacity:1}}.coach-face{flex:none;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 40% 35%,#ffd98a,var(--beacon) 60%,var(--beacon-shadow));color:#2b2118;font:800 22px Alegreya SC,serif;border:2px solid var(--outline)}.coach-text{margin:0;font:600 18px/1.35 PT Sans,sans-serif;color:var(--text)}.coach-glow{position:relative;z-index:3;animation:coach-glow 1.2s ease-in-out infinite;border-radius:10px}@keyframes coach-glow{0%,to{box-shadow:0 0 0 3px #f5b84be6,0 0 14px 4px #f5b84b8c}50%{box-shadow:0 0 0 5px #f5b84b80,0 0 26px 10px #f5b84b40}}.coach-ring{position:fixed;z-index:7;pointer-events:none;border-radius:8px;border:3px solid var(--beacon);background:#f5b84b2e;animation:coach-ring 1.2s ease-in-out infinite}@keyframes coach-ring{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.12);opacity:.65}}.coach-hand{position:fixed;left:0;top:0;z-index:8;width:44px;height:44px;pointer-events:none;animation:coach-drag 2.4s ease-in-out infinite;filter:drop-shadow(0 3px 4px rgba(0,0,0,.6))}.coach-hand svg{width:100%;height:100%}.coach-hand path{fill:#f3ead7;stroke:#140d08;stroke-width:1.4;stroke-linejoin:round}@keyframes coach-drag{0%{transform:translate(var(--fx),var(--fy)) scale(1.1);opacity:0}12%{transform:translate(var(--fx),var(--fy)) scale(1.1);opacity:1}22%{transform:translate(var(--fx),var(--fy)) scale(.9);opacity:1}72%{transform:translate(var(--tx),var(--ty)) scale(.9);opacity:1}84%{transform:translate(var(--tx),var(--ty)) scale(1.1);opacity:1}to{transform:translate(var(--tx),var(--ty)) scale(1.1);opacity:0}}body.compact .coach{bottom:150px}@media(prefers-reduced-motion:reduce){.coach-hand,.coach-ring,.coach-glow,.coach.pop{animation:none}}.map-screen{--map-water: #101c1d;--map-moss: #1d2b25;--map-isle: #2a3a2f;--map-rim: #4a3a28;background:radial-gradient(ellipse at 8% 60%,rgba(245,184,75,.16),transparent 40%),linear-gradient(180deg,#0f1a1c,#142320 55%,#0d1412);gap:0}.map-screen.act-2{--map-water: #17161a;--map-moss: #24222a;--map-isle: #34303a}.map-screen.act-3{--map-water: #0d0c16;--map-moss: #191629;--map-isle: #262038}.map-board{position:relative;flex:1;min-height:0;overflow:hidden;isolation:isolate}.map-board:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 50% 50%,transparent 50%,rgba(4,6,5,.75) 100%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1280 660' preserveAspectRatio='none'%3E%3Cg fill='none' stroke='%239CC7C0' stroke-opacity='.07' stroke-width='2'%3E%3Cpath d='M0 120 Q160 90 320 130 T640 110 T960 140 T1280 100'/%3E%3Cpath d='M0 300 Q200 270 400 310 T800 290 T1280 300'/%3E%3Cpath d='M0 520 Q200 490 360 540 T700 520 T1060 560 T1280 520'/%3E%3C/g%3E%3Cg stroke='%233E5A4A' stroke-opacity='.55' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='M110 640 v-26 M118 640 v-36 M126 640 v-22 M1180 70 v-22 M1188 70 v-30 M1196 70 v-18 M640 650 v-18 M648 650 v-28 M420 30 v-16 M428 30 v-24 M900 640 v-20 M908 640 v-30'/%3E%3C/g%3E%3C/svg%3E") center / 100% 100% no-repeat,radial-gradient(ellipse at 30% 75%,var(--map-moss),transparent 45%),radial-gradient(ellipse at 70% 25%,var(--map-moss),transparent 40%),var(--map-water)}.map-sky{position:absolute;inset:0;pointer-events:none;z-index:0}.map-lighthouse{position:absolute;left:-6px;bottom:6%;width:64px;height:160px;filter:drop-shadow(0 6px 10px rgba(0,0,0,.6))}.lh-beam{position:absolute;left:34px;bottom:calc(6% + 112px);width:48%;height:140px;margin-bottom:-70px;transform-origin:0 50%;background:linear-gradient(90deg,rgba(255,226,160,.2),rgba(255,226,160,.04) 60%,transparent);clip-path:polygon(0 47%,100% 0,100% 100%,0 53%);animation:map-beam 14s ease-in-out infinite alternate}@keyframes map-beam{0%{transform:rotate(-22deg)}to{transform:rotate(4deg)}}.lair-glow{position:absolute;right:-6%;top:20%;width:30%;height:60%;background:radial-gradient(ellipse,rgba(226,88,77,.22),transparent 65%)}.mist{position:absolute;border-radius:50%;filter:blur(30px);background:#9cc7c017;animation:map-mist 40s linear infinite alternate}.mist.m1{left:10%;top:8%;width:40%;height:26%}.mist.m2{left:45%;top:60%;width:46%;height:30%;animation-duration:55s;animation-direction:alternate-reverse}.mist.m3{left:25%;top:38%;width:30%;height:18%;animation-duration:33s}@keyframes map-mist{0%{transform:translate(-6%)}to{transform:translate(8%)}}.floors{position:absolute;left:4%;right:4%;top:8px;height:22px;z-index:2}.floors span{position:absolute;width:22px;height:22px;margin-left:-11px;border-radius:50%;display:grid;place-items:center;font:700 11px/1 PT Sans,sans-serif;color:#6e7a70;background:#0a100e99;border:1px solid #2c3a34}.floors span.past{color:#8a7458;border-color:#4a3a28}.floors span.hot{color:#2b2118;background:var(--beacon);border-color:var(--beacon);box-shadow:0 0 10px #f5b84b99}.floors span.boss{color:var(--danger-text);border-color:#6a2a24}.map-graph{position:absolute;inset:44px 4% 64px;z-index:1}.map-graph svg.links{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.isle{fill:var(--map-isle);opacity:.55;filter:blur(6px)}.isle.s-lost{opacity:.25}.isle.s-here,.isle.s-open{fill:#4a3a22;opacity:.75}.way{fill:none;stroke-linecap:round;vector-effect:non-scaling-stroke}.way.w-lost{stroke:#33413c;stroke-width:2;stroke-dasharray:2 8;opacity:.55}.way.w-ahead{stroke:#6f8c84;stroke-width:2.5;stroke-dasharray:3 7;opacity:.8}.way.w-trail{stroke:#f5b84b;stroke-width:5}.way.w-open{stroke:#ffd27a;stroke-width:3.5;stroke-dasharray:8 8;animation:map-march 1.2s linear infinite}.way-glow{fill:none;stroke-linecap:round;vector-effect:non-scaling-stroke;stroke:#f5b84b59;stroke-width:14;filter:blur(4px)}.way-glow.w-open{stroke:#f5b84b2e}@keyframes map-march{to{stroke-dashoffset:-16}}.map-fog{position:absolute;top:-44px;bottom:-64px;right:-6%;z-index:3;pointer-events:none;background:linear-gradient(90deg,transparent,rgba(14,22,21,.55) 12%,rgba(14,22,21,.72) 60%,rgba(14,22,21,.4));backdrop-filter:blur(1.5px);-webkit-mask-image:linear-gradient(90deg,transparent,#000 10%);mask-image:linear-gradient(90deg,transparent,#000 10%)}.node-wrap{position:absolute;width:56px;height:56px;transform:translate(-50%,-50%);z-index:4}.node-wrap.w-boss{z-index:5}.node{--tone: #b9aa90;--rim: #4a3a28;position:relative;width:56px;height:56px;padding:0;border:0;border-radius:50%;background:none;color:var(--tone);display:grid;place-items:center;cursor:pointer;transition:transform .15s}.node-face{position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle at 35% 30%,#4a3c2c,#261d14 70%);border:2.5px solid var(--rim);box-shadow:0 4px #0c0805,0 6px 12px #00000080}.node>svg{position:relative;width:28px;height:28px;filter:drop-shadow(0 1px 0 #0c0805)}.node.n-elite{--tone: #cdb6ff}.node.n-elite .node-face{border-radius:12px;transform:rotate(45deg) scale(.86)}.node.n-shop,.node.n-treasure{--tone: #e9c46a}.node.n-shop .node-face,.node.n-treasure .node-face{border-radius:14px}.node.n-rest{--tone: #ffb562}.node.n-event{--tone: #8fd0c4}.node.n-battle{--tone: #e0d3b8}.node.s-ahead{opacity:.92}.node.s-lost{opacity:.38;filter:saturate(.2)}.node.s-done{--rim: #8a6a34}.node.s-done .node-face{background:radial-gradient(circle at 35% 30%,#3e3121,#221a12 70%)}.node.s-done>svg{opacity:.7}.done-mark{position:absolute;right:-2px;bottom:-2px;width:18px;height:18px;border-radius:50%;background:#f5b84b;border:2px solid #140d08}.done-mark:after{content:"";position:absolute;left:5px;top:2px;width:4px;height:8px;border:solid #2b2118;border-width:0 2.5px 2.5px 0;transform:rotate(45deg)}.node.s-open{--rim: var(--beacon);animation:node-bob 1.8s ease-in-out infinite}.node.n-elite.s-open{--rim: var(--elite)}.node.s-open .node-face{background:radial-gradient(circle at 35% 30%,#6a4c22,#3a2812 70%);box-shadow:0 4px #0c0805,0 0 0 4px #f5b84b2e,0 0 22px #f5b84b8c}.node.n-elite.s-open .node-face{background:radial-gradient(circle at 35% 30%,#4c3870,#261a3a 70%);box-shadow:0 4px #0c0805,0 0 0 4px #c58bff33,0 0 22px #c58bff8c}.node.s-open:hover{transform:scale(1.1);animation:none}@keyframes node-bob{50%{transform:translateY(-3px)}}.node.s-here{--rim: #ffe1a0;color:#2b2118}.node.s-here .node-face{background:radial-gradient(circle at 40% 35%,#ffe1a0,#f5b84b 60%,#b87a1e);box-shadow:0 4px #0c0805,0 0 0 6px #f5b84b40,0 0 30px #f5b84bbf}.node.n-elite.s-here .node-face{background:radial-gradient(circle at 40% 35%,#f0dcff,#c58bff 60%,#7a4cc0);box-shadow:0 4px #0c0805,0 0 0 6px #c58bff40,0 0 30px #c58bffb3}.node.s-here>svg{filter:none}.node:disabled{cursor:default}.here-lantern{position:absolute;left:50%;top:-30px;width:16px;height:22px;margin-left:-8px;z-index:6;pointer-events:none;border-radius:4px 4px 6px 6px;background:radial-gradient(circle at 50% 60%,#fff1c9,#f5b84b 55%,#b87a1e);border:2px solid #140d08;box-shadow:0 0 14px #ffd27ae6;animation:lantern 2.4s ease-in-out infinite}.here-lantern:before{content:"";position:absolute;left:3px;right:3px;top:-7px;height:6px;border:2px solid #140d08;border-bottom:0;border-radius:6px 6px 0 0}@keyframes lantern{50%{transform:translateY(-3px);box-shadow:0 0 22px #ffd27a}}.node-cap{position:absolute;left:50%;top:62px;transform:translate(-50%);white-space:nowrap;pointer-events:none;padding:2px 8px;border-radius:8px;background:#0c0906bf;font-size:12px;font-weight:700;color:var(--beacon)}.node-cap.t-elite{color:#cdb6ff}.node.n-boss{--tone: #f08a80;--rim: #e2584d;width:100px;height:100px}.node-wrap.w-boss{width:100px;height:100px}.node.n-boss .node-face{background:radial-gradient(circle at 40% 35%,#4a1c18,#200c0a 70%);border-width:4px;box-shadow:0 5px #0c0805,0 0 30px #e2584d8c}.node.n-boss>svg{width:50px;height:50px}.node.n-boss.s-lost,.node.n-boss.s-ahead{opacity:1;filter:none}.node.n-boss.s-open .node-face{box-shadow:0 5px #0c0805,0 0 0 6px #e2584d40,0 0 40px #e2584dcc}.node-cap.boss{top:108px;color:var(--danger-text);font-family:Alegreya SC,serif;font-size:16px}.legend{position:absolute;left:50%;bottom:12px;transform:translate(-50%);z-index:6;max-width:calc(100% - 24px);display:flex;justify-content:center;gap:14px;align-items:center;white-space:nowrap;padding:8px 18px;border-radius:999px;background:#0c0906c7;border:1px solid #3a2d20;font-size:12px;font-weight:700;color:#d9cbb0}.legend svg{width:16px;height:16px}.legend .leg{display:inline-flex;align-items:center;gap:5px}.legend .leg-elite{color:#cdb6ff}.legend .leg-rest{color:#ffb562}.legend .leg-shop,.legend .leg-treasure{color:#e9c46a}.legend .leg-event{color:#8fd0c4}.legend .leg-boss{color:var(--danger-text)}.legend b{margin-left:8px;color:var(--beacon)}body.compact .node-wrap,body.compact .node{width:46px;height:46px}body.compact .node>svg{width:24px;height:24px}body.compact .node-cap{top:50px;font-size:11px}body.compact .legend{flex-wrap:wrap;white-space:normal;border-radius:12px}@media(prefers-reduced-motion:reduce){.lh-beam,.mist,.way.w-open,.node.s-open,.here-lantern{animation:none}}.actor.foe.elite{--mod: var(--elite);filter:drop-shadow(0 0 5px var(--mod))}.actor.foe[data-mod=armored]{--mod: #d9cbb0}.actor.foe[data-mod=swift]{--mod: #8fd0c4}.actor.foe[data-mod=regenerating]{--mod: #8fd06a}.actor.foe[data-mod=shielded]{--mod: #7fd3f0}.actor.foe[data-mod=explosive]{--mod: #ff8a4c}.actor.foe.elite .elite-ring{display:block;left:50%;top:auto;bottom:-6px;width:120%;height:34%;transform:translate(-50%);border-radius:50%;border:2.5px solid var(--mod);box-shadow:0 0 12px var(--mod),inset 0 0 8px var(--mod);z-index:0;animation:elite-pulse 1.4s ease-in-out infinite}.actor.foe.elite .elite-aura{display:block;position:absolute;inset:-10% -20% 0;z-index:0;pointer-events:none;border-radius:50%;background:radial-gradient(ellipse at 50% 70%,color-mix(in srgb,var(--mod) 35%,transparent),transparent 70%)}.actor .elite-aura{display:none}@keyframes elite-pulse{50%{opacity:.55;transform:translate(-50%) scale(1.08)}}.actor.foe .mods{position:absolute;left:50%;top:-20px;transform:translate(-50%);z-index:5;display:flex;gap:1px;align-items:center;padding:1px 3px;border-radius:8px;background:#0c0906cc;border:1px solid #3a2d20;pointer-events:none}.mod{display:inline-block;vertical-align:middle}.mod-armored{color:#d9cbb0}.mod-swift{color:#8fd0c4}.mod-regenerating{color:#8fd06a}.mod-shielded{color:#7fd3f0}.mod-explosive{color:#ff8a4c}.actor.foe .mods .crown{width:14px;height:11px;background:#f5b84b;display:inline-block;clip-path:polygon(0 100%,0 25%,28% 60%,50% 0,72% 60%,100% 25%,100% 100%)}.actor.foe.champion .hp{width:44px;height:7px}.actor.foe.champion .hp b{background:linear-gradient(90deg,#c58bff,#e2584d)}.elite-banner{position:absolute;left:50%;top:8px;transform:translate(-50%);z-index:20;pointer-events:none;display:flex;align-items:center;gap:8px;padding:5px 14px;border-radius:999px;white-space:nowrap;background:linear-gradient(90deg,#2a2036eb,#1c1426eb);border:1.5px solid var(--elite);box-shadow:0 0 16px #c58bff59;color:#e3cfff;font-size:13px;font-weight:700}.elite-banner .skull{width:16px;height:16px;color:var(--elite)}.elite-banner small{color:#b9a6d8;font-weight:400}.wave-row .mods-line{display:inline-flex;gap:2px;vertical-align:middle;margin-left:4px}@media(prefers-reduced-motion:reduce){.actor.foe.elite .elite-ring{animation:none}}.menu-confirm{position:absolute;inset:0;z-index:5;display:flex;align-items:center;justify-content:flex-end;padding:24px 9%;background:linear-gradient(90deg,#08050326,#08050399);animation:rise .2s ease}.menu-confirm-card{display:flex;flex-direction:column;align-items:flex-start;gap:14px;width:min(380px,100%);padding:20px;border-radius:14px;background:#17110bf2;border:2px solid var(--beacon);box-shadow:0 12px 34px #0000008c}.menu-confirm-card p{margin:0;font:600 19px/1.35 PT Sans,sans-serif;color:var(--text)}.menu-confirm-card .row{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:10px}@media(max-width:800px){.menu-confirm{justify-content:center;padding:16px;background:#08050399}}.pack-line{margin:6px 0 0;font:700 13px PT Sans,sans-serif;color:var(--beacon)}.actor.tower>.fx-row{position:absolute;left:50%;top:-15px;transform:translate(-50%);z-index:6;display:flex;gap:2px;pointer-events:none}.actor.tower>.fx-row>i{width:19px;height:19px;border-radius:50%;display:grid;place-items:center;background:#140d08d9;border:1.5px solid rgba(245,184,75,.7)}.actor.tower>.fx-aura{position:absolute;left:50%;bottom:2px;width:70px;height:26px;transform:translate(-50%);z-index:0;border-radius:50%;pointer-events:none;background:radial-gradient(ellipse,#f5b84b8c,#f5b84b00 70%);animation:fx-aura 1.6s ease-in-out infinite}@keyframes fx-aura{0%,to{opacity:.55}50%{opacity:1}}.tower-effects{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.tower-effects .aim-label{width:100%;margin:0}.fx-chip{display:inline-flex;align-items:center;gap:5px;padding:4px 8px;border-radius:99px;background:#f5b84b1a;border:1.5px solid rgba(245,184,75,.45);font:700 12.5px PT Sans,sans-serif;color:var(--text)}.fx-chip small{color:var(--text-3);font-weight:400}.fx-chip.bad{background:#c9453b1f;border-color:#e2584d80}.tower-stats .stat.up b{color:#8fd06a}.tower-stats .stat.up b:after{content:" ▲";font-size:.7em}.tower-stats .stat.down b{color:var(--danger-text)}.tower-stats .stat.down b:after{content:" ▼";font-size:.7em}@media(prefers-reduced-motion:reduce){.actor.tower>.fx-aura{animation:none}}.ground-legend .ground-sign{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#140d08d9;border:1.5px solid rgba(245,184,75,.6)}.plot .ground-sign{position:absolute;left:50%;top:50%;transform:translate(-50%,-55%);z-index:1;display:inline-flex;align-items:center;gap:2px;padding:1px 5px 1px 3px;border-radius:99px;background:#140d08e0;border:1.5px solid rgba(245,184,75,.55);white-space:nowrap}.plot .ground-sign b{font:700 11px/1 PT Sans,sans-serif;color:#f3ead7}.plot.boon{opacity:.95!important}.plot.boon-forge{background:radial-gradient(circle at 60% 35%,#8a5a3a,#5e3a24 55%,#3a2418);box-shadow:0 0 0 2px #ff8a5c99,0 0 14px #ff8a5c59,0 3px #0e0905}.plot.boon-wind{background:radial-gradient(circle at 60% 35%,#5e7a6e,#3e5a50 55%,#263a34);box-shadow:0 0 0 2px #9fe6c899,0 0 14px #9fe6c859,0 3px #0e0905}.plot.boon:after{display:none}.ground-legend{margin-top:12px;display:flex;flex-direction:column;gap:8px}.ground-row{display:flex;align-items:center;gap:8px}.ground-row>span:last-child{display:flex;flex-direction:column}.ground-row b{font:700 13px PT Sans,sans-serif}.ground-row small{font:12px PT Sans,sans-serif;color:var(--text-3)}.actor.tower.pending{opacity:.6;filter:saturate(.7);animation:rise .16s ease}.actor.spark{width:36px;height:36px;border-radius:50%;cursor:pointer;pointer-events:auto;background:radial-gradient(circle,#e8f4ff 0 18%,#8fc6f0 30%,#5fa8e08c 52%,#5fa8e000 72%);animation:spark-bob .9s ease-in-out infinite alternate}.actor.spark:after{content:"";position:absolute;inset:8px;border-radius:50%;border:2px solid rgba(232,244,255,.85)}.actor.spark.fading{animation:spark-bob .9s ease-in-out infinite alternate,spark-fade .3s steps(2) infinite}.actor.spark.taken{transform:scale(1.6);opacity:0;transition:transform .16s ease-out,opacity .16s ease-out}@keyframes spark-bob{0%{transform:translateY(0)}to{transform:translateY(-5px)}}@keyframes spark-fade{50%{opacity:.4}}.kill-pips{display:inline-flex;gap:2px;margin-left:6px}.kill-pips b{width:5px;height:9px;border-radius:2px;background:#3a2d20;border:1px solid #140d08}.kill-pips b.on{background:#f5d84b}.fight-mid{position:relative}.streak{position:absolute;left:50%;top:8px;transform:translate(-50%);z-index:6;display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 14px 8px;border-radius:12px;background:#17110bdb;border:1.5px solid var(--beacon);pointer-events:none;overflow:hidden}.streak b{font:800 20px Alegreya SC,serif;color:#ffe7a8}.streak small{font:12px PT Sans,sans-serif;color:var(--text-3)}.streak i{position:absolute;left:0;bottom:0;height:3px;background:var(--beacon)}@media(prefers-reduced-motion:reduce){.actor.spark{animation:none}}.fly-coin{position:fixed;z-index:30;width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:50%;pointer-events:none;background:radial-gradient(circle at 35% 35%,#fff1c9,#f5b84b 55%,#b87a1e);border:1.5px solid #140d08;animation:fly-coin .52s cubic-bezier(.5,-.4,.7,1) forwards}@keyframes fly-coin{to{transform:translate(var(--dx),var(--dy)) scale(.7)}}#gold.bump{animation:gold-bump .22s ease-out;display:inline-block}@keyframes gold-bump{50%{transform:scale(1.3);color:#fff1c9}}@media(prefers-reduced-motion:reduce){.fly-coin{display:none}}.wave-twist{display:flex;flex-direction:column;gap:2px;margin:6px 0;padding:6px 10px;border-radius:10px;background:#c9453b24;border:1.5px solid rgba(226,88,77,.55)}.wave-twist b{font:700 14px Alegreya SC,serif;color:#f08a80}.wave-twist small{font:12px PT Sans,sans-serif;color:var(--text-2)}.wave-twist.mod-quiet{background:#5fa8e01f;border-color:#5fa8e080}.wave-twist.mod-quiet b{color:#8fc6f0}.wave-pattern{margin:2px 0 6px;font:12px PT Sans,sans-serif;color:var(--text-3)}.actor.foe.burrowed{opacity:.25}.ability-btn{position:relative;overflow:hidden;width:100%;margin-top:8px;display:flex;justify-content:flex-start;text-align:left}.ability-btn span{position:relative;z-index:1;display:flex;flex-direction:column}.ability-btn small{font-weight:400;font-size:12px;opacity:.85}.ability-btn i{position:absolute;left:0;bottom:0;height:4px;background:var(--beacon)}.ability-btn:not(.ready){background:#2b2118;color:var(--text-2);border-color:var(--border-dim)}.ability-btn.ready{animation:coach-glow 1.2s ease-in-out infinite}.actor.tower.ability-ready:after{content:"!";position:absolute;right:-2px;top:-6px;z-index:7;width:18px;height:18px;border-radius:50%;display:grid;place-items:center;background:var(--beacon);color:#2b2118;font:800 13px/1 PT Sans,sans-serif;border:2px solid #140d08;animation:coach-ring 1s ease-in-out infinite}.card-lv{position:absolute;right:6px;top:6px;z-index:3;min-width:20px;height:20px;padding:0 4px;border-radius:10px;display:grid;place-items:center;background:#8a5a12;color:#fff6d8;border:2px solid #140d08;font:800 12px/1 PT Sans,sans-serif}.fog-patch{position:absolute;width:68px;height:68px;border-radius:50%;pointer-events:none;z-index:950;background:radial-gradient(circle,#28203ceb 35%,#28203c00 72%);filter:blur(2px)}.biome-row .ground-sign{color:var(--beacon);font-size:12px}.quests{position:absolute;right:24px;bottom:24px;z-index:3;width:min(300px,calc(100% - 32px));display:flex;flex-direction:column;gap:8px;padding:14px;border-radius:14px;background:#17110be6;border:1.5px solid var(--border)}.quests h2{margin:0;font:700 17px Alegreya SC,serif}.quests .muted{margin:0;font-size:12px}.quest{display:flex;align-items:center;gap:8px}.quest.claimed{opacity:.55}.quest-main{flex:1;display:flex;flex-direction:column;gap:3px}.quest-main b{font:700 13px PT Sans,sans-serif}.quest-main small{font-size:11px;color:var(--text-3)}.quest-bar{height:6px;border-radius:3px;background:#2b2118;border:1px solid #140d08;overflow:hidden}.quest-bar i{display:block;height:100%;background:var(--beacon)}.quest-claim{height:32px;padding:0 10px;font-size:14px}.quest-reward,.quest-done{font:700 13px PT Sans,sans-serif;color:var(--text-2);display:inline-flex;align-items:center;gap:2px}.order-level{display:flex;flex-direction:column;gap:4px;margin:4px 0 8px}.order-level b{font:700 13px PT Sans,sans-serif;color:var(--beacon)}.order-level small{font-size:12px;color:var(--text-3)}.run-summary{max-width:520px;margin:4px 0 12px}.history{margin-top:18px}.history h2{font:700 18px Alegreya SC,serif;margin:0 0 8px}.history ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.history li{display:grid;grid-template-columns:110px 120px 1fr auto;gap:10px;align-items:center;padding:8px 12px;border-radius:10px;background:#2b2118;border:1.5px solid #4a3a28;font-size:13px}.history li.won b{color:#8fd06a}.history li.lost b{color:var(--text-2)}.history time{color:var(--text-3);font-size:12px}@media(max-width:800px){.quests{position:static;margin:12px 16px}.history li{grid-template-columns:1fr}}.coop-goal{display:flex;flex-direction:column;gap:4px;margin:10px 0;padding:10px 12px;border-radius:10px;background:#2b2118;border:1.5px solid #4a3a28}.coop-goal small{font-size:12px;color:var(--text-3)}.rarity-gem{position:absolute;right:6px;top:6px;z-index:3;width:14px;height:14px;transform:rotate(45deg);border:2px solid #140d08;border-radius:3px}.card-lv+.rarity-gem{top:30px}.rarity-gem.r-C{background:#b9aa90}.rarity-gem.r-U{background:#5fa8e0}.rarity-gem.r-R{background:#f5b84b}.rarity-gem.r-L{background:linear-gradient(135deg,#c58bff,#ff7a2f);box-shadow:0 0 8px #c58bffcc}.card.palm.rarity-U,.card.grid.rarity-U{box-shadow:0 3px #140d08,inset 0 0 0 2px #5fa8e0}.card.palm.rarity-R,.card.grid.rarity-R{box-shadow:0 3px #140d08,inset 0 0 0 2px #f5b84b}.card.palm.rarity-L,.card.grid.rarity-L,.card.large.rarity-L{box-shadow:0 3px #140d08,inset 0 0 0 2px #c58bff,0 0 14px #c58bff8c;animation:legend-glow 2.4s ease-in-out infinite}@keyframes legend-glow{50%{box-shadow:0 3px #140d08,inset 0 0 0 2px #ff9a4a,0 0 20px #ff7a2f80}}.rarity-label{align-self:center;font:700 11px PT Sans,sans-serif;letter-spacing:.06em;text-transform:uppercase}.rarity-label.r-C{color:#b9aa90}.rarity-label.r-U{color:#8fc6f0}.rarity-label.r-R{color:#f5b84b}.rarity-label.r-L{color:#d8a8ff}@media(prefers-reduced-motion:reduce){.card.rarity-L{animation:none}}.plot.taken .ground-sign{inset:auto -12px -8px auto;transform:scale(.75);transform-origin:bottom right;padding:0 4px 0 2px}.plot.taken .ground-sign b{font-size:10px}.hub-art{cursor:zoom-in;padding:0;width:100%;color:inherit;font:inherit}.hub-card-desc{margin:0;font:13px/1.35 PT Sans,sans-serif;color:var(--text)}.hub-stats{display:flex;flex-wrap:wrap;gap:4px 10px;font:700 12px PT Sans,sans-serif;color:var(--beacon)}.hub-pool{margin:0;font-size:12px;color:var(--text-3)}.hub-preview{display:flex;flex-direction:column;align-items:center;gap:12px}.hub-preview .card.large{transform:scale(1.25);transform-origin:center bottom;margin-top:40px}
