/* Shared, role-aware department navigation. Loaded after the page's styles. */
.jiasen-erp .sidebar .department-nav-group{margin:3px 0 7px;flex-shrink:0}
.jiasen-erp .sidebar .department-nav-heading{position:relative;display:flex;align-items:stretch;gap:2px}
.jiasen-erp .sidebar .department-nav-heading .nav-item{flex:1;min-width:0;margin:0;padding-right:34px}
.jiasen-erp .sidebar .department-nav-toggle{position:absolute;right:3px;top:4px;width:30px;height:36px;border:0;border-radius:7px;background:transparent;color:#a7cbb3;font-size:21px;cursor:pointer;line-height:1;transition:background .15s,transform .15s}
.jiasen-erp .sidebar .department-nav-toggle[aria-expanded="false"]{transform:rotate(-90deg)}
.jiasen-erp .sidebar .department-nav-toggle:hover{background:#ffffff18;color:#fff}
.jiasen-erp .sidebar .department-subnav{display:flex;flex-direction:column;gap:2px;margin:7px 5px 12px 22px;padding:0 0 0 13px;border-left:1px solid #ffffff25}
.jiasen-erp .sidebar .department-subnav-link{position:relative;display:block;padding:8px 9px;border-radius:6px;color:#b2cebc;font-size:12px;line-height:1.5;text-decoration:none;transition:color .15s,background .15s}
.jiasen-erp .sidebar .department-subnav-link:before{content:"";position:absolute;left:-17px;top:15px;width:6px;height:6px;border-radius:50%;background:#577763;border:1px solid #143c27}
.jiasen-erp .sidebar .department-subnav-link:hover{color:#fff;background:#ffffff0d}
.jiasen-erp .sidebar .department-subnav-link.selected{color:#fff;background:#6dc18c26;font-weight:650}
.jiasen-erp .sidebar .department-subnav-link.selected:before{background:#91d5a7;box-shadow:0 0 0 3px #75bc8d1f}
.jiasen-erp .sidebar :is(.department-nav-toggle,.department-subnav-link):focus-visible{outline:2px solid #a7e3bb;outline-offset:2px}
.jiasen-erp .sidebar .department-nav-group[hidden],.jiasen-erp .sidebar .department-subnav[hidden]{display:none}
.jiasen-erp .department-nav-status{font-size:12px;line-height:1.7;color:#e8d3a6;margin:0 10px}
.jiasen-erp .department-nav-status:empty{display:none}
.jiasen-erp main :is(section,details,.goods-panel,.goods-summary,.material-counts,.material-inventory,.archive-panel,.archive-summary,.export-template){scroll-margin-top:22px}
.department-nav-mobile,.department-nav-close,.department-nav-backdrop{display:none}
@media(max-width:760px){
  .jiasen-erp .topbar{gap:10px}
  .jiasen-erp .topbar .breadcrumb{flex:1;min-width:0}
  .jiasen-erp .department-nav-mobile{display:inline-flex;align-items:center;flex-shrink:0;padding:7px 9px;border:1px solid #d2e2d7;border-radius:7px;background:#fff;color:#214734;font:inherit;font-size:13px;cursor:pointer}
  .jiasen-erp .layout>.sidebar{display:flex;position:fixed;inset:0 auto 0 0;z-index:80;width:min(290px,85vw);height:100dvh;min-height:0;flex-direction:column;flex-wrap:nowrap;align-items:stretch;justify-content:flex-start;gap:0;padding:18px 15px;overflow-y:auto;overscroll-behavior:contain;transform:translateX(-100%);visibility:hidden;transition:transform .18s,visibility .18s}
  .jiasen-erp .layout>.sidebar.department-nav-open{transform:translateX(0);visibility:visible;box-shadow:10px 0 50px #123e2840}
  .jiasen-erp .sidebar .brand{width:auto;flex-basis:auto;margin:10px 0 0}
  .jiasen-erp .sidebar .nav-label{display:block;margin-top:22px}
  .jiasen-erp .sidebar .sidebar-bottom{display:block;margin-top:auto}
  .jiasen-erp .sidebar .department-nav-heading .nav-item{font-size:14px;padding:11px 34px 11px 12px;flex:1}
  .jiasen-erp .sidebar .department-subnav-link{font-size:14px;padding-top:10px;padding-bottom:10px}
  .jiasen-erp .sidebar .department-subnav-link:before{top:18px}
  .jiasen-erp .department-nav-close{display:block;align-self:flex-end;border:1px solid #ffffff30;border-radius:6px;color:#d2e1d7;background:transparent;padding:7px 10px;font:inherit;font-size:12px;cursor:pointer}
  .jiasen-erp .department-nav-backdrop:not([hidden]){display:block;position:fixed;inset:0;z-index:79;border:0;background:#102e2359;cursor:pointer}
}
@media(prefers-reduced-motion:reduce){.jiasen-erp .sidebar,.jiasen-erp .sidebar *{transition:none!important}}
