/* Phase One polish: shared presentation for every arcade game. */
.gmr-game{
  --dark:#120b1b;--purple:#8f3bc1;--medium:#b66ce2;--light:#3b294b;--pale:#171120;
  --gold:#e4b95c;--green:#58ba7d;--red:#e36a7b;--text:#f4f0f8;--white:#fff;
  width:min(1080px,100%);max-width:1080px;margin:0 auto;color:var(--text);
  font-family:inherit;font-size:17px;line-height:1.55;
}
.gmr-game .gmr-card{
  overflow:hidden;border:1px solid rgba(216,190,235,.24);border-radius:20px;
  background:linear-gradient(180deg,#15101e,#0d0a12);color:var(--text);
  box-shadow:0 22px 60px rgba(0,0,0,.36);
}
.gmr-game .gmr-header{
  padding:24px 24px 22px;color:#fff;
  background:
    radial-gradient(circle at 12% 18%,rgba(215,154,255,.23) 0 2px,transparent 3px),
    radial-gradient(circle at 88% 28%,rgba(255,229,158,.18) 0 2px,transparent 3px),
    linear-gradient(135deg,#2f1741,#151020 72%);
  border-bottom:1px solid rgba(225,204,240,.16);
}
.gmr-game .gmr-header h2{font-size:clamp(30px,4vw,46px);text-shadow:0 3px 18px rgba(0,0,0,.5)}
.gmr-game .gmr-header p{color:#d8cfe2}.gmr-game .gmr-header .gmr-eyebrow{color:#d89cff}
.gmr-game .gmr-content{padding:26px;background:linear-gradient(180deg,#15101d,#0f0c14);color:#eee8f4}
.gmr-game .gmr-screen>p,.gmr-game .gmr-story{color:#d7cfdf;font-size:1.02em}
.gmr-game .gmr-question{color:#fff}.gmr-game .gmr-purple,.gmr-game .gmr-category{color:#d79aff}
.gmr-game .gmr-primary,.gmr-game .gmr-secondary,.gmr-game .gmr-answer-btn,.gmr-game .gmr-choice,.gmr-game .gmr-link{
  min-height:48px;font-size:1rem;transition:transform .16s ease,filter .16s ease,border-color .16s ease;
}
.gmr-game .gmr-primary{color:#fff;background:linear-gradient(180deg,#a746dc,#7228a7);border:1px solid rgba(255,255,255,.15);box-shadow:0 9px 24px rgba(91,31,129,.32)}
.gmr-game .gmr-secondary{color:#f5effa;background:#251a30;border-color:#5b426d}
.gmr-game .gmr-link{color:#dca7ff}
.gmr-game .gmr-answer-btn,.gmr-game .gmr-choice{
  color:#f4eef8;background:linear-gradient(180deg,#21182a,#18111f);border-color:#4d385b;
  text-align:left;
}
.gmr-game .gmr-answer-btn:hover,.gmr-game .gmr-choice:hover{border-color:#a55ed0;background:#291c35}
.gmr-game .gmr-answer-btn.correct{color:#d8ffe6;background:#173323;border-color:#58ba7d}
.gmr-game .gmr-answer-btn.wrong{color:#ffe1e6;background:#3a1820;border-color:#e36a7b}
.gmr-game .gmr-stats>div,.gmr-game .gmr-result-grid>div{
  background:#1e1627;border-color:#463454;color:#fff;
}
.gmr-game .gmr-stats span,.gmr-game .gmr-result-grid span{color:#cda0e8;font-size:12px}
.gmr-game .gmr-stats strong,.gmr-game .gmr-result-grid strong{color:#fff;font-size:21px}
.gmr-game .gmr-progress{background:#30223b}.gmr-game .gmr-progress span{background:linear-gradient(90deg,#9b45cc,#efc75f)}
.gmr-game .gmr-feedback,.gmr-game .gmr-find{background:#211829;border-left-color:#a54fd0;color:#e8e0ee}
.gmr-game .gmr-feedback h3,.gmr-game .gmr-find strong{color:#fff}
.gmr-game .gmr-feedback.correct{background:#163124;border-left-color:#58ba7d}.gmr-game .gmr-feedback.wrong{background:#391820;border-left-color:#e36a7b}
.gmr-game .gmr-input{color:#fff;background:#17111f;border-color:#4b3858}.gmr-game .gmr-input::placeholder{color:#a99caf}
.gmr-game .gmr-letter{border-color:#7e5b91;background:linear-gradient(145deg,#4d2364,#8f45b2)}
.gmr-game .gmr-memory-face{border-color:#543d63}.gmr-game .gmr-memory-back{background:linear-gradient(145deg,#3a1b4e,#8240aa)}
.gmr-game .gmr-memory-front{background:#1d1525;color:#fff}.gmr-game .gmr-footer{background:#0c0910;border-top-color:#33263d;color:#bfb4c8}
.gmr-game .gmr-footer a{color:#d59cff}

/* Make the more visual games feel framed by the same arcade shell. */
.gmr-game .gmr-dig,.gmr-game .gmr-smash,.gmr-game .gmr-guess{background:transparent!important;color:#f4eef8}
.gmr-game .gmr-dig-site-heading,.gmr-game .gmr-smash-banner,.gmr-game .gmr-guess-question{
  border-color:rgba(216,190,235,.2)!important;box-shadow:none!important;
}
.gmr-game .gmr-smash-controls,.gmr-game .gmr-smash-meter,.gmr-game .gmr-smash-best,
.gmr-game .gmr-guess-hud,.gmr-game .gmr-guess-clues,.gmr-game .gmr-guess-answer{
  background:#1b1423!important;border-color:#493654!important;color:#eee7f3!important;
}

/* Overlay becomes a polished game cabinet rather than a light WordPress panel. */
.gmr-arcade-overlay{background:rgba(2,4,9,.94);backdrop-filter:blur(10px)}
.gmr-arcade-dialog{background:linear-gradient(180deg,#0a0e16,#0d1018);border-color:rgba(216,190,235,.22)}
.gmr-arcade-toolbar{padding:14px 18px;background:rgba(5,8,14,.97)}
.gmr-arcade-toolbar strong{font-size:1.08rem}.gmr-arcade-toolbar button{font-size:1rem}
.gmr-game-panel{padding:18px}.gmr-game-panel>.gmr-game{margin:0 auto}

/* Crystal Caverns shared control polish. */
.gmr-cave-adv-shell{max-width:1080px;margin:0 auto;padding:0}
.gmr-cave-adv-card{border-radius:20px;padding:20px;background:radial-gradient(circle at 80% 0%,rgba(129,66,178,.2),transparent 30%),linear-gradient(145deg,#1c1225,#0b0910 72%)}
.gmr-cave-adv-header h2{font-size:clamp(2rem,4vw,3rem)}.gmr-cave-adv-header p{font-size:1rem;line-height:1.5}
.gmr-cave-adv-actions button,.gmr-cave-adv-pickaxe{min-height:48px;font-size:1rem}
.gmr-cave-adv-start{background:linear-gradient(180deg,#a746dc,#7228a7);color:#fff}
.gmr-cave-adv-game-wrap{border-color:rgba(205,165,232,.36);box-shadow:0 14px 34px rgba(0,0,0,.35)}
.gmr-cave-adv-controls{gap:24px;margin-top:18px}.gmr-cave-adv-dpad{display:grid;grid-template-columns:repeat(3,58px);grid-template-rows:repeat(2,52px);gap:6px}
.gmr-cave-adv-dpad>button{grid-column:2}.gmr-cave-adv-dpad>div{grid-column:1/4;display:grid;grid-template-columns:repeat(3,58px);gap:6px}
.gmr-cave-adv-dpad button{width:58px;height:52px;margin:0;border-radius:13px;background:linear-gradient(180deg,#64318a,#361c4a);box-shadow:inset 0 1px rgba(255,255,255,.12),0 5px 12px rgba(0,0,0,.28)}
.gmr-cave-adv-dpad button:active,.gmr-cave-adv-pickaxe:active{transform:translateY(2px)}
.gmr-cave-adv-pickaxe{background:linear-gradient(180deg,#d0a04e,#9c642c);color:#fff;box-shadow:0 8px 20px rgba(0,0,0,.3)}

/* Hero lighting: preserve readability while allowing the cave art to show. */
.gmr-v3-hero{filter:none!important;background-color:#171023}
.gmr-v3-hero:after{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(40,18,55,.04),rgba(255,192,99,.08) 65%,rgba(255,190,92,.16));pointer-events:none}
.gmr-v3-hero-copy{background:linear-gradient(90deg,rgba(3,7,16,var(--gmr-panel-opacity)),rgba(3,7,16,calc(var(--gmr-panel-opacity) - .14)));box-shadow:0 18px 40px rgba(0,0,0,.22)}
.gmr-v3-hero-copy h2{text-shadow:0 3px 18px #000,0 0 30px rgba(190,113,239,.16)}

@media(max-width:760px){
 .gmr-game{font-size:16px}.gmr-game .gmr-content{padding:18px}.gmr-game-panel{padding:8px}
 .gmr-cave-adv-card{padding:14px}.gmr-cave-adv-controls{flex-direction:column}.gmr-cave-adv-dpad{grid-template-columns:repeat(3,54px)}.gmr-cave-adv-dpad>div{grid-template-columns:repeat(3,54px)}.gmr-cave-adv-dpad button{width:54px}
}


/* Phase One visual polish v3.2: preserves the approved layout. */
.gmr-v3-hero{
  background-position:center center;
}
.gmr-v3-hero:before{
  background:
    radial-gradient(circle at 45% 48%,rgba(188,109,231,.12),transparent 34%),
    linear-gradient(90deg,rgba(3,6,15,.18) 0%,rgba(3,6,15,.05) 44%,rgba(255,184,82,.04) 70%,rgba(255,184,82,.11) 100%);
}
.gmr-v3-hero:after{
  background:
    radial-gradient(circle at 76% 56%,rgba(255,192,90,.20),transparent 31%),
    linear-gradient(90deg,rgba(98,44,127,.05),rgba(206,134,244,.08) 48%,rgba(255,190,92,.14));
  mix-blend-mode:screen;
}
.gmr-v3-hero-copy{
  border-color:rgba(220,178,247,.26);
  background:linear-gradient(110deg,rgba(5,8,18,.72),rgba(8,8,20,.58));
  backdrop-filter:blur(13px) saturate(112%);
  -webkit-backdrop-filter:blur(13px) saturate(112%);
  box-shadow:0 20px 48px rgba(0,0,0,.30),inset 0 1px rgba(255,255,255,.04),0 0 0 1px rgba(167,73,216,.04);
}
.gmr-v3-hero-copy h2{
  text-shadow:0 4px 22px rgba(0,0,0,.78),0 0 32px rgba(189,113,238,.24);
}
.gmr-v3-hero-copy p{color:#e2b7ff;text-shadow:0 2px 10px rgba(0,0,0,.7)}
.gmr-v3-hero-copy span{text-shadow:0 2px 10px rgba(0,0,0,.72)}

.gmr-v3-beta strong{
  display:inline-flex;align-items:center;gap:7px;
  padding:5px 9px;border:1px solid rgba(207,132,245,.22);border-radius:999px;
  background:rgba(113,40,151,.16);font-size:.82em;
}
.gmr-v3-beta strong:before{content:"🧪";font-size:.95em}

.gmr-v3-tools input{
  min-height:48px;padding:12px 16px 12px 43px;
  background-color:#101725;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23bca7cc' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:14px center;background-size:19px;
  transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease;
}
.gmr-v3-tools input:focus{
  outline:none;border-color:#a74bdf;background-color:#121a2a;
  box-shadow:0 0 0 3px rgba(167,75,223,.16);
}
.gmr-v3-tools button{min-height:43px;transition:transform .16s ease,filter .16s ease,border-color .16s ease,box-shadow .16s ease}
.gmr-v3-tools button:hover{transform:translateY(-1px);border-color:#8e51b3;filter:brightness(1.08)}

.gmr-v3-card{
  position:relative;
  transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease,background .22s ease;
}
.gmr-v3-cover img{
  transition:transform .34s cubic-bezier(.2,.7,.2,1),filter .34s ease;
}
.gmr-v3-card.is-playable:hover{
  transform:translateY(-7px);
  border-color:rgba(181,91,230,.82);
  background:linear-gradient(180deg,#192338,#111925);
  box-shadow:0 18px 38px rgba(0,0,0,.42),0 0 24px rgba(151,59,203,.15);
}
.gmr-v3-card.is-playable:hover .gmr-v3-cover img{transform:scale(1.055);filter:saturate(1.06) brightness(1.04)}
.gmr-v3-card.is-playable:hover h4{color:#efd9ff}
.gmr-v3-card button{
  box-shadow:0 8px 18px rgba(105,33,148,.25);
  transition:transform .16s ease,filter .16s ease,box-shadow .16s ease;
}
.gmr-v3-card button:hover{transform:translateY(-1px);filter:brightness(1.12);box-shadow:0 10px 24px rgba(132,42,184,.38)}
.gmr-v3-card:focus-visible{outline:3px solid rgba(203,126,245,.8);outline-offset:3px}

.gmr-arcade-overlay:not([hidden]){animation:gmrOverlayIn .22s ease both}
.gmr-arcade-overlay:not([hidden]) .gmr-arcade-dialog{animation:gmrDialogIn .25s cubic-bezier(.2,.75,.25,1) both}
@keyframes gmrOverlayIn{from{opacity:0}to{opacity:1}}
@keyframes gmrDialogIn{from{opacity:0;transform:translateY(16px) scale(.985)}to{opacity:1;transform:none}}

@media(prefers-reduced-motion:reduce){
 .gmr-v3-card,.gmr-v3-cover img,.gmr-v3-card button,.gmr-v3-tools button,.gmr-arcade-overlay,.gmr-arcade-dialog{animation:none!important;transition:none!important}
}
@media(max-width:760px){
 .gmr-v3-hero-copy{background:rgba(5,8,18,.76);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
 .gmr-v3-card.is-playable:hover{transform:none}
}
