.auth{flex-direction:column;gap:24px;max-width:1080px;margin:0 auto;padding:28px 32px 96px;display:flex}.auth-top{border-bottom:1px solid var(--border-subtle);align-items:center;gap:16px;padding-bottom:16px;display:flex}.auth-top-brand{align-items:center;gap:10px;display:flex}.auth-top-brand img{width:22px;height:22px}.auth-top-brand b{color:var(--fg-default);letter-spacing:0;font-size:14px;font-weight:600}.auth-top-brand span{color:var(--fg-tertiary);font-size:13px;font-weight:500}.auth-top-meta{color:var(--fg-tertiary);font-family:var(--font-mono);letter-spacing:var(--tracking-caps);text-transform:uppercase;align-items:center;gap:16px;margin-left:auto;font-size:11px;display:flex}.auth-top-meta .stamp{white-space:nowrap;align-items:center;gap:7px;display:inline-flex}.auth-top-meta .dot{border-radius:var(--radius-full);background:var(--success);width:6px;height:6px}.auth-head{flex-direction:column;gap:8px;display:flex}.auth-head .eyebrow{color:var(--fg-tertiary);font-family:var(--font-mono);letter-spacing:var(--tracking-caps);text-transform:uppercase;font-size:11px;font-weight:500}.auth-head h1{color:var(--fg-default);font-size:var(--fs-h1);letter-spacing:var(--tracking-tight);margin:0;font-weight:600;line-height:1.15}.auth-head p{max-width:60ch;color:var(--fg-tertiary);margin:0;font-size:13px;line-height:1.5}.auth-head p b{color:var(--fg-secondary);font-weight:600}.auth-steps{font-family:var(--font-mono);letter-spacing:var(--tracking-caps);text-transform:uppercase;gap:24px;padding-top:4px;font-size:11px;display:flex}.auth-steps .step{color:var(--fg-muted);align-items:baseline;gap:8px;display:inline-flex}.auth-steps .step.on{color:var(--fg-default)}.auth-steps .step.done{color:var(--fg-tertiary)}.auth-steps .step.done:after{content:"✓";color:var(--success);margin-left:6px}.auth-steps .num{font-variant-numeric:tabular-nums}.auth-body{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:20px;display:grid}@media (width<=880px){.auth-body{grid-template-columns:1fr}}.auth-card{border:1px solid var(--border-subtle);border-radius:var(--radius-hero);background:var(--bg-canvas);box-shadow:var(--shadow-xs);padding:24px}.auth-card h3{color:var(--fg-default);letter-spacing:0;margin:0 0 4px;font-size:15px;font-weight:600}.auth-card .sub{color:var(--fg-tertiary);margin:0 0 18px;font-size:13px;line-height:1.5}.auth-card .sub a{color:var(--fg-link)}.auth-form{flex-direction:column;gap:14px;display:flex}.auth-field{flex-direction:column;gap:6px;display:flex}.auth-field-row{grid-template-columns:1fr 1fr;gap:14px;display:grid}.auth-lab{color:var(--fg-tertiary);font-family:var(--font-mono);letter-spacing:var(--tracking-caps);text-transform:uppercase;justify-content:space-between;align-items:baseline;font-size:11px;font-weight:500;display:flex}.auth-lab a,.auth-lab button{color:var(--fg-link);cursor:pointer;font-family:var(--font-sans);letter-spacing:0;text-transform:none;background:0 0;border:0;margin:0;padding:0;font-size:12px}.auth-lab a:hover,.auth-lab button:hover{color:var(--royal-700)}.auth-input{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-canvas);width:100%;height:36px;color:var(--fg-default);font:inherit;transition:border-color var(--dur-fast) var(--ease-standard), box-shadow var(--dur-fast) var(--ease-standard);padding:0 12px;font-size:13px}.auth-input::placeholder{color:var(--fg-muted)}.auth-input:hover{border-color:var(--border-strong)}.auth-input.mono{font-family:var(--font-mono);font-size:13px}.auth-codes{grid-template-columns:repeat(6,1fr);gap:8px;display:grid}.auth-codes input{text-align:center;height:48px;font-family:var(--font-mono);font-variant-numeric:tabular-nums;padding:0;font-size:20px}.auth-check{color:var(--fg-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:flex-start;gap:10px;font-size:13px;line-height:1.5;display:flex}.auth-check input{appearance:none;border:1px solid var(--border-strong);background:var(--bg-canvas);cursor:pointer;width:14px;height:14px;transition:background var(--dur-fast) var(--ease-standard), border-color var(--dur-fast) var(--ease-standard);border-radius:3px;flex:none;place-items:center;margin:2px 0 0;display:grid}.auth-check input:checked{border-color:var(--royal-500);background:var(--royal-500)}.auth-check input:checked:after{content:"";border-left:1.5px solid var(--bg-canvas);border-bottom:1.5px solid var(--bg-canvas);width:7px;height:4px;transform:rotate(-45deg)translateY(-1px)}.auth-check a{color:var(--fg-link);text-decoration:underline}.auth-btn{border-radius:var(--radius-md);height:36px;font:inherit;cursor:pointer;transition:background var(--dur-fast) var(--ease-standard), border-color var(--dur-fast) var(--ease-standard);border:1px solid #0000;align-items:center;gap:8px;padding:0 14px;font-size:13px;font-weight:500;text-decoration:none;display:inline-flex}.auth-btn:disabled{cursor:not-allowed;opacity:.55}.auth-btn-primary{background:var(--royal-500);border-color:var(--royal-500);color:var(--fg-on-royal)}.auth-btn-primary:hover{background:var(--royal-600);border-color:var(--royal-600)}.auth-btn-secondary{background:var(--bg-canvas);border-color:var(--border-subtle);color:var(--fg-default)}.auth-btn-secondary:hover{background:var(--bg-subtle);border-color:var(--border-strong)}.auth-btn-ghost{color:var(--fg-secondary);background:0 0;border-color:#0000;padding:0 8px}.auth-btn-ghost:hover{background:var(--bg-subtle);color:var(--fg-default)}.auth-actions{align-items:center;gap:8px;padding-top:4px;display:flex}.auth-divider{grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;margin:4px 0 6px;display:grid}.auth-divider:before,.auth-divider:after{content:"";background:var(--border-subtle);height:1px}.auth-divider span{color:var(--fg-tertiary);font-family:var(--font-mono);letter-spacing:var(--tracking-caps);text-transform:uppercase;font-size:10.5px;font-weight:500}.auth-rows{flex-direction:column;gap:0;display:flex}.auth-rows a,.auth-rows button{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-canvas);color:var(--fg-default);font:inherit;cursor:pointer;text-align:left;transition:background var(--dur-fast) var(--ease-standard);justify-content:space-between;align-items:center;gap:12px;margin-top:-1px;padding:10px 12px;font-size:13px;text-decoration:none;display:flex}.auth-rows a:first-child,.auth-rows button:first-child{margin-top:0}.auth-rows a:hover,.auth-rows button:hover{background:var(--bg-subtle)}.auth-rows .tag{color:var(--fg-tertiary);font-family:var(--font-mono);font-size:11px}.auth-rows .ar{color:var(--fg-tertiary)}.auth-sidecar{flex-direction:column;gap:12px;display:flex}.auth-sidecar .auth-card{padding:16px 18px}.auth-sidecar h4{color:var(--fg-tertiary);font-family:var(--font-mono);letter-spacing:var(--tracking-caps);text-transform:uppercase;margin:0 0 12px;font-size:11px;font-weight:500}.auth-sidecar dl{grid-template-columns:96px 1fr;gap:8px 12px;margin:0;display:grid}.auth-sidecar dt{color:var(--fg-tertiary);font-family:var(--font-mono);letter-spacing:var(--tracking-caps);text-transform:uppercase;white-space:nowrap;font-size:11px}.auth-sidecar dd{color:var(--fg-default);font-family:var(--font-mono);font-variant-numeric:tabular-nums;margin:0;font-size:12.5px}.auth-sidecar dd small{color:var(--fg-tertiary);margin-left:4px;font-size:11px}.auth-sidecar .note{border-top:1px solid var(--border-subtle);color:var(--fg-tertiary);font-family:var(--font-sans);margin:12px 0 0;padding-top:12px;font-size:12px;line-height:1.5}.auth-sidecar .note b{color:var(--fg-secondary);font-weight:500}.auth-sidecar .note a{color:var(--fg-link);text-decoration:underline}.auth-banner{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--bg-canvas);color:var(--fg-default);grid-template-columns:auto 1fr;align-items:start;gap:14px;padding:14px 16px;font-size:13px;line-height:1.5;display:grid}.auth-banner.warn{background:var(--warning-bg);border-color:color-mix(in oklab, var(--warning) 24%, transparent)}.auth-banner.danger{background:var(--danger-bg);border-color:color-mix(in oklab, var(--danger) 24%, transparent)}.auth-banner .badge{background:var(--bg-canvas);color:var(--fg-default);font-family:var(--font-mono);letter-spacing:var(--tracking-caps);text-transform:uppercase;white-space:nowrap;border-radius:4px;padding:3px 8px;font-size:10.5px;font-weight:600}.auth-banner.warn .badge{color:var(--warning-fg)}.auth-banner.danger .badge{color:var(--danger-fg)}.auth-banner p{margin:0}.auth-banner p+p{margin-top:6px}.auth-banner b{font-weight:600}.auth-stampcard{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--bg-subtle);grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:12px 14px;display:grid}.auth-stampcard .av{border-radius:var(--radius-full);background:var(--royal-500);width:36px;height:36px;color:var(--fg-on-royal);letter-spacing:0;place-items:center;font-size:12px;font-weight:600;display:grid}.auth-stampcard.muted .av{border:1px solid var(--border-subtle);background:var(--bg-canvas);color:var(--fg-tertiary)}.auth-stampcard .meta b{color:var(--fg-default);letter-spacing:0;font-size:13px;font-weight:600;display:block}.auth-stampcard .meta small{color:var(--fg-tertiary);font-family:var(--font-mono);font-size:11px}.auth-stampcard.muted .meta b{color:var(--fg-tertiary)}.auth-stampcard .role{border:1px solid var(--border-subtle);background:var(--bg-canvas);color:var(--fg-default);font-family:var(--font-mono);letter-spacing:var(--tracking-caps);text-transform:uppercase;border-radius:4px;padding:4px 9px;font-size:10.5px;font-weight:500}.auth-stampcard.muted .role{color:var(--fg-tertiary)}.auth-perms{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.auth-perms li{color:var(--fg-secondary);grid-template-columns:16px 1fr;align-items:start;gap:12px;font-size:13px;line-height:1.5;display:grid}.auth-perms li b{color:var(--fg-default);font-weight:500}.auth-perms li .ic{font-family:var(--font-mono);padding-top:1px;font-size:13px}.auth-perms li.ok .ic{color:var(--success)}.auth-perms li.no .ic{color:var(--fg-muted)}.auth-perms li.no b{color:var(--fg-tertiary)}.auth-pw-strength{grid-template-columns:repeat(3,1fr);gap:4px;margin-top:4px;display:grid}.auth-pw-strength i{background:var(--border-subtle);height:3px;transition:background var(--dur-fast) var(--ease-standard);border-radius:2px}.auth-pw-strength i.on{background:var(--success)}.auth-pwreq{color:var(--fg-tertiary);font-family:var(--font-mono);gap:5px;margin-top:8px;font-size:11px;display:grid}.auth-pwreq div{grid-template-columns:14px 1fr;gap:6px;display:grid}.auth-pwreq div:before{content:"·";color:var(--fg-muted)}.auth-pwreq div.met{color:var(--fg-default)}.auth-pwreq div.met:before{content:"✓";color:var(--success)}.auth-steplist{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.auth-steplist li{border-bottom:1px solid var(--border-subtle);color:var(--fg-default);grid-template-columns:28px 1fr;align-items:start;gap:12px;padding:12px 0;font-size:13.5px;line-height:1.5;display:grid}.auth-steplist li:last-child{border-bottom:0}.auth-steplist .num{color:var(--fg-tertiary);font-family:var(--font-mono);letter-spacing:var(--tracking-caps);text-transform:uppercase;padding-top:2px;font-size:11px}.auth-steplist b{font-weight:600}.auth-colophon{border-top:1px solid var(--border-subtle);color:var(--fg-tertiary);font-family:var(--font-mono);letter-spacing:var(--tracking-caps);text-transform:uppercase;justify-content:space-between;gap:16px;margin-top:24px;padding-top:16px;font-size:11px;display:flex}.auth-colophon .links{gap:18px;display:flex}.auth-colophon a{color:var(--fg-tertiary)}.auth-colophon a:hover{color:var(--fg-default)}.auth-link{color:var(--fg-link);text-decoration:none}.auth-link:hover{color:var(--fg-link-hover)}@media (width<=720px){.auth{padding:20px 16px 64px}.auth-top-meta{display:none}.auth-field-row{grid-template-columns:1fr}.auth-colophon{flex-direction:column;gap:8px}}
