/* Check-in and authentication UI. */
.auth-page{padding-top:var(--space-6);padding-bottom:56px}
.auth-intro{text-align:center;padding:var(--space-2) var(--space-3) var(--space-1)}
.auth-intro__icon{width:var(--icon-box-xl);height:var(--icon-box-xl);margin:0 auto var(--space-4);border-radius:var(--radius-round);display:grid;place-items:center;background:var(--surface-soft);color:var(--green);font-size:var(--font-lg)}
.auth-intro small{display:block;color:var(--green);font-size:var(--font-xs);font-weight:700;letter-spacing:.16em}
.auth-intro h1{margin:var(--space-2) 0 var(--space-2);font-family:var(--font-heading-family);font-size:var(--font-xl);line-height:var(--line-tight);font-weight:500;letter-spacing:-.035em}
.auth-intro p{max-width:330px;margin:0 auto;color:var(--muted);font-size:var(--font-xs);line-height:var(--line-normal)}
.auth-feedback{margin:var(--space-4) 0 0;padding:var(--space-3) var(--space-3);border-radius:var(--radius-md);display:grid;grid-template-columns:20px 1fr;gap:var(--space-2);align-items:start;background:#f7eee8;color:#754c39;border:1px solid #ead6ca;font-size:var(--font-xs);line-height:var(--line-normal)}
.auth-feedback .app-icon{margin-top:2px}
.auth-feedback--upcoming{background:#f5f1e5;color:#66582e;border-color:#e8dfc4}
.auth-feedback--expired{background:#f2efeb;color:#5d5952;border-color:#ded8cf}
.auth-feedback--unavailable{background:#edf1ef;color:#43574e;border-color:#d6dfda}
.auth-form{margin-top:var(--space-5);padding:var(--space-5);display:grid;gap:var(--space-4)}
.auth-field{display:grid;gap:var(--space-2)}
.auth-field>span{font-size:var(--font-xs);font-weight:700;color:#44524c}
.auth-field input{width:100%;height:var(--control-lg);padding:0 var(--space-4);border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;color:var(--ink);outline:0;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}
.auth-field input:focus{border-color:rgba(49,73,61,.52);box-shadow:0 0 0 4px var(--green-tint);background:#fff}
.auth-submit{margin-top:3px}
.auth-divider{display:flex;align-items:center;gap:var(--space-3);margin:var(--space-5) 0;color:#9a9e9b;font-size:var(--font-xs);font-weight:700;text-transform:uppercase;letter-spacing:.1em}
.auth-divider::before,.auth-divider::after{content:"";height:1px;flex:1;background:var(--line)}
.auth-providers{display:grid;gap:var(--space-2)}
.auth-provider{width:100%;min-height:var(--control-lg);padding:var(--space-2) var(--space-3);border:1px solid var(--line);border-radius:var(--radius-md);background:rgba(255,253,249,.86);display:grid;grid-template-columns:42px 1fr auto;gap:var(--space-3);align-items:center;text-align:left;color:var(--ink);box-shadow:var(--shadow-card)}
.auth-provider:disabled{opacity:1;cursor:default}
.auth-provider__brand{width:var(--icon-box-md);height:var(--icon-box-md);border-radius:var(--radius-round);display:grid;place-items:center;background:#f1eee8;font-size:var(--font-md)}
.auth-provider strong{font-size:var(--font-sm)}
.auth-provider small{padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);background:var(--surface-soft);color:#7f8581;font-size:var(--font-xs);font-weight:700;letter-spacing:.04em;text-transform:uppercase}
@media(max-width:380px){.auth-page{padding-inline:15px}.auth-intro h1{font-size:var(--font-xl)}.auth-form{padding:var(--space-4)}.auth-provider{grid-template-columns:40px 1fr}.auth-provider small{grid-column:2;justify-self:start;margin-top:-6px}}
