@import url('../ascenso/interfaz.css');
#game #notice{position:static;background:none;color:inherit;max-width:none;margin:0}
#game .actor.farero{transform:translateX(calc(-50% + var(--edge-offset,0px)))}
#game[data-interior=true][data-mode=combat]{background:#102c35}
.interior-background{position:absolute;inset:0;z-index:-2;overflow:hidden;pointer-events:none}
.interior-background>img{width:100%;height:100%;object-fit:cover;object-position:50% 58%;filter:brightness(.8)}
.interior-background>div{position:absolute;pointer-events:none}
.aljibe-water{inset:62% -5% -5%;background:repeating-linear-gradient(176deg,transparent 0 24px,#bdebe329 25px 27px,transparent 29px 42px);mask-image:linear-gradient(transparent,#0008 50%,transparent);animation:interior-water 8s ease-in-out infinite alternate}
.aljibe-light{inset:0;background:radial-gradient(ellipse at 15% 32%,#f8ba482e,transparent 35%),radial-gradient(ellipse at 80% 40%,#f6cb7c22,transparent 40%);animation:interior-light 9s ease-in-out infinite alternate}
.aljibe-mist{inset:50% -10% 12%;background:radial-gradient(ellipse,#bfdcd313,transparent 65%);animation:interior-mist 21s ease-in-out infinite alternate}
@keyframes interior-water{to{transform:translateX(12px);opacity:.55}}
@keyframes interior-light{to{opacity:.45}}
@keyframes interior-mist{to{transform:translateX(9%)}}
#game[data-interior=true][data-mode=combat] .field{left:4%;right:4%}
.interior-ground{position:absolute;left:0;top:calc(70% - 5.9vw);width:100%;aspect-ratio:1910/310;overflow:visible;filter:drop-shadow(0 15px 12px #031820a0);z-index:0}
#game .interior-actor{width:clamp(115px,22vw,290px);height:auto;aspect-ratio:768/530;bottom:calc(30% - clamp(115px,22vw,290px)*20/768);transform:translateX(calc(-50% + var(--edge-offset,0px)))}
#game .interior-actor[data-kind=compuerta]{width:clamp(130px,24vw,305px);bottom:calc(30% - clamp(130px,24vw,305px)*20/768)}
.interior-actor .actor-art,.interior-actor .actor-bob{width:100%;height:100%;display:block;overflow:visible}
.interior-actor .actor-bob{transform-origin:50% 96.226%;animation:interior-breathe 5.3s ease-in-out infinite}
.interior-actor[data-kind=cangrejo] .actor-bob{animation-duration:4.7s}
.interior-actor[data-requested-pose]:not([data-requested-pose=auto]) .actor-bob{animation:none}
@keyframes interior-breathe{50%{transform:rotate(.3deg) scaleY(1.004)}}
.interior-actor .head{position:absolute;width:0;height:0}
.interior-actor .head>*,.interior-actor .float,.interior-actor .prepared{display:none}
#game[data-interior=true] .intent{min-width:82px;min-height:48px;max-width:150px;padding:4px 7px;background:#102d36f2;color:#f4dfb8}
#game[data-interior=true] .enemy-life{display:grid;grid-template-columns:repeat(6,auto);gap:0 2px;color:#f6b69d;font-size:12px;line-height:1.1}
#game[data-interior=true] .enemy-life .spent-heart{color:#81908c}
#game[data-interior=true] .enemy-intent{font-size:12px}
#game[data-interior=true] .queue-anchor{translate:0 -100%;max-width:175px}
#game[data-interior=true] .queue{flex-direction:column-reverse}
#game[data-interior=true] .queue-slot{display:block;padding-top:0}
#game[data-interior=true] .earlier{position:absolute;left:calc(100% + 4px);right:auto;top:0;rotate:none}
#game[data-interior=true] .queue-anchor[data-edge=right] .earlier{left:auto;right:calc(100% + 4px)}
#game[data-interior=true] .queue-caption{font-size:0}
#game[data-interior=true] .queue-caption::after{content:'PRIMERO ABAJO';font-size:7px}
#game[data-interior=true] .cell{min-height:48px;height:12%;bottom:calc(30% - 24px)}
#game[data-interior=true] .cell.danger{border-bottom:2px solid #ffb58e;background:radial-gradient(ellipse,#f7b58755,transparent 65%)}
#game[data-interior=true] .decision{padding:8px 16px;background:#102b35eb;border:1px solid #a58b5a;border-radius:6px}
.aljibe-jet{fill:none;stroke:#c5eeeb;stroke-width:8;stroke-linecap:round}
.aljibe-jet-edge{fill:none;stroke:#438b9c88;stroke-width:20;stroke-linecap:round}
#game[data-paused=true] .interior-background *,#game[data-paused=true] .actor-bob{animation-play-state:paused!important}
#game[data-reduced=true] .interior-background *,#game[data-reduced=true] .actor-bob{animation:none!important}
@media(max-width:600px){
 #game[data-interior=true][data-mode=combat]{--field-bottom:38%}
 #game .interior-actor{width:32vw;bottom:calc(30% - 32vw*20/768)}
 #game .interior-actor[data-kind=compuerta]{width:36vw;bottom:calc(30% - 36vw*20/768)}
 #game[data-interior=true] .intent{min-width:64px;max-width:95px;padding:3px;min-height:48px}
 #game[data-interior=true] .enemy-intent{font-size:9px}
 #game[data-interior=true] .enemy-life{font-size:9px;gap:0 1px}
 #game[data-interior=true] .decision{padding:6px 8px}
 .interior-background>img{object-position:50% 56%}
}
@media(min-width:601px) and (min-height:601px){
 #game[data-interior=true][data-mode=combat]{--field-bottom:19%}
}
@media(min-width:601px) and (max-height:600px){
 #game[data-interior=true][data-mode=combat]{--field-bottom:35%}
 #game[data-interior=true] .decision{width:min(760px,90%)}
 #game[data-interior=true] .queue-anchor{max-width:none}
 #game[data-interior=true] .queue{flex-direction:row}
 #game[data-interior=true] .queue-slot{display:flex;gap:3px}
 #game[data-interior=true] .earlier{position:static;rotate:90deg}
 #game[data-interior=true] .queue-caption::after{content:'PRIMERO A LA IZQUIERDA'}
 #game .interior-actor{width:17vw;bottom:calc(30% - 17vw*20/768)}
 #game .interior-actor[data-kind=compuerta]{width:18vw;bottom:calc(30% - 18vw*20/768)}
}

/* Cada interior conserva sus propias capas, todas obedecen pausa y movimiento reducido. */
#game[data-theme=faro_maquinas] .aljibe-water{inset:10% 0 25%;background:radial-gradient(ellipse at 26% 80%,#d4c8aa28,transparent 40%),radial-gradient(ellipse at 74% 58%,#e0cfba1d,transparent 30%);mask-image:none;animation:interior-steam 12s ease-in-out infinite alternate}
#game[data-theme=faro_maquinas] .aljibe-light{background:radial-gradient(ellipse at 60% 48%,#d08a393a,transparent 45%)}
#game[data-theme=faro_escalera] .aljibe-water{inset:0;background:repeating-linear-gradient(110deg,transparent 0 24%,#e0d9af0b 25% 27%,transparent 28% 50%);mask-image:none;animation:interior-bell-shadow 14s ease-in-out infinite alternate}
#game[data-theme=faro_escalera] .aljibe-light{background:radial-gradient(ellipse at 62% 10%,#e1d2a52a,transparent 58%)}
#game[data-theme=faro_linterna] .aljibe-water{inset:-30%;background:conic-gradient(from 15deg at 50% 48%,transparent 0 65deg,#e1edd221 75deg,transparent 88deg 240deg,#f5d59a16 250deg,transparent 265deg);mask-image:radial-gradient(ellipse,#0008,transparent 65%);animation:interior-beacon 34s linear infinite}
#game[data-theme=faro_linterna] .aljibe-light{background:radial-gradient(ellipse at 50% 30%,#f4d8a538,transparent 55%)}
@keyframes interior-steam{to{transform:translateY(-20px) translateX(10px);opacity:.35}}
@keyframes interior-bell-shadow{to{transform:skewX(4deg) translateX(12px);opacity:.5}}
@keyframes interior-beacon{to{transform:rotate(360deg)}}
.interior-strike{fill:none;stroke:#edba7b;stroke-width:8;stroke-linecap:round}
.interior-strike.campana{stroke:#eacaa0;stroke-width:5;stroke-dasharray:14 6}
.interior-strike.haz{stroke:#c8eced;stroke-width:9;filter:drop-shadow(0 0 6px #caead0)}
.interior-strike.giro_lente{stroke:#d4dfee;stroke-width:6}
.interior-impact{fill:#ecc27a30;stroke:#edc783;stroke-width:3}
.interior-impact.haz,.interior-impact.giro_lente{stroke:#d5edf1;fill:#c9e9ed2b}
