:root{--auth-brand-primary:var(--color-accent,#ffd600);--auth-brand-primary-hover:color-mix(in srgb,var(--color-accent,#ffd600) 88%,black);--auth-brand-primary-text:var(--color-text-on-accent,#0a0a0a);--auth-bg-page:var(--color-bg-canvas,#0a0a0a);--auth-bg-panel:var(--color-bg-surface,#111111);--auth-bg-panel-border:var(--color-border-subtle,rgba(255,255,255,0.06));--auth-bg-input:color-mix(in srgb,var(--color-bg-elevated,#1e1e1e) 88%,transparent);--auth-bg-input-hover:var(--color-bg-elevated,#1e1e1e);--auth-bg-input-autofill:var(--color-bg-elevated,#1a1a2c);--auth-bg-button-ghost:color-mix(in srgb,var(--color-bg-elevated) 70%,transparent);--auth-bg-button-ghost-hover:var(--color-bg-elevated);--auth-bg-badge:color-mix(in srgb,var(--color-accent) 12%,transparent);--auth-brand-bg:var(--color-bg-canvas);--auth-brand-glow:color-mix(in srgb,var(--color-accent) 8%,transparent);--auth-brand-card-bg:var(--color-bg-elevated);--auth-brand-card-border:var(--color-border-strong);--auth-text-primary:var(--color-text-primary);--auth-text-secondary:var(--color-text-secondary);--auth-text-muted:var(--color-text-muted);--auth-text-brand:var(--color-accent);--auth-text-error:var(--color-danger);--auth-text-success:var(--color-success);--auth-text-link:var(--color-accent);--auth-text-link-hover:var(--color-text-primary);--auth-border-default:var(--color-border-strong);--auth-border-focus:var(--color-accent);--auth-border-error:var(--color-danger);--auth-border-strength-empty:var(--color-border-strong);--auth-border-strength-weak:var(--color-danger);--auth-border-strength-fair:var(--color-warning);--auth-border-strength-good:var(--color-accent);--auth-border-strength-strong:var(--color-success);--auth-alert-bg:color-mix(in srgb,var(--color-danger) 7%,transparent);--auth-alert-border:color-mix(in srgb,var(--color-danger) 25%,transparent);--auth-brand-card-hover-bg:color-mix(in srgb,var(--color-bg-elevated) 90%,white 10%);--auth-brand-card-hover-border:color-mix(in srgb,var(--color-border-strong) 80%,white 20%);--auth-badge-border:color-mix(in srgb,var(--color-accent) 20%,transparent);--auth-input-error-shadow:color-mix(in srgb,var(--color-danger) 12%,transparent);--auth-spinner-track:color-mix(in srgb,var(--auth-brand-primary-text) 20%,transparent);--auth-shadow-panel:0 0 0 1px var(--color-border-subtle),0 32px 64px rgba(var(--rgb-shadow,0 0 0),0.5);--auth-shadow-input-focus:0 0 0 3px color-mix(in srgb,var(--color-accent) 15%,transparent);--auth-shadow-button:0 4px 16px color-mix(in srgb,var(--color-accent) 30%,transparent);--auth-shadow-button-hover:0 6px 24px color-mix(in srgb,var(--color-accent) 45%,transparent);--auth-radius-sm:6px;--auth-radius-md:12px;--auth-radius-lg:18px;--auth-radius-full:9999px;--auth-form-gap:1.25rem;--auth-transition:all 0.18s ease}.auth-root{display:flex;flex-direction:column;min-height:100dvh;background-color:var(--auth-bg-page);color:var(--auth-text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;-webkit-font-smoothing:antialiased}.auth-shell{display:flex;flex:1 1;min-height:0}.auth-brand{display:none;flex-direction:column;justify-content:space-between;width:46%;flex-shrink:0;background-color:var(--auth-brand-bg);border-right:1px solid var(--auth-bg-panel-border);padding:3rem;position:relative;overflow:hidden}@media (min-width:900px){.auth-brand{display:flex}}.auth-brand:before{content:"";position:absolute;top:-20%;left:-10%;width:70%;height:60%;background:radial-gradient(ellipse,var(--auth-brand-glow),transparent 70%);pointer-events:none}.auth-brand-top{position:relative;z-index:1}.auth-brand-logo{display:flex;align-items:center;gap:.625rem;margin-bottom:4rem;text-decoration:none}.auth-brand-logo-mark{width:36px;height:36px;display:inline-block;flex-shrink:0;color:var(--auth-brand-primary);background-color:currentColor;-webkit-mask:url(/brand/mizu-mark-mask.png) center/contain no-repeat;mask:url(/brand/mizu-mark-mask.png) center/contain no-repeat;border-radius:0;font-size:0;letter-spacing:0}.auth-brand-logo-name{font-size:1.125rem;font-weight:700;color:var(--auth-text-primary);letter-spacing:-.02em}.auth-brand-headline{font-size:2.25rem;font-weight:800;line-height:1.15;letter-spacing:-.04em;color:var(--auth-text-primary);margin:0 0 1rem}.auth-brand-headline em{font-style:normal;color:var(--auth-text-brand)}.auth-brand-sub{font-size:1rem;color:var(--auth-text-secondary);line-height:1.6;margin:0 0 2.5rem}.auth-brand-cards{display:flex;flex-direction:column;gap:.75rem}.auth-brand-card{display:flex;align-items:flex-start;gap:.875rem;background:var(--auth-brand-card-bg);border:1px solid var(--auth-brand-card-border);border-radius:var(--auth-radius-md);padding:1rem 1.125rem;transition:var(--auth-transition)}.auth-brand-card:hover{background:var(--auth-brand-card-hover-bg);border-color:var(--auth-brand-card-hover-border)}.auth-brand-card-icon{font-size:1.25rem;flex-shrink:0;margin-top:1px}.auth-brand-card-title{font-size:.875rem;font-weight:600;color:var(--auth-text-primary);margin:0 0 .2rem}.auth-brand-card-desc{font-size:.8125rem;color:var(--auth-text-secondary);margin:0;line-height:1.5}.auth-brand-bottom{position:relative;z-index:1}.auth-brand-badge{display:inline-flex;align-items:center;gap:.5rem;background:var(--auth-bg-badge);border:1px solid var(--auth-badge-border);border-radius:var(--auth-radius-full);padding:.4rem .875rem;font-size:.8125rem;color:var(--auth-text-brand);font-weight:500}.auth-brand-badge-dot{width:6px;height:6px;border-radius:50%;background-color:var(--auth-text-brand);animation:auth-pulse 2s infinite}@keyframes auth-pulse{0%,to{opacity:1}50%{opacity:.4}}.auth-form-panel{flex:1 1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1.25rem;min-height:100dvh;overflow-y:auto}.auth-form-inner{width:100%;max-width:420px}.auth-mobile-logo{display:flex;align-items:center;gap:.625rem;margin-bottom:2.5rem;text-decoration:none}@media (min-width:900px){.auth-mobile-logo{display:none}}.auth-card{background:var(--auth-bg-panel);border:1px solid var(--auth-bg-panel-border);border-radius:var(--auth-radius-lg);padding:2.25rem 2rem;box-shadow:var(--auth-shadow-panel)}.auth-card-header{margin-bottom:1.75rem}.auth-card-title{font-size:1.5rem;font-weight:700;color:var(--auth-text-primary);letter-spacing:-.03em;margin:0 0 .375rem}.auth-card-subtitle{font-size:.9rem;color:var(--auth-text-secondary);margin:0}.auth-btn-social{display:flex;align-items:center;justify-content:center;gap:.625rem;width:100%;padding:.75rem 1rem;background:var(--auth-bg-button-ghost);border:1px solid var(--auth-border-default);border-radius:var(--auth-radius-md);color:var(--auth-text-primary);font-size:.9375rem;font-weight:500;cursor:pointer;transition:var(--auth-transition);text-decoration:none}.auth-btn-social:hover{background:var(--auth-bg-button-ghost-hover);border-color:color-mix(in srgb,var(--auth-border-default) 80%,white 20%)}.auth-btn-social svg{flex-shrink:0}.auth-divider{display:flex;align-items:center;gap:.875rem;margin:1.375rem 0}.auth-divider-line{flex:1 1;height:1px;background-color:var(--auth-border-default)}.auth-divider-label{font-size:.8125rem;color:var(--auth-text-muted);white-space:nowrap}.auth-form{gap:var(--auth-form-gap)}.auth-field,.auth-form{display:flex;flex-direction:column}.auth-field{gap:.4rem}.auth-label{font-size:.875rem;font-weight:500;color:var(--auth-text-secondary);display:flex;align-items:center;justify-content:space-between}.auth-label-link{font-size:.8125rem;font-weight:400;color:var(--auth-text-link);text-decoration:none;transition:color .15s}.auth-label-link:hover{color:var(--auth-text-link-hover)}.auth-input-wrap{position:relative}.auth-input{width:100%;padding:.7rem .9rem;background:var(--auth-bg-input);border:1px solid var(--auth-border-default);border-radius:var(--auth-radius-md);color:var(--auth-text-primary);font-size:.9375rem;outline:none;transition:var(--auth-transition);box-sizing:border-box;-webkit-text-fill-color:var(--auth-text-primary)}.auth-input:-webkit-autofill,.auth-input:-webkit-autofill:focus,.auth-input:-webkit-autofill:hover{-webkit-box-shadow:0 0 0 40px var(--auth-bg-input-autofill) inset;-webkit-text-fill-color:var(--auth-text-primary);caret-color:var(--auth-text-primary)}.auth-input::placeholder{color:var(--auth-text-muted)}.auth-input:hover:not(:focus){background:var(--auth-bg-input-hover);border-color:color-mix(in srgb,var(--auth-border-default) 80%,white 20%)}.auth-input:focus{border-color:var(--auth-border-focus);box-shadow:var(--auth-shadow-input-focus)}.auth-input--error{border-color:var(--auth-border-error)!important;box-shadow:0 0 0 3px var(--auth-input-error-shadow)!important}.auth-input--with-toggle{padding-right:2.75rem}.auth-input-toggle{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:var(--auth-text-muted);padding:.25rem;display:flex;align-items:center;transition:color .15s;line-height:1}.auth-input-toggle:hover{color:var(--auth-text-secondary)}.auth-strength{margin-top:.5rem}.auth-strength-bars{display:flex;gap:4px;margin-bottom:.375rem}.auth-strength-bar{flex:1 1;height:3px;border-radius:var(--auth-radius-full);background:var(--auth-border-strength-empty);transition:background .25s ease}.auth-strength-bar--1{background:var(--auth-border-strength-weak)}.auth-strength-bar--2{background:var(--auth-border-strength-fair)}.auth-strength-bar--3{background:var(--auth-border-strength-good)}.auth-strength-bar--4{background:var(--auth-border-strength-strong)}.auth-strength-label{font-size:.8rem;color:var(--auth-text-muted)}.auth-strength-label--1{color:var(--auth-border-strength-weak)}.auth-strength-label--2{color:var(--auth-border-strength-fair)}.auth-strength-label--3{color:var(--auth-border-strength-good)}.auth-strength-label--4{color:var(--auth-border-strength-strong)}.auth-check-row{display:flex;align-items:center;gap:.6rem}.auth-checkbox{width:16px;height:16px;flex-shrink:0;accent-color:var(--auth-brand-primary);cursor:pointer}.auth-check-label{font-size:.875rem;color:var(--auth-text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none}.auth-alert{display:flex;align-items:flex-start;gap:.6rem;padding:.75rem .9rem;background:var(--auth-alert-bg);border:1px solid var(--auth-alert-border);border-radius:var(--auth-radius-md);font-size:.875rem;color:var(--auth-text-error)}.auth-alert-icon{flex-shrink:0;margin-top:1px}.auth-btn-primary{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.8rem 1rem;background:var(--auth-brand-primary);border:none;border-radius:var(--auth-radius-md);color:var(--auth-brand-primary-text);font-size:.9375rem;font-weight:700;cursor:pointer;transition:var(--auth-transition);box-shadow:var(--auth-shadow-button);letter-spacing:-.01em;margin-top:.25rem}.auth-btn-primary:hover:not(:disabled){background:var(--auth-brand-primary-hover);box-shadow:var(--auth-shadow-button-hover);transform:translateY(-1px)}.auth-btn-primary:active:not(:disabled){transform:translateY(0)}.auth-btn-primary:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.auth-spinner{width:16px;height:16px;border:2px solid var(--auth-spinner-track);border-top-color:var(--auth-brand-primary-text);border-radius:50%;animation:auth-spin .7s linear infinite;flex-shrink:0}@keyframes auth-spin{to{transform:rotate(1turn)}}.auth-footer{text-align:center;margin-top:1.5rem;font-size:.875rem;color:var(--auth-text-secondary)}.auth-footer a{color:var(--auth-text-link);text-decoration:underline;text-underline-offset:2px;font-weight:500;transition:color .15s}.auth-footer a:hover{color:var(--auth-text-link-hover)}.auth-terms{text-align:center;font-size:.8rem;line-height:1.55;margin-top:.5rem}.auth-terms,.auth-terms a{color:var(--auth-text-secondary)}.auth-terms a{text-decoration:underline;text-underline-offset:2px}.auth-terms a:hover{color:var(--auth-text-primary)}.auth-success{text-align:center;padding:1rem 0}.auth-success-icon{font-size:3rem;margin-bottom:1rem;display:block}.auth-success-title{font-size:1.375rem;font-weight:700;color:var(--auth-text-primary);letter-spacing:-.03em;margin:0 0 .5rem}.auth-success-body{font-size:.9rem;color:var(--auth-text-secondary);margin:0 0 1.75rem;line-height:1.6}.auth-success-email{font-weight:600;color:var(--auth-text-primary)}.auth-success-hint{font-size:.8125rem;color:var(--auth-text-muted);margin-top:1rem}.auth-success-hint a{color:var(--auth-text-link);text-decoration:none}@media (max-width:480px){.auth-card{padding:1.75rem 1.25rem;border-radius:var(--auth-radius-md)}.auth-brand-headline{font-size:1.875rem}}