.battle-move-control{grid-template-columns:minmax(0,1fr) 36px;min-width:0;display:grid;position:relative}:is(.bl-moves,.raid-moves) .battle-move-control>button.battle-move-choose{touch-action:pan-y;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;border-right:0;border-top-right-radius:0;border-bottom-right-radius:0;width:100%;min-width:0}:is(.bl-moves,.raid-moves) .battle-move-control>button.battle-move-info{color:#c7e7ef;cursor:pointer;background:#19383e;border-top-left-radius:0;border-bottom-left-radius:0;justify-content:center;align-items:center;width:36px;min-height:44px;padding:4px;display:flex}.battle-move-control>button.battle-move-choose[aria-disabled=true]{opacity:.5;cursor:not-allowed}.battle-move-control>button:focus-visible{outline-offset:2px;z-index:1;outline:3px solid #a5e3fa}.battle-move-control strong{overflow-wrap:anywhere;min-width:0}.move-details-hint{color:#c1d9d9;flex-wrap:wrap;align-items:center;gap:4px;margin:6px 0 0;font-size:12px;line-height:1.4;display:flex}.move-details-sr{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.battle-move-popover[data-slot=popover-content]{overscroll-behavior:contain;color:#eef7f6;z-index:100;background:#102a30;border:1px solid #698f95;border-radius:14px;gap:12px;width:min(320px,100vw - 24px);max-height:calc(100dvh - 24px);padding:16px;font:14px/1.45 system-ui;overflow-y:auto;box-shadow:0 10px 36px #0008}.move-detail-heading{justify-content:space-between;align-items:start;gap:12px;display:flex}.move-detail-heading h2{color:#fff;overflow-wrap:anywhere;margin:3px 0 0;font-size:19px;line-height:1.3}.move-detail-type{color:#b2dfcf;font-size:12px;font-weight:700}.move-detail-close{color:#fff;cursor:pointer;background:#294850;border:1px solid #60818a;border-radius:8px;flex:none;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.move-detail-close:focus-visible{outline-offset:2px;outline:3px solid #a5e3fa}.move-detail-stats{grid-template-columns:1fr 1fr;gap:10px;margin:0;display:grid}.move-detail-stats>div{background:#1e3c42;border-radius:8px;padding:7px 11px}.move-detail-stats dt{color:#c0d8dc;font-size:12px}.move-detail-stats dd{margin:0;font-size:18px;font-weight:750}.move-detail-target{justify-content:space-between;align-items:start;gap:12px;display:flex}.move-detail-target strong{color:#c0d8dc;font-size:12px}.move-detail-target span{text-align:right;font-weight:650}.move-detail-effect,.move-detail-note,.move-detail-unavailable{margin:0}.move-detail-note{color:#bed1d4;font-size:12px}.move-detail-unavailable{color:#ffe0a8;font-size:12px}@media (prefers-reduced-motion:reduce){.battle-move-popover[data-slot=popover-content]{transition:none!important;animation:none!important}}:where(html[data-motion=reduced]) .battle-move-popover[data-slot=popover-content]{transition:none!important;animation:none!important}.battle-audio-controls{flex-shrink:0;align-items:center;gap:5px;display:inline-flex}.battle-audio-controls button{color:#e3f2e6;min-height:34px;font:inherit;white-space:nowrap;background:#183a3b;border:1px solid #74968a;border-radius:7px;justify-content:center;align-items:center;gap:6px;margin:0;padding:5px 8px;font-size:11px;display:inline-flex}.battle-audio-controls .battle-audio-settings{width:34px;padding:5px}:is(.battle-audio-controls button:focus-visible,.battle-audio-popover input:focus-visible,.battle-audio-popover button:focus-visible){outline-offset:3px;outline:3px solid #d7ef9d}.battle-audio-popover[data-slot=popover-content]{color:#eaf5ee;width:min(290px,100vw - 24px);max-height:min(340px,100dvh - 32px);font-family:var(--font-geist-sans),sans-serif;z-index:100;background:#163337;border:1px solid #799488;border-radius:12px;padding:16px;overflow:auto}.battle-audio-popover h2{margin:0 0 12px;font-size:16px;font-weight:700}.battle-audio-slider{align-items:center;gap:10px;margin:13px 0;font-size:12px;display:flex}.battle-audio-slider>span{width:44px}.battle-audio-slider input{accent-color:#c3e69b;flex:1;min-width:50px;height:22px}.battle-audio-slider output{text-align:right;width:32px;font-size:11px}.battle-audio-popover p{color:#b2c9c0;margin:13px 0 0;font-size:11px;line-height:1.5}.battle-audio-error{color:#ffd5a2;margin-top:12px;font-size:12px;line-height:1.5}.battle-audio-error button{color:#f3f4db;font:inherit;cursor:pointer;background:#2a4745;border:1px solid #9f9477;border-radius:6px;margin-top:7px;padding:6px 10px;display:block}.battle-lab .bl-round{flex-wrap:wrap;gap:8px}.battle-lab .bl-round>.battle-audio-controls{margin-left:auto}@media (max-width:640px){.battle-lab .battle-audio-toggle span{display:none}.battle-lab .battle-audio-controls .battle-audio-toggle{width:34px}.battle-lab .bl-round{gap:5px 6px}.battle-lab .bl-round>.battle-audio-controls{margin-left:0}}@media (prefers-reduced-motion:reduce){.battle-audio-popover{transition:none!important;animation:none!important}}:where(html[data-motion=reduced]) .battle-audio-popover{transition:none!important;animation:none!important}.vs-match-heading>div:last-child,.raid-tools{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.tc-screen>.battle-audio-controls{z-index:6;position:absolute;top:52px;right:8px}.tc-screen>.battle-audio-controls .battle-audio-toggle span{display:none}.tc-audio-match{flex-wrap:wrap;align-items:center;gap:8px;padding:6px 0;font-size:12px;display:flex}.tc-audio-match select{border-radius:6px;max-width:160px;padding:5px}.tc-audio-match span{opacity:.75}@media (min-width:900px){.student-content:has(.game-fit){animation:none}.defense-game.game-fit{z-index:100;border-radius:18px;grid-template-rows:44px 54px 34px minmax(0,1fr) 28px;grid-template-columns:minmax(0,1fr) 300px;gap:8px 14px;width:auto;max-width:none;height:calc(100dvh - 16px);margin:0;padding:12px 16px;display:grid;position:fixed;inset:8px;overflow:hidden}.ruin-session.game-fit{z-index:100;border-radius:18px;grid-template-rows:44px 52px 38px minmax(0,1fr) 28px;grid-template-columns:minmax(0,1fr) 300px;gap:7px 14px;width:auto;max-width:none;height:calc(100dvh - 16px);margin:0;padding:12px 16px;display:grid;position:fixed;inset:8px;overflow:hidden}.cafe-session.game-fit{z-index:100;border-radius:18px;grid-template-rows:44px 48px minmax(0,1fr) 28px;gap:8px;width:auto;max-width:none;height:calc(100dvh - 16px);margin:0;padding:12px 16px;display:grid;position:fixed;inset:8px;overflow:hidden}.adventure-mode.game-fit{z-index:100;background:#f5faf4;border-radius:18px;flex-direction:column;gap:8px;width:auto;max-width:none;height:calc(100dvh - 16px);margin:0;padding:12px 16px;display:flex;position:fixed;inset:8px;overflow:auto}.defense-game.game-fit button,.ruin-session.game-fit button,.cafe-session.game-fit button{min-height:38px}.game-fit .defense-top{grid-column:1/-1;align-items:center;margin:0}.game-fit .defense-top h2{font-size:17px}.game-fit .defense-hud{grid-column:1;margin:0}.game-fit .defense-hud>div{gap:2px;padding:5px 12px}.game-fit .defense-hud strong{font-size:22px;line-height:24px}.game-fit .defense-expand-control{grid-area:3/1;margin:0;padding:0}.game-fit .defense-stage-wrap{grid-area:4/1;place-self:start center;width:min(100%,178.571dvh - 446.429px);min-height:0;max-height:100%}.game-fit .defense-arena{aspect-ratio:1000/560}.game-fit .defense-team{grid-area:2/2/5;grid-template-columns:1fr;grid-auto-rows:minmax(46px,1fr);gap:5px;margin:0;padding:0 0 160px;display:grid}.game-fit .defense-team button{text-align:left;grid-template-columns:22px 38px 1fr;align-items:center;gap:3px 6px;min-height:0;padding:6px 10px;display:grid}.game-fit .defense-team img{grid-area:1/2/3;width:34px;height:34px}.game-fit .defense-shortcut{grid-area:1/1/3;position:static}.game-fit .defense-team button>span:not(.defense-shortcut){grid-area:1/3}.game-fit .defense-team progress{grid-area:2/3;width:100%;height:5px;margin:0}.game-fit .defense-team strong{font-size:13px}.game-fit .defense-team small{font-size:11px}.game-fit .defense-strategy{z-index:1;background:#173b3a;border:1px solid #79968a55;border-radius:12px;grid-area:4/2;grid-template-columns:1fr;align-self:end;gap:5px;margin:0;padding:8px;display:grid}.game-fit .defense-selected{padding:0}.game-fit .defense-selected b{font-size:13px}.game-fit .defense-selected p{margin:3px 0;font-size:11px;line-height:1.35}.game-fit .defense-selected>span{margin:3px 0;font-size:11px}.game-fit .defense-selected button{float:right;min-height:32px;padding:5px 8px;font-size:11px}.game-fit .defense-next-wave{background:#173b3a;border-radius:8px;align-items:center;gap:10px;height:auto;min-height:32px;padding:7px 10px;font-size:11px;line-height:1.3;display:flex;position:fixed;bottom:46px;left:24px;right:340px}.game-fit .defense-strategy>.defense-primary{min-height:36px;padding:7px;font-size:13px}.game-fit .defense-footer{grid-area:5/1/auto/-1;align-items:center;margin:0;padding:0}.game-fit .defense-footer button{min-height:28px;padding:3px 10px}.game-fit .defense-overlay{overflow:auto}.game-fit .defense-question{box-sizing:border-box;width:min(800px,100%);max-width:800px;max-height:100%;overflow:auto;padding:18px!important}.game-fit .ruin-session-header{grid-column:1/-1;margin:0;padding:0}.game-fit .ruin-session-header h1{margin-top:2px;font-size:16px}.game-fit .ruin-hud{grid-area:2/1}.game-fit .ruin-hud>div{gap:3px;padding:7px 12px}.game-fit .ruin-hud strong{font-size:19px}.game-fit .ruin-room-heading{grid-area:3/1;padding:0}.game-fit .ruin-play-layout{grid-area:4/1;justify-content:center;align-items:flex-start;min-height:0;display:flex;position:relative}.game-fit .ruin-room-wrap{flex-shrink:0;width:min(100%,122.222dvh - 366.667px);max-width:none}.game-fit .ruin-play-layout>aside{width:300px;max-height:140px;position:fixed;top:74px;bottom:auto;right:24px;overflow:auto}.game-fit .ruin-controls{flex-wrap:wrap;grid-area:3/2/5;justify-content:center;align-self:end;gap:8px;margin:0 0 170px;padding:6px;display:flex}.game-fit .ruin-dpad{grid-template-rows:repeat(2,38px);grid-template-columns:repeat(3,42px)}.game-fit .ruin-action-buttons{flex:1;gap:5px;min-width:130px;display:grid}.game-fit .ruin-team{grid-area:4/2;grid-template-columns:1fr;align-self:end;gap:4px;margin:0;display:grid}.game-fit .ruin-team button{min-height:45px;padding:5px 10px}.game-fit .ruin-team img{width:33px;height:33px}.game-fit .ruin-team strong{font-size:13px}.game-fit .ruin-team small{font-size:11px}.game-fit .ruin-game-footer{grid-area:5/1/auto/-1;margin:0;padding:0}.game-fit .ruin-game-footer button{min-height:28px;padding:3px 10px}.game-fit .ruin-objective{font-size:12px}.game-fit .ruin-room-wrap:has(.ruin-overlay){width:100%;height:100%;overflow:visible}.game-fit .ruin-overlay{align-items:start;overflow:auto}.game-fit .ruin-overlay>form{box-sizing:border-box;width:min(800px,100%);max-width:800px;max-height:100%;overflow:auto;padding:18px!important}.game-fit .cafe-session-header{margin:0;padding:0}.game-fit .cafe-hud{margin:0}.game-fit .cafe-hud>span{padding:6px}.game-fit .cafe-play-layout{grid-template-rows:130px minmax(0,1fr);grid-template-columns:minmax(170px,220px) minmax(300px,1fr) minmax(230px,280px);align-items:start;gap:12px 18px;width:100%;max-width:none;height:100%;min-height:0;margin:0 auto;display:grid}.game-fit .cafe-visitor{grid-area:1/1;height:130px}.game-fit .cafe-visitor>img{max-width:100px;height:85px;bottom:0}.game-fit .cafe-order-bubble{padding:5px 9px;top:7px;left:8px;right:8px}.game-fit .cafe-order-bubble p{font-size:11px}.game-fit .cafe-recipe-card{grid-area:2/1;align-self:start;max-height:100%;margin:0;padding:10px;overflow:auto}.game-fit .cafe-recipe-card h3{margin:4px 0;font-size:15px}.game-fit .cafe-goals{flex-wrap:wrap;gap:5px;margin-top:5px}.game-fit .cafe-goals>div{padding:5px;font-size:16px}.game-fit .cafe-goals img{width:27px;height:27px}.game-fit .cafe-helpers{grid-area:1/3/3;margin:0}.game-fit .cafe-helpers button{min-height:108px;margin:0 0 10px;padding:12px}.game-fit .cafe-helpers button strong{font-size:13px}.game-fit .cafe-helpers button small{font-size:11px}.game-fit .cafe-helpers button img{width:30px;height:30px}.game-fit .cafe-board-heading{width:100%;height:44px;min-height:44px;margin-bottom:8px}.game-fit .cafe-board-heading h2{font-size:17px}.game-fit .cafe-board-heading>span{padding:3px 10px}.game-fit .cafe-board-heading>span strong{font-size:24px}.game-fit .cafe-board-frame{border-radius:20px;flex-shrink:0;width:min(100%,100dvh - 302px);margin:auto;padding:8px}.game-fit .cafe-board{gap:4px}.game-fit .cafe-tile{border-radius:10px}.game-fit .cafe-serving-edge{display:none}.game-fit .cafe-board-update{max-width:440px;min-height:14px;margin:3px 0;font-size:11px}.game-fit .cafe-board-tools{flex-shrink:0;gap:7px;margin-top:3px}.game-fit .cafe-board-tools button{min-height:38px;padding:6px 10px;font-size:13px}.game-fit .cafe-save-status{margin:3px 0;font-size:11px;display:none}.game-fit .cafe-footer{border:0;grid-row:4;margin:0;padding:0}.game-fit .cafe-footer button{min-height:28px;padding:3px 10px}.game-fit .cafe-instructions{z-index:25;background:#fff9e8;border:2px solid #bb9a70;border-radius:12px;max-height:calc(100dvh - 140px);padding:24px;position:absolute;inset:64px 20px auto;overflow:auto}.game-fit .cafe-board-overlay{z-index:150;background:#102b2deb;border-radius:16px;place-items:center;width:auto;height:auto;padding:12px;display:grid;position:fixed;inset:78px 32px 48px;overflow:auto}.game-fit .cafe-board-overlay>div{box-sizing:border-box;color:#40382d;background:#fff9e9;border:1px solid #d9c59c;border-radius:16px;width:min(800px,100%);max-width:800px;max-height:100%;overflow:auto;box-shadow:0 12px 30px #001d2844;padding:18px!important}.game-fit .adventure-heading{min-height:48px;max-height:70px;margin:0}.game-fit .adventure-heading h1{margin:3px 0;font-size:21px}.game-fit .adventure-heading p{font-size:12px}.game-fit .adventure-trail{flex-direction:column;flex:1;min-height:0;display:flex}.game-fit .adventure-trail-title{min-height:42px;margin:0 0 6px;padding:8px 12px}.game-fit .adventure-stage{aspect-ratio:auto;flex:1;height:auto;min-height:0;max-height:calc(100dvh - 220px)}.game-fit .adventure-controls{min-height:56px;margin:0;padding:6px 12px}.game-fit .adventure-controls button{min-height:42px}.game-fit .adventure-tip{margin:4px 0;padding:0 10px;font-size:11px;line-height:1.4}.game-fit .adventure-challenge{flex:1;align-items:center;min-height:0;padding:12px;overflow:auto}.game-fit .adventure-question{width:100%;max-width:900px;padding:16px}.battle-lab.game-fit{flex-direction:column;height:100dvh;min-height:0;padding:12px 16px;display:flex;position:relative;overflow:hidden}.battle-lab.game-fit .bl-header{gap:16px;min-height:32px;margin:0 0 8px}.battle-lab.game-fit .bl-header h1{font-size:21px}.battle-lab.game-fit .bl-round{margin-bottom:8px}.battle-lab.game-fit .bl-arena.bl-framed-arena{flex:1;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 370px;height:auto;min-height:0;max-height:none}.battle-lab.game-fit .bl-hud{overflow:auto;margin:6px!important}.battle-lab.game-fit .bl-hud .bl-controls{gap:10px;padding:10px}.battle-lab.game-fit .bl-hud .bl-controls h2{margin-bottom:6px;font-size:15px}.battle-lab.game-fit .bl-moves{gap:6px}.battle-lab.game-fit .bl-moves button{min-height:58px;padding:7px;font-size:13px}.battle-lab.game-fit .bl-capture{margin-top:7px;font-size:13px;line-height:1.35}.battle-lab.game-fit .bl-switch-button{padding:9px;font-size:14px}.battle-lab.game-fit .bl-switch-button span{margin-top:2px;font-size:11px}.battle-lab.game-fit .bl-guide{z-index:30;color:#ecfff5;background:#193c3f;border:1px solid #7e9c91;border-radius:8px;max-width:calc(100% - 425px);margin:0;padding:6px 10px;font-size:11px;display:block;position:absolute;bottom:25px;left:30px}.xp-gift-dialog.game-fit{gap:12px;width:min(850px,100vw - 32px);max-width:850px;max-height:calc(100dvh - 32px);padding:20px;overflow:auto}.game-fit .xp-gift-team{grid-template-columns:1fr 1fr;gap:8px;display:grid}.game-fit .xp-gift-member{grid-template-columns:42px minmax(0,1fr) 38px 30px 38px;gap:5px;min-height:78px;padding:8px}.game-fit .xp-gift-member img{width:40px;height:48px}.game-fit .xp-gift-member strong{font-size:13px}.game-fit .xp-gift-member button{min-height:38px;padding:5px}.xp-gift-dialog.game-fit>.primary{min-height:44px;position:sticky;bottom:0}.game-fit .cafe-customer-column{display:contents}.game-fit .cafe-dish{transform-origin:100% 100%;transform:scale(.65)}.game-fit .cafe-recipe-card h2{margin:6px 0;font-size:17px}.game-fit .cafe-helpers h3{margin:0 0 10px}.game-fit .cafe-helpers em{font-size:12px;line-height:1.4}.game-fit .cafe-puzzle-column{flex-direction:column;grid-area:1/2/3;align-items:center;min-height:0;display:flex}.game-fit .cafe-board-heading strong{font-size:16px}.game-fit .cafe-board button.cafe-tile{aspect-ratio:1;min-height:0;padding:0}.game-fit .ruin-map-panel svg{width:100%;max-height:108px}.game-fit .ruin-room-tip{display:none}.game-fit .ruin-message{z-index:2;width:300px;max-height:34px;margin:0;font-size:11px;line-height:1.3;position:absolute;inset:214px 24px auto auto;overflow:auto}.game-fit .ruin-controls button{font-size:12px}.raid-student.game-fit{grid-template-rows:48px 30px 58px minmax(0,1fr) 30px;grid-template-columns:minmax(0,1fr) 420px;gap:7px 16px;max-width:none;height:calc(100dvh - 16px);margin:0;padding:12px 16px;display:grid;position:fixed;inset:8px;overflow:hidden}.game-fit .raid-top{grid-column:1/-1;margin:0}.game-fit .raid-top h2{font-size:22px}.game-fit .raid-top .raid-eyebrow{font-size:9px}.game-fit .raid-top h2 span{margin-left:8px;display:inline}.game-fit .raid-statusline{grid-area:2/1;margin:0;font-size:11px}.game-fit .raid-statusline button{min-height:28px;padding:4px 8px}.game-fit .raid-hud{grid-area:3/1;padding:0}.game-fit .raid-hud h3{font-size:16px}.game-fit .raid-clock{font-size:22px}.raid-student.game-fit .raid-arena{grid-area:4/1;height:100%;min-height:0;margin:0}.game-fit .raid-live-feed{grid-area:5/1;min-height:0;margin:0;font-size:11px}.game-fit .raid-player-console{flex-direction:column;grid-area:2/2/6;gap:8px;min-height:0;display:flex;overflow:auto}.game-fit .raid-player-card{flex-direction:row;gap:12px;min-height:60px;padding:6px 12px}.game-fit .raid-player-card img{width:48px;height:48px}.game-fit .raid-player-card div{grid-template-columns:1fr 1fr;gap:4px 8px}.game-fit .raid-player-card progress{grid-column:1/-1}.game-fit .raid-player-card small{grid-area:1/2}.game-fit .raid-moves{grid-template-columns:repeat(3,1fr);gap:5px}.game-fit .raid-moves button{gap:2px;min-height:45px;padding:5px;font-size:12px}.game-fit .raid-action-area>label{align-items:center;gap:8px;margin:6px 0;font-size:11px;display:flex}.game-fit .raid-action-area select{max-width:280px;min-height:34px;padding:5px}.game-fit .raid-question{margin-top:8px;padding:10px}.raid-student.game-fit .raid-question h3{margin-bottom:7px;font-size:15px;line-height:1.4}.game-fit .raid-answers{gap:5px}.game-fit .raid-answers button{min-height:38px;padding:7px;font-size:12px}.game-fit .raid-question p{margin-top:3px;font-size:11px}.game-fit .raid-warning{font-size:12px}.vs-match.game-fit{width:100%;max-width:none;margin:0}.game-fit .defense-overlay:has(.defense-question){z-index:150;background:#102b2deb;border-radius:16px;place-items:center;width:auto;height:auto;padding:12px;display:grid;position:fixed;inset:78px 32px 48px;overflow:auto}.game-fit .defense-overlay:has(.defense-checkpoint){z-index:150;background:#102b2deb;border-radius:16px;place-items:center;width:auto;height:auto;padding:12px;display:grid;position:fixed;inset:78px 32px 48px;overflow:auto}.game-fit .ruin-overlay:has(form){z-index:150;background:#102b2deb;border-radius:16px;place-items:center;width:auto;height:auto;padding:12px;display:grid;position:fixed;inset:78px 32px 48px;overflow:auto}.game-fit .defense-checkpoint{box-sizing:border-box;width:min(800px,100%);max-width:800px;max-height:100%;overflow:auto;padding:18px!important}.game-fit .defense-question h2,.game-fit .cafe-board-overlay h2{margin:4px 0 8px;font-size:22px}.game-fit .defense-question p,.game-fit .cafe-board-overlay p{margin:6px 0;font-size:14px}.game-fit .defense-question button,.game-fit .ruin-overlay form button,.game-fit .cafe-answers button{min-height:42px;padding:10px;font-size:14px}.game-fit .cafe-board-overlay h3,.game-fit .ruin-overlay h3{margin:8px 0;font-size:18px;line-height:1.4}.game-fit .cafe-answers{grid-template-columns:1fr 1fr;gap:8px}.game-fit .cafe-question-progress{margin:6px 0}.game-fit .adventure-question h2{margin:6px 0;font-size:23px}.game-fit .adventure-question h3{margin:8px 0;font-size:18px}.game-fit .adventure-question p{margin:8px 0;font-size:13px}.game-fit .adventure-answers{grid-template-columns:1fr 1fr;gap:8px}.game-fit .adventure-answers button{min-height:50px;padding:10px;font-size:14px}.game-fit .adventure-question-progress{margin:6px 0}.game-fit .adventure-loot{margin:6px 0;padding:6px}.game-fit .adventure-next-rewards{gap:3px;margin:8px 0;padding:10px;font-size:13px}.game-fit .adventure-risk-warning{padding:8px}.game-fit .adventure-checkpoint-actions{margin-top:10px}.game-fit .adventure-checkpoint-actions button{min-height:42px;padding:10px}.game-fit .defense-stage-wrap:has(.defense-overlay){z-index:155;isolation:auto;overflow:visible}.game-fit .ruin-play-layout:has(.ruin-overlay){z-index:155;isolation:auto}.game-fit .ruin-overlay:has(.ruin-refuge){z-index:150;background:#102b2deb;border-radius:16px;place-items:center;padding:12px;display:grid;position:fixed;inset:78px 32px 48px;overflow:auto}.game-fit .ruin-refuge{width:min(800px,100%);max-width:800px;max-height:100%;padding:16px;overflow:auto}.game-fit .ruin-refuge>svg{height:22px}.game-fit .ruin-refuge h2{margin:6px 0;font-size:22px}.game-fit .ruin-refuge p{margin:8px 0;font-size:13px}.game-fit .ruin-refuge label{margin:8px 0}.game-fit .ruin-refuge button{min-height:40px;padding:8px 14px;font-size:14px}.sky-game.game-fit:has(.sky-routes) .sky-arena{display:none}.sky-game.game-fit:has(.sky-routes) .sky-flight-note{display:none}.sky-game.game-fit:has(.sky-routes) .sky-dock{flex:1;min-height:0;padding:12px 20px;overflow:auto}.game-fit .sky-dock:has(.sky-routes)>h2{margin:6px 0;font-size:22px}.game-fit .sky-dock:has(.sky-routes)>p{margin:6px 0;font-size:13px}.game-fit .sky-dock:has(.sky-routes)>h3{margin:10px 0 6px;font-size:14px}.game-fit .sky-upgrades{gap:8px}.game-fit .sky-upgrades button{min-height:70px;padding:9px}.game-fit .sky-upgrades strong{font-size:12px}.game-fit .sky-upgrades small{font-size:10px;line-height:1.3}.game-fit .sky-routes{gap:10px;margin:0}.game-fit .sky-routes button{text-align:left;grid-template-columns:24px 1fr;gap:3px 7px;min-height:88px;padding:10px;display:grid}.game-fit .sky-routes b{grid-row:1/4;font-size:23px}.game-fit .sky-routes strong{font-size:14px}.game-fit .sky-routes small{font-size:11px}.game-fit .sky-routes em{grid-column:2;font-size:11px}.game-fit .sky-dock-actions{margin-top:8px}.game-fit .sky-dock-actions button{min-height:40px;padding:8px 15px}.sky-game.game-fit:has(.sky-routes) .sky-home{min-height:30px;margin:0 20px 8px;padding:5px 10px}.game-fit .ruin-echo-panel{grid-template-columns:1fr auto auto;align-items:center;gap:12px;width:auto;min-height:64px;padding:8px 12px;display:grid;position:fixed;bottom:53px;left:24px;right:340px}.game-fit .ruin-echo-instruction span{font-size:11px}.game-fit .ruin-echo-beats b{width:26px;height:30px}.game-fit .ruin-echo-panel button{min-height:38px;font-size:12px}.game-fit .defense-hud small{line-height:12px}.game-fit .defense-next-wave strong{font-size:11px}.game-fit .defense-next-wave p{margin:0 0 0 8px;font-size:11px;display:inline}.battle-lab.game-fit .bl-guide[open]{width:600px;max-height:calc(100dvh - 170px);padding:14px;overflow:auto}.game-fit .adventure-leave{margin:0;font-size:12px}.game-fit .adventure-pause{align-items:center;padding:8px}.game-fit .adventure-pause>div{max-width:600px;padding:12px 20px}.game-fit .adventure-pause svg{width:22px;height:22px}.game-fit .adventure-pause h2{margin:3px 0;font-size:20px}.game-fit .adventure-pause p{margin:6px 0;font-size:13px;line-height:1.4}.game-fit .adventure-pause button{min-height:40px;margin-top:7px;padding:8px 14px}.bl-team-dialog.game-fit[data-slot=dialog-content]{gap:10px;width:min(950px,100vw - 32px);max-width:950px;padding:18px}.bl-team-dialog.game-fit [data-slot=dialog-title]{font-size:22px}.bl-team-dialog.game-fit [data-slot=dialog-description]{font-size:13px;line-height:1.4}.bl-team-dialog.game-fit .bl-party-grid{gap:8px}.bl-team-dialog.game-fit .bl-party-card{text-align:left;grid-template-columns:64px 1fr;gap:3px 8px;min-height:152px;padding:10px;display:grid}.bl-team-dialog.game-fit .bl-party-card img{grid-area:1/1/6;align-self:center;width:64px;height:90px}.bl-team-dialog.game-fit .bl-party-card strong{grid-column:2;font-size:15px}.bl-team-dialog.game-fit .bl-party-card>span,.bl-team-dialog.game-fit .bl-party-card>small,.bl-team-dialog.game-fit .bl-party-card>[data-slot=progress]{grid-column:2}.bl-team-dialog.game-fit .bl-party-card .bl-party-state{padding:5px;font-size:12px}.bl-team-dialog.game-fit .bl-party-back{min-height:40px;padding:8px}.battle-lab.game-fit .bl-arena .bl-hud:has(.bl-question){z-index:40;background:#10292cf5;border:1px solid #58786e;border-radius:16px;place-items:center;display:grid;position:fixed;inset:122px 24px 20px;overflow:auto;margin:0!important}.battle-lab.game-fit .bl-question{width:min(820px,100%);padding:20px}.battle-lab.game-fit .bl-question h2{font-size:18px;line-height:1.5}.battle-lab.game-fit .bl-hud .bl-answers{grid-template-columns:1fr 1fr;gap:8px;margin:12px 0}.battle-lab.game-fit .bl-hud .bl-answers button{min-height:44px;padding:12px;font-size:14px}.battle-lab.game-fit .bl-question p{margin:8px 0;font-size:13px}.game-fit .defense-next-wave>div{flex-wrap:wrap;gap:6px;margin:0;display:flex}.game-fit .defense-next-wave>b{white-space:nowrap;font-size:11px}.game-fit .defense-next-wave small{flex:1;min-width:100px;font-size:10px}.raid-projector.game-fit{flex-direction:column;gap:6px;height:calc(100dvh - 16px);margin:0;padding:12px 16px;display:flex;position:fixed;inset:8px;overflow:hidden}.raid-projector.game-fit .raid-top,.raid-projector.game-fit .raid-statusline{margin:0}.raid-projector.game-fit .raid-hud{padding:0}.raid-projector.game-fit .raid-arena{flex:1;height:auto;min-height:0}.raid-projector.game-fit .raid-live-feed{min-height:24px;padding:3px}.raid-projector.game-fit .raid-controls:empty{display:none}body:has(.game-fit){overflow:hidden}.student-content:has(.game-fit){animation:none;transform:none}.battle-lab.game-fit{z-index:40;position:fixed;inset:0}.game-fit .raid-message,.game-fit .defense-error,.game-fit .ruin-error{z-index:170;position:absolute;inset:62px 20px auto}.battle-lab.game-fit .bl-arena:has(.bl-question){z-index:35}.ruin-session.game-fit .ruin-map-panel.open{display:block}}
