:root{--background:#ffffff;--foreground:#171717;--font-geist-sans:Arial,Helvetica,sans-serif;--font-geist-mono:Consolas,"Courier New",monospace}@media (prefers-color-scheme:dark){:root{--background:#0a0a0a;--foreground:#ededed}}html{height:100%}body,html{max-width:100vw;overflow-x:hidden}body{min-height:100%;display:flex;flex-direction:column;color:var(--foreground);background:var(--background);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box;padding:0;margin:0}a{color:inherit;text-decoration:none}@media (prefers-color-scheme:dark){html{color-scheme:dark}}.auth-wrapper{min-height:100vh;width:100%;display:flex;background:#090514;position:relative;overflow-x:hidden;font-family:Outfit,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.auth-promo-side{flex:1.2 1;position:relative;display:flex;flex-direction:column;justify-content:space-between;padding:60px;overflow:hidden;background:radial-gradient(circle at 20% 30%,#1e1b4b 0,#090514 100%);border-right:1px solid rgba(255,255,255,.05)}.auth-promo-bg{top:0;left:0;width:100%;height:100%;object-fit:cover;opacity:.15;filter:grayscale(100%) contrast(120%)}.auth-promo-bg,.auth-promo-glow{position:absolute;pointer-events:none}.auth-promo-glow{width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(212,175,55,.08) 0,rgba(9,5,20,0) 70%);top:-100px;left:-100px}.auth-promo-header .logo{font-size:28px;font-weight:700;color:#fff;text-decoration:none}.auth-promo-header .logo span{color:#d4af37}.auth-promo-content{z-index:2;max-width:520px;margin-top:auto;margin-bottom:auto}.auth-promo-tag{display:inline-block;background:rgba(212,175,55,.08);border:1px solid rgba(212,175,55,.2);color:#d4af37;padding:6px 14px;border-radius:50px;font-size:12px;font-weight:700;text-transform:uppercase;margin-bottom:24px;letter-spacing:1px}.auth-promo-title{font-size:40px;font-weight:800;line-height:1.2;color:#fff;margin-bottom:20px}.auth-promo-title span{background:linear-gradient(135deg,#fff 30%,#d4af37);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.auth-promo-features{display:flex;flex-direction:column;gap:16px;margin-top:32px}.promo-feature-item{display:flex;align-items:flex-start;gap:12px}.feature-check{color:#d4af37;font-size:18px;margin-top:2px}.feature-text{font-size:15px;color:#cbd5e1;line-height:1.5}.auth-promo-footer{z-index:2;font-size:13px;color:#64748b}.auth-form-side{flex:1 1;display:flex;justify-content:center;align-items:center;padding:40px 24px;position:relative;z-index:2}.auth-form-glow{position:absolute;width:400px;height:400px;border-radius:50%;background:radial-gradient(circle,rgba(168,85,247,.05) 0,rgba(9,5,20,0) 70%);bottom:-100px;right:-100px;pointer-events:none}.auth-card{width:100%;max-width:420px;gap:28px}.auth-card,.auth-header{display:flex;flex-direction:column}.auth-header{text-align:left;gap:8px}@media (max-width:1024px){.auth-promo-side{display:none}.auth-form-side{flex:1 1;background:radial-gradient(circle at 50% 50%,#1e1b4b 0,#090514 100%)}.auth-card{background:rgba(255,255,255,.02);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.06);border-radius:24px;padding:40px 24px;max-width:460px}.auth-header{align-items:center;text-align:center}}.auth-form{gap:20px}.auth-form,.input-group{display:flex;flex-direction:column}.input-group{gap:8px}.input-label{font-size:11px;font-weight:700;color:#94a3b8;text-transform:uppercase;letter-spacing:1px}.input-field{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);color:#fff;padding:14px 16px;border-radius:12px;font-family:inherit;font-size:15px;outline:none;transition:all .3s}.input-field:focus{border-color:#d4af37;background:rgba(255,255,255,.06);box-shadow:0 0 15px rgba(212,175,55,.15)}.auth-button{background:linear-gradient(135deg,#d4af37,#f59e0b);color:#090514;font-family:Outfit,sans-serif;font-weight:700;font-size:15px;padding:14px;border-radius:12px;border:none;cursor:pointer;transition:all .3s;text-align:center;box-shadow:0 4px 20px rgba(212,175,55,.2);margin-top:8px}.auth-button:hover{transform:translateY(-1px);box-shadow:0 6px 25px rgba(212,175,55,.35);filter:brightness(1.05)}.auth-submit-wrap{display:flex;flex-direction:column;gap:8px;width:100%}.auth-submit-wrap .auth-button{width:100%}.auth-button:disabled,.auth-button:disabled:hover{cursor:wait;transform:none;filter:none;opacity:.92}.auth-button-loading{display:inline-flex;align-items:center;justify-content:center;gap:9px}.auth-button-spinner{width:17px;height:17px;flex:0 0 17px;border:2px solid;border-right:2px solid transparent;border-radius:50%;animation:auth-button-spin .65s linear infinite}.auth-submit-hint{margin:0;color:var(--text-muted,#64748b);font-size:12px;line-height:1.45;text-align:center}@keyframes auth-button-spin{to{transform:rotate(1turn)}}.auth-footer{text-align:center;font-size:14px;color:#64748b;margin-top:10px}.auth-link{color:#d4af37;text-decoration:none;font-weight:600;transition:color .2s}.auth-link:hover{color:#fff}.error-message{background:rgba(239,68,68,.08);border:1px solid rgba(239,68,68,.2);color:#f87171;padding:12px;border-radius:10px;font-size:13px;text-align:center}.auth-modal-loading{display:grid;min-height:260px;place-items:center}.auth-modal-spinner{width:34px;height:34px;border:3px solid rgba(148,163,184,.3);border-top:3px solid var(--primary-color,#d4af37);border-radius:50%;animation:auth-modal-spin .7s linear infinite}@keyframes auth-modal-spin{to{transform:rotate(1turn)}}.auth-modal-close{-webkit-tap-highlight-color:transparent}.auth-modal-card .auth-card{gap:20px}.auth-modal-card .auth-logo{font-family:Outfit,sans-serif;font-size:24px;font-weight:900;color:var(--text-main,#0c1222);text-decoration:none;display:inline-flex;align-items:center;gap:2px;margin-bottom:4px}.auth-modal-card .auth-logo span{color:var(--primary-color)}.auth-modal-card .auth-title{font-size:28px;font-weight:800;color:var(--text-main,#0c1222);letter-spacing:-.5px}.auth-modal-card .auth-desc{font-size:14px;color:var(--text-muted,#475569);line-height:1.5}.auth-modal-card .input-label{color:var(--text-muted,#475569);font-size:11px;font-weight:700;letter-spacing:.5px}.auth-modal-card .input-field{background:rgba(0,0,0,.02);border:1px solid rgba(0,0,0,.08);color:var(--text-main,#0c1222);padding:12px 14px;font-size:14px;border-radius:10px}.auth-modal-card .input-field::placeholder{color:#94a3b8}.auth-modal-card .input-field:focus{border-color:var(--primary-color);background:#ffffff;box-shadow:0 0 0 3px var(--primary-glow,rgba(200,150,12,.15))}.google-button{display:flex;align-items:center;justify-content:center;gap:12px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);color:#ffffff;padding:12px;border-radius:12px;cursor:pointer;font-size:15px;font-weight:600;font-family:inherit;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%}.google-button:hover{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.2)}.oauth-providers-grid{display:flex;justify-content:center;gap:12px;margin-top:8px;width:100%}.social-icon-button{display:flex;align-items:center;justify-content:center;width:50px;height:50px;border-radius:12px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.03);color:#ffffff;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1)}.social-icon-button.yandex:hover{background:#fc3f1d;border-color:#fc3f1d;color:#ffffff}.social-icon-button.vk:hover{background:#0077ff;border-color:#0077ff;color:#ffffff}.social-icon-button.github:hover{background:#24292f;border-color:#24292f;color:#ffffff}.social-icon-button.apple:hover{background:#050505;border-color:#050505;color:#ffffff}.auth-modal-card .google-button{background:rgba(0,0,0,.02)!important;border:1px solid rgba(0,0,0,.08)!important;color:var(--text-main,#0c1222)!important;padding:12px!important;font-size:15px!important;border-radius:12px!important}.auth-modal-card .google-button:hover{background:rgba(0,0,0,.05)!important;border-color:rgba(0,0,0,.12)!important}.auth-modal-card .social-icon-button{background:rgba(0,0,0,.02)!important;border:1px solid rgba(0,0,0,.08)!important;color:var(--text-main,#0c1222)!important;width:50px!important;height:50px!important;border-radius:12px!important;display:flex!important;align-items:center!important;justify-content:center!important;cursor:pointer!important;transition:all .3s cubic-bezier(.4,0,.2,1)!important}.auth-modal-card .social-icon-button.google:hover{background:rgba(0,0,0,.05)!important;border-color:rgba(0,0,0,.12)!important}.auth-modal-card .divider-line{background:var(--border-color,rgba(0,0,0,.08))!important}.auth-modal-card .social-icon-button.yandex:hover{background:#fc3f1d!important;border-color:#fc3f1d!important;color:#ffffff!important}.auth-modal-card .social-icon-button.vk:hover{background:#0077ff!important;border-color:#0077ff!important;color:#ffffff!important}.auth-modal-card .social-icon-button.github:hover{background:#24292f!important;border-color:#24292f!important;color:#ffffff!important}.auth-modal-card .social-icon-button.apple:hover{background:#050505!important;border-color:#050505!important;color:#ffffff!important}.auth-modal-card .auth-button{background:var(--primary-gradient);color:#ffffff;font-size:14px;font-weight:700;padding:12px;border-radius:10px;box-shadow:0 4px 14px var(--primary-glow-heavy)}.auth-modal-card .auth-button:hover{transform:translateY(-1px);box-shadow:0 6px 18px var(--primary-glow-heavy)}.auth-modal-card .auth-link{color:var(--primary-color)}.auth-modal-card .auth-link:hover{color:var(--primary-dark)}.auth-modal-card .auth-footer{color:var(--text-muted,#475569);font-size:13px}.auth-modal-card .error-message{background:rgba(239,68,68,.05);border:1px solid rgba(239,68,68,.15);color:#dc2626;padding:10px;font-size:12px;border-radius:8px}@media (max-width:640px){.auth-modal-overlay{align-items:flex-start!important;padding:max(8px,env(safe-area-inset-top)) 8px max(8px,env(safe-area-inset-bottom))!important;overflow-y:auto!important;background:rgba(9,5,20,.72)!important}.auth-modal-card,.auth-modal-overlay{-webkit-backdrop-filter:none!important;backdrop-filter:none!important}.auth-modal-card{margin:auto 0!important;padding:34px 20px 24px!important;border-radius:20px!important;background:var(--card-bg,#ffffff)!important}.auth-modal-close{top:10px!important;right:10px!important;width:44px!important;height:44px!important;font-size:24px!important}}@media (prefers-reduced-motion:reduce){.auth-modal-spinner{animation-duration:1.4s}.auth-button-spinner{animation-duration:1.3s}}