:root { --auth-cream:#fff3d4; --auth-ink:#3b170d; --auth-wood:#6a2e14; --auth-gold:#f8bd45; --auth-coral:#ff654e; }
html:has(.gdd-auth), body:has(.gdd-auth) { width:100%; height:100%; margin:0; overflow:hidden; }
.gdd-auth { width:100vw; height:100vh; min-height:0; overflow:hidden; background:#0b2530; color:var(--auth-cream); font-family:Nunito,system-ui,sans-serif; }
.gdd-auth * { box-sizing:border-box; }
.gdd-auth-landscape { position:relative; width:100%; height:100%; display:grid; grid-template-columns:minmax(250px,.88fr) minmax(330px,1.12fr); align-items:center; gap:clamp(16px,5vw,80px); padding:clamp(14px,4vh,44px) clamp(18px,6vw,96px); background:linear-gradient(90deg,rgba(5,32,42,.18),rgba(5,32,42,.08)),url('/assets/home-unity/lobby-bg.png') center/cover no-repeat; isolation:isolate; }
.gdd-auth-landscape::after { content:""; position:absolute; inset:0; z-index:-1; background:radial-gradient(circle at 72% 47%,transparent 0 18%,rgba(6,27,35,.28) 78%),linear-gradient(0deg,rgba(4,23,30,.58),transparent 38%); pointer-events:none; }
.gdd-auth-logo { position:absolute; top:clamp(8px,2vh,22px); left:50%; transform:translateX(-50%); width:clamp(180px,28vw,430px); max-height:19vh; object-fit:contain; filter:drop-shadow(0 5px 0 rgba(74,14,50,.55)); }
.gdd-auth-pack { min-height:58vh; align-self:end; }
.gdd-auth-card { grid-column:2; justify-self:end; width:min(100%,580px); max-height:min(72vh,610px); overflow-y:auto; overscroll-behavior:contain; scrollbar-width:thin; padding:clamp(18px,3.2vw,42px); border:clamp(5px,.65vw,10px) solid #9d5524; border-radius:clamp(22px,3vw,42px); background:linear-gradient(#783a1c,#51220f); box-shadow:inset 0 0 0 3px #e8a445,inset 0 0 22px #301006,0 14px 30px rgba(0,0,0,.42); }
.gdd-auth-copy { text-align:center; }
.gdd-auth-kicker { display:inline-block; color:#ffdc6e; font-size:clamp(.64rem,1.2vw,.82rem); font-weight:1000; letter-spacing:.13em; }
.gdd-auth-copy h1 { margin:.18em 0 .22em; color:#fff8df; font-size:clamp(1.55rem,3.2vw,3.1rem); line-height:.95; text-shadow:0 3px 0 #361108; }
[data-testid="auth-account-state"] h1 { overflow-wrap:anywhere; }
.gdd-auth-copy p { max-width:42ch; margin:0 auto 14px; color:#f8d8ac; font-size:clamp(.78rem,1.25vw,1rem); line-height:1.38; }
.gdd-auth-actions,.gdd-auth-form { display:grid; gap:9px; }
.gdd-auth-actions { max-width:390px; margin:auto; }
.gdd-auth-form label { display:grid; gap:4px; color:#ffe5ae; font-size:.72rem; font-weight:1000; letter-spacing:.07em; text-transform:uppercase; }
.gdd-auth-form input { width:100%; min-height:44px; padding:9px 12px; border:2px solid #b96b2e; border-radius:12px; outline:0; background:#fff8e7; color:#35170e; font:700 16px/1 system-ui,sans-serif; }
.gdd-auth-form input:focus-visible { border-color:#67e8f9; box-shadow:0 0 0 3px rgba(103,232,249,.3); }
.gdd-auth button { min-height:44px; border:0; border-radius:13px; cursor:pointer; font-weight:1000; letter-spacing:.035em; }
.gdd-auth button:focus-visible { outline:3px solid #72f1ff; outline-offset:3px; }
.gdd-auth button:disabled { cursor:wait; filter:saturate(.35); opacity:.72; }
.gdd-auth-primary { padding:10px 18px; color:#fff9e8; background:linear-gradient(#ff7b55,#e83e2e); border:3px solid #7c1c12!important; box-shadow:inset 0 0 0 2px #ffb271,0 5px 0 #43130c; }
.gdd-auth-secondary { padding:10px 18px; color:#4a210e; background:linear-gradient(#ffd96d,#e59c25); border:3px solid #6a2b10!important; box-shadow:inset 0 0 0 2px #fff0a2,0 4px 0 #3d1609; }
.gdd-auth-link { min-height:34px!important; color:#ffe2aa; background:transparent; text-decoration:underline; }
.gdd-auth-subactions { display:flex; justify-content:center; gap:14px; }
.gdd-auth-message { min-height:18px; color:#fff0a8; font-size:.78rem; font-weight:900; text-align:center; }
.gdd-auth-trust { position:absolute; right:clamp(18px,6vw,96px); bottom:9px; color:#e5f9f5; font-weight:800; text-shadow:0 2px 3px #102d36; }
@media (max-height:520px) and (orientation:landscape) {
  .gdd-auth-landscape { grid-template-columns:.75fr 1.25fr; padding:8px 4vw; }
  .gdd-auth-logo { left:25%; top:7%; width:min(31vw,265px); }
  .gdd-auth-card { max-height:calc(100vh - 18px); width:min(100%,520px); padding:14px 18px; border-width:5px; border-radius:22px; }
  .gdd-auth-copy h1 { font-size:clamp(1.35rem,4.5vh,1.85rem); }
  .gdd-auth-copy p { margin-bottom:9px; font-size:.75rem; }
  .gdd-auth-form { grid-template-columns:repeat(2,minmax(0,1fr)); align-items:end; gap:7px; }
  .gdd-auth-form .gdd-auth-message,.gdd-auth-form .gdd-auth-primary { grid-column:1/-1; }
  .gdd-auth-trust { display:none; }
}
@media (orientation:portrait) { .gdd-auth-landscape { display:none; } .gdd-auth::before { content:'Rotate your device to play Bumpies'; display:grid; place-items:center; height:100%; padding:28px; text-align:center; font-size:1.4rem; font-weight:1000; } }
.gdd-home-account-badge { position:absolute; left:auto; right:5%; top:3%; z-index:4; padding:2px 7px; border:2px solid #6d2d13; border-radius:999px; background:#ffd35c; color:#4b1c0c; font-size:clamp(.38rem,.7vw,.6rem); font-weight:1000; line-height:1.1; box-shadow:0 2px 0 rgba(58,19,7,.6); }
