:root{--auth-bg:linear-gradient(120deg, #d0dff1 0%, #9cbae8 30%, #d4e8f7 65%, #aeccea 100%);--auth-card-bg:#ffffff73;--auth-card-border:#fff9;--auth-card-shadow:#0000000f;--auth-text-heading:#161b36;--auth-text-sub:#0a58b8;--auth-text-label:#4a5465;--auth-text-muted:#6b778b;--auth-social-bg:#e1e7f1b3;--auth-social-text:#0a58b8;--auth-divider-text:#6b778b;--auth-divider-line:#167af340;--auth-input-bg:#e1e7f199;--auth-input-text:#161b36;--auth-input-placeholder:#9ba5b3;--auth-input-focus-ring:#167af32e;--auth-primary-bg:#167af3;--auth-primary-text:#fff;--auth-error-text:#9a2f26;--auth-error-bg:#c0392b14;--auth-error-border:#c0392b33;--auth-error-badge-bg:#c0392b;--auth-error-badge-text:#fff;--auth-notice-text:#0a58b8;--auth-notice-bg:#167af314;--auth-notice-border:#167af333;--auth-notice-icon:#167af3;--auth-foot-text:#6b778b;--auth-foot-link:#0a58b8;--auth-code-border:#167af34d;--auth-code-border-focus:#167af3;--auth-code-bg:#e1e7f199;--auth-code-text:#161b36;--auth-code-focus-ring:#167af32e;--auth-resend-text:#167af3;--auth-resend-disabled:#9ba5b3;--auth-link:#167af3;--line-error-headline:#c0392b;--line-error-retry-bg:#06c755;--line-error-retry-text:#fff}@media (prefers-color-scheme:dark){.auth-stage{--auth-bg:linear-gradient(120deg, #12101b 0%, #151420 30%, #12171a 65%, #10131a 100%);--auth-card-bg:#1b212a;--auth-card-border:#2a323c;--auth-card-shadow:#0000004d;--auth-text-heading:#f1f5f9;--auth-text-sub:#b6bec8;--auth-text-label:#9aa4b2;--auth-text-muted:#7c8794;--auth-social-bg:#232a33;--auth-social-text:#d7dce2;--auth-divider-text:#7c8794;--auth-divider-line:#2a323c;--auth-input-bg:#232a33;--auth-input-text:#f1f5f9;--auth-input-placeholder:#6b7280;--auth-input-focus-ring:#6da2e340;--auth-primary-bg:#6da2e3;--auth-primary-text:#10131a;--auth-error-text:#f87171;--auth-error-bg:#f871711a;--auth-error-border:#f871714d;--auth-error-badge-bg:#f87171;--auth-error-badge-text:#1b212a;--auth-notice-text:#b6bec8;--auth-notice-bg:#6da2e31f;--auth-notice-border:#6da2e34d;--auth-notice-icon:#6da2e3;--auth-foot-text:#7c8794;--auth-foot-link:#d7dce2;--auth-code-border:#2a323c;--auth-code-border-focus:#6da2e3;--auth-code-bg:#232a33;--auth-code-text:#f1f5f9;--auth-code-focus-ring:#6da2e340;--auth-resend-text:#6da2e3;--auth-resend-disabled:#6b7280;--auth-link:#6da2e3;--line-error-headline:#f87171}}.auth-stage{box-sizing:border-box;background:var(--auth-bg);justify-content:center;align-items:center;min-height:100dvh;padding:24px 12px;display:flex}.auth-card{background:var(--auth-card-bg);-webkit-backdrop-filter:blur(6px);border:1px solid var(--auth-card-border);width:100%;max-width:420px;box-shadow:0 10px 30px var(--auth-card-shadow);box-sizing:border-box;border-radius:20px;flex-direction:column;align-items:center;padding:32px 28px 28px;display:flex}.auth-card-loading{min-height:220px;box-shadow:none;-webkit-backdrop-filter:none;background:0 0;border:none;justify-content:center;align-items:center;gap:16px}.auth-logo{object-fit:contain;width:180px;height:180px;margin-bottom:-4px;display:block}.auth-title{color:var(--auth-text-heading);text-align:center;margin:4px 0 6px;font-size:19px;font-weight:700}.auth-sub{color:var(--auth-text-sub);text-align:center;margin:0 0 22px;font-size:14px;line-height:1.7}.auth-social{flex-direction:column;gap:10px;width:100%;display:flex}.auth-btn-social{background:var(--auth-social-bg);width:100%;height:44px;color:var(--auth-social-text);cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;gap:8px;font-size:13.5px;font-weight:500;transition:opacity .15s;display:flex}.auth-btn-social:hover:not(:disabled){opacity:.85}.auth-btn-social:disabled{opacity:.6;cursor:not-allowed}.auth-btn-social svg{flex:none;display:block}.auth-divider{width:100%;color:var(--auth-divider-text);align-items:center;gap:10px;margin:16px 0;font-size:11.5px;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--auth-divider-line);flex:1;height:1px}.auth-form{flex-direction:column;gap:12px;width:100%;display:flex}.auth-field{flex-direction:column;gap:5px;display:flex}.auth-field label{color:var(--auth-text-label);font-size:11.5px;font-weight:500}.auth-field input{box-sizing:border-box;width:100%;height:42px;color:var(--auth-input-text);background:var(--auth-input-bg);border:none;border-radius:12px;outline:none;padding:0 14px;font-family:inherit;font-size:13.5px;transition:box-shadow .15s}.auth-field input:focus{box-shadow:0 0 0 3px var(--auth-input-focus-ring)}.auth-field input::placeholder{color:var(--auth-input-placeholder)}.auth-primary{background:var(--auth-primary-bg);width:100%;height:44px;color:var(--auth-primary-text);cursor:pointer;border:none;border-radius:12px;margin-top:2px;font-size:14px;font-weight:600;transition:opacity .15s}.auth-primary:hover:not(:disabled){opacity:.88}.auth-primary:disabled{opacity:.6;cursor:not-allowed}.auth-error{color:var(--auth-error-text);background:var(--auth-error-bg);border:1px solid var(--auth-error-border);border-radius:10px;align-items:flex-start;gap:7px;margin:0;padding:10px 12px;font-size:12.5px;line-height:1.6;display:flex}.auth-notice{color:var(--auth-notice-text);background:var(--auth-notice-bg);border:1px solid var(--auth-notice-border);box-sizing:border-box;border-radius:10px;align-items:flex-start;gap:7px;width:100%;margin:0 0 18px;padding:10px 12px;font-size:12.5px;line-height:1.6;display:flex}.auth-notice svg{color:var(--auth-notice-icon);flex:none;margin-top:1px}.auth-error:before{content:"!";background:var(--auth-error-badge-bg);width:15px;height:15px;color:var(--auth-error-badge-text);text-align:center;border-radius:50%;flex:none;margin-top:1px;font-size:10.5px;font-weight:700;line-height:15px}.auth-foot{color:var(--auth-foot-text);text-align:center;margin:18px 0 0;font-size:12.5px}.auth-foot a{color:var(--auth-foot-link);font-weight:600;text-decoration:none}.auth-foot a:hover{text-decoration:underline}.line-auth-error{text-align:left;align-items:stretch}.line-auth-error-title{color:var(--auth-text-heading);margin:0 0 14px;font-size:16px;font-weight:700}.line-auth-error-headline{color:var(--line-error-headline);margin:0 0 12px;font-size:14px;font-weight:700}.line-auth-error-body{color:var(--auth-text-sub);margin:0 0 20px;font-size:13px;line-height:1.7}.line-auth-error-retry-btn{background:var(--line-error-retry-bg);width:100%;height:44px;color:var(--line-error-retry-text);cursor:pointer;border:none;border-radius:12px;font-size:14px;font-weight:600;transition:opacity .15s}.line-auth-error-retry-btn:hover{opacity:.88}.line-auth-error-help{color:var(--auth-text-muted);margin:18px 0 0;font-size:12px;line-height:1.7}.line-auth-error-help a{color:var(--auth-foot-link);margin-left:4px;font-weight:600;text-decoration:none}.line-auth-error-help a:hover{text-decoration:underline}.auth-code-row{gap:8px;display:flex}.auth-code-box{aspect-ratio:1;border:1.5px solid var(--auth-code-border);text-align:center;min-width:0;color:var(--auth-code-text);background:var(--auth-code-bg);border-radius:12px;outline:none;flex:1 1 0;font-family:inherit;font-size:19px;font-weight:600;transition:box-shadow .15s,border-color .15s}.auth-code-box:focus{border-color:var(--auth-code-border-focus);box-shadow:0 0 0 3px var(--auth-code-focus-ring)}.auth-code-box:disabled{opacity:.6}.auth-resend-row{justify-content:center;margin-top:2px;display:flex}.auth-resend-btn{color:var(--auth-resend-text);cursor:pointer;background:0 0;border:none;padding:4px 2px;font-family:inherit;font-size:12.5px;font-weight:600}.auth-resend-btn:disabled{color:var(--auth-resend-disabled);cursor:default}.auth-resend-btn:hover:not(:disabled){text-decoration:underline}.auth-resend-message{color:var(--auth-text-sub);text-align:center;margin:-4px 0 0;font-size:12px}.auth-field-label-row{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.auth-link-btn{color:var(--auth-link);cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit;font-weight:600}.auth-link-btn:hover{text-decoration:underline}.auth-link-btn-inline{font-size:11.5px;font-weight:500}
