/* Grounded sprites: exactly twice the prior visual scale, unchanged targets. */
.combat-board .pose-viewport{scale:2;transform-origin:50% 100%}
.combat-board .stage-ruinguard .pose-viewport{scale:4.6}
.combat-board .stage-mitachurl .pose-viewport{scale:3.4}
.portrait-anim{scale:2;transform-origin:50% 100%}
.npc-avatar{overflow:visible}.npc-avatar .portrait-anim{scale:2;transform-origin:50% 100%}
.expedition .portrait{height:180px}.npc-scene{padding-top:70px}
/* Only scenery is blurred; route nodes, characters, and text remain crisp. */
.scene-bg>img,.in-combat .scene-bg>img{filter:blur(5px)!important;scale:1.05;image-rendering:auto}
.map-content{background:none!important;isolation:isolate}
.map-content:before{inset:-12px;z-index:-1;background:linear-gradient(#102b29c4,#143a30bc),var(--map-image) center/cover;filter:blur(5px);scale:1.03}
html,body,*{scrollbar-width:none!important}*::-webkit-scrollbar{display:none!important;width:0;height:0}
[data-scroll-axis="x"]{mask-image:linear-gradient(90deg,transparent,#000 var(--fade-start,0px),#000 calc(100% - var(--fade-end,0px)),transparent)}
[data-scroll-axis="y"]{mask-image:linear-gradient(180deg,transparent,#000 var(--fade-start,0px),#000 calc(100% - var(--fade-end,0px)),transparent)}
#viewport-fades{position:fixed;inset:0;z-index:95;pointer-events:none}
#viewport-fades:before,#viewport-fades:after{content:'';position:absolute;left:0;right:0;height:24px;opacity:0;transition:opacity .2s}
#viewport-fades:before{top:0;background:linear-gradient(#08131e,transparent)}#viewport-fades:after{bottom:0;background:linear-gradient(transparent,#08131e)}
#viewport-fades.top-more:before,#viewport-fades.bottom-more:after{opacity:1}
.cursed-relic{color:#ffb1bd!important;border-color:#d8789066!important;background:#70394726!important}
/* Open hand: no selection frame, no visible draw pile. */
.combat-board .combat-bottom{border:0!important;background:transparent!important;clip-path:none!important;height:348px;padding:0 2% 0;isolation:isolate}
.combat-board .combat-bottom:before{content:'';position:absolute;inset:30% -3% 0;z-index:-1;background:linear-gradient(transparent,#08131ed9 76%);pointer-events:none}
.combat-board .battlefield{height:320px;padding-top:15px}.combat-board .combat-log{height:22px;opacity:.8;background:transparent;border:0;color:#b7cdce}
.combat-board .combat-top{height:70px}.combat-board .hand-controls{height:42px;padding:0 2%;position:relative;z-index:25;pointer-events:none}
.hand-controls button,.hand-controls .energy-group{pointer-events:auto}.energy-label small{font-size:9px}
.hand-scroll{overflow-x:auto;overflow-y:hidden;max-width:100%;height:318px;margin-top:-15px;position:relative;padding-inline:16px;overscroll-behavior-x:contain}
.combat-board .hand{position:relative;display:block;height:318px;min-width:100%;margin:auto;overflow:visible;gap:0;padding:0}
.fan-size{display:block;visibility:hidden;height:1px;pointer-events:none}
.combat-board .hand .card{position:absolute;left:calc(50% + var(--fan-x) - 98px);top:calc(26px + var(--fan-arc));width:196px;min-width:196px;height:270px;min-height:270px;padding:11px;transform:rotate(var(--fan-angle))!important;transform-origin:50% 110%;z-index:var(--fan-order);transition:transform .23s,top .23s,box-shadow .23s;touch-action:none;opacity:1}
.combat-board .hand .card.unplayable{filter:saturate(.45);color:#abb5be}.combat-board .hand .card.unplayable .cost{background:#72898a}
.combat-board .hand .card:hover,.combat-board .hand .card:focus-visible,.combat-board .hand .card.card-selected{transform:translateY(-22px) rotate(0deg)!important;z-index:30;outline:2px solid #e4f6e9;outline-offset:2px}
.combat-board .hand .skill-art{height:113px}.combat-board .hand .card h3{font-size:15px;line-height:1.35;min-height:20px;margin:5px 0 7px}
.combat-board .hand .card p{font-size:12px;line-height:1.55}.combat-board .hand .card .role-badge{font-size:10px}.combat-board .hand .card .card-type{font-size:9px}
.combat-board .hand .card .cost{width:29px;height:29px;font-size:21px}.combat-help{position:relative;margin-top:-8px;pointer-events:none;font-size:9px;color:#a1beb8}
.discard-pile{position:absolute;right:15px;bottom:18px;width:70px;height:76px;padding:6px;z-index:40;border:1px solid #a6d9c64d!important;background:#081521e8!important;box-shadow:3px 3px 0 #020b12}
.discard-pile>img{width:35px;height:35px}.discard-pile>b{position:absolute;right:6px;top:7px;font-size:17px;color:#dbecde}.discard-pile>small{display:block;font-size:9px}
#combat-items{height:44px;position:relative;z-index:30;padding:0 4%}.item-shelf{display:flex;justify-content:center;gap:14px;position:relative;height:44px}
.consumable{display:grid;grid-template-columns:35px auto;align-items:center;position:relative;padding:2px 7px;background:#10262bde!important;border:1px solid #9fd7c640!important;min-width:106px;height:43px;touch-action:none}
.consumable img{width:32px;height:32px;grid-row:1/3;pointer-events:none}.consumable small{font-size:9px;white-space:nowrap}.consumable b{font-size:14px;color:#dbf2e4}.consumable.empty-item{opacity:.36}
.item-drop-zone{display:none;position:absolute;inset:-4px 0;align-items:center;justify-content:center;background:#193a38f5;border:2px dashed #c6eedb;font-size:13px;color:#e7f9f0;pointer-events:auto}
.item-dragging .item-drop-zone{display:flex}.item-dragging .item-drop-zone.ready{background:#366a57f5}.item-drag-ghost{position:fixed;left:0;top:0;z-index:110;pointer-events:none;width:66px;height:66px;padding:7px;background:#102b31db;border:2px solid #ccecd7;border-radius:10px}.item-drag-ghost img{width:100%;height:100%}
.item-drag-ghost.ready{border-color:#ffe0a2;box-shadow:0 0 22px #b8efb755}
@media(min-width:961px){.item-shelf{transform:translateY(-52px);max-width:470px;margin:auto}}
.combat-board .intent{z-index:5}.combat-board .enemy:has(.stage-ruinguard) .intent{top:-75px}.combat-board .enemy:has(.stage-mitachurl) .intent{top:-60px}
.cast-banner{left:4%;right:auto;top:23%;transform:none;animation:skill-from-left .85s ease both!important}
.cast-banner.cast-enemy{left:auto;right:4%;animation-name:skill-from-right!important}.cast-enemy .cast-content{border-color:#e9ac9d;color:#ffd5c7;background:#2b1c25ed}
@keyframes skill-from-left{0%{opacity:0;translate:-80px 0}25%,75%{opacity:1;translate:0 0}100%{opacity:0;translate:-24px 0}}
@keyframes skill-from-right{0%{opacity:0;translate:80px 0}25%,75%{opacity:1;translate:0 0}100%{opacity:0;translate:24px 0}}
@media(max-width:960px){
 .combat-board .stage-ruinguard .pose-viewport{scale:3.6}.combat-board .stage-mitachurl .pose-viewport{scale:3}
 .combat-board .battlefield{height:300px;min-height:300px}.combat-board .battlefield:has(.enemies[data-count="3"]),.combat-board .battlefield:has(.enemies[data-count="4"]){height:510px;min-height:510px}
 .combat-board .enemies[data-count="3"],.combat-board .enemies[data-count="4"]{row-gap:46px}
 .combat-board .enemies[data-count="3"] .intent,.combat-board .enemies[data-count="4"] .intent{top:-10px}
 .combat-board .enemies[data-count="3"] .enemy:has(.stage-ruinguard) .intent,.combat-board .enemies[data-count="4"] .enemy:has(.stage-ruinguard) .intent{top:-56px}
 .combat-board .enemies[data-count="3"] .enemy:has(.stage-mitachurl) .intent,.combat-board .enemies[data-count="4"] .enemy:has(.stage-mitachurl) .intent{top:-56px}
 .combat-board .combat-bottom{height:326px;padding-inline:0}.combat-board .combat-top{height:62px}.combat-board .hand-controls{padding-inline:12px}
 .hand-scroll{height:300px;padding-inline:8px;margin-top:0}.combat-board .hand{height:300px}
 .combat-board .hand .card{width:164px;min-width:164px;height:252px;min-height:252px;left:calc(50% + var(--fan-x) - 82px);padding:9px;top:calc(20px + var(--fan-arc))}
 .combat-board .hand .card h3{font-size:13px}.combat-board .hand .card p{font-size:11px;line-height:1.45}.combat-board .hand .skill-art{height:99px}
 .combat-board .hand .card .cost{width:25px;height:25px;font-size:19px}.combat-help{font-size:8px;padding-right:65px;margin-top:-10px}
 .discard-pile{right:8px;bottom:8px;width:60px;height:66px}.discard-pile>img{height:29px;width:29px}
 #combat-items{height:57px;padding-inline:8px}.item-shelf{gap:5px;height:53px}.consumable{height:49px;min-width:0;flex:1;padding:2px;grid-template-columns:27px 1fr}.consumable img{width:27px;height:32px}.consumable small{font-size:8px;white-space:normal;line-height:1.15}.consumable b{font-size:12px}
 .cast-banner{top:24%;left:3%;width:220px}.cast-banner.cast-enemy{right:3%}.npc-scene{padding-top:70px}
}
@media(prefers-reduced-motion:reduce){.cast-banner{animation:none!important}.combat-board .hand .card{transition:none}}
