/* ==========================================================
   CEO OFFICE WORKSPACE — USER INTERFACE V3
   Global visual language only. Functional behaviour untouched.
   ========================================================== */
:root{
  --v3-bg:#F2EFEB;
  --v3-surface:#FBF9F6;
  --v3-surface-2:#F7F4F0;
  --v3-surface-3:#EEEAE5;
  --v3-ink:#2B3E52;
  --v3-ink-2:#45596C;
  --v3-muted:#7D8994;
  --v3-line:#DCE2E6;
  --v3-line-strong:#C9D3DA;
  --v3-accent:#58798A;
  --v3-accent-deep:#344D63;
  --v3-accent-soft:#E8F0F3;
  --v3-success:#4D755F;
  --v3-warning:#9A7650;
  --v3-danger:#995B5B;
  --v3-radius-sm:8px;
  --v3-radius-md:12px;
  --v3-radius-lg:16px;
  --v3-shadow:0 8px 28px rgba(43,62,82,.055);
  --v3-shadow-float:0 14px 40px rgba(43,62,82,.12);
  --v3-font:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Roboto,Arial,sans-serif;
}

html,body{background:var(--v3-bg)!important;color:var(--v3-ink)!important;font-family:var(--v3-font)!important}
body{font-size:13px!important;letter-spacing:-.005em}
#moduleBackdrop{background:var(--v3-bg)!important}
#content,#mainContent,.main-content{background:transparent!important}

/* ---------- Application shell ---------- */
#sidebar{
  background:rgba(251,249,246,.94)!important;
  border-right:1px solid var(--v3-line)!important;
  box-shadow:4px 0 22px rgba(43,62,82,.025)!important;
  backdrop-filter:blur(18px)!important;
}
#sidebar .brand{min-height:64px!important;border-bottom:1px solid rgba(220,226,230,.8)!important}
#sidebar .brandMark{background:var(--v3-ink)!important;color:var(--v3-surface)!important;border-radius:10px!important}
#sidebar .brandText{color:var(--v3-ink)!important;font-weight:760!important;letter-spacing:-.02em!important}
#sidebar #navList .modItem{
  border-radius:10px!important;
  color:#667788!important;
  min-height:42px!important;
  transition:background .16s ease,color .16s ease,border-color .16s ease!important;
}
#sidebar #navList .modItem:hover{background:#F0F3F4!important;color:var(--v3-ink)!important;transform:none!important}
#sidebar #navList .modItem.on{
  background:var(--v3-ink)!important;
  color:#FFFDF9!important;
  border-color:var(--v3-ink)!important;
  box-shadow:0 6px 16px rgba(43,62,82,.14)!important;
}
#sidebar #navList .modItem-home{background:transparent!important;border-color:transparent!important}
#sidebar #navList .modItem-home.on{background:var(--v3-ink)!important;border-color:var(--v3-ink)!important;color:#fff!important}
#sidebar #navList .navHomeDivider{background:var(--v3-line)!important}
#topbar{background:rgba(251,249,246,.95)!important;border-bottom:1px solid var(--v3-line)!important;backdrop-filter:blur(16px)!important}

/* ---------- Page geometry ---------- */
:root{--ax-page-pad-x:30px!important;--ax-page-pad-y:24px!important;--ax-page-title-size:25px!important;--ax-page-sub-size:13px!important}
.ax-module-head,
#documents-root .dc-head,
#fleet-root .fl-dashboard-head,
#library-root .lib-head,
#wj-root .wj-head,
#directorclaim-root .dcl-head,
#admin-root .adm-head{
  margin-bottom:22px!important;
}
.ax-module-head h1,.ax-module-head h2,
#documents-root .dc-head h2,
#fleet-root .fl-dashboard-head h2,
#library-root .lib-head h2,
#wj-root .wj-head h2,
#directorclaim-root .dcl-head h2,
#admin-root .adm-head h2{
  color:var(--v3-ink)!important;
  font-size:25px!important;
  font-weight:760!important;
  letter-spacing:-.035em!important;
  line-height:1.12!important;
}
.ax-module-head p,
#documents-root .dc-head p,
#fleet-root .fl-dashboard-head p,
#library-root .lib-head p,
#wj-root .wj-head p,
#directorclaim-root .dcl-head p,
#admin-root .adm-head p{color:var(--v3-muted)!important;font-size:12.5px!important;line-height:1.5!important}

/* ---------- Surfaces / cards ---------- */
.card,.panel,.surface,
#documents-root .dc-card,
#tenders-root .tn-card,
#fleet-root .fl-card,
#library-root .lib-card,
#wj-root .wj-card,
#directorclaim-root .dcl-card,
#admin-root .adm-card,
#settings-root .set-card,
#vendors-root .vm-card{
  background:var(--v3-surface)!important;
  border-color:var(--v3-line)!important;
  border-radius:var(--v3-radius-lg)!important;
  box-shadow:var(--v3-shadow)!important;
}

/* ---------- Inputs ---------- */
input:not([type="checkbox"]):not([type="radio"]),select,textarea,
.dc-input,.tn-input,.fl-input,.lib-input,.wj-input,.dcl-input,.adm-input,.vm-input{
  background:var(--v3-surface)!important;
  border-color:var(--v3-line-strong)!important;
  color:var(--v3-ink)!important;
  border-radius:9px!important;
  box-shadow:none!important;
}
input:not([type="checkbox"]):not([type="radio"]):focus,select:focus,textarea:focus,
.dc-input:focus,.tn-input:focus,.fl-input:focus,.lib-input:focus,.wj-input:focus,.dcl-input:focus,.adm-input:focus,.vm-input:focus{
  border-color:var(--v3-accent)!important;
  outline:0!important;
  box-shadow:0 0 0 3px rgba(88,121,138,.10)!important;
}
::placeholder{color:#9BA5AD!important}

/* ---------- Buttons ---------- */
button,.btn,.dc-btn,.tn-btn,.fl-btn,.lib-btn,.wj-btn,.dcl-btn,.adm-act-btn,.vm-btn{
  border-radius:9px!important;
  font-family:var(--v3-font)!important;
  letter-spacing:-.005em!important;
}
.btn.primary,.primary-btn,.dc-btn-primary,.tn-btn-primary,.fl-btn-primary,.lib-btn-primary,.wj-btn-primary,.dcl-btn-primary,
#admin-root .adm-add-user-btn,
#tenders-root .tn-btn.primary{
  background:var(--v3-ink)!important;
  border-color:var(--v3-ink)!important;
  color:#FFFDF9!important;
  box-shadow:0 5px 14px rgba(43,62,82,.13)!important;
}
.btn.primary:hover,.primary-btn:hover,.dc-btn-primary:hover,.tn-btn-primary:hover,.fl-btn-primary:hover,.lib-btn-primary:hover,.wj-btn-primary:hover,.dcl-btn-primary:hover,
#admin-root .adm-add-user-btn:hover{filter:brightness(.95)!important;transform:none!important}

/* ---------- Tabs / segmented filters ---------- */
.tabs,.segmented,.filter-tabs,
#admin-root .adm-tabs,
#admin-root .adm-status-filter,
#documents-root .dc-tabs,
#tenders-root .tn-tabs{
  background:transparent!important;
}
#admin-root .adm-tab,
#documents-root .dc-tab,
#tenders-root .tn-tab{
  color:var(--v3-muted)!important;
  font-weight:700!important;
}
#admin-root .adm-tab.on,
#documents-root .dc-tab.on,
#tenders-root .tn-tab.on{color:var(--v3-ink)!important}

/* ---------- Tables ---------- */
table{color:var(--v3-ink)!important}
.vm-table-shell,
#admin-root .adm-table-shell,
#documents-root .dc-table-shell,
#tenders-root .tn-table-wrap,
#directorclaim-root .dcl-table-wrap,
#fleet-root .fl-table-wrap{
  background:var(--v3-surface)!important;
  border:1px solid var(--v3-line)!important;
  border-radius:14px!important;
  box-shadow:0 6px 20px rgba(43,62,82,.035)!important;
  overflow:hidden!important;
}
thead th,
.vm-table th,
#admin-root .adm-access-table th,
#documents-root table th,
#tenders-root table th,
#directorclaim-root table th{
  background:var(--v3-surface-2)!important;
  color:#6E7E8C!important;
  border-bottom:1px solid var(--v3-line)!important;
  font-size:10.5px!important;
  font-weight:760!important;
  letter-spacing:.045em!important;
}
tbody td,
.vm-table td,
#admin-root .adm-access-table td,
#documents-root table td,
#tenders-root table td,
#directorclaim-root table td{
  border-bottom-color:#E8ECEF!important;
  color:var(--v3-ink-2)!important;
}
tbody tr:hover td,.vm-table tbody tr:hover{background:#F8FAFA!important}

/* ---------- Manage Access V3 ---------- */
#admin-root .adm-table-shell{border-radius:15px!important}
#admin-root .adm-directory-table thead th,
#admin-root .adm-access-table thead th{height:39px!important;padding-top:0!important;padding-bottom:0!important}
#admin-root .adm-directory-table tbody td,
#admin-root .adm-access-table tbody td{height:62px!important;padding-top:10px!important;padding-bottom:10px!important;background:var(--v3-surface)!important}
#admin-root .adm-user-name{font-size:12.5px!important;font-weight:780!important;color:var(--v3-ink)!important;letter-spacing:-.012em!important}
#admin-root .adm-user-email{font-size:10.5px!important;color:#7D8B97!important}
#admin-root .adm-access-summary,#admin-root .adm-access-pill,#admin-root .adm-status-pill{
  border-radius:999px!important;
  box-shadow:none!important;
  font-weight:720!important;
}
#admin-root .adm-manage-btn{
  min-height:34px!important;
  padding:0 14px!important;
  background:var(--v3-surface)!important;
  border:1px solid var(--v3-line-strong)!important;
  color:var(--v3-ink)!important;
  font-size:10.8px!important;
  font-weight:760!important;
}
#admin-root .adm-manage-btn:hover{background:var(--v3-accent-soft)!important;border-color:#B9CBD4!important}
#admin-root .adm-search{background:var(--v3-surface)!important;border-color:var(--v3-line)!important}
#admin-root .adm-access-drawer,#admin-root .adm-user-drawer{
  background:var(--v3-surface)!important;
  border-left:1px solid var(--v3-line)!important;
  box-shadow:-18px 0 45px rgba(43,62,82,.10)!important;
}

/* ---------- Badges ---------- */
.status,.badge,.pill,.dc-pill,.tn-pill,.fl-pill,.lib-pill,.wj-pill,.dcl-pill{
  border-radius:999px!important;
  box-shadow:none!important;
}

/* ---------- Modals / drawers ---------- */
.modal,.modal-card,.dc-modal,.tn-modal,.fl-modal,.lib-modal,.wj-modal,.dcl-modal,.vm-modal,
body > .dc-modal-ov > div,body > .tn-modal-ov > div{
  background:var(--v3-surface)!important;
  border:1px solid var(--v3-line)!important;
  border-radius:18px!important;
  box-shadow:var(--v3-shadow-float)!important;
}
.modal-overlay,.dc-modal-ov,.tn-modal-ov,.fl-modal-ov,.lib-modal-ov,.wj-modal-ov,.dcl-modal-ov{
  background:rgba(38,49,60,.36)!important;
  backdrop-filter:blur(3px)!important;
}

/* ---------- Module-specific polish ---------- */
#tenders-root .tn-stat,#fleet-root .fl-stat,#documents-root .dc-stat,#library-root .lib-stat,#directorclaim-root .dcl-stat{
  background:var(--v3-surface)!important;
  border-color:var(--v3-line)!important;
  box-shadow:none!important;
}
#tenders-root .tn-fab-wrap button,#tenders-root .tn-quick-actions-fab{
  box-shadow:0 12px 28px rgba(43,62,82,.18)!important;
  background:var(--v3-ink)!important;
}
#vendors-root .vm-table-shell{border-color:var(--v3-line)!important}
#vendors-root .vm-open-btn{background:var(--v3-surface)!important;border-color:var(--v3-line-strong)!important;color:var(--v3-ink)!important}

/* ---------- Scrollbars ---------- */
*{scrollbar-width:thin;scrollbar-color:#BCC7CE transparent}
*::-webkit-scrollbar{width:9px;height:9px}
*::-webkit-scrollbar-track{background:transparent}
*::-webkit-scrollbar-thumb{background:#C2CCD2;border-radius:999px;border:2px solid transparent;background-clip:padding-box}
*::-webkit-scrollbar-thumb:hover{background:#AEBBC3;background-clip:padding-box}

/* ---------- Responsive ---------- */
@media(max-width:900px){
  :root{--ax-page-pad-x:16px!important;--ax-page-pad-y:18px!important}
  .ax-module-head h1,.ax-module-head h2,
  #documents-root .dc-head h2,#fleet-root .fl-dashboard-head h2,#library-root .lib-head h2,#wj-root .wj-head h2,#directorclaim-root .dcl-head h2,#admin-root .adm-head h2{font-size:22px!important}
}
