.auth-card--wide{max-width:480px}.auth-brand{display:grid;justify-items:start;gap:10px;margin:0 0 18px;padding:0 0 16px;border-bottom:1px solid var(--color-line-1)}.auth-brand__logo{display:block;height:28px;width:auto}.auth-brand__line{display:inline-flex;align-items:center;gap:6px;margin:0;color:var(--color-ink-3);font-size:var(--text-cap);line-height:1.4}.auth-brand__line .db-i{width:14px;height:14px;flex:none;color:var(--color-ink-2)}.auth-title{margin:0 0 4px;color:var(--color-ink-1);font-size:22px;font-weight:600;letter-spacing:-.02em;line-height:1.25}.auth-lead{margin:0 0 18px;color:var(--color-ink-2);line-height:1.5}.auth-card .field{min-width:0;margin-bottom:14px}.auth-card .field input:not([type=checkbox]){width:100%;min-width:0}.auth-card .field input::placeholder{color:var(--color-ink-3);opacity:1}.auth-card .field__label{color:var(--color-ink-2);font-size:var(--text-cap)}.auth-card .field input[aria-invalid=true]{border-color:var(--color-negative)}.field__error{color:var(--color-negative)}.field__error,.field__hint{margin:0;font-size:var(--text-cap);line-height:1.4}.field__hint{color:var(--color-ink-3)}.field__control{position:relative;display:flex;align-items:stretch}.field__control input{flex:1 1 auto;min-width:0}.field__prefix{display:inline-flex;align-items:center;padding:0 10px;border:1px solid var(--color-line-2);border-right:0;border-radius:var(--radius-md) 0 0 var(--radius-md);background:var(--color-surface-3);color:var(--color-ink-2);font-family:var(--font-mono);font-size:var(--text-sm)}.field__prefix+input{border-top-left-radius:0;border-bottom-left-radius:0}.field__toggle{position:absolute;top:50%;right:4px;display:inline-grid;place-items:center;width:36px;height:36px;transform:translateY(-50%);border:0;border-radius:var(--radius-sm);background:transparent;color:var(--color-ink-3);cursor:pointer}.field__toggle:hover{color:var(--color-ink-1)}.field__toggle:focus-visible{outline:2px solid var(--color-accent);outline-offset:0}.field__control--toggle input{padding-right:44px}.field-row{display:grid;gap:0 12px}@media (min-width:520px){.field-row{grid-template-columns:1fr 1fr}}.auth-card input[data-mask]{font-family:var(--font-mono);font-variant-numeric:tabular-nums}@media (max-width:760px){.auth-card .field input{font-size:16px}}.strength{display:flex;align-items:center;gap:8px}.strength__bars{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;width:96px;flex:none}.strength__bars span{height:4px;border-radius:2px;background:var(--color-surface-4)}.strength[data-level=weak] .strength__bars span:first-child{background:var(--color-warning)}.strength[data-level=medium] .strength__bars span:nth-child(-n+2){background:var(--color-ink-2)}.strength[data-level=strong] .strength__bars span{background:var(--color-accent)}.auth-check{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:start;margin:4px 0 6px;color:var(--color-ink-2);font-size:var(--text-sm);line-height:1.5}.auth-check input{width:20px;height:20px;margin:1px 0 0;accent-color:var(--color-accent)}.auth-check input:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.auth-alt a,.auth-check a,.auth-legal a{color:var(--color-ink-1);text-decoration:underline;text-underline-offset:2px}.auth-alt a:hover,.auth-check a:hover,.auth-legal a:hover{color:var(--color-accent)}.auth-check+.field__error{margin:0 0 12px 30px}.auth-card .form-error a{color:var(--color-ink-1);font-weight:600;text-decoration:underline}.form-success{margin:0 0 12px;padding:10px 12px;border-radius:var(--radius-md);background:var(--color-accent-a08);color:var(--color-ink-1);font-size:var(--text-sm)}.auth-submit{margin-top:8px}.auth-alt{margin:14px 0 0;color:var(--color-ink-2);font-size:var(--text-sm);text-align:center}.auth-note{margin:12px 0 0}.auth-legal,.auth-note{color:var(--color-ink-3);font-size:var(--text-cap);line-height:1.5}.auth-legal{display:flex;gap:10px;align-items:flex-start;margin:16px 0 0;padding:12px 0 0;border-top:1px solid var(--color-line-1)}.auth-legal__age{flex:none;display:inline-grid;place-items:center;min-width:30px;height:22px;padding:0 6px;border:1px solid var(--color-line-3);border-radius:var(--radius-sm);color:var(--color-ink-1);font-family:var(--font-mono);font-size:11px;font-weight:600}.auth-legal p{margin:0}@media (max-width:760px){.auth-card:not(.age-gate){margin-top:16px;margin-bottom:24px;padding:20px 16px}}.auth-progress{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:10px 12px;margin:4px 0 14px;padding:14px 16px;border:1px solid var(--color-accent-a26);border-radius:12px;background:var(--color-accent-a08);box-shadow:0 0 24px var(--color-accent-a14)}.auth-progress-spinner{width:18px;height:18px;border-radius:50%;border:2px solid var(--color-accent-a26);border-top-color:var(--color-accent);animation:auth-spin .8s linear infinite}.auth-progress-text{color:var(--color-ink-1);font-weight:600}.auth-progress-bar{grid-column:1/-1;height:4px;border-radius:999px;background:var(--color-line-2);overflow:hidden}.auth-progress-fill{display:block;height:100%;width:90%;border-radius:inherit;background:var(--color-accent);box-shadow:0 0 10px var(--color-accent);transform-origin:left center;animation:auth-fill 4s cubic-bezier(.2,.7,.2,1) forwards}.auth-busy .auth-alt,.auth-busy .auth-note,.auth-busy .field{opacity:.55;pointer-events:none}@keyframes auth-spin{to{transform:rotate(1turn)}}@keyframes auth-fill{0%{transform:scaleX(.04)}to{transform:scaleX(1)}}@media (prefers-reduced-motion:reduce){.auth-progress-spinner{animation-duration:2.4s}.auth-progress-fill{animation:none;transform:scaleX(.6)}}.auth-remembered{margin:-6px 0 14px;color:var(--color-ink-3);font-size:var(--text-cap);line-height:1.5}.auth-inline-link{display:inline;margin:0;padding:2px 0;border:0;background:none;color:var(--color-ink-1);font:inherit;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.auth-inline-link:hover{color:var(--color-accent)}.auth-inline-link:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:2px}.auth-brand__name{display:block;font-size:var(--text-lg,1.125rem);font-weight:700;line-height:28px;color:var(--color-ink-1)}