/* ChouChou main-hub core button patch · chouchou condo · 2026-08-19 18:11 */
/* “全部房间”不再依赖 transform 放大，直接把可见按钮尺寸做成约 1.5 倍，避免与地图定位 transform 冲突。 */
#p1000-mainhub-map.chouchou-map-v5 .p1000-map-section .p1000-cmv5-btn.cmv5-all-rooms-core,
#p1000-mainhub-map.chouchou-map-v5 .p1000-map-section .p1000-cmv5-btn.cc-all-rooms-core-1633 {
  z-index: 90 !important;
  transform: translate(-50%, -50%) !important;
  transform-origin: center center !important;
}
#p1000-mainhub-map.chouchou-map-v5 .p1000-map-section .p1000-cmv5-btn.cmv5-all-rooms-core .cmv5-surface,
#p1000-mainhub-map.chouchou-map-v5 .p1000-map-section .p1000-cmv5-btn.cc-all-rooms-core-1633 .cmv5-surface {
  min-width: 174px !important;
  min-height: 58px !important;
  padding: 10px 18px 10px 12px !important;
  gap: 11px !important;
  border-color: rgba(248,221,161,.98) !important;
  box-shadow: 0 14px 30px rgba(68,21,47,.32),0 0 0 1px rgba(245,211,143,.44),0 0 22px rgba(255,221,166,.24),inset 0 1px 0 rgba(255,255,255,.42) !important;
  animation: ccCoreBreath1633 2.7s ease-in-out infinite !important;
}
#p1000-mainhub-map.chouchou-map-v5 .p1000-map-section .p1000-cmv5-btn.cmv5-all-rooms-core .cmv5-icon,
#p1000-mainhub-map.chouchou-map-v5 .p1000-map-section .p1000-cmv5-btn.cc-all-rooms-core-1633 .cmv5-icon {
  width: 36px !important; height: 36px !important; flex: 0 0 36px !important;
}
#p1000-mainhub-map.chouchou-map-v5 .p1000-map-section .p1000-cmv5-btn.cmv5-all-rooms-core .cmv5-icon svg,
#p1000-mainhub-map.chouchou-map-v5 .p1000-map-section .p1000-cmv5-btn.cc-all-rooms-core-1633 .cmv5-icon svg {
  width: 22px !important; height: 22px !important;
}
#p1000-mainhub-map.chouchou-map-v5 .p1000-map-section .p1000-cmv5-btn.cmv5-all-rooms-core .cmv5-label,
#p1000-mainhub-map.chouchou-map-v5 .p1000-map-section .p1000-cmv5-btn.cc-all-rooms-core-1633 .cmv5-label {
  font-size: 16px !important; font-weight: 900 !important; letter-spacing: .055em !important;
}
#p1000-mainhub-map.chouchou-map-v5 .p1000-map-section .p1000-cmv5-btn.cmv5-all-rooms-core .cmv5-arrow,
#p1000-mainhub-map.chouchou-map-v5 .p1000-map-section .p1000-cmv5-btn.cc-all-rooms-core-1633 .cmv5-arrow { font-size: 20px !important; }
/* 全部房间：固定 6 个心形节点持续上浮，不动态追加 DOM。 */
#p1000-mainhub-map .p1000-cmv5-btn.cmv5-all-rooms-core .cmv5-heart-field--core,
#p1000-mainhub-map .p1000-cmv5-btn.cc-all-rooms-core-1811 .cmv5-heart-field--core {
  position:absolute !important;
  z-index:120 !important;
  left:10px !important;
  right:10px !important;
  bottom:calc(100% - 4px) !important;
  display:block !important;
  height:64px !important;
  overflow:visible !important;
  pointer-events:none !important;
}
#p1000-mainhub-map .p1000-cmv5-btn.cmv5-all-rooms-core .cmv5-heart-field--core .cmv5-heart,
#p1000-mainhub-map .p1000-cmv5-btn.cc-all-rooms-core-1811 .cmv5-heart-field--core .cmv5-heart {
  position:absolute !important;
  bottom:0 !important;
  display:block !important;
  color:#ff83ad !important;
  font-family:Georgia,"Times New Roman",serif !important;
  font-size:11px !important;
  line-height:1 !important;
  opacity:0 !important;
  pointer-events:none !important;
  text-shadow:
    0 0 5px rgba(255,255,255,.98),
    0 0 11px rgba(255,127,168,.62),
    0 0 18px rgba(255,174,198,.35) !important;
  animation:ccAllRoomsHeartFloat1811 2.65s ease-out infinite !important;
}
#p1000-mainhub-map .cmv5-heart-field--core .cmv5-heart:nth-child(1){left:5%!important;animation-delay:0s!important}
#p1000-mainhub-map .cmv5-heart-field--core .cmv5-heart:nth-child(2){left:22%!important;font-size:8px!important;animation-delay:.42s!important}
#p1000-mainhub-map .cmv5-heart-field--core .cmv5-heart:nth-child(3){left:41%!important;font-size:12px!important;animation-delay:.84s!important}
#p1000-mainhub-map .cmv5-heart-field--core .cmv5-heart:nth-child(4){left:60%!important;font-size:9px!important;animation-delay:1.26s!important}
#p1000-mainhub-map .cmv5-heart-field--core .cmv5-heart:nth-child(5){left:78%!important;font-size:11px!important;animation-delay:1.68s!important}
#p1000-mainhub-map .cmv5-heart-field--core .cmv5-heart:nth-child(6){left:92%!important;font-size:8px!important;animation-delay:2.10s!important}
@keyframes ccAllRoomsHeartFloat1811{
  0%{opacity:0;transform:translate3d(0,8px,0) scale(.5) rotate(-6deg)}
  16%{opacity:.98}
  66%{opacity:.82}
  100%{opacity:0;transform:translate3d(4px,-50px,0) scale(1.16) rotate(10deg)}
}
#p1000-mainhub-map.chouchou-map-v5 .p1000-map-section .p1000-cmv5-btn.cmv5-all-rooms-core:hover,
#p1000-mainhub-map.chouchou-map-v5 .p1000-map-section .p1000-cmv5-btn.cc-all-rooms-core-1633:hover,
#p1000-mainhub-map.chouchou-map-v5 .p1000-map-section .p1000-cmv5-btn.cmv5-all-rooms-core:focus-visible,
#p1000-mainhub-map.chouchou-map-v5 .p1000-map-section .p1000-cmv5-btn.cc-all-rooms-core-1633:focus-visible {
  transform: translate(-50%, calc(-50% - 2px)) !important;
}
#p1000-mainhub-map.chouchou-map-v5 .p1000-map-section .p1000-cmv5-btn.cmv5-all-rooms-core:active,
#p1000-mainhub-map.chouchou-map-v5 .p1000-map-section .p1000-cmv5-btn.cc-all-rooms-core-1633:active { transform: translate(-50%, -50%) scale(.985) !important; }
/* 我的房间继续保留此前已经确认的心形动画。 */
.chouchou-map-v5 .cc-myroom-hearts-1633 .cc-heart-field-1633 {position:absolute!important;z-index:25!important;left:6px!important;right:6px!important;bottom:calc(100% - 1px)!important;display:block!important;height:54px!important;overflow:visible!important;pointer-events:none!important}
.chouchou-map-v5 .cc-heart-field-1633 .cc-heart-1633 {position:absolute!important;bottom:0!important;display:block!important;color:#f29abb!important;font:400 10px/1 Georgia,"Times New Roman",serif!important;opacity:0!important;pointer-events:none!important;text-shadow:0 0 5px rgba(255,255,255,.95),0 0 10px rgba(255,126,169,.45)!important;animation:ccHeartFloat1633 2.75s ease-out infinite!important}
.chouchou-map-v5 .cc-heart-1633:nth-child(1){left:5%!important;animation-delay:0s!important}.chouchou-map-v5 .cc-heart-1633:nth-child(2){left:23%!important;font-size:8px!important;animation-delay:.42s!important}.chouchou-map-v5 .cc-heart-1633:nth-child(3){left:45%!important;font-size:11px!important;animation-delay:.88s!important}.chouchou-map-v5 .cc-heart-1633:nth-child(4){left:68%!important;font-size:8px!important;animation-delay:1.34s!important}.chouchou-map-v5 .cc-heart-1633:nth-child(5){left:89%!important;font-size:10px!important;animation-delay:1.8s!important}
@keyframes ccHeartFloat1633{0%{opacity:0;transform:translate3d(0,7px,0) scale(.52) rotate(-7deg)}18%{opacity:.96}67%{opacity:.72}100%{opacity:0;transform:translate3d(5px,-42px,0) scale(1.18) rotate(10deg)}}
@keyframes ccCoreBreath1633{0%,100%{filter:brightness(1)}50%{filter:brightness(1.08)}}
@media(max-width:700px){#p1000-mainhub-map.chouchou-map-v5 .p1000-map-section .p1000-cmv5-btn.cmv5-all-rooms-core .cmv5-surface,#p1000-mainhub-map.chouchou-map-v5 .p1000-map-section .p1000-cmv5-btn.cc-all-rooms-core-1633 .cmv5-surface{min-width:154px!important;min-height:52px!important}.chouchou-map-v5 .cc-heart-field-1633 .cc-heart-1633{animation-duration:3s!important}}
@media(prefers-reduced-motion:reduce){.chouchou-map-v5 .cc-heart-field-1633 .cc-heart-1633,#p1000-mainhub-map .cmv5-heart-field--core .cmv5-heart,#p1000-mainhub-map .p1000-cmv5-btn.cmv5-all-rooms-core .cmv5-surface{animation:none!important}}


/* 260821-1027：全部房间核心入口——爱心保留，同时加入更明显的自动流动光泽作为稳定视觉兜底。 */
#p1000-mainhub-map.chouchou-map-v5 .p1000-map-section .p1000-cmv5-btn.cmv5-all-rooms-core .cmv5-sheen {
  width:42% !important;
  top:-105% !important;
  bottom:-105% !important;
  left:-72% !important;
  opacity:0 !important;
  background:linear-gradient(90deg,transparent 0%,rgba(255,246,213,.10) 18%,rgba(255,255,255,.86) 48%,rgba(255,224,167,.48) 61%,transparent 100%) !important;
  filter:drop-shadow(0 0 7px rgba(255,237,190,.62)) !important;
  animation:ccAllRoomsHeroSheen1027 3.45s cubic-bezier(.2,.7,.2,1) infinite !important;
}
#p1000-mainhub-map.chouchou-map-v5 .p1000-map-section .p1000-cmv5-btn.cmv5-all-rooms-core .cmv5-surface {
  outline:1px solid rgba(255,235,185,.16) !important;
  outline-offset:2px !important;
}
@keyframes ccAllRoomsHeroSheen1027 {
  0%,18%,100% { left:-72%; opacity:0; }
  26% { opacity:.38; }
  36% { opacity:.96; }
  55% { left:136%; opacity:0; }
}
