:root{--bg: #0b0e16;--panel: #141926;--panel-2: #1b2233;--line: #2a3247;--text: #e6ebf5;--muted: #8b96ad;--divide: #38d9c9;--add: #f6b73c;--attack: #f0554d;--grow: #b07af7;--gold: #e8c56a;--shield: #60a5fa;font-family:ui-sans-serif,system-ui,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0;overflow-x:hidden;min-height:100vh;background:radial-gradient(1200px 800px at 50% -10%,#1a2138 0%,var(--bg) 55%);color:var(--text)}button{font:inherit}.game{max-width:1180px;margin:0 auto;min-height:100vh;display:flex;flex-direction:column;padding:0 16px}.topbar{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 6px 10px}.game-title{margin:0;font-size:.72rem;letter-spacing:.3em;color:var(--gold);font-weight:700}.stage-text{margin:2px 0 0;font-size:1.05rem;font-weight:700;letter-spacing:.06em}.hp-block{position:relative;display:flex;align-items:center;gap:10px;justify-content:flex-end}.hp-bar{width:220px;height:18px;border:1px solid var(--line);border-radius:999px;background:#0d1120;overflow:hidden}.hp-fill{height:100%;background:linear-gradient(90deg,#e23b3b,#ff7a5c);transition:width .35s ease;border-radius:999px}.hp-text{font-family:Consolas,ui-monospace,monospace;font-size:.95rem;white-space:nowrap}.hp-flash{position:absolute;top:34px;right:8px;display:flex;align-items:baseline;gap:8px;font-family:Consolas,ui-monospace,monospace;color:var(--attack);pointer-events:none;white-space:nowrap;z-index:20;animation:riseFade 1.1s ease-out forwards}.hp-flash-op{font-size:1.6rem;font-weight:800}.hp-flash-sub{font-size:.8rem;color:var(--muted)}.hp-flash.guard,.hp-flash.blocked{color:var(--shield)}@keyframes riseFade{0%{opacity:0;transform:translateY(6px)}20%{opacity:1}to{opacity:0;transform:translateY(-18px)}}.main-row{flex:1;display:flex;gap:14px;min-height:380px}.log-panel{width:235px;flex-shrink:0;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:12px;display:flex;flex-direction:column}.log-title{margin:0 0 8px;font-size:.7rem;letter-spacing:.24em;color:var(--muted)}.log-scroll{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:5px;font-family:Consolas,ui-monospace,monospace;font-size:.82rem;max-height:360px;padding-right:4px}.log-entry{margin:0;padding:3px 6px;border-radius:6px;background:var(--panel-2)}.log-entry.player{color:var(--divide)}.log-entry.enemy{color:var(--attack)}.log-entry.system{color:var(--muted);font-style:italic}.enemy-area{flex:1;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px}.intent-chip{display:inline-flex;gap:10px;align-items:center;background:var(--panel);border:1px solid var(--line);padding:6px 14px;border-radius:999px}.intent-label{font-size:.66rem;letter-spacing:.22em;color:var(--muted);font-weight:700}.intent-text{font-weight:700;font-size:.95rem}.intent-chip.attack .intent-text{color:#ff8a80}.intent-chip.grow .intent-text{color:var(--grow)}.intent-note{font-size:.78rem;color:var(--shield);font-family:Consolas,ui-monospace,monospace}.monster{position:relative;display:grid;place-items:center;width:235px;height:215px}.monster-number{font-family:Consolas,ui-monospace,monospace;font-weight:800;line-height:1;color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.65),0 0 26px rgba(0,0,0,.4);z-index:1}.num-d2{font-size:5.6rem}.num-d3{font-size:4.7rem}.num-d4{font-size:3.9rem}.num-d5{font-size:3.1rem}.num-d6{font-size:2.6rem}.num-d7{font-size:2.2rem}.monster-eyes{display:none;position:absolute;top:9%;gap:38px;z-index:2}.slime .monster-eyes,.boss .monster-eyes{display:flex}.slime .monster-number,.boss .monster-number{margin-top:34px}.monster-eyes span{width:22px;height:26px;background:#fff;border-radius:50%;position:relative}.monster-eyes span:after{content:"";position:absolute;left:6px;top:9px;width:9px;height:11px;background:#10131c;border-radius:50%}.monster.slime{background:radial-gradient(circle at 35% 30%,#3ddc84,#1f8f4e 72%);border-radius:46% 46% 40% 40%/55% 55% 35% 35%;box-shadow:inset 0 -14px #0000002e,0 14px 34px #3ddc8438}.monster.adder{width:245px;background:linear-gradient(180deg,#ff9f43,#d96a16);clip-path:polygon(50% 0%,100% 84%,79% 100%,21% 100%,0% 84%)}.monster.multiplier{background:linear-gradient(135deg,#a78bfa,#6d4fd4);clip-path:polygon(50% 0%,85% 15%,100% 50%,85% 85%,50% 100%,15% 85%,0% 50%,15% 15%)}.monster.boss{width:255px;height:235px;background:radial-gradient(circle at 50% 35%,#ff6b6b,#8f1d2d 75%);clip-path:polygon(50% 0%,95% 25%,95% 75%,50% 100%,5% 75%,5% 25%);animation:bossPulse 2.4s ease-in-out infinite}@keyframes bossPulse{0%,to{filter:drop-shadow(0 0 10px rgba(255,80,80,.3))}50%{filter:drop-shadow(0 0 28px rgba(255,80,80,.65))}}.enemy-meta{display:flex;align-items:center;gap:12px}.enemy-name{margin:0;color:var(--muted);font-size:.88rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700}.prime-tag{margin:0;font-size:.68rem;font-weight:800;letter-spacing:.18em;padding:3px 10px;border-radius:999px;border:1px solid}.prime-tag.prime{color:#ff7ab5;border-color:#ff7ab566;background:#ff7ab51a}.prime-tag.composite{color:#7fd1ff;border-color:#7fd1ff66;background:#7fd1ff1a}.prime-tag.unit{color:var(--muted);border-color:var(--line)}.phase-banner{position:absolute;top:14px;padding:6px 18px;background:#000000a6;border:1px solid var(--attack);color:var(--attack);letter-spacing:.25em;font-weight:800;font-size:.78rem;border-radius:999px;animation:blink .9s steps(2) infinite}@keyframes blink{50%{opacity:.35}}.flash{position:absolute;top:36%;left:50%;display:flex;flex-direction:column;align-items:center;gap:3px;pointer-events:none;z-index:5;animation:flashPop 1.1s ease-out forwards}.flash .flash-op{font-family:Consolas,ui-monospace,monospace;font-size:3.4rem;font-weight:800;line-height:1}.flash .flash-sub{font-family:Consolas,ui-monospace,monospace;font-size:1.2rem;color:var(--text);background:#000000c7;padding:3px 12px;border-radius:6px}.flash.divide .flash-op{color:var(--divide)}.flash.add .flash-op{color:var(--add)}.flash.enemyGrow .flash-op{color:var(--grow)}@keyframes flashPop{0%{opacity:0;transform:translate(-50%,-50%) scale(.5)}18%{opacity:1;transform:translate(-50%,-50%) scale(1.14)}32%{transform:translate(-50%,-50%) scale(1)}75%{opacity:1}to{opacity:0;transform:translate(-50%,-64%) scale(1)}}.bottombar{display:flex;align-items:flex-end;gap:18px;padding:8px 6px 24px}.energy-orb{width:76px;height:76px;border-radius:50%;border:2px solid var(--gold);display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle at 35% 30%,#3a2f14,#191308);flex-shrink:0;box-shadow:0 0 18px #e8c56a40}.energy-orb.empty{border-color:#4a5265;box-shadow:none;filter:grayscale(.6)}.energy-current{font-size:1.7rem;font-weight:800;color:var(--gold);line-height:1;font-family:Consolas,ui-monospace,monospace}.energy-max{font-size:.62rem;color:var(--muted)}.bottom-left,.bottom-right{display:flex;align-items:flex-end;gap:14px;flex-shrink:0}.hand{--card-w: 118px;--card-h: 168px;--spacing-max: 96px;position:relative;flex:1;min-width:0;height:230px}.hand-slot{position:absolute;bottom:26px;width:var(--card-w);height:var(--card-h);left:calc(50% + var(--offset) * min(var(--spacing-max),(100% - var(--card-w)) / var(--n1)) - var(--card-w) / 2);transform-origin:50% 120%;transform:translateY(calc(var(--abs) * var(--abs) * 5px)) rotate(calc(var(--offset) * 5deg));transition:transform .2s ease,left .25s ease;animation:dealIn .32s ease-out backwards}.hand-slot:hover{z-index:40!important}.hand-slot:has(.card.playable):hover{transform:translateY(-26px) rotate(0) scale(1.06)}.hand-slot.selected,.hand-slot.selected:hover{transform:translateY(-46px) rotate(0) scale(1.1)}@keyframes dealIn{0%{opacity:0;translate:-40vw 40px;rotate:-20deg}}.card{width:var(--card-w, 118px);height:var(--card-h, 168px);border-radius:12px;border:2px solid var(--card-color, var(--line));background:radial-gradient(120% 70% at 50% 0%,color-mix(in srgb,var(--card-color) 18%,transparent),transparent 70%),linear-gradient(180deg,#1f2740,#10152a);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;cursor:default;position:relative;padding:0;color:var(--card-color, var(--text));box-shadow:0 8px 18px #00000073;transition:box-shadow .15s ease,filter .15s ease}.card:after{content:"";position:absolute;top:6px;right:6px;bottom:6px;left:6px;border:1px solid rgba(255,255,255,.08);border-radius:8px;pointer-events:none}.card-corner{position:absolute;font-family:Consolas,ui-monospace,monospace;font-size:.95rem;font-weight:800;line-height:1}.card-corner.tl{top:10px;left:11px}.card-corner.br{bottom:10px;right:11px;transform:rotate(180deg)}.card-art{width:70%;aspect-ratio:1;display:grid;place-items:center;border-radius:50%;border:1px solid color-mix(in srgb,var(--card-color) 40%,transparent);background:radial-gradient(circle,color-mix(in srgb,var(--card-color) 14%,transparent),transparent 70%)}.card .card-value{font-family:Consolas,ui-monospace,monospace;font-size:3rem;font-weight:800;color:var(--card-color, var(--text));line-height:1;text-shadow:0 0 18px color-mix(in srgb,var(--card-color) 45%,transparent)}.card-type{font-size:.56rem;letter-spacing:.24em;font-weight:800;color:var(--muted)}.card.playable{cursor:pointer}.card.playable:hover{box-shadow:0 18px 32px #0000008c,0 0 20px color-mix(in srgb,var(--card-color) 35%,transparent)}.card.selected{box-shadow:0 20px 36px #0009,0 0 0 3px #fff,0 0 28px color-mix(in srgb,var(--card-color) 60%,transparent)}.card:disabled:not(.card-reward){filter:saturate(.4) brightness(.7)}.card.card-reward{--card-w: 136px;--card-h: 194px;cursor:pointer;transition:transform .15s ease}.card.card-reward .card-value{font-size:3.6rem}.card.card-reward:hover{transform:translateY(-10px) scale(1.06)}.card-actions{position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%) scale(.91);display:flex;gap:8px;animation:popIn .14s ease-out}@keyframes popIn{0%{opacity:0;translate:0 8px}}.act{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:112px;padding:8px 12px;border-radius:10px;border:1px solid;background:#0a0d18f2;color:var(--text);cursor:pointer;box-shadow:0 10px 24px #00000080;transition:transform .1s,filter .15s}.act:hover{filter:brightness(1.3);transform:translateY(-2px)}.act-label{font-size:.72rem;letter-spacing:.2em;font-weight:800}.act-detail{font-family:Consolas,ui-monospace,monospace;font-size:.86rem;white-space:nowrap}.act.attack.divide{border-color:var(--divide)}.act.attack.divide .act-label{color:var(--divide)}.act.attack.add{border-color:var(--add)}.act.attack.add .act-label{color:var(--add)}.act.guard{border-color:var(--shield)}.act.guard .act-label{color:var(--shield)}.pile{display:flex;flex-direction:column;align-items:center;gap:4px}.pile-stack{position:relative;width:46px;height:64px}.pile-stack span{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:7px;border:1px solid #3a4560;background:repeating-linear-gradient(45deg,#1b2236 0,#1b2236 6px,#161c2d 6px,#161c2d 12px)}.pile-stack span:nth-child(1){transform:translate(4px,-4px)}.pile-stack span:nth-child(2){transform:translate(2px,-2px)}.pile-stack .pile-count{display:grid;place-items:center;font-family:Consolas,ui-monospace,monospace;font-weight:800;font-size:1.1rem;color:var(--text)}.pile.discard .pile-stack span{background:#1a1f2e}.pile.empty .pile-stack span:not(.pile-count){display:none}.pile.empty .pile-count{border-style:dashed;background:transparent;color:var(--muted)}.pile-label{font-size:.58rem;letter-spacing:.2em;color:var(--muted);font-weight:700}.shield-badge{position:relative;width:34px;height:40px;display:grid;place-items:center;opacity:.35;transition:opacity .2s,transform .2s}.shield-badge svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;fill:#16243a;stroke:var(--shield);stroke-width:1.6}.shield-badge.active{opacity:1;transform:scale(1.08);filter:drop-shadow(0 0 8px rgba(96,165,250,.55))}.shield-badge.active svg{fill:#1d3a66}.shield-value{position:relative;font-family:Consolas,ui-monospace,monospace;font-weight:800;font-size:.95rem;color:#e6f0ff}.btn{border:1px solid var(--line);background:var(--panel-2);color:var(--text);border-radius:10px;padding:10px 18px;cursor:pointer;font-weight:700;letter-spacing:.06em;transition:filter .15s,transform .1s}.btn:hover:not(:disabled){filter:brightness(1.25)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.end-turn{border-color:#b0453b;background:linear-gradient(180deg,#a83a30,#7d2820);padding:14px 26px;font-size:1rem;letter-spacing:.14em;box-shadow:0 8px 20px #a83a3059;flex-shrink:0}.btn.primary{border-color:var(--gold);background:linear-gradient(180deg,#c9a84c,#8d7226);color:#141005}.btn.ghost{background:transparent}.btn.debug{padding:6px 10px;font-size:.78rem}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#04070ed9;display:grid;place-items:center;z-index:60;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.overlay-panel{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:34px 44px;display:flex;flex-direction:column;align-items:center;gap:14px;box-shadow:0 30px 80px #0009}.overlay-title{margin:0;font-size:2.2rem;letter-spacing:.2em}.overlay-title.victory{color:var(--gold)}.overlay-title.defeat{color:var(--attack)}.overlay-copy{margin:0;color:var(--muted)}.reward-row{display:flex;gap:18px;margin:10px 0 4px}.debug-toggle{position:fixed;left:14px;bottom:14px;z-index:70;font-size:.66rem;letter-spacing:.22em;padding:6px 12px;border-radius:8px;background:#000000a6;border:1px dashed #4a5570;color:var(--muted);cursor:pointer}.debug-toggle:hover{color:var(--text)}.debug-panel{position:fixed;left:14px;bottom:52px;z-index:70;width:284px;background:#0d1120f5;border:1px dashed #4a5570;border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:10px}.debug-panel h3{margin:0;font-size:.72rem;letter-spacing:.22em;color:var(--muted)}.debug-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}.debug-row{display:flex;gap:6px}.debug-row input,.debug-row select{flex:1;min-width:0;background:#0b0f1c;border:1px solid var(--line);color:var(--text);border-radius:8px;padding:6px 8px;font-family:Consolas,ui-monospace,monospace}.log-scroll::-webkit-scrollbar{width:8px}.log-scroll::-webkit-scrollbar-thumb{background:var(--line);border-radius:4px}@media(max-width:760px){.game{padding:0 10px}.topbar{flex-wrap:wrap}.hp-bar{width:130px}.main-row{flex-direction:column-reverse;min-height:0}.log-panel{width:auto}.log-scroll{max-height:72px}.monster{transform:scale(.78);margin:-20px 0}.bottombar{flex-wrap:wrap;justify-content:space-between;padding-bottom:14px}.hand{order:-1;flex-basis:100%;--card-w: 92px;--card-h: 132px;--spacing-max: 76px;height:200px}.card .card-value{font-size:2.3rem}.act{min-width:96px;padding:6px 8px}.pile-stack{width:38px;height:52px}.btn.end-turn{padding:12px 16px;font-size:.9rem}}.overlay-title.rest{color:#5eead4}.rest-panel{max-width:min(920px,94vw);max-height:92vh;overflow-y:auto}.rest-hint{margin:0;font-size:.8rem;color:var(--muted)}.rest-options{display:flex;gap:16px;margin-top:8px}.rest-option{width:200px;min-height:150px;padding:18px 16px;border-radius:14px;border:2px solid var(--rest-color, var(--line));background:linear-gradient(180deg,color-mix(in srgb,var(--rest-color) 16%,#1a2036),#10152a);color:var(--text);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.rest-option:hover:not(:disabled){transform:translateY(-6px);box-shadow:0 0 24px color-mix(in srgb,var(--rest-color) 45%,transparent)}.rest-option:disabled{opacity:.4;cursor:not-allowed}.rest-option.heal{--rest-color: #4ade80}.rest-option.upgrade{--rest-color: #fbbf24}.rest-option.trade{--rest-color: #60a5fa}.rest-option-title{font-size:1.2rem;font-weight:800;letter-spacing:.2em;color:var(--rest-color)}.rest-option-desc{font-size:.8rem;color:var(--muted);text-align:center;line-height:1.4}.rest-actions{display:flex;gap:12px}.deck-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;max-width:820px}.card.card-mini{--card-w: 64px;--card-h: 92px;gap:2px}.card.card-mini .card-value{font-size:1.5rem}.card.card-mini .card-corner{font-size:.62rem}.card.card-mini .card-corner.tl{top:6px;left:6px}.card.card-mini .card-corner.br{bottom:6px;right:6px}.card.card-mini .card-type{font-size:.42rem;letter-spacing:.1em}.card.card-mini.playable:hover{transform:translateY(-4px)}.card.marked-remove{filter:grayscale(.7) brightness(.6);box-shadow:0 0 0 3px var(--attack, #f87171)}.card.marked-remove:before{content:"✕";position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-size:2rem;font-weight:900;color:var(--attack, #f87171);z-index:2}.card.upgraded{box-shadow:0 8px 18px #00000073,0 0 0 2px #fbbf24}.card.upgraded.selected{box-shadow:0 20px 36px #0009,0 0 0 3px #fff,0 0 28px #fbbf24}.card-badge{position:absolute;top:-8px;right:-8px;width:22px;height:22px;border-radius:50%;background:#fbbf24;color:#111827;font-weight:900;font-size:.9rem;display:grid;place-items:center;box-shadow:0 2px 6px #00000080}.overlay-copy.boss-bonus{color:#4ade80;font-weight:700;letter-spacing:.06em}:root{--rarity-C: #9aa7bf;--rarity-U: #60a5fa;--rarity-R: #e8c56a;--heal: #4ade80}.rarity-C{--rarity: var(--rarity-C)}.rarity-U{--rarity: var(--rarity-U)}.rarity-R{--rarity: var(--rarity-R)}.tip{position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%);width:220px;padding:8px 10px;background:#080b14f7;border:1px solid var(--rarity, var(--line));border-radius:8px;font-family:ui-sans-serif,system-ui,Segoe UI,sans-serif;font-style:normal;font-weight:400;font-size:.78rem;line-height:1.35;color:var(--text);text-align:left;display:none;flex-direction:column;gap:2px;z-index:80;pointer-events:none;box-shadow:0 10px 24px #00000080}.tip strong{color:var(--rarity, var(--text))}.tip em{font-style:normal;color:var(--muted);font-size:.72rem}.tip-warn{color:var(--attack);font-size:.72rem}.theorem-bar{flex:1;display:flex;flex-wrap:wrap;gap:6px;justify-content:center}.theorem-chip{position:relative;min-width:32px;height:32px;padding:0 6px;display:grid;place-items:center;border-radius:8px;border:1px solid var(--rarity);background:color-mix(in srgb,var(--rarity) 12%,#10152a);font-family:Times New Roman,Georgia,serif;font-style:italic;font-weight:700;color:var(--rarity);cursor:help}.theorem-chip:hover .tip,.theorem-chip:focus .tip,.catalyst-slot:hover .tip,.catalyst-slot:focus-visible .tip{display:flex}.catalyst-belt{position:relative;display:grid;grid-auto-flow:column;gap:6px;align-items:end;padding-bottom:18px}.catalyst-belt .pile-label{position:absolute;bottom:0;left:0;right:0;text-align:center}.catalyst-slot{position:relative;width:40px;height:46px;border-radius:12px 12px 18px 18px;border:1px solid var(--rarity, #3a4560);background:radial-gradient(circle at 50% 70%,color-mix(in srgb,var(--rarity) 30%,transparent),#12172a 70%);color:var(--text);display:grid;place-items:center;padding:0;cursor:pointer;transition:transform .12s,filter .12s}.catalyst-slot .tip{top:auto;bottom:calc(100% + 8px)}.catalyst-slot:not(.empty):not(.unusable):hover{transform:translateY(-3px);filter:brightness(1.3)}.catalyst-slot.empty{border:1px dashed #3a4560;background:transparent;cursor:default}.catalyst-slot.unusable{cursor:not-allowed;filter:grayscale(.7) brightness(.7)}.catalyst-glyph{font-family:Consolas,ui-monospace,monospace;font-weight:800;font-size:.78rem;color:var(--rarity, var(--text))}.catalyst-glyph.big{font-size:1.3rem;min-width:56px;height:56px;display:grid;place-items:center;border-radius:14px 14px 22px 22px;border:1px solid var(--rarity)}.theorem-choices{display:flex;gap:14px;margin:8px 0;flex-wrap:wrap;justify-content:center}.theorem-card{width:190px;min-height:230px;display:flex;flex-direction:column;align-items:center;gap:6px;padding:16px 14px;border-radius:14px;border:2px solid var(--rarity);background:linear-gradient(180deg,color-mix(in srgb,var(--rarity) 14%,#1b2236),#10152a);color:var(--text);cursor:pointer;transition:transform .15s,box-shadow .15s}.theorem-card:hover{transform:translateY(-6px);box-shadow:0 0 24px color-mix(in srgb,var(--rarity) 40%,transparent)}.theorem-card-glyph{font-family:Times New Roman,Georgia,serif;font-style:italic;font-size:2.4rem;font-weight:700;color:var(--rarity);line-height:1.1}.theorem-card-name{font-weight:800;font-size:.95rem}.theorem-card-ja{font-size:.75rem;color:var(--muted)}.theorem-card-text{font-size:.82rem;line-height:1.4;flex:1}.theorem-card-rarity{font-size:.6rem;letter-spacing:.2em;color:var(--rarity);font-weight:800}.catalyst-found{display:flex;gap:14px;align-items:center;padding:10px 14px;border:1px solid var(--rarity);border-radius:12px;max-width:420px}.catalyst-found p{margin:4px 0 0;color:var(--muted);font-size:.85rem}.catalyst-found em{font-style:normal;color:var(--muted);font-size:.78rem}.catalyst-swap-row{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}.catalyst-swap{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 12px;min-width:120px;border-radius:10px;border:1px solid var(--line);background:var(--panel-2);color:var(--text);cursor:pointer;font-size:.8rem}.catalyst-swap:hover{border-color:var(--attack)}.swap-hint{font-size:.62rem;letter-spacing:.18em;color:var(--attack);text-transform:uppercase}.free-badge{position:absolute;top:-10px;left:50%;transform:translate(-50%);padding:2px 8px;border-radius:999px;background:var(--gold);color:#141005;font-size:.62rem;font-weight:800;letter-spacing:.14em;z-index:2;pointer-events:none}.factor-hint{margin:-6px 0 0;font-family:Consolas,ui-monospace,monospace;font-size:.9rem;color:var(--gold);background:#e8c56a14;border:1px solid rgba(232,197,106,.3);padding:3px 10px;border-radius:6px}.prime-tag.sovereign{color:var(--gold);border-color:#e8c56a80;background:#e8c56a1a}.loot-note{color:var(--shield)}.hp-flash.heal{color:var(--heal)}.hp-flash.buff{color:var(--gold)}@media(max-width:760px){.theorem-bar{order:3;flex-basis:100%;justify-content:flex-start}.catalyst-slot{width:34px;height:40px}.theorem-card{width:100%;min-height:0}}.enemy-row{flex:1;position:relative;display:flex;align-items:center;justify-content:center;gap:8px;min-width:0}.enemy-row .phase-banner{left:50%;transform:translate(-50%);z-index:6}.enemy-area.clickable{cursor:pointer}.enemy-area.compact{gap:10px}.enemy-area.compact .monster{transform:scale(.72);margin:-26px -30px}.enemy-row.count-3 .enemy-area.compact .monster{transform:scale(.62);margin:-38px -44px}.enemy-area.compact .enemy-name{font-size:.74rem}.enemy-area.compact .intent-chip{padding:4px 10px}.enemy-area.compact .intent-text{font-size:.82rem}.enemy-area.targeted{border-radius:16px;background:radial-gradient(60% 50% at 50% 50%,rgba(232,197,106,.08),transparent 70%)}.target-marker{color:var(--gold);font-size:.8rem;animation:blink 1.2s steps(2) infinite}.enemy-area.acting .monster{filter:drop-shadow(0 0 18px rgba(240,85,77,.7))}.enemy-area.defeated{opacity:.35;filter:grayscale(.8)}.defeated-chip{font-size:.7rem;letter-spacing:.2em;color:var(--muted);font-weight:800}.monster-wrap{position:relative}.target-preview{position:absolute;bottom:-6px;right:-10px;z-index:3;padding:3px 10px;border-radius:999px;font-family:Consolas,ui-monospace,monospace;font-weight:800;font-size:.95rem;background:#080b14eb;border:1px solid;pointer-events:none}.enemy-area.compact .target-preview{font-size:1.25rem}.target-preview.divide{color:var(--divide);border-color:var(--divide)}.target-preview.add{color:var(--add);border-color:var(--add)}.incoming{position:absolute;top:34px;left:44px;font-family:Consolas,ui-monospace,monospace;font-size:.72rem;font-weight:700;color:#ff8a80;white-space:nowrap}.incoming.safe{color:var(--shield)}@media(max-width:760px){.enemy-row{flex-wrap:wrap}.enemy-area.compact .monster{transform:scale(.5);margin:-54px -60px}}.card.card-action{justify-content:flex-start;gap:6px;padding:26px 10px 22px}.card-action .cost-gem{position:absolute;top:-8px;left:-8px;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 35% 30%,#3a2f14,#191308);border:2px solid var(--gold);color:var(--gold);font-family:Consolas,ui-monospace,monospace;font-weight:800;font-size:.85rem;z-index:2}.card-action .cost-gem.cheaper{color:#4ade80;border-color:#4ade80}.card-action .action-name{font-weight:800;font-size:.9rem;color:var(--card-color);text-align:center;line-height:1.2;text-wrap:balance}.card-action .action-text{font-size:.66rem;line-height:1.4;color:var(--text);text-align:left;flex:1;overflow:hidden}.card-action .card-type{position:absolute;bottom:9px;left:0;right:0;text-align:center}.card-action.card-power{border-radius:12px 12px 26px 26px}.card-action.rarity-R{box-shadow:0 8px 18px #00000073,0 0 14px #e8c56a59}.card-action.card-reward .action-name{font-size:1rem}.card-action.card-reward .action-text{font-size:.74rem}.card-action.card-mini{padding:14px 4px}.card-action.card-mini .action-text{display:none}.card-action.card-mini .action-name{font-size:.66rem}.card-action.card-mini .cost-gem{width:18px;height:18px;font-size:.66rem;top:-5px;left:-5px}.act.skill{border-color:#f0abfc}.act.skill .act-label{color:#f0abfc}.act:disabled{opacity:.55;cursor:not-allowed;filter:none;transform:none}.act .act-label{letter-spacing:.08em}.sound-control{position:relative;margin-left:auto}.sound-btn{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;border:1px solid var(--line);background:var(--panel);color:var(--text);cursor:pointer}.sound-btn:hover{border-color:var(--gold)}.sound-btn svg{width:20px;height:20px;fill:currentColor}.sound-btn svg .stroke{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.sound-btn.off{color:var(--muted)}.sound-panel{position:absolute;top:46px;right:0;z-index:120;width:220px;padding:12px 14px;display:flex;flex-direction:column;gap:10px;background:var(--panel-2);border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 30px #00000080}.sound-row{display:grid;grid-template-columns:52px 1fr;align-items:center;gap:8px;font-size:.8rem;color:var(--muted)}.sound-row input[type=range]{width:100%;accent-color:var(--gold)}.sound-row.check{display:flex;cursor:pointer}.screen-tint{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:90;opacity:0}.screen-tint.hurt{background:radial-gradient(ellipse at center,transparent 45%,rgba(240,40,40,.55) 100%)}.screen-tint.block{background:radial-gradient(ellipse at center,transparent 55%,rgba(96,165,250,.35) 100%)}.screen-tint.white{background:#ffffffe6}.monster-anim{position:relative;transform-origin:50% 80%}.monster-anim.anim-hit{animation:monsterHit .42s cubic-bezier(.3,1.6,.5,1)}@keyframes monsterHit{0%{transform:scale(1);filter:brightness(1)}12%{transform:scale(1.12,.84);filter:brightness(2.2)}40%{transform:scale(.94,1.06);filter:brightness(1.2)}to{transform:scale(1);filter:brightness(1)}}.monster-anim.anim-special{animation:monsterSpecial .6s ease-out}@keyframes monsterSpecial{0%{transform:rotate(0) scale(1);filter:hue-rotate(0) brightness(1)}30%{transform:rotate(-6deg) scale(1.1);filter:hue-rotate(90deg) brightness(1.8)}to{transform:rotate(0) scale(1);filter:hue-rotate(0) brightness(1)}}.monster-anim.anim-add{animation:monsterSwell .55s ease-out}@keyframes monsterSwell{0%{transform:scale(1);filter:drop-shadow(0 0 0 rgba(246,183,60,0))}30%{transform:scale(1.1);filter:drop-shadow(0 0 22px rgba(246,183,60,.9))}to{transform:scale(1);filter:drop-shadow(0 0 0 rgba(246,183,60,0))}}.monster-anim.anim-grow{animation:monsterGrow .7s ease-out}@keyframes monsterGrow{0%{transform:scale(1);filter:drop-shadow(0 0 0 rgba(176,122,247,0))}25%{transform:scale(1.16);filter:drop-shadow(0 0 30px rgba(176,122,247,.95))}55%{transform:scale(1.04)}to{transform:scale(1);filter:drop-shadow(0 0 0 rgba(176,122,247,0))}}.monster-anim.anim-lunge{animation:monsterLunge .5s ease-in-out}@keyframes monsterLunge{0%{transform:translateY(0) scale(1)}30%{transform:translateY(-14px) scale(.96)}50%{transform:translateY(36px) scale(1.14);filter:drop-shadow(0 0 24px rgba(240,85,77,.9))}to{transform:translateY(0) scale(1)}}.monster-anim.anim-kill{animation:monsterKill .95s ease-out forwards}@keyframes monsterKill{0%{transform:scale(1);filter:brightness(1);opacity:1}8%{transform:scale(1.14,.9);filter:brightness(4) saturate(0)}26%{transform:scale(1.14,.9);filter:brightness(4) saturate(0);opacity:1}45%{transform:scale(1.25);filter:brightness(1.6);opacity:.9}to{transform:scale(1.6);filter:brightness(1) blur(6px);opacity:0}}.enemy-area.defeated.just-killed{opacity:1;filter:none}.enemy-area.defeated.just-killed .defeated-chip{animation:chipLate 1.1s ease-out backwards}@keyframes chipLate{0%,70%{opacity:0}to{opacity:1}}.monster .monster-number,.monster .split-half{grid-area:1 / 1}.monster-number.pop-in{animation:numberPop .45s cubic-bezier(.3,1.8,.5,1) .1s backwards}@keyframes numberPop{0%{transform:scale(.3);opacity:0}to{transform:scale(1);opacity:1}}.split-half{pointer-events:none;z-index:3}.split-half.top{clip-path:inset(0 0 52% 0);animation:splitTop .5s ease-in forwards}.split-half.bottom{clip-path:inset(48% 0 0 0);animation:splitBottom .5s ease-in forwards}@keyframes splitTop{0%{transform:translate(0) rotate(0);opacity:1}to{transform:translate(-34px,-46px) rotate(-14deg);opacity:0}}@keyframes splitBottom{0%{transform:translate(0) rotate(0);opacity:1}to{transform:translate(34px,40px) rotate(12deg);opacity:0}}.factor-chips{position:absolute;left:50%;top:50%;width:0;height:0;z-index:6;pointer-events:none}.factor-chip{position:absolute;left:0;top:0;transform:translate(-50%,-50%);padding:2px 10px;border-radius:8px;font-family:Consolas,ui-monospace,monospace;font-weight:800;font-size:1.4rem;color:#04211e;background:var(--divide);box-shadow:0 0 16px #38d9c9cc;animation:chipFly .8s cubic-bezier(.15,.8,.3,1) var(--delay) both}@keyframes chipFly{0%{transform:translate(-50%,-50%) scale(.4);opacity:0}15%{opacity:1;transform:translate(-50%,-50%) scale(1.2)}70%{opacity:1}to{transform:translate(calc(-50% + var(--dx)),calc(-50% + var(--dy))) scale(.8) rotate(20deg);opacity:0}}.shards{position:absolute;left:50%;top:50%;width:0;height:0;z-index:5;pointer-events:none}.shard{position:absolute;left:-9px;top:-9px;width:18px;height:18px;clip-path:polygon(50% 0,100% 60%,30% 100%);background:#3ddc84;animation:shardFly .9s cubic-bezier(.1,.7,.3,1) .24s both}.shard.adder{background:#ff9f43}.shard.multiplier{background:#a78bfa}.shard.boss{background:#ff6b6b}.shards.boss .shard{width:26px;height:26px}@keyframes shardFly{0%{transform:translate(0) rotate(0) scale(1);opacity:0}5%{opacity:1}to{transform:translate(var(--dx),var(--dy)) rotate(var(--rot)) scale(.4);opacity:0}}.prime-stamp{position:absolute;top:6px;right:-26px;z-index:7;padding:2px 10px;border:3px solid #ff7ab5;border-radius:6px;color:#ff7ab5;font-weight:900;letter-spacing:.16em;font-size:1rem;background:#140810bf;pointer-events:none;animation:stamp 1.6s ease-out .15s both}@keyframes stamp{0%{transform:rotate(-14deg) scale(2.4);opacity:0}12%{transform:rotate(-14deg) scale(.92);opacity:1}20%{transform:rotate(-14deg) scale(1)}80%{opacity:1}to{transform:rotate(-14deg) scale(1);opacity:0}}.combo-badge{position:absolute;top:54px;left:50%;z-index:8;font-family:Consolas,ui-monospace,monospace;font-weight:900;font-size:1.5rem;letter-spacing:.08em;color:var(--divide);text-shadow:0 0 14px rgba(56,217,201,.8),0 2px 0 #000;white-space:nowrap;pointer-events:none;animation:comboIn 1.2s ease-out forwards}@keyframes comboIn{0%{transform:translate(-50%) scale(.4);opacity:0}15%{transform:translate(-50%) scale(1.25);opacity:1}30%{transform:translate(-50%) scale(1)}75%{opacity:1}to{transform:translate(-50%) translateY(-14px) scale(1);opacity:0}}.break-banner{position:absolute;top:42%;left:50%;z-index:9;font-weight:900;font-size:4.2rem;font-style:italic;letter-spacing:.06em;color:#fff;-webkit-text-stroke:2px var(--gold);text-shadow:0 0 30px rgba(232,197,106,.9),0 4px 0 #000;white-space:nowrap;pointer-events:none;animation:bannerIn 1.15s cubic-bezier(.2,1.4,.4,1) .22s both}.break-banner.boss{font-size:3.6rem;font-style:normal;-webkit-text-stroke:2px #ff6b6b;text-shadow:0 0 40px rgba(255,107,107,.95),0 4px 0 #000;animation-duration:1.6s}@keyframes bannerIn{0%{transform:translate(-50%,-50%) scale(2.2);opacity:0}18%{transform:translate(-50%,-50%) scale(1);opacity:1}80%{transform:translate(-50%,-50%) scale(1.04);opacity:1}to{transform:translate(-50%,-50%) scale(1.1);opacity:0}}.enemy-area:not(.compact) .flash{left:calc(50% + 200px);top:46%}@media(max-width:760px){.enemy-area:not(.compact) .flash{left:50%;top:34%}}.card-ghost{transition:none!important}.overlay{animation:overlayIn .25s ease-out}.overlay-panel{animation:panelIn .32s cubic-bezier(.2,1.4,.4,1)}@keyframes overlayIn{0%{opacity:0}}@keyframes panelIn{0%{transform:scale(.9);opacity:0}}@media(max-width:760px){.break-banner{font-size:2.8rem}.break-banner.boss{font-size:2.3rem}.combo-badge{font-size:1.15rem;top:34px}.prime-stamp{right:-6px;font-size:.8rem}}@media(prefers-reduced-motion:reduce){.monster-anim,.factor-chip,.shard,.split-half{animation-duration:.01s!important}}.enemy-row.count-1 .combo-badge{top:34%;left:calc(50% + 205px)}@media(max-width:760px){.enemy-row.count-1 .combo-badge{top:30px;left:50%}}@media(max-width:760px){.flash .flash-op{font-size:2.3rem}.flash .flash-sub{font-size:.95rem}}.enemy-area.skill-ok .monster-wrap{filter:drop-shadow(0 0 14px rgba(240,171,252,.85))}.enemy-area.skill-ok .enemy-name:after{content:" ◀ 使える";color:#f0abfc;font-weight:800}.enemy-area.skill-no{opacity:.45;filter:grayscale(.6);cursor:not-allowed}@media(prefers-reduced-motion:no-preference){.enemy-area.skill-ok .monster-wrap{animation:skillGlow 1.2s ease-in-out infinite alternate}}@keyframes skillGlow{0%{filter:drop-shadow(0 0 6px rgba(240,171,252,.5))}to{filter:drop-shadow(0 0 18px rgba(240,171,252,.95))}}button.game-title{background:none;border:none;padding:0;cursor:pointer;font-family:inherit}button.game-title:hover{text-decoration:underline}.overlay-panel .btn+.btn{margin-left:10px}.title-sound{position:fixed;top:14px;right:16px;z-index:130}.title-screen{position:relative;min-height:100vh;min-height:100dvh;display:grid;place-items:center;overflow:hidden;padding:24px 16px}.title-numbers{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.title-numbers span{position:absolute;left:calc(4% + (var(--i) * 8%));top:110%;font-family:Consolas,ui-monospace,monospace;font-weight:800;font-size:calc(1.4rem + (var(--i) * .17rem));color:#38d9c921;animation:titleFloat calc(14s + var(--i) * 1.3s) linear calc(var(--i) * -2.1s) infinite}.title-numbers span:nth-child(3n){color:#e8c56a21}@keyframes titleFloat{0%{transform:translateY(0) rotate(0)}to{transform:translateY(-130vh) rotate(25deg)}}.title-inner{position:relative;width:min(460px,100%);display:flex;flex-direction:column;align-items:center;text-align:center;gap:18px}.title-kicker{margin:0;font-size:.8rem;letter-spacing:.22em;color:var(--muted)}.title-logo{margin:0;font-family:Consolas,ui-monospace,monospace;font-size:clamp(3rem,14vw,5rem);line-height:.95;font-weight:900;letter-spacing:.06em;color:#fff;text-shadow:0 0 24px rgba(232,197,106,.55),0 4px 0 #000;-webkit-text-stroke:1px var(--gold)}.title-rule{margin:0;font-size:1rem;line-height:1.8;color:var(--text)}.title-rule .t-div{color:var(--divide)}.title-rule .t-add{color:var(--add)}.title-rule .t-one{color:var(--gold);font-family:Consolas,ui-monospace,monospace;font-size:1.2em}.title-actions{width:100%;display:flex;flex-direction:column;gap:12px;margin-top:8px}.title-btn{width:100%;display:flex;flex-direction:column;align-items:center;gap:2px;padding:14px 18px;font-size:1.1rem}.title-btn small{font-size:.74rem;font-weight:500;opacity:.85}.title-confirm{border:1px solid var(--attack);border-radius:12px;padding:12px;background:#f0554d14}.title-confirm p{margin:0 0 10px;font-size:.9rem}.title-confirm div{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.btn.danger-btn{border-color:var(--attack);color:#ff8a80}.title-foot{margin:0;font-size:.74rem;color:var(--muted)}@media(prefers-reduced-motion:reduce){.title-numbers span{animation:none;top:calc(10% + var(--i) * 7%)}}@media(max-width:760px){html,body{overflow-x:hidden}.game{height:100vh;height:100dvh;min-height:0;overflow:hidden;padding:0 8px}.topbar{padding:8px 2px 4px;gap:6px 10px}.stage-text{font-size:.92rem}.main-row{flex:1 1 auto;min-height:0;gap:4px}.enemy-row{min-height:0}.enemy-area{gap:8px}.log-panel{padding:4px 10px;border-radius:8px}.log-title{display:none}.log-scroll{max-height:24px;overflow:hidden;gap:0;font-size:.74rem}.log-scroll .log-entry{flex-shrink:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bottombar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:0 6px;padding:0 0 calc(8px + env(safe-area-inset-bottom,0px))}.hand{order:-1;flex-basis:100%;--card-w: 84px;--card-h: 120px;--spacing-max: 70px;height:172px;margin:0 16px;--sp: min(var(--spacing-max), (100vw - 52px - var(--card-w)) / var(--n1))}.hand-slot{bottom:14px}.hand-slot.selected,.hand-slot.selected:hover{transform:translateY(-30px) rotate(0) scale(1.08)}.card-actions{left:calc(50% - var(--offset) * var(--sp) / 1.08);transform:translate(-50%) scale(.93);bottom:calc(100% + 6px)}.card .card-value{font-size:2.1rem}.act{min-width:0;padding:6px 10px}.bottom-left,.bottom-right{gap:8px;align-items:center}.energy-orb{width:56px;height:56px}.energy-current{font-size:1.4rem}.catalyst-slot{width:30px;height:36px}.pile-label{display:none}.pile-stack{width:32px;height:44px}.btn.end-turn{padding:12px 14px;font-size:.88rem;white-space:nowrap}.debug-toggle{bottom:auto;top:8px;left:auto;right:56px}.incoming{left:40px;top:30px}}@media(max-width:760px)and (max-height:760px){.monster{transform:scale(.62);margin:-40px 0}.enemy-area.compact .monster{transform:scale(.42);margin:-62px -68px}.intent-chip{padding:3px 10px}}@media(max-width:380px){.bottom-left,.bottom-right{gap:5px}.energy-orb{width:48px;height:48px}.energy-current{font-size:1.2rem}.catalyst-slot{width:26px;height:32px}.pile-stack{width:28px;height:40px}.btn.end-turn{padding:10px;font-size:.8rem;letter-spacing:.02em}}@media(max-width:760px){.overlay-panel{width:calc(100vw - 20px);max-height:calc(100dvh - 24px);overflow-y:auto;padding:22px 14px}.rest-options{flex-direction:column;width:100%;gap:10px}.rest-option{width:100%;min-height:0;padding:14px}.reward-row{flex-wrap:wrap;justify-content:center;gap:10px}.overlay-panel .btn+.btn{margin-left:0;margin-top:8px}}.title-links{display:flex;gap:18px;flex-wrap:wrap;justify-content:center}.link-btn{background:none;border:none;padding:2px 0;color:var(--muted);font-size:.82rem;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.link-btn:hover:not(:disabled){color:var(--text)}.link-btn:disabled{cursor:default;text-decoration:none;color:var(--divide)}.seed-field{display:grid;grid-template-columns:auto 1fr;gap:4px 10px;align-items:center;font-size:.85rem;color:var(--muted)}.seed-field input{font:inherit;font-family:Consolas,ui-monospace,monospace;padding:6px 10px;border-radius:8px;border:1px solid var(--line);background:var(--panel);color:var(--text);width:160px}.seed-field small{grid-column:1 / -1;font-size:.72rem}.coach{position:fixed;left:50%;top:70px;transform:translate(-50%);z-index:150;width:min(520px,calc(100vw - 20px));display:grid;grid-template-columns:auto 1fr;gap:4px 12px;padding:12px 14px 10px;border-radius:14px;border:1px solid rgba(56,217,201,.55);background:#0d1422f5;box-shadow:0 12px 32px #0000008c,0 0 20px #38d9c926;animation:coachIn .3s cubic-bezier(.2,1.4,.4,1)}@keyframes coachIn{0%{opacity:0;transform:translate(-50%) translateY(-10px) scale(.96)}}.coach-badge{grid-row:span 2;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;font-weight:900;color:#04211e;background:var(--divide)}.coach-title{margin:0;font-weight:800;color:var(--divide);font-size:.9rem}.coach-text{margin:2px 0 0;font-size:.86rem;line-height:1.55}.coach-actions{grid-column:2;display:flex;justify-content:flex-end;align-items:center;gap:14px;margin-top:4px}.coach-ok{font:inherit;font-weight:800;font-size:.82rem;padding:4px 16px;border-radius:8px;border:1px solid var(--divide);background:#38d9c926;color:var(--divide);cursor:pointer}.coach-off{font:inherit;font-size:.74rem;background:none;border:none;color:var(--muted);text-decoration:underline;cursor:pointer}.coach{pointer-events:none}.coach button{pointer-events:auto}@media(max-width:760px){.coach{top:92px;padding:9px 12px 8px}.coach-text{font-size:.8rem}}.result-panel{width:min(560px,calc(100vw - 20px))}.result-grid{margin:4px 0 0;width:100%;display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.result-tile{background:var(--panel-2);border:1px solid var(--line);border-radius:10px;padding:8px 10px;text-align:center}.result-tile dt{font-size:.68rem;color:var(--muted);letter-spacing:.04em}.result-tile dd{margin:2px 0 0;font-family:Consolas,ui-monospace,monospace;font-weight:800;font-size:1.05rem;font-variant-numeric:tabular-nums}.result-theorems{width:100%}.result-label{margin:0 0 6px;font-size:.74rem;color:var(--muted)}.result-theorems ul{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:6px}.result-theorems li{font-size:.78rem;padding:3px 10px;border-radius:999px;border:1px solid rgba(232,197,106,.45);color:var(--gold)}.result-theorems .glyph{font-family:Consolas,ui-monospace,monospace;margin-right:6px;font-weight:800}.result-seed{display:flex;align-items:center;gap:12px;font-size:.85rem;color:var(--muted)}.result-seed b{font-family:Consolas,ui-monospace,monospace;color:var(--text)}.btn.small-btn{padding:6px 12px;font-size:.8rem}.result-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}.result-actions .btn+.btn{margin:0}@media(max-width:760px){.result-grid{grid-template-columns:repeat(2,1fr)}.result-actions{flex-direction:column;width:100%}.result-actions .btn+.btn{margin-top:0}}.overlay-title.route{color:var(--gold)}.route-panel{width:min(760px,calc(100vw - 20px))}.route-meta{margin:-6px 0 0;font-size:.8rem;color:var(--muted)}.route-options{display:flex;gap:14px;width:100%;justify-content:center}.route-option{--route-color: var(--divide);flex:1 1 0;max-width:220px;min-height:170px;padding:18px 14px;border-radius:14px;border:2px solid var(--route-color);background:linear-gradient(180deg,color-mix(in srgb,var(--route-color) 16%,#1a2036),#10152a);color:var(--text);display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer;font:inherit;transition:transform .15s ease,box-shadow .15s ease}.route-option:hover{transform:translateY(-4px);box-shadow:0 10px 26px color-mix(in srgb,var(--route-color) 35%,transparent)}.route-option.elite{--route-color: #ff6b6b}.route-option.event{--route-color: #a78bfa}.route-glyph{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;font-family:Consolas,ui-monospace,monospace;font-weight:900;font-size:1.6rem;color:var(--route-color);border:2px solid var(--route-color);background:#00000059}.route-name{font-weight:800;font-size:1.05rem;color:var(--route-color)}.route-desc{font-size:.78rem;line-height:1.5;color:var(--muted)}.event-panel{width:min(560px,calc(100vw - 20px));text-align:center}.event-kicker{margin:0;font-size:.74rem;letter-spacing:.2em;color:#a78bfa}.overlay-title.event{color:#c4b5fd}.event-number{margin:-4px 0;font-family:Consolas,ui-monospace,monospace;font-weight:900;font-size:3.4rem;color:#fff;text-shadow:0 0 22px rgba(167,139,250,.6)}.event-text{margin:0;line-height:1.7;font-size:.95rem}.event-options{width:100%;display:flex;flex-direction:column;gap:10px}.event-option{font:inherit;display:flex;flex-direction:column;gap:2px;padding:12px 16px;border-radius:12px;border:1px solid #6d5bd0;background:#a78bfa14;color:var(--text);cursor:pointer;text-align:left}.event-option:hover:not(:disabled){background:#a78bfa2e}.event-option:disabled{opacity:.45;cursor:not-allowed}.event-label{font-weight:800}.event-detail{font-size:.8rem;color:var(--muted)}.event-result{margin:0;padding:12px 14px;border-radius:10px;background:#e8c56a1a;border:1px solid rgba(232,197,106,.4);line-height:1.6}@media(max-width:760px){.route-options{flex-direction:column;align-items:stretch;flex-shrink:0;gap:10px}.route-option{flex:none;max-width:none;min-height:0;display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:12px;text-align:left;padding:12px 14px}.route-glyph{grid-row:span 2;width:42px;height:42px;font-size:1.3rem}.event-number{font-size:2.6rem}}.elite-tag{margin-left:8px;padding:1px 8px;border-radius:999px;font-size:.7rem;letter-spacing:.1em;color:#ff8a80;border:1px solid rgba(255,107,107,.6);vertical-align:2px}.card-actions.with-detail{flex-direction:column;align-items:center;gap:8px}.card-actions-row{display:flex;gap:8px}.card-detail{width:290px;padding:10px 12px;border-radius:12px;border:1px solid rgba(240,171,252,.5);background:#0c0e1af7;box-shadow:0 12px 30px #0000008c;text-align:left}.card-detail-name{margin:0;font-weight:800;color:#f0abfc;display:flex;justify-content:space-between;align-items:baseline;gap:8px}.card-detail-name span{font-size:.7rem;font-weight:600;color:var(--muted)}.card-detail-text{margin:4px 0 0;font-size:.86rem;line-height:1.55}.card-detail-kw{margin:8px 0 0;padding-top:6px;border-top:1px dashed var(--line);display:flex;flex-direction:column;gap:4px}.card-detail-kw div{display:grid;grid-template-columns:auto 1fr;gap:8px;font-size:.72rem;line-height:1.45}.card-detail-kw dt{font-weight:800;color:var(--gold);white-space:nowrap}.card-detail-kw dd{margin:0;color:var(--muted)}@media(max-width:760px){.card-detail{width:min(300px,calc(100vw - 30px))}.card-detail-text{font-size:.8rem}}.title-btn.daily-btn{border-color:#a78bfab3;background:linear-gradient(180deg,#a78bfa2e,#a78bfa0f)}.title-btn.daily-btn span{color:#c4b5fd}.result-daily{margin:-6px 0 0;font-size:.82rem;color:#c4b5fd;letter-spacing:.06em}.result-daily b{margin-left:10px;color:var(--gold)}.monster{animation:squish 2.6s ease-in-out infinite}.monster.boss{animation:bossPulse 2.4s ease-in-out infinite,squish-soft 3.2s ease-in-out infinite}.monster.adder,.monster.multiplier{animation:squish-soft 2.9s ease-in-out infinite}.enemy-row>.enemy-area:nth-of-type(2) .monster{animation-delay:-.9s}.enemy-row>.enemy-area:nth-of-type(3) .monster{animation-delay:-1.7s}.enemy-area.clickable:hover .monster{animation-duration:.9s}.enemy-area.clickable:hover .monster.boss{animation-duration:2.4s,1.1s}.enemy-area.defeated .monster{animation:none}@keyframes squish{0%,to{scale:1 1;translate:0 0}18%{scale:1.07 .93;translate:0 7px}38%{scale:.96 1.05;translate:0 -6px}56%{scale:1.03 .97;translate:0 3px}74%{scale:.99 1.01;translate:0 -1px}}@keyframes squish-soft{0%,to{scale:1 1;translate:0 0}25%{scale:1.035 .965;translate:0 4px}55%{scale:.98 1.025;translate:0 -3px}78%{scale:1.01 .99;translate:0 1px}}.monster-eyes span{animation:blinkEye 4.2s ease-in-out infinite;transform-origin:50% 50%}.enemy-row>.enemy-area:nth-of-type(2) .monster-eyes span{animation-delay:-1.3s}.enemy-row>.enemy-area:nth-of-type(3) .monster-eyes span{animation-delay:-2.9s}@keyframes blinkEye{0%,92%,to{scale:1 1}95%{scale:1 .1}}@media(prefers-reduced-motion:reduce){.monster,.monster.boss,.monster.adder,.monster.multiplier,.monster-eyes span{animation:none}}
