.auth-page{background:var(--color-bg-soft);grid-template-rows:auto 1fr;min-height:100svh;display:grid}.auth-header{justify-content:space-between;align-items:center;gap:var(--space-4);padding-block:var(--space-4);display:flex}.auth-brand{color:var(--color-dark)}.auth-header__link{color:var(--color-muted);font-size:14px;font-weight:600;text-decoration:none}.auth-header__link:hover,.auth-text-button:hover{color:var(--color-primary)}.auth-header__link:focus-visible,.auth-text-button:focus-visible,.auth-actions .button:focus-visible,.auth-submit:focus-visible{outline:3px solid var(--color-lime);outline-offset:3px}.auth-main{min-width:0;padding:var(--space-8) var(--space-6);align-content:center;justify-items:center;display:grid}.auth-card{width:min(100%,560px)}.auth-card--entry{overflow:hidden}.auth-intro{gap:var(--space-2);display:grid}.auth-card h1{color:var(--color-dark);margin:0;font-size:32px;font-weight:800;line-height:1.16}.auth-card h2{color:var(--color-dark);margin:0;font-size:26px;font-weight:750;line-height:1.2}.auth-copy{color:var(--color-text);margin:0;font-size:16px;line-height:1.55}.auth-last-used{margin:var(--space-4) 0 0;color:var(--color-muted);font-size:14px;font-weight:600;line-height:1.45}.auth-methods{gap:var(--space-4);margin-top:var(--space-6);display:grid}.auth-google-option{justify-items:center;gap:var(--space-2);min-width:0;display:grid}.google-signin{justify-content:center;width:100%;min-height:48px;display:flex}.auth-google-loading{color:var(--color-muted);margin:0;font-size:13px;line-height:1.45}.auth-divider{align-items:center;gap:var(--space-3);color:var(--color-muted);font-size:13px;line-height:1.45;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:#bdc3c7a6;flex:1;height:1px}.auth-form{gap:var(--space-3);min-width:0;margin:0;display:grid}.auth-form label,.auth-code__label{color:var(--color-dark);font-size:14px;font-weight:650;line-height:1.45}.auth-form input{border-radius:var(--radius-sm);background:var(--color-white);width:100%;min-width:0;min-height:52px;color:var(--color-dark);padding:0 var(--space-4);font:inherit;border:1px solid #bdc3c7d9;outline:none;font-size:16px;transition:border-color .16s,box-shadow .16s}.auth-form input::placeholder{color:var(--color-muted)}.auth-form input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #2341eb1f}.auth-submit{width:100%;margin-top:var(--space-1)}.auth-button-spinner{border:2px solid #ffffff6b;border-top-color:var(--color-white);border-radius:50%;width:17px;height:17px;animation:.8s linear infinite auth-spin}.auth-code{gap:var(--space-3);min-width:0;margin-top:0;display:grid}.auth-code .auth-copy{overflow-wrap:anywhere;font-size:14px}.auth-code .auth-copy strong{color:var(--color-dark);overflow-wrap:anywhere;font-weight:700}.auth-code__label{margin-top:var(--space-2)}.otp-input{width:min(100%,390px);margin-inline:auto;position:relative}.otp-input__cells{gap:var(--space-2);grid-template-columns:repeat(6,minmax(0,1fr));display:grid}.otp-input__cells span{border-radius:var(--radius-sm);background:var(--color-white);min-width:0;min-height:56px;color:var(--color-dark);border:1px solid #bdc3c7d9;place-items:center;font-size:24px;font-weight:700;transition:border-color .16s,box-shadow .16s;display:grid}.otp-input:focus-within .otp-input__cells span{border-color:var(--color-primary);box-shadow:0 0 0 2px #2341eb1a}.otp-input input{z-index:1;opacity:.015;cursor:text;border:0;width:100%;height:100%;position:absolute;inset:0}.auth-code__loading{min-height:var(--space-6);justify-content:center;align-items:center;gap:var(--space-2);color:var(--color-muted);margin:0;font-size:14px;font-weight:600;display:flex}.auth-code__loading .auth-button-spinner{border-color:#2341eb33;border-top-color:var(--color-primary);display:inline-block}.auth-code__actions{justify-content:space-between;gap:var(--space-2) var(--space-4);flex-wrap:wrap;display:flex}.auth-text-button{min-width:0;color:var(--color-primary);padding:var(--space-1) 0;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;font-size:14px;font-weight:650;line-height:1.45}.auth-code__actions .auth-text-button:disabled{opacity:.55;cursor:wait}.auth-form__message{border-radius:var(--radius-sm);color:#8f2e24;padding:var(--space-3);overflow-wrap:anywhere;background:#fff7f6;border:1px solid #8f2e2429;margin:0;font-size:14px;font-weight:550;line-height:1.45}.auth-status-mark{width:48px;height:48px;margin-bottom:var(--space-6);border-radius:var(--radius-sm);color:var(--color-primary);background:#2341eb1a;place-items:center;font-size:22px;font-weight:800;display:grid}.auth-status-mark[data-state=loading]:after{border:2px solid #2341eb40;border-top-color:var(--color-primary);content:"";border-radius:50%;width:20px;height:20px;animation:.8s linear infinite auth-spin}.auth-status-mark[data-state=success]{color:var(--color-dark);background:#aeef2c57}.auth-status-mark[data-state=error]{color:#8f2e24;background:#fff7f6}.auth-actions{gap:var(--space-3);margin-top:var(--space-6);flex-wrap:wrap;display:flex}.auth-actions .button{flex:180px}.auth-success{margin-top:var(--space-8);border-radius:var(--radius-md);padding:var(--space-6);background:#e3f2fd7a;border:1px solid #2341eb21;outline:none}.auth-success .auth-status-mark{margin-bottom:var(--space-4)}.auth-success p{margin:var(--space-2) 0 0;color:var(--color-text);font-size:15px;line-height:1.6}.auth-account{gap:var(--space-3);margin-top:var(--space-6);padding:var(--space-5);border-radius:var(--radius-md);background:var(--color-bg-soft);border:1px solid #bdc3c7a6;display:grid}.auth-account__row{gap:var(--space-4);grid-template-columns:112px minmax(0,1fr);display:grid}.auth-account__label{color:var(--color-muted);font-size:13px;font-weight:650}.auth-account__value{min-width:0;color:var(--color-dark);overflow-wrap:anywhere;font-size:14px;font-weight:650}[hidden]{display:none!important}@keyframes auth-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.auth-status-mark[data-state=loading]:after,.auth-button-spinner{animation:none}}@media (width<=760px){.auth-header{padding-block:var(--space-3)}.auth-main{padding:var(--space-4) var(--space-5) var(--space-8);align-content:start}.auth-card h1{font-size:26px;line-height:1.2}.auth-card h2{font-size:24px}.auth-form input{min-height:48px}.otp-input__cells span{min-height:48px;font-size:22px}.auth-account__row{gap:var(--space-1);grid-template-columns:1fr}}@media (width<=400px){.auth-code__actions{justify-content:stretch;display:grid}}
