/* V64 — Communication Hub final clean pass.
   Fixes: .com accidentally loading .ai index by restoring marketing index in this patch;
   composer clears after send; module pack details render; phone stays large but not clipped;
   internal phone chat scroll is usable. */

.page-communication-hub .commhub-phone-demo-section{
  max-width:1380px !important;
  padding:clamp(18px,2vw,28px) 24px clamp(20px,2.5vw,36px) !important;
  min-height:auto !important;
  overflow:visible !important;
  grid-template-columns:minmax(390px,.78fr) minmax(760px,1.22fr) !important;
  gap:26px !important;
  align-items:center !important;
}

.page-communication-hub .commhub-demo-right{
  grid-template-columns:minmax(360px,420px) minmax(300px,340px) !important;
  gap:24px !important;
  align-items:center !important;
  justify-content:end !important;
  overflow:visible !important;
}

/* Big enough to sell the phone UI, but height-capped so it does not disappear behind the sticky nav. */
.page-communication-hub .hub-phone-frame{
  width:clamp(360px,27vw,420px) !important;
  min-width:360px !important;
  max-width:420px !important;
  height:min(74vh,760px) !important;
  min-height:610px !important;
  aspect-ratio:auto !important;
  margin:0 auto !important;
}

.page-communication-hub .hub-phone-screen{
  display:block !important;
  overflow:hidden !important;
}

.page-communication-hub .phone-replica-shell,
.page-communication-hub .phone-replica-shell .replica-chat-stage{
  height:100% !important;
  min-height:0 !important;
  overflow:hidden !important;
}

.page-communication-hub .phone-replica-shell{
  grid-template-columns:58px minmax(0,1fr) !important;
}

.page-communication-hub .phone-replica-shell .replica-chat-scroll{
  flex:1 1 auto !important;
  min-height:0 !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  -webkit-overflow-scrolling:touch !important;
  overscroll-behavior:contain !important;
  scrollbar-width:thin !important;
  scrollbar-color:rgba(95,236,255,.85) rgba(255,255,255,.08) !important;
  padding:14px 13px 12px !important;
  gap:10px !important;
}

.page-communication-hub .phone-replica-shell .replica-chat-scroll::-webkit-scrollbar{width:6px !important;}
.page-communication-hub .phone-replica-shell .replica-chat-scroll::-webkit-scrollbar-track{background:rgba(255,255,255,.08) !important;border-radius:99px !important;}
.page-communication-hub .phone-replica-shell .replica-chat-scroll::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#49e8ff,#9a6cff) !important;border-radius:99px !important;}

.page-communication-hub .phone-replica-shell .replica-bubble{
  max-width:94% !important;
  font-size:12px !important;
  line-height:1.38 !important;
  padding:11px 12px !important;
}

.page-communication-hub .phone-replica-shell .replica-bubble ul{
  padding-left:16px !important;
  margin-top:8px !important;
}

.page-communication-hub .phone-replica-shell .replica-composer-shell{
  flex:0 0 auto !important;
  padding:0 12px 12px !important;
  background:linear-gradient(180deg,rgba(7,14,32,0),rgba(7,14,32,.75) 28%,rgba(7,14,32,.95)) !important;
}

.page-communication-hub .phone-replica-shell .replica-owner-pill{bottom:66px !important;}

.page-communication-hub .phone-replica-shell .replica-composer input::placeholder{color:rgba(232,244,255,.62) !important;}

/* Right-side pack details: make modules actually visible and scrollable, not a single truncated placeholder. */
.page-communication-hub .phone-pack-panel .demo-module-grid,
.replica-pack-panel .demo-module-grid{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:7px !important;
  max-height:230px !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  padding-right:4px !important;
  scrollbar-width:thin !important;
  scrollbar-color:rgba(95,236,255,.75) rgba(255,255,255,.06) !important;
}

.page-communication-hub .phone-pack-panel .demo-module-chip,
.replica-pack-panel .demo-module-chip{
  white-space:normal !important;
  overflow:visible !important;
  text-overflow:clip !important;
  line-height:1.25 !important;
  min-height:0 !important;
  padding:9px 10px !important;
  font-size:11px !important;
}

.page-communication-hub .phone-pack-panel .demo-ai-row,
.replica-pack-panel .demo-ai-row{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:7px !important;
}

.page-communication-hub .phone-pack-panel .demo-ai-row b,
.replica-pack-panel .demo-ai-row b{
  white-space:nowrap !important;
}

@media(max-width:1280px){
  .page-communication-hub .commhub-phone-demo-section{
    grid-template-columns:minmax(340px,.72fr) minmax(700px,1.28fr) !important;
  }
  .page-communication-hub .commhub-demo-right{
    grid-template-columns:minmax(340px,390px) minmax(280px,320px) !important;
  }
  .page-communication-hub .hub-phone-frame{
    width:clamp(340px,28vw,390px) !important;
    min-width:340px !important;
    max-width:390px !important;
    height:min(72vh,720px) !important;
    min-height:590px !important;
  }
}

@media(max-width:1120px){
  .page-communication-hub .commhub-phone-demo-section{grid-template-columns:1fr !important;}
  .page-communication-hub .commhub-demo-right{justify-content:center !important;}
}

@media(max-width:780px){
  .page-communication-hub .commhub-demo-right{grid-template-columns:1fr !important;}
  .page-communication-hub .hub-phone-frame{width:min(100%,390px) !important;min-width:0 !important;height:680px !important;}
  .page-communication-hub .phone-pack-panel{width:min(100%,420px) !important;margin:0 auto !important;}
}
