/* ==========================================================
   DRYKETO Admin Portal RC1.7.9.31
   PROFESSIONAL SHELL + CLEAN PAGE SYSTEM
   Presentation / navigation only. No inventory, FIFO, pricing,
   GST, Coin Master or packing business logic is changed.
   ========================================================== */
:root{
  --dk-green:#0b5135;
  --dk-green-dark:#083e2a;
  --dk-gold:#c79b2b;
  --dk-bg:#f6f7f5;
  --dk-panel:#ffffff;
  --dk-line:#dde4df;
  --dk-muted:#69766f;
  --dk-text:#173126;
  --dk-top-h:72px;
  --dk-menu-h:44px;
  --dk-sub-h:42px;
  --dk-shell-h:158px;
}

/* ---------- Global professional typography ---------- */
html,body.admin-body{height:100%;margin:0!important;background:var(--dk-bg)!important}
body.admin-body{
  color:var(--dk-text)!important;
  font-family:"Segoe UI",Inter,Arial,sans-serif!important;
  overflow:hidden!important;
}
body.admin-body button,body.admin-body input,body.admin-body select,body.admin-body textarea{
  font-family:inherit!important;
}

/* ---------- Header: brand/branch/user only ---------- */
.rc165-top{
  height:var(--dk-top-h)!important;min-height:var(--dk-top-h)!important;
  grid-template-columns:70px minmax(0,1fr) 205px 96px!important;
  padding:0 14px!important;gap:10px!important;
  background:linear-gradient(90deg,#09462f,#0c5237)!important;
  border-bottom:1px solid rgba(215,179,78,.75)!important;
  box-shadow:none!important;
}
.dryketo-stamp .stamp-ring{width:51px!important;height:51px!important}
.stamp-ring b{font-size:8.5px!important}.stamp-ring small{font-size:6.5px!important}
/* The old icon grid is retired in 31. */
.admin-quickbar,.rc165-quickbar{display:none!important}
.working-branch-shell{
  grid-column:3!important;grid-row:1!important;width:205px!important;min-width:205px!important;
  padding:5px 8px!important;border-radius:8px!important;background:#fffdf7!important;
  border:1px solid #d6b452!important;box-shadow:none!important
}
.working-branch-shell>span{font-size:7px!important}
.admin-user-menu{grid-column:4!important;grid-row:1!important;width:96px!important;min-width:96px!important}
.admin-user-menu>summary{min-height:36px!important;box-sizing:border-box!important;justify-content:center!important;padding:7px 9px!important;border-radius:8px!important}

/* ---------- Main navigation ---------- */
.rc165-menubar{
  top:var(--dk-top-h)!important;height:var(--dk-menu-h)!important;min-height:var(--dk-menu-h)!important;
  justify-content:flex-start!important;padding:0 18px!important;gap:0!important;
  background:#0a472f!important;border-top:0!important;border-bottom:1px solid #d0ad4f!important;
  box-shadow:none!important
}
.rc165-menubar>button,.rc165-menubar .admin-menu-group>summary{
  height:var(--dk-menu-h)!important;padding:0 15px!important;
  font-size:11px!important;font-weight:650!important;letter-spacing:0!important;gap:7px!important
}
.rc165-menubar .menu-ico{width:20px!important;height:20px!important;font-size:11px!important;border-color:rgba(219,185,89,.62)!important}
.rc165-menubar>button.active,.rc165-menubar>button:hover,.rc165-menubar .admin-menu-group:hover>summary,.rc165-menubar .admin-menu-group:focus-within>summary{
  background:#12613f!important
}
.rc165-menubar .admin-menu-group>div{top:var(--dk-menu-h)!important}

/* ---------- Contextual workspace bar ---------- */
.admin-prioritybar{
  top:calc(var(--dk-top-h) + var(--dk-menu-h))!important;height:var(--dk-sub-h)!important;
  grid-template-columns:1.04fr .86fr .76fr .78fr 1.33fr .95fr .82fr!important;
  gap:5px!important;padding:5px 18px!important;background:#fff!important;border-bottom:1px solid var(--dk-line)!important;
  box-shadow:0 2px 5px rgba(13,71,47,.035)!important
}
.admin-prioritybar[hidden]{display:none!important}
.admin-prioritybar button{
  height:31px!important;border-radius:7px!important;border:1px solid #dbe3de!important;
  background:#fff!important;color:#244337!important;padding:0 8px!important;
  font-size:10px!important;font-weight:650!important;box-shadow:none!important
}
.admin-prioritybar .priority-ico{display:none!important}
.admin-prioritybar button:hover{background:#f4f8f5!important;border-color:#b8cabe!important}
.admin-prioritybar button.active{background:#0d5638!important;color:#fff!important;border-color:#0d5638!important;box-shadow:none!important}

/* ---------- Main application viewport ---------- */
.rc164-main{
  height:calc(100dvh - var(--dk-shell-h))!important;min-height:0!important;
  width:100%!important;box-sizing:border-box!important;
  padding:14px 18px!important;background:var(--dk-bg)!important;
  overflow:hidden!important
}
.rc164-main>[data-admin-message]:empty{display:none!important}
.rc164-main>[data-admin-message]:not(:empty){margin-bottom:8px!important}
[data-admin-panel]{box-sizing:border-box!important}
[data-admin-panel]:not([hidden]){
  height:100%!important;min-height:0!important;overflow:auto!important;overscroll-behavior:contain!important;
  padding-right:2px!important
}

/* ---------- Consistent page heading ---------- */
.admin-heading{
  min-height:48px!important;margin:0 0 10px!important;display:flex!important;align-items:center!important;
  justify-content:space-between!important;gap:12px!important
}
.admin-heading>div:first-child{min-width:0!important}
.admin-heading h1{
  margin:0!important;color:#104a34!important;font-size:24px!important;line-height:1.12!important;
  font-weight:750!important;letter-spacing:-.3px!important
}
.admin-heading small,.admin-heading p{
  display:block!important;margin:3px 0 0!important;max-width:920px!important;
  color:var(--dk-muted)!important;font-size:11px!important;line-height:1.35!important;
  font-weight:500!important;letter-spacing:0!important;text-transform:none!important
}
.admin-heading .heading-actions,.admin-heading .parity-actions{display:flex!important;gap:7px!important;align-items:center!important;flex-wrap:nowrap!important}
.admin-heading button{min-height:34px!important;padding:7px 12px!important;border-radius:7px!important;font-size:11px!important}

/* Keep long instructional prose out of the primary work area. */
.pack-entry-panel .admin-heading small,
[data-admin-panel="sizes"] .admin-heading small,
[data-admin-panel="products"] .admin-heading small,
.costmaster-panel>.admin-heading small,
[data-admin-panel="audit"] .admin-heading small{max-width:760px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}

/* ---------- Shared controls ---------- */
.product-toolbar,.audit-toolbar,.history-toolbar{
  gap:7px!important;margin:0 0 8px!important;align-items:center!important
}
.product-toolbar input,.product-toolbar select,.audit-toolbar input,.audit-toolbar select,.history-toolbar input,.history-toolbar select{
  min-height:34px!important;height:34px!important;padding:6px 9px!important;border:1px solid #cfd9d3!important;border-radius:7px!important;background:#fff!important;font-size:11px!important
}
.catalogue-summary,.parity-note{
  border:1px solid #dde6e0!important;border-radius:7px!important;background:#f8fbf9!important;
  padding:7px 10px!important;margin:0 0 8px!important;color:#365448!important;font-size:11px!important;line-height:1.25!important
}

/* ---------- Data tables: professional + local scroll ---------- */
.table-wrap{
  border:1px solid var(--dk-line)!important;border-radius:9px!important;background:#fff!important;
  box-shadow:none!important;overflow:auto!important;overscroll-behavior:contain!important
}
.table-wrap table{border-collapse:collapse!important}
.table-wrap thead,.table-wrap thead tr,.table-wrap th{background:#0d4e35!important}
.table-wrap th{
  position:sticky!important;top:0!important;z-index:4!important;color:#fff!important;
  padding:9px 10px!important;font-size:10.5px!important;font-weight:700!important;letter-spacing:0!important;text-transform:none!important;white-space:nowrap!important
}
.table-wrap td{padding:9px 10px!important;font-size:11px!important;line-height:1.3!important;border-bottom:1px solid #edf1ee!important}
.table-wrap tr:hover td{background:#fbfdfb}
.table-wrap td small{font-size:9.5px!important;color:#75827b!important}

/* Most list/detail pages get an internal table viewport instead of browser page scrolling. */
[data-admin-panel="products"] .table-wrap,
[data-admin-panel="packentry"] .pack-entry-table-wrap,
[data-admin-panel="sizes"] .table-wrap,
[data-admin-panel="orders"] .table-wrap,
[data-admin-panel="billinginvoices"] .table-wrap,
[data-admin-panel="security"] .table-wrap{
  max-height:calc(100% - 155px)!important
}

/* ---------- Products page ---------- */
[data-admin-panel="products"]{display:flex!important;flex-direction:column!important;overflow:hidden!important}
[data-admin-panel="products"][hidden]{display:none!important}
[data-admin-panel="products"] .admin-heading,[data-admin-panel="products"] .product-toolbar{flex:0 0 auto!important}
[data-admin-panel="products"] .table-wrap{flex:1 1 auto!important;min-height:220px!important;max-height:none!important}
[data-admin-panel="products"] .admin-heading small{display:none!important}
[data-admin-panel="products"] .product-toolbar{grid-template-columns:180px 180px 180px minmax(260px,1fr)!important}

/* ---------- Pack Stock Entry ---------- */
.pack-entry-panel{display:flex!important;flex-direction:column!important;overflow:hidden!important}
.pack-entry-panel[hidden]{display:none!important}
.pack-entry-panel .admin-heading{flex:0 0 auto!important}
.pack-entry-panel .admin-heading small{display:none!important}
.pack-entry-rule{
  flex:0 0 auto!important;display:flex!important;align-items:center!important;justify-content:space-between!important;
  min-height:44px!important;padding:7px 12px!important;margin:0 0 8px!important;border-radius:8px!important;
  border:1px solid #dce5df!important;background:#fff!important;box-shadow:none!important
}
.pack-entry-rule small{font-size:8px!important;color:#78877f!important}.pack-entry-rule h2{display:inline!important;margin:0 0 0 6px!important;font-size:16px!important}
.pack-entry-rule p{display:none!important}
.pack-entry-panel .pack-entry-toolbar,.pack-entry-panel .catalogue-summary{flex:0 0 auto!important}
.pack-entry-panel .pack-entry-table-wrap{flex:1 1 auto!important;min-height:220px!important;max-height:none!important}

/* ---------- Sizes / Variants ---------- */
[data-admin-panel="sizes"]{display:flex!important;flex-direction:column!important;overflow:hidden!important}
[data-admin-panel="sizes"][hidden]{display:none!important}
[data-admin-panel="sizes"] .admin-heading{flex:0 0 auto!important}
[data-admin-panel="sizes"] .admin-heading small{display:none!important}
.bulk-size-control{
  flex:0 0 auto!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;
  gap:12px!important;padding:8px 12px!important;margin:0 0 8px!important;border-radius:8px!important;box-shadow:none!important
}
.bulk-size-control small{font-size:8px!important}.bulk-size-control h2{display:inline!important;margin:0 0 0 5px!important;font-size:14px!important}.bulk-size-control p{display:none!important}
.bulk-size-control button{min-height:32px!important;padding:6px 10px!important}
[data-admin-panel="sizes"] .size-toolbar,[data-admin-panel="sizes"] .catalogue-summary{flex:0 0 auto!important}
[data-admin-panel="sizes"] .table-wrap{flex:1 1 auto!important;min-height:220px!important;max-height:none!important}

/* ---------- Cost Master ---------- */
.costmaster-panel{padding-bottom:4px!important}
.costmaster-panel>.admin-heading{margin-bottom:8px!important}
.costmaster-panel>.admin-heading small{display:none!important}
.costmaster-panel .costmaster-rule{padding:7px 10px!important;margin:0 0 8px!important;border-radius:8px!important;font-size:10.5px!important;gap:7px!important}
.costmaster-panel .costmaster-rule span{padding:4px 7px!important;font-size:10px!important}
.costmaster-panel .admin-card{border-radius:10px!important;box-shadow:none!important;padding:13px!important}
.costmaster-panel .section-caption{margin-bottom:8px!important}
.costmaster-panel .section-caption strong{font-size:12px!important}.costmaster-panel .section-caption small{font-size:10px!important;color:#728078!important}

/* ---------- Inventory Audit ---------- */
[data-admin-panel="audit"] .admin-heading small{display:none!important}
[data-admin-panel="audit"] .audit-refresh-actions small{display:none!important}
[data-admin-panel="audit"] .metric-grid{margin-bottom:8px!important}
[data-admin-panel="audit"] .workflow-card{padding:12px!important;border-radius:10px!important;box-shadow:none!important;margin-bottom:10px!important}

/* ---------- Actual Landed Cost & Profit ---------- */
body.admin-body.lp-mode-active{overflow:hidden!important}
.landed-profit-panel{
  height:100%!important;min-height:0!important;display:flex!important;flex-direction:column!important;overflow:hidden!important
}
.landed-profit-panel[hidden]{display:none!important}
.lp-compact-heading{flex:0 0 auto!important;margin:0 0 7px!important}
.lp-compact-heading small{display:none!important}
.lp-role-note{flex:0 0 auto!important;margin:0 0 6px!important;padding:5px 8px!important;border-radius:6px!important;font-size:9.5px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.lp-toolbar{flex:0 0 auto!important;margin:0 0 6px!important;grid-template-columns:minmax(280px,1.7fr) repeat(3,minmax(135px,.7fr))!important;gap:6px!important}
.lp-toolbar input,.lp-toolbar select{height:34px!important;min-height:34px!important;font-size:10.5px!important}
.lp-summary{flex:0 0 auto!important;margin:0 0 5px!important;padding:5px 8px!important;min-height:27px!important;gap:12px!important}
.lp-status-strip{display:none!important}
/* Tool drawers are available but no longer consume a permanent row. JS 31 moves their summaries into the title action area. */
.lp-tools-row{flex:0 0 auto!important;margin:0!important;min-height:0!important}
.lp-tools-row:not(.lp-tools-open){height:0!important;overflow:visible!important}
.lp-tool-drawer{display:none!important}
.lp-tool-drawer[open]{display:block!important;position:absolute!important;z-index:30!important;right:18px!important;top:116px!important;width:min(860px,calc(100vw - 36px))!important;max-height:300px!important;overflow:auto!important;box-shadow:0 18px 50px rgba(0,0,0,.18)!important;border-radius:10px!important}
.lp-table-wrap{
  flex:1 1 0!important;min-height:190px!important;max-height:none!important;overflow:auto!important;margin:0!important;
  border-radius:8px!important;overscroll-behavior:contain!important
}
.lp-table{min-width:1080px!important;table-layout:auto!important}
.lp-table th{top:0!important;z-index:6!important;padding:8px 7px!important;font-size:9.5px!important;white-space:nowrap!important}
.lp-table td{padding:7px!important;font-size:10.5px!important;white-space:nowrap!important}
.lp-table small{font-size:8.8px!important}
.lp-detail-dock{
  flex:0 0 clamp(210px,34%,310px)!important;min-height:0!important;margin-top:6px!important;border-radius:9px!important;
  box-shadow:none!important;overflow:hidden!important;background:#fff!important;border:1px solid #cfdad3!important
}
.lp-detail-dock[hidden]{display:none!important}
.lp-detail-dock-head{flex:0 0 auto!important;padding:7px 10px!important;background:#f7faf8!important;border-bottom:1px solid #dce5df!important}
.lp-detail-dock-head h3{font-size:13px!important}.lp-detail-dock-head p{font-size:9px!important}.lp-detail-dock-head small{font-size:8px!important}
.lp-detail-scroll{flex:1 1 auto!important;min-height:0!important;overflow:auto!important;padding:7px!important;overscroll-behavior:contain!important}
.lp-detail-grid{grid-template-columns:repeat(4,minmax(205px,1fr))!important;gap:7px!important}
.lp-detail-card{padding:8px!important;border-radius:7px!important;box-shadow:none!important}
.lp-detail-card h4{font-size:10.5px!important;margin-bottom:5px!important}
.lp-kv{font-size:9.5px!important;gap:4px 7px!important}

/* Compact action buttons added by JS 31. */
.lp-head-tool{min-height:34px!important;padding:7px 10px!important;border:1px solid #bdccc3!important;border-radius:7px!important;background:#fff!important;color:#174737!important;font-size:10.5px!important;font-weight:650!important;cursor:pointer!important}
.lp-head-tool:hover{background:#f2f7f4!important}.lp-head-tool.active{background:#0d5638!important;color:#fff!important;border-color:#0d5638!important}

/* ---------- Desktop / medium responsiveness ---------- */
@media(max-width:1250px) and (min-width:901px){
  :root{--dk-top-h:68px;--dk-menu-h:42px;--dk-sub-h:40px;--dk-shell-h:150px}
  .rc165-top{grid-template-columns:62px minmax(0,1fr) 175px 84px!important;padding:0 9px!important}
  .working-branch-shell{width:175px!important;min-width:175px!important}.working-branch-shell>span{display:none!important}
  .admin-prioritybar{padding:4px 9px!important}.admin-prioritybar button{font-size:9px!important}
  .rc165-menubar>button,.rc165-menubar .admin-menu-group>summary{padding:0 9px!important;font-size:10px!important}
  .rc164-main{padding:12px!important}
  .lp-detail-grid{grid-template-columns:repeat(2,minmax(260px,1fr))!important}
}

/* ---------- Mobile: restore natural scrolling ---------- */
@media(max-width:900px){
  body.admin-body{overflow:auto!important}
  .rc165-top{height:auto!important;min-height:64px!important;grid-template-columns:58px minmax(0,1fr) auto!important;padding:7px 9px!important}
  .working-branch-shell{display:none!important}.admin-user-menu{grid-column:3!important;width:auto!important;min-width:0!important}
  .rc165-menubar{position:relative!important;top:auto!important;height:44px!important;overflow-x:auto!important;justify-content:flex-start!important}
  .admin-prioritybar{position:relative!important;top:auto!important;height:auto!important;display:flex!important;overflow-x:auto!important;padding:5px 8px!important}
  .admin-prioritybar[hidden]{display:none!important}.admin-prioritybar button{min-width:124px!important;flex:0 0 auto!important}
  .rc164-main{height:auto!important;min-height:calc(100dvh - 108px)!important;overflow:visible!important;padding:11px 9px!important}
  [data-admin-panel]:not([hidden]){height:auto!important;overflow:visible!important}
  .admin-heading{align-items:flex-start!important;display:grid!important;grid-template-columns:1fr!important}.admin-heading .heading-actions,.admin-heading .parity-actions{flex-wrap:wrap!important}
  .product-toolbar,.lp-toolbar{grid-template-columns:1fr!important}
  [data-admin-panel="products"],[data-admin-panel="packentry"],[data-admin-panel="sizes"],.landed-profit-panel{display:block!important;overflow:visible!important;height:auto!important}
  .table-wrap,.lp-table-wrap{max-height:58vh!important;overflow:auto!important}
  .lp-detail-dock{max-height:50vh!important;flex-basis:auto!important}.lp-detail-grid{grid-template-columns:1fr!important}
  .lp-tool-drawer[open]{position:fixed!important;left:10px!important;right:10px!important;top:100px!important;width:auto!important;max-height:65vh!important}
}

/* Simple brand identity replaces the retired quick-icon strip. */
.admin-brand-title{grid-column:2!important;grid-row:1!important;align-self:center!important;justify-self:start!important;display:flex!important;align-items:baseline!important;gap:9px!important;color:#f5d16f!important;white-space:nowrap!important}
.admin-brand-title strong{font-size:17px!important;line-height:1!important;font-weight:800!important;letter-spacing:.04em!important}
.admin-brand-title small{font-size:8px!important;font-weight:700!important;letter-spacing:.14em!important;color:#d8e6dd!important}
@media(max-width:900px){.admin-brand-title{display:none!important}}
