/* ============================================================
   JÁTÉKMÓD VÁLASZTÓ — izolált prémium Battle Nexus réteg
   ============================================================ */

body.gamemode-page {
    --gmp-gold: 231,189,89;
    background:
        radial-gradient(ellipse at 50% 12%,rgba(40,111,149,.14),transparent 37%),
        radial-gradient(ellipse at 16% 50%,rgba(139,49,55,.08),transparent 32%),
        radial-gradient(ellipse at 84% 57%,rgba(112,76,177,.09),transparent 34%),
        linear-gradient(145deg,#050a12,#02050a 50%,#08121c);
    background-size:auto;
    animation:none;
}
body.gamemode-page::before { position:fixed;z-index:0;inset:0;content:"";pointer-events:none;background-image:linear-gradient(rgba(112,184,215,.016) 1px,transparent 1px),linear-gradient(90deg,rgba(112,184,215,.016) 1px,transparent 1px);background-size:62px 62px;mask-image:linear-gradient(#000,transparent 83%); }

.gamemode-bg-avatars { opacity:.68;filter:saturate(.7); }
.gamemode-bg-avatar { border:1px solid rgba(105,191,223,.13);box-shadow:0 0 0 5px rgba(3,8,14,.5),0 0 24px rgba(76,212,255,.06);filter:grayscale(58%) sepia(8%) hue-rotate(150deg) blur(.8px); }

.gamemode-scene { justify-content:flex-start;gap:0;min-height:100vh;padding:112px 30px 68px; }
.gamemode-premium-content { display:flex;flex-direction:column;align-items:center;width:min(1540px,100%);min-width:0; }
.gamemode-premium-content>.gamemode-premium-header,
.gamemode-premium-content>.gamemode-mode-section { width:100%; }

/* ---- Battle Nexus fejléc ---- */

.gamemode-premium-header { position:relative;isolation:isolate;width:min(1600px,100%);min-height:162px;padding:25px 40px 24px;box-sizing:border-box;overflow:hidden;border:1px solid rgba(var(--gmp-gold),.2);border-radius:3px;background:linear-gradient(108deg,rgba(12,21,33,.94),rgba(4,9,16,.94) 56%,rgba(14,17,28,.95));box-shadow:0 23px 58px rgba(0,0,0,.38),inset 0 1px rgba(255,255,255,.03);text-align:center; }
.gamemode-premium-header::before { position:absolute;top:0;left:50%;width:430px;height:2px;content:"";background:linear-gradient(90deg,transparent,rgba(91,215,240,.78),rgba(var(--gmp-gold),.88),transparent);box-shadow:0 0 17px rgba(91,215,240,.3);transform:translateX(-50%); }
.gamemode-premium-header::after { position:absolute;z-index:-1;top:-270px;left:50%;width:620px;height:620px;border:1px solid rgba(95,209,234,.06);border-radius:50%;content:"";box-shadow:0 0 0 54px rgba(95,209,234,.012),0 0 0 55px rgba(95,209,234,.035),0 0 0 112px rgba(231,189,89,.01),0 0 0 113px rgba(231,189,89,.025);transform:translateX(-50%); }
.gamemode-premium-eyebrow { display:flex;align-items:center;justify-content:center;gap:11px;color:rgba(101,215,239,.62);font-size:.51rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase; }
.gamemode-premium-eyebrow i { width:34px;height:1px;background:linear-gradient(90deg,transparent,currentColor);box-shadow:0 0 7px currentColor; }
.gamemode-premium-eyebrow i:last-child { transform:scaleX(-1); }
.gamemode-premium-header h1 { margin:7px 0 3px;color:#fff3de;font-family:"AOW",serif;font-size:clamp(2rem,3.4vw,3.25rem);font-weight:400;letter-spacing:.065em;line-height:1;text-shadow:0 5px 26px rgba(0,0,0,.55); }
.gamemode-premium-header>p { max-width:740px;margin:0 auto;color:rgba(174,195,209,.62);font-size:.68rem;line-height:1.45; }
.gamemode-premium-status { display:flex;align-items:center;justify-content:center;gap:22px;margin-top:16px;color:rgba(168,188,201,.48);font-size:.47rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase; }
.gamemode-premium-status span { display:flex;align-items:center;gap:7px; }
.gamemode-premium-status b { width:6px;height:6px;border-radius:50%;background:#6ce0a7;box-shadow:0 0 9px rgba(108,224,167,.72);animation:gmpOnlinePulse 2.2s ease-in-out infinite; }

.gamemode-tagline { display:flex;align-items:center;justify-content:center;gap:12px;width:min(1600px,100%);margin:16px 0 12px;color:rgba(var(--gmp-gold),.62);font-family:"Montserrat",sans-serif;font-size:.53rem;font-weight:700;letter-spacing:.2em;text-shadow:none; }
.gamemode-tagline i { flex:1;height:1px;background:linear-gradient(90deg,transparent,rgba(var(--gmp-gold),.15)); }
.gamemode-tagline i:last-child { transform:scaleX(-1); }
.gamemode-mode-section { display:flex;flex-direction:column;align-items:center; }
.gamemode-mode-section--story,.gamemode-mode-section--simulations { margin-top:18px; }
.gamemode-mode-section .gamemode-tagline { width:100%; }
.gamemode-grid.gamemode-grid--protocols { width:min(100%,970px);grid-template-columns:repeat(3,minmax(0,1fr)); }
.gamemode-grid.gamemode-grid--story { width:min(100%,650px);grid-template-columns:repeat(2,minmax(0,1fr)); }
.gamemode-grid.gamemode-grid--simulations { width:min(100%,650px);grid-template-columns:repeat(2,minmax(0,1fr)); }
.gamemode-tagline--story { color:rgba(178,126,255,.72); }
.gamemode-tagline--story i { background:linear-gradient(90deg,transparent,rgba(178,126,255,.2)); }
.gamemode-tagline--simulations { color:rgba(227,98,89,.68); }
.gamemode-tagline--simulations i { background:linear-gradient(90deg,transparent,rgba(227,98,89,.18)); }

/* ---- Harci protokoll-kártyák ---- */

.gamemode-grid { width:min(1600px,100%);grid-template-columns:repeat(5,minmax(0,1fr));align-items:stretch;gap:14px; }
.gamemode-card { --card-accent:#d65b54;--gmp-accent-rgb:214,91,84;position:relative;isolation:isolate;display:flex;min-height:430px;padding:12px 12px 16px;box-sizing:border-box;overflow:hidden;border:1px solid rgba(var(--gmp-accent-rgb),.2);border-radius:3px;background:linear-gradient(155deg,rgba(12,20,31,.95),rgba(3,7,13,.98));box-shadow:0 17px 37px rgba(0,0,0,.32),inset 0 1px rgba(255,255,255,.025);transition:transform 430ms var(--ease-premium),border-color var(--t-mid),box-shadow 430ms var(--ease-premium); }
.gamemode-card::before { position:absolute;z-index:5;top:-1px;left:-1px;width:35px;height:35px;border-top:1px solid rgba(var(--gmp-accent-rgb),.78);border-left:1px solid rgba(var(--gmp-accent-rgb),.78);content:"";pointer-events:none; }
.gamemode-card::after { position:absolute;z-index:-1;right:-75px;bottom:-105px;width:210px;height:210px;border:1px solid rgba(var(--gmp-accent-rgb),.06);border-radius:50%;content:"";box-shadow:0 0 0 28px rgba(var(--gmp-accent-rgb),.012),0 0 0 29px rgba(var(--gmp-accent-rgb),.035);pointer-events:none; }
.gamemode-card:hover,.gamemode-card:focus-visible { border-color:rgba(var(--gmp-accent-rgb),.62);outline:0;transform:translateY(-7px);box-shadow:0 25px 48px rgba(0,0,0,.43),0 0 28px rgba(var(--gmp-accent-rgb),.1); }
.gamemode-card--battle { --card-accent:#e36259;--gmp-accent-rgb:227,98,89; }
.gamemode-card--missions { --card-accent:#65d88b;--gmp-accent-rgb:101,216,139; }
.gamemode-card--ranked { --card-accent:#e7bd59;--gmp-accent-rgb:231,189,89; }
.gamemode-card--onboarding { --card-accent:#78b9ff;--gmp-accent-rgb:120,185,255; }
.gamemode-card--ranked-tutorial { --card-accent:#9b8cff;--gmp-accent-rgb:155,140,255; }
.gamemode-card--story { --card-accent:#b27eff;--gmp-accent-rgb:178,126,255; }
.gamemode-card--goody { --card-accent:#78df7f;--gmp-accent-rgb:120,223,127;appearance:none;font:inherit;cursor:pointer; }
.gamemode-card--goody .gamemode-card-icon-wrap { overflow:visible;background:radial-gradient(circle at 50% 52%,rgba(88,206,99,.2),transparent 55%),#07110a; }
.gamemode-card--goody .gamemode-card-icon { position:relative;z-index:2; }
.goody-airship-smoke { position:absolute;z-index:1;left:8%;top:47%;width:32%;height:30%;pointer-events:none;opacity:0;transition:opacity .25s; }
.goody-airship-smoke i { position:absolute;width:32px;height:32px;border-radius:50%;background:radial-gradient(circle,rgba(225,239,211,.7),rgba(150,180,146,.28) 48%,transparent 72%);filter:blur(2px);animation:goodyCardSmoke 1.9s ease-out infinite; }
.goody-airship-smoke i:nth-child(2) { left:22px;top:14px;animation-delay:.42s; }
.goody-airship-smoke i:nth-child(3) { left:4px;top:30px;animation-delay:.84s; }
.gamemode-card--goody:hover .goody-airship-smoke,.gamemode-card--goody:focus-visible .goody-airship-smoke { opacity:1; }
@keyframes goodyCardSmoke { 0%{opacity:0;transform:translate(22px,5px) scale(.45)}35%{opacity:.72}100%{opacity:0;transform:translate(-35px,-20px) scale(1.7)} }

.goody-gate { position:fixed;z-index:1000;inset:0;display:grid;place-items:center;box-sizing:border-box;padding:clamp(12px,3vh,24px);--gate-gold:231,189,89;--gate-green:101,216,139; }
.goody-gate[hidden] { display:none; }
.goody-gate-backdrop { position:absolute;inset:0;background:radial-gradient(circle at 50% 45%,rgba(var(--gate-green),.08),transparent 34%),rgba(1,5,7,.82);backdrop-filter:blur(9px);animation:goodyGateBackdrop .3s ease both; }
.goody-gate-card { position:relative;isolation:isolate;box-sizing:border-box;width:min(680px,100%);max-height:calc(100vh - 48px);max-height:calc(100dvh - 48px);padding:clamp(24px,3vw,36px);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;border:1px solid rgba(var(--gate-gold),.5);border-radius:3px;background:linear-gradient(112deg,rgba(12,25,23,.99),rgba(4,10,12,.995) 65%,rgba(20,18,10,.99));box-shadow:0 40px 110px rgba(0,0,0,.78),0 0 45px rgba(var(--gate-green),.08),inset 0 1px rgba(255,255,255,.045);color:#eaf2e5;text-align:left;animation:goodyGateIn .46s cubic-bezier(.2,.82,.2,1) both;clip-path:polygon(0 0,calc(100% - 22px) 0,100% 22px,100% 100%,22px 100%,0 calc(100% - 22px)); }
.goody-gate-card::before { position:absolute;top:0;left:8%;width:43%;height:2px;content:"";background:linear-gradient(90deg,transparent,rgba(91,215,240,.75),rgba(var(--gate-gold),.94),transparent);box-shadow:0 0 18px rgba(91,215,240,.32); }
.goody-gate-card::after { position:absolute;z-index:-1;right:-170px;bottom:-230px;width:480px;height:480px;border:1px solid rgba(var(--gate-gold),.07);border-radius:50%;content:"";box-shadow:0 0 0 48px rgba(var(--gate-gold),.012),0 0 0 49px rgba(var(--gate-green),.035),0 0 0 105px rgba(var(--gate-gold),.012),0 0 0 106px rgba(var(--gate-gold),.026);animation:goodyGateOrbit 25s linear infinite; }
.goody-gate-card>img { position:absolute;right:clamp(24px,3vw,36px);top:clamp(24px,3vw,36px);width:110px;height:110px;object-fit:contain;filter:drop-shadow(0 13px 15px rgba(0,0,0,.48)) drop-shadow(0 0 18px rgba(var(--gate-green),.3));animation:goodyGateTicket 4s ease-in-out infinite; }
.goody-gate-card small { display:flex;align-items:center;gap:10px;color:#78da91;font-size:.78rem;font-weight:900;letter-spacing:.2em;text-transform:uppercase; }
.goody-gate-card small::before { width:28px;height:1px;background:currentColor;content:"";box-shadow:0 0 8px currentColor; }
.goody-gate-card h2 { max-width:calc(100% - 126px);margin:10px 0 13px;color:#fff1d5;font:400 clamp(1.7rem,2.4vw,2.35rem)/1.12 "AOW",serif;letter-spacing:.035em;text-shadow:0 5px 25px rgba(0,0,0,.75); }
.goody-gate-card>p { max-width:calc(100% - 126px);margin:0;color:rgba(205,218,210,.72);font-size:1rem;line-height:1.65; }
.goody-gate-list { display:grid;gap:9px;margin:24px 0 22px; }
.goody-gate-requirement { position:relative;display:flex;align-items:center;justify-content:space-between;gap:18px;box-sizing:border-box;min-height:58px;padding:12px 16px 12px 48px;border:1px solid rgba(var(--gate-gold),.14);border-radius:1px;background:linear-gradient(110deg,rgba(255,255,255,.045),rgba(255,255,255,.012));color:#dce5dc;font-size:.96rem;clip-path:polygon(0 0,calc(100% - 9px) 0,100% 9px,100% 100%,9px 100%,0 calc(100% - 9px)); }
.goody-gate-requirement::before { position:absolute;left:18px;display:grid;width:21px;height:21px;place-items:center;border:1px solid rgba(var(--gate-gold),.5);color:#dfc167;content:"◆";font-size:.55rem;transform:rotate(45deg); }
.goody-gate-requirement.is-met { border-color:rgba(var(--gate-green),.22);background:linear-gradient(110deg,rgba(var(--gate-green),.075),rgba(255,255,255,.012)); }
.goody-gate-requirement.is-met::before { border-color:rgba(var(--gate-green),.65);color:#8ce5a3;box-shadow:0 0 13px rgba(var(--gate-green),.2); }
.goody-gate-requirement b { color:#e8cc72;font-size:.92rem;white-space:nowrap; }
.goody-gate-requirement.is-met b { color:#8be3a1;text-shadow:0 0 11px rgba(var(--gate-green),.18); }
.goody-gate-actions { display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px; }
.goody-gate-actions button { min-width:135px;min-height:50px;padding:12px 18px;border:1px solid rgba(var(--gate-gold),.48);border-radius:1px;background:#111d18;color:#f1e6c7;font-size:.86rem;font-weight:800;letter-spacing:.06em;cursor:pointer;transition:.28s cubic-bezier(.2,.82,.2,1);clip-path:polygon(0 0,calc(100% - 8px) 0,100% 8px,100% 100%,8px 100%,0 calc(100% - 8px)); }
.goody-gate-actions button:hover:not(:disabled) { border-color:rgba(248,218,139,.9);transform:translateY(-3px);box-shadow:0 13px 25px rgba(0,0,0,.35),0 0 18px rgba(var(--gate-gold),.12); }
.goody-gate-actions .goody-gate-primary { min-width:205px;background:linear-gradient(115deg,#6c521c,#b58f38 55%,#654b15);box-shadow:inset 0 1px rgba(255,255,255,.14); }
.goody-gate-actions button:disabled { cursor:not-allowed;opacity:.45;filter:grayscale(1); }
.goody-gate-error:empty { display:none; }
.goody-gate-error { min-height:1.4em;margin:14px 0 0!important;color:#ef9c91!important;font-size:.84rem!important; }
@keyframes goodyGateBackdrop { from{opacity:0}to{opacity:1} }
@keyframes goodyGateIn { from{opacity:0;transform:translateY(34px) scale(.94)}to{opacity:1;transform:none} }
@keyframes goodyGateTicket { 0%,100%{transform:translateY(2px) rotate(1deg)}50%{transform:translateY(-8px) rotate(-2deg)} }
@keyframes goodyGateOrbit { to{transform:rotate(360deg)} }

.gamemode-card-topline { display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;min-height:26px;margin-bottom:9px;color:rgba(var(--gmp-accent-rgb),.58);font-size:.45rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase; }
.gamemode-card-topline b { padding:4px 6px;border:1px solid rgba(var(--gmp-accent-rgb),.24);border-radius:1px;background:rgba(var(--gmp-accent-rgb),.055);color:rgba(var(--gmp-accent-rgb),.76);font-size:.42rem;font-weight:700;letter-spacing:.09em; }
.gamemode-card-icon-wrap { position:relative;width:100%;max-width:none;aspect-ratio:1;height:auto;border:1px solid rgba(var(--gmp-accent-rgb),.25);border-radius:2px;background:radial-gradient(circle at 50% 45%,rgba(var(--gmp-accent-rgb),.13),transparent 58%),#03070d;box-shadow:0 13px 28px rgba(0,0,0,.38),inset 0 0 28px rgba(var(--gmp-accent-rgb),.035); }
.gamemode-card-icon-wrap::before { z-index:0; }
.gamemode-card-icon-wrap::after { border-radius:1px; }
.gamemode-card:hover .gamemode-card-icon-wrap,.gamemode-card:focus-visible .gamemode-card-icon-wrap { border-color:rgba(var(--gmp-accent-rgb),.55);box-shadow:0 17px 35px rgba(0,0,0,.48),0 0 25px rgba(var(--gmp-accent-rgb),.13),inset 0 0 30px rgba(var(--gmp-accent-rgb),.05); }
.gamemode-card-icon { filter:saturate(.93) contrast(1.03) drop-shadow(0 5px 13px rgba(0,0,0,.35));transition:transform 700ms var(--ease-premium),filter var(--t-mid); }
.gamemode-card:hover .gamemode-card-icon,.gamemode-card:focus-visible .gamemode-card-icon { transform:scale(1.045);filter:saturate(1.07) contrast(1.04) drop-shadow(0 7px 17px rgba(0,0,0,.4)); }
.gamemode-card-title { align-self:flex-start;margin:15px 4px 0;color:#f7eee0;font-size:1.23rem;letter-spacing:.045em;text-align:left;text-shadow:0 2px 15px rgba(0,0,0,.8); }
.gamemode-card-desc { align-self:flex-start;max-width:none;min-height:3.8em;margin:5px 4px 12px;color:rgba(166,188,202,.58);font-size:.65rem;line-height:1.42;text-align:left; }
.gamemode-card-action { display:flex;align-items:center;justify-content:space-between;width:calc(100% - 8px);margin:auto 4px 0;padding-top:10px;border-top:1px solid rgba(var(--gmp-accent-rgb),.12);color:rgba(var(--gmp-accent-rgb),.72);font-size:.49rem;font-weight:700;letter-spacing:.1em;text-align:left;text-transform:uppercase; }
.gamemode-card-action i { font-family:serif;font-size:1rem;font-style:normal;line-height:.6;transition:transform var(--t-mid); }
.gamemode-card:hover .gamemode-card-action i,.gamemode-card:focus-visible .gamemode-card-action i { transform:translateX(4px); }

/* Meglévő speciális módok az új keretben */
.gamemode-card--ranked .gamemode-card-icon-wrap { border-width:1px;border-color:rgba(var(--gmp-accent-rgb),.45);border-radius:2px; }
.gamemode-card--missions .gamemode-card-icon-wrap { border-width:1px;border-color:rgba(var(--gmp-accent-rgb),.4);border-radius:2px; }
.gamemode-card--onboarding .gamemode-card-icon-wrap { border-color:rgba(var(--gmp-accent-rgb),.4); }
.gamemode-card-lock-overlay { gap:8px;padding:18px;background:radial-gradient(circle,rgba(25,18,38,.66),rgba(2,5,9,.93));backdrop-filter:blur(5px); }
.gamemode-card-lock-icon { width:43px;height:43px;padding:9px;border:1px solid rgba(var(--gmp-accent-rgb),.32);border-radius:50%;background:rgba(3,7,13,.58);box-sizing:content-box;filter:drop-shadow(0 0 10px rgba(var(--gmp-accent-rgb),.25)); }
.gamemode-card-lock-title { color:#f1cf70;font-size:.76rem;letter-spacing:.13em; }
.gamemode-card-lock-text { max-width:180px;color:rgba(190,199,207,.64);font-size:.62rem; }
.gamemode-card--ranked.is-locked { opacity:.78; }
.gamemode-card--ranked.is-locked:hover,.gamemode-card--ranked.is-locked:focus-visible { border-color:rgba(var(--gmp-accent-rgb),.2);transform:none;box-shadow:0 17px 37px rgba(0,0,0,.32); }
.gamemode-card--ranked.is-locked .gamemode-card-action { color:rgba(181,187,192,.35); }

@keyframes gmpOnlinePulse { 0%,100%{opacity:.48} 50%{opacity:1} }

@media (max-width:1500px),(max-height:900px) {
    .gamemode-scene { padding:76px 20px 48px; }
    .gamemode-premium-header { min-height:132px;padding:18px 30px; }
    .gamemode-premium-header h1 { font-size:2.25rem; }
    .gamemode-premium-status { margin-top:11px; }
    .gamemode-tagline { margin-block:11px 9px; }
    .gamemode-grid { width:min(1370px,100%);gap:10px; }
    .gamemode-card { min-height:350px;padding:9px 9px 12px; }
    .gamemode-card-topline { margin-bottom:6px; }
    .gamemode-card-title { margin-top:10px;font-size:1rem; }
    .gamemode-card-desc { margin-top:3px;margin-bottom:8px;font-size:.57rem; }
    .gamemode-card-action { padding-top:7px;font-size:.43rem; }
}
@media (max-width:1150px) {
    .gamemode-scene { padding-top:82px; }
    .gamemode-grid { width:min(930px,100%);grid-template-columns:repeat(3,minmax(0,1fr));gap:13px; }
    .gamemode-card { min-height:390px; }
}
@media (max-width:820px) {
    .gamemode-scene { padding:74px 14px 42px; }
    .gamemode-premium-header { padding-inline:20px; }
    .gamemode-premium-header>p { max-width:520px; }
    .gamemode-grid.gamemode-grid--protocols { width:min(620px,100%);grid-template-columns:repeat(2,minmax(0,1fr)); }
    .gamemode-grid.gamemode-grid--simulations { width:min(620px,100%);grid-template-columns:repeat(2,minmax(0,1fr)); }
}
/* Compact spacing also applies to wide laptop windows with little vertical room. */
@media (max-height:700px) {
    .goody-gate-card { padding:22px 26px; }
    .goody-gate-card>img { top:22px;right:26px;width:92px;height:92px; }
    .goody-gate-card h2 { font-size:1.8rem; }
    .goody-gate-card>p { font-size:.9rem;line-height:1.5; }
    .goody-gate-list { gap:7px;margin:18px 0; }
    .goody-gate-requirement { min-height:48px;padding-block:10px; }
    .goody-gate-actions button { min-height:44px;padding-block:10px; }
}
@media (max-width:760px) {
    .goody-gate { padding:12px; }
    .goody-gate-card { width:min(680px,100%);max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px);padding:29px 22px 24px; }
    .goody-gate-card h2,.goody-gate-card>p { max-width:100%; }
    .goody-gate-card>img { position:relative;float:right;right:auto;top:auto;width:92px;height:92px;margin:-8px 0 6px 15px; }
    .goody-gate-card small { font-size:.62rem; }
    .goody-gate-card h2 { font-size:clamp(1.65rem,6vw,2.15rem); }
    .goody-gate-card>p { font-size:.86rem; }
    .goody-gate-list { clear:both;gap:8px;margin:22px 0; }
    .goody-gate-requirement { min-height:54px;padding:12px 12px 12px 42px;font-size:.8rem; }
    .goody-gate-requirement::before { left:14px;width:18px;height:18px; }
    .goody-gate-requirement b { font-size:.76rem; }
    .goody-gate-actions button { min-width:112px;min-height:45px;padding:10px 12px;font-size:.76rem; }
    .goody-gate-actions .goody-gate-primary { min-width:170px; }
}
@media (max-width:560px) {
    .gamemode-scene { padding:62px 10px 32px; }
    .gamemode-premium-header { min-height:150px;padding:20px 16px; }
    .gamemode-premium-eyebrow i { width:18px; }
    .gamemode-premium-header h1 { font-size:1.75rem; }
    .gamemode-premium-status span:last-child { display:none; }
    .gamemode-tagline { margin-block:10px 8px; }
    .gamemode-grid.gamemode-grid--protocols,.gamemode-grid.gamemode-grid--story,.gamemode-grid.gamemode-grid--simulations { width:100%;grid-template-columns:1fr;gap:9px; }
    .gamemode-card { display:grid;grid-template-columns:92px minmax(0,1fr);grid-template-rows:auto auto auto;column-gap:11px;min-height:126px;padding:9px;text-align:left; }
    .gamemode-card-topline { grid-column:1/-1;margin-bottom:5px; }
    .gamemode-card-icon-wrap { grid-column:1;grid-row:2/5;width:92px; }
    .gamemode-card-title { grid-column:2;align-self:end;margin:0 2px;font-size:1rem; }
    .gamemode-card-desc { grid-column:2;min-height:0;margin:3px 2px 5px;font-size:.59rem; }
    .gamemode-card-action { grid-column:2;width:calc(100% - 4px);margin:0 2px;padding-top:6px; }
    .gamemode-card-lock-overlay { padding:5px;gap:2px; }
    .gamemode-card-lock-icon { width:22px;height:22px;padding:4px; }
    .gamemode-card-lock-title { font-size:.5rem; }
    .goody-gate { padding:12px; }
    .goody-gate-card { width:100%;padding:27px 20px 22px; }
    .goody-gate-card>img { position:relative;float:right;right:auto;top:auto;width:84px;height:84px;margin:-6px 0 5px 14px; }
    .goody-gate-card small { font-size:.58rem; }
    .goody-gate-card h2 { font-size:1.7rem; }
    .goody-gate-card>p { font-size:.82rem; }
    .goody-gate-list { clear:both;gap:7px;margin:20px 0; }
    .goody-gate-requirement { min-height:52px;padding:11px 11px 11px 39px;font-size:.75rem; }
    .goody-gate-requirement::before { left:13px;width:17px;height:17px; }
    .goody-gate-requirement b { font-size:.72rem; }
    .goody-gate-actions button { min-width:105px;min-height:44px;padding:10px;font-size:.74rem; }
    .goody-gate-actions .goody-gate-primary { min-width:160px; }
}
@media (max-width:380px) {
    .goody-gate-requirement { flex-wrap:wrap;gap:4px 10px; }
    .goody-gate-requirement b { margin-left:auto; }
    .goody-gate-actions button,.goody-gate-actions .goody-gate-primary { flex:1 1 100%;min-width:0; }
}
@media (prefers-reduced-motion:reduce) {
    .gamemode-premium-status b,.gamemode-card--ranked .gamemode-card-icon-wrap::before,.gamemode-card--ranked .gamemode-card-icon-wrap::after,.gamemode-card--missions .gamemode-card-icon-wrap::before,.gamemode-card--missions .gamemode-card-icon-wrap::after { animation:none; }
    .gamemode-card,.gamemode-card-icon { transition:none; }
    .goody-airship-smoke i { animation:none; }
    .goody-gate-backdrop,.goody-gate-card,.goody-gate-card::after,.goody-gate-card>img { animation:none; }
}
