:root{
--bg:#f5f4f0;--panel:#fff;--sidebar:#090909;--sidebar2:#121212;--gold:#c9a345;--gold-soft:#fbf5e4;
--text:#171717;--muted:#77746d;--line:#e9e4da;--success:#16825a;--danger:#d24c52;--shadow:0 10px 34px rgba(26,20,7,.055);--radius:18px
}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,Arial,Helvetica,sans-serif;background:var(--bg);color:var(--text)}
a{text-decoration:none;color:inherit}.app-shell{display:grid;grid-template-columns:250px minmax(0,1fr);min-height:100vh}
.sidebar{height:100vh;position:sticky;top:0;overflow:auto;padding:22px 16px;background:linear-gradient(180deg,var(--sidebar),var(--sidebar2));color:#fff;border-right:1px solid #1b1b1b;z-index:50}
.brand{display:flex;align-items:center;gap:11px;padding:0 4px 20px;border-bottom:1px solid rgba(255,255,255,.08)}
.brand-logo{width:48px;height:48px;border-radius:12px;overflow:hidden;border:1px solid rgba(214,177,83,.28);background:#000}
.brand-logo img{width:100%;height:100%;object-fit:cover}.brand-copy strong{display:block;font-size:17px}.brand-copy span{display:block;color:#9f9a8d;font-size:10px;margin-top:4px}
.nav{margin-top:18px}.nav-label{padding:12px 10px 7px;color:#68655e;font-size:9px;text-transform:uppercase;letter-spacing:.15em;font-weight:800}
.nav a{display:flex;align-items:center;gap:10px;padding:11px 10px;border-radius:11px;color:#c6c3bb;font-size:12px;margin:3px 0}
.nav a:hover{background:rgba(255,255,255,.06);color:#fff}.nav a.active{background:linear-gradient(90deg,rgba(201,163,69,.18),rgba(201,163,69,.06));color:#f4df9e;border:1px solid rgba(201,163,69,.2)}
.nav-icon{width:24px;height:24px;display:grid;place-items:center;border-radius:7px;background:rgba(255,255,255,.06);font-size:9px;font-weight:800}
.nav a.active .nav-icon{background:var(--gold);color:#111}.sidebar-foot{margin-top:28px;padding:13px;border:1px solid rgba(201,163,69,.17);background:rgba(201,163,69,.06);border-radius:13px}
.sidebar-foot strong,.sidebar-foot span{display:block}.sidebar-foot strong{font-size:11px;color:#e2c772}.sidebar-foot span{font-size:9px;color:#77746d;margin-top:5px}
.main{min-width:0;padding:24px 28px 38px}.topbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px}
.topbar-left{display:flex;align-items:center;gap:10px}.topbar h1{margin:0;font-size:24px;letter-spacing:-.025em}.topbar p{margin:5px 0 0;color:var(--muted);font-size:11px}
.topbar-actions{display:flex;align-items:center;gap:8px}.btn{border:0;border-radius:10px;padding:10px 13px;font-weight:750;font-size:11px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}
.btn-light{background:#fff;border:1px solid var(--line);color:#262626}.btn-gold{background:#151515;color:#e2c56e;border:1px solid #151515}
.avatar{width:36px;height:36px;border-radius:10px;background:var(--gold-soft);border:1px solid #e8d7a2;color:#795b13;display:grid;place-items:center;font-size:10px;font-weight:800}
.menu-toggle{display:none;border:1px solid var(--line);background:#fff;width:36px;height:36px;border-radius:10px;cursor:pointer}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-bottom:17px}.kpi{padding:17px;min-height:112px}.kpi span,.mini-kpi span{display:block;font-size:10px;color:var(--muted);font-weight:700;margin-bottom:11px}
.kpi strong,.mini-kpi strong{display:block;font-size:21px;letter-spacing:-.03em}.kpi small,.mini-kpi small{display:block;font-size:9px;color:#979187;margin-top:8px}.positive{color:var(--success)!important}.negative{color:var(--danger)!important}
.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.85fr);gap:17px;margin-bottom:17px}.bottom-grid{display:grid;grid-template-columns:1.3fr .85fr .85fr;gap:17px}
.panel{padding:17px}.panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:15px}.panel-head h2{font-size:13px;margin:0 0 4px}.panel-head p{font-size:9px;color:var(--muted);margin:0}.panel-head a{font-size:9px;color:#8a6719;font-weight:800}
.empty{min-height:92px;border:1px dashed #ded7ca;background:#fcfbf8;border-radius:13px;display:grid;place-items:center;text-align:center;color:#8a857a;font-size:11px;padding:20px}
.chart-shell{height:250px;position:relative;overflow:hidden;border-bottom:1px solid #eee9df}.chart-shell svg{position:absolute;inset:10px 0 0;width:100%;height:220px}.chart-line{position:absolute;left:0;right:0;height:1px;background:#f0ece3}.chart-line.l1{top:25%}.chart-line.l2{top:50%}.chart-line.l3{top:75%}
.category-list{display:flex;flex-direction:column;gap:14px}.category-row strong{font-size:10px}.category-row span{font-size:9px;color:var(--muted);font-weight:700}.row-between{display:flex;justify-content:space-between;gap:10px;margin-bottom:7px}
.progress{height:7px;border-radius:99px;background:#f0eee8;overflow:hidden}.progress div{height:100%;background:linear-gradient(90deg,#b88e2f,#ddbf68);border-radius:99px}
.budget-row{padding:12px 0;border-bottom:1px solid #f0ece4}.budget-row:last-child{border-bottom:0}.project-row{display:flex;justify-content:space-between;gap:10px;padding:12px 0;border-bottom:1px solid #f0ece4}.project-row:last-child{border-bottom:0}
.project-row strong{display:block;font-size:10px}.project-row small{display:block;font-size:9px;color:var(--muted);margin-top:3px}.project-row b{font-size:10px}
table{width:100%;border-collapse:collapse;min-width:680px}th{text-align:left;color:#a29c92;font-size:8px;text-transform:uppercase;letter-spacing:.08em;padding:9px;border-bottom:1px solid var(--line)}
td{padding:11px 9px;border-bottom:1px solid #f1eee8;font-size:10px;vertical-align:middle}td strong{display:block;font-size:10px}td small{display:block;color:#989188;font-size:8px;margin-top:4px}.table-wrap{overflow:auto}
.pill,.status{display:inline-flex;padding:5px 7px;border-radius:999px;font-size:8px;font-weight:850}.type-income{background:#e9f8f1;color:#16724e}.type-expense{background:#fff0f0;color:#b53b43}.type-transfer{background:#edf2ff;color:#3659a6}
.status-posted{background:#e9f8f1;color:#16724e}.status-pending{background:#fff7df;color:#916615}.status-cancelled{background:#f0f0f0;color:#666}.money-in{color:var(--success)!important;font-weight:800}.money-out{color:var(--danger)!important;font-weight:800}
.mini-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:17px}.mini-kpi{padding:16px}.filter-card{padding:15px;margin-bottom:17px}
.filters-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;align-items:end}.field-wide{grid-column:span 2}.field{display:flex;flex-direction:column;gap:6px}.field label{font-size:9px;font-weight:800;color:#5f5a50}
.field input,.field select,.field textarea{width:100%;border:1px solid #ddd7ca;background:#fff;border-radius:10px;padding:10px 11px;font:inherit;font-size:10px;color:#171717;outline:none}.field textarea{resize:vertical;min-height:100px}
.field input:focus,.field select:focus,.field textarea:focus{border-color:#c9a345;box-shadow:0 0 0 3px rgba(201,163,69,.10)}.filter-actions{display:flex;gap:8px}
.button-row{display:flex;gap:8px}.transactions-table{min-width:1080px}.action-buttons{display:flex;align-items:center;gap:5px}.action-buttons a,.action-buttons button{border:1px solid #ddd7ca;background:#fff;color:#5b554b;border-radius:8px;padding:6px 8px;font-size:8px;font-weight:800;cursor:pointer}.action-buttons form{margin:0}
.flash{padding:13px 15px;border-radius:12px;margin-bottom:16px;font-size:11px;border:1px solid}.flash.success{background:#eaf8f1;border-color:#bae4cf;color:#146b49}.flash.error{background:#fff0f0;border-color:#efc5c8;color:#9d2830}.flash ul{margin:6px 0 0;padding-left:18px}
.form-card{padding:19px;max-width:1100px}.entry-form{display:flex;flex-direction:column;gap:17px}.form-section{border:1px solid #ebe6dc;border-radius:15px;padding:17px}.form-section-head{margin-bottom:14px}.form-section-head h2{font-size:13px;margin:0 0 4px}.form-section-head p{font-size:9px;color:var(--muted);margin:0}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.field-span-2{grid-column:span 2}.helper{font-size:8px;color:#999287}.inline-link{font-size:9px;color:#896619;font-weight:800}.form-footer{display:flex;justify-content:flex-end;gap:8px}
.section-title{display:flex;justify-content:space-between;align-items:center;margin:5px 0 12px}.section-title h2{font-size:14px;margin:0 0 4px}.section-title p{font-size:9px;color:var(--muted);margin:0}
.account-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.account-card{padding:17px}.account-card.inactive{opacity:.62}.account-card-top{display:flex;align-items:center;gap:9px}
.account-icon{width:37px;height:37px;border-radius:10px;background:#151515;color:#d8b85f;display:grid;place-items:center;font-size:10px;font-weight:900}.account-title{flex:1;min-width:0}.account-title strong{display:block;font-size:11px}.account-title span{display:block;font-size:8px;color:var(--muted);margin-top:3px}
.account-status{padding:5px 7px;border-radius:999px;font-size:7px;font-weight:850}.account-status.active{background:#e8f8f0;color:#176f4d}.inactive-status{background:#eee;color:#666}.account-number{margin-top:12px;padding:7px 9px;background:#faf8f2;border-radius:8px;color:#777166;font-size:8px}
.account-balance{padding:18px 0 14px}.account-balance span{display:block;color:var(--muted);font-size:8px;margin-bottom:6px}.account-balance strong{font-size:22px}.account-stats{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #eee9df;border-bottom:1px solid #eee9df}
.account-stats div{padding:9px 4px}.account-stats span{display:block;color:#9a9488;font-size:7px;margin-bottom:4px}.account-stats strong{font-size:9px}.account-actions{display:flex;justify-content:space-between;gap:8px;padding-top:12px}.account-actions a{font-size:8px;font-weight:850;color:#80601a}
.account-detail-grid{display:grid;grid-template-columns:1.6fr repeat(5,1fr);gap:11px;margin-bottom:17px}.account-detail-main{padding:17px}.detail-stat{padding:16px}.detail-stat span{display:block;font-size:8px;color:var(--muted);margin-bottom:8px}.detail-stat strong{font-size:14px}
.sidebar-overlay{display:none}
@media(max-width:1250px){.kpi-grid{grid-template-columns:repeat(3,1fr)}.bottom-grid{grid-template-columns:1fr 1fr}.recent-panel{grid-column:1/-1}.account-grid{grid-template-columns:repeat(2,1fr)}.account-detail-grid{grid-template-columns:repeat(3,1fr)}.account-detail-main{grid-column:span 3}}
@media(max-width:900px){.app-shell{grid-template-columns:1fr}.sidebar{position:fixed;left:-270px;top:0;width:250px;transition:.25s}.sidebar.open{left:0}.sidebar-overlay.show{display:block;position:fixed;inset:0;background:rgba(0,0,0,.35);z-index:40}.menu-toggle{display:grid;place-items:center}.main{padding:19px}.dashboard-grid,.bottom-grid{grid-template-columns:1fr}.recent-panel{grid-column:auto}.filters-grid{grid-template-columns:repeat(2,1fr)}.mini-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.kpi-grid,.mini-grid,.account-grid,.account-detail-grid,.filters-grid,.form-grid{grid-template-columns:1fr}.field-wide,.field-span-2,.account-detail-main{grid-column:span 1}.topbar{align-items:flex-start}.topbar-actions .btn-light{display:none}.topbar h1{font-size:20px}}


/* Projects / Sites */
.project-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.project-card{padding:17px}
.project-card-head{display:flex;align-items:center;gap:9px}
.project-badge{width:39px;height:39px;border-radius:11px;background:#151515;color:#d8b85f;display:grid;place-items:center;font-size:10px;font-weight:900}
.project-title{flex:1;min-width:0}.project-title strong{display:block;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project-title span{display:block;font-size:8px;color:var(--muted);margin-top:3px}
.project-status{padding:5px 7px;border-radius:999px;font-size:7px;font-weight:850}
.status-active{background:#e8f8f0;color:#176f4d}.status-planning{background:#edf2ff;color:#3659a6}.status-on_hold{background:#fff7df;color:#916615}.status-completed{background:#f0f0f0;color:#555}.status-cancelled{background:#fff0f0;color:#b53b43}
.project-location{margin-top:12px;padding:8px 10px;background:#faf8f2;border-radius:9px;color:#777166;font-size:8px}
.project-budget-main{padding:18px 0 13px}.project-budget-main span{display:block;color:var(--muted);font-size:8px;margin-bottom:6px}.project-budget-main strong{font-size:22px}
.project-financial-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #eee9df;border-bottom:1px solid #eee9df}
.project-financial-grid div{padding:9px 4px}.project-financial-grid span{display:block;color:#9a9488;font-size:7px;margin-bottom:4px}.project-financial-grid strong{font-size:9px}
.project-progress-row{padding-top:12px}.project-progress-row span,.project-progress-row b{font-size:8px}
.project-detail-actions{justify-content:flex-end;margin-bottom:14px}
.project-detail-grid{display:grid;grid-template-columns:1.8fr repeat(4,1fr);gap:11px;margin-bottom:17px}
.project-detail-main{padding:17px}
.project-view-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:17px;margin-bottom:17px}
.project-meta .meta-row{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #f0ece4}
.project-meta .meta-row span{font-size:8px;color:var(--muted)}.project-meta .meta-row strong{font-size:9px;text-align:right}
.project-notes{margin-top:12px;padding:12px;background:#faf8f2;border-radius:10px;color:#6d675c;font-size:9px;line-height:1.6}
@media(max-width:1250px){.project-card-grid{grid-template-columns:repeat(2,1fr)}.project-detail-grid{grid-template-columns:repeat(2,1fr)}.project-detail-main{grid-column:1/-1}}
@media(max-width:800px){.project-card-grid,.project-view-grid,.project-detail-grid{grid-template-columns:1fr}.project-detail-main{grid-column:auto}}


/* Vendors & Payees */
.vendor-search-card{padding:15px;margin-bottom:17px}
.vendor-search-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end}
.vendor-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.vendor-card{padding:17px}.vendor-card.inactive{opacity:.62}
.vendor-card-head{display:flex;align-items:center;gap:9px}
.vendor-avatar{width:39px;height:39px;border-radius:11px;background:#151515;color:#d8b85f;display:grid;place-items:center;font-size:10px;font-weight:900}
.vendor-title{flex:1;min-width:0}.vendor-title strong{display:block;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.vendor-title span{display:block;font-size:8px;color:var(--muted);margin-top:3px}
.vendor-contact{display:flex;flex-direction:column;gap:4px;margin-top:11px;padding:8px 10px;background:#faf8f2;border-radius:9px;color:#777166;font-size:8px}
.vendor-paid-main{padding:18px 0 13px}.vendor-paid-main span{display:block;color:var(--muted);font-size:8px;margin-bottom:6px}.vendor-paid-main strong{font-size:22px}
.vendor-stats{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #eee9df;border-bottom:1px solid #eee9df}
.vendor-stats div{padding:9px 4px}.vendor-stats span{display:block;color:#9a9488;font-size:7px;margin-bottom:4px}.vendor-stats strong{font-size:9px}
.vendor-detail-actions{justify-content:flex-end;margin-bottom:14px}
.vendor-detail-grid{display:grid;grid-template-columns:1.8fr repeat(5,1fr);gap:11px;margin-bottom:17px}
.vendor-detail-main{padding:17px}
.vendor-detail-contact{display:flex;flex-direction:column;gap:5px;margin-top:12px;color:#716a60;font-size:8px}
.vendor-view-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:17px;margin-bottom:17px}
.vendor-view-grid .meta-row{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #f0ece4}
.vendor-view-grid .meta-row span{font-size:8px;color:var(--muted)}.vendor-view-grid .meta-row strong{font-size:9px;text-align:right}
.vendor-notes{margin-top:12px;padding:12px;background:#faf8f2;border-radius:10px;color:#6d675c;font-size:9px;line-height:1.6}
@media(max-width:1250px){
    .vendor-card-grid{grid-template-columns:repeat(2,1fr)}
    .vendor-detail-grid{grid-template-columns:repeat(3,1fr)}
    .vendor-detail-main{grid-column:1/-1}
}
@media(max-width:800px){
    .vendor-card-grid,.vendor-detail-grid,.vendor-view-grid{grid-template-columns:1fr}
    .vendor-detail-main{grid-column:auto}
    .vendor-search-form{grid-template-columns:1fr}
}


/* Budgets */
.budget-month-card{padding:15px;margin-bottom:17px;display:grid;grid-template-columns:auto 1fr;gap:22px;align-items:end}
.budget-month-form{display:flex;gap:8px;align-items:end}.budget-month-form .field{min-width:180px}
.overall-budget-progress{min-width:0;padding-bottom:4px}
.budget-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.budget-card{padding:17px}.budget-card.budget-warning{border-color:#ecd79d}.budget-card.budget-over{border-color:#efc5c8}
.budget-card-head{display:flex;align-items:center;gap:9px}
.budget-icon{width:38px;height:38px;border-radius:10px;background:#151515;color:#d8b85f;display:grid;place-items:center;font-size:10px;font-weight:900}
.budget-title{flex:1;min-width:0}.budget-title strong{display:block;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.budget-title span{display:block;font-size:8px;color:var(--muted);margin-top:3px}
.budget-state{padding:5px 7px;border-radius:999px;font-size:7px;font-weight:850}
.budget-state.good{background:#e8f8f0;color:#176f4d}.budget-state.warning{background:#fff7df;color:#916615}.budget-state.over{background:#fff0f0;color:#b53b43}
.budget-card-main{padding:18px 0 11px}.budget-card-main>span{display:block;color:var(--muted);font-size:8px;margin-bottom:6px}.budget-card-main>strong{font-size:18px}.budget-card-main>strong small{font-size:9px;color:#918b81;font-weight:700}
.budget-card-stats{display:grid;grid-template-columns:1fr 1fr;margin-top:12px;border-top:1px solid #eee9df;border-bottom:1px solid #eee9df}
.budget-card-stats div{padding:9px 4px}.budget-card-stats span{display:block;color:#9a9488;font-size:7px;margin-bottom:4px}.budget-card-stats strong{font-size:9px}
.budget-note{margin-top:11px;padding:9px 10px;background:#faf8f2;border-radius:9px;color:#746d62;font-size:8px;line-height:1.5}
.progress.progress-danger div{background:linear-gradient(90deg,#cb5b5f,#e07b7f)}
.budget-scope-help{display:grid;grid-template-columns:1fr 1fr;gap:5px 14px;padding:13px;border:1px solid #e8e2d6;background:#faf8f2;border-radius:12px;color:#756e63;font-size:8px}
.budget-scope-help strong{grid-column:1/-1;font-size:9px;color:#5a544b;margin-bottom:2px}
@media(max-width:1250px){.budget-card-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:800px){.budget-card-grid,.budget-month-card{grid-template-columns:1fr}.budget-month-form{align-items:stretch}.budget-month-form .field{min-width:0}.budget-scope-help{grid-template-columns:1fr}}


/* Advances / Loans */
.advance-filter-card{padding:15px;margin-bottom:17px}.advance-filter-form{display:flex;gap:10px;align-items:end}.advance-filter-form .field{min-width:220px}
.advance-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.advance-card{padding:17px}.advance-card.advance-overdue{border-color:#efc5c8}
.advance-card-head{display:flex;align-items:center;gap:9px}.advance-avatar{width:39px;height:39px;border-radius:11px;background:#151515;color:#d8b85f;display:grid;place-items:center;font-size:10px;font-weight:900}
.advance-title{flex:1;min-width:0}.advance-title strong{display:block;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.advance-title span{display:block;font-size:8px;color:var(--muted);margin-top:3px}
.advance-state{padding:5px 7px;border-radius:999px;font-size:7px;font-weight:850}.state-open{background:#fff7df;color:#916615}.state-partial{background:#edf2ff;color:#3659a6}.state-recovered{background:#e8f8f0;color:#176f4d}.state-written_off{background:#f0f0f0;color:#666}
.advance-purpose{margin-top:11px;padding:8px 10px;background:#faf8f2;border-radius:9px;color:#777166;font-size:8px}
.advance-main{padding:18px 0 13px}.advance-main span{display:block;color:var(--muted);font-size:8px;margin-bottom:6px}.advance-main strong{font-size:22px}
.advance-stats{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #eee9df;border-bottom:1px solid #eee9df}.advance-stats div{padding:9px 4px}.advance-stats span{display:block;color:#9a9488;font-size:7px;margin-bottom:4px}.advance-stats strong{font-size:9px}
.advance-detail-actions{justify-content:flex-end;margin-bottom:14px}.advance-detail-grid{display:grid;grid-template-columns:1.8fr repeat(4,1fr);gap:11px;margin-bottom:17px}.advance-detail-main{padding:17px}
.advance-view-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px;margin-bottom:17px}.advance-view-grid .meta-row{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #f0ece4}.advance-view-grid .meta-row span{font-size:8px;color:var(--muted)}.advance-view-grid .meta-row strong{font-size:9px;text-align:right}
.advance-note{margin-top:12px;padding:12px;background:#faf8f2;border-radius:10px;color:#6d675c;font-size:9px;line-height:1.6}.advance-explainer{display:flex;flex-direction:column;gap:10px;color:#6d675c;font-size:9px;line-height:1.5}
.recovery-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-bottom:17px;overflow:hidden}.recovery-summary div{padding:17px;border-right:1px solid #eee9df}.recovery-summary div:last-child{border-right:0}.recovery-summary span{display:block;font-size:8px;color:var(--muted);margin-bottom:7px}.recovery-summary strong{font-size:15px}
@media(max-width:1250px){.advance-card-grid{grid-template-columns:repeat(2,1fr)}.advance-detail-grid{grid-template-columns:repeat(2,1fr)}.advance-detail-main{grid-column:1/-1}.recovery-summary{grid-template-columns:1fr 1fr}}
@media(max-width:800px){.advance-card-grid,.advance-detail-grid,.advance-view-grid,.recovery-summary{grid-template-columns:1fr}.advance-detail-main{grid-column:auto}.advance-filter-form{flex-direction:column;align-items:stretch}.advance-filter-form .field{min-width:0}.recovery-summary div{border-right:0;border-bottom:1px solid #eee9df}}


/* =========================================================
   v6.1 Readability Pass
   Larger typography and breathing room without changing logic
   ========================================================= */

body{font-size:14px}

.main{padding:26px 30px 42px}

/* Sidebar */
.brand-copy strong{font-size:18px}
.brand-copy span{font-size:11px}
.nav-label{font-size:10px}
.nav a{font-size:13px;padding:12px 11px}
.nav-icon{font-size:10px}
.sidebar-foot strong{font-size:12px}
.sidebar-foot span{font-size:10px}

/* Topbar */
.topbar h1{font-size:25px}
.topbar p{font-size:12px}
.btn{font-size:12px;padding:10px 14px}
.avatar{font-size:11px}

/* KPI / summary cards */
.kpi{padding:19px;min-height:120px}
.kpi span,.mini-kpi span{font-size:11px}
.kpi strong,.mini-kpi strong{font-size:23px}
.kpi small,.mini-kpi small{font-size:10px;line-height:1.4}
.mini-kpi{padding:18px}

/* Section headings / panels */
.panel{padding:19px}
.panel-head h2{font-size:15px}
.panel-head p{font-size:10px}
.panel-head a{font-size:10px}
.section-title h2{font-size:16px}
.section-title p{font-size:10px}
.empty{font-size:12px}

/* Forms */
.field label{font-size:10px}
.field input,.field select,.field textarea{font-size:12px;padding:11px 12px}
.helper{font-size:9.5px;line-height:1.45}
.form-section-head h2{font-size:15px}
.form-section-head p{font-size:10px}
.inline-link{font-size:10px}

/* Tables */
th{font-size:9px;padding:10px}
td{font-size:11px;padding:12px 10px}
td strong{font-size:11px}
td small{font-size:9px}
.pill,.status{font-size:9px;padding:5px 8px}
.action-buttons a,.action-buttons button{font-size:9px;padding:7px 9px}

/* Account cards */
.account-card{padding:20px}
.account-icon{width:42px;height:42px;font-size:11px}
.account-title strong{font-size:13px}
.account-title span{font-size:10px}
.account-status{font-size:9px;padding:5px 8px}
.account-number{font-size:10px;padding:8px 10px}
.account-balance{padding:20px 0 16px}
.account-balance span{font-size:10px}
.account-balance strong{font-size:25px}
.account-stats span{font-size:9px}
.account-stats strong{font-size:11px}
.account-stats div{padding:11px 5px}
.account-actions{padding-top:14px}
.account-actions a{font-size:10px}

/* Projects */
.project-badge{width:42px;height:42px;font-size:11px}
.project-title strong{font-size:13px}
.project-title span{font-size:10px}
.project-status{font-size:9px}
.project-location{font-size:10px}
.project-budget-main span{font-size:10px}
.project-budget-main strong{font-size:24px}
.project-financial-grid span{font-size:9px}
.project-financial-grid strong{font-size:11px}
.project-progress-row span,.project-progress-row b{font-size:10px}

/* Vendors */
.vendor-avatar{width:42px;height:42px;font-size:11px}
.vendor-title strong{font-size:13px}
.vendor-title span{font-size:10px}
.vendor-contact{font-size:10px}
.vendor-paid-main span{font-size:10px}
.vendor-paid-main strong{font-size:24px}
.vendor-stats span{font-size:9px}
.vendor-stats strong{font-size:11px}
.vendor-detail-contact{font-size:10px}
.vendor-view-grid .meta-row span{font-size:10px}
.vendor-view-grid .meta-row strong{font-size:11px}
.vendor-notes{font-size:10px}

/* Budgets */
.budget-title strong{font-size:12px}
.budget-title span{font-size:10px}
.budget-state{font-size:9px}
.budget-card-main>span{font-size:10px}
.budget-card-main>strong{font-size:21px}
.budget-card-main>strong small{font-size:10px}
.budget-card-stats span{font-size:9px}
.budget-card-stats strong{font-size:11px}
.budget-note{font-size:10px}
.budget-scope-help{font-size:10px}
.budget-scope-help strong{font-size:11px}

/* Advances */
.advance-avatar{width:42px;height:42px;font-size:11px}
.advance-title strong{font-size:13px}
.advance-title span{font-size:10px}
.advance-state{font-size:9px}
.advance-purpose{font-size:10px}
.advance-main span{font-size:10px}
.advance-main strong{font-size:24px}
.advance-stats span{font-size:9px}
.advance-stats strong{font-size:11px}
.advance-view-grid .meta-row span{font-size:10px}
.advance-view-grid .meta-row strong{font-size:11px}
.advance-note,.advance-explainer{font-size:10px}
.recovery-summary span{font-size:10px}
.recovery-summary strong{font-size:17px}

/* General row labels */
.category-row strong{font-size:11px}
.category-row span{font-size:10px}
.project-row strong{font-size:11px}
.project-row small{font-size:10px}
.project-row b{font-size:11px}

/* Slightly more visual breathing room on wide desktop */
@media(min-width:1400px){
    .main{padding-left:32px;padding-right:32px}
    .account-grid,.project-card-grid,.vendor-card-grid,.advance-card-grid,.budget-card-grid{gap:18px}
}

/* Keep mobile sensible */
@media(max-width:620px){
    body{font-size:13px}
    .topbar h1{font-size:21px}
    .kpi strong,.mini-kpi strong{font-size:21px}
}


/* Excel Import */
.import-upload-card{padding:20px;margin-bottom:17px}
.import-upload-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:end}
.import-guide-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:17px}
.import-guide{padding:16px;display:grid;grid-template-columns:30px 1fr;column-gap:9px;align-items:center}
.import-guide b{width:28px;height:28px;border-radius:9px;background:#151515;color:#d8b85f;display:grid;place-items:center;font-size:10px}
.import-guide strong{font-size:11px}.import-guide span{grid-column:2;font-size:9px;color:var(--muted);margin-top:3px;line-height:1.45}
.import-state{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:9px;font-weight:850}
.state-completed{background:#e8f8f0;color:#176f4d}.state-processing{background:#fff7df;color:#916615}.state-rolled_back{background:#f0f0f0;color:#666}.state-review{background:#fff0f0;color:#b53b43}
.import-undo-btn{padding:7px 9px;font-size:9px}
.map-info{display:grid;grid-template-columns:repeat(4,1fr);margin-bottom:17px;overflow:hidden}.map-info div{padding:16px;border-right:1px solid #eee9df}.map-info div:last-child{border-right:0}.map-info span{display:block;font-size:9px;color:var(--muted);margin-bottom:6px}.map-info strong{font-size:12px}
.import-map-card{max-width:none}.import-sample-table{min-width:900px}.import-preview-table{min-width:1200px}
.import-row-invalid{background:#fffafa}.import-errors{max-width:360px;color:#b53b43;font-size:9px;line-height:1.45}.import-file-kpi{text-transform:uppercase}
@media(max-width:1000px){.import-guide-grid{grid-template-columns:1fr 1fr}.map-info{grid-template-columns:1fr 1fr}.map-info div:nth-child(2){border-right:0}}
@media(max-width:700px){.import-upload-form,.import-guide-grid,.map-info{grid-template-columns:1fr}.map-info div{border-right:0;border-bottom:1px solid #eee9df}.map-info div:last-child{border-bottom:0}}


/* =========================================================
   Reports v8
   ========================================================= */

.report-heading-print,.report-footer-print{display:none}

.report-filter-card{padding:18px;margin-bottom:14px}
.report-presets{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding-bottom:14px;margin-bottom:14px;border-bottom:1px solid #eee9df}
.report-presets>span{font-size:10px;font-weight:850;color:#6f685d;margin-right:3px}
.report-presets a{font-size:10px;font-weight:750;border:1px solid #e3ddd0;background:#faf9f5;padding:7px 10px;border-radius:999px;color:#655e52}
.report-presets a:hover{border-color:#c9a345;color:#7b5d17}

.report-filter-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:11px;align-items:end}
.report-filter-actions{display:flex;gap:7px;grid-column:span 2}

.report-meta-row{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin:0 2px 14px;color:#777166;font-size:10px}
.report-meta-row b{color:#575147}

.report-kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-bottom:17px}
.report-kpi{padding:19px;min-height:116px}
.report-kpi>span{display:block;font-size:11px;font-weight:750;color:var(--muted);margin-bottom:11px}
.report-kpi>strong{display:block;font-size:23px;letter-spacing:-.025em}
.report-kpi>small{display:block;margin-top:8px;font-size:10px;color:#8d877c;line-height:1.35}

.report-two-col{display:grid;grid-template-columns:1.25fr .75fr;gap:17px;margin-bottom:17px}
.report-three-col{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;margin-bottom:17px}

.report-month-list{display:flex;flex-direction:column;gap:13px}
.report-month-row{display:grid;grid-template-columns:105px minmax(0,1fr) 105px;gap:12px;align-items:center;padding:12px;border:1px solid #eee9df;border-radius:12px}
.report-month-label strong{display:block;font-size:11px}
.report-month-label span{display:block;font-size:9px;color:var(--muted);margin-top:4px}
.report-month-bars{display:flex;flex-direction:column;gap:7px}
.report-bar-row{display:grid;grid-template-columns:55px minmax(80px,1fr) 100px;align-items:center;gap:8px}
.report-bar-row>span{font-size:9px;color:#817a70}
.report-bar-row>b{font-size:9px;text-align:right}
.report-bar-track{height:7px;border-radius:999px;background:#f1eee7;overflow:hidden}
.report-bar-track>div{height:100%;border-radius:999px}
.report-bar-in{background:#4c9d7b}
.report-bar-out{background:#cf7a7e}
.report-month-net{border-radius:10px;padding:9px;text-align:center}
.report-month-net span{display:block;font-size:8px;margin-bottom:4px}
.report-month-net strong{font-size:11px}
.positive-box{background:#edf8f2;color:#176f4d}
.negative-box{background:#fff1f1;color:#a73c42}

.report-category-list .category-row{padding:4px 0 8px}
.report-category-list .row-between>div strong{display:block}
.report-category-list .row-between>div small{display:block;font-size:9px;color:var(--muted);margin-top:3px}

.report-stack-list{display:flex;flex-direction:column}
.report-stack-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid #f0ece4}
.report-stack-row:last-child{border-bottom:0}
.report-stack-row>div:first-child{min-width:0}
.report-stack-row strong{display:block;font-size:11px}
.report-stack-row span{display:block;font-size:9px;color:var(--muted);margin-top:3px}
.report-stack-values{text-align:right;flex-shrink:0}
.report-stack-values small{display:block;font-size:8px;color:#817a70;margin-bottom:3px}
.report-stack-values b{display:block;font-size:10px}

.report-budget-list{display:flex;flex-direction:column;gap:12px}
.report-budget-row{border:1px solid #eee9df;border-radius:12px;padding:13px}
.report-budget-row .row-between strong{display:block;font-size:11px}
.report-budget-row .row-between small{display:block;font-size:9px;color:var(--muted);margin-top:3px}
.report-budget-values{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:11px 0}
.report-budget-values span{font-size:9px;color:#7f786e}
.report-budget-values b{display:block;font-size:10px;color:#222;margin-top:3px}
.budget-state.no-budget{background:#f0f0f0;color:#666}

.report-advance-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.report-advance-grid>div{padding:13px;background:#faf8f2;border:1px solid #eee8dc;border-radius:11px}
.report-advance-grid span{display:block;font-size:9px;color:var(--muted);margin-bottom:6px}
.report-advance-grid strong{font-size:15px}
.report-insight-note{margin-top:12px;padding:11px;background:#fbf7e9;border:1px solid #eadba9;border-radius:10px;color:#725d26;font-size:9px;line-height:1.5}

.report-ledger{margin-top:17px}
.report-ledger-table{min-width:1180px}

@media(max-width:1300px){
    .report-filter-grid{grid-template-columns:repeat(3,1fr)}
    .report-kpi-grid{grid-template-columns:repeat(3,1fr)}
    .report-two-col{grid-template-columns:1fr}
    .report-three-col{grid-template-columns:1fr 1fr}
}

@media(max-width:850px){
    .report-filter-grid,.report-kpi-grid,.report-three-col{grid-template-columns:1fr 1fr}
    .report-filter-actions{grid-column:span 2}
    .report-month-row{grid-template-columns:1fr}
    .report-month-net{text-align:left}
}

@media(max-width:560px){
    .report-filter-grid,.report-kpi-grid,.report-three-col,.report-advance-grid{grid-template-columns:1fr}
    .report-filter-actions{grid-column:auto}
    .report-bar-row{grid-template-columns:50px minmax(70px,1fr)}
    .report-bar-row>b{grid-column:2;text-align:left}
}

/* Print / Save PDF */
@media print{
    @page{size:A4 landscape;margin:10mm}

    body{background:#fff!important;color:#111!important;font-size:10px}
    .app-shell{display:block!important}
    .sidebar,.sidebar-overlay,.topbar,.report-filter-card,.no-print{display:none!important}
    .main,.report-main{padding:0!important;margin:0!important;width:100%!important}
    .report-heading-print,.report-footer-print{display:flex!important}

    .report-heading-print{justify-content:space-between;align-items:flex-start;margin-bottom:12px;padding-bottom:10px;border-bottom:2px solid #c9a345}
    .report-heading-print span{font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:#967321;font-weight:850}
    .report-heading-print h1{font-size:19px;margin:5px 0}
    .report-heading-print p{margin:0;font-size:10px;color:#666}

    .report-footer-print{justify-content:space-between;margin-top:12px;padding-top:8px;border-top:1px solid #ccc;font-size:8px;color:#666}

    .report-meta-row{font-size:8px;margin-bottom:8px}
    .card{box-shadow:none!important;border-color:#d7d7d7!important;break-inside:avoid}
    .panel{padding:11px!important}
    .panel-head{margin-bottom:8px!important}
    .panel-head h2{font-size:11px!important}
    .panel-head p{font-size:8px!important}

    .report-kpi-grid{grid-template-columns:repeat(5,1fr)!important;gap:6px!important;margin-bottom:8px!important}
    .report-kpi{padding:10px!important;min-height:auto!important}
    .report-kpi>span{font-size:8px!important;margin-bottom:4px!important}
    .report-kpi>strong{font-size:13px!important}
    .report-kpi>small{font-size:7px!important;margin-top:4px!important}

    .report-two-col{grid-template-columns:1.2fr .8fr!important;gap:8px!important;margin-bottom:8px!important}
    .report-three-col{grid-template-columns:repeat(3,1fr)!important;gap:8px!important;margin-bottom:8px!important}

    .report-month-row{grid-template-columns:70px 1fr 75px!important;padding:7px!important;gap:6px!important}
    .report-bar-row{grid-template-columns:40px 1fr 70px!important;gap:4px!important}
    .report-stack-row{padding:6px 0!important}

    .report-ledger{break-before:page}
    table{min-width:0!important;font-size:7px!important}
    th{font-size:6px!important;padding:4px!important}
    td{font-size:7px!important;padding:5px 4px!important}
    td strong{font-size:7px!important}
    td small{font-size:6px!important}

    .btn{display:none!important}
}


/* =========================================================
   Advanced Management Reports v9
   ========================================================= */

.report-section{scroll-margin-top:20px;margin-bottom:22px}
.report-section-title{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin:3px 2px 12px}
.report-section-title>div{display:flex;align-items:center;gap:10px}
.report-section-title>div>span{display:inline-flex;width:30px;height:30px;border-radius:9px;align-items:center;justify-content:center;background:#151515;color:#d6b75d;font-size:10px;font-weight:850}
.report-section-title h2{margin:0;font-size:17px;letter-spacing:-.02em}
.report-section-title>p{margin:0;color:#817a70;font-size:10px;text-align:right;max-width:520px}

.report-section-nav{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin:0 0 13px;padding:8px;border:1px solid #e8e2d5;background:#fff;border-radius:13px}
.report-section-nav a{font-size:9px;font-weight:800;padding:7px 9px;border-radius:8px;color:#6b6459}
.report-section-nav a:hover{background:#f6f1e4;color:#725719}

.report-kpi-grid-six{grid-template-columns:repeat(6,minmax(0,1fr))}
.report-kpi-grid-four{grid-template-columns:repeat(4,minmax(0,1fr))}
.report-kpi-featured{background:linear-gradient(135deg,#171717,#2a271f);border-color:#302b22}
.report-kpi-featured>span,.report-kpi-featured>small{color:#c8c1b4}
.report-kpi-featured>strong{color:#dfc36e}

.management-insights{margin-top:15px}
.insight-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.insight-card{border:1px solid #e8e2d7;border-radius:12px;padding:13px;background:#fbfaf7}
.insight-card>span{display:block;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.04em;color:#71695d;margin-bottom:5px}
.insight-card>p{margin:0;font-size:10px;line-height:1.45;color:#4e4942}
.insight-card.good{background:#f2faf5;border-color:#cfe9d8}
.insight-card.attention{background:#fff7ef;border-color:#efd9bf}
.insight-card.attention>span{color:#9a5d24}

.report-comparison-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.comparison-card{padding:16px}
.comparison-card>span{display:block;font-size:10px;color:#777064;font-weight:750;margin-bottom:9px}
.comparison-card>strong{display:block;font-size:19px;letter-spacing:-.02em}
.comparison-line{display:flex;justify-content:space-between;align-items:end;gap:8px;margin-top:10px;padding-top:9px;border-top:1px solid #eee9df}
.comparison-line small{font-size:8px;color:#8b8479}
.comparison-line b{font-size:9px}
.comparison-line b.positive{color:#18734f}
.comparison-line b.negative{color:#b14349}
.comparison-line b.neutral{color:#716b62}

.report-two-col-main{grid-template-columns:1.35fr .65fr}
.report-mini-summary{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}
.report-mini-summary>div{padding:11px;border-radius:10px;background:#faf8f2;border:1px solid #eee8dc}
.report-mini-summary span{display:block;font-size:8px;color:#847d72;margin-bottom:4px}
.report-mini-summary strong{font-size:11px}

.metric-list{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.metric-list>div{padding:12px;border:1px solid #eee9df;background:#fbfaf7;border-radius:11px}
.metric-list span{display:block;font-size:8px;color:#817a70;margin-bottom:5px}
.metric-list strong{display:block;font-size:11px;line-height:1.3}
.metric-list small{display:block;font-size:8px;color:#8b8479;margin-top:4px}

.report-stack-row-tall{align-items:flex-start}
.report-stack-values em{display:block;font-style:normal;font-size:8px;font-weight:800;color:#6a5a2c;margin-top:5px}

.report-advance-grid-six{grid-template-columns:repeat(3,1fr)}

.control-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:11px;margin-bottom:15px}
.control-card{padding:15px;min-height:104px}
.control-card>span{display:block;font-size:9px;color:#777064;font-weight:750;margin-bottom:8px}
.control-card>strong{display:block;font-size:20px}
.control-card>small{display:block;font-size:8px;color:#8d877c;line-height:1.4;margin-top:6px}
.control-card.control-attention{background:#fff9f1;border-color:#e8d6bb}
.control-card.control-attention>strong{color:#a05b27}

.report-accounting-note{margin:18px 0 4px;padding:13px 15px;border:1px solid #e8dfc8;background:#fbf8ef;border-radius:12px;color:#655b47;font-size:9px;line-height:1.55}
.report-accounting-note strong{color:#4d4537}

.report-ledger-table{min-width:1260px}

@media(max-width:1450px){
    .report-kpi-grid-six{grid-template-columns:repeat(3,1fr)}
    .report-comparison-grid{grid-template-columns:repeat(3,1fr)}
    .control-grid{grid-template-columns:repeat(3,1fr)}
}

@media(max-width:1100px){
    .insight-grid{grid-template-columns:1fr 1fr}
    .report-comparison-grid{grid-template-columns:1fr 1fr}
    .control-grid{grid-template-columns:1fr 1fr}
    .report-kpi-grid-four{grid-template-columns:1fr 1fr}
}

@media(max-width:700px){
    .report-section-title{display:block}
    .report-section-title>p{text-align:left;margin-top:6px}
    .report-kpi-grid-six,.report-kpi-grid-four,.report-comparison-grid,.control-grid,.insight-grid{grid-template-columns:1fr}
    .report-advance-grid-six{grid-template-columns:1fr 1fr}
    .metric-list{grid-template-columns:1fr}
}

@media print{
    .report-section-nav{display:none!important}
    .report-section{margin-bottom:8px!important}
    .report-section-title{margin:3px 0 6px!important}
    .report-section-title>div>span{width:22px!important;height:22px!important;font-size:7px!important}
    .report-section-title h2{font-size:11px!important}
    .report-section-title>p{font-size:7px!important}

    .report-kpi-grid-six{grid-template-columns:repeat(6,1fr)!important}
    .report-kpi-grid-four{grid-template-columns:repeat(4,1fr)!important}
    .report-comparison-grid{grid-template-columns:repeat(5,1fr)!important;gap:5px!important}
    .comparison-card{padding:8px!important}
    .comparison-card>strong{font-size:11px!important}
    .comparison-line{margin-top:5px!important;padding-top:5px!important}
    .comparison-line small,.comparison-line b{font-size:6px!important}

    .insight-grid{grid-template-columns:repeat(3,1fr)!important;gap:5px!important}
    .insight-card{padding:7px!important}
    .insight-card>span{font-size:6px!important}
    .insight-card>p{font-size:7px!important}

    .control-grid{grid-template-columns:repeat(5,1fr)!important;gap:5px!important}
    .control-card{padding:7px!important;min-height:60px!important}
    .control-card>span,.control-card>small{font-size:6px!important}
    .control-card>strong{font-size:11px!important}

    .metric-list{grid-template-columns:1fr 1fr!important;gap:4px!important}
    .metric-list>div{padding:6px!important}
    .report-accounting-note{font-size:7px!important;padding:7px!important}
}


/* =========================================================
   Tabbed Reports v9.1
   ========================================================= */

.report-tabs{
    display:flex;
    gap:7px;
    align-items:center;
    overflow-x:auto;
    white-space:nowrap;
    margin:0 0 16px;
    padding:8px;
    background:#fff;
    border:1px solid #e5dfd2;
    border-radius:14px;
    scrollbar-width:thin;
}

.report-tab{
    appearance:none;
    border:1px solid transparent;
    background:transparent;
    color:#6f685d;
    min-height:38px;
    padding:8px 12px;
    border-radius:10px;
    font-family:inherit;
    font-size:10px;
    font-weight:800;
    cursor:pointer;
    transition:.18s ease;
    flex:0 0 auto;
}

.report-tab span{
    display:inline-flex;
    width:20px;
    height:20px;
    align-items:center;
    justify-content:center;
    border-radius:6px;
    margin-right:5px;
    background:#f2eee4;
    color:#806321;
    font-size:8px;
    font-weight:900;
}

.report-tab:hover{
    background:#f8f5ed;
    color:#4e483f;
}

.report-tab.active{
    background:#171717;
    color:#fff;
    border-color:#171717;
    box-shadow:0 5px 14px rgba(0,0,0,.09);
}

.report-tab.active span{
    background:#d5b45b;
    color:#171717;
}

.report-tab-panel{
    display:none;
    animation:reportTabFade .18s ease;
}

.report-tab-panel.active{
    display:block;
}

@keyframes reportTabFade{
    from{opacity:.55;transform:translateY(4px)}
    to{opacity:1;transform:translateY(0)}
}

/* Hide internal numeric section heading now that tabs already provide numbering */
.report-tab-panel .report-section-title>div>span{
    display:none;
}

.report-tab-panel .report-section-title>div{
    gap:0;
}

@media(max-width:760px){
    .report-tabs{
        position:sticky;
        top:6px;
        z-index:20;
        border-radius:12px;
        box-shadow:0 6px 18px rgba(0,0,0,.06);
    }

    .report-tab{
        min-height:36px;
        padding:7px 10px;
    }
}

@media print{
    .report-tabs{display:none!important}

    /* Print only the currently active tab, matching what management is viewing. */
    .report-tab-panel{display:none!important}
    .report-tab-panel.active{display:block!important}
}


/* =========================================================
   Management Observation Drill-down v9.2
   ========================================================= */

.insight-card-button{
    appearance:none;
    width:100%;
    text-align:left;
    font-family:inherit;
    cursor:pointer;
    transition:.16s ease;
}

.insight-card-button:hover{
    transform:translateY(-1px);
    box-shadow:0 7px 18px rgba(33,28,20,.07);
    border-color:#cdbb8a;
}

.insight-card-button.selected{
    outline:2px solid rgba(201,163,69,.34);
    border-color:#c9a345;
}

.insight-card-button>small{
    display:block;
    margin-top:9px;
    font-size:8px;
    font-weight:850;
    color:#89691f;
}

.insight-drilldown-shell{
    margin-top:12px;
    border:1px solid #ddcfab;
    background:#fffefb;
    scroll-margin-top:12px;
}

.insight-drilldown-shell[hidden]{
    display:none!important;
}

.insight-drilldown-kicker{
    display:block;
    font-size:8px;
    font-weight:900;
    letter-spacing:.08em;
    text-transform:uppercase;
    color:#947126;
    margin-bottom:5px;
}

.insight-drilldown-head{
    padding-bottom:12px;
    margin-bottom:12px;
    border-bottom:1px solid #ece5d5;
}

.insight-drilldown-panel{
    animation:reportTabFade .18s ease;
}

.insight-drilldown-panel[hidden]{
    display:none!important;
}

.drilldown-summary-row{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:9px;
    margin-bottom:12px;
}

.drilldown-summary-row>div{
    padding:11px 12px;
    border:1px solid #eee7d7;
    background:#faf8f2;
    border-radius:10px;
}

.drilldown-summary-row span{
    display:block;
    font-size:8px;
    color:#7d7569;
    margin-bottom:5px;
}

.drilldown-summary-row strong{
    display:block;
    font-size:12px;
}

.drilldown-alert-row{
    background:#fff7f2;
}

.drilldown-guidance{
    margin:0 0 12px;
    padding:12px;
    border-radius:10px;
    background:#f8f5ec;
    color:#655d50;
    font-size:10px;
    line-height:1.55;
}

.drilldown-action-links{
    display:flex;
    gap:8px;
}

@media(max-width:700px){
    .drilldown-summary-row{
        grid-template-columns:1fr;
    }
}

@media print{
    .insight-card-button>small,
    .insight-drilldown-shell{
        display:none!important;
    }
}


/* =========================================================
   Users, Authentication & Approvals v10
   ========================================================= */

.auth-body{margin:0;min-height:100vh;background:#f4f2ec;display:flex;align-items:center;justify-content:center;padding:28px}
.auth-shell{width:min(460px,100%)}
.auth-brand{display:flex;align-items:center;justify-content:center;gap:11px;margin-bottom:18px}
.auth-brand img{width:56px;height:56px;border-radius:12px;object-fit:cover;background:#0e0e0e}
.auth-brand strong{display:block;font-size:18px}
.auth-brand span{display:block;font-size:10px;color:#787166;margin-top:3px}
.auth-card{background:#fff;border:1px solid #e2dccf;border-radius:20px;padding:28px;box-shadow:0 16px 45px rgba(34,29,20,.06)}
.auth-kicker{display:block;color:#9a7928;text-transform:uppercase;letter-spacing:.1em;font-size:9px;font-weight:900;margin-bottom:8px}
.auth-card h1{font-size:27px;margin:0 0 8px}
.auth-card>p{font-size:11px;line-height:1.55;color:#746d63;margin:0 0 20px}
.auth-card .entry-form{display:flex;flex-direction:column;gap:13px}
.btn-block{width:100%;justify-content:center}
.auth-security-note{font-size:9px;color:#817a70;text-align:center;margin-top:14px;line-height:1.45}

.access-denied{min-height:100vh;background:#f4f2ec;display:flex;align-items:center;justify-content:center;padding:24px}
.access-denied-card{text-align:center;background:#fff;border:1px solid #e4ddcf;border-radius:20px;padding:35px;max-width:440px}
.access-denied-card>strong{font-size:40px;color:#c59d38}
.access-denied-card h1{margin:8px 0}.access-denied-card p{color:#777064;margin-bottom:20px}

.user-menu{display:flex;align-items:center;gap:7px}
.user-chip{display:flex;align-items:center;gap:8px;padding:5px 8px 5px 5px;border:1px solid #e7e1d6;background:#fff;border-radius:12px;color:#211f1b}
.user-chip>span{display:block;max-width:135px}
.user-chip strong{display:block;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.user-chip small{display:block;font-size:7px;color:#8a8379;margin-top:2px}
.logout-link{font-size:8px;font-weight:800;color:#8a5b5f;padding:8px}
.avatar-large{width:54px;height:54px;font-size:16px}

.profile-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:17px}
.profile-identity{display:flex;align-items:center;gap:13px;padding-bottom:17px;margin-bottom:10px;border-bottom:1px solid #eee8de}
.profile-identity h2{margin:0;font-size:17px}.profile-identity p{margin:4px 0 0;font-size:10px;color:#8a8378}

.nav-badge{margin-left:auto;min-width:21px;height:20px;padding:0 6px;border-radius:999px;background:#d6b354;color:#171717;font-size:8px;font-style:normal;font-weight:900;display:inline-flex;align-items:center;justify-content:center}

.approval-entry-banner{display:flex;gap:10px;align-items:center;margin-bottom:13px;padding:11px 13px;border:1px solid #e5d7ae;background:#fbf7ea;border-radius:12px}
.approval-entry-banner strong{font-size:9px;color:#7a5d18;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}
.approval-entry-banner span{font-size:9px;color:#635a47;line-height:1.45}

.workflow-status-box{min-height:39px;padding:9px 11px;border:1px solid #e2dccf;background:#faf8f3;border-radius:10px}
.workflow-status-box strong{display:block;font-size:10px}.workflow-status-box small{display:block;font-size:8px;line-height:1.45;color:#7f786e;margin-top:4px}

.approvals-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.users-approval-tabs{display:flex;gap:6px;margin:0 0 12px;padding:7px;border:1px solid #e5dfd3;background:#fff;border-radius:12px}
.users-approval-tabs a{font-size:9px;font-weight:800;padding:7px 10px;border-radius:8px;color:#6e675c}
.users-approval-tabs a.active,.users-approval-tabs a:hover{background:#171717;color:#e0bd5d}

.approval-status-filter{display:flex;gap:5px;flex-wrap:wrap}
.approval-status-filter a{font-size:8px;font-weight:800;padding:6px 8px;border:1px solid #e5dfd4;border-radius:8px;color:#6e675c}
.approval-status-filter a.active{background:#171717;color:#e0bd5d;border-color:#171717}

.approval-role-badge{display:inline-flex;padding:5px 8px;border-radius:999px;background:#f3eee0;color:#765d24;font-size:8px;font-weight:850}
.approval-status{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:8px;font-weight:850}
.approval-pending{background:#fff3d8;color:#8b6509}
.approval-approved{background:#e9f7ef;color:#18714e}
.approval-rejected{background:#ffeded;color:#a83f46}
.approval-cancelled{background:#eeeeee;color:#666}

.role-matrix-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-top:16px}
.role-card{padding:16px}
.role-card>span{font-size:8px;font-weight:900;letter-spacing:.06em;color:#947329}
.role-card h3{font-size:13px;margin:7px 0 6px}
.role-card p{font-size:9px;line-height:1.5;color:#7b7469;margin:0}

.role-pill{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:8px;font-weight:850}
.role-admin{background:#eee6cf;color:#735717}
.role-accountant{background:#e9f2fb;color:#2a6294}
.role-data_entry{background:#f1f1f1;color:#666}
.role-management{background:#ece9f8;color:#5b4c96}

.checkbox-field{display:flex;align-items:center}
.checkbox-field label,.switch-line{display:flex!important;align-items:center;gap:8px;font-size:10px;font-weight:750}
.checkbox-field input,.switch-line input{width:auto!important}

.approval-setting-stack{display:flex;flex-direction:column}
.setting-row{display:grid;grid-template-columns:1fr 230px;gap:18px;align-items:center;padding:15px 0;border-bottom:1px solid #eee8df}
.setting-row:last-child{border-bottom:0}
.setting-row strong{font-size:11px}.setting-row p{font-size:9px;line-height:1.5;color:#7c756b;margin:4px 0 0}
.compact-field{margin:0}
.approval-rule-note{padding:12px 14px;background:#f8f4e8;border:1px solid #e6d9b5;border-radius:11px;font-size:9px;line-height:1.55;color:#655a42}

.approval-review-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:17px}
.approval-review-header{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding-bottom:16px;border-bottom:1px solid #eee8de}
.approval-review-header h2{margin:9px 0 4px;font-size:18px}
.approval-review-header p{margin:0;font-size:9px;color:#817a70}
.approval-big-amount{font-size:23px;white-space:nowrap}
.approval-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px;margin-top:10px}
.approval-detail-grid>div,.detail-list>div{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #f0ece4}
.approval-detail-grid span,.detail-list span{font-size:8px;color:#837c71}
.approval-detail-grid strong,.detail-list strong{font-size:9px;text-align:right}
.approval-notes,.approval-review-note{padding:11px;margin:12px 0;background:#faf8f3;border-radius:10px}
.approval-notes span,.approval-review-note span{font-size:8px;font-weight:850;color:#786125;text-transform:uppercase}
.approval-notes p,.approval-review-note p{font-size:9px;line-height:1.55;margin:5px 0 0}
.approval-workflow-box{padding:13px;border:1px solid #e5d7ad;background:#fbf7e9;border-radius:11px}
.approval-workflow-box span{font-size:8px;color:#83651b;text-transform:uppercase;font-weight:850}
.approval-workflow-box strong{display:block;font-size:15px;margin:5px 0}
.approval-workflow-box p{font-size:9px;line-height:1.5;margin:0;color:#6b624f}
.approval-action-form{margin-top:14px;padding-top:14px;border-top:1px solid #eee8de}
.approval-action-buttons{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.btn-success{background:#1d7755!important;color:#fff!important;border-color:#1d7755!important}
.btn-danger{background:#a64248!important;color:#fff!important;border-color:#a64248!important}
.approval-waiting-note{margin-top:14px;padding:11px;border:1px solid #e4ddd0;background:#faf8f3;border-radius:10px;font-size:9px;line-height:1.5;color:#6f675b}

@media(max-width:1150px){
    .role-matrix-grid{grid-template-columns:1fr 1fr}
    .approval-review-grid,.profile-grid{grid-template-columns:1fr}
    .approvals-kpi-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:700px){
    .user-chip>span{display:none}
    .approval-entry-banner{display:block}.approval-entry-banner strong{display:block;margin-bottom:5px}
    .role-matrix-grid,.approvals-kpi-grid{grid-template-columns:1fr}
    .setting-row{grid-template-columns:1fr}
    .approval-detail-grid{grid-template-columns:1fr}
    .approval-action-buttons{grid-template-columns:1fr}
    .auth-body{padding:14px}.auth-card{padding:21px}
}
@media print{.user-menu,.approval-entry-banner{display:none!important}}


/* =========================================================
   Audit Trail v11
   ========================================================= */
.audit-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.audit-filter-grid{display:grid;grid-template-columns:1.5fr repeat(5,minmax(0,1fr));gap:10px;align-items:end}.audit-filter-grid .filter-actions{grid-column:span 2}
.audit-timeline{display:flex;flex-direction:column}.audit-event{display:grid;grid-template-columns:92px 18px minmax(0,1fr);gap:13px;position:relative;padding:0 0 18px}.audit-event:not(:last-child)::before{content:"";position:absolute;left:113px;top:17px;bottom:0;width:1px;background:#e6dfd2}
.audit-event-time{text-align:right;padding-top:2px}.audit-event-time strong{display:block;font-size:9px}.audit-event-time span{display:block;font-size:8px;color:#8b8479;margin-top:3px}
.audit-event-marker{width:12px;height:12px;border-radius:50%;margin-top:4px;background:#b8b0a1;border:3px solid #f7f4ed;box-shadow:0 0 0 1px #d8d0c2;z-index:1}.audit-action-created,.audit-action-approved,.audit-action-restored{background:#37916e}.audit-action-updated,.audit-action-settings_updated,.audit-action-submitted{background:#b99336}.audit-action-deleted,.audit-action-rejected,.audit-action-rollback{background:#ba595f}.audit-action-login,.audit-action-logout{background:#6683a1}
.audit-event-body{min-width:0}.audit-event-head{display:flex;justify-content:space-between;gap:12px;align-items:center}.audit-event-head>div{display:flex;gap:8px;align-items:center;min-width:0}.audit-event-head strong{font-size:11px;overflow:hidden;text-overflow:ellipsis}.audit-event-head>span{font-size:8px;color:#8b847a;text-transform:uppercase;font-weight:800}
.audit-action-pill{display:inline-flex;padding:4px 7px;border-radius:999px;background:#f1ede4;color:#6f6036;font-size:7px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}
.audit-event-body>p{margin:6px 0;font-size:9px;color:#665f55;line-height:1.5}.audit-meta{display:flex;gap:10px;flex-wrap:wrap;font-size:8px;color:#8a8378}.audit-meta b{color:#514b42}
.audit-changes{margin-top:8px;border:1px solid #ebe5da;border-radius:9px;background:#fbfaf7}.audit-changes summary{cursor:pointer;padding:8px 10px;font-size:8px;font-weight:850;color:#725c27}.audit-change-list{padding:0 10px 8px}.audit-change-list.compact{padding:7px 0 0}
.audit-change-row{display:grid;grid-template-columns:145px minmax(0,1fr) 18px minmax(0,1fr);gap:7px;align-items:center;padding:6px 0;border-top:1px solid #eee9df;font-size:8px}.audit-change-row strong{font-size:8px}.audit-change-row span{padding:5px 7px;background:#f4f1eb;border-radius:6px;word-break:break-word}.audit-change-row em{text-align:center;font-style:normal;color:#9a7a2c}.audit-detail-link{display:inline-block;margin-top:7px}
.audit-integrity-note{margin-top:12px;padding:11px 13px;border:1px solid #e2d8bd;background:#faf7ee;border-radius:10px;font-size:8px;color:#6e6249}
.audit-detail-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:17px}.audit-event-detail-head{padding-bottom:14px;margin-bottom:3px;border-bottom:1px solid #eee8de}.audit-event-detail-head h2{font-size:19px;margin:8px 0 6px}.audit-event-detail-head p{font-size:9px;color:#746d62;margin:0;line-height:1.5}
.audit-detail-change-list{display:flex;flex-direction:column}.audit-detail-change{display:grid;grid-template-columns:150px minmax(0,1fr) 28px minmax(0,1fr);gap:10px;align-items:center;padding:12px 0;border-bottom:1px solid #eee9df}.audit-detail-change>span{font-size:9px;font-weight:850}.audit-detail-change>div{padding:9px;background:#faf8f3;border-radius:9px}.audit-detail-change small{display:block;font-size:7px;color:#8b847a;margin-bottom:4px}.audit-detail-change strong{font-size:9px;word-break:break-word}.audit-detail-change em{text-align:center;font-style:normal;color:#9a7929;font-weight:900}
.transaction-history-summary{display:grid;grid-template-columns:1.8fr repeat(3,1fr);gap:12px;padding:17px;margin-bottom:15px}.transaction-history-summary>div{padding-right:12px;border-right:1px solid #eee8de}.transaction-history-summary>div:last-child{border-right:0}.transaction-history-summary span{display:block;font-size:8px;color:#817a70;margin-bottom:5px}.transaction-history-summary strong{display:block;font-size:13px}.transaction-history-summary small{display:block;font-size:8px;color:#837c72;margin-top:4px}
code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
@media(max-width:1250px){.audit-filter-grid{grid-template-columns:repeat(3,1fr)}.audit-filter-grid .field-wide{grid-column:span 2}.audit-filter-grid .filter-actions{grid-column:span 1}}
@media(max-width:900px){.audit-detail-grid{grid-template-columns:1fr}.transaction-history-summary{grid-template-columns:1fr 1fr}.audit-kpi-grid{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.audit-filter-grid,.audit-kpi-grid,.transaction-history-summary{grid-template-columns:1fr}.audit-filter-grid .field-wide,.audit-filter-grid .filter-actions{grid-column:auto}.audit-event{grid-template-columns:70px 14px minmax(0,1fr);gap:9px}.audit-event:not(:last-child)::before{left:89px}.audit-event-head{display:block}.audit-event-head>span{display:block;margin-top:5px}.audit-change-row,.audit-detail-change{grid-template-columns:1fr}.audit-change-row em,.audit-detail-change em{transform:rotate(90deg)}.transaction-history-summary>div{border-right:0;border-bottom:1px solid #eee8de;padding-bottom:10px}}


/* =========================================================
   Settings & Master Data v12
   ========================================================= */
.settings-tabs{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:15px;padding:8px;border:1px solid #e4ddd0;background:#fff;border-radius:13px}
.settings-tabs a{font-size:9px;font-weight:850;padding:8px 11px;border-radius:9px;color:#6e675c}
.settings-tabs a:hover{background:#f7f3e9}.settings-tabs a.active{background:#171717;color:#dfbc5b}
.settings-layout{display:grid;grid-template-columns:1.35fr .65fr;gap:17px}
.settings-preview>span{font-size:8px;font-weight:900;color:#967426;text-transform:uppercase;letter-spacing:.07em}.settings-preview h2{font-size:18px;margin:7px 0 4px}.settings-preview>p{font-size:9px;color:#7d766b}.settings-preview>div{margin-top:16px;padding:12px;background:#faf8f2;border-radius:10px}.settings-preview small{display:block;font-size:8px;color:#847d72}.settings-preview strong{display:block;font-size:11px;margin-top:4px}
.settings-control-summary{display:flex;flex-direction:column}.settings-control-summary>div{padding:12px 0;border-bottom:1px solid #eee8de}.settings-control-summary>div:last-child{border-bottom:0}.settings-control-summary span{display:block;font-size:8px;color:#817a70;margin-bottom:5px}.settings-control-summary strong{display:block;font-size:11px;word-break:break-word}.settings-control-summary a{display:inline-block;margin-top:6px}
.master-type{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:8px;font-weight:850}.master-expense{background:#fff0ef;color:#a5464d}.master-income{background:#eaf7ef;color:#227353}.default-master-badge{display:inline-flex;padding:5px 8px;border-radius:999px;background:#f3e9c9;color:#765917;font-size:8px;font-weight:900}
.master-data-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.master-data-card{display:flex;gap:13px;padding:18px;color:#1e1b17;transition:.15s ease}.master-data-card:hover{transform:translateY(-1px);border-color:#ceb675}.master-data-card>span{display:flex;width:38px;height:38px;border-radius:10px;align-items:center;justify-content:center;background:#171717;color:#d9b75c;font-size:12px;font-weight:900;flex:none}.master-data-card h3{font-size:12px;margin:0 0 5px}.master-data-card p{font-size:9px;line-height:1.45;color:#81796e;margin:0 0 8px}.master-data-card strong{font-size:9px;color:#7b6020}.master-data-guidance{margin-top:15px}.master-data-guidance h2{font-size:12px;margin:0 0 5px}.master-data-guidance p{font-size:9px;line-height:1.5;color:#746d62;margin:0}
.master-safety-note{padding:11px 13px;background:#faf7ed;border:1px solid #e6d9b8;border-radius:10px;color:#675c45;font-size:9px;line-height:1.5;margin:0 0 12px}
@media(max-width:1100px){.settings-layout{grid-template-columns:1fr}.master-data-grid{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.master-data-grid{grid-template-columns:1fr}.settings-tabs{overflow-x:auto;flex-wrap:nowrap}.settings-tabs a{white-space:nowrap}}


/* =========================================================
   System Manual v13
   ========================================================= */
.manual-hero{display:grid;grid-template-columns:1.2fr .8fr;gap:18px;align-items:stretch}
.manual-kicker{display:inline-block;font-size:8px;font-weight:900;letter-spacing:.08em;color:#9e7c23;margin-bottom:8px}
.manual-hero h1{font-size:24px;margin:0 0 8px}
.manual-hero p{font-size:10px;color:#6f685e;line-height:1.65;margin:0}
.manual-hero-meta{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
.manual-hero-meta span{padding:7px 9px;background:#faf7ef;border:1px solid #eadfca;border-radius:9px;font-size:8px;color:#554f46}
.manual-hero-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.manual-hero-stats>div{padding:14px;border:1px solid #e8dfcf;border-radius:12px;background:#fbfaf7}
.manual-hero-stats span{display:block;font-size:8px;color:#847d72;margin-bottom:5px}
.manual-hero-stats strong{display:block;font-size:11px;color:#1a1714;word-break:break-word}

.manual-search-card{margin-top:16px}
.manual-search-head{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-bottom:10px}
.manual-search-head h2{font-size:18px;margin:0 0 4px}
.manual-search-head p{font-size:9px;color:#786f63;margin:0}
.manual-search-row{display:flex;gap:10px;align-items:center}
.manual-search-row input{flex:1;padding:13px 14px;border:1px solid #ddd4c3;border-radius:12px;font-size:10px;background:#fff}
.manual-chip-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.manual-chip{appearance:none;border:1px solid #d9ceb6;background:#f7f3e8;color:#655529;font-size:8px;font-weight:850;padding:8px 10px;border-radius:999px;cursor:pointer}
.manual-chip:hover{background:#efe6cf}

.manual-quick-nav{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
.manual-quick-nav a{padding:8px 10px;background:#faf8f2;border:1px solid #e8dfcf;border-radius:10px;font-size:8px;font-weight:850;color:#4f4a42}
.manual-grid{display:flex;flex-direction:column;gap:16px;margin-top:16px}
.manual-section{scroll-margin-top:90px}
.manual-section-head{display:flex;gap:14px;align-items:flex-start;margin-bottom:12px}
.manual-section-head>span{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:12px;background:#171717;color:#d9b75c;font-weight:900;font-size:12px;flex:none}
.manual-section-head h2{font-size:18px;margin:0 0 4px}
.manual-section-head p{margin:0;color:#756d61;font-size:9px}

.manual-callout{padding:12px 14px;border-radius:12px;border:1px solid #ead8b6;background:#fbf6ea;color:#65583d;font-size:9px;line-height:1.6;margin-bottom:12px}
.manual-callout.subtle{background:#faf8f3;border-color:#ece3d4;color:#5d564d}
.manual-note{margin-top:12px;padding:12px 14px;border:1px solid #e6ddcf;border-radius:12px;background:#faf8f2;color:#5f584e;font-size:9px;line-height:1.6}
.manual-mini-links{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.manual-mini-links a{padding:8px 10px;border-radius:10px;background:#171717;color:#f2efe7;font-size:8px;font-weight:850}

.manual-two-col{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.manual-two-col h3,.manual-step h3{font-size:12px;margin:0 0 6px}
.manual-two-col ul,.manual-two-col ol{margin:0;padding-left:18px}
.manual-two-col li{font-size:9px;line-height:1.7;color:#5d564d;margin-bottom:4px}

.manual-flowchart{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:10px 0 14px}
.flow-node{padding:12px 14px;border-radius:12px;background:#faf8f2;border:1px solid #e7dece;font-size:9px;font-weight:850;color:#454039}
.flow-node.small{font-size:8px}
.flow-arrow{font-size:14px;color:#9a7a2c;font-weight:900}

.manual-step-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.manual-step-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.manual-step-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.manual-step{padding:14px;border:1px solid #e7dfd1;border-radius:12px;background:#fff}
.manual-step>span{display:inline-flex;min-width:30px;height:30px;padding:0 10px;align-items:center;justify-content:center;border-radius:999px;background:#171717;color:#d7b55d;font-size:8px;font-weight:900;margin-bottom:10px}
.manual-step p{font-size:9px;color:#665f55;line-height:1.6;margin:0}

.manual-diagram-box{padding:12px;border:1px solid #ece4d7;background:#fbfaf7;border-radius:14px;margin-bottom:12px;overflow:auto}
.manual-svg{min-width:760px;width:100%;height:auto}
.manual-svg rect{fill:#fff;stroke:#d9c8a4;stroke-width:2}
.manual-svg line{stroke:#987629;stroke-width:2}
.manual-svg text{fill:#3f3a33;font-size:16px;font-weight:700;text-anchor:middle}
.manual-svg.wide{min-width:900px}

.manual-faq-list details{border:1px solid #e7dfd1;background:#fff;border-radius:12px;padding:10px 12px;margin-bottom:10px}
.manual-faq-list summary{cursor:pointer;font-size:10px;font-weight:850;color:#312d29}
.manual-faq-list div{padding-top:10px;font-size:9px;color:#665f55;line-height:1.7}

.glossary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.glossary-grid>div{padding:13px;border:1px solid #e7dfd1;border-radius:12px;background:#fff}
.glossary-grid strong{display:block;font-size:10px;margin-bottom:5px}
.glossary-grid span{display:block;font-size:9px;color:#665f55;line-height:1.6}

.manual-footer-card h2{font-size:18px;margin:0 0 8px}
.manual-footer-card p{font-size:9px;line-height:1.7;color:#655d54;margin:0 0 8px}

.manual-filter-active .manual-quick-nav{opacity:.72}

@media(max-width:1100px){
  .manual-hero,.manual-two-col{grid-template-columns:1fr}
  .manual-step-grid,.manual-step-grid.two,.manual-step-grid.three{grid-template-columns:1fr 1fr}
}
@media(max-width:700px){
  .manual-hero-stats,.glossary-grid,.manual-step-grid,.manual-step-grid.two,.manual-step-grid.three{grid-template-columns:1fr}
  .manual-search-head,.manual-search-row{display:block}
  .manual-search-row .btn{margin-top:10px}
}
@media print{
  .sidebar,.topbar,.manual-search-card,.manual-quick-nav,.btn,.manual-mini-links{display:none !important}
  body,.app-shell,.main{background:#fff !important}
  .main{padding:0}
  .card,.manual-section,.manual-footer-card{box-shadow:none;border:1px solid #ddd;break-inside:avoid}
}


/* =========================================================
   System Manual v13.1 Tabbed UI refinement
   ========================================================= */
.manual-hero{display:grid;grid-template-columns:1.1fr .9fr;gap:18px;align-items:stretch}
.manual-hero-copy h1{font-size:22px;line-height:1.2}
.manual-hero-copy p{font-size:11px;line-height:1.7;color:#665f55}
.manual-hero-stats strong{font-size:14px;line-height:1.35}
.manual-search-row input{font-size:12px}
.manual-chip{font-size:9px;padding:9px 12px}
.manual-tabs-shell{margin-top:16px}
.manual-tabs-header{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:14px}
.manual-tabs-header h2{font-size:18px;margin:0 0 4px}
.manual-tabs-header p{font-size:10px;color:#736b60;margin:0}
.manual-search-hint{font-size:10px;color:#8c816f;background:#faf7ef;border:1px solid #e7dece;border-radius:10px;padding:10px 12px;white-space:nowrap}
.manual-tab-nav{display:flex;gap:8px;flex-wrap:wrap;padding-bottom:14px;border-bottom:1px solid #ece4d7;margin-bottom:18px}
.manual-tab-btn{appearance:none;border:1px solid #dccdae;background:#fff;color:#4b443a;font-size:10px;font-weight:850;padding:10px 14px;border-radius:12px;cursor:pointer;transition:all .18s ease}
.manual-tab-btn:hover{background:#fbf6e8;border-color:#d2b06b;color:#6f5111}
.manual-tab-btn.active{background:#171717;border-color:#171717;color:#d8b75d;box-shadow:0 8px 18px rgba(0,0,0,.08)}
.manual-tab-panels{position:relative}
.manual-panel{display:none}
.manual-panel.active{display:block}
.manual-panel .manual-section-head{margin-bottom:18px}
.manual-panel .manual-section-head h2{font-size:22px;line-height:1.25}
.manual-panel .manual-section-head p{font-size:11px}
.manual-panel h3{font-size:15px;line-height:1.35}
.manual-panel p,
.manual-panel li,
.manual-panel td,
.manual-panel th,
.manual-footer-card p{font-size:12px;line-height:1.8}
.manual-panel strong,
.manual-footer-card strong{font-weight:800}
.manual-two-col{gap:22px}
.manual-callout{font-size:11px;line-height:1.8}
.manual-note{font-size:11px;line-height:1.8}
.flow-node{font-size:11px;padding:14px 16px}
.flow-node.small{font-size:10px}
.flow-arrow{font-size:18px}
.manual-step{padding:18px}
.manual-step>span{font-size:10px}
.manual-step p{font-size:11px}
.manual-svg text{font-size:17px}
.glossary-grid strong{font-size:12px}
.glossary-grid span{font-size:11px;line-height:1.7}
.manual-faq-list summary{font-size:12px}
.manual-faq-list div{font-size:11px}
.manual-footer-card h2{font-size:18px}

@media(max-width:1100px){
  .manual-hero,.manual-two-col{grid-template-columns:1fr}
  .manual-search-hint{white-space:normal}
}
@media(max-width:760px){
  .manual-tabs-header{display:block}
  .manual-search-hint{margin-top:10px}
  .manual-panel .manual-section-head h2{font-size:18px}
}


/* =========================================================
   System Manual v13.2 overflow fix
   Replaces SVG process diagrams with flexible HTML flow cards
   ========================================================= */
.manual-panel{overflow:hidden}
.manual-diagram-box{overflow:hidden;padding:20px;border-radius:18px}
.flow-lane{display:flex;align-items:stretch;gap:12px;flex-wrap:wrap}
.flow-lane-roles .flow-card,
.flow-lane-import .flow-card{flex:1 1 170px}
.flow-card{min-height:92px;padding:18px 18px;border:2px solid #d8c092;border-radius:22px;background:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;box-sizing:border-box}
.flow-card.large{min-width:190px;min-height:110px}
.flow-card strong{display:block;font-size:18px;line-height:1.3;color:#2f2a24;word-break:break-word;overflow-wrap:anywhere}
.flow-card span{display:block;margin-top:8px;font-size:12px;line-height:1.55;color:#6d655a;word-break:break-word;overflow-wrap:anywhere}
.flow-connector{display:flex;align-items:center;justify-content:center;align-self:center;min-width:28px;font-size:28px;font-weight:900;color:#9a7420;line-height:1}
.decision-flow{display:flex;flex-direction:column;gap:24px}
.decision-main{display:flex;align-items:center;justify-content:flex-start;gap:14px;flex-wrap:wrap}
.decision-main .flow-card{flex:1 1 220px;max-width:290px}
.decision-branches{display:flex;flex-direction:column;gap:18px;padding-left:24px}
.decision-branch-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.branch-label{min-width:42px;font-size:22px;font-weight:800;line-height:1;color:#3a3328;text-align:center}
.branch-label.yes,.branch-label.no{color:#7f5b12}
.manual-two-col > div{min-width:0}
.manual-two-col li, .manual-two-col p{overflow-wrap:anywhere;word-break:normal}
.manual-footer-card{overflow:hidden}
.manual-footer-card p{overflow-wrap:anywhere}

@media(max-width:1200px){
  .flow-card strong{font-size:16px}
  .branch-label{font-size:18px}
}
@media(max-width:900px){
  .decision-main{flex-direction:column;align-items:stretch}
  .decision-main .flow-card{max-width:none}
  .decision-main .flow-connector{transform:rotate(90deg)}
  .decision-branches{padding-left:0}
  .decision-branch-row{display:grid;grid-template-columns:56px 1fr 28px 1fr;align-items:center}
  .flow-lane{display:grid;grid-template-columns:1fr;gap:10px}
  .flow-lane .flow-connector{transform:rotate(90deg);justify-self:center}
}
@media(max-width:640px){
  .decision-branch-row{grid-template-columns:1fr;gap:10px}
  .decision-branch-row .flow-connector{transform:rotate(90deg);justify-self:center}
  .branch-label{justify-self:start;min-width:0;font-size:16px}
  .flow-card,.flow-card.large{min-width:0;min-height:88px;padding:14px}
  .flow-card strong{font-size:15px}
  .flow-card span{font-size:11px}
}
