/* Authentication uses a compact task layout; expanded registration and errors
   retain natural scrolling. Shared control sizes and spacing stay unchanged. */
body:has(.auth-compact) .page-section:has(.auth-shell){min-height:0;padding-block:var(--space-4);display:block}
body:has(.auth-compact) .auth-shell{max-width:440px;padding-bottom:0}
.auth-compact{padding:var(--space-4);font-size:var(--font-size-label)}
.auth-compact .auth-card-heading{margin:0 0 var(--space-4)}
.auth-compact .auth-card-heading h1{font:600 28px/1.3 var(--font);margin:0}
.auth-compact .auth-password-panel form{display:grid;gap:var(--space-3);margin:0}
.auth-compact .auth-password-panel .field,.auth-compact .phone-email-registration .field{display:flex;flex-direction:column;gap:var(--label-gap);margin:0}
.auth-compact .field>span{font-size:var(--font-size-label);line-height:1.4}
.auth-compact .field>input:not([type=checkbox]){margin:0;height:var(--control-height);box-sizing:border-box}
.auth-compact .form-error:empty{display:none}
.auth-compact .form-actions{margin:0;display:flex}
.auth-compact .form-actions .button{margin:0;min-height:var(--control-height)}
.auth-compact .auth-options{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}
.auth-compact .auth-options .choice{margin:0;min-height:var(--control-height);font-size:var(--font-size-label);gap:var(--space-2)}
.auth-compact .auth-options>a{display:flex;align-items:center;min-height:var(--control-height);font-size:var(--font-size-label)}
.auth-compact .phone-quick-login,.auth-compact .phone-email-registration{margin:var(--space-2) 0 0}
.auth-compact .phone-quick-login>summary{justify-content:center;color:var(--copper);font-size:var(--font-size-label);min-height:var(--control-height)}
.auth-compact .auth-password-caption,.auth-compact .phone-quick-login[open] .auth-sms-caption{display:none}
.auth-compact .phone-quick-login[open] .auth-password-caption{display:inline}
.auth-compact:has(.phone-quick-login[open]) .auth-password-panel{display:none}
.auth-compact [data-phone-form][data-phone-scope]{margin:0;gap:var(--field-gap)}
.auth-compact .phone-quick-login[open]>form{margin-top:var(--space-2)}
.auth-compact .phone-email-registration[open]>form{display:grid;gap:var(--field-gap);margin-top:var(--space-2)}
.auth-compact .auth-divider{margin:var(--space-2) 0;gap:var(--space-3);line-height:20px}
.auth-compact .auth-providers{grid-template-columns:minmax(0,1fr);gap:var(--space-2)}
.auth-compact .auth-provider{justify-content:center;gap:var(--space-2);padding:var(--space-2);min-width:0;min-height:var(--control-height);font-size:var(--font-size-label)}
.auth-compact .auth-provider span{flex:0 1 auto;padding:0}
.auth-compact .auth-provider small{position:static;padding:0;background:none;font-size:var(--font-size-min)}
.auth-compact .auth-switch{margin:var(--space-2) 0 0;font-size:var(--font-size-label);line-height:1.5}
.auth-compact .auth-footnote{display:flex;justify-content:center;gap:var(--space-4);flex-wrap:wrap;margin-top:var(--space-2);font-size:var(--font-size-caption)}
.auth-compact .auth-footnote>a{display:flex;align-items:center;min-height:var(--control-height)}
.auth-compact .auth-options .choice,.auth-compact .auth-options>a{min-height:var(--touch-target)}
/* Keep the stacked providers on a short first screen without reducing inputs
   or primary buttons; auxiliary rows share their existing touch-target space. */
.auth-compact .auth-password-panel form{gap:var(--space-2)}
.auth-compact .auth-card-heading{margin-bottom:var(--space-3)}
.auth-compact .phone-quick-login{margin-top:0}
.auth-compact .auth-footnote{margin-top:0}
/* The card retains Help / Terms / Privacy. The shopping footer and delivery
   ribbon belong to shopping pages and otherwise create an empty second screen. */
body:has(.auth-compact) :is(.site-footer,.preview-ribbon){display:none}
@media(min-width:769px){body:has(.auth-compact) .header-inner{min-height:72px;padding-block:var(--space-2)}body:has(.auth-compact) .brand-link img{max-height:48px;width:auto}}
@media(max-width:768px){.auth-compact{padding:var(--space-4)}.auth-compact .auth-provider,.auth-compact .auth-options .choice,.auth-compact .auth-options>a,.auth-compact .auth-footnote>a{min-height:var(--touch-target)}}
