:root { --gp-auth-ink:#151126; --gp-auth-muted:#696277; --gp-auth-violet:#5b35e8; --gp-auth-purple:#7b45f1; }
.gp-auth-shell { position:relative; isolation:isolate; min-height:calc(100vh - 150px); display:grid; place-items:center; overflow:hidden; padding:72px 24px; background:linear-gradient(145deg,#fbfaff 0%,#f5f1ff 56%,#edf3ff 100%); color:var(--gp-auth-ink); }
.gp-auth-orb { position:absolute; z-index:-1; border-radius:999px; filter:blur(2px); opacity:.55; }
.gp-auth-orb--one { width:360px; height:360px; top:-160px; right:6%; background:radial-gradient(circle at 30% 30%,#b8a5ff,#6a40e8); }
.gp-auth-orb--two { width:280px; height:280px; left:-130px; bottom:-100px; background:radial-gradient(circle at 60% 35%,#c9e0ff,#a98af6); }
.gp-auth-card { width:min(100%,980px); display:grid; grid-template-columns:minmax(0,.9fr) minmax(380px,1.1fr); border:1px solid rgba(91,53,232,.14); border-radius:28px; overflow:hidden; background:rgba(255,255,255,.92); box-shadow:0 28px 80px rgba(48,31,100,.16); backdrop-filter:blur(16px); }
.gp-auth-intro { position:relative; padding:54px 48px; color:#fff; background:linear-gradient(150deg,#1d123a 0%,#392073 55%,#6435dc 100%); }
.gp-auth-intro::after { content:""; position:absolute; right:-80px; bottom:-100px; width:240px; height:240px; border:45px solid rgba(255,255,255,.08); border-radius:50%; }
.gp-auth-brand { display:inline-block; margin-bottom:58px; color:#fff!important; font-size:24px; font-weight:800; letter-spacing:-.8px; text-decoration:none!important; }
.gp-auth-brand span { color:#a992ff; }
.gp-auth-kicker { margin:0 0 14px!important; color:#cfc2ff!important; font-size:12px; font-weight:800; letter-spacing:.16em; text-transform:uppercase; }
.gp-auth-intro h1 { margin:0 0 16px; color:#fff; font-size:clamp(32px,4vw,46px); line-height:1.08; letter-spacing:-1.5px; }
.gp-auth-intro>p:not(.gp-auth-kicker) { color:#ddd6ec; line-height:1.7; }
.gp-auth-intro ul { margin:34px 0 0; padding:0; list-style:none; }
.gp-auth-intro li { margin:13px 0; color:#f2effa; }
.gp-auth-intro li::before { content:"✓"; display:inline-grid; place-items:center; width:22px; height:22px; margin-right:10px; border-radius:50%; background:rgba(189,167,255,.2); color:#cbbaff; font-weight:800; }
.gp-auth-form-panel { padding:44px 54px 38px; }
.gp-auth-switch { display:grid; grid-template-columns:1fr 1fr; gap:5px; margin-bottom:32px; padding:5px; border-radius:13px; background:#f2eff9; }
.gp-auth-switch a { padding:10px 14px; border-radius:9px; color:#716a80!important; text-align:center; font-size:14px; font-weight:700; text-decoration:none!important; }
.gp-auth-switch a.is-active { background:#fff; color:var(--gp-auth-violet)!important; box-shadow:0 3px 12px rgba(45,28,88,.09); }
.gp-auth-form { display:flex; flex-direction:column; }
.gp-auth-form>label { margin:14px 0 7px; font-size:13px; font-weight:750; color:#302a3b; }
.gp-auth-form input[type=text],.gp-auth-form input[type=email],.gp-auth-form input[type=password] { width:100%; height:50px; margin:0!important; padding:0 15px; border:1px solid #ded9e8!important; border-radius:11px!important; background:#fff!important; color:#171222!important; box-shadow:none!important; font-size:15px; transition:border-color .18s,box-shadow .18s; }
.gp-auth-form input:focus { border-color:#7857e1!important; box-shadow:0 0 0 4px rgba(91,53,232,.11)!important; outline:0; }
.gp-auth-form small { margin-top:6px; color:#837c8e; font-size:11px; }
.gp-auth-password,.gp-auth-code { position:relative; display:flex; gap:9px; }
.gp-auth-password button { position:absolute; top:50%; right:10px; transform:translateY(-50%); padding:6px 8px; border:0; background:transparent; color:var(--gp-auth-violet); font-size:12px; font-weight:700; }
.gp-auth-password input { padding-right:62px!important; }
.gp-auth-code input { flex:1; letter-spacing:.25em; }
.gp-auth-code button { flex:0 0 116px; border:1px solid #d8d0f4; border-radius:11px; background:#f6f3ff; color:var(--gp-auth-violet); font-size:13px; font-weight:800; }
.gp-auth-code button:disabled { opacity:.58; cursor:not-allowed; }
.gp-auth-options,.gp-auth-consent { display:flex; align-items:center; justify-content:space-between; gap:14px; margin:18px 0 2px!important; font-size:13px!important; font-weight:500!important; }
.gp-auth-options label,.gp-auth-consent { display:flex; align-items:flex-start; gap:7px; color:var(--gp-auth-muted); }
.gp-auth-options input,.gp-auth-consent input { width:16px; height:16px; accent-color:var(--gp-auth-violet); }
.gp-auth-options a,.gp-auth-footer-copy a { color:var(--gp-auth-violet)!important; font-weight:700; }
.gp-auth-message { min-height:22px; margin-top:13px; color:#b42318; font-size:13px; line-height:1.45; }
.gp-auth-message.is-success { color:#067647; }
.gp-auth-challenge { max-width:100%; margin-top:16px; overflow:hidden; }
.gp-auth-challenge:empty { display:none; }
.gp-auth-challenge .greatppt-turnstile,.gp-auth-challenge .cf-turnstile,.gp-auth-challenge iframe { max-width:100%!important; }
.gp-auth-challenge-status { margin:7px 0 0!important; color:#6f657f; font-size:12px; line-height:1.45; }
.gp-auth-challenge-status[hidden] { display:none!important; }
.gp-auth-security-unavailable,.gp-auth-invalid-link p { margin:8px 0 14px!important; color:#b42318; font-size:13px; line-height:1.5; }
.gp-auth-submit { width:100%; min-height:52px; margin-top:8px; border:0; border-radius:12px; background:linear-gradient(120deg,var(--gp-auth-violet),var(--gp-auth-purple)); color:#fff; box-shadow:0 10px 22px rgba(91,53,232,.24); font-size:15px; font-weight:800; transition:transform .18s,box-shadow .18s; }
.gp-auth-submit:hover { transform:translateY(-1px); box-shadow:0 13px 28px rgba(91,53,232,.3); }
.gp-auth-submit:disabled { opacity:.65; cursor:not-allowed; transform:none; }
.gp-auth-submit--link { display:grid; place-items:center; color:#fff!important; text-decoration:none!important; }
.gp-auth-footer-copy { margin:25px 0 0!important; color:var(--gp-auth-muted); text-align:center; font-size:13px; }
@media (max-width:800px) { .gp-auth-shell{padding:36px 18px}.gp-auth-card{grid-template-columns:1fr;max-width:560px}.gp-auth-intro{padding:34px 36px}.gp-auth-brand{margin-bottom:26px}.gp-auth-intro ul{display:none}.gp-auth-form-panel{padding:36px} }
@media (max-width:480px) { .gp-auth-shell{padding:18px 10px}.gp-auth-card{border-radius:20px}.gp-auth-intro{padding:27px 24px}.gp-auth-intro h1{font-size:30px}.gp-auth-form-panel{padding:26px 20px}.gp-auth-code{align-items:stretch}.gp-auth-code button{flex-basis:105px}.gp-auth-options{align-items:flex-start}.gp-auth-consent{line-height:1.4}.gp-auth-challenge{overflow-x:auto} }
@media (prefers-reduced-motion:reduce) { .gp-auth-shell *{scroll-behavior:auto!important;transition:none!important} }
