.birth-date-field{position:relative}
.birth-date-field input{padding-right:48px!important;font-variant-numeric:tabular-nums}
.birth-date-toggle{position:absolute;right:4px;bottom:4px;display:grid;place-items:center;width:38px;height:38px;border:0;border-radius:8px;background:transparent;color:#0369a1;cursor:pointer}
.birth-date-toggle:hover{background:#e0f2fe}
.birth-date-toggle:focus-visible,.birth-date-calendar :focus-visible{outline:2px solid #0369a1;outline-offset:2px}
.birth-date-toggle svg{width:21px;height:21px}
.birth-date-calendar{position:absolute;z-index:20;top:calc(100% + 7px);left:0;width:min(320px,100%);padding:12px;border:1px solid #e2e8f0;border-radius:12px;background:#fff;box-shadow:0 12px 32px rgba(15,23,42,.14);color:#0f172a;font-size:14px}
.birth-date-calendar[hidden]{display:none}
.birth-date-calendar-head{display:grid;grid-template-columns:32px minmax(0,1fr) 74px 32px;align-items:center;gap:5px;margin-bottom:10px}
.birth-date-calendar-head button,.birth-date-calendar-head select{height:36px;border:1px solid #e2e8f0;border-radius:8px;background:#fff;color:#0f172a;font:inherit}
.birth-date-calendar-head button{font-size:24px;line-height:1;cursor:pointer}
.birth-date-calendar-head button:disabled{color:#94a3b8;cursor:not-allowed}
.birth-date-calendar-head select{min-width:0;padding:0 3px;cursor:pointer}
.birth-date-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;text-align:center}
.birth-date-calendar-grid .weekday{padding:7px 0;color:#475569;font-size:13px;font-weight:650}
.birth-date-calendar-grid button{width:100%;min-height:36px;padding:0;border:0;border-radius:8px;background:transparent;color:#0f172a;font:inherit;cursor:pointer}
.birth-date-calendar-grid button:hover:not(:disabled){background:#e0f2fe;color:#075985}
.birth-date-calendar-grid button[aria-pressed=true]{background:#0369a1;color:#fff}
.birth-date-calendar-grid button:disabled{color:#94a3b8;cursor:not-allowed}
@media(max-width:420px){.birth-date-calendar{width:100%}}
