:root {
  --cx-mobile-touch: 46px;
  --cx-mobile-gutter: clamp(14px, 4vw, 20px);
  --cx-mobile-safe-top: env(safe-area-inset-top, 0px);
  --cx-mobile-safe-right: env(safe-area-inset-right, 0px);
  --cx-mobile-safe-bottom: env(safe-area-inset-bottom, 0px);
  --cx-mobile-safe-left: env(safe-area-inset-left, 0px);
  --cx-mobile-vh: 1vh;
  --cx-mobile-viewport-top: 0px;
}

html {
  min-height: 100%;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body {
  min-height: 100vh;
  min-height: 100dvh;
}

img,
video,
canvas,
svg {
  max-width: 100%;
}

.provider-sidebar,
.sidebar,
.platform-sidebar,
.admin-sidebar {
  overscroll-behavior: contain;
}

@supports (content-visibility: auto) {
  body.celebrax-home-retention main > section:not(.hero),
  .live-gallery-section,
  .live-ranking-section {
    content-visibility: auto;
    contain-intrinsic-size: auto 700px;
  }
}

/* Panels contain fixed dialogs and drawers. Layout containment here would
   anchor those overlays to an off-screen section instead of the viewport. */
.provider-view,
.platform-view,
.admin-view,
.view-section {
  min-width: 0;
}

.cx-mobile-filter-toggle,
.cx-mobile-filter-close,
.cx-mobile-chat-back,
.provider-mobile-stepper,
.provider-mobile-step-actions {
  display: none;
}

.cx-mobile-card-details-toggle {
  display: none;
}

/* A phone in landscape may be wider than 760px; its keyboard and touch
   controls still need mobile sizing, without changing the desktop layout. */
@media (pointer: coarse) {
  input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]):not([type="file"]),
  select,
  textarea { font-size: 16px !important; }

  button, summary, [role="button"] { min-height: 44px; }
}

/*
 * Regras de navegação compartilhadas pelos três shells mobile.
 * Ficam fora do breakpoint de 760px porque home/prestador trocam para menu
 * compacto em 900px e o painel do evento usa 768px.
 */
@media (max-width: 900px) {
  body.celebrax-home-retention .main-nav.active {
    right: max(12px, var(--cx-mobile-safe-right)) !important;
    left: max(12px, var(--cx-mobile-safe-left)) !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    flex-direction: column !important;
    gap: 0 !important;
    width: auto !important;
    max-width: none !important;
    max-height: min(72dvh, 560px) !important;
    padding: 8px !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    border-radius: 18px !important;
    box-shadow: 0 24px 60px rgba(7, 27, 59, 0.22) !important;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
  }

  body.celebrax-home-retention .main-nav.active > a {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: 100% !important;
    min-height: 48px !important;
    padding: 12px 14px !important;
    white-space: normal !important;
  }

  body.celebrax-home-retention .main-nav.active .nav-demo-mobile {
    width: 100% !important;
    margin-top: 8px !important;
    border-radius: 12px !important;
  }

  .provider-sidebar {
    z-index: 1200 !important;
  }

  .provider-app-backdrop {
    z-index: 1190 !important;
  }

  body.provider-menu-open .celebrax-language-switcher[data-placement="provider-app-header"] {
    z-index: 0 !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }
}

@media (max-width: 768px) {
  .navbar .hamburger {
    margin-left: auto;
    min-width: 44px;
    min-height: 44px;
  }

  .navbar .nav-menu.active {
    max-height: calc(var(--cx-mobile-vh) * 100 - 100px - var(--cx-mobile-safe-bottom));
    overflow-y: auto;
    overscroll-behavior: contain;
  }

  /* A sidebar fechada é apenas o cabeçalho. 100dvh aqui empurrava o painel
     inteiro para baixo e fazia a tela parecer um menu aberto e vazio. */
  .sidebar:not(.admin-mobile-menu-open) {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    padding-top: max(16px, var(--cx-mobile-safe-top)) !important;
    padding-bottom: 16px !important;
  }
}

@media (max-width: 760px) {
  :root {
    --cx-mobile-touch: 48px;
  }

  body {
    overflow-x: clip;
  }

  input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]):not([type="file"]),
  select,
  textarea {
    box-sizing: border-box;
    min-width: 0;
    max-width: 100%;
    font-size: 16px !important;
  }

  button,
  [role="button"],
  input[type="button"],
  input[type="submit"],
  .language-trigger,
  .menu-toggle,
  .celebrax-checkout-close,
  .celebrax-interest-close,
  .admin-modal-close,
  .admin-user-modal-close,
  .modal-close,
  .provider-menu-button,
  .platform-menu-button {
    min-width: 44px;
    min-height: 44px;
  }

  a[class*="button"],
  a[class*="btn"],
  button[class*="button"],
  button[class*="btn"] {
    min-height: 44px;
  }

  :where(button, a, input, select, textarea, [role="button"]):focus-visible {
    outline: 3px solid #20d0a4;
    outline-offset: 3px;
  }

  .provider-sidebar,
  .sidebar,
  .platform-sidebar,
  .admin-sidebar {
    height: 100vh !important;
    height: 100dvh !important;
    max-height: 100dvh !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    padding-top: max(16px, var(--cx-mobile-safe-top)) !important;
    padding-bottom: max(24px, var(--cx-mobile-safe-bottom)) !important;
    -webkit-overflow-scrolling: touch;
  }

  .provider-sidebar nav,
  .provider-sidebar-nav,
  .sidebar nav,
  .platform-sidebar nav,
  .admin-sidebar nav {
    padding-bottom: max(20px, var(--cx-mobile-safe-bottom));
  }

  .celebrax-language,
  [data-language-switcher] {
    right: max(10px, var(--cx-mobile-safe-right)) !important;
  }

  .language-trigger {
    min-height: 44px !important;
  }

  body.admin-mobile-menu-lock .celebrax-language-switcher,
  body.provider-menu-open .celebrax-language-switcher {
    opacity: 0 !important;
    pointer-events: none !important;
  }

  /* Home: menos rolagem, uma ação principal e secundárias discretas. */
  body.celebrax-home-retention :is(
    .editorial-intro,
    .capabilities,
    .dashboard-story,
    .process,
    .event-kinds,
    .demo-interlude,
    .pricing,
    .payment-clarity,
    .provider-story,
    .faq,
    .closing-statement
  ) {
    padding-top: clamp(46px, 11vw, 62px) !important;
    padding-bottom: clamp(46px, 11vw, 62px) !important;
  }

  body.celebrax-home-retention .editorial-hero {
    min-height: auto !important;
    padding-top: 38px !important;
    padding-bottom: 46px !important;
    gap: 34px !important;
  }

  body.celebrax-home-retention .editorial-hero h1 {
    font-size: clamp(2.2rem, 11.5vw, 3.2rem) !important;
    line-height: 1.02 !important;
  }

  body.celebrax-home-retention .hero-lede {
    font-size: 0.98rem !important;
    line-height: 1.6 !important;
  }

  body.celebrax-home-retention .hero-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 9px !important;
    margin-bottom: 26px !important;
  }

  body.celebrax-home-retention .hero-actions .button {
    width: 100% !important;
    min-height: 48px !important;
    padding: 0.72rem 0.8rem !important;
    border-radius: 13px !important;
  }

  body.celebrax-home-retention .hero-actions .button-primary {
    min-height: 54px !important;
  }

  body.celebrax-home-retention .hero-actions .button-quiet {
    border-color: #cfdbea !important;
    background: #fff !important;
    color: #18364d !important;
    box-shadow: none !important;
  }

  body.celebrax-home-retention .hero-product {
    min-height: 410px !important;
  }

  body.celebrax-home-retention .section-heading h2 {
    font-size: clamp(1.9rem, 9vw, 2.55rem) !important;
  }

  body.celebrax-home-retention .hero-notes {
    gap: 7px !important;
  }

  /* Cabeçalhos de painéis mais compactos e sem colisão de ações. */
  .provider-app-header,
  .platform-header,
  .admin-header,
  .main-header,
  .top-header {
    gap: 10px !important;
    padding-left: var(--cx-mobile-gutter) !important;
    padding-right: var(--cx-mobile-gutter) !important;
  }

  .provider-app-header h1,
  .platform-header h1,
  .admin-header h1,
  .main-header h1 {
    font-size: clamp(1.12rem, 5vw, 1.45rem) !important;
    line-height: 1.2 !important;
  }

  .provider-app-header p,
  .platform-header p,
  .admin-header p,
  .main-header p {
    overflow-wrap: anywhere;
  }

  /* Modais viram bottom sheets com header e ações sempre alcançáveis. */
  .celebrax-checkout-modal,
  .celebrax-interest-modal,
  .admin-modal-overlay,
  .admin-user-modal-backdrop,
  .platform-modal-backdrop,
  .platform-provider-modal,
  .portal-chat-dialog-backdrop,
  .community-dialog-backdrop,
  .platform-presentation-modal,
  .admin-budget-modal,
  .admin-partner-modal,
  .provider-operation-modal,
  .provider-team-invite-overlay,
  .portal-support-shell {
    box-sizing: border-box;
    top: var(--cx-mobile-viewport-top) !important;
    bottom: auto !important;
    height: calc(var(--cx-mobile-vh) * 100) !important;
    align-items: end !important;
    padding: 0 !important;
  }

  .celebrax-checkout-container,
  .celebrax-interest-card,
  .admin-modal-card,
  .admin-user-modal-dialog,
  .platform-modal-card,
  .platform-provider-modal-card,
  .admin-confirm-modal,
  .portal-chat-dialog,
  .community-dialog,
  .platform-presentation-card,
  .admin-budget-modal-card,
  .admin-partner-modal-card,
  .provider-operation-modal > article,
  .provider-team-invite-overlay > article,
  .portal-support-shell > section {
    box-sizing: border-box;
    width: 100% !important;
    max-width: 100% !important;
    max-height: calc(var(--cx-mobile-vh) * 100 - var(--cx-mobile-safe-top)) !important;
    margin: 0 !important;
    border-radius: 22px 22px 0 0 !important;
    padding-bottom: max(14px, var(--cx-mobile-safe-bottom)) !important;
    overscroll-behavior: contain;
  }

  .celebrax-checkout-modal .celebrax-checkout-container,
  .celebrax-interest-modal .celebrax-interest-card {
    min-height: 0;
    max-height: 100% !important;
  }

  .platform-modal-body,
  .admin-budget-form-scroll,
  .portal-support-layout {
    min-height: 0;
    overscroll-behavior: contain;
    scroll-padding-block: 16px 32px;
  }

  .celebrax-checkout-close,
  .celebrax-interest-close,
  .admin-modal-close,
  .admin-user-modal-close,
  .portal-chat-dialog-close,
  .community-dialog [data-community-dialog-close] {
    width: 44px !important;
    height: 44px !important;
  }

  dialog.portaria-dialog,
  dialog.live-identify-dialog,
  dialog.account-2fa-dialog,
  dialog.guest-dialog {
    width: 100% !important;
    max-width: none !important;
    max-height: calc(var(--cx-mobile-vh) * 100 - var(--cx-mobile-safe-top) - 16px) !important;
    margin: auto 0 0 !important;
    border-radius: 22px 22px 0 0 !important;
  }

  .account-2fa-dialog footer {
    flex-wrap: wrap;
  }

  .account-2fa-dialog footer button {
    flex: 1 1 120px;
    min-height: 48px;
  }

  #paymentModal,
  .event-library-lightbox,
  .celebrax-library-viewer,
  .portal-media-viewer {
    box-sizing: border-box;
    top: var(--cx-mobile-viewport-top) !important;
    bottom: auto !important;
    height: calc(var(--cx-mobile-vh) * 100) !important;
    padding: 0 !important;
  }

  #paymentModal { align-items: end; }
  #paymentModal .modal-content {
    width: 100%;
    min-height: 0;
    max-height: calc(var(--cx-mobile-vh) * 100 - var(--cx-mobile-safe-top));
    padding-bottom: max(24px, var(--cx-mobile-safe-bottom));
    overscroll-behavior: contain;
  }

  .event-library-lightbox-dialog,
  .celebrax-library-viewer__dialog,
  .portal-media-viewer > section {
    height: 100% !important;
    max-height: 100% !important;
  }

  .event-library-lightbox-dialog header,
  .celebrax-library-viewer__header,
  .portal-media-viewer header { padding-top: max(12px, var(--cx-mobile-safe-top)) !important; }

  .event-library-lightbox-dialog footer,
  .celebrax-library-viewer__footer,
  .portal-media-viewer footer { padding-bottom: max(12px, var(--cx-mobile-safe-bottom)) !important; }

  .event-library-lightbox-dialog footer a,
  .celebrax-library-viewer__download,
  .celebrax-library-viewer__close,
  .celebrax-library-viewer__nav {
    min-width: 44px;
    min-height: 44px;
  }

  body.guest-operations :is(.guest-dialog-shell, .portaria-dialog form) {
    min-height: 0;
    max-height: calc(var(--cx-mobile-vh) * 100 - var(--cx-mobile-safe-top) - 16px);
  }

  .provider-operation-modal > article > header,
  .provider-team-hero,
  .platform-provider-modal-header,
  .admin-budget-modal-header {
    gap: 12px;
    overflow-wrap: anywhere;
  }

  .provider-operation-modal > article > header > h3,
  .platform-provider-modal-header > div,
  .admin-budget-modal-header > div {
    min-width: 0;
  }

  .provider-operation-modal [data-provider-operation-close],
  .platform-modal-close,
  .platform-provider-close,
  .admin-budget-icon-button,
  .provider-team-actions button,
  .invitation-text-actions button,
  .invitation-image-actions button,
  .invitation-reset-position-btn,
  .pcb-topbar nav button,
  .pcb-card-actions button,
  .pcb-header-actions button,
  .event-library-lightbox-nav {
    flex-shrink: 0;
    min-width: 44px;
    min-height: 44px;
  }

  /* Conversas: primeiro a lista, depois a conversa. */
  .portal-chat-shell,
  .community-chat-shell {
    box-sizing: border-box;
    inset: calc(var(--cx-mobile-viewport-top) + var(--cx-mobile-safe-top)) 0 auto !important;
    width: 100% !important;
    height: calc(var(--cx-mobile-vh) * 100 - var(--cx-mobile-safe-top)) !important;
    max-height: none !important;
    border-radius: 0 !important;
    padding-bottom: var(--cx-mobile-safe-bottom);
  }

  .portal-chat-layout,
  .community-chat-layout {
    display: block !important;
    height: 100% !important;
    min-height: 0;
  }

  .portal-chat-list,
  .community-chat-list {
    width: 100% !important;
    height: 100% !important;
    max-height: none !important;
    overflow-y: auto !important;
    border-right: 0 !important;
  }

  .portal-chat-main,
  .community-chat-main {
    display: none !important;
    height: 100% !important;
  }

  .portal-chat-shell.cx-mobile-thread-open .portal-chat-list,
  .community-chat-shell.cx-mobile-thread-open .community-chat-list {
    display: none !important;
  }

  .portal-chat-shell.cx-mobile-thread-open .portal-chat-main,
  .community-chat-shell.cx-mobile-thread-open .community-chat-main {
    display: grid !important;
  }

  .portal-chat-list button,
  .community-chat-list button {
    grid-template-columns: auto minmax(0, 1fr) !important;
    justify-items: start !important;
    width: 100% !important;
    min-height: 64px !important;
    padding: 10px 14px !important;
    text-align: left !important;
  }

  .portal-chat-list button small,
  .community-chat-list button small {
    display: block !important;
  }

  .cx-mobile-chat-back {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-right: 8px;
    border: 0;
    border-radius: 10px;
    color: inherit;
    background: transparent;
    font: inherit;
    font-weight: 850;
  }

  .portal-chat-composer,
  .community-chat-composer {
    padding-bottom: max(10px, var(--cx-mobile-safe-bottom)) !important;
  }

  /* Busca sempre visível; filtros expansíveis sem cobrir a tela ou mover campos. */
  .cx-mobile-filter-toggle,
  .cx-mobile-filter-close {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #cfdbea;
    border-radius: 12px;
    color: inherit;
    background: var(--panel-theme-surface, var(--provider-surface, #fff));
    font: inherit;
    font-weight: 850;
    min-height: 48px;
    padding: 0 14px;
  }

  .cx-mobile-filter-panel {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: end !important;
    gap: 10px !important;
    min-width: 0;
    max-width: 100%;
  }

  .cx-mobile-filter-panel.is-open {
    row-gap: 14px !important;
  }

  .cx-mobile-filter-panel > * {
    grid-column: 1 / -1 !important;
    min-width: 0 !important;
    max-width: 100%;
  }

  .cx-mobile-filter-panel > .cx-mobile-filter-search {
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 100% !important;
    margin: 0 !important;
  }

  .cx-mobile-filter-panel > .cx-mobile-filter-toggle {
    grid-column: 2 !important;
    grid-row: 1 !important;
  }

  .cx-mobile-filter-panel:not(.is-open) > .cx-mobile-filter-secondary,
  .cx-mobile-filter-panel:not(.is-open) > .cx-mobile-filter-close,
  .cx-mobile-filter-panel[hidden],
  .cx-mobile-filter-panel.hidden {
    display: none !important;
  }

  .cx-mobile-filter-panel input,
  .cx-mobile-filter-panel select {
    box-sizing: border-box;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100%;
    min-height: 48px;
  }

  .cx-mobile-filter-close {
    width: 100%;
    color: #fff;
    border-color: #075ec7;
    background: #075ec7;
  }

  /* Cadastro do prestador em três etapas apenas no celular. */
  #providerRegisterForm.is-mobile-progressive .provider-mobile-stepper {
    display: grid;
    gap: 8px;
  }

  .provider-mobile-stepper-track {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 6px;
  }

  .provider-mobile-stepper-track span {
    height: 5px;
    border-radius: 999px;
    background: #dbe5f2;
  }

  .provider-mobile-stepper-track span.is-active {
    background: #0b63e5;
  }

  .provider-mobile-stepper strong {
    color: var(--provider-navy, #17263c);
    font-size: 0.92rem;
  }

  #providerRegisterForm.is-mobile-progressive [data-provider-mobile-step] {
    display: none;
  }

  #providerRegisterForm.is-mobile-progressive [data-provider-mobile-step].is-current-step {
    display: grid;
  }

  #providerRegisterForm.is-mobile-progressive .provider-consents.is-current-step {
    display: grid;
  }

  #providerRegisterForm.is-mobile-progressive > button[type="submit"] {
    display: none;
    order: 2;
  }

  #providerRegisterForm.is-mobile-progressive.is-mobile-final-step > button[type="submit"] {
    display: flex;
    align-items: center;
    justify-content: center;
  }

  #providerRegisterForm .provider-mobile-step-actions [hidden] {
    display: none !important;
  }

  #providerRegisterForm.is-mobile-progressive .provider-mobile-step-actions {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 9px;
    order: 1;
  }

  #providerRegisterForm.is-mobile-progressive .provider-mobile-step-actions:has(.is-back[hidden]),
  #providerRegisterForm.is-mobile-progressive.is-mobile-final-step .provider-mobile-step-actions {
    grid-template-columns: minmax(0, 1fr);
  }

  .provider-mobile-step-actions button {
    border: 0;
    border-radius: 12px;
    padding: 0 16px;
    font: inherit;
    font-weight: 900;
  }

  .provider-mobile-step-actions .is-back {
    color: #075ec7;
    background: #eaf3ff;
  }

  .provider-mobile-step-actions .is-next {
    color: #fff;
    background: #075ec7;
  }

  /* Portaria para uso com uma mão. */
  .portaria-header {
    padding-top: max(10px, var(--cx-mobile-safe-top)) !important;
  }

  .portaria-connection {
    min-height: 34px !important;
  }

  .portaria-toolbar {
    position: sticky;
    z-index: 30;
    top: calc(70px + var(--cx-mobile-safe-top));
    display: grid !important;
    grid-template-columns: 1fr auto !important;
    padding: 10px !important;
    box-shadow: 0 12px 28px rgba(8, 32, 60, 0.12);
  }

  .portaria-toolbar label:first-child {
    grid-column: 1 / -1 !important;
  }

  .portaria-toolbar .cx-portaria-filter-chips {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 6px;
  }

  .cx-portaria-filter-chips button {
    min-height: 44px;
    padding: 0 8px !important;
    border: 1px solid #cfdaea !important;
    background: transparent !important;
  }

  .cx-portaria-filter-chips button.is-active {
    color: #fff !important;
    border-color: #075ec7 !important;
    background: #075ec7 !important;
  }

  .portaria-toolbar > label:has(#arrivalFilter) {
    display: none !important;
  }

  .portaria-slot-actions button {
    min-height: 52px !important;
    font-size: 0.96rem !important;
  }

  .portaria-undo {
    min-height: 46px !important;
  }

  .portaria-toast {
    bottom: max(16px, var(--cx-mobile-safe-bottom)) !important;
  }

  /* Evento ao vivo: fontes de mídia distintas e CTA alcançável. */
  .live-source-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 9px;
    margin-top: 18px;
  }

  .live-source-button {
    display: grid;
    place-items: center;
    gap: 4px;
    min-height: 82px;
    padding: 10px;
    border: 1px solid #a9c5e7;
    border-radius: 15px;
    color: var(--live-primary-dark, #073e83);
    background: var(--live-soft, #eef5ff);
    text-align: center;
    font-weight: 900;
  }

  .live-source-button small {
    color: var(--live-muted, #66758a);
    font-size: 0.7rem;
    font-weight: 650;
  }

  .live-dropzone {
    min-height: 118px !important;
    margin-top: 10px;
  }

  .live-upload-actions {
    position: sticky;
    z-index: 8;
    bottom: 0;
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
    margin: 16px -16px calc(-20px - var(--cx-mobile-safe-bottom));
    padding: 12px 16px max(14px, var(--cx-mobile-safe-bottom));
    border-top: 1px solid var(--live-border, #d7e2ef);
    background: color-mix(in srgb, var(--live-surface, #fff) 94%, transparent);
    backdrop-filter: blur(14px);
  }

  .live-upload-cancel {
    min-height: 44px;
    border: 0;
    border-radius: 12px;
    color: #b42318;
    background: #fee4e2;
    font: inherit;
    font-weight: 850;
  }

  .live-selected-item button,
  .live-photo-reaction,
  .live-moment-tabs button,
  .live-view-switch button {
    min-width: 44px !important;
    min-height: 44px !important;
  }

  /* Cartões: resumo primeiro; textos extensos não dominam a tela. */
  .cx-mobile-card-details {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
  }

  .cx-mobile-card-details-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 0 12px;
    border: 0;
    color: #075ec7;
    background: transparent;
    font: inherit;
    font-size: 0.82rem;
    font-weight: 850;
  }

  .cx-mobile-card-details.is-expanded {
    display: block !important;
    overflow: visible !important;
    -webkit-line-clamp: unset !important;
  }
}

@media (max-width: 420px) {
  body.celebrax-home-retention .hero-actions {
    grid-template-columns: 1fr !important;
  }

  body.celebrax-home-retention .hero-actions .hero-lead-action {
    grid-column: auto;
  }

  .live-source-actions {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  body.admin-dark-mode .cx-mobile-filter-toggle,
  body.platform-dark-mode .cx-mobile-filter-toggle,
  html[data-theme="dark"] .cx-mobile-filter-toggle {
    color: #eef5ff;
    border-color: #314a68;
    background: var(--panel-theme-surface, var(--provider-surface, #13243b));
  }
}

@media (prefers-reduced-motion: reduce) {
  .cx-mobile-filter-panel {
    transition: none;
  }
}
