/* v3.8.3 birthday calendar isolation
   This component owns only the birthday calendar popover geometry/stacking. */
body.home-page .home-top-main-v30>.birthday-calendar-card{position:relative!important;overflow:visible!important;isolation:isolate}
.birthday-calendar-card .birthday-feature,.birthday-calendar-card .ticker-viewport{overflow:hidden!important}
.birthday-calendar-card.calendar-open{z-index:220!important}
.birthday-calendar-card .calendar-popover{
  position:absolute!important;
  top:31px!important;
  right:4px!important;
  left:auto!important;
  z-index:240!important;
  width:min(176px,calc(100vw - 22px))!important;
  max-width:calc(100vw - 22px)!important;
  margin:0!important;
  overflow:visible!important;
  box-sizing:border-box!important;
}
.birthday-calendar-card .calendar-square{padding:4px!important;border-radius:8px!important}
.birthday-calendar-card .calendar-grid-head{grid-template-columns:19px 1fr 19px!important;margin-bottom:1px!important}
.birthday-calendar-card .calendar-grid-head button{height:19px!important;min-height:19px!important;font-size:11px!important;border-radius:5px!important;padding:0!important}
.birthday-calendar-card .calendar-grid-head b{font-size:9.5px!important}
.birthday-calendar-card .calendar-dow,.birthday-calendar-card .calendar-days{gap:1px!important}
.birthday-calendar-card .calendar-dow span{font-size:6.5px!important;line-height:1!important;padding:1px 0!important}
.birthday-calendar-card .calendar-days button{height:14px!important;min-height:14px!important;aspect-ratio:auto!important;padding:0!important;font-size:7px!important;line-height:1!important;border-radius:3px!important}
.birthday-calendar-card .calendar-square>small{display:none!important}
@media(max-width:620px){
  .birthday-calendar-card .calendar-popover{
    top:30px!important;
    right:3px!important;
    width:min(168px,calc(100vw - 18px))!important;
    max-width:calc(100vw - 18px)!important;
  }
  body.home-page .home-top-main-v30>.birthday-calendar-card .birthday-feature{height:128px!important;min-height:128px!important;flex:0 0 128px!important}
  body.home-page .home-top-main-v30>.birthday-calendar-card .birthday-feature .ticker-viewport{min-height:86px!important;padding:2px 1px!important;box-sizing:border-box!important}
}
html.portal-phone .birthday-calendar-card .calendar-popover{
  top:30px!important;
  right:3px!important;
  width:min(168px,calc(100vw - 18px))!important;
  max-width:calc(100vw - 18px)!important;
}
html.portal-phone body.home-page .home-top-main-v30>.birthday-calendar-card .birthday-feature{height:128px!important;min-height:128px!important;flex:0 0 128px!important}
html.portal-phone body.home-page .home-top-main-v30>.birthday-calendar-card .birthday-feature .ticker-viewport{min-height:86px!important;padding:2px 1px!important;box-sizing:border-box!important}

/* v3.8.11: Birthday and Event are one equal-height summary pair. */
body.home-page .home-top-main-v30>.birthday-calendar-card,
body.home-page .home-top-main-v30>.events-card{height:132px!important;min-height:132px!important;max-height:132px!important;box-sizing:border-box!important}
body.home-page .home-top-main-v30>.birthday-calendar-card .birthday-feature,
body.home-page .home-top-main-v30>.events-card .event-feature{height:100%!important;min-height:0!important;max-height:none!important;flex:1 1 auto!important;box-sizing:border-box!important;display:flex!important;flex-direction:column!important}
body.home-page .home-top-main-v30>.birthday-calendar-card .ticker-viewport,
body.home-page .home-top-main-v30>.events-card .ticker-viewport{flex:1 1 auto!important;min-height:0!important;height:auto!important;display:flex!important;align-items:center!important}
@media(max-width:700px){
  body.home-page .home-top-main-v30>.birthday-calendar-card,
  body.home-page .home-top-main-v30>.events-card{height:136px!important;min-height:136px!important;max-height:136px!important}
  body.home-page .home-top-main-v30>.birthday-calendar-card .birthday-feature,
  body.home-page .home-top-main-v30>.events-card .event-feature{height:100%!important;min-height:0!important;max-height:none!important;flex:1 1 auto!important}
  body.home-page .home-top-main-v30>.birthday-calendar-card .birthday-feature .ticker-viewport,
  body.home-page .home-top-main-v30>.events-card .event-feature .ticker-viewport{min-height:0!important;height:auto!important;padding-top:0!important;padding-bottom:0!important}
}
html.portal-phone body.home-page .home-top-main-v30>.birthday-calendar-card,
html.portal-phone body.home-page .home-top-main-v30>.events-card{height:136px!important;min-height:136px!important;max-height:136px!important}
html.portal-phone body.home-page .home-top-main-v30>.birthday-calendar-card .birthday-feature,
html.portal-phone body.home-page .home-top-main-v30>.events-card .event-feature{height:100%!important;min-height:0!important;max-height:none!important;flex:1 1 auto!important}
html.portal-phone body.home-page .home-top-main-v30>.birthday-calendar-card .birthday-feature .ticker-viewport,
html.portal-phone body.home-page .home-top-main-v30>.events-card .event-feature .ticker-viewport{min-height:0!important;height:auto!important}

.birthday-calendar-card .calendar-days button.selected{outline:2px solid var(--blue)!important;outline-offset:-1px!important;background:#eaf2ff!important;color:var(--blue)!important;font-weight:900!important}
