/* V2.9 preview: independent booking and accessory workspaces. */
.file-share-button,.file-share-link{margin-left:6px}.file-share-link{border:0;background:transparent;color:var(--primary,#087e72);font:inherit;font-weight:700;padding:2px 4px;cursor:pointer}.file-share-link:hover{text-decoration:underline}.table-file-actions .file-share-link{font-size:11px;font-weight:800;line-height:1.55}
.booking-center,.accessory-center{height:var(--oms-content-height,calc(100vh - 150px));min-height:360px;display:flex;flex-direction:column}.booking-center>.table-wrap,.accessory-center>.table-wrap{flex:1;min-height:0;max-height:none;height:auto;overflow:auto;overscroll-behavior:contain}
.booking-center-table{min-width:2860px}.accessory-table{min-width:2280px}.booking-line-table{min-width:2200px}.booking-center-table td,.accessory-table td,.booking-line-table td{vertical-align:middle}
.booking-center-table small,.accessory-table small,.booking-line-table small{display:block;margin-top:4px;color:var(--muted,#69817e);line-height:1.35}.booking-center-table .wrap{white-space:normal;min-width:200px;line-height:1.5}
.booking-detail-summary{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin-bottom:12px;padding:11px 14px;border:1px solid #cee1de;border-radius:12px;background:#f5fbfa}.booking-detail-summary span{display:flex;gap:8px;align-items:center}.booking-detail-summary strong{color:#075f57}
.booking-carton-summary{display:flex;justify-content:space-between;align-items:center;margin:14px 0 8px;padding:12px 16px;border:1px solid #bedbd7;border-radius:12px;background:#eef8f6}.booking-carton-summary strong{font-size:20px;color:#087e72}
.booking-center-table .detail-row>td{padding:14px;background:#f8fbfb}.booking-center-table .detail-row.hidden{display:none}.booking-center-table .expand-btn{width:34px;height:34px;border:1px solid #c7dcda;border-radius:9px;background:#fff;color:#087e72;font-size:22px;cursor:pointer}
.booking-center-table .detail-row>td{position:sticky;left:0;z-index:1;max-width:calc(var(--oms-layout-width,100vw) - 72px)}.booking-center-table .inline-detail{width:calc(var(--oms-layout-width,100vw) - 110px);min-width:720px;max-width:none}.booking-line-scroll{display:block;width:100%;max-width:100%;overflow-x:auto!important;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-gutter:stable}.booking-line-scroll::-webkit-scrollbar{height:13px}.booking-line-scroll::-webkit-scrollbar-thumb{background:#9ebeba;border:3px solid #eef6f5;border-radius:999px}.booking-line-action-column{position:sticky;right:0;z-index:2;background:#f5fbfa;box-shadow:-6px 0 10px rgba(11,70,65,.08);min-width:110px}.order-line-accessory .booking-line-action-column{background:#fff9ef}.table-sort-button{display:flex;align-items:center;justify-content:space-between;gap:6px;width:100%;border:0;background:transparent;color:inherit;font:inherit;font-weight:inherit;padding:0;cursor:pointer;text-align:left}.table-sort-button span{color:#78908d;font-size:11px}.table-sort-button.active{color:#087e72}.paired-inputs{display:grid;grid-template-columns:minmax(110px,1fr) 78px;gap:6px}
.order-line-accessory{background:#fff9ef}.order-line-product{background:#fff}.accessory-center .badge.orange{background:#fff0dc;color:#975800}.accessory-center .badge.blue{background:#eaf4ff;color:#2166a4}
#shipmentEditorV29 .line-editor{max-height:49vh;overflow:auto}#shipmentEditorV29 .line-editor table{min-width:2850px}#shipmentEditorV29 .line-editor input{min-width:105px}#shipmentEditorV29 [data-booking-code]{min-width:150px}#shipmentEditorV29 [data-booking-cn],#shipmentEditorV29 [data-booking-en]{min-width:200px}#shipmentEditorV29 [data-booking-package],#shipmentEditorV29 [data-booking-carton-spec]{min-width:150px}
#shipmentEditorV29 .booking-editor-line-action{position:sticky;right:0;background:#fff;box-shadow:-5px 0 10px rgba(11,70,65,.08);min-width:110px}#shipmentEditorV29 tr.booking-line-removed{opacity:.5;background:#f3f5f5}#shipmentEditorV29 tr.booking-line-removed .booking-editor-line-action{background:#f3f5f5}
.medline-cabinet-column{min-width:120px}.medline-product-panel .toolbar{flex-wrap:wrap}
@media(max-width:900px){.booking-center>.table-wrap,.accessory-center>.table-wrap{max-height:calc(100vh - 280px)}.booking-detail-summary{gap:12px}.booking-center .panel-head,.accessory-center .panel-head{align-items:flex-start}}

/* Desktop action rail follows the effective layout width calculated by
   viewport.js. This prevents the built-in 60%-80% page zoom from moving the
   operation panel to the bottom simply because the raw CSS viewport is below
   1051px. Genuinely compact layouts keep the existing bottom strip. */
html:not(.oms-compact-layout) #content.order-action-rail{
  display:grid!important;
  grid-template-columns:270px minmax(0,1fr)!important;
  grid-template-rows:minmax(0,1fr)!important;
  gap:12px!important;
  height:var(--oms-content-height,calc(100vh - 150px))!important;
  min-height:360px!important;
  padding:0!important;
}
html:not(.oms-compact-layout) #content.order-action-rail.rail-collapsed{
  grid-template-columns:42px minmax(0,1fr)!important;
  padding:0!important;
}
html:not(.oms-compact-layout) #content.order-action-rail>.panel{
  grid-column:2!important;
  grid-row:1!important;
  height:100%!important;
  min-height:0!important;
  display:flex!important;
  flex-direction:column!important;
}
html:not(.oms-compact-layout) #content.order-action-rail>.panel>.workflow-table-scroll{
  flex:1 1 auto!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
}
html:not(.oms-compact-layout) #content.order-action-rail>.action-dock.action-rail{
  position:relative!important;
  inset:auto!important;
  grid-column:1!important;
  grid-row:1!important;
  width:auto!important;
  height:100%!important;
  max-height:none!important;
  min-height:0!important;
  padding:0!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  gap:0!important;
  overflow:hidden!important;
  border:1px solid #c7d9d5!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:0 9px 26px rgba(24,68,63,.09),inset 0 3px #168779!important;
  backdrop-filter:none!important;
}
html:not(.oms-compact-layout) #content.order-action-rail>.action-dock.action-rail.collapsed{
  padding:0!important;
  overflow:hidden!important;
}
html:not(.oms-compact-layout) #content.order-action-rail>.action-dock.action-rail.collapsed>:not(.action-rail-toggle){
  display:none!important;
}
html:not(.oms-compact-layout) #content.order-action-rail>.action-dock.action-rail.collapsed .action-rail-toggle{
  position:static!important;
  width:100%!important;
  height:100%!important;
  border:0!important;
  border-radius:0!important;
}
html:not(.oms-compact-layout) .action-rail:not(.collapsed) .selection-copy{
  display:block!important;
  width:auto!important;
  min-width:0!important;
  padding:17px 42px 12px 15px!important;
  border-right:0!important;
  border-bottom:1px solid #dbe7e4!important;
}
html:not(.oms-compact-layout) .action-rail:not(.collapsed) .selection-tools{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  width:auto!important;
  padding:9px 10px!important;
}
html:not(.oms-compact-layout) .action-rail:not(.collapsed) .action-scroll{
  display:block!important;
  width:auto!important;
  min-width:0!important;
  flex:1 1 auto!important;
  padding:8px 9px 11px!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
}
html:not(.oms-compact-layout) .action-rail:not(.collapsed) .action-group{
  display:block!important;
  width:auto!important;
}
html:not(.oms-compact-layout) .action-rail:not(.collapsed) .action-group-buttons{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:6px!important;
}
html:not(.oms-compact-layout) .action-rail:not(.collapsed) .action-scroll .action-group-buttons .btn{
  width:100%!important;
  min-height:36px!important;
  padding:7px 10px 7px 34px!important;
  flex:0 0 auto!important;
  justify-content:flex-start!important;
  text-align:left!important;
  white-space:nowrap!important;
}
