/* Scoped to the PWA cohort. Desktop/default signup keeps its existing layout. */
#gw-pwa-root{display:none}
html.gw-pwa-active,html.gw-pwa-active body{height:100%;overflow:hidden}
.gw-pwa-active #gw-standard-landing{display:none}
.gw-pwa-active #gw-pwa-root{display:flex}
#gw-pwa-root{position:fixed;inset:0;z-index:45;height:100svh;height:100dvh;isolation:isolate;overflow:hidden;flex-direction:column;align-items:center;padding:max(22px,env(safe-area-inset-top)) 22px calc(42px + env(safe-area-inset-bottom));color:white;background:#082650;font-family:Arial,sans-serif;box-sizing:border-box}
#gw-pwa-root:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#00182e30,transparent 35%,transparent 76%,#00183455),var(--pwa-background) center/cover no-repeat}
#gw-pwa-root .pwa-header{width:100%;text-align:center;flex-shrink:0}
#gw-pwa-root .pwa-logo{display:block;width:min(94%,410px);height:auto;margin:auto;filter:drop-shadow(0 5px 9px #001530b0)}
#gw-pwa-root .pwa-title{font-family:Cinzel,Georgia,serif;font-size:clamp(25px,7.6vw,42px);line-height:1.06;font-weight:800;margin:14px -10px 0;color:#fff;letter-spacing:-.02em;text-shadow:0 2px 0 #224a77,0 3px 12px #002356,0 0 20px #003468}
#gw-pwa-root .pwa-title span{display:block;font-size:.83em;margin-top:3px}
#gw-pwa-root .pwa-trailer{position:relative;width:calc(100% + 4px);max-width:444px;aspect-ratio:16/9;flex-shrink:0;margin-top:18px;border:1px solid #ffe081;border-radius:15px;overflow:hidden;background:#061326;box-shadow:0 12px 30px #00102d80}
#pwa-trailer{display:block;width:100%;height:100%;object-fit:contain}
#pwa-sound{position:absolute;inset:0;display:grid;place-items:center;width:100%;height:100%;border:0;background:transparent;color:white;cursor:pointer}
#pwa-sound span{font:700 12px Arial,sans-serif;padding:11px 16px;border:1px solid #ffe09b;border-radius:30px;background:#251b0ee8;box-shadow:0 4px 20px #0009}
#pwa-sound.playing span{opacity:0}
#gw-pwa-root .pwa-action{width:100%;max-width:440px;flex-shrink:0;margin-top:auto;text-align:center;padding:16px 4px 8px}
#pwa-play{position:relative;width:100%;min-height:76px;isolation:isolate;border:2px solid #fff1a6;border-radius:8px;background:linear-gradient(160deg,#fff4ac 0%,#ffc92d 24%,#ffb000 50%,#ffd451 69%,#e99300 100%);box-shadow:0 0 0 4px #bd720d,0 0 0 6px #ffe081,0 10px 0 6px #713205,0 16px 25px #20080099,inset 0 4px 0 #fff9c6,inset 0 -5px 0 #d47c00;color:#3c1800;text-shadow:0 2px 0 #ffe588;font:900 clamp(29px,8vw,42px) Cinzel,Georgia,serif;letter-spacing:.5px;cursor:pointer;overflow:hidden}
#pwa-play:before{content:"";position:absolute;inset:-100% auto -100% -60%;width:40%;transform:skewX(-22deg);background:linear-gradient(90deg,transparent,#fff9,transparent);animation:pwa-shine 5.5s ease-in-out infinite;pointer-events:none}
@keyframes pwa-shine{0%,65%{left:-60%}95%,100%{left:150%}}
#pwa-play:active{transform:translateY(4px)}
#gw-pwa-root .pwa-action p{font-size:11px;margin:22px 0 0;color:#fff;text-shadow:0 2px 5px #001126,0 0 9px #001126}
#gw-pwa-root .pwa-legal{position:absolute;right:max(12px,env(safe-area-inset-right));bottom:calc(9px + env(safe-area-inset-bottom));display:flex;gap:14px;padding:5px 9px;background:#041b36c9;border-radius:6px}
#gw-pwa-root .pwa-legal a{font-size:10px;color:#eff9ff;text-decoration:underline;text-underline-offset:3px}
#gw-pwa-root dialog{position:fixed;inset:0;margin:auto;width:calc(100% - 28px);max-width:440px;max-height:calc(100dvh - 32px);overflow:auto;border:1px solid #e0b36f;border-radius:18px;padding:30px 22px 22px;background:#140f26;color:#fff;box-shadow:0 20px 70px #000a}
#gw-pwa-root dialog::backdrop{background:#041021c9;backdrop-filter:blur(5px)}
#gw-pwa-root dialog h2{font:700 24px Georgia;margin:8px 0 14px}
#gw-pwa-root dialog p,#gw-pwa-root dialog ol{font-size:15px;line-height:1.6}
#gw-pwa-root dialog ol{list-style:decimal;padding-left:24px;margin:14px 0}
#gw-pwa-root .pwa-close{position:absolute;top:3px;right:5px;width:44px;height:44px;color:white;font:28px Arial;background:transparent;border:0;cursor:pointer}
#pwa-native-install,#pwa-browser{display:block;width:100%;min-height:48px;border-radius:9px;padding:10px;margin-top:14px;font-weight:bold;cursor:pointer}
#pwa-native-install{background:#f5bd55;color:#311700}
#pwa-browser{border:1px solid #b89b5f;background:#261e37;color:white}
#pwa-native-install[hidden]{display:none}
#gw-pwa-root #pwa-signup-dialog{padding:38px 0 0}
#pwa-signup-slot #create{width:100%;max-width:none;margin:0;scroll-margin:0;border:0}
#gw-pwa-root button:focus-visible,#gw-pwa-root a:focus-visible{outline:2px solid white;outline-offset:3px}
@media(max-height:740px){#gw-pwa-root{padding-top:max(14px,env(safe-area-inset-top))}#gw-pwa-root .pwa-logo{width:min(82%,330px)}#gw-pwa-root .pwa-title{font-size:clamp(25px,7.4vw,35px);margin-top:10px}#gw-pwa-root .pwa-trailer{margin-top:12px}#pwa-play{min-height:62px;font-size:30px}#gw-pwa-root .pwa-action p{font-size:10px}}
@media(max-height:580px){#gw-pwa-root{padding-top:8px;padding-bottom:32px}#gw-pwa-root .pwa-logo{width:190px}#gw-pwa-root .pwa-title{font-size:23px;margin-top:5px}#gw-pwa-root .pwa-trailer{margin-top:8px;max-width:min(444px,48dvh)}#pwa-play{min-height:48px;font-size:25px}#gw-pwa-root .pwa-action p{font-size:9px;margin-top:17px}}
@media(min-width:768px){#gw-pwa-root .pwa-logo{width:290px}#gw-pwa-root .pwa-title{font-size:32px}#gw-pwa-root:before{background-size:auto,auto 100%}}
@media(prefers-reduced-motion:reduce){#pwa-play:before{display:none;animation:none}}
/* Install alternative: divider follows the native button's availability. */
#pwa-install-divider{display:none;align-items:center;gap:14px;margin:22px 0 16px;color:#e9d6ad;font-size:13px}
#pwa-install-divider:has(+ #pwa-native-install:not([hidden])){display:flex}
#pwa-install-divider:before,#pwa-install-divider:after{content:"";height:1px;flex:1;background:linear-gradient(90deg,transparent,#b89b5f)}
#pwa-install-divider:after{transform:scaleX(-1)}
#pwa-native-install{position:relative;isolation:isolate;overflow:hidden;min-height:54px;margin-top:0;margin-bottom:20px;border:1px solid #ffe19a;border-radius:11px;background:linear-gradient(165deg,#fff0a0 0%,#ffd05a 22%,#f5ad2f 55%,#e48b17 100%);color:#3c2007;text-shadow:0 1px #ffe9a0;box-shadow:inset 0 2px 0 #fff8c9,inset 0 -2px 0 #c47116,0 5px 0 #8e4a12,0 9px 18px #0005;font-size:17px;transition:transform .15s,filter .15s}
#pwa-native-install:before{content:"";position:absolute;inset:-100% auto -100% -60%;width:40%;transform:skewX(-22deg);background:linear-gradient(90deg,transparent,#fff9,transparent);animation:pwa-shine 5.5s ease-in-out infinite;pointer-events:none}
#pwa-native-install:hover{filter:brightness(1.06)}
#pwa-native-install:active{transform:translateY(3px);box-shadow:inset 0 2px 0 #fff8c9,0 2px 0 #8e4a12}
@media(prefers-reduced-motion:reduce){#pwa-native-install:before{animation:none;display:none}#pwa-native-install{transition:none}}
/* Signup already has its own card: avoid a second visible modal shell. */
#gw-pwa-root #pwa-signup-dialog{background:transparent;border:0;box-shadow:none;padding:38px 0 0}
