.auth-modal-overlay{--auth-hang: 20rem;position:fixed;inset:0;background-color:#000000a6;backdrop-filter:blur(var(--blur-lg));-webkit-backdrop-filter:blur(var(--blur-lg));z-index:10000;display:flex;justify-content:center;align-items:flex-start;overflow-y:auto;overscroll-behavior:contain;padding:max(var(--space-lg),50dvh - var(--auth-hang)) var(--space-lg) var(--space-lg)}.auth-modal-overlay.active{animation:backdrop-fade-in var(--motion-medium) var(--ease-standard)}.auth-modal-overlay.active .auth-modal-content{animation:slide-fade-in var(--motion-medium) var(--ease-enter)}.auth-modal-content{background:var(--glass-sheen),var(--surface);border-radius:var(--radius);width:min(420px,100%);padding:2rem;position:relative;box-shadow:var(--glass-rim),var(--elev-4);border:1px solid var(--border);color:var(--text)}.auth-modal-close{position:absolute;top:calc(var(--space-2xl) + 5px);right:calc(var(--space-2xl) + 5px);z-index:10;pointer-events:auto;padding:0}@media(pointer:coarse){.auth-modal-close{top:var(--space-2xl);right:var(--space-2xl)}}.auth-modal-tabs{display:flex;margin-right:calc(var(--min-touch-target) + var(--space-sm));margin-bottom:1.5rem;border-bottom:1px solid var(--border);padding-bottom:0}.auth-tab{flex:1;background:transparent;border:none;padding:.75rem 0;color:var(--muted);font-family:inherit;font-size:1rem;font-weight:600;cursor:pointer;position:relative;transition:color var(--motion-base) var(--ease-standard)}.auth-tab:hover{color:var(--text)}.auth-tab.active{color:var(--accent-text);font-weight:700}.auth-tab.active:after{content:"";position:absolute;bottom:-1px;left:0;width:100%;height:2px;background-color:var(--accent-text)}.auth-tab-content{display:none}.auth-tab-content.active{display:block;animation:slide-fade-in var(--motion-medium) var(--ease-enter) forwards}@keyframes slide-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.auth-modal-content h3{margin-top:0;margin-bottom:var(--space-sm);font-size:var(--text-2xl);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);color:var(--text)}.auth-modal-tabs.hidden~.auth-tab-content h3{margin-right:calc(var(--min-touch-target) + var(--space-sm))}.auth-modal-subtitle{margin-top:0;margin-bottom:1.5rem;color:var(--muted);font-size:var(--text-sm);text-wrap:pretty}.auth-form{display:flex;flex-direction:column;gap:var(--space-lg)}.auth-submit-btn{width:100%;margin-top:.5rem;justify-content:center;padding:.8rem;font-weight:600;letter-spacing:.5px}.auth-error{color:var(--color-error);font-size:var(--text-sm);min-height:1.2rem;margin-top:-.5rem;display:block}.auth-form .auth-error:empty{min-height:0;margin-top:calc(-1 * var(--space-lg))}.auth-inline-action{margin:.25rem 0 .5rem;font-size:var(--text-sm);color:var(--text-muted)}.auth-link-btn{padding:0;border:0;background:none;color:var(--accent-text);font:inherit;text-decoration:underline;cursor:pointer}.auth-link-btn:disabled{cursor:default;opacity:.6}.auth-link-btn:hover:not(:disabled),.auth-link-btn:focus-visible{text-decoration:none}.nav-auth-container{display:flex;align-items:center;margin-right:0;position:relative}.nav-auth-btn{display:flex;align-items:center;justify-content:center;color:var(--accent-text);transition:transform var(--motion-base) var(--ease-standard),color var(--motion-base) var(--ease-standard),background-color var(--motion-base) var(--ease-standard)}.nav-user-profile{display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;background:transparent;font:inherit;width:var(--header-action-size, var(--min-touch-target));height:var(--header-action-size, var(--min-touch-target));border-radius:50%;border:1px solid transparent;color:var(--text);transition:border-color var(--motion-base) var(--ease-standard),background-color var(--motion-base) var(--ease-standard),color var(--motion-base) var(--ease-standard)}.nav-user-profile:hover,.nav-user-profile[aria-expanded=true]{border-color:var(--accent-mild);background-color:var(--accent-soft);box-shadow:var(--glass-rim)}.nav-user-profile:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.nav-user-icon{width:24px;height:24px;border-radius:50%;background-color:var(--accent-fill);color:var(--on-accent);display:flex;align-items:center;justify-content:center;font-size:var(--text-xs);font-weight:600}.nav-user-dropdown{position:absolute;top:calc(50% + var(--header-height) / 2 + var(--space-md));right:0;background:var(--glass-sheen),var(--glass-dense);backdrop-filter:var(--glass-filter);-webkit-backdrop-filter:var(--glass-filter);border:1px solid var(--sheen-edge-strong);border-radius:var(--radius-lg);min-width:220px;box-shadow:var(--glass-rim),var(--elev-4);padding:var(--space-xs);opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity var(--motion-base) var(--ease-standard),visibility var(--motion-base) var(--ease-standard),transform var(--motion-base) var(--ease-enter);z-index:1300}.nav-user-dropdown.show{opacity:1;visibility:visible;transform:translateY(0)}.nav-dropdown-item{display:flex;align-items:center;gap:8px;width:100%;text-align:left;min-height:40px;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);background:transparent;border:none;color:var(--text);cursor:pointer;font-family:inherit;font-size:var(--text-sm);white-space:nowrap;text-decoration:none;transition:background-color .2s,color .2s}.nav-dropdown-item:hover,.nav-dropdown-item:focus-visible{background-color:var(--accent-soft);color:var(--accent-text)}.nav-dropdown-item:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-2px}.nav-dropdown-item i{width:1.25em;text-align:center}.nav-dropdown-item--danger{color:var(--color-error)}.nav-dropdown-item--danger:hover,.nav-dropdown-item--danger:focus-visible{background-color:color-mix(in srgb,var(--color-error) 12%,transparent);color:var(--color-error)}.nav-dropdown-head{margin:0;padding:var(--space-xs) var(--space-sm) var(--space-sm);font-size:var(--text-xs);color:var(--muted)}.nav-dropdown-head strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-sm);color:var(--text)}.nav-dropdown-sep{margin:var(--space-2xs) var(--space-xs);border:0;border-top:1px solid var(--sheen-edge-strong)}.auth-form .floating-label-group{position:relative;margin-bottom:0}.auth-form .floating-label-group .input-wrapper{position:relative}.auth-form .floating-label-group input{width:100%;min-height:52px;padding:24px 40px 8px 14px;background-color:var(--bg);border:1px solid var(--control-border);border-radius:8px;color:var(--text);font-size:1rem;font-family:inherit;transition:border-color var(--motion-base) var(--ease-standard),box-shadow var(--motion-base) var(--ease-standard)}.auth-form .floating-label-group input:focus{outline:none;border-color:var(--accent-text);box-shadow:0 0 0 1px var(--accent-text)}.auth-form .floating-label-group .form-label{position:absolute;top:50%;left:14px;transform:translateY(-50%);transition:top var(--motion-base) var(--ease-enter),font-size var(--motion-base) var(--ease-standard),color var(--motion-base) var(--ease-standard),transform var(--motion-base) var(--ease-enter);pointer-events:none;color:var(--muted);font-size:var(--text-body-sm);margin:0;max-width:calc(100% - 56px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.auth-form .floating-label-group input:focus~.form-label,.auth-form .floating-label-group input:not(:placeholder-shown)~.form-label{top:8px;transform:none;font-size:var(--text-2xs);color:var(--accent-text);font-weight:700}.forgot-password-link-wrapper{text-align:right;margin-top:6px}.forgot-password-link{font-size:var(--text-xs);color:var(--muted);text-decoration:none;transition:color var(--motion-base) var(--ease-standard);font-weight:var(--weight-semibold);padding:0;border:0;background:none;font-family:inherit;line-height:inherit;text-align:inherit;cursor:pointer}.forgot-password-link:hover{color:var(--accent-text)}.back-to-login-wrapper{text-align:center;margin-top:1.25rem}.back-to-login-btn{background:transparent;border:none;color:var(--muted);font-family:inherit;font-size:.85rem;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:color var(--motion-base) var(--ease-standard);padding:4px 8px;border-radius:4px}.back-to-login-btn:hover{color:var(--accent-text)}.password-strength-meter-container{height:4px;background-color:var(--border);border-radius:999px;margin-top:8px;overflow:hidden}.password-strength-meter{height:100%;width:0;border-radius:999px;transition:width var(--motion-medium) var(--ease-standard),background-color var(--motion-medium) var(--ease-standard)}.password-strength-meter.weak{width:33.33%;background-color:var(--color-error)}.password-strength-meter.medium{width:66.66%;background-color:var(--color-warning)}.password-strength-meter.strong{width:100%;background-color:var(--color-success)}.password-strength-text{font-size:var(--text-2xs);margin-top:4px;color:var(--muted);font-weight:600;text-align:right}.password-strength-text.weak{color:var(--color-error)}.password-strength-text.medium{color:var(--color-warning)}.password-strength-text.strong{color:var(--color-success)}.password-checklist{list-style:none;padding:0;margin:10px 0 0;display:flex;flex-direction:column;gap:6px}.checklist-item{font-size:.75rem;color:var(--muted);display:flex;align-items:center;gap:8px;transition:color var(--motion-base) var(--ease-standard)}.checklist-item i{font-size:.8rem;width:14px;text-align:center;transition:transform var(--motion-base) var(--ease-press)}.checklist-item .fa-circle:before{content:none}.checklist-item .fa-circle{aspect-ratio:1;border-radius:50%;box-shadow:inset 0 0 0 2px}.checklist-item.valid{color:var(--color-success)}.checklist-item.valid i{transform:scale(1.15);color:var(--color-success)}.checklist-item.invalid,.checklist-item.invalid i{color:var(--color-error)}.confirm-password-match-text{font-size:.75rem;margin-top:4px;min-height:1rem;font-weight:600}.confirm-password-match-text.valid{color:var(--color-success)}.confirm-password-match-text.invalid{color:var(--color-error)}.password-toggle-btn{position:absolute;right:4px;top:50%;transform:translateY(-50%);background:transparent;border:none;color:var(--muted);font-size:.95rem;cursor:pointer;padding:0;margin:0;height:var(--min-touch-target);width:var(--min-touch-target);border-radius:8px;display:flex;align-items:center;justify-content:center;z-index:10;transition:color var(--motion-base) var(--ease-standard),transform var(--motion-fast) var(--ease-standard)}.auth-form .floating-label-group .input-wrapper:has(>.password-toggle-btn) input{padding-right:calc(var(--min-touch-target) + 8px)}.password-toggle-btn:hover{color:var(--accent-text);transform:translateY(-50%) scale(1.1)}.auth-form .input-wrapper input:focus{background-image:none}.password-toggle-btn:focus-visible{outline:2px solid var(--focus-ring)}.input-wrapper #login-password:not(:placeholder-shown):valid,.input-wrapper #login-password:not(:placeholder-shown):invalid,.input-wrapper #register-password:not(:placeholder-shown):valid,.input-wrapper #register-password:not(:placeholder-shown):invalid,.input-wrapper #register-confirm-password:not(:placeholder-shown):valid,.input-wrapper #register-confirm-password:not(:placeholder-shown):invalid{background-image:none!important}.auth-success{color:var(--color-success);font-size:var(--text-sm);min-height:1.2rem;margin-top:-.5rem;display:none}.forgot-password-link-wrapper{display:flex;justify-content:space-between;align-items:center}.twofa-setup{text-align:center;margin:1rem 0}.twofa-qr-wrapper{background:#fff;padding:10px;display:inline-block;border-radius:var(--radius-sm)}.twofa-qr-img{width:180px;height:180px}.twofa-secret-line{font-size:var(--text-xs);margin-top:.5rem;color:var(--text-muted)}.twofa-secret-code{background:var(--skill-bg);border:1px solid var(--border);padding:2px 6px;border-radius:4px}.twofa-status{display:flex;align-items:center;justify-content:center;gap:.5rem;margin:1rem 0;font-size:var(--text-sm);color:var(--color-success)}.twofa-status-icon{font-size:var(--text-base)}.sessions-list{margin:1rem 0;max-height:250px;overflow-y:auto}.sessions-placeholder{font-size:var(--text-sm);color:var(--text-muted)}.auth-btn-warning{background:var(--color-warning-fill);color:var(--on-warning);font-weight:600}.auth-btn-danger{background:var(--color-error-fill);color:var(--on-error);font-weight:600}.btn.auth-btn-warning:hover:not(:disabled){background:color-mix(in srgb,var(--color-warning-fill) 85%,#000);border-color:color-mix(in srgb,var(--color-warning-fill) 85%,#000);color:var(--on-warning)}.btn.auth-btn-danger:hover:not(:disabled){background:color-mix(in srgb,var(--color-error-fill) 85%,#000);border-color:color-mix(in srgb,var(--color-error-fill) 85%,#000);color:var(--on-error)}.auth-heading-danger{color:var(--color-error)}.auth-warning-box{background:color-mix(in srgb,var(--color-error) 8%,transparent);border:1px solid color-mix(in srgb,var(--color-error) 28%,transparent);border-radius:var(--radius-sm);padding:.75rem 1rem;margin-bottom:1.25rem;font-size:var(--text-sm);color:var(--text)}.auth-warning-box p{margin:0;line-height:var(--leading-snug)}.auth-session-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.auth-session-details{min-width:0}.auth-session-device{color:var(--text);font-size:.85rem;font-weight:600}.auth-session-ip{color:var(--muted);font-size:.75rem}.auth-session-note{margin:0;color:var(--muted);font-size:.85rem}.auth-session-skeleton{display:flex;flex-direction:column;gap:8px;margin-bottom:8px;padding:12px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.auth-session-skeleton-line{height:12px;border-radius:var(--radius-xs);background:linear-gradient(100deg,var(--surface-soft) 20%,var(--wash-raise) 50%,var(--surface-soft) 80%);background-size:300% 100%;animation:auth-session-shimmer var(--motion-shimmer) var(--ease-standard) infinite both}.auth-session-skeleton-title{width:55%;height:14px}.auth-session-skeleton-sub{width:35%;height:10px}@keyframes auth-session-shimmer{0%{background-position:150% 0}to{background-position:-150% 0}}@media(prefers-reduced-motion:reduce){.auth-session-skeleton-line{animation:none}}.btn-revoke-session{flex-shrink:0;min-height:var(--min-touch-target);padding:4px 12px;border:1px solid var(--color-error);border-radius:6px;background:none;color:var(--color-error);font-family:inherit;font-size:.75rem;font-weight:600;cursor:pointer;transition:background-color var(--motion-base) var(--ease-standard),color var(--motion-base) var(--ease-standard)}.btn-revoke-session:hover:not(:disabled){background:var(--color-error-fill);border-color:var(--color-error-fill);color:var(--on-error)}.btn-revoke-session:disabled{opacity:.6;cursor:default}.btn-revoke-session:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.auth-form button[type=submit][aria-disabled=true]{opacity:.6}
/*# sourceMappingURL=auth-modal-D7IDEGJY.css.map */
