/* Three-stage presentation; older scenes remain frozen. Header/footer proportions and
   control/HUD positions are measured from the 887×1774 generated master. */
.rp13-portal{background:#020812;color-scheme:dark}
.rp13-game{--rp13-header:39.2334cqw;--rp13-footer:14.5434cqw;position:absolute;inset:0;container-type:size;overflow:hidden;background:#020812;color:#f4e8c8;font-family:Georgia,'Times New Roman',serif;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
.rp13-top{position:absolute;z-index:5;top:env(safe-area-inset-top,0px);left:0;right:0;height:var(--rp13-header);background:url('game-art/eyemageddon-v2/header.webp') top center/100% 100% no-repeat;pointer-events:none}
.rp13-icon{position:absolute;width:44px;height:44px;min-height:44px;padding:0;border:0;background-color:transparent;background-position:center;background-size:100% 100%;background-repeat:no-repeat;pointer-events:auto;touch-action:manipulation;cursor:pointer;transform:translate(-50%,-50%)}
.rp13-icon svg{display:none}.rp13-icon[hidden]{display:none}.rp13-icon:disabled{opacity:.45}
.rp13-top .rp13-icon{background-size:30px 30px;filter:brightness(1.3) drop-shadow(0 0 2px #b4e8f7)}
.rp13-top [data-rp13=back]{left:22px;top:max(22px,4.34cqw);background-image:url('game-art/eyemageddon-v3/back.webp')}
.rp13-top [data-rp13=play]{left:calc(100% - 70px);top:max(22px,4.40cqw);background-image:url('game-art/eyemageddon-v3/play.webp')}
.rp13-top [data-rp13=play][aria-pressed=true]{background-image:url('game-art/eyemageddon-v3/pause.webp')}
.rp13-top [data-rp13=info]{left:calc(100% - 22px);top:max(22px,4.40cqw);background-image:url('game-art/eyemageddon-v3/info.webp')}
.rp13-game button:focus-visible,.rp13-intro:focus-visible{outline:2px solid #f7df9b;outline-offset:-2px}.rp13-game button:active{filter:brightness(1.2)}
.rp13-hud{position:absolute;z-index:6;top:calc(env(safe-area-inset-top,0px) + 31.8cqw);left:0;right:0;height:4.8cqw;pointer-events:none}
.rp13-hud>div{position:absolute;top:0;height:100%;display:flex;justify-content:center;align-items:center;min-width:0}
.rp13-hud>div:nth-child(1){left:12.4%;width:24.35%}.rp13-hud>div:nth-child(2){left:43.4%;width:26.4%}.rp13-hud>div:nth-child(3){left:78.2%;width:8.35%}
.rp13-hud small{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.rp13-hud b{font:700 clamp(16px,5.3cqw,24px)/1 'EB Garamond',Georgia,serif;color:#fff2d5;text-shadow:0 1px 2px #000;font-variant-numeric:lining-nums tabular-nums;letter-spacing:.1px;white-space:nowrap;display:flex;width:100%;align-items:center;justify-content:space-around}
.rp13-hud b span{display:block;flex:1;text-align:center}.rp13-hud b span[style]{position:absolute;transform:translateX(-50%);width:16.67%}
.rp13-hud>div:nth-child(3) b{font-size:clamp(16px,4.9cqw,22px)}
.rp13-field{position:absolute;inset:calc(env(safe-area-inset-top,0px) + var(--rp13-header)) 0 calc(env(safe-area-inset-bottom,0px) + var(--rp13-footer));touch-action:none;overflow:hidden;background:transparent}
.rp13-field>canvas{position:absolute;inset:0;width:100%;height:100%;outline:none;touch-action:none}
.rp13-footer{position:absolute;z-index:6;inset:auto 0 env(safe-area-inset-bottom,0px);height:var(--rp13-footer);background:url('game-art/eyemageddon-v3/footer.webp') center/100% 100% no-repeat;pointer-events:none}
.rp13-footer .rp13-icon{background-size:28px 28px;top:6.8cqw;z-index:10}
.rp13-footer [data-rp13=sound]{left:7.9%;background-image:url('game-art/eyemageddon-v3/speaker-on.webp')}
.rp13-footer [data-rp13=sound][data-audio-mode=off]{background-image:url('game-art/eyemageddon-v3/speaker-muted.webp')}
.rp13-footer [data-rp13=music]{left:21.8%;background-image:url('game-art/eyemageddon-v3/music-off.webp')}
.rp13-footer [data-rp13=music][data-music=on]{background-image:url('game-art/eyemageddon-v3/music.webp')}
.rp13-footer .rp13-master-muted{opacity:.48;filter:saturate(.45)}
.rp13-reserves{position:absolute;right:3.3%;top:0;width:46%;height:100%;pointer-events:none}
.rp13-ready{position:absolute;z-index:3;inset:calc(env(safe-area-inset-top,0px) + var(--rp13-header)) 0 calc(env(safe-area-inset-bottom,0px) + var(--rp13-footer));display:flex;align-items:center;justify-content:center;pointer-events:none}
.rp13-ready[hidden]{display:none}.rp13-level-title{width:90%;max-width:400px;text-align:center;pointer-events:none}.rp13-level-title img{width:100%;height:auto;display:block;filter:drop-shadow(0 3px 6px #020812)}.rp13-level-title span{display:block;font-size:18px;letter-spacing:5px}.rp13-level-title strong{display:block;font-size:30px;line-height:1.2;letter-spacing:1.5px;color:#f8e8b1;text-shadow:0 2px 4px #000}
.rp13-challenge-intro{display:flex;align-items:center;justify-content:center;background:transparent}
.rp13-overlay{position:absolute;z-index:7;inset:calc(env(safe-area-inset-top,0px) + var(--rp13-header)) 0 calc(env(safe-area-inset-bottom,0px) + var(--rp13-footer));display:flex;align-items:center;justify-content:center;box-sizing:border-box;padding:16px 22px;overflow:auto;background:#01070dbc}
.rp13-overlay[hidden]{display:none}.rp13-game[data-mode=countdown] .rp13-overlay{pointer-events:none}
.rp13-game:is([data-mode=paused],[data-mode=finished],[data-mode=invalid],[data-mode=save-error]) .rp13-field>canvas{visibility:hidden}
.rp13-entry-overlay{inset:0;padding:0;background:transparent;overflow:hidden;z-index:4}
.rp13-intro{position:absolute;inset:0;cursor:pointer;outline:none;touch-action:manipulation}
.rp13-intro-card{position:absolute;inset:0;display:grid;opacity:0;pointer-events:none;background:transparent}
.rp13-intro-card:first-child{opacity:1}.rp13-intro-card img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.rp13-opening .rp13-top{z-index:9}.rp13-opening .rp13-hud,.rp13-opening .rp13-reserves{visibility:hidden}
.rp13-opening .rp13-footer{z-index:9}
.rp13-panel{width:100%;max-width:340px;box-sizing:border-box;padding:22px 16px;text-align:center;border:17px solid transparent;border-image:url('game-art/eyemageddon-v2/panel.webp') 40 fill stretch}
.rp13-panel h2{font:700 27px/1.15 Georgia,serif;letter-spacing:1.5px;margin:0 0 16px;color:#eed9a4;text-shadow:0 2px 2px #020812}.rp13-panel p{font:16px/1.4 Georgia,serif;margin:12px 0;color:#e5ddc9}
.rp13-panel button,.rp13-completion-actions button{min-height:48px;box-sizing:border-box;padding:9px 12px;color:#f5e7bc;font:700 17px/1.2 Georgia,serif;background:none;border:10px solid transparent;border-image:url('game-art/eyemageddon-v2/panel.webp') 40 fill stretch;touch-action:manipulation;cursor:pointer}
.rp13-panel>.rp13-primary{width:100%}.rp13-pause-actions{display:flex;gap:10px;justify-content:center}.rp13-pause-actions button{flex:1}.rp13-paused-heading{pointer-events:auto;font-size:32px!important;letter-spacing:5px!important}
.rp13-completion{width:100%;max-width:350px;text-align:center;box-sizing:border-box;border:17px solid transparent;border-image:url('game-art/eyemageddon-v2/panel.webp') 40 fill stretch;padding:22px 10px;color:#f4e5bd}
.rp13-completion-title{font:700 26px/1.2 Georgia,serif;letter-spacing:2px;margin:0 0 20px}.rp13-completion h2{font:700 45px/1 Georgia,serif;font-variant-numeric:tabular-nums;margin:0 0 14px}.rp13-completion p{font:16px/1.35 Georgia,serif;margin:12px 0}.rp13-completion-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:20px}.rp13-completion-actions button{flex:1;min-width:120px}
.rp13-settle,.rp13-loading{font:700 18px/1.4 Georgia,serif;letter-spacing:2px;text-align:center;color:#e4cf9d}
.rp13-status,.rp13-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.rp13-lab-boards{display:grid;gap:8px}.rp13-lab-panel{max-height:100%;overflow:auto;padding:14px 10px}.rp13-lab-panel h2{margin-bottom:8px}.rp13-lab-panel p{font-size:14px}.rp13-lab-boards button{font-size:15px}
@media(max-height:650px){.rp13-panel{padding:14px 12px}.rp13-panel p{font-size:15px}.rp13-completion{padding:15px 10px}.rp13-completion-title{margin-bottom:15px}}
@media(prefers-reduced-motion:reduce){.rp13-game *{animation:none!important;transition:none!important}}

.rp13-ready{opacity:1;transition:opacity .2s ease}.rp13-ready.rp13-title-launched{opacity:0}.rp13-opening .rp13-footer [data-rp13=music]{left:21.8%}
.rp13-panel,.rp13-completion{max-height:100%;overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.rp13-overlay{overscroll-behavior:contain}


/* Full viewport world is independent of the 360 x 500 combat coordinate field. */
.rp13-world{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.rp13-field{background:transparent}
.rp13-intro-card{box-sizing:border-box;inset:calc(env(safe-area-inset-top,0px) + var(--rp13-header)) 0 calc(env(safe-area-inset-bottom,0px) + var(--rp13-footer));padding:6px 18px 10px;grid-template-rows:minmax(0,53fr) 15fr 12fr 20fr;gap:0;justify-items:center;text-align:center;color:#f8e7bf;text-shadow:0 2px 4px #000}
.rp13-card-hero{width:100%;height:100%;min-height:0;display:flex;align-items:center;justify-content:center}
.rp13-card-hero img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;filter:none}
.rp13-card-name{display:flex;align-items:center;justify-content:center;width:100%;margin:0;font:700 min(9cqw,4.3cqh)/1.02 Georgia,'Times New Roman',serif;font-style:normal;letter-spacing:1px;text-transform:uppercase;color:#f8dfaa;white-space:nowrap}
.rp13-card-stats{width:90%;display:flex;align-items:center;justify-content:center;box-sizing:border-box;padding:8px 0;font:400 min(5.2cqw,3.2cqh)/1.12 Georgia,'Times New Roman',serif;font-style:normal;letter-spacing:2px;color:#f8dfaa;background:var(--rp13-ornaments,none) center/100% 100% no-repeat}
.rp13-intro-prose{position:static;display:flex;align-items:center;justify-content:center;width:90%;height:100%;min-height:0;box-sizing:border-box;padding:5px 0;margin:0;font:400 clamp(17px,4.5cqw,18px)/1.25 Georgia,'Times New Roman',serif;text-align:center;color:#f7ead1;text-shadow:0 1px 3px #031222;pointer-events:none;overflow:visible}

.rp13-card-stats{flex-direction:column;padding:0;justify-content:space-around;gap:0;background:none}
.rp13-stat-ornament{width:100%!important;height:min(4cqw,2.8cqh)!important;object-fit:fill!important;opacity:1;filter:brightness(1.3)}

/* Intro cards omit source score labels/wells below y249/348 while retaining
   the central title pendant down to y271. Only the painted layer is clipped;
   the accepted header, card, world and footer coordinates remain unchanged. */
.rp13-cast-opening .rp13-top{clip-path:polygon(0 0,100% 0,100% 71.5%,53% 71.5%,51% 78%,49% 78%,47% 71.5%,0 71.5%)}

.rp13-panel .rp13-paused-resume{width:100%;min-height:48px;padding:0;border:0;background:none;font:inherit;letter-spacing:inherit;color:inherit;touch-action:manipulation}
