.hc-birthday-settings{gap:var(--hc-space-3);margin-top:var(--hc-space-8);padding-top:var(--hc-space-6);border-top:1px solid var(--hc-line);scroll-margin-top:96px;display:grid}.hc-birthday-settings h2{font:var(--hc-weight-semibold) var(--hc-text-lg) / 1.3 var(--hc-font-sans);color:var(--hc-ink);margin:0}.hc-birthday-settings .hc-birthday-date{align-items:flex-end;gap:var(--hc-space-3);flex-wrap:wrap;display:flex}.hc-birthday-settings .hc-birthday-date label{gap:var(--hc-space-1);font:var(--hc-weight-medium) var(--hc-text-sm) / 1.4 var(--hc-font-sans);color:var(--hc-ink-2);flex:0 240px;display:grid}.hc-birthday-settings .hc-birthday-date input{width:100%;min-height:var(--hc-touch);padding:0 var(--hc-space-3);border:1px solid var(--hc-field-border);border-radius:var(--hc-radius-sm);background:var(--hc-surface);color:var(--hc-ink);font:var(--hc-text-md) / 1 var(--hc-font-sans)}.hc-birthday-settings .hc-birthday-date input[aria-invalid=true]{border-color:var(--hc-danger)}.hc-birthday-save{min-height:var(--hc-touch);padding:0 var(--hc-space-5);border-radius:var(--hc-radius-pill);background:var(--hc-action);color:var(--hc-on-action);font:var(--hc-weight-semibold) var(--hc-text-sm) / 1 var(--hc-font-sans);cursor:pointer;border:0}.hc-birthday-save:hover:not(:disabled){background:var(--hc-action-hover)}.hc-birthday-save:disabled{opacity:.5;cursor:default}.hc-birthday-link{min-height:var(--hc-touch);color:var(--hc-ink-2);font:var(--hc-text-sm) / 1.4 var(--hc-font-sans);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.hc-birthday-muted{color:var(--hc-muted);font:var(--hc-text-sm) / 1.5 var(--hc-font-sans);margin:0}.hc-birthday-muted a{color:var(--hc-ink)}.hc-birthday-muted .hc-birthday-link{min-height:0}.hc-birthday-switches{border:0;margin:0;padding:0;display:grid}.hc-birthday-switches:disabled{opacity:.55}.hc-birthday-settings .hc-birthday-switch{justify-content:space-between;align-items:center;gap:var(--hc-space-4);padding:var(--hc-space-3) 0;border-bottom:1px solid var(--hc-line);cursor:pointer;display:flex}.hc-birthday-switch:last-child{border-bottom:0}.hc-birthday-settings .hc-birthday-switch span{gap:2px;display:grid}.hc-birthday-settings .hc-birthday-switch strong{color:var(--hc-ink);font:var(--hc-weight-medium) var(--hc-text-md) / 1.35 var(--hc-font-sans)}.hc-birthday-settings .hc-birthday-switch small{color:var(--hc-muted);font:var(--hc-text-sm) / 1.45 var(--hc-font-sans)}.hc-birthday-settings .hc-birthday-switch input[type=checkbox]{appearance:none;border-radius:var(--hc-radius-pill);background:var(--hc-taupe);cursor:pointer;width:44px;height:26px;transition:background var(--hc-duration-fast) var(--hc-ease);border:0;flex:none;margin:0;padding:0;position:relative}.hc-birthday-switch input:after{content:"";background:var(--hc-surface);width:20px;height:20px;box-shadow:var(--hc-shadow-sm);transition:transform var(--hc-duration-fast) var(--hc-ease);border-radius:50%;position:absolute;top:3px;left:3px}.hc-birthday-settings .hc-birthday-switch input:checked{background:var(--hc-action)}.hc-birthday-settings .hc-birthday-switch input:checked:after{transform:translate(18px)}.hc-birthday-switch input:focus-visible{outline:2px solid var(--hc-focus);outline-offset:2px}.hc-birthday-switch input:disabled{cursor:default}.hc-birthday-note{min-height:1.5em;color:var(--hc-ink-2);font:var(--hc-text-sm) / 1.5 var(--hc-font-sans);align-items:center;gap:6px;margin:0;display:flex}.hc-birthday-note.is-error{color:var(--hc-danger)}.hc-birthday-skeleton{width:min(320px,100%);height:var(--hc-touch);border-radius:var(--hc-radius-sm);background:linear-gradient(90deg, var(--hc-sunken), var(--hc-canvas), var(--hc-sunken));animation:hc-birthday-shimmer 1.2s var(--hc-ease) infinite;background-size:200% 100%;display:block}@keyframes hc-birthday-shimmer{to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.hc-birthday-skeleton{animation:none}.hc-birthday-switch input,.hc-birthday-switch input:after{transition:none}}.hc-birthday-rail,.hc-birthday-list{margin:0;padding:0;list-style:none}.hc-birthday-rail{gap:var(--hc-space-2);overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:none;padding:2px 0 var(--hc-space-1);display:flex;overflow-x:auto}.hc-birthday-rail::-webkit-scrollbar{display:none}.hc-birthday-rail li{scroll-snap-align:start;flex:none}.hc-birthday-rail .hc-birthday-person{min-width:176px;padding:var(--hc-space-2) var(--hc-space-3) var(--hc-space-2) var(--hc-space-2);border:1px solid var(--hc-line);border-radius:var(--hc-radius-pill);background:var(--hc-surface)}.hc-birthday-rail li.is-today .hc-birthday-person{border-color:var(--hc-wine-soft);background:var(--hc-cream)}.hc-birthday-person{align-items:center;gap:var(--hc-space-3);min-width:0;color:var(--hc-ink);transition:background var(--hc-duration-fast) var(--hc-ease);text-decoration:none;display:flex}a.hc-birthday-person:hover{background:var(--hc-canvas)}.hc-birthday-avatar.hc-public-person-avatar{background:var(--hc-sunken);width:40px;height:40px;color:var(--hc-ink-2);font:var(--hc-weight-semibold) var(--hc-text-sm) / 1 var(--hc-font-sans);border-radius:50%;flex:none;place-items:center;display:grid}li.is-today .hc-birthday-avatar.hc-public-person-avatar{box-shadow:0 0 0 2px var(--hc-surface), 0 0 0 3px var(--hc-wine)}.hc-birthday-copy{min-width:0;display:grid}.hc-birthday-copy strong{font:var(--hc-weight-semibold) var(--hc-text-sm) / 1.3 var(--hc-font-sans);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.hc-birthday-copy small{color:var(--hc-muted);font:var(--hc-text-xs) / 1.4 var(--hc-font-sans);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.hc-birthday-copy small .is-today{color:var(--hc-wine);font-weight:var(--hc-weight-semibold)}.hc-birthday-banner{align-items:flex-start;gap:var(--hc-space-3);margin:0 0 var(--hc-space-5);padding:var(--hc-space-4) var(--hc-space-5);border-radius:var(--hc-radius-lg);background:var(--hc-wine);color:var(--hc-on-ink);display:flex}.hc-birthday-banner>svg{flex:none;margin-top:2px}.hc-birthday-banner div{font:var(--hc-text-sm) / 1.5 var(--hc-font-sans);gap:2px;display:grid}.hc-birthday-banner strong{font:var(--hc-weight-semibold) var(--hc-text-lg) / 1.3 var(--hc-font-sans)}.hc-birthday-banner a{color:inherit;font-weight:var(--hc-weight-semibold)}.hc-club-birthdays{gap:var(--hc-space-3);padding:var(--hc-space-4);border:1px solid var(--hc-line);border-radius:var(--hc-radius-md);background:var(--hc-surface);display:grid}.hc-club-birthdays h2{align-items:center;gap:var(--hc-space-2);font:var(--hc-weight-semibold) var(--hc-text-md) / 1.3 var(--hc-font-sans);margin:0;display:flex}.hc-club-birthdays h2 span{padding:2px var(--hc-space-2);border-radius:var(--hc-radius-pill);background:var(--hc-wine-soft);color:var(--hc-wine);font:var(--hc-weight-semibold) var(--hc-text-xs) / 1.4 var(--hc-font-sans);margin-left:auto}.hc-birthday-list{gap:var(--hc-space-1);display:grid}.hc-birthday-list li{justify-content:space-between;align-items:center;gap:var(--hc-space-2);display:flex}.hc-birthday-list .hc-birthday-person{padding:var(--hc-space-1);border-radius:var(--hc-radius-sm);flex:1}.hc-birthday-greet{min-height:36px;padding:0 var(--hc-space-3);border:1px solid var(--hc-line-strong);border-radius:var(--hc-radius-pill);background:var(--hc-surface);color:var(--hc-ink);font:var(--hc-weight-semibold) var(--hc-text-xs) / 1 var(--hc-font-sans);white-space:nowrap;cursor:pointer;flex:none;align-items:center;gap:4px;display:inline-flex}.hc-birthday-greet:hover:not(:disabled){border-color:var(--hc-ink)}.hc-birthday-greet.is-done{background:var(--hc-sunken);color:var(--hc-ink-2);cursor:default;border-color:#0000}.hc-person-birthday.is-today{color:var(--hc-wine);font-weight:var(--hc-weight-semibold)}
