.tot-auth-page{--tot-gutter:var(--space-4);min-height:100dvh;display:flex;flex-direction:column;background:var(--color-surface);color:var(--color-text-primary);font-family:var(--font-family-ui)}@media (min-width:768px){.tot-auth-page{--tot-gutter:var(--space-8)}}.tot-auth-page__body{flex:1 1;display:flex;flex-direction:column;justify-content:flex-end;width:100%;max-width:var(--layout-max-width);margin-inline:auto;padding-block:var(--space-8) var(--space-10);padding-inline:var(--tot-gutter)}@media (min-width:768px){.tot-auth-page__body{justify-content:flex-start;align-items:flex-start;padding-block:var(--space-12) var(--space-16)}}.tot-auth-card{width:100%;max-width:26rem;display:flex;flex-direction:column;gap:var(--space-5)}.tot-auth-card__intro{display:grid;grid-gap:var(--space-2);gap:var(--space-2)}.tot-auth-card__title{font-family:var(--font-family-display);font-weight:var(--font-weight-regular);font-size:var(--font-size-xl);line-height:var(--line-height-heading);letter-spacing:var(--tracking-snug);margin:0}.tot-auth-card__lead{font-size:var(--font-size-base);line-height:var(--line-height-normal)}.tot-auth-card__help,.tot-auth-card__lead{color:var(--color-text-secondary);margin:0}.tot-auth-card__help{font-size:var(--font-size-sm);line-height:var(--line-height-ui)}.tot-auth-card__help a{color:var(--color-text-link);text-underline-offset:3px}.tot-auth-card__alt{font-size:var(--font-size-sm);line-height:var(--line-height-ui);color:var(--color-text-secondary);text-align:center;margin:0}.tot-auth-card__alt a{color:var(--color-text-link);text-underline-offset:3px;display:inline-block;padding-block:var(--space-2)}.tot-auth-fields{background:var(--color-surface-raised);border:1px solid var(--color-border-default);border-radius:var(--radius-card);overflow:hidden}.tot-auth-fields__group{display:flex;flex-direction:column;gap:var(--space-5);padding:var(--space-5);border-top:1px solid var(--color-divider)}.tot-auth-fields__group:first-of-type{border-top:0}.tot-auth-field{display:flex;flex-direction:column;gap:var(--space-2)}.tot-auth-input{width:100%;box-sizing:border-box;min-height:var(--touch-comfortable);padding:var(--space-3) var(--space-4);font-family:var(--font-family-ui);font-size:var(--font-size-base);line-height:var(--line-height-ui);color:var(--color-text-primary);border-radius:var(--radius-input)}.tot-auth-input[aria-invalid=true]:focus{outline-color:var(--color-status-danger-accent)}.sdf-password .tot-auth-input{padding-right:var(--space-24)}.tot-auth-field__hint{font-size:var(--font-size-sm);line-height:var(--line-height-ui);color:var(--color-text-secondary);margin:0}.tot-auth-form .tot-btn[disabled],.tot-sheet__panel .tot-btn[disabled]{background:var(--color-action-primary-disabled);cursor:not-allowed}.tot-auth-form{display:flex;flex-direction:column;gap:var(--space-5)}.tot-auth-notice{display:grid;grid-gap:var(--space-2);gap:var(--space-2)}.tot-auth-notice__action{margin-top:var(--space-4);display:flex;flex-direction:column}.tot-auth-sent,.tot-auth-sent__actions{display:flex;flex-direction:column;gap:var(--space-3)}.tot-auth-sent__actions{margin-top:var(--space-3)}.tot-auth-value{display:grid;grid-gap:var(--space-2);gap:var(--space-2)}.tot-auth-value__text{margin:0;font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--color-text-primary);overflow-wrap:anywhere}.tot-auth-linkbutton{font:inherit;color:var(--color-text-link);background:none;border:0;padding:0;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.tot-auth-linkbutton:hover{color:var(--color-text-link-hover)}.tot-sheet__scrim{position:fixed;inset:0;z-index:60;display:flex;align-items:flex-end;justify-content:center;background:rgba(35,35,35,.45)}.tot-sheet__panel{position:relative;width:100%;max-width:30rem;max-height:88dvh;overflow-y:auto;padding:var(--space-6) var(--space-5) var(--space-8);background:var(--color-surface-raised);color:var(--color-text-primary);border-radius:var(--radius-bottom-sheet) var(--radius-bottom-sheet) 0 0;box-shadow:var(--shadow-modal)}.tot-sheet__grip{width:36px;height:4px;margin:0 auto var(--space-4);border-radius:var(--radius-pill);background:var(--color-border-strong)}@media (min-width:768px){.tot-sheet__scrim{align-items:center;padding:var(--space-6)}.tot-sheet__panel{max-height:85vh;padding:var(--space-8);border-radius:var(--radius-modal)}.tot-sheet__grip{display:none}}.tot-sheet__head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-2)}.tot-sheet__title{font-family:var(--font-family-display);font-weight:var(--font-weight-regular);font-size:var(--font-size-lg);line-height:var(--line-height-heading);margin:0}.tot-sheet__close{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;min-width:var(--touch-min);min-height:var(--touch-min);font:inherit;font-size:var(--font-size-sm);color:var(--color-text-secondary);background:none;border:1px solid transparent;border-radius:var(--radius-button);cursor:pointer}.tot-sheet__close:hover{background:var(--color-surface-band);color:var(--color-text-primary)}.tot-sheet__description{font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--color-text-secondary);margin:0 0 var(--space-5)}.tot-consent{display:flex;gap:var(--space-2);align-items:flex-start;margin-top:var(--space-3);font-size:var(--text-sm);line-height:1.45;color:var(--color-text-muted);cursor:pointer}.tot-consent input{flex:0 0 auto;width:1.05rem;height:1.05rem;margin-top:.12rem;accent-color:var(--color-action);cursor:pointer}.tot-form-alert{margin-top:var(--space-3)}.tot-google-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:var(--touch-comfortable);padding:var(--space-3) var(--space-4);border:1px solid #747775;border-radius:var(--radius-button);background:#fff;color:#1f1f1f;font-family:"Roboto",var(--font-family-ui);font-size:14px;font-weight:500;line-height:20px;text-decoration:none;cursor:pointer}.tot-google-btn:hover{background:#f2f2f2}.tot-google-btn:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.tot-google-btn__mark{flex:0 0 auto}.tot-auth-divider{display:flex;align-items:center;gap:var(--space-3);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.tot-auth-divider:after,.tot-auth-divider:before{content:"";flex:1 1 auto;border-top:1px solid var(--color-border-default)}