.dashboard-aside { display: grid; align-content: start; gap: 14px; min-width: 0; }
.birthday-panel { min-width: 0; }
.birthday-panel .panel-head { align-items: flex-start; gap: 10px; }
.birthday-month { margin: 7px 0 0; color: var(--green, #16883e); font-size: 12px; text-transform: capitalize; }
.birthday-symbol { display: grid; flex: none; width: 36px; height: 36px; place-items: center; border-radius: 12px; color: #16883e; background: #edf8f0; }
.birthday-symbol svg { width: 21px; height: 21px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.birthday-list { list-style: none; margin: 0; padding: 0; max-height: 320px; overflow-y: auto; }
.birthday-row { display: flex; align-items: center; gap: 10px; padding: 13px 0; border-top: 1px solid var(--line, #dedfdc); }
.birthday-avatar { display: grid; flex: none; width: 34px; height: 34px; place-items: center; border-radius: 50%; background: #f1f3ef; color: #53614e; font-size: 11px; font-weight: 700; }
.birthday-person { min-width: 0; flex: 1; }
.birthday-person a { color: #18221d; font-size: 13px; font-weight: 700; text-decoration: none; overflow-wrap: anywhere; }
.birthday-person a:hover { text-decoration: underline; }
.birthday-person time { display: block; margin-top: 4px; color: var(--muted, #6f746f); font-size: 12px; }
.birthday-tag { flex: none; padding: 5px 7px; border-radius: 999px; background: #f2f3ef; color: #53614e; font-size: 10px; font-weight: 700; }
.birthday-tag.today { background: #e7f7ec; color: #106d31; }
.birthday-empty, .birthday-note { margin: 0; color: var(--muted, #6f746f); font-size: 12px; line-height: 1.6; }
.birthday-note { margin-top: 12px; }
.birthday-note a { display: inline-block; margin-top: 5px; color: #16883e; font-weight: 700; }
.birthday-editor { margin-top: 14px; }
.birthday-fields { display: grid; grid-template-columns: minmax(0, 1fr) minmax(72px, .6fr); gap: 12px; border: 0; padding: 0; margin: 16px 0; min-width: 0; }
.birthday-fields label { display: grid; gap: 7px; font-size: 12px; font-weight: 700; }
.birthday-fields select { width: 100%; min-width: 0; min-height: 44px; padding: 8px 10px; border: 1px solid #cbd0ca; border-radius: 10px; font: inherit; background: #fff; color: #18221d; }
.birthday-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; }
.birthday-save-status { font-size: 12px; color: #16883e; }
.birthday-save-status.error { color: #a62d26; }
