.person-avatar{background:var(--accent);color:var(--on-accent)}.friend-row{flex-direction:row;align-items:center;gap:12px}.friend-name{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.friend-name strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.invite-link code{background:var(--bg);border:1px solid var(--border);word-break:break-all;-webkit-user-select:all;user-select:all;border-radius:8px;padding:8px 10px;font-size:.8rem;display:block}.friends-invites{flex-direction:column;gap:8px;display:flex}.friends-invites .diary-card{align-items:center}.invite-from{flex-direction:column;align-items:center;gap:8px;font-size:1.1rem;display:flex}.invite-notice{flex-direction:row;align-items:center;gap:12px;width:calc(100% - 32px);max-width:420px;margin:16px auto 0}.invite-notice>span{flex-direction:column;gap:2px;display:flex}.diary-friends-card{flex-direction:row;align-items:center;gap:12px}.diary-friends-card>span:last-child{flex-direction:column;flex:1;gap:2px;display:flex}.friends-faces{flex:none;display:flex}.friends-faces .avatar+.avatar{margin-left:-14px}.friends-faces .avatar{border:2px solid var(--card)}.friends-icon{background:var(--primary-soft);width:48px;height:48px;color:var(--primary-strong);border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.friend-open{min-width:0;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:1;align-items:center;gap:12px;padding:0;display:flex}.friend-open:active{opacity:.7}.friend-fridge-header{align-items:center;gap:12px;display:flex}.friends-requests{flex-direction:column;gap:8px;display:flex}.friend-actions{flex:none;gap:6px;display:flex}.plan-guest{align-items:center;gap:10px;display:flex}.plan-guest-remove{width:44px;height:44px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.plan-host{justify-content:flex-start;align-items:center}.leader-badge{border-radius:var(--radius-pill);background:var(--primary-soft);color:var(--primary-strong);flex:none;padding:2px 8px;font-size:.75rem;font-weight:700}.sign-in-buttons{flex-direction:column;align-items:center;gap:10px;width:100%;display:flex}.sign-in-buttons p{margin:0}.diary-google-button{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;justify-content:center;min-height:44px;display:flex}.diary-dev-login{border-top:1px dashed var(--border);flex-direction:column;gap:8px;width:100%;margin-top:12px;padding-top:12px;display:flex}.diary-dev-login .diary-sub{font-size:var(--text-sm)}.sign-in-error{border-radius:var(--radius-small);background:var(--danger-bg);color:var(--danger-text);font-size:var(--text-sm);padding:8px 12px}.sign-in-or{font-size:var(--text-sm);opacity:.75}.email-sign-in-open{justify-content:center;align-items:center;gap:8px;max-width:320px;display:inline-flex}.email-sign-in{text-align:left;flex-direction:column;gap:10px;width:100%;max-width:320px;display:flex}.email-sign-in label{font-size:var(--text-sm)}.email-sign-in input{border:1px solid var(--border);border-radius:var(--radius);background:var(--card);width:100%;min-height:44px;color:var(--text);padding:10px 12px;font-size:1rem}.email-sign-in-code{text-align:center;letter-spacing:.4em;font-variant-numeric:tabular-nums;font-size:1.4rem!important}.email-sign-in-hint{font-size:var(--text-sm);color:var(--on-secondary-soft)}.email-sign-in-actions{justify-content:space-between;gap:8px;display:flex}.profile-step,.tastes-step{justify-content:flex-start;gap:20px}.profile-form{margin:0 auto}.profile-accept{align-items:flex-start;gap:10px;margin-top:6px;line-height:1.4;display:flex}.profile-accept input{accent-color:var(--primary);flex:none;margin-top:1px;width:22px!important;min-height:22px!important}.profile-accept a,.welcome .email-sign-in a{color:var(--primary)}.profile-other{align-self:center}.tastes-step{height:100dvh;min-height:0;padding-top:calc(env(safe-area-inset-top) + 24px);padding-bottom:calc(env(safe-area-inset-bottom) + 16px);gap:14px}.tastes-step .welcome-brand{flex:none;gap:6px}.tastes-step .welcome-title{font-size:var(--text-lg)}.welcome .invite-notice{color:var(--text);text-align:left}.welcome .invite-notice .diary-sub{color:var(--muted)}.profile-gender{border:0;margin:4px 0 0;padding:0}.profile-gender legend{font-size:var(--text-sm);margin-bottom:8px;padding:0}.profile-optional{opacity:.75}.profile-gender [role=radiogroup]{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.profile-gender button{border:1px solid var(--on-secondary-border);border-radius:var(--radius);background:var(--on-secondary-bg);min-height:44px;color:var(--on-secondary);font:inherit;font-size:var(--text-sm);padding:8px}.profile-gender button.selected{border-color:var(--primary);background:var(--primary);color:var(--on-primary)}.profile-step{padding-top:calc(env(safe-area-inset-top) + 20px);gap:16px}.profile-step .welcome-brand{flex:none;gap:6px}.profile-step .welcome-title{font-size:var(--text-lg)}.profile-form{gap:8px}.invite-step{background:var(--bg);min-height:100dvh;color:var(--text)}.profile-actions{padding:12px 24px calc(env(safe-area-inset-bottom) + 12px);background:var(--secondary);box-shadow:var(--shadow);flex-direction:column;gap:8px;margin:4px -24px 0;display:flex;position:sticky;bottom:0}.profile-actions .sign-in-error{margin:0}.email-sign-in input[type=date]{appearance:none;text-align:left;min-height:44px}.house-beers{flex-direction:column;gap:8px;margin:8px 16px;display:flex}.house-beers h3{margin:8px 0 0;font-size:1rem}.house-beers ul{margin:0;padding:0;list-style:none}.house-beers li{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:8px 0;display:flex}.match{background:var(--secondary);color:var(--on-secondary);border-radius:var(--radius);padding:12px 14px}.match p{margin:2px 0}.match small,.match .diary-sub{color:var(--on-secondary-soft)}.match-title{color:var(--primary);font-weight:var(--weight-strong)}.badge{border-radius:var(--radius-pill);border:1px solid var(--border);color:var(--muted);white-space:nowrap;flex:none;padding:2px 8px;font-size:.75rem;font-weight:600}.badge-match{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}
