.auth-page{background:var(--bg-canvas);color:var(--fg-1);grid-template-columns:minmax(420px,1fr) minmax(0,1.2fr);min-height:100dvh;display:grid}.auth-form-col{padding:var(--sp-8) var(--sp-12);background:var(--bg-canvas);flex-direction:column;min-height:100dvh;display:flex}.auth-form-head{justify-content:space-between;align-items:center;margin-bottom:auto;display:flex}.auth-brand{align-items:center;gap:var(--sp-2);color:var(--fg-1);text-decoration:none;display:flex}.auth-brand-mark{width:28px;height:28px}.auth-brand-wordmark{font:500 17px/1 var(--font-sans);letter-spacing:-.01em}.auth-form-head-help{font:var(--t-body-sm);color:var(--fg-3)}.auth-form-head-help a{color:var(--fg-1);border-bottom:var(--bw) solid var(--ink-200);margin-left:6px;padding-bottom:1px;text-decoration:none}.auth-form-head-help a:hover{color:var(--accent);border-color:var(--accent)}.auth-form-wrap{width:100%;max-width:380px;margin:var(--sp-12) 0}.auth-eyebrow-row{align-items:center;gap:var(--sp-2);margin-bottom:var(--sp-3);display:flex}.auth-eyebrow-row .eyebrow{color:var(--fg-3)}.auth-eyebrow-dot{background:var(--success);width:6px;height:6px;animation:auth-pulse 1.6s var(--ease-in-out) infinite;border-radius:50%}.auth-title{font:500 32px/1.15 var(--font-sans);letter-spacing:var(--tracking-tight);color:var(--fg-1);margin:0 0 10px}.auth-title .accent-serif{font-family:var(--font-serif);color:var(--accent-ink);font-style:italic;font-weight:400}.auth-subtitle{font:var(--t-body-lg);color:var(--fg-2);margin:0 0 var(--sp-8);max-width:34ch}.auth-seg{background:var(--bg-sunk);border:var(--bw) solid var(--border);border-radius:var(--r-md);margin-bottom:var(--sp-6);grid-template-columns:1fr 1fr;width:fit-content;padding:3px;display:grid}.auth-seg button{appearance:none;font:500 13px/1 var(--font-sans);color:var(--fg-3);padding:var(--sp-2) var(--sp-4);cursor:pointer;transition:background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);background:0 0;border:0;border-radius:6px}.auth-seg button.on{background:var(--surface);color:var(--fg-1);border:var(--bw) solid var(--border);margin:-1px}.auth-seg button:not(.on):hover{color:var(--fg-1)}.auth-seg button:focus-visible{box-shadow:var(--focus-ring);outline:none}.auth-oauth{gap:var(--sp-2);margin-bottom:var(--sp-5);grid-template-columns:1fr 1fr 1fr;display:grid}.auth-oauth button{appearance:none;justify-content:center;align-items:center;gap:var(--sp-2);height:var(--sp-10);background:var(--surface);border:var(--bw) solid var(--border);border-radius:var(--r-md);font:500 13px/1 var(--font-sans);color:var(--fg-1);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);display:inline-flex}.auth-oauth button:hover{border-color:var(--border-strong);background:var(--bg-sunk)}.auth-oauth button:active{transform:translateY(1px)}.auth-oauth button:focus-visible{box-shadow:var(--focus-ring);outline:none}.auth-oauth button:disabled{opacity:.5;cursor:not-allowed}.auth-oauth button svg{width:var(--sp-4);height:var(--sp-4)}.auth-divider{align-items:center;gap:var(--sp-2);margin:var(--sp-5) 0;color:var(--fg-3);font:var(--t-body-sm);display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--border);flex:1;height:1px}.auth-form{gap:var(--sp-4);flex-direction:column;display:flex}.auth-field{flex-direction:column;gap:6px;display:flex}.auth-field-row{gap:var(--sp-3);grid-template-columns:1fr 1fr;display:grid}.auth-lab{font:var(--t-label);color:var(--fg-2);justify-content:space-between;align-items:center;display:flex}.auth-lab a{font:var(--t-body-sm);color:var(--fg-3);text-decoration:none}.auth-lab a:hover{color:var(--accent)}.auth-inp{font:var(--t-body);height:var(--sp-10);padding:0 var(--sp-3);background:var(--surface);border:var(--bw) solid var(--border);border-radius:var(--r-md);color:var(--fg-1);width:100%;transition:border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);outline:none}.auth-inp::placeholder{color:var(--ink-400)}.auth-inp:focus{border-color:var(--accent);box-shadow:var(--focus-ring)}.auth-inp[aria-invalid=true]{border-color:var(--danger)}.auth-inp-wrap{position:relative}.auth-inp-wrap .auth-reveal{right:var(--sp-2);cursor:pointer;padding:var(--sp-1);border-radius:var(--r-xs);color:var(--fg-3);transition:color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out);background:0 0;border:0;display:inline-flex;position:absolute;top:50%;transform:translateY(-50%)}.auth-inp-wrap .auth-reveal:hover{color:var(--fg-1);background:var(--bg-sunk)}.auth-inp-wrap .auth-reveal:focus-visible{box-shadow:var(--focus-ring);outline:none}.auth-inp-wrap .auth-reveal svg{width:var(--sp-4);height:var(--sp-4)}.auth-strength{align-items:center;gap:var(--sp-2);font:var(--t-body-sm);color:var(--fg-3);margin-top:var(--sp-1);display:flex}.auth-strength-bars{gap:3px;display:flex}.auth-strength-bars span{background:var(--ink-100);width:18px;height:3px;transition:background var(--dur-fast) var(--ease-out);border-radius:2px}.auth-strength.s-1 .auth-strength-bars span:nth-child(-n+1){background:var(--danger)}.auth-strength.s-2 .auth-strength-bars span:nth-child(-n+2){background:var(--orange-400)}.auth-strength.s-3 .auth-strength-bars span:nth-child(-n+3){background:var(--orange-300)}.auth-strength.s-4 .auth-strength-bars span:nth-child(-n+4){background:var(--success)}.auth-legal{font:var(--t-body-sm);color:var(--fg-3);align-items:flex-start;gap:var(--sp-2);margin-top:-4px;display:flex}.auth-legal input{accent-color:var(--accent);margin-top:3px}.auth-legal a{color:var(--fg-1);border-bottom:var(--bw) solid var(--ink-200);text-decoration:none}.auth-legal a:hover{color:var(--accent);border-color:var(--accent)}.auth-submit{margin-top:var(--sp-2);appearance:none;background:var(--accent);height:44px;color:var(--fg-on-accent);border-radius:var(--r-md);font:500 14px/1 var(--font-sans);cursor:pointer;justify-content:center;align-items:center;gap:var(--sp-2);transition:background var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);border:0;display:inline-flex}.auth-submit:hover{background:var(--accent-hover)}.auth-submit:active{transform:translateY(1px)}.auth-submit:focus-visible{box-shadow:var(--focus-ring);outline:none}.auth-submit:disabled{opacity:.7;cursor:not-allowed}.auth-submit svg{width:14px;height:14px}.auth-error{font:var(--t-body-sm);color:var(--danger-ink);background:var(--danger-soft);border:var(--bw) solid var(--red-100);border-radius:var(--r-md);padding:var(--sp-2) var(--sp-3)}.auth-notice{font:var(--t-body-sm);color:var(--fg-2);background:var(--bg-sunk);border:var(--bw) solid var(--border);border-radius:var(--r-md);padding:var(--sp-2) var(--sp-3)}.auth-back{appearance:none;font:var(--t-body-sm);color:var(--fg-3);cursor:pointer;margin-bottom:var(--sp-3);transition:color var(--dur-fast) var(--ease-out);background:0 0;border:0;align-items:center;gap:6px;padding:0;display:inline-flex}.auth-back:hover{color:var(--fg-1)}.auth-back svg{width:14px;height:14px}.auth-form-foot{font:var(--t-body-sm);color:var(--fg-3);margin-top:var(--sp-8);justify-content:space-between;align-items:center;display:flex}.auth-form-foot nav{gap:var(--sp-4);display:flex}.auth-form-foot a{color:var(--fg-3);transition:color var(--dur-fast) var(--ease-out);text-decoration:none}.auth-form-foot a:hover{color:var(--fg-1)}.auth-form-foot .auth-status{align-items:center;gap:6px;display:inline-flex}.auth-form-foot .auth-status-dot{background:var(--success);border-radius:50%;width:6px;height:6px}.auth-visual-col{background:var(--surface-3);border-left:var(--bw) solid var(--border);padding:var(--sp-10);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.auth-visual-col:before{content:"";background-image:radial-gradient(circle at 1px 1px, var(--ink-100) 1px, transparent 0);opacity:.4;pointer-events:none;background-size:16px 16px;position:absolute;inset:0}.auth-visual-col:after{content:"";left:var(--sp-8);top:var(--sp-8);width:var(--sp-3);height:var(--sp-3);border-top:var(--bw) solid var(--border-strong);border-left:var(--bw) solid var(--border-strong);position:absolute}.auth-symbol{aspect-ratio:1;width:min(80%,480px);position:relative}.auth-symbol>.auth-wave-canvas,.auth-symbol>.auth-symbol-overlay{width:100%;height:100%;position:absolute;inset:0}.auth-symbol>.auth-wave-canvas{display:block}.auth-symbol>.auth-symbol-overlay{pointer-events:none;overflow:visible}@media (prefers-reduced-motion:reduce){.auth-symbol .auth-symbol-overlay animate,.auth-symbol .auth-symbol-overlay animateTransform{display:none}.auth-eyebrow-dot{animation:none}}@keyframes auth-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.7)}}@media (max-width:960px){.auth-page{grid-template-columns:1fr}.auth-visual-col{display:none}.auth-form-col{padding:var(--sp-6)}.auth-form-wrap{margin:var(--sp-6) auto}}
