.auth-screen{min-height:100dvh;padding-bottom:calc(var(--space-7) + var(--safe-bottom));grid-template-rows:auto 1fr;display:grid}.auth-screen__body{align-content:center;gap:var(--space-4);padding-bottom:10vh;display:grid}.auth-screen .empty__body p+p{margin-top:var(--space-2)}.auth-actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.auth-pulse{animation:1.2s ease-in-out infinite alternate skeleton-pulse}.reconnect-banner{z-index:11;max-width:616px;left:12px;right:12px;bottom:calc(16px + var(--tabbar-h) + var(--safe-bottom));align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-2) var(--space-2) var(--space-4);border-radius:var(--radius-card);box-shadow:var(--shadow-card);animation:toast-in var(--dur-3) var(--ease-brand);margin-inline:auto;display:flex;position:fixed}.reconnect-banner__icon{color:var(--text);flex-shrink:0;display:flex}.reconnect-banner__text{flex:1;gap:1px;min-width:0;display:grid}.reconnect-banner__title{font:600 var(--fs-small) var(--font-body);line-height:1.3}.reconnect-banner__sub{font-size:var(--fs-caption);line-height:1.3}.reconnect-banner__btn{font-size:var(--fs-small);flex-shrink:0}body:has(.reconnect-banner) .toasts{bottom:calc(var(--tabbar-h) + 88px + var(--safe-bottom))}body:has(.reconnect-banner) .screen{padding-bottom:calc(var(--tabbar-h) + 104px + var(--safe-bottom))}.spotify-status{align-items:center;gap:6px;display:inline-flex}.spotify-status__dot{border-radius:var(--radius-pill);background:color-mix(in srgb, var(--text) 35%, transparent);flex-shrink:0;width:8px;height:8px}.spotify-status__dot[data-state=connected]{background:var(--rating-high)}.spotify-status__dot[data-state=expired],.spotify-status__dot[data-state=not-allowlisted]{background:var(--rating-low)}.setting__actions{gap:var(--space-2);flex-wrap:wrap;flex-shrink:0;display:flex}.disconnect-options{gap:var(--space-3);margin-top:var(--space-4);display:grid}.disconnect-options .btn-primary,.disconnect-options .btn-secondary{width:100%}.disconnect-options__note{font-size:var(--fs-caption);margin-top:calc(var(--space-2) * -1);line-height:1.4}
