.portal-auth-page[data-v-5fa95a39]{box-sizing:border-box;display:flex;justify-content:center;max-width:100%;padding:12px 16px 36px;width:100%}.portal-auth-container[data-v-5fa95a39]{margin:0 auto;max-width:960px;width:100%}.portal-auth-card[data-v-5fa95a39]{--card-bg:#fff;--border-color:#e2e8f0;--text-color:#0f172a;--text-secondary:#64748b;--bg-input:#f8fafc;--bg-hover:#f1f5f9;border:1px solid var(--border-color,#e2e8f0);border-radius:20px;box-shadow:0 10px 30px -5px #0000000d,0 20px 25px -5px #00000008;flex-direction:column;overflow:hidden}.portal-auth-card[data-v-5fa95a39],.portal-auth-tab-bar[data-v-5fa95a39]{background:var(--card-bg,#fff);display:flex}.portal-auth-tab-bar[data-v-5fa95a39]{border-bottom:1px solid var(--border-color,#f1f5f9);justify-content:center;padding:16px 24px 12px}.portal-auth-segmented[data-v-5fa95a39]{align-items:center;background:var(--bg-hover,#f1f5f9);border-radius:14px;display:flex;gap:4px;max-width:360px;padding:4px;width:100%}.segmented-btn[data-v-5fa95a39]{align-items:center;background:transparent;border:none;border-radius:10px;color:var(--text-secondary,#64748b);cursor:pointer;display:flex;flex:1;font-size:14px;font-weight:600;gap:8px;justify-content:center;padding:10px 16px;transition:all .2s cubic-bezier(.4,0,.2,1)}.segmented-btn[data-v-5fa95a39]:hover{color:var(--text-color,#0f172a)}.segmented-btn.active[data-v-5fa95a39]{background:var(--card-bg,#fff);box-shadow:0 2px 8px #00000014;color:#8b5cf6}.portal-auth-grid[data-v-5fa95a39]{display:grid;grid-template-columns:1fr 1.15fr;min-height:520px}.portal-auth-side-banner[data-v-5fa95a39]{background:linear-gradient(160deg,#8b5cf60a,#3b82f60d);border-right:1px solid var(--border-color,#e2e8f0);display:flex;flex-direction:column;justify-content:space-between;padding:36px 30px}.banner-top-badge[data-v-5fa95a39]{align-items:center;background:#f59e0b1f;border-radius:9999px;color:#d97706;display:inline-flex;font-size:12px;font-weight:700;gap:6px;padding:6px 14px;width:-moz-fit-content;width:fit-content}.banner-media[data-v-5fa95a39]{align-items:center;display:flex;justify-content:center;padding:20px 0}.banner-img[data-v-5fa95a39]{animation:float-5fa95a39 4s ease-in-out infinite;filter:drop-shadow(0 12px 24px rgba(139,92,246,.25));height:auto;max-width:195px;-o-object-fit:contain;object-fit:contain}@keyframes float-5fa95a39{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.banner-intro h3[data-v-5fa95a39]{color:var(--text-color,#0f172a);font-size:17px;font-weight:800;letter-spacing:-.01em;margin:0 0 6px}.banner-intro p[data-v-5fa95a39]{color:var(--text-secondary,#64748b);font-size:13px;line-height:1.5;margin:0 0 16px}.banner-feature-list[data-v-5fa95a39]{display:flex;flex-direction:column;gap:12px;list-style:none;margin:0;padding:0}.banner-feature-item[data-v-5fa95a39]{align-items:center;background:var(--card-bg,#fff);border:1px solid var(--border-color,#e2e8f0);border-radius:12px;box-shadow:0 2px 6px #00000005;display:flex;gap:12px;padding:10px 14px;transition:transform .2s ease,box-shadow .2s ease}.banner-feature-item[data-v-5fa95a39]:hover{box-shadow:0 4px 12px #0000000d;transform:translateY(-1px)}.feature-icon[data-v-5fa95a39]{align-items:center;border-radius:10px;display:flex;flex-shrink:0;font-size:16px;height:36px;justify-content:center;width:36px}.feature-icon.icon-blue[data-v-5fa95a39]{background:#3b82f61f;color:#3b82f6}.feature-icon.icon-purple[data-v-5fa95a39]{background:#8b5cf61f;color:#8b5cf6}.feature-icon.icon-amber[data-v-5fa95a39]{background:#f59e0b1f;color:#f59e0b}.feature-text[data-v-5fa95a39]{display:flex;flex-direction:column}.feature-text strong[data-v-5fa95a39]{color:var(--text-color,#0f172a);font-size:13px;font-weight:700}.feature-text span[data-v-5fa95a39]{color:var(--text-secondary,#64748b);font-size:11.5px}.portal-auth-form-wrap[data-v-5fa95a39]{display:flex;flex-direction:column;justify-content:center;padding:36px 38px}.form-title-group[data-v-5fa95a39]{margin-bottom:22px}.form-title-group h2[data-v-5fa95a39]{color:var(--text-color,#0f172a);font-size:24px;font-weight:800;letter-spacing:-.02em;margin:0 0 6px}.form-title-group p[data-v-5fa95a39]{color:var(--text-secondary,#64748b);font-size:13.5px;margin:0}.auth-alert-box[data-v-5fa95a39]{align-items:center;background:#ef44441a;border:1px solid rgba(239,68,68,.25);border-radius:12px;color:#ef4444;display:flex;font-size:13px;gap:10px;margin-bottom:20px;padding:12px 16px}.auth-fields[data-v-5fa95a39]{display:flex;flex-direction:column;gap:16px}.fields-row-2[data-v-5fa95a39]{display:grid;gap:12px;grid-template-columns:1fr 1fr}.field-group[data-v-5fa95a39]{display:flex;flex-direction:column;gap:6px}.field-label[data-v-5fa95a39]{color:var(--text-color,#0f172a);font-size:13px;font-weight:600}.field-label.text-center[data-v-5fa95a39]{text-align:center}.field-label-row[data-v-5fa95a39]{align-items:center;display:flex;justify-content:space-between}.forgot-link[data-v-5fa95a39]{color:#8b5cf6;font-size:12.5px;font-weight:600;text-decoration:none;transition:color .15s ease}.forgot-link[data-v-5fa95a39]:hover{color:#7c3aed;text-decoration:underline}.input-shell[data-v-5fa95a39]{align-items:center;background:var(--bg-input,#f8fafc);border:1px solid var(--border-color,#cbd5e1);border-radius:12px;box-sizing:border-box;display:flex;height:46px;position:relative;transition:all .2s cubic-bezier(.4,0,.2,1)}.input-shell[data-v-5fa95a39]:focus-within{background:var(--card-bg,#fff)!important;border-color:#8b5cf6!important;box-shadow:0 0 0 3.5px #8b5cf62e!important}.field-icon[data-v-5fa95a39]{color:var(--text-secondary,#94a3b8);font-size:15px;left:14px;pointer-events:none;position:absolute}.field-input[data-v-5fa95a39]{background:transparent;border:none;box-sizing:border-box;color:var(--text-color,#0f172a);font-size:14px;height:100%;outline:none;padding:0 14px 0 40px;width:100%}.field-input[data-v-5fa95a39]::-moz-placeholder{color:var(--text-secondary,#94a3b8)}.field-input[data-v-5fa95a39]::placeholder{color:var(--text-secondary,#94a3b8)}.pwd-toggle-btn[data-v-5fa95a39]{align-items:center;background:transparent;border:none;color:var(--text-secondary,#94a3b8);cursor:pointer;display:flex;height:100%;justify-content:center;padding:0 14px;transition:color .15s ease}.pwd-toggle-btn[data-v-5fa95a39]:hover{color:var(--text-color,#0f172a)}.email-input-group[data-v-5fa95a39]{display:flex;gap:8px;width:100%}.email-input-group .input-shell[data-v-5fa95a39]{flex:1;min-width:0}.gen-email-btn[data-v-5fa95a39]{align-items:center;background:#8b5cf61a;border:1px solid rgba(139,92,246,.25);border-radius:12px;color:#8b5cf6;cursor:pointer;display:flex;font-size:12.5px;font-weight:700;gap:6px;height:46px;padding:0 14px;transition:all .2s ease;white-space:nowrap}.gen-email-btn[data-v-5fa95a39]:hover{background:#8b5cf633;transform:translateY(-1px)}.agree-terms-check[data-v-5fa95a39]{align-items:flex-start;color:var(--text-secondary,#64748b);cursor:pointer;display:flex;font-size:12.5px;gap:8px;line-height:1.4;margin:4px 0}.agree-terms-check input[data-v-5fa95a39]{accent-color:#8b5cf6;cursor:pointer;margin-top:2px}.agree-terms-check a[data-v-5fa95a39]{color:#8b5cf6;font-weight:600;text-decoration:none}.agree-terms-check a[data-v-5fa95a39]:hover{text-decoration:underline}.submit-btn[data-v-5fa95a39]{align-items:center;border:none;border-radius:12px;cursor:pointer;display:flex;font-size:15px;font-weight:700;gap:9px;height:46px;justify-content:center;margin-top:6px;transition:all .2s cubic-bezier(.4,0,.2,1);width:100%}.submit-btn[data-v-5fa95a39]:disabled{cursor:not-allowed;opacity:.65;transform:none!important}.submit-btn[data-v-5fa95a39]:not(:disabled):hover{transform:translateY(-2px)}.submit-btn--login[data-v-5fa95a39]{background-color:#8b5cf6!important;background-image:linear-gradient(135deg,#8b5cf6,#6366f1)!important;box-shadow:0 6px 18px #8b5cf659!important;color:#fff!important}.submit-btn--login[data-v-5fa95a39]:not(:disabled):hover{box-shadow:0 8px 24px #8b5cf673!important}.submit-btn--register[data-v-5fa95a39]{background-color:#10b981!important;background-image:linear-gradient(135deg,#10b981,#059669)!important;box-shadow:0 6px 18px #10b98159!important;color:#fff!important}.submit-btn--register[data-v-5fa95a39]:not(:disabled):hover{box-shadow:0 8px 24px #10b98173!important}.social-divider[data-v-5fa95a39]{align-items:center;display:flex;gap:14px;margin:6px 0}.social-divider[data-v-5fa95a39]:after,.social-divider[data-v-5fa95a39]:before{background:var(--border-color,#e2e8f0);content:"";flex:1;height:1px}.social-divider span[data-v-5fa95a39]{color:var(--text-secondary,#94a3b8);font-size:12px;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.google-auth-btn[data-v-5fa95a39]{align-items:center;background:var(--card-bg,#fff);border:1px solid var(--border-color,#cbd5e1);border-radius:12px;color:var(--text-color,#0f172a);cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:10px;height:44px;justify-content:center;transition:all .2s ease}.google-auth-btn[data-v-5fa95a39]:hover{background:var(--bg-hover,#f8fafc);border-color:#94a3b8;transform:translateY(-1px)}.google-badge[data-v-5fa95a39]{background:linear-gradient(45deg,#4285f4,#ea4335,#fbbc05,#34a853);-webkit-background-clip:text;font-size:16px;font-weight:800;-webkit-text-fill-color:transparent}.auth-security-badges[data-v-5fa95a39]{color:var(--text-secondary,#94a3b8);display:flex;font-size:12px;gap:20px;justify-content:center;margin-top:8px}.auth-security-badges span[data-v-5fa95a39]{align-items:center;display:flex;gap:6px}.switch-mode-prompt[data-v-5fa95a39]{color:var(--text-secondary,#64748b);font-size:13px;margin-top:14px;text-align:center}.switch-link[data-v-5fa95a39]{background:transparent;border:none;color:#8b5cf6;cursor:pointer;font-weight:700;padding:0 4px}.switch-link[data-v-5fa95a39]:hover{text-decoration:underline}.twofa-icon-badge[data-v-5fa95a39]{align-items:center;background:#8b5cf61f;border-radius:12px;color:#8b5cf6;font-size:22px;height:46px;margin-bottom:12px;width:46px}.otp-input-shell[data-v-5fa95a39],.twofa-icon-badge[data-v-5fa95a39]{display:flex;justify-content:center}.otp-input[data-v-5fa95a39]{background:var(--bg-input,#f8fafc);border:2px dashed #8b5cf6;border-radius:12px;color:var(--text-color,#0f172a);font-size:28px;font-weight:700;letter-spacing:12px;outline:none;padding:10px 14px;text-align:center;width:220px}.otp-input[data-v-5fa95a39]:focus{border-style:solid;box-shadow:0 0 0 4px #8b5cf62e}.back-step-row[data-v-5fa95a39]{margin-top:16px;text-align:center}.back-step-btn[data-v-5fa95a39]{align-items:center;background:transparent;border:none;color:var(--text-secondary,#64748b);cursor:pointer;display:inline-flex;font-size:13px;gap:6px}.back-step-btn[data-v-5fa95a39]:hover{color:var(--text-color,#0f172a)}.fade-enter-active[data-v-5fa95a39],.fade-leave-active[data-v-5fa95a39]{transition:opacity .2s ease}.fade-enter-from[data-v-5fa95a39],.fade-leave-to[data-v-5fa95a39]{opacity:0}html.dark .portal-auth-card[data-v-5fa95a39]{--card-bg:#0f172a;--border-color:hsla(0,0%,100%,.08);--text-color:#f8fafc;--text-secondary:#94a3b8;--bg-input:rgba(30,41,59,.6);--bg-hover:hsla(0,0%,100%,.06);background:#0f172a!important;border-color:#ffffff14!important;box-shadow:0 20px 50px -10px #0009,0 0 0 1px #ffffff0f!important}html.dark .portal-auth-tab-bar[data-v-5fa95a39]{background:#0f172a!important;border-bottom-color:#ffffff14!important}html.dark .portal-auth-segmented[data-v-5fa95a39]{background:#ffffff0d!important}html.dark .segmented-btn[data-v-5fa95a39]{color:#94a3b8!important}html.dark .segmented-btn[data-v-5fa95a39]:hover{color:#fff!important}html.dark .segmented-btn.active[data-v-5fa95a39]{background:#1e293b!important;box-shadow:0 2px 8px #0006!important;color:#c4b5fd!important}html.dark .portal-auth-side-banner[data-v-5fa95a39]{background:linear-gradient(160deg,#8b5cf614,#0f172ae6)!important;border-right-color:#ffffff14!important}html.dark .banner-top-badge[data-v-5fa95a39]{background:#f59e0b29!important;color:#fbbf24!important}html.dark .banner-feature-item[data-v-5fa95a39]{background:#1e293b73!important;border-color:#ffffff12!important;box-shadow:0 2px 8px #0003!important}html.dark .banner-feature-item[data-v-5fa95a39]:hover{background:#1e293bb3!important;border-color:#8b5cf64d!important;box-shadow:0 4px 14px #0000004d!important}html.dark .input-shell[data-v-5fa95a39]{background:#1e293b99!important;border-color:#ffffff1a!important}html.dark .input-shell[data-v-5fa95a39]:focus-within{background:#0f172a!important;border-color:#8b5cf6!important;box-shadow:0 0 0 3.5px #8b5cf640!important}html.dark .field-icon[data-v-5fa95a39]{color:#64748b!important}html.dark .input-shell:focus-within .field-icon[data-v-5fa95a39]{color:#a78bfa!important}html.dark .field-input[data-v-5fa95a39]{color:#f8fafc!important}html.dark .field-input[data-v-5fa95a39]::-moz-placeholder{color:#64748b!important}html.dark .field-input[data-v-5fa95a39]::placeholder{color:#64748b!important}html.dark .pwd-toggle-btn[data-v-5fa95a39]{color:#64748b!important}html.dark .pwd-toggle-btn[data-v-5fa95a39]:hover{color:#f1f5f9!important}html.dark .gen-email-btn[data-v-5fa95a39]{background:#8b5cf629!important;border-color:#8b5cf659!important;color:#c4b5fd!important}html.dark .gen-email-btn[data-v-5fa95a39]:hover{background:#8b5cf647!important}html.dark .agree-terms-check span[data-v-5fa95a39]{color:#94a3b8!important}html.dark .social-divider[data-v-5fa95a39]:after,html.dark .social-divider[data-v-5fa95a39]:before{background:#ffffff14!important}html.dark .social-divider span[data-v-5fa95a39]{color:#64748b!important}html.dark .google-auth-btn[data-v-5fa95a39]{background:#ffffff0a!important;border-color:#ffffff1a!important;color:#f1f5f9!important}html.dark .google-auth-btn[data-v-5fa95a39]:hover{background:#ffffff14!important;border-color:#fff3!important}html.dark .otp-input[data-v-5fa95a39]{background:#1e293b99!important;color:#f8fafc!important}html.dark .forgot-link[data-v-5fa95a39],html.dark .switch-link[data-v-5fa95a39]{color:#a78bfa!important}html.dark .forgot-link[data-v-5fa95a39]:hover,html.dark .switch-link[data-v-5fa95a39]:hover{color:#c4b5fd!important}@media(max-width:860px){.portal-auth-grid[data-v-5fa95a39]{grid-template-columns:1fr}.portal-auth-side-banner[data-v-5fa95a39]{display:none}.portal-auth-form-wrap[data-v-5fa95a39]{padding:28px 22px}}@media(max-width:480px){.fields-row-2[data-v-5fa95a39]{grid-template-columns:1fr}.portal-auth-segmented[data-v-5fa95a39]{max-width:100%}}
