/* Control ANDRIK v55.00k — UI recovery: landscape scroll, clean headers,
   aligned daily actions, portrait monthly graph, and balanced map heading. */

/* ------------------------------------------------------------------
   1. Control Home: Admin panel and Daily summary must scroll in landscape.
   ------------------------------------------------------------------ */
@media (orientation:landscape){
  html:has(.control-home-page),
  body.control-home-page{
    height:100dvh!important;
    min-height:100dvh!important;
    overflow:hidden!important;
  }
  .control-home-page .control-topbar{
    flex:0 0 82px!important;
    height:82px!important;
    min-height:82px!important;
    max-height:82px!important;
    overflow:hidden!important;
  }
  .control-home-page .control-topbar .nav-shell{
    min-height:82px!important;
    height:82px!important;
  }
  .control-home-page .control-topbar .control-center-logo{
    width:72px!important;
    height:72px!important;
  }
  .control-home-page .control-topbar .control-center-logo img{
    width:62px!important;
    height:62px!important;
    max-width:62px!important;
    max-height:62px!important;
  }
  .control-home-page .admin-main.control-swipe-main{
    min-height:0!important;
    overflow:hidden!important;
  }
  .control-home-page .control-swipe-shell{
    height:100%!important;
    overflow:hidden!important;
    touch-action:pan-y!important;
    overscroll-behavior:none!important;
  }
  .control-home-page .control-swipe-track{
    height:100%!important;
  }
  .control-home-page .control-swipe-page,
  .control-home-page .control-swipe-page[aria-hidden="false"],
  .control-home-page .control-menu-page,
  .control-home-page .control-summary-page{
    height:100%!important;
    min-height:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior-y:contain!important;
    touch-action:pan-y!important;
    padding-top:8px!important;
    padding-bottom:calc(112px + env(safe-area-inset-bottom))!important;
  }
  .control-home-page .control-swipe-page .control-swipe-page-inner,
  .control-home-page .control-menu-page .control-swipe-page-inner,
  .control-home-page .control-summary-page .control-swipe-page-inner{
    display:block!important;
    box-sizing:border-box!important;
    width:100%!important;
    height:auto!important;
    min-height:calc(100% + 2px)!important;
    max-height:none!important;
    overflow:visible!important;
    padding:0 clamp(12px,3vw,28px) 34px!important;
    touch-action:pan-y!important;
  }
  .control-home-page .control-menu-heading,
  .control-home-page .control-home-menu-card,
  .control-home-page .control-summary-page .control-home-hero,
  .control-home-page .control-summary-page .control-home-summary,
  .control-home-page .control-summary-page .control-home-summary-item{
    touch-action:pan-y!important;
    overscroll-behavior:contain!important;
  }
  .control-home-page .control-menu-page .control-home-menu{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    grid-template-rows:none!important;
    grid-auto-rows:minmax(112px,auto)!important;
    gap:14px!important;
    height:auto!important;
    min-height:0!important;
    margin-top:8px!important;
    align-content:start!important;
  }
  .control-home-page .control-menu-page .control-home-menu-card{
    min-height:112px!important;
    height:auto!important;
    padding:14px 16px!important;
  }
  .control-home-page .control-menu-page .control-version-footer,
  .control-home-page .control-menu-page .control-menu-map-link{
    position:relative!important;
    inset:auto!important;
    transform:none!important;
    margin-top:16px!important;
  }
  .control-home-page .control-summary-page .control-home-hero{
    display:block!important;
    min-height:0!important;
    height:auto!important;
    padding:0 0 24px!important;
  }
  .control-home-page .control-summary-page .control-home-summary{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    grid-template-rows:none!important;
    grid-auto-rows:minmax(116px,auto)!important;
    gap:12px!important;
    height:auto!important;
    min-height:0!important;
    overflow:visible!important;
    align-content:start!important;
  }
  .control-home-page .control-summary-page .control-home-summary-item{
    height:auto!important;
    min-height:116px!important;
  }
  .control-home-page .control-summary-page .control-home-summary-item.is-release{
    grid-column:1/-1!important;
    width:50%!important;
    min-width:310px!important;
    justify-self:center!important;
  }
  .control-home-page .control-summary-page .control-home-updated{
    margin:14px 0 0!important;
    width:auto!important;
    max-width:none!important;
  }
}

/* Keep the two summary actions on one baseline, opposite each other. */
body.control-summary-visible .control-comment-collection-button,
body.control-summary-visible .control-summary-refresh{
  bottom:calc(18px + env(safe-area-inset-bottom))!important;
  min-height:58px!important;
  height:58px!important;
  transform:none!important;
  margin:0!important;
}
body.control-summary-visible .control-comment-collection-button{
  left:max(12px,env(safe-area-inset-left))!important;
  right:auto!important;
  min-width:min(43vw,210px)!important;
  max-width:43vw!important;
}
body.control-summary-visible .control-summary-refresh{
  right:max(12px,env(safe-area-inset-right))!important;
  left:auto!important;
  min-width:min(48vw,250px)!important;
  max-width:48vw!important;
}
body.control-summary-visible .control-summary-refresh:active,
body.control-summary-visible .control-summary-refresh.is-pressed{
  transform:scale(.98)!important;
}
@media (orientation:landscape){
  body.control-summary-visible .control-comment-collection-button,
  body.control-summary-visible .control-summary-refresh{
    bottom:calc(12px + env(safe-area-inset-bottom))!important;
    height:52px!important;
    min-height:52px!important;
  }
  body.control-summary-visible .control-comment-collection-button{
    left:max(18px,env(safe-area-inset-left))!important;
    min-width:230px!important;
    max-width:280px!important;
  }
  body.control-summary-visible .control-summary-refresh{
    right:max(18px,env(safe-area-inset-right))!important;
    min-width:260px!important;
    max-width:320px!important;
  }
}

/* ------------------------------------------------------------------
   2. YouTube detail page: one clean, centered header in both modes.
   ------------------------------------------------------------------ */
.youtube-admin-page .youtube-topbar-clean{
  position:relative!important;
  top:auto!important;
  height:116px!important;
  min-height:116px!important;
  max-height:116px!important;
  overflow:hidden!important;
  background:linear-gradient(90deg,#02070b,#061a12 50%,#02070b)!important;
  border-bottom:1px solid rgba(137,204,233,.14)!important;
}
.youtube-admin-page .youtube-topbar-clean::before,
.youtube-admin-page .youtube-topbar-clean::after{
  background-image:none!important;
  background:radial-gradient(circle at 50% 50%,rgba(0,255,115,.15),transparent 34%)!important;
}
.youtube-admin-page .youtube-topbar-clean .nav-shell{
  height:116px!important;
  min-height:116px!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
}
.youtube-admin-page .youtube-topbar-clean .control-center-logo{
  position:relative!important;
  inset:auto!important;
  transform:none!important;
  width:94px!important;
  height:94px!important;
  display:grid!important;
  place-items:center!important;
}
.youtube-admin-page .youtube-topbar-clean .control-center-logo img{
  position:relative!important;
  inset:auto!important;
  transform:none!important;
  width:86px!important;
  height:86px!important;
  max-width:86px!important;
  max-height:86px!important;
  border-radius:50%!important;
  object-fit:cover!important;
  filter:drop-shadow(0 0 20px rgba(0,255,119,.34))!important;
}
.youtube-admin-page .youtube-compact-header{
  width:min(900px,100%)!important;
  margin:0 auto 18px!important;
  padding:16px 8px 0!important;
  text-align:center!important;
}
.youtube-admin-page .youtube-detail-actions{
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  gap:12px!important;
  margin:0 auto 14px!important;
}
.youtube-admin-page .youtube-detail-actions a{
  min-width:132px!important;
}
.youtube-admin-page .youtube-compact-header>.eyeline{
  display:block!important;
  margin:0 auto 7px!important;
  text-align:center!important;
}
.youtube-admin-page .youtube-title-status-row{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:18px!important;
  flex-wrap:wrap!important;
  margin:0 auto!important;
}
.youtube-admin-page .youtube-title-status-row h1{
  margin:0!important;
  font-size:clamp(3rem,10vw,5.5rem)!important;
  line-height:.92!important;
  text-align:center!important;
}
.youtube-admin-page .youtube-studio-gate-inline{
  flex:0 1 auto!important;
  margin:0!important;
  max-width:min(320px,90vw)!important;
}
.youtube-admin-page .youtube-compact-header>p{
  max-width:560px!important;
  margin:10px auto 14px!important;
  text-align:center!important;
  text-wrap:balance!important;
}
.youtube-admin-page .youtube-auth-inline{
  width:min(760px,100%)!important;
  margin:0 auto!important;
}
@media (orientation:landscape){
  .youtube-admin-page .youtube-topbar-clean,
  .youtube-admin-page .youtube-topbar-clean .nav-shell{
    height:82px!important;
    min-height:82px!important;
    max-height:82px!important;
  }
  .youtube-admin-page .youtube-topbar-clean .control-center-logo{
    width:72px!important;
    height:72px!important;
  }
  .youtube-admin-page .youtube-topbar-clean .control-center-logo img{
    width:66px!important;
    height:66px!important;
    max-width:66px!important;
    max-height:66px!important;
  }
  .youtube-admin-page .youtube-compact-header{
    padding-top:12px!important;
    margin-bottom:12px!important;
  }
  .youtube-admin-page .youtube-detail-actions{
    margin-bottom:8px!important;
  }
  .youtube-admin-page .youtube-title-status-row{
    gap:16px!important;
  }
  .youtube-admin-page .youtube-title-status-row h1{
    font-size:clamp(2.6rem,7.2vw,4.5rem)!important;
  }
  .youtube-admin-page .youtube-compact-header>p{
    margin:7px auto 10px!important;
  }
}

/* ------------------------------------------------------------------
   3. Comment collection: clean header, circular logo, readable geometry.
   ------------------------------------------------------------------ */
.comment-collection-page .top{
  height:126px!important;
  min-height:126px!important;
  overflow:hidden!important;
  background:linear-gradient(90deg,#02070b,#061a12 50%,#02070b)!important;
}
.comment-collection-page .top img{
  width:96px!important;
  height:96px!important;
  border-radius:50%!important;
  object-fit:cover!important;
  filter:drop-shadow(0 0 22px rgba(0,255,124,.35))!important;
}
.comment-collection-page .nav{
  inset:50% 16px auto!important;
  transform:translateY(-50%)!important;
  align-items:center!important;
}
.comment-collection-page main{
  padding-top:24px!important;
}
.comment-collection-page .hero h1{
  max-width:900px!important;
  margin:8px auto 8px!important;
  font-size:clamp(2.35rem,7vw,4.8rem)!important;
  line-height:.94!important;
  text-wrap:balance!important;
}
.comment-collection-page .hero p{
  max-width:760px!important;
  text-wrap:balance!important;
}
.comment-collection-page .status{
  margin-top:20px!important;
}
@media (orientation:landscape){
  .comment-collection-page .top{
    height:86px!important;
    min-height:86px!important;
  }
  .comment-collection-page .top img{
    width:72px!important;
    height:72px!important;
  }
  .comment-collection-page .nav{
    inset:50% 20px auto!important;
  }
  .comment-collection-page main{
    padding-top:16px!important;
  }
  .comment-collection-page .hero h1{
    font-size:clamp(2rem,5.5vw,3.5rem)!important;
  }
  .comment-collection-page .hero p{
    font-size:.92rem!important;
  }
  .comment-collection-page .status{
    min-height:50px!important;
    margin-top:14px!important;
  }
}

/* ------------------------------------------------------------------
   4. Map title row: total left, Geography center, calendar right.
      Landscape total is plain text (no bubble/cloud).
   ------------------------------------------------------------------ */
.analytics-v54-46-page .world-map-card>.map-landscape-title-row{
  display:grid!important;
  grid-template-columns:minmax(78px,1fr) minmax(128px,auto) minmax(52px,1fr)!important;
  grid-template-rows:auto auto auto!important;
  grid-template-areas:
    "total geography calendar"
    "title title title"
    "period period period"!important;
  align-items:center!important;
  gap:4px 8px!important;
  width:100%!important;
  min-height:0!important;
  padding:2px 0 0!important;
  overflow:visible!important;
}
.analytics-v54-46-page .map-title-pyramid{
  display:contents!important;
}
.analytics-v54-46-page .map-title-pyramid>.eyeline{
  grid-area:geography!important;
  align-self:center!important;
  justify-self:center!important;
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  text-align:center!important;
  white-space:nowrap!important;
}
.analytics-v54-46-page .map-title-pyramid>h2{
  grid-area:title!important;
  width:100%!important;
  max-width:100%!important;
  margin:3px auto 1px!important;
  text-align:center!important;
}
.analytics-v54-46-page .map-title-pyramid>p{
  grid-area:period!important;
  width:100%!important;
  max-width:100%!important;
  margin:0 auto!important;
  text-align:center!important;
}
.analytics-v54-46-page .world-map-total{
  grid-area:total!important;
  position:relative!important;
  inset:auto!important;
  justify-self:end!important;
  align-self:center!important;
  transform:none!important;
  z-index:3!important;
}
.analytics-v54-46-page .map-monthly-open{
  grid-area:calendar!important;
  position:relative!important;
  inset:auto!important;
  justify-self:start!important;
  align-self:center!important;
  transform:none!important;
  display:grid!important;
  place-items:center!important;
  z-index:4!important;
  animation:andrikCalendarPulse 2.2s ease-in-out infinite!important;
}
.analytics-v54-46-page .map-monthly-open:active{
  transform:scale(.93)!important;
}
@keyframes andrikCalendarPulse{
  0%,100%{box-shadow:0 0 0 0 rgba(75,240,142,.18),0 0 18px rgba(54,231,133,.17),inset 0 0 14px rgba(113,255,178,.07)}
  50%{box-shadow:0 0 0 9px rgba(75,240,142,0),0 0 32px rgba(54,231,133,.38),inset 0 0 19px rgba(113,255,178,.13)}
}

@media (orientation:portrait){
  .analytics-v54-46-page .world-map-card>.map-landscape-title-row{
    grid-template-columns:minmax(72px,1fr) minmax(118px,auto) minmax(48px,1fr)!important;
    gap:3px 5px!important;
    margin-bottom:6px!important;
  }
  .analytics-v54-46-page .world-map-total{
    justify-self:end!important;
    min-height:30px!important;
    max-width:none!important;
    padding:4px 7px!important;
    gap:4px!important;
    border:1px solid rgba(112,206,244,.20)!important;
    border-radius:999px!important;
    background:rgba(4,18,27,.72)!important;
    box-shadow:inset 0 0 12px rgba(109,220,255,.035)!important;
    white-space:nowrap!important;
  }
  .analytics-v54-46-page .world-map-total span{font-size:.52rem!important}
  .analytics-v54-46-page .world-map-total strong{font-size:.72rem!important}
  .analytics-v54-46-page .map-monthly-open{
    justify-self:start!important;
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
    border:1px solid rgba(82,238,146,.62)!important;
    border-radius:50%!important;
    background:linear-gradient(145deg,rgba(11,51,38,.96),rgba(3,19,21,.98))!important;
    color:#79f0a9!important;
  }
  .analytics-v54-46-page .map-monthly-open svg{width:21px!important;height:21px!important}
  .analytics-v54-46-page .map-title-pyramid>.eyeline{
    font-size:clamp(.62rem,3.2vw,.78rem)!important;
    letter-spacing:.20em!important;
  }
  .analytics-v54-46-page .map-title-pyramid>h2{
    font-size:clamp(1.72rem,8.15vw,2.42rem)!important;
    line-height:.98!important;
  }
  .analytics-v54-46-page .map-title-pyramid>p{
    font-size:clamp(.62rem,3vw,.78rem)!important;
    line-height:1.22!important;
  }
}

@media (orientation:landscape){
  .analytics-v54-46-page .world-map-card>.map-landscape-title-row{
    grid-template-columns:minmax(120px,1fr) minmax(180px,auto) minmax(64px,1fr)!important;
    gap:2px 14px!important;
    padding:0 12px!important;
  }
  .analytics-v54-46-page .world-map-total{
    justify-self:start!important;
    min-height:34px!important;
    max-width:none!important;
    padding:0!important;
    gap:6px!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    color:#cfeefa!important;
    white-space:nowrap!important;
  }
  .analytics-v54-46-page .world-map-total span{
    font-size:clamp(.72rem,1.45vw,.92rem)!important;
    color:#96c8db!important;
  }
  .analytics-v54-46-page .world-map-total strong{
    font-size:clamp(1rem,1.9vw,1.28rem)!important;
    color:#e8fbff!important;
  }
  .analytics-v54-46-page .map-monthly-open{
    justify-self:end!important;
    width:54px!important;
    height:54px!important;
    min-width:54px!important;
  }
}

/* ------------------------------------------------------------------
   5. Monthly archive modal works in portrait too; graph breathes.
   ------------------------------------------------------------------ */
.map-monthly-modal:not([hidden]){
  position:fixed!important;
  inset:0!important;
  z-index:2147483600!important;
  display:grid!important;
  place-items:center!important;
  box-sizing:border-box!important;
  padding:max(8px,env(safe-area-inset-top)) max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left))!important;
  perspective:1300px!important;
}
.map-monthly-backdrop{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  border:0!important;
  background:rgba(0,5,9,.78)!important;
  backdrop-filter:blur(10px) saturate(.82)!important;
  -webkit-backdrop-filter:blur(10px) saturate(.82)!important;
}
.map-monthly-panel{
  position:relative!important;
  z-index:2!important;
  box-sizing:border-box!important;
  width:min(930px,96vw)!important;
  max-height:calc(100dvh - max(18px,env(safe-area-inset-top)) - max(18px,env(safe-area-inset-bottom)))!important;
  overflow:hidden!important;
  border:1px solid rgba(128,205,236,.26)!important;
  border-radius:26px!important;
  background:radial-gradient(circle at 83% 10%,rgba(66,236,142,.10),transparent 27%),linear-gradient(145deg,rgba(10,25,36,.992),rgba(3,11,18,.996))!important;
  box-shadow:0 32px 90px rgba(0,0,0,.75),0 0 38px rgba(64,210,255,.08)!important;
  animation:andrikMonthlyInK .28s cubic-bezier(.18,.88,.24,1.08)!important;
}
@keyframes andrikMonthlyInK{from{opacity:0;transform:translateY(16px) rotateX(-4deg) scale(.97)}to{opacity:1;transform:none}}
.map-monthly-header{
  display:grid!important;
  grid-template-columns:48px minmax(0,1fr) 42px!important;
  align-items:center!important;
  gap:11px!important;
  padding:14px 15px 12px!important;
  border-bottom:1px solid rgba(132,201,229,.13)!important;
  background:linear-gradient(180deg,rgba(17,38,51,.72),rgba(7,20,29,.42))!important;
}
.map-monthly-heading-icon{
  display:grid!important;
  place-items:center!important;
  width:44px!important;
  height:44px!important;
  border:1px solid rgba(83,232,147,.34)!important;
  border-radius:15px!important;
  color:#75e9a5!important;
  background:rgba(15,58,43,.42)!important;
}
.map-monthly-heading-icon svg{width:23px!important;height:23px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important}
.map-monthly-header>div:nth-child(2){min-width:0!important}
.map-monthly-header span{display:block!important;color:#72dbff!important;font-size:.58rem!important;font-weight:900!important;letter-spacing:.20em!important}
.map-monthly-header h2{margin:3px 0 1px!important;color:#f5fbff!important;font-size:clamp(1.25rem,5vw,1.9rem)!important;line-height:1.04!important}
.map-monthly-header p{margin:0!important;color:#8fa9b8!important;font-size:.68rem!important;line-height:1.25!important;white-space:normal!important}
.map-monthly-close{
  display:grid!important;
  place-items:center!important;
  width:40px!important;
  height:40px!important;
  padding:0!important;
  border:1px solid rgba(144,205,229,.23)!important;
  border-radius:50%!important;
  background:rgba(13,31,42,.88)!important;
  color:#d7eaf3!important;
  font:300 1.6rem/1 system-ui!important;
}
.map-monthly-content{
  display:grid!important;
  grid-template-columns:minmax(220px,.72fr) minmax(340px,1.28fr)!important;
  gap:14px!important;
  padding:14px!important;
  max-height:calc(100dvh - 118px - max(18px,env(safe-area-inset-top)) - max(18px,env(safe-area-inset-bottom)))!important;
  overflow:auto!important;
  -webkit-overflow-scrolling:touch!important;
  touch-action:pan-y!important;
}
.map-monthly-list{display:grid!important;align-content:start!important;gap:9px!important;min-width:0!important}
.map-month-row{
  display:grid!important;
  grid-template-columns:11px minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:10px!important;
  min-height:50px!important;
  padding:0 12px!important;
  border:1px solid rgba(125,197,226,.14)!important;
  border-radius:16px!important;
  background:linear-gradient(180deg,rgba(14,35,47,.82),rgba(7,21,30,.88))!important;
}
.map-month-row.is-current{border-color:rgba(82,238,143,.62)!important;box-shadow:0 0 20px rgba(61,236,140,.12),inset 0 0 15px rgba(77,241,145,.045)!important}
.map-month-dot{width:7px!important;height:7px!important;border-radius:50%!important;background:#68e59d!important;box-shadow:0 0 12px rgba(86,236,148,.72)!important}
.map-month-copy{min-width:0!important}
.map-month-copy strong{display:block!important;color:#eaf7fd!important;font-size:.88rem!important;line-height:1.1!important}
.map-month-copy small{display:block!important;margin-top:3px!important;color:#738d9b!important;font-size:.61rem!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.map-month-value{color:#dff8ff!important;font-size:1rem!important;font-weight:900!important;white-space:nowrap!important}
.map-monthly-empty{padding:20px!important;border:1px dashed rgba(133,201,228,.19)!important;border-radius:18px!important;color:#86a0ae!important;text-align:center!important}
.map-monthly-chart-card{
  min-width:0!important;
  padding:13px 14px 12px!important;
  border:1px solid rgba(125,197,226,.15)!important;
  border-radius:20px!important;
  background:linear-gradient(180deg,rgba(8,25,35,.82),rgba(3,13,20,.9))!important;
  animation:andrikGraphBreath 3.4s ease-in-out infinite!important;
}
@keyframes andrikGraphBreath{
  0%,100%{box-shadow:inset 0 0 28px rgba(45,181,230,.025),0 0 0 rgba(71,238,147,0)}
  50%{box-shadow:inset 0 0 36px rgba(45,181,230,.055),0 0 24px rgba(71,238,147,.10)}
}
.map-monthly-chart-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;margin-bottom:8px!important}
.map-monthly-chart-head span{color:#6fd8ff!important;font-size:.59rem!important;font-weight:900!important;letter-spacing:.21em!important}
.map-monthly-chart-head strong{color:#b9d5e2!important;font-size:.72rem!important}
.map-monthly-chart{
  position:relative!important;
  min-height:250px!important;
  overflow:hidden!important;
  border-radius:16px!important;
  background:repeating-linear-gradient(to top,rgba(130,200,228,.075) 0 1px,transparent 1px 25%),radial-gradient(circle at 70% 30%,rgba(43,229,138,.08),transparent 34%),rgba(2,12,18,.72)!important;
  perspective:800px!important;
}
.map-monthly-bars{position:absolute!important;inset:20px 16px 31px 48px!important;display:flex!important;align-items:flex-end!important;justify-content:space-around!important;gap:8px!important}
.map-monthly-axis{position:absolute!important;left:10px!important;top:15px!important;bottom:31px!important;width:34px!important;display:flex!important;flex-direction:column!important;justify-content:space-between!important;color:#647e8c!important;font-size:.58rem!important;text-align:right!important}
.map-month-column{position:relative!important;flex:1 1 0!important;max-width:66px!important;height:100%!important;display:flex!important;align-items:flex-end!important;justify-content:center!important}
.map-month-bar{animation:andrikBarRiseK .58s cubic-bezier(.18,.82,.25,1) both,andrikBarBreath 3s ease-in-out infinite 1s!important}
@keyframes andrikBarRiseK{from{height:5%!important;opacity:.35}to{opacity:1}}
@keyframes andrikBarBreath{0%,100%{filter:brightness(1)}50%{filter:brightness(1.22)}}
body.is-map-monthly-open{overflow:hidden!important}

@media (orientation:portrait){
  .map-monthly-panel{
    width:calc(100vw - 14px)!important;
    max-width:660px!important;
    border-radius:23px!important;
  }
  .map-monthly-header{
    grid-template-columns:42px minmax(0,1fr) 38px!important;
    gap:9px!important;
    padding:11px 12px 10px!important;
  }
  .map-monthly-heading-icon{width:38px!important;height:38px!important;border-radius:13px!important}
  .map-monthly-heading-icon svg{width:20px!important;height:20px!important}
  .map-monthly-header h2{font-size:clamp(1.15rem,5.5vw,1.55rem)!important}
  .map-monthly-header p{font-size:.60rem!important;display:block!important}
  .map-monthly-close{width:36px!important;height:36px!important;font-size:1.45rem!important}
  .map-monthly-content{
    grid-template-columns:1fr!important;
    gap:10px!important;
    padding:10px!important;
    max-height:calc(100dvh - 96px - max(16px,env(safe-area-inset-top)) - max(16px,env(safe-area-inset-bottom)))!important;
  }
  .map-monthly-list{
    max-height:142px!important;
    overflow:auto!important;
    grid-template-columns:1fr!important;
  }
  .map-month-row{min-height:48px!important}
  .map-monthly-chart-card{padding:10px!important}
  .map-monthly-chart{min-height:270px!important}
  .map-monthly-bars{inset:22px 9px 31px 42px!important;gap:3px!important}
  .map-monthly-axis{left:5px!important;width:32px!important;font-size:.52rem!important}
  .map-month-bar{width:min(27px,72%)!important}
  .map-month-column em{font-size:.54rem!important}
  .map-month-column small{width:46px!important;font-size:.52rem!important}
}
@media (orientation:portrait) and (max-height:700px){
  .map-monthly-header p{display:none!important}
  .map-monthly-list{max-height:96px!important}
  .map-monthly-chart{min-height:218px!important}
}

@media (prefers-reduced-motion:reduce){
  .analytics-v54-46-page .map-monthly-open,
  .map-monthly-chart-card,
  .map-month-bar{animation:none!important}
}

/* Extra specificity against legacy gesture rules that used touch-action:none. */
@media (orientation:landscape){
  body.control-home-page.control-menu-mode .control-swipe-shell,
  body.control-home-page.control-menu-mode .control-menu-page,
  body.control-home-page.control-menu-mode .control-menu-page .control-swipe-page-inner,
  body.control-home-page.control-menu-mode .control-menu-heading,
  body.control-home-page.control-menu-mode .control-home-menu,
  body.control-home-page.control-menu-mode .control-home-menu-card,
  body.control-home-page.control-daily-carousel-mode .control-swipe-shell,
  body.control-home-page.control-daily-carousel-mode .control-summary-page,
  body.control-home-page.control-daily-carousel-mode .control-summary-page .control-swipe-page-inner{
    touch-action:pan-y!important;
    -ms-touch-action:pan-y!important;
    overscroll-behavior-y:contain!important;
  }
}

/* Full generic 3D bar geometry (the older build defined this only in landscape). */
.map-month-bar{
  position:relative!important;
  width:min(38px,70%)!important;
  min-height:7px!important;
  border:1px solid rgba(131,255,187,.42)!important;
  border-radius:8px 8px 3px 3px!important;
  background:linear-gradient(180deg,rgba(114,244,173,.92),rgba(32,174,203,.48) 64%,rgba(22,86,115,.38))!important;
  box-shadow:0 0 17px rgba(62,232,147,.24),inset 7px 0 12px rgba(255,255,255,.08),inset -7px 0 12px rgba(0,26,31,.17)!important;
  transform:translateZ(16px)!important;
  transform-origin:bottom!important;
}
.map-month-bar::after{
  content:''!important;
  position:absolute!important;
  left:5px!important;
  right:5px!important;
  top:-4px!important;
  height:7px!important;
  border-radius:50%!important;
  background:rgba(152,255,199,.86)!important;
  box-shadow:0 0 14px rgba(91,246,159,.65)!important;
}
.map-month-column em{
  position:absolute!important;
  bottom:calc(var(--bar-height) + 8px)!important;
  left:50%!important;
  transform:translateX(-50%)!important;
  color:#d8faff!important;
  font-size:.64rem!important;
  font-style:normal!important;
  font-weight:900!important;
  white-space:nowrap!important;
  text-shadow:0 0 11px rgba(72,225,255,.42)!important;
}
.map-month-column small{
  position:absolute!important;
  left:50%!important;
  bottom:-24px!important;
  transform:translateX(-50%)!important;
  width:78px!important;
  color:#7893a2!important;
  font-size:.59rem!important;
  text-align:center!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
@media (orientation:portrait){
  .map-month-bar{width:min(27px,72%)!important}
  .map-month-column em{font-size:.54rem!important}
  .map-month-column small{width:46px!important;font-size:.52rem!important}
}
