/* Login and registration: compact forms, molecular visual, local assets only. */
body.auth-screen{background:radial-gradient(ellipse at 15% 20%,#e3edff,transparent 45%),radial-gradient(ellipse at 90% 85%,#e5f7f5,transparent 45%),#f5f7fc;min-height:100svh;display:flex;flex-direction:column}
.auth-screen .topbar{min-height:64px;padding:10px max(24px,calc((100vw - 1460px)/2));background:#ffffffd9;backdrop-filter:blur(16px);border-bottom:1px solid #dfe7f4}
.auth-screen .brand{font-size:21px;letter-spacing:-.7px}.auth-screen .brand-icon{color:#3469df}.auth-screen nav{gap:22px}.auth-screen nav a{font-size:13px}.auth-screen nav a:last-child{background:#132f60;color:#fff;padding:10px 16px;border-radius:10px}
.auth-screen .auth-layout{width:min(1320px,100%);max-width:1320px;grid-template-columns:1.08fr 1fr;gap:0;padding:0;margin:auto;align-items:stretch;position:relative;border-radius:28px;filter:drop-shadow(0 20px 35px #193f6b12)}
.auth-screen .auth-intro{border-radius:28px 0 0 28px;padding:32px 34px;min-height:620px;box-shadow:none;background:radial-gradient(ellipse at 90% 10%,#1f6471aa,transparent 45%),radial-gradient(ellipse at 30% 90%,#2c3d9255,transparent 60%),#0c1d3c;display:flex;flex-direction:column}
.auth-screen .auth-intro::after{content:'';inset:0;background-image:radial-gradient(#9bbff91f 1px,transparent 1px);background-size:23px 23px;mask-image:linear-gradient(130deg,black,transparent);z-index:-1}
.auth-screen .auth-intro .eyebrow{font-size:10px;letter-spacing:1.65px;color:#6fdbdf}
.auth-screen .auth-intro h1{font-size:clamp(27px,2.65vw,39px);letter-spacing:-1.1px;line-height:1.13;max-width:68%;margin:35px 0 16px;font-weight:800}
.auth-screen .auth-intro h1 em{font-style:normal;color:#7ee8dc}
.auth-screen .auth-intro>p{font-size:13px;line-height:1.7;max-width:85%;color:#b0c5e5;margin:0 0 24px}
.auth-screen .feature-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:auto;position:relative}
.auth-screen .feature-grid>div{display:grid;grid-template-columns:37px 1fr;grid-template-rows:auto auto;column-gap:10px;padding:12px;background:linear-gradient(130deg,#ffffff0b,#ffffff03);border:1px solid #ffffff13;border-radius:13px;transition:background .2s,transform .2s}
.auth-screen .feature-grid>div:hover{background:#ffffff12;transform:translateY(-2px)}
.auth-screen .feature-grid>div>span{grid-row:1/3;display:grid;place-items:center;margin:0;width:36px;height:38px;border-radius:11px;background:linear-gradient(140deg,#51d6ed24,#3477c513);box-shadow:inset 0 1px #ffffff1f,0 3px 8px #0002;color:#7ddfeb;transform:rotate(-5deg)}
.auth-screen .feature-grid svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.auth-screen .feature-grid>div:nth-child(3n+2)>span{color:#d1b3ff;background:linear-gradient(130deg,#ae80ff24,#5b43a815)}
.auth-screen .feature-grid>div:nth-child(3n)>span{color:#ffcda0;background:linear-gradient(130deg,#ffbd6024,#a85f4315)}
.auth-screen .feature-grid strong{font-size:12px;line-height:1.4;align-self:end;color:#f1f5fd}.auth-screen .feature-grid small{font-size:10px;color:#9cb1d1;margin-top:3px;line-height:1.4}
.auth-screen .intro-badges{margin-top:20px;gap:16px}.auth-screen .intro-badges span{font-size:10px;background:none;border:0;border-radius:0;padding:0;color:#c7d7ed}.auth-screen .intro-badges span::before{content:'✓';color:#70dfcd;margin-right:6px}
.auth-screen .form-card{border-radius:0 28px 28px 0;border:1px solid #e1e8f1;border-left:0;box-shadow:none;padding:30px 34px;background:#ffffffed;display:flex;flex-direction:column;justify-content:center;min-width:0}
.auth-screen .form-card>.eyebrow{font-size:10px;letter-spacing:1.7px;color:#3a72d9}.auth-screen .form-card h2{font-size:27px;letter-spacing:-.7px;margin:9px 0 4px;line-height:1.3}.auth-screen .form-card>p.muted{font-size:12px;margin:2px 0 0;line-height:1.6}
.auth-screen .google-form{margin-top:17px;gap:9px}.auth-screen .google-form .check{order:2;font-size:11px}.auth-screen .google-button{min-height:43px;padding:10px 14px;border-color:#d9e1ec;border-radius:11px;box-shadow:0 2px 4px #1e3a5f04;font-size:13px;font-weight:600}.auth-screen .google-button:hover{border-color:#83a7e5;background:#f8fbff}
.auth-screen .divider{margin-top:12px;font-size:10px}.auth-screen .stack{gap:12px;margin-top:15px}.auth-screen .registration-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px 13px}
.auth-screen .registration-grid>fieldset,.auth-screen .registration-grid>.check,.auth-screen .registration-grid>.primary{grid-column:1/-1}
.auth-screen .stack label{font-size:11px;gap:6px}.auth-screen input,.auth-screen select{min-height:40px;border-radius:10px;padding:9px 11px;font-size:13px;background:#f8faff;border-color:#dce4f0;transition:box-shadow .2s,border-color .2s}.auth-screen input:focus,.auth-screen select:focus{border-color:#689ce7;box-shadow:0 0 0 3px #3476df0b}
.auth-screen input::placeholder{color:#9aa9bf}.auth-screen .check{font-size:11px!important;color:#5b708e}.auth-screen .check input{width:15px;height:15px;min-height:0;padding:0}.auth-screen .country-picker{gap:7px}.auth-screen .country-picker legend{font-size:11px;margin-bottom:6px}.auth-screen #country-search{min-height:34px;padding:6px 10px;font-size:12px}.auth-screen .country-row{gap:10px}.auth-screen #country-flag{width:30px;height:21px;box-shadow:0 2px 5px #1e3a5f16}.auth-screen #country-status{display:none}.auth-screen .country-controls{display:grid;grid-template-columns:.85fr 1.15fr;gap:12px;align-items:center}
.auth-screen .password-row input{padding-right:77px}.auth-screen .show-password{font-size:10px;right:4px;top:4px;bottom:4px;padding:0 7px;border-radius:7px;background:#edf2fb;color:#3f68a8}.auth-screen .primary{font-size:13px;min-height:42px;border-radius:10px;padding:10px 18px;background:linear-gradient(110deg,#225bd1,#098aa8);box-shadow:0 5px 12px #2960bb1c}.auth-screen .switch{font-size:11px;margin-top:15px}.auth-screen .switch a{text-decoration:none}.auth-screen footer{font-size:11px;padding:12px 16px;color:#8493aa}.auth-screen .alert{position:relative;z-index:2;border-radius:16px;margin:0 0 12px;font-size:13px}.auth-screen .auth-layout:has(.alert){filter:none;margin:20px auto}
.molecule-art{position:absolute;width:160px;height:160px;right:30px;top:64px;pointer-events:none;perspective:500px;transform:rotate(-17deg)}
.molecule-art .atom-core{position:absolute;inset:57px;border-radius:50%;background:radial-gradient(circle at 30% 25%,#e1fffc,#62dacd 25%,#189bb5 60%,#164575);box-shadow:inset -5px -7px 12px #0c274987,0 0 35px #48d7df35;animation:atom-pulse 5s ease-in-out infinite}
.molecule-art .orbit{position:absolute;inset:11px;border:1px solid #76d9e067;border-radius:50%;transform:rotateX(65deg);box-shadow:0 0 8px #75dce018;animation:orbit-turn 18s linear infinite}
.molecule-art .orbit:nth-child(2){transform:rotate(60deg) rotateX(65deg);animation-name:orbit-two}.molecule-art .orbit:nth-child(3){transform:rotate(120deg) rotateX(65deg);animation-name:orbit-three}
.molecule-art .orbit::after{content:'';position:absolute;top:40%;left:-6px;width:13px;height:13px;border-radius:50%;background:radial-gradient(circle at 30% 25%,#fff,#78eeea 35%,#2690bc 75%);box-shadow:0 0 15px #81e2e7aa}
.molecule-art .orbit:nth-child(2)::after{background:radial-gradient(circle at 30% 25%,white,#d1adff 40%,#735ad2);box-shadow:0 0 15px #ab86ee88}.molecule-art .orbit:nth-child(3)::after{background:radial-gradient(circle at 30% 25%,white,#ffdb97 40%,#b27c3c);box-shadow:0 0 15px #e4bb7a88}
@keyframes atom-pulse{50%{transform:translateY(-5px);box-shadow:inset -5px -7px 12px #0c274987,0 0 45px #48d7df55}}
@keyframes orbit-turn{to{transform:rotate(360deg) rotateX(65deg)}}@keyframes orbit-two{from{transform:rotate(60deg) rotateX(65deg)}to{transform:rotate(420deg) rotateX(65deg)}}@keyframes orbit-three{from{transform:rotate(120deg) rotateX(65deg)}to{transform:rotate(480deg) rotateX(65deg)}}
@media(min-width:1100px) and (min-height:740px){.auth-screen .auth-layout{width:min(1280px,calc(100% - 64px))}.auth-screen .auth-intro{min-height:600px}}
@media(min-width:1100px) and (max-height:739px){.auth-screen .auth-layout{width:min(1240px,calc(100% - 48px));margin:16px auto}.auth-screen .auth-intro{min-height:565px;padding:25px 28px}.auth-screen .form-card{padding:23px 28px}.auth-screen .auth-intro h1{margin-top:24px}.auth-screen .feature-grid>div{padding:9px}.auth-screen .intro-badges{margin-top:15px}.auth-screen .molecule-art{top:48px}.auth-screen .google-form{margin-top:12px}.auth-screen .stack{gap:9px}.auth-screen footer{padding:8px}}
@media(max-width:1099px){.auth-screen .auth-layout{width:calc(100% - 40px);margin:24px auto;grid-template-columns:1fr 1.05fr}.auth-screen .auth-intro{padding:28px 24px}.auth-screen .form-card{padding:28px 24px}.auth-screen .feature-grid>div{grid-template-columns:1fr}.auth-screen .feature-grid>div>span{display:none}.auth-screen .molecule-art{width:120px;height:120px;right:14px;top:80px}.auth-screen .molecule-art .atom-core{inset:43px}.auth-screen .auth-intro h1{max-width:75%;font-size:31px}.auth-screen .country-controls{grid-template-columns:1fr}.auth-screen .registration-grid{grid-template-columns:1fr}.auth-screen .auth-intro{min-height:0}}
@media(max-width:720px){.auth-screen .topbar{padding:12px 18px;gap:10px}.auth-screen .topbar nav{gap:12px}.auth-screen .topbar nav a{font-size:11px}.auth-screen .topbar nav a:last-child{padding:8px 10px}.auth-screen .brand{font-size:18px}.auth-screen .topbar nav a:first-child{display:none}.auth-screen .auth-layout{width:calc(100% - 28px);margin:16px auto;grid-template-columns:1fr}.auth-screen .auth-intro{border-radius:22px 22px 0 0;padding:24px}.auth-screen .auth-intro h1{font-size:30px;margin:18px 0 10px;max-width:72%}.auth-screen .auth-intro>p{font-size:12px;margin-bottom:18px;max-width:85%}.auth-screen .molecule-art{width:110px;height:110px;right:16px;top:45px}.auth-screen .molecule-art .atom-core{inset:39px}.auth-screen .feature-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.auth-screen .feature-grid>div{padding:9px 6px;border-radius:9px;text-align:center}.auth-screen .feature-grid strong{font-size:9px}.auth-screen .feature-grid small{display:none}.auth-screen .intro-badges{margin-top:14px}.auth-screen .intro-badges span{font-size:9px}.auth-screen .form-card{border-radius:0 0 22px 22px;border-left:1px solid #e1e8f1;padding:26px 24px}.auth-screen .country-controls{grid-template-columns:.85fr 1.15fr}.auth-screen input,.auth-screen select{font-size:16px}.auth-screen .registration-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.auth-screen .registration-grid>label:nth-of-type(-n+2){grid-column:1/-1}.auth-screen .form-card h2{font-size:26px}.auth-screen .topbar .brand-icon{font-size:25px}}
@media(max-width:390px){.auth-screen .country-controls{grid-template-columns:1fr}.auth-screen .registration-grid{grid-template-columns:1fr}.auth-screen .auth-intro h1{font-size:26px}.auth-screen .molecule-art{right:8px;transform:scale(.85) rotate(-17deg)}.auth-screen .topbar nav{gap:10px}.auth-screen .topbar nav a:nth-child(2){display:none}}
@media(prefers-reduced-motion:reduce){.molecule-art *{animation:none!important}.auth-screen *{transition:none!important}}
/* One visible remember preference applies to both sign-in methods. */
.auth-screen .google-form .check{display:none!important}
