.auth-wrap{min-height:calc(100vh - 200px);display:grid;place-items:center;padding:80px 24px}.auth-card{width:100%;max-width:440px;background:var(--paper-2);border:1px solid var(--line-soft);border-radius:18px;padding:40px}.auth-card h1{font-family:var(--serif);font-size:34px;line-height:1.05;letter-spacing:-.01em;margin:0 0 6px}.auth-card .sub{color:var(--muted);font-size:14px;margin:0 0 28px}.auth-field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.auth-field label{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.auth-field input{font-family:var(--sans);font-size:15px;padding:12px 14px;border:1px solid var(--line-soft);border-radius:10px;background:var(--paper);color:var(--ink);outline:none;transition:border-color .15s}.auth-field input:focus{border-color:var(--ink)}.role-toggle{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:20px}.role-opt{cursor:pointer;border:1px solid var(--line-soft);border-radius:12px;padding:14px;text-align:left;background:var(--paper);transition:all .15s}.role-opt.active{border-color:var(--ink);background:color-mix(in oklab,var(--accent) 22%,var(--paper))}.role-opt strong{display:block;font-size:14px;margin-bottom:2px}.role-opt span{font-size:12px;color:var(--muted)}.auth-error{background:color-mix(in oklab,var(--warn) 18%,var(--paper));border:1px solid color-mix(in oklab,var(--warn) 50%,var(--line-soft));color:var(--ink);font-size:13px;padding:10px 12px;border-radius:10px;margin-bottom:16px}.auth-foot{margin-top:20px;font-size:13px;color:var(--muted);text-align:center}.auth-foot a{color:var(--ink);text-decoration:underline}.auth-card .btn{width:100%;justify-content:center}.auth-divider{display:flex;align-items:center;gap:12px;margin:20px 0;color:var(--muted);font-size:12px}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--line-soft)}.btn-google{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;padding:11px 16px;border:1px solid var(--line-soft);border-radius:10px;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:14px;font-weight:500;cursor:pointer;transition:background .15s,border-color .15s}.btn-google:hover:not(:disabled){background:var(--paper-2);border-color:var(--ink)}.btn-google:disabled{opacity:.5;cursor:not-allowed}.auth-banner{background:color-mix(in oklab,var(--warn) 14%,var(--paper));border:1px solid color-mix(in oklab,var(--warn) 40%,var(--line-soft));border-radius:10px;padding:12px 14px;font-size:13px;margin-bottom:20px;color:var(--ink-2)}
