
/* GeniusGen-Next : visual-only skin. No progression/state handlers changed. */
:root{--ggn-ink:#17234c;--ggn-deep:#121f57;--ggn-gold:#ffd56d;--ggn-cyan:#44e1f9}
body{background:#dbf3ff}
.login-shell{background:#f0f6ff}
.login-showcase{background:linear-gradient(180deg,rgba(15,33,83,.19),rgba(12,26,83,.61)),url('/geniusgen-next-world.webp') center center / cover no-repeat!important;border-right:3px solid #a1e6ff}
.login-showcase:after{pointer-events:none;opacity:.35}
.login-brand{width:max-content;max-width:100%;padding:8px 16px 8px 8px;border-radius:22px;background:rgba(10,30,83,.6);border:1px solid #a6ecff69;backdrop-filter:blur(10px);box-shadow:0 8px 26px #0a174e50}
.login-brand img{filter:drop-shadow(0 6px 10px #01194c75)}
.login-copy{padding:20px 16px;border-radius:28px;background:linear-gradient(110deg,#0d2668d1,#13286870 70%,transparent);text-shadow:0 2px 12px #071445be;backdrop-filter:blur(2px)}
.login-copy h1{color:#fff;text-shadow:0 4px 8px #031743aa,0 0 18px #4cdbff83;letter-spacing:-.03em}
.login-copy>div span{background:linear-gradient(135deg,#fffbf7aa,#e8f4ff42);border:1px solid #fff8cc7d;box-shadow:0 6px 20px #0217534d}
.login-panel{background:radial-gradient(circle at 100% 5%,#c5ecff 0,transparent 38%),radial-gradient(circle at 0 100%,#e2d7ff 0,transparent 42%),#f5f9ff}
.login-card{padding:clamp(22px,3vw,35px);background:#ffffffd9;border:1px solid #ffffff;box-shadow:0 18px 50px #234b8e20, inset 0 0 0 1px #d2eaff;backdrop-filter:blur(14px);border-radius:30px}
.login-lock{background:linear-gradient(140deg,#fff0b1,#fad4fb);color:#7247c7;border:2px solid white;box-shadow:0 8px 18px #7459a538}
.login-submit{background:linear-gradient(105deg,#167cda,#6550dd 65%,#ab52c8);border:1px solid #e7f5ff;box-shadow:0 8px 20px #3435b640}
.login-card input{background:#fff;border-color:#d4dff5}
.login-lang{box-shadow:0 8px 22px #3c5b9930}
/* Keep all app routes and layouts; skin the existing surfaces only. */
.app{min-height:100vh;background:linear-gradient(180deg,#f2f9ffeb 0%,#edf5ffdb 36%,#edf6ffec 100%),url('/geniusgen-next-world.webp') top center / cover fixed no-repeat;color:var(--ggn-ink)}
.app header,.app nav{backdrop-filter:blur(12px)}
.app>header,.app .topbar{background:linear-gradient(120deg,#fffefaee,#e9f6ffec);box-shadow:0 9px 28px #193b6b1d}
.app>main,.app main{position:relative}
.welcome-panel{background:linear-gradient(100deg,#082d73ec,#174c9ae0 63%,#4b47b8c9),url('/geniusgen-next-world.webp') center 56% / cover!important;border:2px solid #b5eaff!important;border-radius:30px;box-shadow:0 20px 42px #173a8950,inset 0 2px 0 #ffffff35;isolation:isolate}
.welcome-panel:before,.welcome-panel:after{pointer-events:none}
.welcome-panel h1{color:#fff;text-shadow:0 3px 9px #001f5da6}
.home-heading h2,.panel-title h2{color:#173477}
.home-heading small{color:#6b48ca;font-weight:900;letter-spacing:.08em}
.home-heading button{border:1px solid #b9d9ff;border-radius:999px;background:#eff8ff;box-shadow:0 4px 12px #2454a21c;padding:9px 16px}
.game-library{gap:18px}
.game-library article{background:linear-gradient(155deg,#ffffff,#f4f8ff);border:1px solid #fff;border-top:5px solid var(--c);border-radius:25px;box-shadow:0 12px 25px #1a3d8023,0 2px 0 #fff inset;transition:transform .2s,box-shadow .2s;overflow:hidden}
.game-library article:hover{transform:translateY(-5px);box-shadow:0 19px 34px #1a3d8030}
.game-badge{width:100%!important;height:auto!important;aspect-ratio:1.25/1;background:radial-gradient(circle at 50% 70%,color-mix(in srgb,var(--c) 17%,white),#fff 70%)!important;border:1px solid color-mix(in srgb,var(--c) 26%,white);border-radius:20px!important;display:grid;place-items:center;overflow:hidden;padding:4px;box-shadow:inset 0 0 0 1px #ffffffb0,0 6px 15px #1b40781f}
.game-badge img{width:100%;height:100%;max-height:155px;object-fit:contain;filter:drop-shadow(0 9px 5px #223d4a26);transition:transform .2s}
.game-library article:hover .game-badge img{transform:scale(1.07) translateY(-2px)}
.game-library h3{color:#142f67}
.game-library .game-progress button,.continue-journey{background:linear-gradient(110deg,var(--c,#1e7ccb),#243fa5)!important;color:#fff!important;border:1px solid #fff6cc!important;border-radius:14px!important;box-shadow:0 6px 14px #233b8c35}
.game-library .game-progress button:hover,.continue-journey:hover{filter:brightness(1.12)}
.daily,.collection-banner,.settings-profile-card,.settings-about,.settings-actions,.play-settings,.journey-total{box-shadow:0 12px 30px #254b8721;border:1px solid #ffffffdb;border-radius:24px}
.adventure-head,.leader-head{border-radius:25px;padding:20px 24px;background:linear-gradient(115deg,#173977f0,#5a43bde8),url('/geniusgen-next-world.webp') center / cover;color:#fff;box-shadow:0 12px 30px #17357835}
.adventure-head h1,.leader-head h1{color:#fff;text-shadow:0 3px 9px #051f57a6}
.journey-world{border:2px solid #ffffffa8;border-radius:26px;box-shadow:0 11px 27px color-mix(in srgb,var(--c) 28%,transparent)}
.journey-icon{width:90px!important;height:90px!important;min-width:90px;display:grid;place-items:center;background:radial-gradient(circle,#ffffffef,#eaf8ffbf)!important;border:2px solid #ffecaf!important;border-radius:22px!important;box-shadow:0 8px 15px #102f6450!important;overflow:hidden}
.journey-icon img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 4px 4px #1a285137)}
.journey-summary{min-height:112px}
.journey-world.active{box-shadow:0 17px 35px color-mix(in srgb,var(--c) 38%,transparent),inset 0 0 0 1px #fff6b9}
.prizes article,.settings-actions button{border:1px solid #e5efff;box-shadow:0 8px 20px #20417c16;border-radius:19px}
.top-icon{border:1px solid #c8dff4;box-shadow:0 4px 11px #274c8630}
button:focus-visible{outline:3px solid #f6b73b;outline-offset:2px}
@media(max-width:800px){
 .app{background:linear-gradient(180deg,#f2f9fff1,#edf7fff2),url('/geniusgen-next-world.webp') top center / auto 100vh fixed no-repeat}
 .login-showcase{background-position:center 40%!important;min-height:290px}
 .login-copy{padding:12px;background:linear-gradient(90deg,#0e2c70b8,#123b8191);border-radius:18px}
 .login-card{padding:22px 18px;border-radius:23px}
 .welcome-panel{background-position:center!important}
 .game-library{gap:11px}
 .game-library article{padding:11px!important;border-radius:19px}
 .game-badge{border-radius:15px!important;aspect-ratio:1.1/1}
 .game-badge img{max-height:125px}
 .journey-icon{width:70px!important;height:70px!important;min-width:70px}
 .adventure-head,.leader-head{padding:16px}
}
@media(max-width:420px){
 .game-library article{padding:9px!important}
 .game-badge{aspect-ratio:1/1}
 .game-library h3{font-size:.92rem;line-height:1.23}
 .game-library article p{font-size:.77rem;line-height:1.4}
 .journey-icon{width:62px!important;height:62px!important;min-width:62px;border-radius:14px!important}
 .login-brand{padding:5px 11px 5px 4px}
}
@media(prefers-reduced-motion:reduce){.game-library article,.game-badge img{transition:none!important}}
