/* Screen-only adaptations; invoice paper and PDF capture retain original sizing. */
@media screen {
 html,body {transform:none!important;}
 /* Keep the sales dock positioned against the viewport through its ancestors. */
 main.app-shell-enter {transform:none!important;will-change:opacity;}
 #tab-sales {content-visibility:visible;}
 body {min-height:100vh;min-height:100dvh;}
 [data-portal-header] {padding-top:env(safe-area-inset-top,0px);}
 [data-portal-header-row], [data-portal-mobile-navigation] {padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));}
 #recipeModal,#itemSelectionModal,#statusUpdateModal {padding-top:max(16px,env(safe-area-inset-top,0px));padding-bottom:max(8px,env(safe-area-inset-bottom,0px));}
 #recipeModalPanel,#itemModalPanel,#statusModalPanel {min-width:0!important;max-width:calc(100vw - 24px)!important;max-height:calc(100vh - 40px)!important;max-height:calc(100dvh - 40px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px))!important;}
 .modal-scroll {min-height:0;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;}
 @media (max-width:1023px) {
  input:not([type=hidden]),select,textarea {font-size:16px!important;}
  button:not(:disabled),[data-portal-mobile-navigation] a {min-height:44px;}
  [data-portal-account] {flex-wrap:wrap;}
  #cartActionContainer>div>div,#pdfActionContainer>div>div {gap:8px;padding-top:8px;padding-bottom:8px;}
  #mobileSalesSaveContainer {padding-bottom:max(12px,env(safe-area-inset-bottom,0px));}
  main {padding-bottom:max(180px,calc(160px + env(safe-area-inset-bottom,0px)))!important;}
  [data-mobile-catalog-scroll] {overflow-x:auto!important;-webkit-overflow-scrolling:touch;}
  [data-mobile-catalog-scroll]>div:first-child {overflow:visible;min-width:960px;}
  [data-mobile-catalog-scroll] table {min-width:960px;}
  #catalogVirtualViewport {width:960px!important;height:clamp(280px,60vh,600px)!important;height:clamp(280px,60svh,600px)!important;}
 }
 @media (max-width:359px) {
  [data-portal-brand]>:last-child>:first-child {font-size:15px!important;}
  [data-portal-header-row] {gap:6px;}
 }
 @media (max-height:500px) and (orientation:landscape) {
  #cartActionContainer>div>div,#pdfActionContainer>div>div {flex-direction:row!important;flex-wrap:wrap;}
 }
}

@media screen and (max-width:1023px) {
 .mobile-keyboard-open #cartActionContainer,.mobile-keyboard-open #pdfActionContainer,.mobile-keyboard-open #mobileSalesSaveContainer {display:none!important;}
}

/* Transient feedback belongs to the screen, never to invoice paper/PDF. */
@media print {
 #premiumToastContainer,#toastContainer,#y2c-global-loader {display:none!important;}
}

/* V88_24_9: single document scroll, bounded catalog cards, reachable navigation. */
@media screen {
 .catalog-pagination{display:flex;justify-content:center;align-items:center;gap:20px;padding:20px 0}
 .catalog-pagination[hidden]{display:none}
 .catalog-quick-actions{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}
 .catalog-quick-actions [aria-pressed=true]{background:#172033;color:white;border-color:#172033}
 .ux-network{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:10px 14px;margin:0 0 12px;background:#f2f5f8;border:1px solid #dce3eb;border-radius:12px;color:#334155;font-size:12px;line-height:1.5}
 .ux-network[hidden]{display:none}.ux-network[data-state=retrying]{background:#fff8ed;border-color:#edd6af}.ux-network small{color:#64748b}
 .ux-network-dot{width:8px;height:8px;border-radius:50%;background:#64748b;flex-shrink:0}
 .ux-network[data-state=retrying] .ux-network-dot{background:#a76906}
 .ux-network-label{flex:1;min-width:180px}
 .ux-sync[data-state=clear]{padding:8px 12px;margin-bottom:12px}.ux-sync[data-state=clear]>p{display:none}
 .ux-mobile-top{display:none}
 @media(max-width:1023px){
  :root{--portal-bottom-nav:64px;--portal-dock-height:0px;--portal-header-height:70px}
  [data-portal-mobile-navigation]{position:fixed;bottom:0;left:0;right:0;z-index:55;display:flex;justify-content:space-evenly;align-items:stretch;gap:2px;padding:6px 6px max(6px,env(safe-area-inset-bottom))!important;border-top:1px solid #e2e8f0;box-shadow:0 -3px 15px #1720330a;white-space:normal;overflow:visible}
  [data-portal-mobile-navigation] a:not(.hidden){display:flex;align-items:center;justify-content:center;flex:1;min-width:0;min-height:48px;padding:6px;font-size:11px;line-height:1.3;text-align:center;white-space:normal;border-radius:12px}
  [data-portal-mobile-navigation] a[aria-current=page]{color:#a71f34;background:#fff0f2}
  #cartActionContainer,#pdfActionContainer{bottom:var(--portal-bottom-nav)!important}
  #mobileSalesSaveContainer{bottom:var(--portal-bottom-nav)!important}
  body.portal-page main{padding-top:18px!important;padding-bottom:calc(var(--portal-bottom-nav) + var(--portal-dock-height) + 32px)!important}
  [data-portal-header]{backdrop-filter:none!important;background:#fff!important}
  #catalogHeading{display:contents}
  #catalogHeading>div:first-child{margin-bottom:14px}
  #catalogHeading h2{font-size:23px;flex-wrap:wrap;gap:8px;line-height:1.3}
  #catalogHeading p{font-size:12px;margin-top:6px}
  #catalogToolbar{position:sticky;top:var(--portal-header-height);z-index:25;padding:8px 0;background:#f8f9fb;scroll-margin-top:calc(var(--portal-header-height) + 8px);display:flex;flex-direction:row;align-items:center;gap:8px}
  #catalogToolbar>div:last-child{min-width:0;flex:1;width:auto}
  #catalogToolbar #hubSelectorContainer{width:100px;flex-shrink:0}
  #catalogKpis{gap:8px;margin-bottom:14px}
  #catalogKpis .kpi-card{padding:12px;border-radius:12px;min-height:0}
  #catalogKpis .kpi-card>div{font-size:20px;line-height:1.3}
  #catalogKpis .kpi-card:nth-child(2){display:none}
  #inventoryComparison{margin:8px 0}
  [data-mobile-catalog-scroll]{overflow:visible!important;background:transparent;border:0;box-shadow:none;min-height:0;border-radius:0}
  [data-mobile-catalog-scroll]>div:first-child{display:none!important;min-width:0}
  #catalogVirtualViewport{width:100%!important;height:auto!important;overflow:visible!important;contain:none!important}
  #catalogVirtualContainer{position:static!important;height:auto!important;width:100%}
  #catalogTable{display:block;min-width:0!important;width:100%!important}
  #catalogTableBody{display:grid;gap:12px;transform:none!important}
  #catalogTableBody>tr:not(.virtual-row){display:block}#catalogTableBody>tr:not(.virtual-row)>td{display:block;padding:8px}
  #catalogTableBody .virtual-row{height:auto!important;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 8px;padding:14px;border:1px solid #dce3eb;border-radius:16px;background:white;overflow-wrap:anywhere}
  #catalogTableBody .virtual-row>td{display:block!important;position:static!important;width:auto!important;min-width:0;padding:0;border:0!important;text-align:left;max-height:none!important;overflow:visible!important}
  #catalogTableBody .virtual-row>td:nth-child(1){grid-column:1/-1;font-size:11px;color:#64748b}
  #catalogTableBody .virtual-row>td:nth-child(2){grid-column:1/-1}
  #catalogTableBody .virtual-row>td:nth-child(2) .truncate-text{max-width:none;white-space:normal;overflow:visible;line-height:1.5;font-size:14px}
  #catalogTableBody .virtual-row>td:nth-child(3)>div{align-items:flex-start;gap:4px}
  #catalogTableBody .virtual-row>td:nth-child(4){text-align:right;align-self:center;font-size:17px}
  #catalogTableBody .virtual-row>td:nth-child(4)::after{content:' / BOX';font-size:10px;font-weight:500;color:#64748b}
  #catalogTableBody .virtual-row>td:nth-child(5){align-self:center}
  #catalogTableBody .virtual-row>td:nth-child(6){align-self:start;padding-top:3px}
  .stock-cell-details{max-height:none!important;overflow:visible!important}
  .catalog-expiry summary{min-height:44px;font-size:11px;color:#9b2437;cursor:pointer;display:flex;align-items:center}
  .catalog-expiry>div{display:grid;gap:4px}.catalog-expiry>div>div{white-space:normal}
  #catalogTableBody .qty-input-wrapper{gap:3px;min-width:144px;width:auto;padding:3px;border:1px solid #dce3eb;background:#f8fafc;border-radius:13px}
  #catalogTableBody .qty-btn{width:44px!important;height:44px!important;min-height:44px;font-size:22px;border-radius:9px}
  #catalogTableBody .qty-input{width:42px!important;height:44px;font-size:16px!important;padding:0}
  #cartActionContainer>div{backdrop-filter:none;padding-bottom:8px!important}
  #cartActionContainer>div>div{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(130px,45%);gap:12px;padding:10px 16px!important}
  #cartActionContainer>div>div>div:first-child{display:block}
  #cartActionContainer>div>div>div:first-child>div:first-child{display:none}
  #cartActionContainer>div>div>div:first-child>div:last-child{display:block;text-align:left}
  #cartActionContainer>div>div>div:last-child>div{display:none}
  #cartActionContainer #btnSubmitCart{padding:12px 8px;font-size:12px;min-height:48px}
  #cartEstimateNote{padding-bottom:calc(var(--portal-bottom-nav) + 12px)}
  .ux-mobile-top{position:fixed;right:14px;bottom:calc(var(--portal-bottom-nav) + var(--portal-dock-height) + 12px);z-index:35;display:block;border-radius:50%;width:44px;height:44px;background:white;border:1px solid #dce3eb;box-shadow:0 2px 8px #17203312;color:#334155;font-size:20px}
  .ux-mobile-top[hidden]{display:none}
  .mobile-keyboard-open [data-portal-mobile-navigation],.mobile-keyboard-open .ux-mobile-top{display:none!important}
  .portal-page .ux-table-scroll.ux-mobile-cards{max-height:none;overflow:visible}
  #invoiceControls{gap:8px}
  .portal-page dialog{max-height:calc(100dvh - 24px);overscroll-behavior:contain}
 }
 @media(min-width:700px) and (max-width:1023px){#catalogTableBody{grid-template-columns:repeat(2,minmax(0,1fr))}#catalogTableBody>tr:not(.virtual-row){grid-column:1/-1}}
 @media(prefers-reduced-motion:reduce){.ux-mobile-top{scroll-behavior:auto}}
}
@media print{.ux-network,.catalog-quick-actions,.catalog-pagination,.ux-mobile-top{display:none!important}}

/* Queue results remain reachable without adding a second scrolling surface. */
@media screen {
 #mutationSyncStatus,#portalNetworkStatus{scroll-margin-top:calc(var(--portal-header-height,80px) + 18px)}
 .ux-status-shortcut{position:fixed;left:max(14px,env(safe-area-inset-left,0px));bottom:calc(var(--portal-bottom-nav,0px) + var(--portal-dock-height,0px) + 12px);z-index:35;max-width:min(360px,calc(100vw - 86px));min-height:44px;padding:10px 14px;border:1px solid #dce3eb;border-radius:14px;background:#fff;color:#334155;font-size:12px;font-weight:700;line-height:1.5;text-align:left;box-shadow:0 2px 8px #17203312;overflow-wrap:anywhere}
 .ux-status-shortcut[hidden]{display:none!important}
 .ux-status-shortcut[data-state=attention]{border-color:#ecd9b7;background:#fffbf3;color:#80530a}
 .ux-status-shortcut:focus-visible{outline:3px solid #a71f34;outline-offset:3px}
 @media(max-width:1023px){
  .catalog-quick-actions{position:sticky;top:calc(var(--portal-header-height) + var(--portal-toolbar-height,60px));z-index:24;background:#f8f9fb;padding:6px 0;margin:0 0 12px;gap:8px}
  .catalog-quick-actions .ux-button{flex:1;min-height:44px;white-space:normal;line-height:1.4;padding:10px 8px}
  .mobile-keyboard-open .ux-status-shortcut{display:none!important}
  #mutationSyncStatus:focus,#portalNetworkStatus:focus{outline:2px solid #a71f34;outline-offset:4px}
 }
 @media(max-height:500px){.catalog-quick-actions{position:static}}
}
@media print{.ux-status-shortcut{display:none!important}}

@media screen and (max-width:1023px){[data-portal-mobile-navigation] .ux-nav-orders{flex:1;min-width:0;min-height:48px;padding:6px;border:0;border-radius:12px;background:#fff0f2;color:#9b2437;font-size:11px;font-weight:700;line-height:1.3;white-space:normal}#orderHistorySection{scroll-margin-top:calc(var(--portal-header-height) + 12px)}}

/* Previous read values are labelled separately from durable write status. */
.ux-read-freshness{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.8rem 1rem;margin:0 0 1rem;border:1px solid #ddcaa8;border-radius:14px;background:#fffaf0;color:#654b24;font-size:.8125rem;font-weight:500;line-height:1.55;overflow-wrap:anywhere;}
.ux-read-freshness[hidden]{display:none!important;}
.ux-read-freshness p{margin:0;flex:1;min-width:0;}
.ux-read-freshness .ux-button{flex-shrink:0;min-height:44px;white-space:normal;}
@media(max-width:600px){.ux-read-freshness{align-items:stretch;flex-direction:column;}.ux-read-freshness .ux-button{align-self:flex-start;}}
@media print{.ux-read-freshness{display:none!important;}}
