:root{
  --mos-bg:#FAF5E9; --mos-card:#FFFDF8; --mos-side:#F1E6CC; --mos-border:#E4D7B8; --mos-ink:#3F3220; --mos-muted:#8A7A5E;
  --mos-accent:#B07D3A; --mos-accent-dark:#8F6428; --mos-soft:#F6EEDA;
  --bs-primary:#B07D3A; --bs-primary-rgb:176,125,58; --bs-body-bg:#FAF5E9; --bs-body-color:#3F3220; --bs-border-color:#E4D7B8;
  --bs-link-color:#8F6428; --bs-link-hover-color:#6E4C1B;
}
body{background:var(--mos-bg);color:var(--mos-ink);font-size:.92rem}
.btn-primary{--bs-btn-bg:#B07D3A;--bs-btn-border-color:#B07D3A;--bs-btn-hover-bg:#8F6428;--bs-btn-hover-border-color:#8F6428;--bs-btn-active-bg:#7d5622;--bs-btn-active-border-color:#7d5622;--bs-btn-disabled-bg:#B07D3A;--bs-btn-disabled-border-color:#B07D3A}
.btn-outline-primary{--bs-btn-color:#8F6428;--bs-btn-border-color:#B07D3A;--bs-btn-hover-bg:#B07D3A;--bs-btn-hover-border-color:#B07D3A;--bs-btn-active-bg:#8F6428}
.page-item.active .page-link{background:var(--mos-accent);border-color:var(--mos-accent);color:#fff}
.page-link{color:var(--mos-accent-dark)}
.form-control:focus,.form-select:focus{border-color:var(--mos-accent);box-shadow:0 0 0 .2rem rgba(176,125,58,.2)}
.sidebar{position:fixed;top:0;bottom:0;left:0;width:250px;background:var(--mos-side);border-right:1px solid var(--mos-border);overflow-y:auto;z-index:1030;transition:transform .2s}
.sidebar .brand{padding:18px 20px;border-bottom:1px solid var(--mos-border);display:flex;align-items:center;gap:10px;color:var(--mos-ink);text-decoration:none}
.sidebar .brand .logo{width:38px;height:38px;border-radius:10px;background:var(--mos-accent);color:#fff;display:grid;place-items:center;font-weight:700;font-size:1.05rem}
.sidebar .brand b{display:block;line-height:1.1}.sidebar .brand small{color:var(--mos-muted)}
.sidebar .nav-link{color:var(--mos-ink);padding:.45rem 1.1rem;border-radius:0;display:flex;align-items:center;gap:.6rem}
.sidebar .nav-link:hover{background:rgba(176,125,58,.12)}
.sidebar .nav-link.active{background:var(--mos-accent);color:#fff}
.sidebar .grp{padding:.7rem 1.1rem .2rem;font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:var(--mos-muted);font-weight:700}
.sidebar .sub .nav-link{padding-left:2.6rem;font-size:.86rem}
.main{margin-left:250px;min-height:100vh}
.topbar{background:var(--mos-card);border-bottom:1px solid var(--mos-border);padding:.6rem 1.4rem;display:flex;align-items:center;gap:1rem;position:sticky;top:0;z-index:1020}
.content{padding:1.4rem}
.card{background:var(--mos-card);border:1px solid var(--mos-border);border-radius:12px;box-shadow:0 1px 2px rgba(120,90,40,.05)}
.card-header{background:var(--mos-soft);border-bottom:1px solid var(--mos-border);font-weight:600}
.table{--bs-table-bg:transparent;--bs-table-striped-bg:rgba(176,125,58,.04)}
.table thead th{background:var(--mos-soft);color:var(--mos-ink);border-bottom:1px solid var(--mos-border);font-size:.78rem;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap}
.kpi{padding:1rem 1.1rem}.kpi .ico{width:42px;height:42px;border-radius:10px;background:var(--mos-soft);color:var(--mos-accent-dark);display:grid;place-items:center;font-size:1.3rem}
.kpi .v{font-size:1.35rem;font-weight:700;line-height:1.1}.kpi .l{color:var(--mos-muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.04em}
.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.login-wrap{min-height:100vh;display:grid;place-items:center;background:linear-gradient(160deg,#F5EBD2,#FAF5E9)}
.login-card{width:100%;max-width:410px}
.progress{background:#EADFC6}.progress-bar{background:var(--mos-accent)}
.invoice-box{background:#fff;border:1px solid var(--mos-border);border-radius:10px;padding:2rem}
@media(max-width:991px){.sidebar{transform:translateX(-100%)}.sidebar.show{transform:none}.main{margin-left:0}}
@media print{.sidebar,.topbar,.no-print{display:none!important}.main{margin:0}.content{padding:0}.card{border:0;box-shadow:none}body{background:#fff}}
