/* 4.6.9.20 — panel reference/stability pass.
 * Loads after workspace-finish so old fixed/grid experiments cannot combine.
 */
html body.acp-ux.acp-ux[data-ux-theme] { overflow-x:hidden!important; }
html body.acp-ux.acp-ux[data-ux-theme] .ux-top .ux-global-search { flex:1 1 360px!important; width:min(500px,38vw)!important; min-width:180px!important; max-width:500px!important; }
html body.acp-ux.acp-ux[data-ux-theme] .ux-top .ux-global-search input { flex:1 1 auto!important; width:100%!important; min-width:0!important; }
html body.acp-ux.acp-ux[data-ux-theme] .ux-side { scrollbar-width:thin; }
html body.acp-ux.acp-ux[data-ux-theme] .ux-side .ux-sideprofile { margin:0 0 12px!important; padding:12px!important; }
html body.acp-ux.acp-ux[data-ux-theme] .ux-sidebar-tools { margin:0 0 12px!important; }
html body.acp-ux.acp-ux[data-ux-theme] .ux-side .ux-nav-label { margin:10px 9px 6px!important; }
html body.acp-ux.acp-ux[data-ux-theme] .ux-side > a { min-height:42px!important; padding-block:8px!important; }

/* New-order route used a fixed sidebar/main layout while a later stylesheet put
   .ux-shell back into a two-column grid. The two systems stacked and left the
   main column only a few pixels wide. It must be one layout, never both. */
@media (min-width:900px) {
  html body.acp-ux.acp-ux[data-ux-theme].acp-page-services .ux-shell {
    display:block!important;
    grid-template-columns:none!important;
    width:100%!important;
    max-width:none!important;
    min-height:100dvh!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
  }
  html body.acp-ux.acp-ux[data-ux-theme].acp-page-services #uxSideNav {
    position:fixed!important;
    inset:16px auto 16px 16px!important;
    width:248px!important;
    max-width:248px!important;
    height:calc(100dvh - 32px)!important;
    max-height:calc(100dvh - 32px)!important;
    margin:0!important;
    transform:none!important;
    overflow-y:auto!important;
    z-index:5600!important;
  }
  html body.acp-ux.acp-ux[data-ux-theme].acp-page-services .ux-main {
    display:block!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    margin:0 0 0 264px!important;
    padding:104px 24px 44px!important;
    overflow:visible!important;
  }
  html body.acp-ux.acp-ux[data-ux-theme].acp-page-services .ux-top {
    position:fixed!important;
    top:16px!important;
    left:288px!important;
    right:24px!important;
    width:auto!important;
    max-width:none!important;
    margin:0!important;
  }
  html body.acp-ux.acp-ux[data-ux-theme].acp-page-services .ux-order-page,
  html body.acp-ux.acp-ux[data-ux-theme].acp-page-services .ux-order-head,
  html body.acp-ux.acp-ux[data-ux-theme].acp-page-services .ux-order-steps,
  html body.acp-ux.acp-ux[data-ux-theme].acp-page-services .ux-order-builder { width:100%!important; max-width:none!important; min-width:0!important; }
  html body.acp-ux.acp-ux[data-ux-theme].acp-page-services .ux-order-builder { display:grid!important; grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important; gap:14px!important; }
}

/* One predictable mobile shell on every signed-in customer-panel route. */
@media (max-width:899.98px) {
  html body.acp-ux.acp-ux[data-ux-theme]:not(.acp-ux--auth) { width:100%!important; min-width:0!important; overflow-x:hidden!important; }
  html body.acp-ux.acp-ux[data-ux-theme]:not(.acp-ux--auth) .ux-shell,
  html body.acp-ux.acp-ux[data-ux-theme].acp-page-services .ux-shell {
    display:block!important;
    grid-template-columns:none!important;
    width:100%!important;
    max-width:none!important;
    min-height:100dvh!important;
    margin:0!important;
    padding:0!important;
  }
  html body.acp-ux.acp-ux[data-ux-theme]:not(.acp-ux--auth) .ux-top,
  html body.acp-ux.acp-ux[data-ux-theme].acp-page-services .ux-top {
    position:fixed!important;
    inset:0 0 auto 0!important;
    top:0!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    max-width:none!important;
    height:64px!important;
    min-height:64px!important;
    margin:0!important;
    padding:10px 12px!important;
    gap:8px!important;
    border-radius:0!important;
    z-index:6100!important;
  }
  html body.acp-ux.acp-ux[data-ux-theme]:not(.acp-ux--auth) .ux-top > .ux-burger,
  html body.acp-ux.acp-ux[data-ux-theme].acp-page-services .ux-top > .ux-burger {
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    flex:0 0 42px!important;
    width:42px!important;
    min-width:42px!important;
    height:42px!important;
    min-height:42px!important;
    margin:0!important;
  }
  html body.acp-ux.acp-ux[data-ux-theme]:not(.acp-ux--auth) .ux-top .ux-logo { display:flex!important; flex:0 1 120px!important; min-width:0!important; overflow:hidden!important; }
  html body.acp-ux.acp-ux[data-ux-theme]:not(.acp-ux--auth) .ux-top .ux-logo img { max-width:118px!important; max-height:34px!important; }
  html body.acp-ux.acp-ux[data-ux-theme]:not(.acp-ux--auth) .ux-top__page { flex:1 1 auto!important; min-width:0!important; overflow:hidden!important; }
  html body.acp-ux.acp-ux[data-ux-theme]:not(.acp-ux--auth) .ux-top__page strong { display:block!important; overflow:hidden!important; text-overflow:ellipsis!important; white-space:nowrap!important; }
  html body.acp-ux.acp-ux[data-ux-theme]:not(.acp-ux--auth) .ux-global-search,
  html body.acp-ux.acp-ux[data-ux-theme]:not(.acp-ux--auth) .ux-top-add,
  html body.acp-ux.acp-ux[data-ux-theme]:not(.acp-ux--auth) .ux-accountpill { display:none!important; }
  html body.acp-ux.acp-ux[data-ux-theme]:not(.acp-ux--auth) .ux-top > .ux-balance { flex:0 0 auto!important; min-width:0!important; max-width:112px!important; padding:6px 8px!important; }
  html body.acp-ux.acp-ux[data-ux-theme]:not(.acp-ux--auth) .ux-balance strong { font-size:12px!important; white-space:nowrap!important; }

  html body.acp-ux.acp-ux[data-ux-theme]:not(.acp-ux--auth) #uxSideNav,
  html body.acp-ux.acp-ux[data-ux-theme].acp-page-services #uxSideNav {
    position:fixed!important;
    inset:0 auto 0 0!important;
    top:0!important;
    left:0!important;
    right:auto!important;
    bottom:0!important;
    width:min(86vw,310px)!important;
    max-width:310px!important;
    height:100dvh!important;
    max-height:100dvh!important;
    margin:0!important;
    padding:12px 12px calc(22px + env(safe-area-inset-bottom))!important;
    border-radius:0 16px 16px 0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    transform:translate3d(-105%,0,0)!important;
    transition:transform .22s ease!important;
    z-index:6500!important;
  }
  html body.acp-ux.acp-ux[data-ux-theme].ux-nav-open #uxSideNav,
  html body.acp-ux.acp-ux[data-ux-theme].is-menu-open #uxSideNav,
  html body.acp-ux.acp-ux[data-ux-theme].acp-page-services.ux-nav-open #uxSideNav { transform:translate3d(0,0,0)!important; }
  html body.acp-ux.acp-ux[data-ux-theme]:not(.acp-ux--auth) #uxSideNav .ux-drawer-head,
  html body.acp-ux.acp-ux[data-ux-theme].acp-page-services #uxSideNav .ux-drawer-head {
    display:flex!important;
    position:sticky!important;
    top:-12px!important;
    align-items:center!important;
    justify-content:space-between!important;
    min-height:58px!important;
    margin:-12px -12px 10px!important;
    padding:12px!important;
    border-bottom:1px solid var(--aitp-line,var(--ux-line))!important;
    background:var(--aitp-surface,var(--ux-card))!important;
    z-index:3!important;
  }
  html body.acp-ux.acp-ux[data-ux-theme]:not(.acp-ux--auth) #uxSideNav .ux-side-close,
  html body.acp-ux.acp-ux[data-ux-theme].acp-page-services #uxSideNav .ux-side-close {
    display:grid!important;
    place-items:center!important;
    position:static!important;
    width:42px!important;
    min-width:42px!important;
    height:42px!important;
    min-height:42px!important;
    margin:0!important;
    padding:10px!important;
  }
  html body.acp-ux.acp-ux[data-ux-theme]:not(.acp-ux--auth) .ux-scrim {
    display:block!important;
    position:fixed!important;
    inset:0!important;
    z-index:6400!important;
    background:rgba(15,23,42,.42)!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transition:opacity .2s ease!important;
  }
  html body.acp-ux.acp-ux[data-ux-theme].ux-nav-open .ux-scrim,
  html body.acp-ux.acp-ux[data-ux-theme].is-menu-open .ux-scrim { opacity:1!important; visibility:visible!important; pointer-events:auto!important; }
  html body.acp-ux.acp-ux[data-ux-theme].ux-nav-open { position:fixed!important; left:0!important; right:0!important; top:var(--ux-scroll-lock-offset,0)!important; width:100%!important; }

  html body.acp-ux.acp-ux[data-ux-theme]:not(.acp-ux--auth) .ux-main,
  html body.acp-ux.acp-ux[data-ux-theme].acp-page-services .ux-main {
    display:block!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    margin:0!important;
    padding:82px 14px calc(88px + env(safe-area-inset-bottom))!important;
    overflow:visible!important;
  }
  html body.acp-ux.acp-ux[data-ux-theme].acp-page-services .ux-order-page,
  html body.acp-ux.acp-ux[data-ux-theme].acp-page-services .ux-order-head,
  html body.acp-ux.acp-ux[data-ux-theme].acp-page-services .ux-order-steps,
  html body.acp-ux.acp-ux[data-ux-theme].acp-page-services .ux-order-builder,
  html body.acp-ux.acp-ux[data-ux-theme].acp-page-services :is(.ux-order-finder,.ux-order-config) { width:100%!important; max-width:100%!important; min-width:0!important; margin-left:0!important; margin-right:0!important; }
  html body.acp-ux.acp-ux[data-ux-theme].acp-page-services .ux-order-builder { display:grid!important; grid-template-columns:minmax(0,1fr)!important; gap:14px!important; }
  html body.acp-ux.acp-ux[data-ux-theme].acp-page-services .ux-order-head { display:flex!important; align-items:flex-start!important; }
  html body.acp-ux.acp-ux[data-ux-theme].acp-page-services .ux-order-head > div { min-width:0!important; flex:1 1 auto!important; }
  html body.acp-ux.acp-ux[data-ux-theme].acp-page-services .ux-order-head h1 { font-size:25px!important; line-height:1.15!important; white-space:normal!important; word-break:normal!important; overflow-wrap:normal!important; }
  html body.acp-ux.acp-ux[data-ux-theme].acp-page-services .ux-order-head p { max-width:60ch!important; font-size:13px!important; line-height:1.5!important; word-break:normal!important; }
  html body.acp-ux.acp-ux[data-ux-theme].acp-page-services .ux-order-steps { overflow-x:auto!important; }
  html body.acp-ux.acp-ux[data-ux-theme].acp-page-services .ux-order-steps li { min-width:max-content!important; }
  html body.acp-ux.acp-ux[data-ux-theme].acp-page-services :is(input,select,textarea) { min-width:0!important; max-width:100%!important; }
}

@media (max-width:520px) {
  html body.acp-ux.acp-ux[data-ux-theme]:not(.acp-ux--auth) .ux-top .ux-logo { display:none!important; }
  html body.acp-ux.acp-ux[data-ux-theme]:not(.acp-ux--auth) .ux-top__page { display:block!important; }
  html body.acp-ux.acp-ux[data-ux-theme]:not(.acp-ux--auth) .ux-main,
  html body.acp-ux.acp-ux[data-ux-theme].acp-page-services .ux-main { padding-inline:12px!important; }
}

@media (prefers-reduced-motion:reduce) {
  html body.acp-ux.acp-ux[data-ux-theme] #uxSideNav,
  html body.acp-ux.acp-ux[data-ux-theme] .ux-scrim { transition:none!important; }
}
