/* CDI V20 final live polish - drawer, mobile copy, hero rails and signup card */

/* Remove internal/build-feeling cards and make launch proof card user-facing */
body:not(.admin-body) .rg15-side-live{
  background:linear-gradient(150deg,#0B1F3D,#163B63)!important;
  border:1px solid rgba(255,255,255,.18)!important;
  color:#fff!important;
  box-shadow:0 18px 45px rgba(4,18,36,.18)!important;
}
body:not(.admin-body) .rg15-side-live strong{color:#fff!important;}
body:not(.admin-body) .rg15-side-live p{color:rgba(255,255,255,.76)!important;}

@media(max-width:760px){
  /* Cleaner mobile drawer: one scrollable sheet, CTAs after menu, never overlaying menu items */
  body:not(.admin-body) .mobile-drawer{
    height:100dvh!important;
    max-height:100dvh!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    display:block!important;
    -webkit-overflow-scrolling:touch!important;
    padding-bottom:calc(14px + env(safe-area-inset-bottom))!important;
  }
  body:not(.admin-body) .mobile-drawer .dtop{
    position:sticky!important;
    top:0!important;
    z-index:5!important;
    min-height:72px!important;
    background:#0B1F3D!important;
  }
  body:not(.admin-body) .mobile-drawer .mmenu{
    overflow:visible!important;
    min-height:0!important;
    padding:16px 18px 8px!important;
  }
  body:not(.admin-body) .mobile-drawer .mmenu details,
  body:not(.admin-body) .mobile-drawer .mmenu .mmenu-flat{
    margin-bottom:10px!important;
  }
  body:not(.admin-body) .mobile-drawer .dfoot{
    position:static!important;
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:10px!important;
    margin:10px 18px 0!important;
    padding:14px 0 22px!important;
    border-top:1px solid rgba(12,31,56,.08)!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  body:not(.admin-body) .mobile-drawer .dfoot .btn{
    min-height:44px!important;
    width:100%!important;
    border-radius:16px!important;
    font-size:13px!important;
    line-height:1.1!important;
    padding:10px 12px!important;
    white-space:normal!important;
  }
  body:not(.admin-body) .mobile-drawer .dfoot .btn:nth-child(3),
  body:not(.admin-body) .mobile-drawer .dfoot .cdi-install-menu-btn{
    grid-column:1 / -1!important;
  }

  /* Mobile copy toggle: one clean white/blue pill, no chevron, no underlined icon. */
  body:not(.admin-body) .cdi-read-toggle{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:34px!important;
    border:1px solid #CFE3F7!important;
    background:#FFFFFF!important;
    color:#0B5EC8!important;
    border-radius:999px!important;
    padding:8px 14px!important;
    font:800 12.5px/1 Poppins,system-ui,sans-serif!important;
    text-decoration:none!important;
    box-shadow:0 10px 22px rgba(47,128,237,.08)!important;
    margin:4px 0 16px!important;
  }
  body:not(.admin-body) .cdi-read-toggle .cdi-toggle-icon{display:none!important;}
  body:not(.admin-body) .cdi-mobile-clamp{margin-bottom:8px!important;}

  /* Hero trust rail: smaller cards, more premium, less clipped. */
  body:not(.admin-body) .hero-ticks,
  body:not(.admin-body) .tboxes{
    display:flex!important;
    flex-wrap:nowrap!important;
    gap:9px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    scroll-snap-type:x mandatory!important;
    -webkit-overflow-scrolling:touch!important;
    scrollbar-width:none!important;
    padding:2px 0 12px!important;
    margin-left:0!important;
    margin-right:0!important;
  }
  body:not(.admin-body) .hero-ticks::-webkit-scrollbar,
  body:not(.admin-body) .tboxes::-webkit-scrollbar{display:none!important;}
  body:not(.admin-body) .hero-ticks .htick{
    flex:0 0 calc(50% - 6px)!important;
    min-width:0!important;
    max-width:none!important;
    min-height:36px!important;
    padding:8px 10px!important;
    border-radius:999px!important;
    scroll-snap-align:start!important;
    font-size:12px!important;
    line-height:1.15!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  body:not(.admin-body) .tboxes .tbox{
    flex:0 0 calc(33.333% - 7px)!important;
    min-width:106px!important;
    max-width:132px!important;
    min-height:68px!important;
    padding:12px 10px!important;
    border-radius:17px!important;
    scroll-snap-align:start!important;
    overflow:hidden!important;
  }
  body:not(.admin-body) .tboxes .tbox strong{
    font-size:14.5px!important;
    line-height:1.1!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    display:block!important;
  }
  body:not(.admin-body) .tboxes .tbox span{
    font-size:11.25px!important;
    line-height:1.2!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }

  /* Marketplace comparison checklist: two-row compact rail on phones, not six stacked boxes. */
  body:not(.admin-body) .comparison-points{
    display:grid!important;
    grid-auto-flow:column!important;
    grid-auto-columns:minmax(190px, 68vw)!important;
    grid-template-rows:repeat(2, minmax(48px, auto))!important;
    gap:9px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    scroll-snap-type:x mandatory!important;
    -webkit-overflow-scrolling:touch!important;
    scrollbar-width:none!important;
    padding:2px 0 12px!important;
    margin:0!important;
  }
  body:not(.admin-body) .comparison-points::-webkit-scrollbar{display:none!important;}
  body:not(.admin-body) .comparison-points span{
    min-height:48px!important;
    padding:10px 12px!important;
    border-radius:16px!important;
    scroll-snap-align:start!important;
    font-size:12.75px!important;
    line-height:1.18!important;
    display:flex!important;
    align-items:center!important;
    gap:8px!important;
    white-space:normal!important;
  }
  body:not(.admin-body) .comparison-points span:before{
    width:22px!important;
    height:22px!important;
    min-width:22px!important;
  }

  /* Keep the first mobile H1 visible below the fixed header. */
  body:not(.admin-body) .hero.fw,
  body:not(.admin-body) .page-hero,
  body:not(.admin-body) .cdi-hero,
  body:not(.admin-body) .guide-hero,
  body:not(.admin-body) .cost-hero{
    scroll-margin-top:96px!important;
  }
}

@media(max-width:380px){
  body:not(.admin-body) .tboxes .tbox{flex-basis:112px!important;min-width:104px!important;}
  body:not(.admin-body) .hero-ticks .htick{flex-basis:calc(56% - 6px)!important;}
}
