.birth-date-selects:has(.birth-wheel-trigger),.birth-time-selects:has(.birth-wheel-trigger){grid-template-columns:repeat(3,minmax(0,1fr))}
.birth-wheel-native{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;overflow:hidden!important}
.birth-wheel-trigger{width:100%;min-width:0;min-height:52px;padding:8px 5px;border:1px solid rgba(244,234,219,.28);border-radius:14px;background:rgba(255,255,255,.08);color:var(--text);font:inherit;font-weight:800;cursor:pointer;touch-action:manipulation}
.birth-wheel-trigger:focus-visible{outline:3px solid #63b7fa;outline-offset:2px}
.birth-wheel-trigger:disabled{opacity:.45}
.birth-wheel-backdrop[hidden]{display:none!important}
.birth-wheel-backdrop{position:fixed;inset:0;z-index:9999;display:flex;align-items:flex-end;justify-content:center;background:rgba(0,0,0,.65);padding:12px}
.birth-wheel-dialog{width:min(100%,460px);background:#fff;color:#171717;border-radius:24px 24px 18px 18px;overflow:hidden;box-shadow:0 16px 60px rgba(0,0,0,.3)}
.birth-wheel-dialog header{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;border-bottom:1px solid #e7e7e7}
.birth-wheel-title{font-size:1.05rem}
.birth-wheel-done{border:0;border-radius:10px;padding:10px 18px;background:#175eaa;color:#fff;font-weight:800;font-size:1rem}
.birth-wheel-viewport{height:260px;width:min(260px,92%);margin:12px auto 20px;position:relative;overflow:hidden;perspective:340px;border-radius:50%;border:1px solid rgba(87,125,169,.3);background:radial-gradient(ellipse at 32% 27%,rgba(255,255,255,.95),rgba(231,242,255,.85) 35%,rgba(176,204,235,.9) 72%,rgba(84,122,169,.85) 100%);box-shadow:inset -19px -12px 28px rgba(36,72,119,.28),inset 12px 8px 22px rgba(255,255,255,.8),0 8px 22px rgba(0,0,0,.15)}
.birth-wheel-items{height:100%;overflow-y:auto;overscroll-behavior:contain;scroll-snap-type:y proximity;scrollbar-width:none;padding:104px 0;box-sizing:border-box;touch-action:pan-y;-webkit-overflow-scrolling:touch;transform-style:preserve-3d}
.birth-wheel-items::-webkit-scrollbar{display:none}
.birth-wheel-item{display:block;width:100%;height:52px;border:0;background:transparent;color:#444;font-size:1.3rem;font-weight:600;scroll-snap-align:center;cursor:pointer;transform-origin:center center;backface-visibility:hidden;will-change:transform,opacity}
.birth-wheel-item[aria-selected=true]{font-weight:900;color:#104e90;font-size:1.4rem}
/* Emphasize only the chosen AM or PM value on the closed field. */
#birth-time-period + .birth-wheel-trigger { font-weight:500!important; color:#c9c1b5!important; text-shadow:none!important; }
#birth-time-period + .birth-wheel-trigger.period-selected { font-weight:900!important; color:#fff!important; -webkit-text-fill-color:#fff!important; text-shadow:0 0 .65px #fff!important; }
/* Make selected wheel option darker and more legible. */
.birth-wheel-dialog:has(.birth-wheel-title) .birth-wheel-item[aria-selected=true]{font-weight:900;color:#082b54;font-size:1.55rem;text-shadow:0 0 .25px currentColor}
.birth-wheel-item[aria-selected=false]{color:#667180;font-weight:500}
.birth-wheel-highlight{pointer-events:none;position:absolute;top:104px;left:22px;right:22px;height:52px;border-top:1px solid rgba(31,100,169,.38);border-bottom:1px solid rgba(31,100,169,.38);border-radius:50%;background:rgba(255,255,255,.12)}
.birth-wheel-viewport::after{content:"";position:absolute;inset:0;border-radius:50%;pointer-events:none;background:radial-gradient(ellipse at 32% 24%,rgba(255,255,255,.27),transparent 45%),radial-gradient(ellipse at center,transparent 43%,rgba(33,63,103,.12) 82%,rgba(24,48,78,.26) 100%)}
@media(min-width:700px){.birth-wheel-backdrop{align-items:center}.birth-wheel-dialog{border-radius:24px}}

/* All wheel fields: emphasize only the chosen value. */
.birth-wheel-trigger{font-weight:500!important;color:#c9c1b5!important;text-shadow:none!important}
.birth-wheel-trigger.period-selected{font-weight:900!important;color:#fff!important;-webkit-text-fill-color:#fff!important;text-shadow:0 0 .65px #fff!important}
