/* Figma OTP: 40000555:35547. Component geometry; shared colors and type use theme tokens. */
.cando-auth-page{background:var(--cando-neutral-0-2)}
.auth-main{padding:var(--cando-space-16) var(--cando-space-4) var(--cando-space-8);min-height:100svh}
.auth-close{display:grid;place-items:center;position:absolute;inset-block-start:var(--cando-space-3);left:var(--cando-space-4);width:44px;height:44px;border-radius:50%}
.auth-card{width:min(100%,452px);min-height:524px;margin-inline:auto;padding:var(--cando-space-6) var(--cando-space-4);border-radius:12px;background:var(--cando-background-surface);box-shadow:0 4px 6px rgb(0 0 0 / 10%)}
.auth-card p,.auth-card h1,.auth-card h2{margin:0}
.auth-card__heading{display:flex;flex-direction:column;align-items:center;min-height:218px;text-align:center}
.auth-logo{width:112px;height:112px;object-fit:contain;margin-block-end:var(--cando-space-2)}
.auth-card__heading h1{font-size:var(--cando-heading-xs-size);line-height:var(--cando-heading-xs-lh);font-weight:var(--cando-font-weight-bold);color:var(--cando-text-secondary)}
.auth-card__heading p{max-width:220px;margin-block-start:var(--cando-space-1);color:var(--cando-text-tertiary);font-weight:var(--cando-font-weight-medium);font-size:var(--cando-body-m-size);line-height:var(--cando-body-m-lh)}
.auth-form{margin-block-start:var(--cando-space-8)}
.auth-form label,.auth-code-step>p:first-child{display:block;font-size:var(--cando-body-lg-size);line-height:var(--cando-body-lg-lh);font-weight:var(--cando-font-weight-medium)}
.auth-phone{display:block;width:100%;min-width:0;height:40px;margin-block-start:var(--cando-space-1);padding:var(--cando-space-2) var(--cando-space-4);background:var(--cando-background-surface);border:1px solid var(--cando-border-subtle);border-radius:6px;text-align:right;font-size:var(--cando-font-size-m)}
.auth-phone::placeholder{color:var(--cando-text-disabled)}
.auth-code-step{padding-inline:var(--cando-space-2)}
.auth-phone-number{font-weight:var(--cando-font-weight-bold);white-space:nowrap}
.auth-digits{display:flex;justify-content:space-between;gap:var(--cando-space-2);margin-block:var(--cando-space-4);max-width:356px;margin-inline:auto}
.auth-digit{width:40px;min-width:0;flex:0 1 40px;height:40px;padding:0;border:1px solid var(--cando-border-default);border-radius:4px;background:var(--cando-background-surface);color:var(--cando-text-secondary);font-size:var(--cando-font-size-m);text-align:center;caret-color:var(--cando-primary-500)}
.auth-digit:not(:placeholder-shown){border-color:var(--cando-primary-500)}
.auth-phone:focus,.auth-digit:focus{outline:none;border-color:var(--cando-primary-500);box-shadow:inset 0 0 0 1px var(--cando-primary-500)}
.auth-form [aria-invalid=true]{border-color:var(--cando-error-500)}
.auth-text-button{border:0;background:transparent;min-height:44px;padding:var(--cando-space-2);font-weight:var(--cando-font-weight-bold);border-radius:6px;transition:background-color var(--cando-motion-hover-duration) var(--cando-motion-hover-easing)}
.auth-text-button:hover:not(:disabled){background:var(--cando-primary-50)}
.auth-text-button:disabled{color:var(--cando-text-disabled)}
.auth-resend-row{display:flex;justify-content:center;align-items:center;gap:var(--cando-space-1)}
.auth-resend-row>span{font-weight:var(--cando-font-weight-bold)}
.auth-card .auth-retry{font-size:var(--cando-caption-s-size);line-height:var(--cando-caption-s-lh);color:var(--cando-text-tertiary);text-align:center}
.auth-card .auth-error{font-size:var(--cando-body-s-size);line-height:var(--cando-body-s-lh);color:var(--cando-error-600);text-align:center;overflow-wrap:anywhere}
.auth-error:not(:empty){margin-block-start:var(--cando-space-2)}
.auth-actions{display:grid;gap:var(--cando-space-2);margin-block-start:42px}
.auth-submit{width:100%;min-height:44px;font-size:var(--cando-body-lg-size);font-weight:var(--cando-font-weight-bold);border-radius:8px;transition:background-color var(--cando-motion-hover-duration) var(--cando-motion-hover-easing)}
.auth-submit:disabled{background:var(--cando-primary-button-disabled);opacity:.45;box-shadow:none}
.auth-card .auth-terms{margin-block-start:var(--cando-space-4);font-size:var(--cando-caption-s-size);line-height:var(--cando-caption-s-lh);text-align:center;color:var(--cando-text-secondary)}
.auth-terms strong{color:var(--cando-info-500);font-weight:var(--cando-font-weight-bold)}
.auth-message{padding-block:var(--cando-space-6);text-align:center}
.auth-card:has(.auth-code-step:not([hidden])){min-height:640px}
.auth-card:has(.auth-success:not([hidden])){min-height:0}
.auth-success{display:flex;flex-direction:column;align-items:center;gap:var(--cando-space-4);text-align:center}
.auth-success img{display:block}
.auth-success h2{font-size:var(--cando-heading-s-size);line-height:var(--cando-heading-s-lh);color:var(--cando-success-500)}
.auth-success .button{width:100%;min-height:44px}
@media(min-width:1280px){
 .auth-main{display:grid;place-items:center;min-height:100svh;padding:120px var(--cando-space-6)}
 .auth-close{inset-block-start:42px;left:max(var(--cando-space-6),calc((100vw - 1440px)/2 + 80px));width:64px;height:64px}
 .auth-card{min-height:640px;padding:var(--cando-space-6)}
 .auth-form{margin-block-start:42px}
 .auth-phone{height:50px;border-radius:8px}
 .auth-code-step{padding-inline:var(--cando-space-6)}
 .auth-submit,.auth-edit{min-height:48px}
 .auth-success{gap:var(--cando-space-8)}
 .auth-card:has(.auth-success:not([hidden])){width:min(100%,567px)}
}
/* Profile completion after OTP sign-in (template-parts/auth/profile.php). */
.auth-profile{display:grid;gap:var(--cando-space-4)}
.auth-field__error{margin-block-start:var(--cando-space-1)!important;font-size:var(--cando-body-s-size);line-height:var(--cando-body-s-lh);color:var(--cando-error-600)}
.auth-field__hint{font-size:var(--cando-body-s-size);line-height:var(--cando-body-s-lh);color:var(--cando-text-tertiary)}
.auth-profile .auth-actions{margin-block-start:var(--cando-space-4)}
