*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--font-display: "Syne", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-body: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--bg-deep: #edeef4;--bg: #f4f5fa;--surface: #ffffff;--input: #eef0f6;--heading: #0a0f1e;--body: #2d3748;--secondary: #3f4e63;--muted: #64748b;--faint: #b0bac8;--border: rgba(15, 23, 42, .09);--border-strong: rgba(15, 23, 42, .14);--border-focus: rgba(99, 102, 241, .55);--accent: #4f46e5;--accent-strong: #4338ca;--indigo: #6366f1;--violet: #a855f7;--cyan: #06b6d4;--btn-ink: #0a0f1e;--btn-ink-text: #f4f5fa;--error: #b91c1c;--error-bg: rgba(220, 38, 38, .07);--error-border: rgba(220, 38, 38, .22);--glass-shadow: 0 1px 3px rgba(15, 23, 42, .05), 0 8px 32px -8px rgba(15, 23, 42, .1)}html[data-theme=dark],html.dark{--bg-deep: #050508;--bg: #0a0a12;--surface: rgba(255, 255, 255, .03);--input: rgba(255, 255, 255, .03);--heading: #f0f0ff;--body: #c8c8da;--secondary: #9090a8;--muted: #6b6b80;--faint: #4a4a5a;--border: rgba(255, 255, 255, .08);--border-strong: rgba(255, 255, 255, .14);--border-focus: rgba(129, 140, 248, .6);--accent: #818cf8;--accent-strong: #a5b0ff;--btn-ink: #f0f0ff;--btn-ink-text: #060610;--error: #fca5a5;--error-bg: rgba(239, 68, 68, .1);--error-border: rgba(239, 68, 68, .2);--glass-shadow: 0 0 0 1px rgba(255, 255, 255, .03), 0 2px 24px -6px rgba(0, 0, 0, .55)}html,body,#root{height:100%}body{font-family:var(--font-body);background:var(--bg);color:var(--body);display:flex;flex-direction:column;overflow:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::selection{background:#6366f138}.auth-page{flex:1;display:grid;grid-template-columns:1fr;min-height:0;height:100%;width:100%}@media (min-width: 1024px){.auth-page{grid-template-columns:1.05fr 1fr}}.auth-brand-panel{display:none;position:relative;background:radial-gradient(ellipse 120% 90% at 15% 15%,#14142a,#0a0a16 45%,#050509);overflow:hidden;padding:52px;justify-content:space-between;align-items:flex-start;flex-direction:column}@media (min-width: 1024px){.auth-brand-panel{display:flex}}.auth-brand-panel:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 70% 55% at 18% 88%,rgba(99,102,241,.22) 0%,transparent 68%),radial-gradient(ellipse 55% 45% at 82% 12%,rgba(168,85,247,.16) 0%,transparent 62%),radial-gradient(ellipse 40% 40% at 95% 95%,rgba(6,182,212,.1) 0%,transparent 60%);pointer-events:none}.grid-pattern{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:52px 52px;mask-image:radial-gradient(ellipse 75% 65% at 40% 50%,black,transparent);-webkit-mask-image:radial-gradient(ellipse 75% 65% at 40% 50%,black,transparent)}.auth-brand-panel .brand-logo{position:relative;z-index:1;font-family:"Helvetica Neue",var(--font-display);font-size:22px;font-weight:600;letter-spacing:-.04em;color:#f5f2ec;text-decoration:none;transition:opacity .2s}.auth-brand-panel .brand-logo:hover{opacity:.75}.auth-brand-panel .brand-logo .dot{color:#7eb6ff}.brand-copy{position:relative;z-index:1;max-width:400px}.auth-brand-panel .brand-headline{font-family:var(--font-display);font-size:42px;font-weight:700;line-height:1.08;letter-spacing:-.02em;color:#f4f4ff}.auth-brand-panel .brand-headline .grad{background:linear-gradient(115deg,#818cf8,#a855f7 48%,#06b6d4);background-size:200% 200%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:grad-shift 7s ease-in-out infinite}@keyframes grad-shift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.auth-brand-panel .brand-sub{font-size:16px;color:#b6b6cc;margin-top:18px;line-height:1.6}.auth-form-panel{display:flex;flex-direction:column;position:relative;min-height:0;height:100%;overflow-y:auto;padding:20px 24px 32px}.auth-topbar{flex:none;display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;max-width:520px;margin:0 auto;padding:4px 0 8px}.auth-form-container{width:100%;max-width:400px;margin:0 auto;padding-top:44px}@media (min-width: 1024px){.auth-form-panel{padding:24px 40px}.auth-form-container{margin:auto;padding-top:0;padding-bottom:40px}}.back-link{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:500;color:var(--muted);text-decoration:none;padding:7px 12px 7px 9px;border-radius:9999px;border:1px solid transparent;transition:color .18s,border-color .18s,background .18s}.back-link:hover{color:var(--heading);border-color:var(--border);background:var(--surface)}.back-link svg{transition:transform .18s}.back-link:hover svg{transform:translate(-2px)}.lang-switch{position:relative}.lang-trigger{display:inline-flex;align-items:center;gap:7px;padding:5px 9px 5px 6px;border-radius:9999px;border:1px solid var(--border);background:var(--surface);color:var(--secondary);font-family:var(--font-body);font-size:12px;font-weight:600;cursor:pointer;transition:color .18s,border-color .18s}.lang-trigger:hover{color:var(--heading);border-color:var(--border-strong)}.lang-code{text-transform:uppercase;letter-spacing:.04em}.lang-caret{transition:transform .2s}.lang-caret.open{transform:rotate(180deg)}.flag-circle{border-radius:9999px;box-shadow:0 0 0 1px var(--border);flex:none}.lang-menu{position:absolute;right:0;top:calc(100% + 8px);min-width:160px;list-style:none;padding:6px;border-radius:14px;border:1px solid var(--border);background:var(--surface);box-shadow:var(--glass-shadow);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);z-index:50}.lang-option{width:100%;display:flex;align-items:center;gap:10px;padding:8px 10px;border:none;background:none;border-radius:9px;font-family:var(--font-body);font-size:14px;color:var(--secondary);cursor:pointer;transition:background .15s,color .15s}.lang-option:hover{background:var(--input);color:var(--heading)}.lang-option.active{color:var(--heading);font-weight:600}.lang-option span{flex:1;text-align:left}.lang-check{color:var(--accent)}.auth-form-header{margin-bottom:30px}.auth-form-header .logo-mobile{font-family:"Helvetica Neue",var(--font-display);font-size:20px;font-weight:600;letter-spacing:-.04em;color:var(--heading);margin-bottom:26px}.auth-form-header .logo-mobile .dot{color:#7eb6ff}@media (min-width: 1024px){.auth-form-header .logo-mobile{display:none}}.auth-form-header h1{font-family:var(--font-display);font-size:28px;font-weight:700;letter-spacing:-.02em;color:var(--heading);line-height:1.15}.auth-form-header p{font-size:14.5px;color:var(--muted);margin-top:8px;line-height:1.5}.auth-form-panel a:not(.btn-primary):not(.btn-ghost-pill){color:var(--accent);text-decoration:none}.auth-form-panel a:not(.btn-primary):not(.btn-ghost-pill):visited{color:var(--accent)}.auth-form-panel a:not(.btn-primary):not(.btn-ghost-pill):hover{color:var(--accent-strong)}.btn-google,.btn-primary,.btn-ghost-pill{width:100%;height:46px;border-radius:9999px;font-family:var(--font-body);font-size:14.5px;font-weight:600;cursor:pointer;text-decoration:none;display:flex;align-items:center;justify-content:center;gap:10px;transition:transform .12s,box-shadow .25s,background .2s,border-color .2s,color .2s}.btn-google:active,.btn-primary:active,.btn-ghost-pill:active{transform:scale(.985)}.btn-google{border:1px solid var(--border-strong);background:var(--surface);color:var(--heading);font-weight:500}.btn-google:hover{border-color:var(--accent);background:var(--surface)}.btn-primary{position:relative;border:none;background:var(--btn-ink);color:var(--btn-ink-text)}.btn-primary:hover{box-shadow:0 8px 28px -8px #6366f18c,0 2px 8px #0000001f;transform:translateY(-1px)}.btn-primary:before{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:inherit;padding:2px;background:conic-gradient(from var(--beam-angle, 0deg),transparent 0%,transparent 58%,var(--indigo) 74%,var(--violet) 84%,var(--cyan) 92%,transparent 98%);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;opacity:0;transition:opacity .35s;animation:beam-rotate 2.6s linear infinite;pointer-events:none}.btn-primary:hover:before,.btn-primary:focus-visible:before{opacity:1}.btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.btn-primary:disabled:before{opacity:0}@property --beam-angle{syntax: "<angle>"; initial-value: 0deg; inherits: false;}@keyframes beam-rotate{to{--beam-angle: 360deg}}.btn-ghost-pill{border:1px solid var(--border-strong);background:transparent;color:var(--heading)}.btn-ghost-pill:hover{border-color:var(--accent);color:var(--accent-strong);background:var(--surface)}.divider{display:flex;align-items:center;gap:16px;margin:22px 0;font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.divider:before,.divider:after{content:"";flex:1;height:1px;background:var(--border)}.field{margin-bottom:18px}.field label{display:block;font-size:13px;font-weight:500;color:var(--secondary);margin-bottom:7px}.field input{width:100%;height:46px;border-radius:12px;border:1px solid var(--border);background:var(--input);color:var(--heading);font-family:var(--font-body);font-size:16px;padding:0 14px;outline:none;transition:border-color .2s,box-shadow .2s,background .2s}.field input:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px #6366f124}.field input::placeholder{color:var(--muted)}.field-with-link{display:flex;flex-wrap:wrap;align-items:baseline}.field-with-link label{order:0;margin-right:auto}.field-with-link .field-link{order:0;margin-bottom:7px}.field-with-link input{order:1;width:100%}.field-link{font-size:12.5px;font-weight:500;color:var(--accent);text-decoration:none}.field-link:hover{text-decoration:underline;text-underline-offset:2px}.field-hint-error{margin-top:6px;font-size:12.5px;color:var(--error)}.consent-field{display:flex;align-items:flex-start;gap:10px;margin:6px 0 20px;font-size:13px;line-height:1.5;color:var(--secondary)}.consent-field input[type=checkbox]{flex-shrink:0;width:16px;height:16px;margin-top:2px;accent-color:var(--indigo);cursor:pointer}.consent-field a{text-decoration:underline;text-underline-offset:2px}.auth-alt{margin-top:24px;padding-top:22px;border-top:1px solid var(--border);text-align:center}.auth-alt-label{display:block;font-size:13px;color:var(--muted);margin-bottom:12px}.pending-banner{text-align:center;padding:12px 0}.pending-banner .pending-icon{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,#6366f12e,#a855f724);color:var(--accent);margin-bottom:18px}.pending-banner h2{font-family:var(--font-display);font-size:21px;font-weight:700;letter-spacing:-.01em;color:var(--heading);margin-bottom:12px}.pending-banner p{font-size:14px;line-height:1.6;color:var(--secondary)}.pending-banner p+p{margin-top:8px}.pending-banner .auth-alt{margin-top:26px}.error-banner{background:var(--error-bg);border:1px solid var(--error-border);border-radius:12px;padding:11px 14px;margin-top:16px;font-size:13px;color:var(--error);display:flex;align-items:center;gap:8px}.error-banner svg{flex-shrink:0}.auth-checking{display:flex;align-items:center;justify-content:center;min-height:200px}@keyframes spin{to{transform:rotate(360deg)}}.spinner{display:inline-block;width:18px;height:18px;border:2px solid color-mix(in srgb,currentColor 30%,transparent);border-top-color:currentColor;border-radius:50%;animation:spin .6s linear infinite;vertical-align:middle}.btn-primary .spinner{color:var(--btn-ink-text)}.auth-footer{text-align:center;margin-top:28px;font-size:12px;color:var(--muted)}@media (prefers-reduced-motion: reduce){.btn-primary:before{animation:none}.auth-brand-panel .brand-headline .grad{animation:none}.btn-google,.btn-primary,.btn-ghost-pill,.back-link,.lang-trigger{transition:none}}
