.auth-shell{grid-template-columns:1fr 1fr;height:100vh;display:grid;overflow:hidden}.auth-panel-left{background:var(--ink);flex-direction:column;justify-content:space-between;padding:48px 52px;display:flex;position:relative;overflow:hidden}.auth-panel-left:before{content:"";background:radial-gradient(60% 50% at 20% 80%,#b8963e14 0%,#0000 70%),radial-gradient(40% 60% at 80% 20%,#b8963e0d 0%,#0000 60%);position:absolute;inset:0}.auth-geo-ring{border:1px solid #ffffff0a;border-radius:50%;position:absolute}.auth-geo-ring-1{width:480px;height:480px;bottom:-120px;right:-180px}.auth-geo-ring-2{border-color:#b8963e14;width:300px;height:300px;bottom:-20px;right:-80px}.auth-geo-ring-3{border-color:#b8963e1f;width:160px;height:160px;bottom:80px;right:20px}.auth-geo-line{background:#ffffff0a;position:absolute}.auth-geo-line-h{height:1px;left:0;right:0}.auth-geo-line-h1{top:38%}.auth-geo-line-h2{top:72%}.auth-brand{z-index:1;position:relative}.auth-brand-lockup{align-items:center;gap:12px;margin-bottom:6px;display:flex}.auth-brand-mark{border:1.5px solid var(--gold);flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.auth-brand-mark-inner{background:var(--gold);width:9px;height:9px}.auth-brand-name{color:#fff;letter-spacing:.1em;font-family:Cormorant Garamond,serif;font-size:22px;font-weight:500}.auth-brand-tagline{letter-spacing:.3em;text-transform:uppercase;color:#fff3;padding-left:40px;font-size:8px}.auth-hero{z-index:1;position:relative}.auth-hero-eyebrow{letter-spacing:.32em;text-transform:uppercase;color:var(--gold);margin-bottom:16px;font-size:8px}.auth-hero-headline{color:#fff;letter-spacing:-.01em;margin-bottom:20px;font-family:Cormorant Garamond,serif;font-size:52px;font-weight:300;line-height:1.05}.auth-hero-headline em{color:var(--gold-light);font-style:italic}.auth-hero-body{color:#ffffff4d;letter-spacing:.04em;max-width:340px;font-size:10px;line-height:1.7}.auth-footer{z-index:1;justify-content:space-between;align-items:center;display:flex;position:relative}.auth-footer-stat{text-align:left}.auth-footer-val{color:#fff;font-family:Cormorant Garamond,serif;font-size:28px;font-weight:300;line-height:1}.auth-footer-label{letter-spacing:.22em;text-transform:uppercase;color:#ffffff38;margin-top:4px;font-size:7.5px}.auth-footer-divider{background:#ffffff14;width:1px;height:36px}.auth-panel-right{background:var(--cream);justify-content:center;align-items:center;padding:48px;display:flex;position:relative;overflow:hidden auto}.auth-panel-right:before{content:"";opacity:.4;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.03'/%3E%3C/svg%3E");position:absolute;inset:0}.auth-panel-right-inner{z-index:1;width:100%;max-width:380px;position:relative}.auth-screen-label{letter-spacing:.32em;text-transform:uppercase;color:var(--gold);margin-bottom:10px;font-size:7.5px}.auth-screen-title{color:var(--ink);letter-spacing:-.01em;margin-bottom:6px;font-family:Cormorant Garamond,serif;font-size:38px;font-weight:400;line-height:1}.auth-screen-title em{color:var(--ink-muted);font-style:italic;font-weight:300}.auth-screen-sub{color:var(--ink-muted);letter-spacing:.04em;margin-bottom:36px;font-size:10px;line-height:1.6}.auth-field{margin-bottom:18px}.auth-field-label{letter-spacing:.26em;text-transform:uppercase;color:var(--ink-muted);margin-bottom:7px;font-size:7.5px;display:block}.auth-field-wrap{position:relative}.auth-field-input{border:1px solid var(--cream-dark);width:100%;color:var(--ink);letter-spacing:.04em;appearance:none;background:#fff;outline:none;padding:12px 16px;font-family:DM Mono,monospace;font-size:12px;transition:border-color .2s,box-shadow .2s}.auth-field-input::placeholder{color:var(--cream-mid)}.auth-field-input:focus{border-color:var(--ink);box-shadow:0 0 0 3px #1a18140d}.auth-field-input.auth-error{border-color:var(--rust);box-shadow:0 0 0 3px #c4503a0f}.auth-pass-toggle{cursor:pointer;color:var(--ink-muted);background:0 0;border:none;align-items:center;padding:4px;transition:color .2s;display:flex;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.auth-pass-toggle:hover{color:var(--ink)}.auth-pass-toggle svg{width:14px;height:14px}.auth-field-error-msg{color:var(--rust);letter-spacing:.08em;margin-top:5px;font-size:9px;display:none}.auth-field-error-msg.show{display:block}.auth-btn-primary{background:var(--ink);color:#fff;cursor:pointer;letter-spacing:.26em;text-transform:uppercase;border:none;justify-content:center;align-items:center;gap:10px;width:100%;margin-top:4px;padding:14px 24px;font-family:DM Mono,monospace;font-size:9px;font-weight:400;transition:background .2s,transform .15s;display:flex}.auth-btn-primary:hover{background:var(--ink-soft)}.auth-btn-primary:active{transform:translateY(1px)}.auth-btn-primary.gold{background:var(--gold);color:var(--ink)}.auth-btn-primary.gold:hover{background:var(--gold-light)}.auth-btn-primary.loading{pointer-events:none;opacity:.7}.auth-btn-link{cursor:pointer;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-muted);background:0 0;border:none;padding:0;font-family:DM Mono,monospace;font-size:9px;text-decoration:none;transition:color .2s}.auth-btn-link:hover{color:var(--ink)}.auth-btn-link.gold{color:var(--gold)}.auth-btn-link.gold:hover{color:var(--gold-light)}.auth-form-row{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.auth-check-row{cursor:pointer;align-items:center;gap:10px;display:flex}.auth-check-box{border:1px solid var(--cream-dark);background:#fff;flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;transition:all .2s;display:flex}.auth-check-box.on{border-color:var(--ink);background:var(--ink)}.auth-check-box svg{width:9px;height:9px}.auth-check-label{color:var(--ink-muted);letter-spacing:.04em;font-size:9.5px}.auth-success-icon{border:1px solid var(--sage);border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin-bottom:24px;display:flex}.auth-success-icon svg{width:22px;height:22px}.auth-info-icon{border:1px solid var(--gold-pale);background:var(--gold-pale);justify-content:center;align-items:center;width:52px;height:52px;margin-bottom:24px;display:flex}.auth-info-icon svg{width:22px;height:22px}.auth-otp-note{background:var(--cream-dark);color:var(--ink-soft);letter-spacing:.04em;align-items:flex-start;gap:10px;margin-bottom:24px;padding:12px 16px;font-size:10px;line-height:1.55;display:flex}.auth-otp-note svg{width:13px;height:13px;color:var(--gold);flex-shrink:0;margin-top:1px}.auth-step-row{align-items:center;gap:6px;margin-bottom:28px;display:flex}.auth-step-dot{background:var(--cream-dark);border-radius:50%;width:6px;height:6px;transition:background .3s,width .3s}.auth-step-dot.active{background:var(--ink);border-radius:3px;width:20px}.auth-step-dot.done{background:var(--gold)}.auth-back-link{letter-spacing:.16em;text-transform:uppercase;color:var(--ink-muted);cursor:pointer;background:0 0;border:none;align-items:center;gap:7px;margin-bottom:32px;padding:0;font-family:DM Mono,monospace;font-size:9px;transition:color .2s;display:flex}.auth-back-link:hover{color:var(--ink)}.auth-back-link svg{width:12px;height:12px}.auth-right-footer{justify-content:space-between;align-items:center;display:flex;position:absolute;bottom:32px;left:48px;right:48px}.auth-right-footer-note{color:var(--ink-muted);letter-spacing:.06em;font-size:8.5px}.auth-alert{letter-spacing:.04em;align-items:flex-start;gap:9px;margin-bottom:18px;padding:11px 16px;font-size:9.5px;line-height:1.5}.auth-alert-error{background:var(--rust-pale);color:var(--rust)}.auth-alert svg{flex-shrink:0;width:13px;height:13px;margin-top:1px}.auth-strength-track{background:var(--cream-dark);gap:3px;height:2px;margin-top:8px;display:flex}.auth-strength-seg{background:var(--cream-mid);flex:1;height:100%;transition:background .3s}.auth-strength-label{color:var(--ink-muted);letter-spacing:.06em;margin-top:5px;font-size:8.5px}
