.auth-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}.auth-back{position:fixed;top:22px;left:22px;z-index:10;display:inline-flex;align-items:center;gap:7px;padding:9px 15px 9px 12px;border-radius:999px;background:var(--glass-fill-strong);backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));border:1px solid var(--glass-edge);box-shadow:var(--glass-highlight),var(--glass-shadow);font-family:var(--font-mono);font-weight:500;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ash-700);cursor:pointer;transition:color .2s var(--ease-out),transform .2s var(--ease-out),background .2s var(--ease-out)}.auth-back svg{flex-shrink:0}.auth-back:hover{color:var(--color-ink);transform:translateX(-2px);background:#fff}.auth-back:active{transform:scale(.97)}@media (max-width:560px){.auth-back{top:14px;left:14px}}.auth-card{width:100%;max-width:420px;background:var(--glass-fill-strong);backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));border:1px solid var(--glass-edge);border-radius:var(--radius-card);box-shadow:var(--glass-highlight),var(--glass-shadow-strong);padding:36px 32px 30px}.auth-eyebrow{display:block;font-family:var(--font-mono);font-weight:500;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--ash-500);margin-top:6px}.auth-title{font-family:var(--font-heading);font-style:italic;font-weight:400;font-size:38px;line-height:1;letter-spacing:-1px;color:var(--color-ink);margin:26px 0 6px}.auth-sub{font-family:var(--font-primary);font-weight:300;font-size:13px;color:var(--ash-500);margin-bottom:26px}.auth-early{margin:-10px 0 22px;padding:14px 16px;border-radius:12px;background:var(--clinical-mist,#f0f2f4);border:1px solid var(--glass-edge,rgba(0,0,0,.06))}.auth-early strong{display:block;font-family:var(--font-mono);font-weight:500;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--slate,#3d4654);margin-bottom:6px}.auth-early p{margin:0;font-family:var(--font-primary);font-weight:300;font-size:13px;line-height:1.5;color:var(--ash-600)}.auth-field{margin-bottom:20px}.auth-label{display:flex;align-items:baseline;justify-content:space-between;font-family:var(--font-mono);font-weight:500;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ash-500);margin-bottom:8px}.auth-input-row{position:relative;display:flex;align-items:center}.auth-input{width:100%;border:0;border-bottom:1px solid var(--ash-300);background:transparent;padding:8px 0;font-family:var(--font-primary);font-size:15px;color:var(--color-ink);outline:none;transition:border-color .2s var(--ease-out)}.auth-input::placeholder{color:var(--ash-400)}.auth-input:focus{border-bottom-color:var(--color-ink)}.auth-reveal{position:absolute;right:0;background:none;border:0;color:var(--ash-500);cursor:pointer;display:flex;padding:4px}.auth-reveal:hover{color:var(--color-ink)}.auth-check{display:flex;align-items:flex-start;gap:10px;margin-bottom:22px;font-family:var(--font-primary);font-weight:300;font-size:12px;line-height:1.5;color:var(--ash-700)}.auth-check input{margin-top:2px;width:15px;height:15px;accent-color:var(--slate);cursor:pointer;flex-shrink:0}.auth-check a{color:var(--slate);text-decoration:none}.auth-check a:hover{color:var(--color-ink);text-decoration:underline}.auth-btn{width:100%;height:50px;margin-top:6px;border:0;border-radius:999px;background:var(--slate);color:var(--color-paper);font-family:var(--font-primary);font-weight:500;font-size:11px;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:background .2s var(--ease-out),transform .2s var(--ease-out)}.auth-btn:hover{background:var(--slate-deep);transform:translateY(-1px)}.auth-btn:active{transform:scale(.98)}.auth-btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.auth-alt{margin-top:24px;font-family:var(--font-primary);font-weight:300;font-size:13px;color:var(--ash-500);text-align:center}.auth-alt a{color:var(--slate);font-weight:500;text-decoration:none}.auth-alt a:hover{color:var(--color-ink);text-decoration:underline}.auth-note{margin-top:18px;padding:12px 14px;border-radius:var(--radius-tile);background:var(--glass-fill-lab);border:1px solid var(--glass-edge-soft);font-family:var(--font-primary);font-size:12px;color:var(--ash-700)}.auth-logo{display:inline-flex;transition:opacity var(--dur-fast) var(--ease-out)}.auth-logo:hover{opacity:.7}.auth-foot{margin-top:26px;display:flex;justify-content:center;gap:10px;font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;color:var(--ash-400);text-align:center}.auth-foot a{color:var(--ash-500);text-decoration:none;transition:color var(--dur-fast) var(--ease-out)}.auth-foot a:hover{color:var(--ink)}.auth-oauth{width:100%;height:50px;margin-top:4px;display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:999px;background:#fff;border:1px solid var(--ash-300);color:var(--color-ink);cursor:pointer;font-family:var(--font-primary);font-weight:500;font-size:13px;transition:border-color .2s var(--ease-out),background .2s var(--ease-out),transform .2s var(--ease-out)}.auth-oauth:hover{border-color:var(--slate);transform:translateY(-1px)}.auth-oauth:disabled{opacity:.45;cursor:not-allowed;transform:none}.auth-divider{display:flex;align-items:center;gap:12px;margin:22px 0;font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ash-400)}.auth-divider:after,.auth-divider:before{content:"";flex:1;height:1px;background:var(--ash-200)}.auth-note-error{background:rgba(192,86,79,.08);border-color:rgba(192,86,79,.3);color:#9a3b35}