:root{color-scheme:light;--bg:#fff;--surface:#f6f7f9;--surface-elevated:#f3f6fa;--text-primary:#162235;--text-secondary:#788496;--border:#e2e7ee;--blue:#1684ef}*{box-sizing:border-box}html{min-height:100%}body.auth-page{margin:0;background:radial-gradient(ellipse at 50% 12%,#e8f1ff88,transparent 50%),#f6f7f9;color:#162235;font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}button,input,select{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}[hidden]{display:none!important}:focus-visible{outline:3px solid #88beff;outline-offset:3px}.auth-topbar{display:flex;justify-content:space-between;gap:20px;padding:28px 40px;font-size:11px;color:#758194}.top-link{display:flex;gap:9px;align-items:center}.top-link a{color:#1769b4;font-weight:600}.back-studio:hover{color:#1769b4}.auth-layout{width:min(460px,calc(100% - 32px));margin:25px auto 35px}.auth-panel{background:#fff;border:1px solid #e3e8ee;border-radius:19px;box-shadow:0 12px 55px #263b5910;overflow:hidden}.auth-content{padding:35px 38px 27px}.auth-brand{display:flex;gap:10px;align-items:center;justify-content:center;font-size:26px;font-weight:700;letter-spacing:-1.3px;margin:0 auto 31px;width:max-content}.auth-brand svg{width:30px;height:30px}.auth-brand span>span{font-weight:400}.auth-brand sup{font-size:9px;margin-left:3px;vertical-align:top;letter-spacing:0;line-height:18px}.form-heading{text-align:center;margin-bottom:29px}.auth-eyebrow{font-size:8px;letter-spacing:1.5px;color:#75879c;display:block;margin-bottom:13px}.form-heading h1{font-size:29px;font-weight:650;letter-spacing:-1px;line-height:1.2;margin:0 0 11px}.form-heading>p{font-size:12px;line-height:1.7;color:#7b8798;margin:0}.form-group{margin-bottom:19px}.form-label{display:flex;justify-content:space-between;align-items:center;font-size:11px;font-weight:600;margin-bottom:9px}.optional{font-size:9px;font-weight:400;color:#96a0ae}.input-wrap{position:relative;display:flex;align-items:center}.icon{width:18px;height:18px;stroke:currentColor;stroke-width:1.5;fill:none;stroke-linecap:round;stroke-linejoin:round}.input-wrap>.icon{position:absolute;left:14px;color:#98a7b8;pointer-events:none}.form-input{width:100%;height:46px;border:1px solid #dfe5ed;border-radius:8px;background:#fcfdfe;padding:12px 42px;font-size:12px;color:#1a2940;transition:border-color .15s,box-shadow .15s}.form-input::placeholder{color:#a3adba}.form-input:focus{outline:none;border-color:#589fec;box-shadow:0 0 0 3px #e5f1ff}.form-input[aria-invalid=true]{border-color:#df7d7d;background:#fffafa}.password-toggle{position:absolute;right:9px;width:31px;height:31px;display:grid;place-items:center;background:none;border:0;color:#8a9aad}.password-toggle[aria-pressed=true]{color:#1684ef}.form-error{display:block;color:#be4b4b;font-size:10px;line-height:1.6;margin-top:6px}.form-error:empty{display:none}.form-options{display:flex;align-items:center;justify-content:space-between;font-size:10px;margin:7px 0 21px}.form-options>a{color:#1e76c6}.checkbox-label{display:flex;gap:8px;align-items:center;font-size:10px;color:#758195;cursor:pointer;line-height:1.7}.checkbox-label input{accent-color:#1684ef;width:14px;height:14px;margin:0;flex-shrink:0}.btn{min-height:46px;width:100%;border:0;border-radius:8px;display:flex;align-items:center;justify-content:center;gap:15px;padding:13px 20px;font-size:12px;font-weight:600}.btn-primary{background:linear-gradient(120deg,#168eff,#1178de);color:white;box-shadow:0 4px 12px #1684ef18}.btn-primary:hover{background:#0879e7}.submit-button[aria-busy=true]>.icon{display:none}.submit-button[aria-busy=true]:after{content:"";width:14px;height:14px;border:2px solid #ffffff66;border-top-color:white;border-radius:50%;animation:auth-spin .7s linear infinite}.btn:disabled{opacity:.65;cursor:wait}.form-message{font-size:11px;line-height:1.7;color:#b64040;background:#fff1f1;border-radius:7px;padding:10px 12px;margin:13px 0}.form-message:empty{display:none}.form-bottom{border-top:1px solid #edf0f5;padding:18px 25px;background:#fcfdfe}.minimal-legal{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;font-size:8px;color:#99a4b1}.minimal-legal nav{gap:14px}.auth-switch{text-align:center;font-size:11px;color:#7d8999;margin-top:24px;line-height:1.8}.auth-switch a{color:#1c76c5;font-weight:600;margin-left:5px}.auth-assurance{font-size:10px;color:#9ba7b5;display:flex;justify-content:center;gap:7px;align-items:center;margin:23px 0}.auth-assurance>span{color:#6f91b5;font-size:16px}.auth-divider{display:flex;align-items:center;gap:15px;margin:24px 0 19px;color:#a0aaba;font-size:9px}.auth-divider:before,.auth-divider:after{content:"";height:1px;background:#e9edf3;flex:1}.google-button{width:100%;border:1px solid #dfe5ed;border-radius:8px;height:46px;background:#fff;color:#3c4757;font-size:12px;font-weight:600;display:flex;align-items:center;justify-content:center;gap:12px;transition:background .15s,border-color .15s}.google-button:hover{background:#f8faff;border-color:#b9cee5}.google-button:disabled{opacity:.6;cursor:wait}.google-message{font-size:10px;line-height:1.7;color:#b64040;margin:10px 0 0}.google-message:empty{display:none}.google-legal{font-size:8px;line-height:1.9;color:#9da6b4;text-align:center;margin:13px 0 0}.google-legal a{color:#5e7fa3;text-decoration:underline}.password-strength{padding:13px 14px;background:#f7f9fc;border:1px solid #e9edf3;border-radius:8px;margin:-2px 0 20px}.strength-header{display:flex;justify-content:space-between;align-items:center;font-size:9px;color:#8390a1;margin-bottom:10px}.strength-header strong{font-weight:500;color:#627a96}.strength-track{display:flex;gap:4px}.strength-track i{height:3px;border-radius:2px;flex:1;background:#e2e8f1}.strength-track .filled{background:#69b5ec}.password-strength[data-score="1"] .filled{background:#e5917d}.password-strength[data-score="4"] .filled{background:#43a887}.requirements{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-top:11px}.requirements>span{display:flex;gap:4px;align-items:center;font-size:7px;color:#a0aaba}.requirements .icon{width:10px;height:10px}.requirements .met{color:#318b6b}.terms-group{margin:0 0 21px}.terms-label{align-items:flex-start;font-size:10px;line-height:1.8}.terms-label input{margin-top:3px}.terms-label a{color:#1c76c5;text-decoration:underline;text-underline-offset:2px}.auth-notice{font-size:11px;line-height:1.7;padding:13px;background:#eef5ff;border:1px solid #d5e6fc;color:#37608c;border-radius:8px;margin-bottom:22px}.success-state{text-align:center;padding:25px 0 15px}.state-icon{display:grid;place-items:center;background:#edf6ff;color:#2687d9;border-radius:50%;width:60px;height:60px;margin:0 auto 24px}.state-icon .icon{width:27px;height:27px}.success-state h1{font-size:27px;letter-spacing:-.9px}.success-state p{font-size:12px;line-height:1.8;color:#7b899c;margin-bottom:28px}.back-link{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:22px;font-size:11px;color:#6f88a4}.back-link .icon{width:14px;height:14px}.skip-link{position:fixed;top:-70px;left:20px;padding:12px 20px;background:#1684ef;color:white;z-index:50;border-radius:6px}.skip-link:focus{top:15px}.preview-note{max-width:430px;text-align:center;margin:0 auto 30px;padding:10px;font-size:10px;color:#9ca8b6;line-height:1.6}.auth-page .privacy-banner{background:white}.auth-page .privacy-button.primary{background:#1684ef;border-color:#1684ef;color:white}.page-register .auth-layout{margin-top:8px}.page-register .auth-content{padding-top:28px}.page-register .auth-brand{margin-bottom:22px}.page-register .form-heading{margin-bottom:24px}.page-register .form-group{margin-bottom:16px}.verification-actions{display:flex;flex-direction:column;gap:12px}.verification-actions button{padding:12px;border:1px solid #dce5ef;border-radius:8px}.verification-note{font-size:12px;color:#71869b;line-height:1.8}.account-layout{width:min(900px,calc(100% - 32px));margin:30px auto 60px}.account-card{background:white;border:1px solid #e1e7ef;border-radius:16px;padding:32px;margin-bottom:22px;box-shadow:0 10px 40px #263b5909}.account-identity{display:flex;gap:22px;align-items:center}.profile-avatar{width:72px;height:72px;border-radius:50%;background:#eaf3ff;color:#2687d9;display:grid;place-items:center;font-size:27px;position:relative;overflow:hidden;flex-shrink:0}.profile-avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.account-identity h1{font-size:26px;letter-spacing:-.8px;margin:0 0 8px}.account-identity p{font-size:12px;color:#7b8a9c;margin:0;overflow-wrap:anywhere}.account-actions{display:flex;gap:12px;margin-top:25px;flex-wrap:wrap}.account-actions .btn{width:auto;min-width:150px}.btn-secondary{background:#f1f5fa;color:#466380;border:1px solid #dfe8f1}.account-columns{display:grid;grid-template-columns:1fr 1fr;gap:22px}.account-columns .account-card{min-width:0}.account-card h2{font-size:18px;letter-spacing:-.4px;margin:0 0 13px}.account-card p{font-size:12px;line-height:1.8;color:#8391a1}.account-card .status{font-size:10px;display:inline-flex;background:#edf7f1;color:#37815e;border-radius:20px;padding:6px 10px}.account-card label{display:block;font-size:11px;margin:17px 0 8px}.account-card input{width:100%;border:1px solid #dfe5ed;border-radius:7px;font-size:12px;padding:12px;color:#31475f}.account-card .google-button{margin-top:20px}.account-note{font-size:11px!important}.logout-button{border:1px solid #dde5ef;background:white;border-radius:7px;color:#6d8096;padding:8px 13px;font-size:10px}@keyframes auth-spin{to{transform:rotate(360deg)}}@media(max-width:600px){.auth-topbar{padding:21px 22px;font-size:10px}.top-link>span{display:none}.auth-layout{margin-top:14px}.auth-content{padding:30px 25px 25px}.form-heading h1{font-size:27px}.auth-brand{font-size:25px}.form-input{font-size:16px;height:47px}.form-label{font-size:11px}.form-bottom{padding:18px 20px}.minimal-legal{font-size:8px}.minimal-legal nav{gap:12px}.account-layout{margin-top:15px}.account-card{padding:24px}.account-columns{grid-template-columns:1fr;gap:0}.account-identity{gap:15px}.account-identity h1{font-size:22px}.profile-avatar{width:56px;height:56px}.account-actions{gap:9px}.account-actions .btn{font-size:11px;min-width:0;flex:1}.account-card input{font-size:16px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
.google-button[aria-busy=true]:after{content:"";width:13px;height:13px;border:2px solid #cadff6;border-top-color:#1684ef;border-radius:50%;animation:auth-spin .7s linear infinite}.invalid-state{text-align:center;padding-top:15px}.invalid-state h1{font-size:26px;letter-spacing:-.8px;line-height:1.2}.invalid-state>p{font-size:12px;color:#7b899c;line-height:1.8;margin-bottom:25px}

/* Studio account pages */
:root{color-scheme:dark;--bg:#05080d;--surface:#0d141f;--surface-elevated:#121d2c;--text-primary:#f3f7ff;--text-secondary:#9aaabd;--border:#243245;--blue:#168eff}
body.auth-page{min-height:100vh;background:radial-gradient(ellipse 75% 55% at 72% 35%,#102546 0%,transparent 70%),#05080d;color:#f3f7ff;font-family:Inter,Arial,Helvetica,sans-serif}
.auth-topbar{width:min(1240px,calc(100% - 64px));margin:auto;padding:30px 0;color:#a3b2c6;align-items:center;font-size:12px}
.auth-topbar a:hover,.top-link a,.back-studio:hover{color:#43aeff}
.auth-layout{width:min(1160px,calc(100% - 64px));margin:28px auto 55px;display:grid;grid-template-columns:minmax(380px,480px) minmax(0,1fr);gap:18px;align-items:stretch}
.auth-panel{border:1px solid #22334a;background:linear-gradient(155deg,#111b29,#0a111c 70%);box-shadow:0 32px 100px #0009;border-radius:22px;display:flex;flex-direction:column;position:relative;z-index:1}
.auth-content{padding:36px 44px 32px;flex:1}
.auth-brand{justify-content:flex-start;margin:0 0 35px;color:#fff;font-size:25px}
.auth-brand svg{color:#1595ff;filter:drop-shadow(0 0 12px #088fff66)}
.form-heading{text-align:left;margin-bottom:27px}.auth-eyebrow{color:#53b7ff;font-size:10px;font-weight:700;letter-spacing:2px}.form-heading h1{font-size:clamp(29px,3vw,39px);letter-spacing:-1.8px;font-weight:700;color:#f6f9ff}.form-heading>p,.success-state p,.invalid-state>p{color:#9eb0c5;font-size:12px}
.form-label{color:#dce8f5}.optional{color:#8b9cb1}.form-input{background:#0b1522;border-color:#2a3c53;color:#f3f8ff}.form-input::placeholder{color:#687e96}.form-input:focus{border-color:#168eff;box-shadow:0 0 0 3px #1289ff24}.form-input[aria-invalid=true]{background:#251519;border-color:#dc7373}.input-wrap>.icon,.password-toggle{color:#87a0bb}.password-toggle[aria-pressed=true]{color:#39aaff}.form-error,.google-message{color:#ff9e9e}.form-options>a,.auth-switch a,.terms-label a{color:#5ebaff}.checkbox-label{color:#a9b9cc}.form-message{background:#2a161c;color:#ffb4b4;border:1px solid #703a47}.form-bottom{background:#0a121d;border-color:#233449}.minimal-legal{color:#8498ad}.minimal-legal a:hover{color:#56b6ff}.auth-switch{color:#a1b1c5}.auth-divider{color:#91a3b9}.auth-divider:before,.auth-divider:after{background:#27384d}.google-button{background:#111e2e;border-color:#34475e;color:#e9f3ff}.google-button:hover{background:#192b40;border-color:#4a8dcc}.google-legal,.verification-note{color:#849bb3}.google-legal a,.back-link{color:#69bcff}.password-strength{background:#0c1a29;border-color:#263b52}.strength-header{color:#9badc1}.strength-header strong{color:#c4dcf6}.strength-track i{background:#263c55}.requirements>span{color:#a6b7ca}.auth-notice{background:#102841;border-color:#285989;color:#c6e6ff}.verification-actions button{background:#122238;border-color:#2c4663;color:#eff7ff}.state-icon{background:#102b48;color:#59b7ff}.success-state h1,.invalid-state h1{color:#f6f9ff}
.auth-scene{min-height:650px;border:1px solid #183553;border-radius:22px;overflow:hidden;position:relative;display:flex;flex-direction:column;justify-content:space-between;background:radial-gradient(circle at 56% 42%,#0b3b78 0%,#071d3d 28%,#050c18 64%,#05080d 100%);box-shadow:inset 0 0 100px #071425,0 30px 90px #0008}
.auth-scene:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#040910b8,transparent 22%,transparent 48%,#040910 78%);pointer-events:none}
.scene-top,.scene-copy{position:relative;z-index:2}.scene-top{padding:34px 38px;display:flex;align-items:center;gap:10px;font-size:10px;letter-spacing:2px;color:#c5d8ef;font-weight:700}.scene-spark{color:#4cbaff;font-size:24px;line-height:0}.scene-index{margin-left:auto;color:#6895bf;font-size:9px}.scene-art{position:absolute;inset:3% -6% 14%;display:flex;align-items:center;justify-content:center;overflow:hidden}.scene-art img{display:block;width:100%;height:100%;object-fit:contain;filter:saturate(1.35) contrast(1.09) drop-shadow(0 0 42px #068fff88)}.scene-copy{padding:0 42px 36px}.scene-kicker{font-size:10px;letter-spacing:2px;font-weight:700;color:#62bcff;display:flex;align-items:center;gap:9px}.scene-kicker i{height:7px;width:7px;border-radius:50%;background:#198eff;box-shadow:0 0 12px #168eff}.scene-copy h2{font-size:clamp(55px,7vw,100px);letter-spacing:-.085em;line-height:.88;margin:19px 0 20px;font-weight:650;color:#fff}.scene-copy h2 em{font-style:normal;color:#1599ff}.scene-copy>p{max-width:370px;color:#b7c8dc;font-size:13px;line-height:1.6;margin:0 0 30px}.scene-rule{height:1px;background:linear-gradient(90deg,#458bc1,transparent);margin-bottom:22px}.scene-bottom{display:flex;justify-content:space-between;gap:16px;color:#8ea3bc;font-size:9px;line-height:1.5;letter-spacing:1.6px}.scene-bottom b{color:#45b1ff;font-size:17px}.auth-assurance{grid-column:1/-1;color:#8ca0b6;margin:2px 0 0}.auth-assurance>span{color:#4caeff}.preview-note{grid-column:1/-1;color:#91a6bc}.auth-page .privacy-banner{background:#101c2b;color:#e9f3ff;border-color:#2b4057}.auth-page .privacy-button.primary{background:#168eff}
.account-card{background:#0d1928;border-color:#273b52;box-shadow:0 10px 40px #0006;color:#eff6ff}.account-identity p,.account-card p{color:#a2b2c6}.profile-avatar{background:#12385e;color:#6bc0ff}.btn-secondary{background:#14273c;color:#d0e9ff;border-color:#34516c}.account-card input{background:#0a1522;color:#f5f9ff;border-color:#30435a}.account-card .status{background:#103b32;color:#72ddb7}.logout-button{background:#111d2b;border-color:#33465d;color:#c4d6e8}
@media(max-width:900px){.auth-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.auth-content{padding:32px 30px}.auth-scene{min-height:610px}.scene-copy{padding:0 28px 30px}.scene-copy h2{font-size:60px}.scene-top{padding:28px}}
@media(max-width:700px){.auth-topbar{width:calc(100% - 32px);padding:22px 0}.auth-layout{width:min(480px,calc(100% - 28px));display:block;margin:8px auto 40px}.auth-panel{border-radius:18px}.auth-content{padding:30px 25px}.auth-scene{display:none}.auth-assurance{margin:20px auto}.form-heading h1{font-size:32px}.account-layout{width:calc(100% - 28px)}}

/* Email verification */
.page-verification-pending .auth-panel{min-height:650px}
.page-verification-pending .form-heading{margin-bottom:25px}
.pending-flow{display:grid;gap:20px}
.pending-inbox{display:flex;align-items:flex-start;gap:15px;padding:18px;border:1px solid #294565;border-radius:14px;background:linear-gradient(135deg,#102c4c,#0c1b2d)}
.pending-icon{display:grid;place-items:center;flex:none;width:40px;height:40px;border-radius:12px;background:#164b7c;color:#66c4ff;font-size:24px;box-shadow:0 0 22px #0b87ff44}
.pending-label{display:block;margin:2px 0 6px;color:#63bcff;font-size:9px;font-weight:700;letter-spacing:1.7px}
.pending-inbox p{margin:0;color:#c5d5e7;font-size:12px;line-height:1.7}
.pending-inbox strong{color:#fff;overflow-wrap:anywhere}
.pending-form{display:grid;gap:11px}.pending-form .form-label,.pending-email-form .form-label{font-size:12px;font-weight:650}
.pending-code-input{height:64px!important;font-size:28px!important;letter-spacing:.35em;text-align:center;font-weight:700;font-variant-numeric:tabular-nums}
.pending-code-input::placeholder{color:#5b7895;opacity:1}
.pending-hint{margin:0 0 5px;color:#92a9c1;font-size:11px;line-height:1.6}
.pending-flow .btn-primary{display:flex;align-items:center;justify-content:center;gap:12px;min-height:48px}
.pending-message{min-height:21px;margin:0;color:#b6d0e8;font-size:12px;line-height:1.6}
.pending-message[data-tone="error"]{color:#ffabab}.pending-message[data-tone="success"]{color:#84e6b6}
.pending-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px 22px;padding-top:16px;border-top:1px solid #2b4058}
.pending-text-button{padding:5px 0;border:0;background:none;color:#69c2ff;font-size:12px;font-weight:600;text-align:left;cursor:pointer}
.pending-text-button:hover{text-decoration:underline;text-underline-offset:4px}.pending-text-button:disabled{opacity:.55;cursor:wait}
.pending-email-form{display:grid;gap:10px;margin-top:0;padding:20px;border:1px solid #294565;border-radius:14px;background:#0b1828}
.pending-email-form h2{margin:0;color:#f3f8ff;font-size:18px;letter-spacing:-.4px}.pending-email-form>p{margin:0 0 7px;color:#96abc1;font-size:11px;line-height:1.6}
.pending-email-form .form-input{width:100%;height:45px}.pending-email-form .form-label:not(:first-of-type){margin-top:6px}
.pending-form-actions{display:flex;align-items:center;gap:16px;margin-top:8px}.pending-form-actions .btn{flex:1}.pending-success-link{width:100%}
@media(max-width:600px){.pending-inbox{padding:15px}.pending-code-input{font-size:24px!important}.pending-form-actions{align-items:stretch;flex-direction:column}.pending-form-actions .btn{width:100%}}
.page-verify-email .verify-email-layout{display:block;width:min(520px,calc(100% - 28px));margin:55px auto}
.page-verify-email .auth-content{padding:44px}
.page-verify-email h1{font-size:clamp(30px,5vw,42px);letter-spacing:-1.8px;margin:10px 0 15px}
.page-verify-email .verify-email-message{color:#a6bdd4;font-size:13px;line-height:1.8}
.page-verify-email .verify-email-actions{margin:26px 0 14px}
.page-verify-email .verify-email-actions .btn{width:100%;justify-content:center}
@media(max-width:600px){.page-verify-email .verify-email-layout{margin:15px auto}.page-verify-email .auth-content{padding:30px 25px}}
.page-verification-pending .privacy-banner{left:auto;right:22px;width:min(430px,calc(100vw - 44px))}
@media(max-width:700px){.page-verification-pending .privacy-banner{position:relative;left:auto;right:auto;bottom:auto;width:min(480px,calc(100% - 28px));margin:0 auto 24px}}
