/* =====================================================================
   NEXORA Suite — staff app theme
   Pine & marigold: deep pine navigation, paper-white workspace,
   marigold reserved for "where you are" and the primary action.
   ===================================================================== */
@font-face{font-family:"Figtree";src:url("fonts/figtree-latin-400-normal.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Figtree";src:url("fonts/figtree-latin-500-normal.woff2") format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:"Figtree";src:url("fonts/figtree-latin-600-normal.woff2") format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"Figtree";src:url("fonts/figtree-latin-700-normal.woff2") format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"Figtree";src:url("fonts/figtree-latin-800-normal.woff2") format("woff2");font-weight:800;font-display:swap}
@font-face{font-family:"Bricolage Grotesque";src:url("fonts/bricolage-grotesque-latin-600-normal.woff2") format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"Bricolage Grotesque";src:url("fonts/bricolage-grotesque-latin-700-normal.woff2") format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"Bricolage Grotesque";src:url("fonts/bricolage-grotesque-latin-800-normal.woff2") format("woff2");font-weight:800;font-display:swap}

:root{
  --nx-pine:#12352B; --nx-pine-2:#1A4537; --nx-pine-3:#285E4E; --nx-pine-line:rgba(255,255,255,.09);
  --nx-gold:#F2A93B; --nx-gold-soft:rgba(242,169,59,.16);
  --nx-paper:#F4F5F0; --nx-paper-2:#EAEDE4; --nx-card:#FFFFFF; --nx-line:#DFE3D8;
  --nx-ink:#18221E; --nx-muted:#5E6A63; --nx-on-pine:#D7E3DC;
  --nx-ok:#2F8F5B; --nx-warn:#C9811A; --nx-bad:#C8473B; --nx-info:#2C6E8F;
  --nx-radius:12px; --nx-radius-sm:8px;
  --nx-font:"Figtree",system-ui,-apple-system,"Segoe UI",sans-serif;
  --nx-display:"Bricolage Grotesque","Figtree",system-ui,sans-serif;
  --bs-primary:#12352B; --bs-primary-rgb:18,53,43; --bs-link-color:#285E4E; --bs-link-hover-color:#12352B;
  --bs-body-font-family:var(--nx-font); --bs-body-color:#18221E;
}

/* ---------- base ---------- */
html body{font-family:var(--nx-font) !important;color:var(--nx-ink);background:var(--nx-paper) !important;}
body *:not(i):not(.fa):not([class*="fa-"]):not([class^="bi"]):not(.material-icons){font-family:inherit;}
body button, body input, body select, body textarea{font-family:var(--nx-font) !important;}
h1,h2,h3,h4,.h1,.h2,.h3,.h4,.page-title{font-family:var(--nx-display) !important;letter-spacing:-.01em;color:var(--nx-ink);}
a{color:var(--nx-pine-3);}
::selection{background:var(--nx-gold-soft);}
:focus-visible{outline:2px solid var(--nx-gold) !important;outline-offset:2px;}

/* ---------- sidebar ---------- */
#sidebar{background:var(--nx-pine) !important;border-right:0 !important;box-shadow:none !important;padding:18px 14px 0 !important;}
#sidebar .nx-brand{display:flex;align-items:center;gap:10px;padding:2px 6px 16px 44px;}
#sidebar .nx-brand img{height:30px;width:auto;display:block;}
#sidebar .nx-brand .nx-env{margin-left:auto;font-size:10.5px !important;font-weight:700;color:var(--nx-pine);background:var(--nx-gold);padding:2px 8px;border-radius:999px;}
#sidebar .sidebar-user{background:var(--nx-pine-2) !important;border:1px solid var(--nx-pine-line) !important;border-radius:var(--nx-radius) !important;margin:0 0 14px !important;box-shadow:none !important;}
#sidebar .sidebar-user .name{color:#fff !important;font-weight:700;}
#sidebar .sidebar-user .role{color:var(--nx-gold) !important;font-weight:600;}
#sidebar .sidebar-user img{border:2px solid var(--nx-pine-3) !important;}
#sidebar a, #sidebar .accordion-button, #sidebar .dept-head, #sidebar .board-item button{color:var(--nx-on-pine) !important;}
#sidebar a{border-radius:var(--nx-radius-sm) !important;padding:9px 12px !important;font-weight:500;}
#sidebar a i, #sidebar .accordion-button i{width:18px;text-align:center;color:#8FB3A4;font-size:14px !important;margin-right:0 !important;}
#sidebar a .link-text{margin-left:10px;}
#sidebar a:hover, #sidebar .accordion-button:hover{background:var(--nx-pine-2) !important;color:#fff !important;}
#sidebar a.active-link{background:var(--nx-gold-soft) !important;color:#fff !important;font-weight:700;box-shadow:inset 3px 0 0 var(--nx-gold);}
#sidebar a.active-link i{color:var(--nx-gold) !important;}
#sidebar .accordion-header.setting-accordion-header,#sidebar .accordion-header.custom-accordion-header{background:transparent !important;border-radius:var(--nx-radius-sm) !important;padding:0 !important;}
#sidebar .accordion-button{font-weight:600;padding:9px 12px !important;border-radius:var(--nx-radius-sm) !important;gap:10px;}
#sidebar .accordion-button::after{filter:invert(1) opacity(.55);background-size:12px;}
#sidebar .accordion-body{padding:4px 0 6px 14px !important;margin-left:18px;border-left:1px solid var(--nx-pine-line);}
#sidebar .nx-section{font-size:11px !important;color:#7FA395;font-weight:600;padding:16px 12px 6px;letter-spacing:.02em;}
#sidebar .dept-head{background:transparent !important;font-size:12px !important;font-weight:700;color:#9DBDB0 !important;padding:6px 6px !important;border-radius:6px;}
#sidebar .dept-head:hover{background:var(--nx-pine-2) !important;}
#sidebar .board-item{padding:4px 6px !important;border-radius:6px;}
#sidebar .board-item:hover{background:var(--nx-pine-2);}
#sidebar .board-item .text-warning{color:var(--nx-gold) !important;}
#sidebar .board-color-box{width:8px !important;height:8px !important;border-radius:50% !important;margin-right:8px !important;}
#sidebar .form-control{background:var(--nx-pine-2) !important;border:1px dashed rgba(255,255,255,.22) !important;color:#fff !important;}
#sidebar .form-control::placeholder{color:#8FB3A4;}
#sidebar .input-group .btn-light{background:var(--nx-gold) !important;border-color:var(--nx-gold) !important;color:var(--nx-pine) !important;}
#sidebar .nx-storage{margin:18px -14px 0;padding:16px 18px 22px;background:var(--nx-pine-2);border-top:1px solid var(--nx-pine-line);}
#sidebar .nx-storage .nx-storage-top{display:flex;justify-content:space-between;align-items:baseline;color:#fff;font-weight:700;}
#sidebar .nx-storage .nx-storage-top small{color:#9DBDB0;font-weight:500;}
#sidebar .nx-storage .nx-bar{height:6px;border-radius:99px;background:rgba(255,255,255,.12);margin:10px 0 12px;overflow:hidden;}
#sidebar .nx-storage .nx-bar span{display:block;height:100%;background:var(--nx-gold);border-radius:99px;}
#sidebar .nx-storage a{justify-content:center;background:transparent !important;border:1px solid rgba(255,255,255,.2) !important;color:#fff !important;font-weight:600;}
#sidebar .nx-storage a:hover{border-color:var(--nx-gold) !important;}
#sidebarToggleBtn{background:var(--nx-pine) !important;color:#fff !important;border-radius:10px !important;box-shadow:none !important;border:1px solid var(--nx-pine-line) !important;}
.sidebar .nexora-badge,.sidebar .sidebar-badge,.sidebar .commerce-parent-badge,.sidebar .pipeline-notif-badge{background:var(--nx-gold) !important;color:var(--nx-pine) !important;box-shadow:none !important;}

/* ---------- buttons, forms ---------- */
.btn{border-radius:var(--nx-radius-sm);font-weight:600;}
.btn-primary,.btn-success{background:var(--nx-pine) !important;border-color:var(--nx-pine) !important;color:#fff !important;}
.btn-primary:hover,.btn-success:hover{background:var(--nx-pine-3) !important;border-color:var(--nx-pine-3) !important;}
.btn-outline-primary{color:var(--nx-pine) !important;border-color:var(--nx-pine) !important;}
.btn-outline-primary:hover{background:var(--nx-pine) !important;color:#fff !important;}
.btn-warning{background:var(--nx-gold) !important;border-color:var(--nx-gold) !important;color:var(--nx-pine) !important;}
.btn-dark{background:var(--nx-ink) !important;border-color:var(--nx-ink) !important;}
.form-control,.form-select{border-color:var(--nx-line);border-radius:var(--nx-radius-sm);}
.form-control:focus,.form-select:focus{border-color:var(--nx-pine-3);box-shadow:0 0 0 3px var(--nx-gold-soft);}
.form-check-input:checked{background-color:var(--nx-pine);border-color:var(--nx-pine);}
.page-link{color:var(--nx-pine);} .page-item.active .page-link,.active>.page-link{background:var(--nx-pine) !important;border-color:var(--nx-pine) !important;color:#fff !important;}
.nav-tabs .nav-link.active,.nav-pills .nav-link.active{color:var(--nx-pine) !important;border-color:var(--nx-line) var(--nx-line) #fff;font-weight:700;}
.nav-pills .nav-link.active{background:var(--nx-pine) !important;color:#fff !important;}
.text-primary{color:var(--nx-pine-3) !important;} .bg-primary{background:var(--nx-pine) !important;}
.badge.bg-primary{background:var(--nx-pine-3) !important;}

/* ---------- surfaces ---------- */
.card,.modal-content,.dropdown-menu{border:1px solid var(--nx-line) !important;border-radius:var(--nx-radius) !important;box-shadow:0 1px 0 rgba(18,53,43,.04) !important;}
.card-header{background:var(--nx-card) !important;border-bottom:1px solid var(--nx-line) !important;font-weight:700;}
.modal-header{border-bottom:1px solid var(--nx-line);}
.modal-header .modal-title{font-family:var(--nx-display);font-weight:700;}

/* ---------- tables ---------- */
.table>thead>tr>th, table.styled-table thead th, .table-wrapper .styled-table thead tr th{
  background:var(--nx-pine) !important;color:#fff !important;font-weight:600 !important;border-color:var(--nx-pine-2) !important;}
.table-wrapper .styled-table thead tr th::after{background:rgba(255,255,255,.12) !important;}
.table-hover>tbody>tr:hover>*{background:#F7F8F3 !important;}
.table-wrapper,.styled-table{border-radius:var(--nx-radius) !important;}

/* ---------- kanban board ---------- */
#page-content-wrapper{background:var(--nx-paper) !important;}
#page-content-wrapper .header-bar{background:#fff !important;color:var(--nx-ink) !important;border-bottom:1px solid var(--nx-line) !important;box-shadow:inset 0 3px 0 var(--board-color,var(--nx-pine));}
#page-content-wrapper .header-bar h4,#page-content-wrapper .header-bar .text-white{color:var(--nx-ink) !important;font-family:var(--nx-display);}
#page-content-wrapper .header-bar .add-btn{background:var(--nx-pine) !important;color:#fff !important;border-radius:var(--nx-radius-sm) !important;font-weight:600;}
.board-item-card{background:var(--nx-paper-2) !important;border:1px solid var(--nx-line);box-shadow:none !important;border-radius:var(--nx-radius) !important;}
.board-item-card .order-card{border:1px solid var(--nx-line) !important;border-radius:10px !important;box-shadow:0 1px 0 rgba(18,53,43,.05) !important;}
.order-card:hover{background:#FBFBF8 !important;border-color:var(--nx-pine-3) !important;}

/* ---------- misc ---------- */
.swal2-confirm{background:var(--nx-pine) !important;}
.select2-container--default .select2-results__option--highlighted{background:var(--nx-pine) !important;}
::-webkit-scrollbar-thumb{background:rgba(18,53,43,.28) !important;}

/* Demo banner */
.nx-demo-ribbon{position:fixed;right:16px;bottom:16px;z-index:5000;background:var(--nx-pine);color:#fff;border:1px solid var(--nx-gold);border-radius:999px;padding:7px 14px;font:600 12px/1.2 var(--nx-font);display:flex;gap:8px;align-items:center;box-shadow:0 6px 20px rgba(18,53,43,.25);}
.nx-demo-ribbon b{color:var(--nx-gold);}
@media (max-width:768px){.nx-demo-ribbon{left:16px;right:auto;bottom:12px;font-size:11px !important;}}
@media (prefers-reduced-motion:reduce){*{transition:none !important;animation:none !important;}}
.btn-info{background:var(--nx-info) !important;border-color:var(--nx-info) !important;color:#fff !important;}
.btn-danger{background:var(--nx-bad) !important;border-color:var(--nx-bad) !important;}
