:root{font-family:"Franklin Gothic Medium Cond","Franklin Gothic Medium Condensed","Arial Narrow",Arial,sans-serif;color:#172033;background:#f3f6fa}
.language-switch{display:inline-flex;align-items:center;gap:2px;margin-left:auto;padding:3px;border:1px solid #cad6df;border-radius:10px;background:#f4f7f9}
.language-switch a{min-width:34px;padding:6px 8px;border-radius:7px;color:#52697a;font-size:.75rem;font-weight:800;line-height:1;text-align:center;text-decoration:none}
.language-switch a:hover{background:#e4edf2;color:#173b50}
.language-switch a.active{background:#05668d;color:#fff}
*{box-sizing:border-box}body{margin:0}.topbar{min-height:72px;background:#102a43;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:14px 3vw;gap:20px}
.brand{display:block;color:inherit;text-decoration:none;border-radius:12px}.brand:focus-visible{outline:3px solid rgba(15,139,141,.4);outline-offset:5px}.brand strong{display:block;font-size:1.25rem}.brand small{opacity:.75}.nav{display:flex;gap:6px;flex-wrap:wrap}.nav a{color:#fff;text-decoration:none;padding:8px 9px;border-radius:8px}.nav a:hover{background:#1d4b6f}
.company-switch{background:#eaf0f6;padding:10px 3vw;display:flex;justify-content:flex-end}.company-switch label{display:flex;align-items:center;gap:10px}
.container{max-width:1320px;margin:auto;padding:26px 18px;min-height:calc(100vh - 160px)}.footer{text-align:center;color:#66758a;padding:18px}
.card,.metrics article{background:#fff;border:1px solid #dfe7ef;border-radius:14px;box-shadow:0 5px 20px rgba(16,42,67,.06)}.card{padding:22px;margin-bottom:20px}.auth-card{max-width:560px;margin:7vh auto}.form-card{max-width:900px}
.page-head,.section-head{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:20px}.page-head h1,.section-head h2{margin:0}.page-head p{margin:5px 0 0;color:#68778a}
.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px}.metrics-6{grid-template-columns:repeat(6,1fr)}.metrics article{padding:22px}.metrics span{display:block;color:#68778a}.metrics strong{display:block;font-size:2rem;margin-top:6px}.metrics .metric-money{font-size:1.15rem}.metric-alert{border-color:#e3a008!important;background:#fffaf0!important}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:18px}.ticket-overview{align-items:start}form{display:grid;gap:14px}label{display:grid;gap:7px;font-weight:600}
input,select,textarea{font:inherit;padding:10px 11px;border:1px solid #cbd5e1;border-radius:9px;background:#fff}textarea{min-height:100px;resize:vertical}
button,.button{display:inline-block;background:#05668d;color:#fff;border:0;border-radius:9px;padding:10px 15px;font-weight:700;cursor:pointer;text-decoration:none;text-align:center}.button.secondary,button.secondary{background:#5f6f7f}.danger{background:#b42318!important}.small{padding:7px 10px;font-size:.86rem}.button-group{display:flex;gap:8px;flex-wrap:wrap}
.alert,.success{padding:12px;border-radius:9px;margin-bottom:15px}.alert{background:#fff0f0;border:1px solid #efb0b0;color:#8f1d1d}.success{background:#ecfdf3;border:1px solid #9bd8b0;color:#176b35}.muted{color:#68778a}.pre-line{white-space:pre-line}
.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{padding:11px 9px;text-align:left;border-bottom:1px solid #e7edf3;white-space:nowrap;vertical-align:top}th{font-size:.84rem;color:#68778a}.empty{text-align:center;color:#68778a}
.form-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.filter-grid{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:12px;align-items:end}.warehouse-filter{grid-template-columns:2fr 1fr 1fr auto auto}.filter-actions{display:flex;gap:8px}.filter-check{align-self:center}
.inline-form{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin-bottom:18px}.inline-form label{min-width:150px}.inline-form .grow{flex:1}.compact-form{padding:14px;background:#f7f9fc;border:1px solid #e2e8f0;border-radius:12px;margin-bottom:15px}
.badge{display:inline-block;padding:5px 9px;border-radius:999px;font-size:.78rem;font-weight:700;white-space:nowrap}.badge-info{background:#dff3fa;color:#07566f}.badge-success{background:#dff6e7;color:#176b35}.badge-warning{background:#fff1cc;color:#7a4d00}.badge-danger{background:#fee4e2;color:#9b1c15}.badge-muted{background:#e9edf2;color:#52606d}
.details{display:grid;grid-template-columns:145px 1fr;gap:9px;margin:0}.details dt{font-weight:700;color:#52606d}.details dd{margin:0}
.visit-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.visit-card{border:1px solid #dfe7ef;border-radius:12px;padding:15px;display:grid;gap:8px}.visit-card p,.visit-card small{margin:0}
.line-items{display:grid;gap:8px}.line-item{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #e2e8f0;border-radius:10px;padding:10px}.line-item.static{display:block}.line-item strong,.line-item small{display:block}
.file-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.file-card{border:1px solid #dfe7ef;border-radius:12px;padding:10px;display:grid;gap:7px}.file-card img{width:100%;height:145px;object-fit:cover;border-radius:8px}.pdf-icon{height:145px;display:grid;place-items:center;background:#f6e9e8;color:#b42318;font-size:28px;font-weight:800;border-radius:8px}
.summary-box{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:20px}.summary-box div{background:#f7f9fc;border-radius:10px;padding:12px}.summary-box span,.summary-box strong{display:block}.summary-box span{color:#68778a}.summary-box strong{font-size:1.2rem}
.list-stack{display:grid;gap:9px}.list-item{display:grid;gap:3px;padding:11px;border:1px solid #e2e8f0;border-radius:10px;text-decoration:none;color:inherit}.list-item:hover{border-color:#05668d}.list-item small{color:#68778a}.feature-list{line-height:1.9}
.stock-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.stock-cards article{border:1px solid #dfe7ef;border-radius:12px;padding:15px}.stock-cards span,.stock-cards strong{display:block}.stock-cards span{color:#68778a}.stock-cards strong{font-size:1.25rem;margin-top:5px}
.low-stock-row{background:#fff8e8}.qty-positive{color:#176b35;font-weight:700}.qty-negative{color:#b42318;font-weight:700}
.check{display:flex;align-items:center;gap:8px;font-weight:400}.check input{width:auto}
@media(max-width:1180px){.metrics-6{grid-template-columns:repeat(3,1fr)}.warehouse-filter{grid-template-columns:1fr 1fr}.warehouse-filter .filter-actions{grid-column:1/-1}}
@media(max-width:900px){.metrics{grid-template-columns:repeat(2,1fr)}.grid-2{grid-template-columns:1fr}.topbar{align-items:flex-start;flex-direction:column}.filter-grid{grid-template-columns:1fr 1fr}.filter-actions{grid-column:1/-1}.file-gallery{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.metrics,.metrics-6{grid-template-columns:1fr}.form-grid-2,.form-grid-3,.stock-cards{grid-template-columns:1fr}.visit-cards,.file-gallery{grid-template-columns:1fr}.filter-grid,.warehouse-filter{grid-template-columns:1fr}.page-head{align-items:flex-start;flex-direction:column}.inline-form{align-items:stretch}.inline-form label{min-width:0}.summary-box{grid-template-columns:1fr}}

.sales-actions{display:flex;gap:8px;flex-wrap:wrap}
.sales-status-draft{background:#fff1cc;color:#7a4d00}
.sales-status-sent{background:#dff3fa;color:#07566f}
.sales-status-accepted,.sales-status-confirmed,.sales-status-completed{background:#dff6e7;color:#176b35}
.sales-status-rejected,.sales-status-cancelled{background:#fee4e2;color:#9b1c15}
.sales-status-expired{background:#e9edf2;color:#52606d}
.document-summary{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:16px}
.document-summary div{background:#f7f9fc;border-radius:10px;padding:12px}
.document-summary span,.document-summary strong{display:block}
.document-summary span{font-size:.82rem;color:#68778a}
.document-summary strong{font-size:1.05rem;margin-top:4px}
.document-lines input,.document-lines select{min-width:95px}
.document-lines .description-input{min-width:280px}
.document-lines .number-input{width:110px}
.print-note{white-space:pre-line}
@media(max-width:800px){.document-summary{grid-template-columns:1fr 1fr}}
@media(max-width:500px){.document-summary{grid-template-columns:1fr}}

.finance-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}
.finance-tabs a{padding:9px 13px;border-radius:9px;background:#eaf0f6;color:#102a43;text-decoration:none;font-weight:700}
.finance-tabs a.active{background:#05668d;color:#fff}
.amount-positive{color:#176b35;font-weight:700}
.amount-negative{color:#b42318;font-weight:700}
.overdue-row{background:#fff0f0}
.finance-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:16px}
.finance-summary div{background:#f7f9fc;border-radius:10px;padding:12px}
.finance-summary span,.finance-summary strong{display:block}
.finance-summary span{font-size:.82rem;color:#68778a}
.finance-summary strong{font-size:1.08rem;margin-top:4px}
.inline-action{display:inline-block;margin:0}
.inline-action button{width:auto}
.finance-note{padding:12px;border-left:4px solid #05668d;background:#f2f9fc;border-radius:8px}
@media(max-width:900px){.finance-summary{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.finance-summary{grid-template-columns:1fr}}

.fleet-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.fleet-card{border:1px solid #dfe7ef;border-radius:14px;padding:16px;background:#fff;display:grid;gap:8px}
.fleet-card h3,.fleet-card p{margin:0}.fleet-card small{color:#68778a}
.registration-badge{display:inline-block;padding:7px 11px;border:2px solid #172033;border-radius:6px;background:#fff;font-weight:800;letter-spacing:.08em}
.expiry-list{display:grid;gap:9px}.expiry-item{display:flex;justify-content:space-between;gap:12px;align-items:center;border:1px solid #e2e8f0;border-radius:10px;padding:11px}
.vehicle-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.vehicle-summary div{background:#f7f9fc;border-radius:10px;padding:12px}
.vehicle-summary span,.vehicle-summary strong{display:block}
.vehicle-summary span{font-size:.82rem;color:#68778a}.vehicle-summary strong{margin-top:4px}
.fleet-photo{width:100%;max-height:280px;object-fit:cover;border-radius:12px;border:1px solid #dfe7ef}
@media(max-width:1050px){.fleet-card-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:750px){.fleet-card-grid{grid-template-columns:1fr}.vehicle-summary{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.vehicle-summary{grid-template-columns:1fr}}

.hr-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.hr-card{border:1px solid #dfe7ef;border-radius:14px;padding:16px;background:#fff;display:grid;gap:8px}
.hr-card h3,.hr-card p{margin:0}.hr-card small{color:#68778a}
.employee-avatar{width:86px;height:86px;border-radius:50%;object-fit:cover;border:1px solid #dfe7ef;background:#eef3f7}
.employee-avatar-placeholder{width:86px;height:86px;border-radius:50%;display:grid;place-items:center;background:#eaf0f6;font-size:1.6rem;font-weight:800}
.leave-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.calendar-head{font-weight:800;text-align:center;padding:8px;color:#52606d}
.calendar-day{min-height:105px;border:1px solid #dfe7ef;border-radius:10px;padding:7px;background:#fff}
.calendar-day.other-month{opacity:.45;background:#f5f7fa}
.calendar-date{font-weight:800;margin-bottom:5px}
.calendar-event{display:block;padding:4px 6px;border-radius:6px;background:#dff3fa;color:#07566f;font-size:.74rem;margin-top:4px;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.employee-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.employee-summary div{background:#f7f9fc;border-radius:10px;padding:12px}
.employee-summary span,.employee-summary strong{display:block}
.employee-summary span{font-size:.82rem;color:#68778a}.employee-summary strong{margin-top:4px}
.leave-balance{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.leave-balance article{border:1px solid #dfe7ef;border-radius:10px;padding:12px}
@media(max-width:1050px){.hr-card-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:800px){.leave-calendar{grid-template-columns:repeat(7,minmax(95px,1fr));overflow:auto}.employee-summary{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.hr-card-grid{grid-template-columns:1fr}.leave-balance{grid-template-columns:1fr}.employee-summary{grid-template-columns:1fr}}

.procurement-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}
.procurement-tabs a{padding:9px 13px;border-radius:9px;background:#eaf0f6;color:#102a43;text-decoration:none;font-weight:700}
.procurement-tabs a.active{background:#05668d;color:#fff}
.procurement-summary{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:16px}
.procurement-summary div{background:#f7f9fc;border-radius:10px;padding:12px}
.procurement-summary span,.procurement-summary strong{display:block}
.procurement-summary span{font-size:.82rem;color:#68778a}
.procurement-summary strong{margin-top:4px}
.receipt-line{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:10px;align-items:end;padding:12px;border:1px solid #dfe7ef;border-radius:10px}
.receipt-progress{height:8px;border-radius:999px;background:#e6edf3;overflow:hidden}
.receipt-progress span{display:block;height:100%;background:#05668d}
.procurement-warning{padding:12px;border-left:4px solid #d48a00;background:#fff8e8;border-radius:8px}
@media(max-width:900px){.procurement-summary{grid-template-columns:1fr 1fr}.receipt-line{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.procurement-summary{grid-template-columns:1fr}.receipt-line{grid-template-columns:1fr}}

.crm-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}
.crm-tabs a{padding:9px 13px;border-radius:9px;background:#eaf0f6;color:#102a43;text-decoration:none;font-weight:700}
.crm-tabs a.active{background:#05668d;color:#fff}
.pipeline{display:grid;grid-template-columns:repeat(6,minmax(230px,1fr));gap:12px;overflow:auto;padding-bottom:8px}
.pipeline-column{background:#eef3f7;border-radius:14px;padding:12px;min-height:280px}
.pipeline-column h3{display:flex;justify-content:space-between;gap:8px;margin:0 0 10px}
.pipeline-card{background:#fff;border:1px solid #dfe7ef;border-radius:11px;padding:12px;margin-bottom:9px;display:grid;gap:6px}
.pipeline-card a{text-decoration:none;color:inherit}.pipeline-card small{color:#68778a}
.lead-rating-hot{background:#fee4e2;color:#9b1c15}
.lead-rating-warm{background:#fff1cc;color:#7a4d00}
.lead-rating-cold{background:#dff3fa;color:#07566f}
.crm-summary{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:16px}
.crm-summary div{background:#f7f9fc;border-radius:10px;padding:12px}
.crm-summary span,.crm-summary strong{display:block}
.crm-summary span{font-size:.82rem;color:#68778a}
.crm-summary strong{margin-top:4px}
.activity-timeline{display:grid;gap:10px}
.activity-entry{display:grid;grid-template-columns:105px 1fr auto;gap:12px;border-left:4px solid #05668d;background:#f7f9fc;padding:12px;border-radius:8px}
.activity-entry.overdue{border-left-color:#b42318;background:#fff0f0}
.activity-entry small{color:#68778a}
.crm-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.crm-calendar-day{min-height:110px;border:1px solid #dfe7ef;border-radius:10px;padding:7px;background:#fff}
.crm-calendar-day.other-month{opacity:.45;background:#f5f7fa}
.crm-event{display:block;padding:4px 6px;border-radius:6px;background:#dff3fa;color:#07566f;font-size:.72rem;margin-top:4px;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:900px){.crm-summary{grid-template-columns:1fr 1fr}.activity-entry{grid-template-columns:1fr}}
@media(max-width:800px){.crm-calendar{grid-template-columns:repeat(7,minmax(100px,1fr));overflow:auto}}
@media(max-width:520px){.crm-summary{grid-template-columns:1fr}}

.notification-toolbar{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.notification-list{display:grid;gap:10px}
.notification-item{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:start;border:1px solid #dfe7ef;border-radius:12px;padding:14px;background:#fff}
.notification-item.unread{border-left:5px solid #05668d;background:#f8fcfe}
.notification-item.danger{border-left-color:#b42318}
.notification-item.warning{border-left-color:#d48a00}
.notification-icon{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#eaf0f6;font-weight:800}
.notification-item h3,.notification-item p{margin:0}
.notification-item p{margin-top:5px;color:#52606d}
.notification-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px;font-size:.82rem;color:#68778a}
.notification-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.rule-grid{display:grid;gap:10px}
.rule-row{display:grid;grid-template-columns:1.8fr .8fr .7fr .7fr .8fr;gap:10px;align-items:center;border:1px solid #dfe7ef;border-radius:10px;padding:12px}
.rule-row small{color:#68778a}
.cron-box{background:#102a43;color:#fff;border-radius:10px;padding:14px;overflow:auto}
.cron-box code{color:#fff;white-space:pre-wrap}
.notification-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:18px}
.notification-summary article{background:#fff;border:1px solid #dfe7ef;border-radius:12px;padding:14px}
.notification-summary span,.notification-summary strong{display:block}
.notification-summary span{font-size:.82rem;color:#68778a}
.notification-summary strong{font-size:1.3rem;margin-top:4px}
@media(max-width:900px){.rule-row{grid-template-columns:1fr 1fr}.notification-item{grid-template-columns:auto 1fr}.notification-actions{grid-column:1/-1;justify-content:flex-start}.notification-summary{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.rule-row{grid-template-columns:1fr}.notification-summary{grid-template-columns:1fr}}

.diagnostic-row{grid-template-columns:1.2fr .7fr 2.5fr}
.diagnostic-detail{font-size:.9rem;color:#52606d}
.diagnostic-pre{white-space:pre-wrap;max-width:620px;margin:0;font-size:.78rem}
@media(max-width:900px){.diagnostic-row{grid-template-columns:1fr}}

.project-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}
.project-tabs a{padding:9px 13px;border-radius:9px;background:#eaf0f6;color:#102a43;text-decoration:none;font-weight:700}
.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.project-card{background:#fff;border:1px solid #dfe7ef;border-radius:14px;padding:16px;display:grid;gap:9px}
.project-card h3,.project-card p{margin:0}.project-card small{color:#68778a}
.progress-track{height:10px;border-radius:999px;background:#e6edf3;overflow:hidden}
.progress-track span{display:block;height:100%;background:#05668d}
.project-summary{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}
.project-summary div{background:#f7f9fc;border-radius:10px;padding:12px}
.project-summary span,.project-summary strong{display:block}
.project-summary span{font-size:.82rem;color:#68778a}
.project-summary strong{margin-top:4px}
.project-board{display:grid;grid-template-columns:repeat(6,minmax(240px,1fr));gap:12px;overflow:auto;padding-bottom:8px}
.project-board-column{background:#eef3f7;border-radius:14px;padding:12px;min-height:320px}
.project-board-column h3{display:flex;justify-content:space-between;gap:8px;margin:0 0 10px}
.task-card{background:#fff;border:1px solid #dfe7ef;border-radius:11px;padding:12px;margin-bottom:9px;display:grid;gap:6px}
.task-card a{text-decoration:none;color:inherit}.task-card small{color:#68778a}
.task-overdue{border-left:5px solid #b42318}
.milestone-list{display:grid;gap:9px}
.milestone-item{display:grid;grid-template-columns:1fr auto;gap:10px;border:1px solid #dfe7ef;border-radius:10px;padding:12px}
.project-timeline{display:grid;gap:10px}
.project-timeline-entry{display:grid;grid-template-columns:110px 1fr auto;gap:12px;border-left:4px solid #05668d;background:#f7f9fc;padding:12px;border-radius:8px}
.project-timeline-entry.overdue{border-left-color:#b42318;background:#fff0f0}
.project-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.project-calendar-day{min-height:115px;border:1px solid #dfe7ef;border-radius:10px;padding:7px;background:#fff}
.project-calendar-day.other-month{opacity:.45;background:#f5f7fa}
.project-calendar-event{display:block;padding:4px 6px;border-radius:6px;background:#dff3fa;color:#07566f;font-size:.72rem;margin-top:4px;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.project-calendar-event.milestone{background:#fff1cc;color:#7a4d00}
.time-entry{display:grid;grid-template-columns:110px 90px 1fr auto;gap:10px;align-items:center;padding:10px;border-bottom:1px solid #e5ebf1}
@media(max-width:1050px){.project-grid{grid-template-columns:repeat(2,1fr)}.project-summary{grid-template-columns:1fr 1fr}}
@media(max-width:800px){.project-calendar{grid-template-columns:repeat(7,minmax(100px,1fr));overflow:auto}.project-timeline-entry,.time-entry{grid-template-columns:1fr}}
@media(max-width:650px){.project-grid{grid-template-columns:1fr}.project-summary{grid-template-columns:1fr}}

.management-nav{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}
.management-nav a{padding:9px 13px;border-radius:9px;background:#eaf0f6;color:#102a43;text-decoration:none;font-weight:700}
.executive-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}
.executive-metric{background:#fff;border:1px solid #dfe7ef;border-radius:14px;padding:16px;display:grid;gap:6px}
.executive-metric span{color:#68778a;font-size:.86rem}
.executive-metric strong{font-size:1.55rem;line-height:1.1}
.executive-metric small{color:#68778a}
.executive-metric.alert-metric{border-left:5px solid #b42318}
.kpi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.kpi-card{border:1px solid #dfe7ef;border-radius:12px;padding:14px;background:#fff;display:grid;gap:8px}
.kpi-card-head{display:flex;justify-content:space-between;gap:10px;align-items:center}
.kpi-track{height:10px;border-radius:999px;background:#e6edf3;overflow:hidden}
.kpi-track span{display:block;height:100%;background:#05668d}
.analytics-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:16px}
.analytics-bars{display:grid;gap:10px}
.analytics-bar-row{display:grid;grid-template-columns:85px 1fr 120px;gap:10px;align-items:center}
.analytics-bar-track{height:16px;border-radius:999px;background:#e6edf3;overflow:hidden;position:relative}
.analytics-bar-track span{display:block;height:100%;background:#05668d}
.analytics-bar-track.expense span{background:#9a6700}
.analytics-bar-track.collection span{background:#147d64}
.analytics-alerts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.analytics-alert{display:block;text-decoration:none;color:inherit;border:1px solid #dfe7ef;border-radius:12px;padding:14px;background:#fff}
.analytics-alert strong,.analytics-alert span{display:block}
.analytics-alert strong{font-size:1.45rem;margin-bottom:5px}
.analytics-alert.danger{border-left:5px solid #b42318}
.analytics-alert.warning{border-left:5px solid #b54708}
.analytics-alert.ok{border-left:5px solid #147d64}
.funnel-list{display:grid;gap:8px}
.funnel-row{display:grid;grid-template-columns:140px 1fr 90px;gap:10px;align-items:center}
.funnel-track{height:20px;border-radius:6px;background:#e6edf3;overflow:hidden}
.funnel-track span{display:block;height:100%;background:#376996}
.analytics-table td.money,.analytics-table th.money{text-align:right;white-space:nowrap}
.analytics-table tr.highlight{background:#fff4e5}
.analytics-period{display:flex;gap:10px;align-items:end;flex-wrap:wrap}
.analytics-period label{min-width:170px}
.analytics-print-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:12px 0}
.permission-editor{margin-top:18px}
.permission-editor .muted{margin:0 0 12px}
.permission-table-wrap{max-height:520px;overflow:auto;border:1px solid #dfe7ef;border-radius:12px}
.permission-table{margin:0}
.permission-table thead th{position:sticky;top:0;z-index:2;background:#f5f8fb}
.permission-table td:first-child{width:38%}
.permission-table select{min-width:145px;margin:0}
.permission-table tr:has(option[value="deny"]:checked){background:#fff5f5}
.permission-table tr:has(option[value="allow"]:checked){background:#f2fbf7}
@media(max-width:720px){
  .permission-table td,.permission-table th{padding:8px}
  .permission-table select{min-width:120px}
}
.analytics-print-summary div{border:1px solid #999;padding:8px}
.analytics-print-summary span,.analytics-print-summary strong{display:block}
@media(max-width:1100px){.executive-metrics{grid-template-columns:repeat(2,1fr)}.analytics-grid{grid-template-columns:1fr}.kpi-grid{grid-template-columns:repeat(2,1fr)}.analytics-alerts{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.executive-metrics,.kpi-grid,.analytics-alerts{grid-template-columns:1fr}.analytics-bar-row,.funnel-row{grid-template-columns:1fr}.analytics-bar-row strong{text-align:left}}

.contract-nav{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}
.contract-nav a{padding:9px 13px;border-radius:9px;background:#eaf0f6;color:#102a43;text-decoration:none;font-weight:700}
.contract-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.contract-card{background:#fff;border:1px solid #dfe7ef;border-radius:14px;padding:16px;display:grid;gap:9px}
.contract-card h3,.contract-card p{margin:0}.contract-card small{color:#68778a}
.contract-card.expiring{border-left:5px solid #b54708}.contract-card.expired{border-left:5px solid #b42318}
.contract-summary{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}
.contract-summary div{background:#f7f9fc;border-radius:10px;padding:12px}.contract-summary span,.contract-summary strong{display:block}.contract-summary span{font-size:.82rem;color:#68778a}.contract-summary strong{margin-top:4px}
.contract-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.contract-calendar-day{min-height:120px;border:1px solid #dfe7ef;border-radius:10px;padding:7px;background:#fff}.contract-calendar-day.other-month{opacity:.45;background:#f5f7fa}
.contract-calendar-event{display:block;padding:4px 6px;border-radius:6px;background:#dff3fa;color:#07566f;font-size:.72rem;margin-top:4px;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.contract-calendar-event.notice{background:#fff1cc;color:#7a4d00}.contract-calendar-event.expiry{background:#ffe1e1;color:#8b1d1d}
.contract-approval{display:grid;grid-template-columns:1fr 160px 150px;gap:10px;align-items:center;padding:12px;border:1px solid #dfe7ef;border-radius:10px;margin-bottom:8px}
.contract-file{display:grid;grid-template-columns:1fr 120px 130px auto;gap:10px;align-items:center;padding:11px;border-bottom:1px solid #e5ebf1}
.contract-file small{display:block;color:#68778a}
.contract-amendment{border-left:4px solid #05668d;background:#f7f9fc;padding:12px;border-radius:8px;margin-bottom:9px}
@media(max-width:1050px){.contract-grid{grid-template-columns:repeat(2,1fr)}.contract-summary{grid-template-columns:repeat(3,1fr)}}
@media(max-width:800px){.contract-calendar{grid-template-columns:repeat(7,minmax(100px,1fr));overflow:auto}.contract-approval,.contract-file{grid-template-columns:1fr}}
@media(max-width:650px){.contract-grid{grid-template-columns:1fr}.contract-summary{grid-template-columns:1fr}}

.machine-nav{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}
.machine-nav a{padding:9px 13px;border-radius:9px;background:#eaf0f6;color:#102a43;text-decoration:none;font-weight:700}
.machine-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.machine-card{background:#fff;border:1px solid #dfe7ef;border-radius:14px;padding:16px;display:grid;gap:9px}
.machine-card h3,.machine-card p{margin:0}.machine-card small{color:#68778a}
.machine-summary{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}
.machine-summary div{background:#f7f9fc;border-radius:10px;padding:12px}
.machine-summary span,.machine-summary strong{display:block}
.machine-summary span{font-size:.82rem;color:#68778a}.machine-summary strong{margin-top:4px}
.maintenance-list{display:grid;gap:10px}
.maintenance-row{border:1px solid #dfe7ef;border-radius:11px;padding:12px;display:grid;grid-template-columns:1.3fr 1fr 1fr auto;gap:10px;align-items:center}
.maintenance-row.overdue{border-left:5px solid #b42318;background:#fff5f5}
.maintenance-row.upcoming{border-left:5px solid #b54708;background:#fffaf0}
.machine-timeline{display:grid;gap:8px}
.machine-timeline-item{display:grid;grid-template-columns:120px 1fr 130px 120px;gap:10px;padding:10px;border-bottom:1px solid #e5ebf1}
.machine-component-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.machine-component{border:1px solid #dfe7ef;border-radius:11px;padding:12px;background:#fff;display:grid;gap:5px}
.machine-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.machine-calendar-day{min-height:115px;border:1px solid #dfe7ef;border-radius:10px;padding:7px;background:#fff}
.machine-calendar-day.other-month{opacity:.45;background:#f5f7fa}
.machine-calendar-event{display:block;padding:4px 6px;border-radius:6px;background:#dff3fa;color:#07566f;font-size:.72rem;margin-top:4px;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.machine-calendar-event.warranty{background:#fff1cc;color:#7a4d00}
.machine-calendar-event.document{background:#f0e5ff;color:#57257f}
.machine-calendar-event.component{background:#ffe8e8;color:#8d1b1b}
@media(max-width:1100px){.machine-grid{grid-template-columns:repeat(2,1fr)}.machine-summary{grid-template-columns:repeat(3,1fr)}.machine-component-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:800px){.maintenance-row,.machine-timeline-item{grid-template-columns:1fr}.machine-calendar{grid-template-columns:repeat(7,minmax(100px,1fr));overflow:auto}.machine-summary{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.machine-grid,.machine-component-grid{grid-template-columns:1fr}.machine-summary{grid-template-columns:1fr}}

/* Light Corporate UI · v4.3.2 */
:root{
  --corporate-navy:#16324f;
  --corporate-blue:#1f5f85;
  --corporate-teal:#0f8b8d;
  --corporate-canvas:#f5f7fb;
  --corporate-line:#e3e9f0;
  --corporate-muted:#6b7a8c;
  color:#1c2b3a;
  background:var(--corporate-canvas)
}
body{background:linear-gradient(180deg,#f8fafc 0,#f4f7fb 330px)}
.topbar{
  min-height:82px;
  background:rgba(255,255,255,.98);
  color:var(--corporate-navy);
  border-bottom:1px solid var(--corporate-line);
  box-shadow:0 3px 18px rgba(22,50,79,.06);
  position:relative;
  z-index:2
}
.brand strong{color:var(--corporate-navy);letter-spacing:-.02em}
.brand strong:before{
  content:"A";
  display:inline-grid;
  place-items:center;
  width:34px;height:34px;
  margin-right:10px;
  border-radius:10px;
  background:linear-gradient(135deg,var(--corporate-navy),var(--corporate-teal));
  color:#fff;
  font-size:1rem;
  vertical-align:middle
}
.brand small{color:#7b8998;margin-left:48px}
.nav{align-items:center}
.nav a{color:#536476;padding:10px 11px;font-size:.88rem;font-weight:650}
.nav a:hover{background:#eef5f7;color:var(--corporate-navy)}
.nav a.active{background:#e7f4f4;color:#087577;box-shadow:inset 0 -2px 0 var(--corporate-teal)}
.company-switch{background:#fff;border-bottom:1px solid #edf1f5;padding:9px 3vw}
.company-switch label{color:#637386;font-size:.82rem}
.company-switch select{padding:7px 32px 7px 10px;border-color:#dce4ec}
.container{max-width:1440px;padding:30px 28px 44px}
.page-head{margin-bottom:24px}
.page-head h1{font-size:1.85rem;letter-spacing:-.025em;color:var(--corporate-navy)}
.page-head p{color:var(--corporate-muted);font-size:.96rem}
.module-hero{
  background:linear-gradient(120deg,#fff 35%,#eef8f8);
  border:1px solid var(--corporate-line);
  border-radius:18px;
  padding:24px 26px;
  box-shadow:0 8px 28px rgba(22,50,79,.055)
}
.card,.metrics article{
  border-color:var(--corporate-line);
  border-radius:16px;
  box-shadow:0 7px 24px rgba(22,50,79,.055)
}
.card h2{color:var(--corporate-navy);font-size:1.08rem;letter-spacing:-.01em}
.corporate-metrics article{position:relative;overflow:hidden;padding:20px 18px}
.corporate-metrics article:before{
  content:"";
  position:absolute;left:0;top:0;bottom:0;width:4px;
  background:linear-gradient(180deg,var(--corporate-teal),#56b7b3)
}
.corporate-metrics span{font-size:.82rem;font-weight:650}
.corporate-metrics strong{color:var(--corporate-navy);font-size:1.75rem}
.corporate-metrics small{display:block;margin-top:8px;color:#8a97a5;font-size:.73rem}
.corporate-metrics .metric-alert:before{background:#d99a24}
button,.button{background:var(--corporate-teal);border-radius:10px;box-shadow:0 4px 12px rgba(15,139,141,.16)}
.button:hover,button:hover{filter:brightness(.94);transform:translateY(-1px)}
.button.secondary,button.secondary{background:#eef2f6;color:#405466;box-shadow:none}
.crm-tabs{gap:10px;margin:0 0 20px;padding:4px 0}
.crm-tabs a{background:#fff;color:#516274;border:1px solid var(--corporate-line);border-radius:10px;font-size:.86rem}
.crm-tabs a:hover{border-color:#9bcacc;color:#087577;background:#f5fbfb}
.list-item{border-color:#e8edf2;padding:13px 14px;transition:.16s ease}
.list-item:hover{border-color:#86bfc1;background:#f8fcfc;transform:translateY(-1px)}
.activity-entry{transition:.16s ease}
.activity-entry:hover{background:#f7fbfb}
table tbody tr:hover{background:#f7fafc}
th{color:#728092;text-transform:uppercase;letter-spacing:.035em;font-size:.72rem}
.footer{color:#8995a3}
@media(max-width:1100px){.topbar{align-items:flex-start;flex-direction:column}.nav{width:100%}}
@media(max-width:700px){
  .container{padding:20px 14px 34px}
  .module-hero{padding:20px;align-items:stretch}
  .page-head h1{font-size:1.5rem}
  .brand small{margin-left:0}
}

.installation-nav{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}
.installation-nav a{padding:9px 13px;border-radius:9px;background:#eaf0f6;color:#102a43;text-decoration:none;font-weight:700}
.installation-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.installation-card{background:#fff;border:1px solid #dfe7ef;border-radius:14px;padding:16px;display:grid;gap:9px}
.installation-card h3,.installation-card p{margin:0}.installation-card small{color:#68778a}
.installation-card.overdue{border-left:5px solid #b42318}
.installation-summary{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}
.installation-summary div{background:#f7f9fc;border-radius:10px;padding:12px}
.installation-summary span,.installation-summary strong{display:block}
.installation-summary span{font-size:.82rem;color:#68778a}.installation-summary strong{margin-top:4px}
.installation-board{display:grid;grid-template-columns:repeat(11,minmax(230px,1fr));gap:12px;overflow:auto;padding-bottom:8px}
.installation-column{background:#eef3f7;border-radius:14px;padding:12px;min-height:300px}
.installation-column h3{display:flex;justify-content:space-between;gap:8px;margin:0 0 10px}
.installation-board-card{display:grid;gap:6px;background:#fff;border:1px solid #dfe7ef;border-radius:10px;padding:11px;margin-bottom:9px;text-decoration:none;color:inherit}
.installation-board-card.overdue{border-left:5px solid #b42318}
.installation-checklist{display:grid;gap:8px}
.installation-check-row{display:grid;grid-template-columns:1.4fr 170px 1fr auto;gap:10px;align-items:end;border:1px solid #e1e8ef;border-radius:10px;padding:10px}
.installation-check-row.failed{background:#fff0f0}.installation-check-row.done{background:#edfdf3}
.installation-team{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.installation-team-card{border:1px solid #dfe7ef;border-radius:10px;padding:11px;background:#fff}
.installation-timeline{display:grid;gap:8px}
.installation-timeline-item{display:grid;grid-template-columns:120px 1fr 150px;gap:10px;padding:10px;border-bottom:1px solid #e5ebf1}
.installation-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.installation-calendar-day{min-height:115px;border:1px solid #dfe7ef;border-radius:10px;padding:7px;background:#fff}
.installation-calendar-day.other-month{opacity:.45;background:#f5f7fa}
.installation-calendar-event{display:block;padding:4px 6px;border-radius:6px;background:#dff3fa;color:#07566f;font-size:.72rem;margin-top:4px;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.installation-calendar-event.end{background:#fff1cc;color:#7a4d00}
@media(max-width:1100px){.installation-grid{grid-template-columns:repeat(2,1fr)}.installation-summary{grid-template-columns:repeat(3,1fr)}.installation-team{grid-template-columns:repeat(2,1fr)}}
@media(max-width:800px){.installation-check-row,.installation-timeline-item{grid-template-columns:1fr}.installation-calendar{grid-template-columns:repeat(7,minmax(100px,1fr));overflow:auto}.installation-summary{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.installation-grid,.installation-team{grid-template-columns:1fr}.installation-summary{grid-template-columns:1fr}}

.portal-body{background:#eef3f7;min-height:100vh}
.portal-topbar{background:#102a43;color:#fff;padding:14px max(18px,calc((100vw - 1180px)/2));display:flex;justify-content:space-between;align-items:center;gap:16px}
.portal-topbar strong,.portal-topbar small{display:block}
.portal-topbar small{opacity:.75;margin-top:2px}
.portal-topbar nav{display:flex;gap:12px;flex-wrap:wrap}
.portal-topbar nav a{color:#fff;text-decoration:none;font-weight:700}
.portal-shell{max-width:1180px;margin:22px auto;padding:0 16px 40px}
.portal-footer{text-align:center;color:#68778a;padding:20px}
.portal-login{max-width:520px;margin:55px auto;background:#fff;border:1px solid #dfe7ef;border-radius:16px;padding:26px;box-shadow:0 12px 35px rgba(16,42,67,.08)}
.portal-welcome{background:linear-gradient(135deg,#102a43,#05668d);color:#fff;border-radius:16px;padding:24px;margin-bottom:16px}
.portal-welcome h1,.portal-welcome p{margin:0}.portal-welcome p{margin-top:7px;opacity:.85}
.portal-metrics{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:16px}
.portal-metric{background:#fff;border:1px solid #dfe7ef;border-radius:13px;padding:15px}
.portal-metric span,.portal-metric strong{display:block}
.portal-metric span{font-size:.82rem;color:#68778a}
.portal-metric strong{font-size:1.5rem;margin-top:5px}
.portal-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:16px}
.portal-list{display:grid;gap:9px}
.portal-item{display:grid;grid-template-columns:1fr auto;gap:12px;padding:12px;border:1px solid #dfe7ef;border-radius:11px;text-decoration:none;color:inherit;background:#fff}
.portal-item strong,.portal-item small{display:block}
.portal-item small{color:#68778a;margin-top:3px}
.portal-message{border:1px solid #dfe7ef;border-radius:12px;padding:13px;background:#fff;margin-bottom:10px}
.portal-message.customer{border-left:5px solid #05668d}
.portal-message.staff{border-left:5px solid #147d64;background:#f3fbf8}
.portal-message-head{display:flex;justify-content:space-between;gap:10px;margin-bottom:7px}
.portal-file-list{display:grid;gap:7px}
.portal-file{display:flex;justify-content:space-between;gap:10px;padding:10px;border-radius:9px;background:#f7f9fc;text-decoration:none;color:inherit}
.portal-admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.portal-user-card{border:1px solid #dfe7ef;border-radius:12px;padding:13px;margin-bottom:9px;background:#fff}
.portal-user-card form{margin-top:10px}
@media(max-width:950px){.portal-metrics{grid-template-columns:repeat(2,1fr)}.portal-grid,.portal-admin-grid{grid-template-columns:1fr}}
@media(max-width:560px){.portal-metrics{grid-template-columns:1fr}.portal-topbar{align-items:flex-start;flex-direction:column}.portal-item{grid-template-columns:1fr}}

.claim-nav{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}
.claim-nav a{padding:9px 13px;border-radius:9px;background:#eaf0f6;color:#102a43;text-decoration:none;font-weight:700}
.claim-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.claim-card{background:#fff;border:1px solid #dfe7ef;border-radius:14px;padding:16px;display:grid;gap:8px}
.claim-card h3,.claim-card p{margin:0}.claim-card small{color:#68778a}
.claim-summary{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}
.claim-summary div{background:#f7f9fc;border-radius:10px;padding:12px}
.claim-summary span,.claim-summary strong{display:block}
.claim-summary span{font-size:.82rem;color:#68778a}.claim-summary strong{margin-top:4px}
.claim-timeline{display:grid;gap:9px}
.claim-event{border:1px solid #dfe7ef;border-radius:11px;padding:12px;background:#fff}
.claim-event.portal{border-left:5px solid #05668d}
.claim-event.staff{border-left:5px solid #147d64;background:#f3fbf8}
.claim-event-head{display:flex;justify-content:space-between;gap:10px;margin-bottom:7px}
.claim-parts{display:grid;gap:9px}
.claim-part{display:grid;grid-template-columns:1.5fr .7fr .8fr .8fr .8fr auto;gap:10px;align-items:center;border:1px solid #dfe7ef;border-radius:10px;padding:10px}
.claim-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.claim-calendar-day{min-height:110px;border:1px solid #dfe7ef;border-radius:10px;padding:7px;background:#fff}
.claim-calendar-day.other-month{opacity:.45;background:#f5f7fa}
.claim-calendar-event{display:block;padding:4px 6px;border-radius:6px;background:#fff1cc;color:#7a4d00;font-size:.72rem;margin-top:4px;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.claim-calendar-event.overdue{background:#ffe8e8;color:#8d1b1b}
.claim-finance{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.claim-finance div{border:1px solid #dfe7ef;border-radius:10px;padding:12px}
.claim-finance span,.claim-finance strong{display:block}
@media(max-width:1100px){.claim-grid{grid-template-columns:repeat(2,1fr)}.claim-summary{grid-template-columns:repeat(3,1fr)}.claim-finance{grid-template-columns:repeat(2,1fr)}}
@media(max-width:800px){.claim-part{grid-template-columns:1fr}.claim-calendar{grid-template-columns:repeat(7,minmax(100px,1fr));overflow:auto}}
@media(max-width:650px){.claim-grid{grid-template-columns:1fr}.claim-summary,.claim-finance{grid-template-columns:1fr}}

.quality-nav{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}
.quality-nav a{padding:9px 13px;border-radius:9px;background:#eaf0f6;color:#102a43;text-decoration:none;font-weight:700}
.quality-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.quality-card{background:#fff;border:1px solid #dfe7ef;border-radius:14px;padding:16px;display:grid;gap:8px}
.quality-card h3,.quality-card p{margin:0}.quality-card small{color:#68778a}
.quality-summary{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}
.quality-summary div{background:#f7f9fc;border-radius:10px;padding:12px}
.quality-summary span,.quality-summary strong{display:block}
.quality-summary span{font-size:.82rem;color:#68778a}.quality-summary strong{margin-top:4px}
.quality-checklist{display:grid;gap:8px}
.quality-check{display:grid;grid-template-columns:50px 1.4fr 1.2fr .8fr .8fr auto;gap:9px;align-items:center;border:1px solid #dfe7ef;border-radius:10px;padding:10px}
.quality-check.fail{border-left:5px solid #b42318;background:#fff5f5}
.quality-check.pass{border-left:5px solid #147d64;background:#f3fbf8}
.capa-list{display:grid;gap:9px}
.capa-item{display:grid;grid-template-columns:1fr 150px 140px 140px auto;gap:10px;align-items:center;border:1px solid #dfe7ef;border-radius:10px;padding:11px}
.capa-item.overdue{border-left:5px solid #b42318;background:#fff5f5}
.supplier-score{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}
.supplier-score div{border:1px solid #dfe7ef;border-radius:10px;padding:11px}
.supplier-score span,.supplier-score strong{display:block}
.quality-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.quality-calendar-day{min-height:110px;border:1px solid #dfe7ef;border-radius:10px;padding:7px;background:#fff}
.quality-calendar-day.other-month{opacity:.45;background:#f5f7fa}
.quality-calendar-event{display:block;padding:4px 6px;border-radius:6px;background:#dff3fa;color:#07566f;font-size:.72rem;margin-top:4px;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.quality-calendar-event.ncr{background:#ffe8e8;color:#8d1b1b}
.quality-calendar-event.review{background:#fff1cc;color:#7a4d00}
@media(max-width:1100px){.quality-grid{grid-template-columns:repeat(2,1fr)}.quality-summary{grid-template-columns:repeat(3,1fr)}.supplier-score{grid-template-columns:repeat(3,1fr)}}
@media(max-width:850px){.quality-check,.capa-item{grid-template-columns:1fr}.quality-calendar{grid-template-columns:repeat(7,minmax(100px,1fr));overflow:auto}}
@media(max-width:650px){.quality-grid{grid-template-columns:1fr}.quality-summary,.supplier-score{grid-template-columns:1fr}}

.doc-nav{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}
.doc-nav a{padding:9px 13px;border-radius:9px;background:#eaf0f6;color:#102a43;text-decoration:none;font-weight:700}
.doc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.doc-card{background:#fff;border:1px solid #dfe7ef;border-radius:14px;padding:16px;display:grid;gap:8px}
.doc-card h3,.doc-card p{margin:0}.doc-card small{color:#68778a}
.doc-summary{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}
.doc-summary div{background:#f7f9fc;border-radius:10px;padding:12px}
.doc-summary span,.doc-summary strong{display:block}.doc-summary span{font-size:.82rem;color:#68778a}.doc-summary strong{margin-top:4px}
.revision-list{display:grid;gap:9px}.revision-row{display:grid;grid-template-columns:100px 1.4fr 1fr 140px auto;gap:10px;align-items:center;border:1px solid #dfe7ef;border-radius:11px;padding:11px}
.audit-checklist{display:grid;gap:8px}.audit-check{display:grid;grid-template-columns:55px 1.5fr 1.2fr 170px auto;gap:10px;align-items:center;border:1px solid #dfe7ef;border-radius:10px;padding:10px}.audit-check.major,.audit-check.critical{border-left:5px solid #b42318;background:#fff5f5}.audit-check.conforming{border-left:5px solid #147d64;background:#f3fbf8}
.audit-team{display:flex;gap:8px;flex-wrap:wrap}.audit-team span{padding:7px 10px;border-radius:20px;background:#eaf0f6;font-size:.85rem}
.finding-list{display:grid;gap:9px}.finding-row{display:grid;grid-template-columns:110px 1.5fr 150px 130px 130px auto;gap:10px;align-items:center;border:1px solid #dfe7ef;border-radius:10px;padding:11px}.finding-row.overdue{border-left:5px solid #b42318;background:#fff5f5}
.ack-list{display:grid;gap:8px}.ack-row{display:grid;grid-template-columns:1.5fr 1fr 130px 150px auto;gap:10px;align-items:center;border:1px solid #dfe7ef;border-radius:10px;padding:10px}.ack-row.overdue{border-left:5px solid #b42318;background:#fff5f5}
.doc-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.doc-calendar-day{min-height:110px;border:1px solid #dfe7ef;border-radius:10px;padding:7px;background:#fff}.doc-calendar-day.other-month{opacity:.45;background:#f5f7fa}.doc-calendar-event{display:block;padding:4px 6px;border-radius:6px;background:#dff3fa;color:#07566f;font-size:.72rem;margin-top:4px;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.doc-calendar-event.audit{background:#fff1cc;color:#7a4d00}.doc-calendar-event.finding{background:#ffe8e8;color:#8d1b1b}.doc-calendar-event.ack{background:#f0e5ff;color:#57257f}
@media(max-width:1100px){.doc-grid{grid-template-columns:repeat(2,1fr)}.doc-summary{grid-template-columns:repeat(3,1fr)}}
@media(max-width:850px){.revision-row,.audit-check,.finding-row,.ack-row{grid-template-columns:1fr}.doc-calendar{grid-template-columns:repeat(7,minmax(100px,1fr));overflow:auto}}
@media(max-width:650px){.doc-grid{grid-template-columns:1fr}.doc-summary{grid-template-columns:1fr}}

.training-nav{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}
.training-nav a{padding:9px 13px;border-radius:9px;background:#eaf0f6;color:#102a43;text-decoration:none;font-weight:700}
.training-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.training-card{background:#fff;border:1px solid #dfe7ef;border-radius:14px;padding:16px;display:grid;gap:8px}
.training-card h3,.training-card p{margin:0}.training-card small{color:#68778a}
.training-summary{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}
.training-summary div{background:#f7f9fc;border-radius:10px;padding:12px}
.training-summary span,.training-summary strong{display:block}.training-summary span{font-size:.82rem;color:#68778a}.training-summary strong{margin-top:4px}
.training-matrix{width:100%;border-collapse:collapse}.training-matrix th,.training-matrix td{border:1px solid #dfe7ef;padding:7px;font-size:.84rem;vertical-align:top}.training-matrix th{background:#eef3f7}
.training-compliant{background:#eefbf4}.training-warning{background:#fffaf0}.training-overdue{background:#fff1f1}
.training-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.training-calendar-day{min-height:110px;border:1px solid #dfe7ef;border-radius:10px;padding:7px;background:#fff}
.training-calendar-day.other-month{opacity:.45;background:#f5f7fa}
.training-calendar-event{display:block;padding:4px 6px;border-radius:6px;background:#dff3fa;color:#07566f;font-size:.72rem;margin-top:4px;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.training-calendar-event.expiry{background:#fff1cc;color:#7a4d00}
.training-attendee{display:grid;grid-template-columns:1.3fr .8fr .8fr .8fr .8fr auto;gap:10px;align-items:center;border:1px solid #dfe7ef;border-radius:10px;padding:10px;margin-bottom:8px}
.competency-level{display:flex;gap:5px;align-items:center}.competency-dot{width:12px;height:12px;border-radius:50%;background:#d4dde6}.competency-dot.active{background:#147d64}
@media(max-width:1100px){.training-grid{grid-template-columns:repeat(2,1fr)}.training-summary{grid-template-columns:repeat(3,1fr)}}
@media(max-width:850px){.training-attendee{grid-template-columns:1fr}.training-calendar{grid-template-columns:repeat(7,minmax(100px,1fr));overflow:auto}}
@media(max-width:650px){.training-grid{grid-template-columns:1fr}.training-summary{grid-template-columns:1fr}}

.safety-nav{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}
.safety-nav a{padding:9px 13px;border-radius:9px;background:#eaf0f6;color:#102a43;text-decoration:none;font-weight:700}
.safety-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.safety-card{background:#fff;border:1px solid #dfe7ef;border-radius:14px;padding:16px;display:grid;gap:8px}
.safety-card h3,.safety-card p{margin:0}.safety-card small{color:#68778a}
.safety-summary{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}
.safety-summary div{background:#f7f9fc;border-radius:10px;padding:12px}
.safety-summary span,.safety-summary strong{display:block}
.safety-summary span{font-size:.82rem;color:#68778a}.safety-summary strong{margin-top:4px}
.safety-risk-score{font-size:1.55rem;font-weight:800}
.safety-actions{display:grid;gap:9px}
.safety-action{display:grid;grid-template-columns:1.25fr 150px 130px 125px auto;gap:10px;align-items:center;border:1px solid #dfe7ef;border-radius:10px;padding:11px}
.safety-action.overdue{border-left:5px solid #b42318;background:#fff5f5}
.safety-checklist{display:grid;gap:8px}
.safety-check{display:grid;grid-template-columns:50px 1.4fr 1.2fr .8fr 1fr auto;gap:9px;align-items:center;border:1px solid #dfe7ef;border-radius:10px;padding:10px}
.safety-check.fail{border-left:5px solid #b42318;background:#fff5f5}
.safety-check.pass{border-left:5px solid #147d64;background:#f3fbf8}
.safety-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.safety-calendar-day{min-height:110px;border:1px solid #dfe7ef;border-radius:10px;padding:7px;background:#fff}
.safety-calendar-day.other-month{opacity:.45;background:#f5f7fa}
.safety-calendar-event{display:block;padding:4px 6px;border-radius:6px;background:#dff3fa;color:#07566f;font-size:.72rem;margin-top:4px;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.safety-calendar-event.risk{background:#fff1cc;color:#7a4d00}
.safety-calendar-event.action{background:#ffe8e8;color:#8d1b1b}
.safety-calendar-event.ppe{background:#e8f7ee;color:#14633e}
.safety-ppe-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.safety-ppe-card{border:1px solid #dfe7ef;border-radius:12px;padding:13px;background:#fff}
.safety-ppe-card strong,.safety-ppe-card small{display:block}
@media(max-width:1100px){.safety-grid,.safety-ppe-grid{grid-template-columns:repeat(2,1fr)}.safety-summary{grid-template-columns:repeat(3,1fr)}}
@media(max-width:850px){.safety-action,.safety-check{grid-template-columns:1fr}.safety-calendar{grid-template-columns:repeat(7,minmax(100px,1fr));overflow:auto}}
@media(max-width:650px){.safety-grid,.safety-ppe-grid{grid-template-columns:1fr}.safety-summary{grid-template-columns:1fr}}

.road-sheet-nav{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}
.road-sheet-nav a{padding:9px 13px;border-radius:9px;background:#eaf2fb;color:#174b7a;text-decoration:none;font-weight:700}
.road-sheet-summary{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}
.road-sheet-summary div{background:#f5f8fc;border-radius:10px;padding:12px}
.road-sheet-summary span,.road-sheet-summary strong{display:block}
.road-sheet-summary span{font-size:.82rem;color:#68778a}
.road-sheet-summary strong{margin-top:4px}
.trip-list,.fuel-list,.expense-list{display:grid;gap:9px}
.trip-row{display:grid;grid-template-columns:125px 1.2fr 1.2fr 100px 1.4fr auto;gap:10px;align-items:center;border:1px solid #dfe7ef;border-radius:10px;padding:11px}
.fuel-row,.expense-row{display:grid;grid-template-columns:125px 1.2fr 110px 120px 1fr auto;gap:10px;align-items:center;border:1px solid #dfe7ef;border-radius:10px;padding:11px}
.sheet-cost{font-weight:800}
.sheet-warning{border-left:5px solid #b42318;background:#fff6f6}
.road-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.road-calendar-day{min-height:110px;border:1px solid #dfe7ef;border-radius:10px;padding:7px;background:#fff}
.road-calendar-day.other-month{opacity:.45;background:#f5f7fa}
.road-calendar-event{display:block;padding:4px 6px;border-radius:6px;background:#e8f1ff;color:#174b7a;font-size:.72rem;margin-top:4px;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.road-calendar-event.open{background:#fff1cc;color:#7a4d00}
.road-calendar-event.approved{background:#e8f7ee;color:#14633e}
@media(max-width:1100px){.road-sheet-summary{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.trip-row,.fuel-row,.expense-row{grid-template-columns:1fr}.road-calendar{grid-template-columns:repeat(7,minmax(100px,1fr));overflow:auto}}
@media(max-width:650px){.road-sheet-summary{grid-template-columns:1fr}}

.business-trip-nav{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}
.business-trip-nav a{padding:9px 13px;border-radius:9px;background:#f3ebff;color:#5b2a86;text-decoration:none;font-weight:700}
.business-trip-summary{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}
.business-trip-summary div{background:#faf7fd;border-radius:10px;padding:12px}
.business-trip-summary span,.business-trip-summary strong{display:block}
.business-trip-summary span{font-size:.82rem;color:#68778a}
.business-trip-summary strong{margin-top:4px}
.trip-route-row{display:grid;grid-template-columns:120px 1fr 1fr 150px 1.2fr auto;gap:10px;align-items:center;border:1px solid #dfe7ef;border-radius:10px;padding:11px}
.trip-expense-row{display:grid;grid-template-columns:120px 150px 1.25fr 120px 125px 125px auto;gap:10px;align-items:center;border:1px solid #dfe7ef;border-radius:10px;padding:11px}
.trip-expense-row.employee-paid{border-left:5px solid #6f42c1}
.settlement-positive{color:#14633e}
.settlement-negative{color:#b42318}
.business-trip-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.business-trip-calendar-day{min-height:110px;border:1px solid #dfe7ef;border-radius:10px;padding:7px;background:#fff}
.business-trip-calendar-day.other-month{opacity:.45;background:#f5f7fa}
.business-trip-calendar-event{display:block;padding:4px 6px;border-radius:6px;background:#f0e7ff;color:#5b2a86;font-size:.72rem;margin-top:4px;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.business-trip-calendar-event.approved{background:#e8f1ff;color:#174b7a}
.business-trip-calendar-event.settled{background:#e8f7ee;color:#14633e}
@media(max-width:1100px){.business-trip-summary{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.trip-route-row,.trip-expense-row{grid-template-columns:1fr}.business-trip-calendar{grid-template-columns:repeat(7,minmax(100px,1fr));overflow:auto}}
@media(max-width:650px){.business-trip-summary{grid-template-columns:1fr}}

.mobility-subnav{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px}
.mobility-subnav a{padding:9px 13px;border-radius:9px;background:#edf2f8;color:#213b5b;text-decoration:none;font-weight:700;border:1px solid transparent}
.mobility-subnav a.active{background:#213b5b;color:#fff}
.mobility-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.mobility-panel{background:#fff;border:1px solid #dfe7ef;border-radius:14px;padding:16px}
.mobility-panel h2,.mobility-panel h3{margin-top:0}
.mobility-summary{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-bottom:18px}
.mobility-summary article{background:#fff;border:1px solid #dfe7ef;border-radius:12px;padding:14px}
.mobility-summary span,.mobility-summary strong{display:block}
.mobility-summary span{font-size:.82rem;color:#68778a}
.mobility-summary strong{font-size:1.45rem;margin-top:5px}
.mobility-alert{border-left:5px solid #b42318!important;background:#fff7f7!important}
.mobility-list{display:grid;gap:8px}
.mobility-item{display:flex;justify-content:space-between;gap:14px;padding:11px;border:1px solid #dfe7ef;border-radius:10px;text-decoration:none;color:inherit}
.mobility-item:hover{background:#f7f9fc}
.mobility-item span,.mobility-item small{display:block}
.mobility-item small{color:#68778a;margin-top:3px}
.mobility-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.mobility-calendar-day{min-height:120px;border:1px solid #dfe7ef;border-radius:10px;padding:7px;background:#fff}
.mobility-calendar-day.other-month{opacity:.45;background:#f5f7fa}
.mobility-calendar-event{display:block;padding:4px 6px;border-radius:6px;font-size:.72rem;margin-top:4px;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mobility-calendar-event.road{background:#e8f1ff;color:#174b7a}
.mobility-calendar-event.trip{background:#f0e7ff;color:#5b2a86}
.mobility-calendar-event.approved{background:#e8f7ee;color:#14633e}
@media(max-width:1100px){.mobility-grid{grid-template-columns:repeat(2,1fr)}.mobility-summary{grid-template-columns:repeat(3,1fr)}}
@media(max-width:750px){.mobility-grid{grid-template-columns:1fr}.mobility-summary{grid-template-columns:1fr 1fr}.mobility-calendar{grid-template-columns:repeat(7,minmax(100px,1fr));overflow:auto}}
@media(max-width:500px){.mobility-summary{grid-template-columns:1fr}}

.commercial-subnav{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px}
.commercial-subnav a{padding:9px 13px;border-radius:9px;background:#eef5f1;color:#185b42;text-decoration:none;font-weight:700;border:1px solid transparent}
.commercial-subnav a.active{background:#185b42;color:#fff}
.commercial-summary{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-bottom:18px}
.commercial-summary article{background:#fff;border:1px solid #dfe7ef;border-radius:12px;padding:14px}
.commercial-summary span,.commercial-summary strong{display:block}
.commercial-summary span{font-size:.82rem;color:#68778a}
.commercial-summary strong{font-size:1.4rem;margin-top:5px}
.commercial-alert{border-left:5px solid #b42318!important;background:#fff7f7!important}
.commercial-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}
.commercial-overview-grid{grid-template-columns:minmax(0,1fr)!important}
.commercial-panel{background:#fff;border:1px solid #dfe7ef;border-radius:14px;padding:16px}
.commercial-panel h2{margin-top:0}
.commercial-list{display:grid;gap:8px}
.commercial-item{display:flex;justify-content:space-between;gap:14px;padding:11px;border:1px solid #dfe7ef;border-radius:10px;text-decoration:none;color:inherit}
.commercial-item:hover{background:#f7faf8}
.commercial-item span,.commercial-item small{display:block}
.commercial-item small{color:#68778a;margin-top:3px}
.commercial-funnel{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}
.commercial-funnel a{display:block;text-align:center;padding:12px 7px;border-radius:10px;background:#f1f7f4;color:#185b42;text-decoration:none}
.commercial-funnel strong,.commercial-funnel span{display:block}
.customer-dossier-head{display:grid;grid-template-columns:2fr repeat(4,1fr);gap:10px}
.customer-dossier-head div{background:#f7faf8;border-radius:10px;padding:12px}
.customer-dossier-head span,.customer-dossier-head strong{display:block}
.customer-dossier-head span{font-size:.82rem;color:#68778a}
.commercial-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.commercial-calendar-day{min-height:125px;border:1px solid #dfe7ef;border-radius:10px;padding:7px;background:#fff}
.commercial-calendar-day.other-month{opacity:.45;background:#f5f7fa}
.commercial-calendar-event{display:block;padding:4px 6px;border-radius:6px;font-size:.72rem;margin-top:4px;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.commercial-calendar-event.crm{background:#fff1cc;color:#7a4d00}
.commercial-calendar-event.quote{background:#e8f1ff;color:#174b7a}
.commercial-calendar-event.contract{background:#f0e7ff;color:#5b2a86}
.commercial-calendar-event.order{background:#e8f7ee;color:#14633e}
@media(max-width:1100px){.commercial-summary{grid-template-columns:repeat(3,1fr)}.commercial-funnel{grid-template-columns:repeat(3,1fr)}}
@media(max-width:850px){.commercial-grid{grid-template-columns:1fr}.customer-dossier-head{grid-template-columns:1fr 1fr}.commercial-calendar{grid-template-columns:repeat(7,minmax(100px,1fr));overflow:auto}}
@media(max-width:550px){.commercial-summary,.commercial-funnel,.customer-dossier-head{grid-template-columns:1fr}}

.after-sales-subnav{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px}
.after-sales-subnav a{padding:9px 13px;border-radius:9px;background:#edf4f8;color:#194f70;text-decoration:none;font-weight:700;border:1px solid transparent}
.after-sales-subnav a.active{background:#194f70;color:#fff}
.after-sales-summary{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-bottom:18px}
.after-sales-summary article{background:#fff;border:1px solid #dfe7ef;border-radius:12px;padding:14px}
.after-sales-summary span,.after-sales-summary strong{display:block}
.after-sales-summary span{font-size:.82rem;color:#68778a}
.after-sales-summary strong{font-size:1.4rem;margin-top:5px}
.after-sales-alert{border-left:5px solid #b42318!important;background:#fff7f7!important}
.after-sales-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.after-sales-panel{background:#fff;border:1px solid #dfe7ef;border-radius:14px;padding:16px}
.after-sales-panel h2{margin-top:0}
.after-sales-list{display:grid;gap:8px}
.after-sales-item{display:flex;justify-content:space-between;gap:14px;padding:11px;border:1px solid #dfe7ef;border-radius:10px;text-decoration:none;color:inherit}
.after-sales-item:hover{background:#f7fafc}
.after-sales-item span,.after-sales-item small{display:block}
.after-sales-item small{color:#68778a;margin-top:3px}
.after-sales-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.after-sales-calendar-day{min-height:130px;border:1px solid #dfe7ef;border-radius:10px;padding:7px;background:#fff}
.after-sales-calendar-day.other-month{opacity:.45;background:#f5f7fa}
.after-sales-calendar-event{display:block;padding:4px 6px;border-radius:6px;font-size:.72rem;margin-top:4px;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.after-sales-calendar-event.maintenance{background:#e8f1ff;color:#174b7a}
.after-sales-calendar-event.installation{background:#e8f7ee;color:#14633e}
.after-sales-calendar-event.service{background:#fff1cc;color:#7a4d00}
.after-sales-calendar-event.claim{background:#ffe9e7;color:#9d2319}
.after-sales-calendar-event.warranty{background:#f0e7ff;color:#5b2a86}
.after-sales-machine-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.after-sales-machine{border:1px solid #dfe7ef;border-radius:12px;padding:14px;background:#fff}
.after-sales-machine small{display:block;color:#68778a;margin-top:4px}
@media(max-width:1100px){.after-sales-summary{grid-template-columns:repeat(3,1fr)}.after-sales-machine-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:850px){.after-sales-grid,.after-sales-machine-grid{grid-template-columns:1fr}.after-sales-calendar{grid-template-columns:repeat(7,minmax(100px,1fr));overflow:auto}}
@media(max-width:550px){.after-sales-summary{grid-template-columns:1fr}}

.supply-chain-subnav{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px}
.supply-chain-subnav a{padding:9px 13px;border-radius:9px;background:#f5f1e8;color:#6c4a13;text-decoration:none;font-weight:700;border:1px solid transparent}
.supply-chain-subnav a.active{background:#6c4a13;color:#fff}
.supply-chain-summary{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-bottom:18px}
.supply-chain-summary article{background:#fff;border:1px solid #dfe7ef;border-radius:12px;padding:14px}
.supply-chain-summary span,.supply-chain-summary strong{display:block}
.supply-chain-summary span{font-size:.82rem;color:#68778a}
.supply-chain-summary strong{font-size:1.4rem;margin-top:5px}
.supply-chain-alert{border-left:5px solid #b42318!important;background:#fff7f7!important}
.supply-chain-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.supply-chain-panel{background:#fff;border:1px solid #dfe7ef;border-radius:14px;padding:16px}
.supply-chain-panel h2{margin-top:0}
.supply-chain-list{display:grid;gap:8px}
.supply-chain-item{display:flex;justify-content:space-between;gap:14px;padding:11px;border:1px solid #dfe7ef;border-radius:10px;text-decoration:none;color:inherit}
.supply-chain-item:hover{background:#fcfaf5}
.supply-chain-item span,.supply-chain-item small{display:block}
.supply-chain-item small{color:#68778a;margin-top:3px}
.supply-chain-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.supply-chain-calendar-day{min-height:125px;border:1px solid #dfe7ef;border-radius:10px;padding:7px;background:#fff}
.supply-chain-calendar-day.other-month{opacity:.45;background:#f5f7fa}
.supply-chain-calendar-event{display:block;padding:4px 6px;border-radius:6px;font-size:.72rem;margin-top:4px;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.supply-chain-calendar-event.request{background:#fff1cc;color:#7a4d00}
.supply-chain-calendar-event.order{background:#e8f1ff;color:#174b7a}
.supply-chain-calendar-event.receipt{background:#e8f7ee;color:#14633e}
.supply-chain-calendar-event.contract{background:#f0e7ff;color:#5b2a86}
.supply-chain-calendar-event.review{background:#ffe9e7;color:#9d2319}
.supplier-dossier-summary{display:grid;grid-template-columns:2fr repeat(5,1fr);gap:10px}
.supplier-dossier-summary div{background:#fcfaf5;border-radius:10px;padding:12px}
.supplier-dossier-summary span,.supplier-dossier-summary strong{display:block}
.supplier-dossier-summary span{font-size:.82rem;color:#68778a}
.supply-chain-stock-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.supply-chain-stock-card{border:1px solid #dfe7ef;border-radius:12px;padding:14px;background:#fff}
.supply-chain-stock-card small{display:block;color:#68778a;margin-top:4px}
@media(max-width:1100px){.supply-chain-summary{grid-template-columns:repeat(3,1fr)}.supply-chain-stock-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:850px){.supply-chain-grid,.supply-chain-stock-grid{grid-template-columns:1fr}.supplier-dossier-summary{grid-template-columns:1fr 1fr}.supply-chain-calendar{grid-template-columns:repeat(7,minmax(100px,1fr));overflow:auto}}
@media(max-width:550px){.supply-chain-summary,.supplier-dossier-summary{grid-template-columns:1fr}}

.people-subnav{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px}
.people-subnav a{padding:9px 13px;border-radius:9px;background:#f3eef8;color:#5b2a86;text-decoration:none;font-weight:700;border:1px solid transparent}
.people-subnav a.active{background:#5b2a86;color:#fff}
.people-summary{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-bottom:18px}
.people-summary article{background:#fff;border:1px solid #dfe7ef;border-radius:12px;padding:14px}
.people-summary span,.people-summary strong{display:block}
.people-summary span{font-size:.82rem;color:#68778a}
.people-summary strong{font-size:1.4rem;margin-top:5px}
.people-alert{border-left:5px solid #b42318!important;background:#fff7f7!important}
.people-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.people-panel{background:#fff;border:1px solid #dfe7ef;border-radius:14px;padding:16px}
.people-panel h2{margin-top:0}
.people-list{display:grid;gap:8px}
.people-item{display:flex;justify-content:space-between;gap:14px;padding:11px;border:1px solid #dfe7ef;border-radius:10px;text-decoration:none;color:inherit}
.people-item:hover{background:#faf7fc}
.people-item span,.people-item small{display:block}
.people-item small{color:#68778a;margin-top:3px}
.people-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.people-calendar-day{min-height:130px;border:1px solid #dfe7ef;border-radius:10px;padding:7px;background:#fff}
.people-calendar-day.other-month{opacity:.45;background:#f5f7fa}
.people-calendar-event{display:block;padding:4px 6px;border-radius:6px;font-size:.72rem;margin-top:4px;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.people-calendar-event.leave{background:#e8f7ee;color:#14633e}
.people-calendar-event.training{background:#e8f1ff;color:#174b7a}
.people-calendar-event.trip{background:#fff1cc;color:#7a4d00}
.people-calendar-event.document{background:#ffe9e7;color:#9d2319}
.people-calendar-event.certificate{background:#f0e7ff;color:#5b2a86}
.people-calendar-event.ppe{background:#e8f7f7;color:#176b6b}
.people-employee-head{display:grid;grid-template-columns:2fr repeat(5,1fr);gap:10px}
.people-employee-head div{background:#faf7fc;border-radius:10px;padding:12px}
.people-employee-head span,.people-employee-head strong{display:block}
.people-employee-head span{font-size:.82rem;color:#68778a}
.people-person-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.people-person-card{border:1px solid #dfe7ef;border-radius:12px;padding:14px;background:#fff}
.people-person-card small{display:block;color:#68778a;margin-top:4px}
@media(max-width:1100px){.people-summary{grid-template-columns:repeat(3,1fr)}.people-person-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:850px){.people-grid,.people-person-grid{grid-template-columns:1fr}.people-employee-head{grid-template-columns:1fr 1fr}.people-calendar{grid-template-columns:repeat(7,minmax(100px,1fr));overflow:auto}}
@media(max-width:550px){.people-summary,.people-employee-head{grid-template-columns:1fr}}

.compliance-subnav{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px}
.compliance-subnav a{padding:9px 13px;border-radius:9px;background:#eef3f7;color:#244b67;text-decoration:none;font-weight:700;border:1px solid transparent}
.compliance-subnav a.active{background:#244b67;color:#fff}
.compliance-summary{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-bottom:18px}
.compliance-summary article{background:#fff;border:1px solid #dfe7ef;border-radius:12px;padding:14px}
.compliance-summary span,.compliance-summary strong{display:block}
.compliance-summary span{font-size:.82rem;color:#68778a}
.compliance-summary strong{font-size:1.4rem;margin-top:5px}
.compliance-alert{border-left:5px solid #b42318!important;background:#fff7f7!important}
.compliance-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.compliance-panel{background:#fff;border:1px solid #dfe7ef;border-radius:14px;padding:16px}
.compliance-panel h2{margin-top:0}
.compliance-list{display:grid;gap:8px}
.compliance-item{display:flex;justify-content:space-between;gap:14px;padding:11px;border:1px solid #dfe7ef;border-radius:10px;text-decoration:none;color:inherit}
.compliance-item:hover{background:#f7fafc}
.compliance-item span,.compliance-item small{display:block}
.compliance-item small{color:#68778a;margin-top:3px}
.compliance-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.compliance-calendar-day{min-height:132px;border:1px solid #dfe7ef;border-radius:10px;padding:7px;background:#fff}
.compliance-calendar-day.other-month{opacity:.45;background:#f5f7fa}
.compliance-calendar-event{display:block;padding:4px 6px;border-radius:6px;font-size:.72rem;margin-top:4px;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.compliance-calendar-event.quality{background:#e8f1ff;color:#174b7a}
.compliance-calendar-event.capa{background:#ffe9e7;color:#9d2319}
.compliance-calendar-event.document{background:#f0e7ff;color:#5b2a86}
.compliance-calendar-event.audit{background:#fff1cc;color:#7a4d00}
.compliance-calendar-event.finding{background:#ffe9e7;color:#9d2319}
.compliance-calendar-event.risk{background:#f8ece6;color:#7a3515}
.compliance-calendar-event.safety{background:#e8f7ee;color:#14633e}
.compliance-calendar-event.drill{background:#e8f7f7;color:#176b6b}
.compliance-register-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.compliance-register-card{border:1px solid #dfe7ef;border-radius:12px;padding:14px;background:#fff}
.compliance-register-card small{display:block;color:#68778a;margin-top:4px}
@media(max-width:1100px){.compliance-summary{grid-template-columns:repeat(3,1fr)}.compliance-register-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:850px){.compliance-grid,.compliance-register-grid{grid-template-columns:1fr}.compliance-calendar{grid-template-columns:repeat(7,minmax(100px,1fr));overflow:auto}}
@media(max-width:550px){.compliance-summary{grid-template-columns:1fr}}

.control-subnav{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px}
.control-subnav a{padding:9px 13px;border-radius:9px;background:#eef5f1;color:#185b42;text-decoration:none;font-weight:700;border:1px solid transparent}
.control-subnav a.active{background:#185b42;color:#fff}
.control-summary{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-bottom:18px}
.control-summary article{background:#fff;border:1px solid #dfe7ef;border-radius:12px;padding:14px}
.control-summary span,.control-summary strong{display:block}
.control-summary span{font-size:.82rem;color:#68778a}
.control-summary strong{font-size:1.35rem;margin-top:5px}
.control-alert{border-left:5px solid #b42318!important;background:#fff7f7!important}
.control-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.control-panel{background:#fff;border:1px solid #dfe7ef;border-radius:14px;padding:16px}
.control-list{display:grid;gap:8px}
.control-item{display:flex;justify-content:space-between;gap:14px;padding:11px;border:1px solid #dfe7ef;border-radius:10px;text-decoration:none;color:inherit}
.control-item:hover{background:#f7faf8}
.control-item span,.control-item small{display:block}
.control-item small{color:#68778a;margin-top:3px}
.control-project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.control-project-card{border:1px solid #dfe7ef;border-radius:12px;padding:14px;background:#fff}
.control-project-card small{display:block;color:#68778a;margin-top:4px}
.control-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.control-calendar-day{min-height:130px;border:1px solid #dfe7ef;border-radius:10px;padding:7px;background:#fff}
.control-calendar-day.other-month{opacity:.45;background:#f5f7fa}
.control-calendar-event{display:block;padding:4px 6px;border-radius:6px;font-size:.72rem;margin-top:4px;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.control-calendar-event.receivable{background:#e8f7ee;color:#14633e}
.control-calendar-event.payable{background:#ffe9e7;color:#9d2319}
.control-calendar-event.project{background:#e8f1ff;color:#174b7a}
.control-calendar-event.task{background:#fff1cc;color:#7a4d00}
.control-calendar-event.milestone{background:#f0e7ff;color:#5b2a86}
.control-finance-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}
.control-finance-strip div{background:#f7faf8;border-radius:10px;padding:12px}
.control-finance-strip span,.control-finance-strip strong{display:block}
.control-finance-strip span{font-size:.82rem;color:#68778a}
@media(max-width:1100px){.control-summary{grid-template-columns:repeat(3,1fr)}.control-project-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:850px){.control-grid,.control-project-grid{grid-template-columns:1fr}.control-finance-strip{grid-template-columns:1fr 1fr}.control-calendar{grid-template-columns:repeat(7,minmax(100px,1fr));overflow:auto}}
@media(max-width:550px){.control-summary,.control-finance-strip{grid-template-columns:1fr}}

.administration-subnav{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px}
.administration-subnav a{padding:9px 13px;border-radius:9px;background:#f2f4f7;color:#344054;text-decoration:none;font-weight:700;border:1px solid transparent}
.administration-subnav a.active{background:#344054;color:#fff}
.administration-summary{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-bottom:18px}
.administration-summary article{background:#fff;border:1px solid #dfe7ef;border-radius:12px;padding:14px}
.administration-summary span,.administration-summary strong{display:block}
.administration-summary span{font-size:.82rem;color:#68778a}
.administration-summary strong{font-size:1.35rem;margin-top:5px}
.administration-alert{border-left:5px solid #b42318!important;background:#fff7f7!important}
.administration-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.administration-panel{background:#fff;border:1px solid #dfe7ef;border-radius:14px;padding:16px}
.administration-list{display:grid;gap:8px}
.administration-item{display:flex;justify-content:space-between;gap:14px;padding:11px;border:1px solid #dfe7ef;border-radius:10px;text-decoration:none;color:inherit}
.administration-item:hover{background:#f8fafc}
.administration-item span,.administration-item small{display:block}
.administration-item small{color:#68778a;margin-top:3px}
.administration-company-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.administration-company-card{border:1px solid #dfe7ef;border-radius:12px;padding:14px;background:#fff}
.administration-company-card small{display:block;color:#68778a;margin-top:4px}
.administration-health{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.administration-health div{background:#f8fafc;border-radius:10px;padding:12px}
.administration-health span,.administration-health strong{display:block}
.administration-health span{font-size:.82rem;color:#68778a}
@media(max-width:1100px){.administration-summary{grid-template-columns:repeat(3,1fr)}.administration-company-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:850px){.administration-grid,.administration-company-grid{grid-template-columns:1fr}.administration-health{grid-template-columns:1fr 1fr}}
@media(max-width:550px){.administration-summary,.administration-health{grid-template-columns:1fr}}

.workspace-subnav{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px}
.workspace-subnav a{padding:9px 13px;border-radius:9px;background:#eef3f8;color:#174b7a;text-decoration:none;font-weight:700;border:1px solid transparent}
.workspace-subnav a.active{background:#174b7a;color:#fff}
.workspace-summary{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-bottom:18px}
.workspace-summary article{background:#fff;border:1px solid #dfe7ef;border-radius:12px;padding:14px}
.workspace-summary span,.workspace-summary strong{display:block}
.workspace-summary span{font-size:.82rem;color:#68778a}
.workspace-summary strong{font-size:1.35rem;margin-top:5px}
.workspace-alert{border-left:5px solid #b42318!important;background:#fff7f7!important}
.workspace-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.workspace-panel{background:#fff;border:1px solid #dfe7ef;border-radius:14px;padding:16px}
.workspace-list{display:grid;gap:8px}
.workspace-item{display:flex;justify-content:space-between;gap:14px;padding:11px;border:1px solid #dfe7ef;border-radius:10px;text-decoration:none;color:inherit;background:#fff}
.workspace-item:hover{background:#f7fafc}
.workspace-item span,.workspace-item small{display:block}
.workspace-item small{color:#68778a;margin-top:3px}
.workspace-item.workspace-overdue{border-left:5px solid #b42318;background:#fff7f7}
.workspace-item.workspace-soon{border-left:5px solid #e58b00;background:#fffaf0}
.workspace-item.workspace-upcoming{border-left:5px solid #0672a3}
.workspace-neutral{border-left:5px solid #98a2b3}
.workspace-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.workspace-calendar-day{min-height:135px;border:1px solid #dfe7ef;border-radius:10px;padding:7px;background:#fff}
.workspace-calendar-day.other-month{opacity:.45;background:#f5f7fa}
.workspace-calendar-event{display:block;padding:4px 6px;border-radius:6px;font-size:.72rem;margin-top:4px;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.workspace-calendar-event.service{background:#e8f1ff;color:#174b7a}
.workspace-calendar-event.project{background:#f0e7ff;color:#5b2a86}
.workspace-calendar-event.finance{background:#e8f7ee;color:#14633e}
.workspace-calendar-event.people{background:#fff1cc;color:#7a4d00}
.workspace-calendar-event.quality{background:#ffe9e7;color:#9d2319}
.workspace-calendar-event.supply{background:#f8ece6;color:#7a3515}
.workspace-calendar-event.mobility{background:#e8f7f7;color:#176b6b}
.workspace-search-box{display:grid;grid-template-columns:1fr auto;gap:10px}
.workspace-search-results{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.workspace-result{border:1px solid #dfe7ef;border-radius:11px;padding:12px;text-decoration:none;color:inherit;background:#fff}
.workspace-result:hover{background:#f7fafc}
.workspace-result small{display:block;color:#68778a;margin-top:4px}
.workspace-quick{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.workspace-quick a{display:block;border:1px solid #dfe7ef;border-radius:12px;padding:14px;text-decoration:none;color:inherit;background:#fff;font-weight:700}
.workspace-quick a:hover{background:#f7fafc}
@media(max-width:1100px){.workspace-summary{grid-template-columns:repeat(3,1fr)}.workspace-quick{grid-template-columns:repeat(2,1fr)}}
@media(max-width:850px){.workspace-grid,.workspace-search-results{grid-template-columns:1fr}.workspace-calendar{grid-template-columns:repeat(7,minmax(100px,1fr));overflow:auto}}
@media(max-width:550px){.workspace-summary,.workspace-quick,.workspace-search-box{grid-template-columns:1fr}}

.system-check-overall{display:flex;justify-content:space-between;align-items:center;gap:18px;border-left:6px solid #157347}
.system-check-overall.warning{border-left-color:#b7791f;background:#fffaf0}
.system-check-overall.error{border-left-color:#b42318;background:#fff7f7}
.system-check-overall span,.system-check-overall strong,.system-check-overall small{display:block}
.system-check-overall strong{font-size:1.45rem;margin:5px 0}
.system-check-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:18px}
.system-check-summary article{background:#fff;border:1px solid #dfe7ef;border-radius:12px;padding:14px}
.system-check-summary span,.system-check-summary strong{display:block}
.system-check-summary span{font-size:.82rem;color:#68778a}
.system-check-summary strong{font-size:1.45rem;margin-top:5px}
.system-check-warning{border-left:5px solid #b7791f!important;background:#fffaf0!important}
.system-check-error{border-left:5px solid #b42318!important;background:#fff7f7!important}
.system-check-priority{display:grid;gap:9px}
.system-check-priority article{display:flex;justify-content:space-between;align-items:center;gap:14px;border:1px solid #dfe7ef;border-left:5px solid #b7791f;border-radius:10px;padding:12px}
.system-check-priority article.error{border-left-color:#b42318;background:#fff7f7}
.system-check-priority article.warning{background:#fffaf0}
.system-check-priority small,.system-check-priority p{display:block;color:#68778a;margin:4px 0 0}
.system-check-table td{max-width:420px}
.system-check-row-error{background:#fff7f7}
.system-check-row-warning{background:#fffaf0}
.system-check-row-pass{background:#f4fbf7}
.system-check-row-info{background:#f7f9fc}
@media(max-width:850px){.system-check-overall{align-items:flex-start;flex-direction:column}.system-check-summary{grid-template-columns:1fr 1fr}}
@media(max-width:550px){.system-check-summary{grid-template-columns:1fr}}

/* Global left navigation · Light Corporate v4.3.5 */
.erp-authenticated .topbar{
  position:fixed;inset:0 0 auto 0;height:76px;min-height:76px;
  padding:12px 26px;border-bottom:1px solid #e3e9f0;z-index:60;
  flex-direction:row;align-items:center
}
.erp-authenticated .brand strong{font-size:1.22rem}
.erp-authenticated .brand small{margin-top:3px;color:#718096;opacity:1}
.erp-shell{min-height:100vh;padding-top:76px}
.sidebar{
  position:fixed;left:0;top:76px;bottom:0;width:276px;z-index:50;
  display:flex;flex-direction:column;background:#fff;border-right:1px solid #e3e9f0;
  box-shadow:8px 0 28px rgba(22,50,79,.045);overflow-y:auto
}
.sidebar-account{flex:0 0 auto;border-bottom:1px solid #edf1f5;background:#fff}
.sidebar-heading{padding:24px 22px 10px;color:#9aa7b5;font-size:.68rem;font-weight:800;letter-spacing:.12em}
.sidebar .nav{display:grid;gap:4px;padding:0 12px}
.sidebar .nav a{
  position:relative;display:grid;grid-template-columns:32px 1fr auto;align-items:center;gap:9px;
  min-height:46px;padding:8px 11px;color:#40546a;border-radius:10px;
  font-size:.88rem;font-weight:700;text-decoration:none
}
.sidebar .nav a:hover{color:#16324f;background:#f1f6f8}
.sidebar .nav a.active{color:#075f67;background:#e7f5f3}
.sidebar .nav a.active:before{
  content:"";position:absolute;left:-12px;top:9px;bottom:9px;width:4px;
  background:#0f8b8d;border-radius:0 4px 4px 0
}
.nav-icon{
  width:30px;height:30px;display:grid;place-items:center;border:1px solid #dce6ec;
  border-radius:8px;background:#f8fafc;color:#536b7f;font-size:1rem
}
.sidebar .nav a.active .nav-icon{color:#08747a;background:#fff;border-color:#b7dedb}
.nav-count{min-width:22px;padding:3px 6px;border-radius:999px;background:#c43c35;color:#fff;font-size:.7rem;text-align:center}
.sidebar .company-switch{
  margin-top:auto;padding:18px 16px 12px;display:block;background:transparent;border:0;border-top:1px solid #edf1f5
}
.sidebar .company-switch label{display:grid;gap:7px;color:#7a8998;font-size:.72rem}
.sidebar .company-switch label span{font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.sidebar .company-switch select{width:100%;min-width:0;padding:9px 28px 9px 10px;font-size:.8rem;color:#294257}
.sidebar-user{
  display:grid;grid-template-columns:38px 1fr 24px;align-items:center;gap:10px;
  padding:13px 16px 18px;border-top:1px solid #edf1f5;color:#294257
}
.sidebar-user .user-avatar{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:#16324f;color:#fff;font-weight:800}
.sidebar-user strong,.sidebar-user small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sidebar-user strong{font-size:.82rem}.sidebar-user small{margin-top:2px;color:#8a97a5;font-size:.67rem}
.sidebar-user>a{color:#7c8b99;text-decoration:none;font-size:1rem}
.erp-content{min-width:0;margin-left:276px}
.erp-content .container{max-width:1540px;padding:28px 30px;min-height:calc(100vh - 130px)}
.erp-content .footer{padding:16px 30px 22px}
.sidebar-toggle,.sidebar-overlay{display:none}

@media(max-width:1050px){
  .erp-authenticated .topbar{height:68px;min-height:68px;padding:10px 18px;flex-direction:row;align-items:center}
  .erp-shell{padding-top:68px}
  .sidebar{top:68px;transform:translateX(-105%);transition:transform .22s ease}
  .sidebar-open .sidebar{transform:translateX(0)}
  .erp-content{margin-left:0}
  .sidebar-toggle{display:grid;gap:4px;width:42px;height:42px;padding:10px;border-radius:10px;background:#f0f5f8}
  .sidebar-toggle span{display:block;height:2px;background:#16324f;border-radius:2px}
  .sidebar-overlay{display:none;position:fixed;inset:68px 0 0;background:rgba(16,42,67,.38);border:0;border-radius:0;z-index:45}
  .sidebar-open .sidebar-overlay{display:block}
}
@media(max-width:600px){
  .erp-authenticated .brand small{display:none}
  .erp-content .container{padding:18px 13px}
  .sidebar{width:min(88vw,310px)}
}

/* Executive home dashboard · v4.3.9 */
.home-toolbar{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:-10px 0 30px;padding-bottom:18px;border-bottom:1px solid #e4eaf0}
.home-search{position:relative;display:block;width:min(620px,60%)}.home-search span{position:absolute;left:17px;top:50%;transform:translateY(-52%);color:#64748b;font-size:1.65rem}
.home-search input{width:100%;height:48px;padding-left:52px;border-color:#d3dce6;border-radius:12px;box-shadow:0 3px 12px rgba(22,50,79,.03)}
.home-toolbar-actions{display:flex;align-items:center;gap:14px;color:#263c53;font-weight:700}.home-notification{position:relative;color:#16324f;text-decoration:none;font-size:1.45rem}
.home-notification b{position:absolute;right:-8px;top:-5px;min-width:18px;padding:2px 5px;border:2px solid #fff;border-radius:50px;background:#0f9f96;color:#fff;font-size:.6rem;text-align:center}
.home-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:26px}.home-head h1{margin:5px 0 7px;color:#102a4c;font-size:clamp(1.75rem,2.7vw,2.45rem);letter-spacing:-.035em}.home-head p{margin:0;color:#68788c}.home-eyebrow{color:#0b9188;font-size:.72rem;font-weight:900;letter-spacing:.14em}
.home-primary{min-width:152px;padding:13px 18px;background:linear-gradient(135deg,#07948c,#18b6a6);box-shadow:0 8px 22px rgba(15,159,150,.2)}
.home-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:22px}.home-kpis>a{display:grid;grid-template-columns:58px 1fr;grid-template-rows:auto auto;align-items:center;gap:0 16px;min-width:0;padding:22px;border:1px solid #dce5ed;border-radius:17px;background:#fff;color:#172b46;text-decoration:none;box-shadow:0 7px 25px rgba(22,50,79,.055);transition:.18s ease}
.home-kpis>a:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(22,50,79,.1)}.home-kpis>a.danger{background:#fff;border-color:#f0d5d2}.home-kpis>a>span{color:#53657a;font-size:.84rem;font-weight:700}.home-kpis>a>span small{display:block;margin-top:4px;color:#93a0ad;font-size:.69rem;font-weight:500}
.home-kpis>a>strong{grid-column:2;margin-top:7px;font-size:1.85rem;line-height:1;white-space:nowrap}.home-kpis .kpi-money{font-size:clamp(1.1rem,1.55vw,1.65rem)}
.kpi-icon{grid-row:1/3;width:58px;height:58px;display:grid;place-items:center;border-radius:14px;font-style:normal;font-size:1.6rem}.kpi-icon.blue{background:#e9f3ff;color:#1260c7}.kpi-icon.teal{background:#e7f8f5;color:#099489}.kpi-icon.amber{background:#fff4dd;color:#b77600}.kpi-icon.red{background:#ffebe9;color:#dc3028}
.home-main-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:22px;margin-bottom:22px}.home-panel{padding:22px 24px;border:1px solid #dce5ed;border-radius:17px;background:#fff;box-shadow:0 7px 25px rgba(22,50,79,.05)}
.home-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-bottom:17px;border-bottom:1px solid #e8edf2}.home-panel-head h2{margin:0;color:#102a4c;font-size:1.12rem}.home-panel-head p{margin:4px 0 0;color:#8794a2;font-size:.77rem}.home-panel-head>a{color:#078d84;font-size:.78rem;font-weight:800;text-decoration:none;white-space:nowrap}
.overview-bars{display:grid;gap:18px;padding:24px 0}.overview-bars>a{display:grid;grid-template-columns:145px 1fr 38px;align-items:center;gap:16px;color:#243a54;text-decoration:none}.overview-bars span{font-weight:750;font-size:.84rem}.overview-bars small{display:block;margin-top:3px;color:#8b98a6;font-size:.68rem;font-weight:500}.overview-bars i{height:10px;overflow:hidden;border-radius:99px;background:#edf2f6}.overview-bars i b{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#0f5ea8,#0eb2a2)}.overview-bars strong{text-align:right}
.home-finance-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;padding-top:17px;border-top:1px solid #e8edf2;background:#e8edf2}.home-finance-strip span{padding:0 14px;background:#fff}.home-finance-strip span:first-child{padding-left:0}.home-finance-strip small,.home-finance-strip strong{display:block}.home-finance-strip small{color:#8794a2;font-size:.69rem}.home-finance-strip strong{margin-top:5px;color:#078d84;font-size:1.06rem}
.activity-list{display:grid}.activity-list>a{display:grid;grid-template-columns:10px 1fr auto;align-items:center;gap:13px;padding:15px 3px;border-bottom:1px solid #edf1f4;color:#263c53;text-decoration:none}.activity-list>a:last-child{border-bottom:0}.activity-list>a.unread{background:linear-gradient(90deg,rgba(15,159,150,.055),transparent)}.activity-list span strong,.activity-list span small{display:block}.activity-list span strong{font-size:.79rem}.activity-list span small{max-width:330px;margin-top:4px;color:#83909e;font-size:.7rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.activity-list time{color:#7f8d9c;font-size:.67rem;white-space:nowrap}.activity-dot{width:9px;height:9px;border-radius:50%;background:#0f9f96}.activity-dot.warning{background:#dd9100}.activity-dot.danger{background:#e33b32}.activity-empty{padding:40px 0;text-align:center;color:#8996a4}
.home-more{margin-bottom:10px}.home-mini-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding-top:18px}.home-mini-grid a{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:14px 15px;border:1px solid #e3e9ee;border-radius:12px;background:#fafcfd;color:#516377;text-decoration:none}.home-mini-grid span{font-size:.75rem}.home-mini-grid strong{color:#102a4c;font-size:1.25rem}
@media(max-width:1250px){.home-kpis{grid-template-columns:1fr 1fr}.home-mini-grid{grid-template-columns:1fr 1fr}}
@media(max-width:850px){.home-toolbar{margin-top:0}.home-main-grid{grid-template-columns:1fr}.home-head{align-items:flex-start;flex-direction:column}.home-search{width:100%}.home-toolbar-actions>span{display:none}}
@media(max-width:600px){.home-kpis,.home-mini-grid{grid-template-columns:1fr}.home-kpis>a{padding:17px}.home-toolbar{margin-bottom:20px}.home-head .button-group,.home-head .button{width:100%}.overview-bars>a{grid-template-columns:110px 1fr 30px;gap:9px}.home-finance-strip{grid-template-columns:1fr;gap:12px;background:#fff}.home-finance-strip span{padding:0}.activity-list>a{grid-template-columns:10px 1fr}.activity-list time{display:none}}

/* Main module dashboards · Light Corporate v4.3.8 */
.module-hero{
  position:relative;overflow:hidden;min-height:168px;padding:30px 32px;
  border:1px solid #dbe8ed;border-radius:20px;
  background:
    radial-gradient(circle at 88% 20%,rgba(15,139,141,.18),transparent 28%),
    linear-gradient(118deg,#f5fbfb 0%,#fff 54%,#eef8f7 100%);
  box-shadow:0 14px 40px rgba(22,50,79,.07)
}
.module-hero:after{
  content:"";position:absolute;right:-48px;bottom:-82px;width:210px;height:210px;
  border:34px solid rgba(15,139,141,.07);border-radius:50%;pointer-events:none
}
.module-hero>div{position:relative;z-index:1}
.module-hero h1{color:#16324f;font-size:clamp(1.65rem,2.4vw,2.25rem);letter-spacing:-.025em}
.module-hero p{max-width:720px;margin-top:10px;color:#62758a;font-size:1rem;line-height:1.55}
.module-hero .button-group{justify-content:flex-end}
.module-hero .button{
  padding:11px 16px;border-radius:10px;background:#087d82;
  box-shadow:0 5px 14px rgba(8,125,130,.16)
}
.module-hero .button.secondary{background:#fff;color:#284961;border:1px solid #d5e2e8;box-shadow:none}

:is(.workspace-subnav,.control-subnav,.commercial-subnav,.after-sales-subnav,.compliance-subnav,.people-subnav,.supply-chain-subnav,.mobility-subnav,.administration-subnav,.crm-tabs){
  gap:7px;padding:7px;margin:-7px 0 20px;border:1px solid #e1e9ef;border-radius:13px;background:#fff;
  box-shadow:0 5px 18px rgba(22,50,79,.04)
}
:is(.workspace-subnav,.control-subnav,.commercial-subnav,.after-sales-subnav,.compliance-subnav,.people-subnav,.supply-chain-subnav,.mobility-subnav,.administration-subnav,.crm-tabs) a{
  padding:9px 13px;border-radius:8px;background:transparent
}

:is(.workspace-summary,.control-summary,.commercial-summary,.after-sales-summary,.compliance-summary,.people-summary,.supply-chain-summary,.mobility-summary,.administration-summary){
  gap:13px;margin-bottom:22px
}
:is(.workspace-summary,.control-summary,.commercial-summary,.after-sales-summary,.compliance-summary,.people-summary,.supply-chain-summary,.mobility-summary,.administration-summary) article{
  position:relative;overflow:hidden;min-height:112px;padding:17px 17px 15px;
  border:1px solid #e0e8ee;border-radius:15px;background:#fff;
  box-shadow:0 8px 24px rgba(22,50,79,.055)
}
:is(.workspace-summary,.control-summary,.commercial-summary,.after-sales-summary,.compliance-summary,.people-summary,.supply-chain-summary,.mobility-summary,.administration-summary) article:before{
  content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#0f8b8d
}
:is(.workspace-summary,.control-summary,.commercial-summary,.after-sales-summary,.compliance-summary,.people-summary,.supply-chain-summary,.mobility-summary,.administration-summary) article span{
  color:#748496;font-size:.76rem;font-weight:750;letter-spacing:.02em;text-transform:uppercase
}
:is(.workspace-summary,.control-summary,.commercial-summary,.after-sales-summary,.compliance-summary,.people-summary,.supply-chain-summary,.mobility-summary,.administration-summary) article strong{
  color:#173652;font-size:1.65rem;margin-top:11px;letter-spacing:-.02em
}

:is(.workspace-panel,.control-panel,.commercial-panel,.after-sales-panel,.compliance-panel,.people-panel,.supply-chain-panel,.mobility-panel,.administration-panel,.card){
  border-color:#e0e8ee;box-shadow:0 9px 28px rgba(22,50,79,.055)
}
:is(.workspace-panel,.control-panel,.commercial-panel,.after-sales-panel,.compliance-panel,.people-panel,.supply-chain-panel,.mobility-panel,.administration-panel) .section-head{
  padding-bottom:13px;border-bottom:1px solid #edf1f4
}
.section-head h2{color:#1d405c;font-size:1.08rem}
.section-head a{color:#087d82;font-weight:750;text-decoration:none}

@media(max-width:760px){
  .module-hero{min-height:0;padding:23px 20px}
  .module-hero .button-group{justify-content:flex-start}
}

/* Unified typography control · v4.3.27 */
:root{
  --erp-font-family:"Franklin Gothic Medium Cond","Franklin Gothic Medium Condensed","Arial Narrow",Arial,sans-serif;
  --erp-ui-scale:1;
  --erp-font-ui:clamp(.88rem,.18vw + .83rem,1rem);
  --erp-font-nav:clamp(.84rem,.15vw + .8rem,.96rem);
  --erp-font-label:clamp(.72rem,.12vw + .69rem,.82rem);
  --erp-font-value:clamp(1.22rem,.7vw + .98rem,1.72rem);
}
html{font-size:calc(100% * var(--erp-ui-scale))}
body{font-family:var(--erp-font-family);font-size:var(--erp-font-ui);line-height:var(--erp-line-height,1.45)}
:is(.workspace-subnav,.control-subnav,.commercial-subnav,.after-sales-subnav,.compliance-subnav,.people-subnav,.supply-chain-subnav,.mobility-subnav,.administration-subnav,.crm-tabs) a{
  font-size:var(--erp-font-nav);line-height:1.25;white-space:nowrap
}

/* Administration · Design settings */
.design-settings-layout{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr);gap:22px;align-items:start}
.design-settings-panel,.design-preview{margin:0}
.design-settings-panel .section-head{margin-bottom:22px}
.design-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px 22px}
.design-fields>label:first-child{grid-column:1/-1}
.range-field{display:grid;gap:10px}
.range-field>span{display:flex;justify-content:space-between;gap:15px}
.range-field output{min-width:58px;color:#087d82;font-weight:800;text-align:right}
.range-field input[type=range]{width:100%;padding:0;accent-color:#0f8b8d}
.design-actions{margin-top:26px}
.design-preview{position:sticky;top:96px;overflow:hidden;background:linear-gradient(145deg,#f7fbfc,#fff)}
.design-preview-eyebrow{color:#0b9188;font-size:.7rem;font-weight:900;letter-spacing:.12em}
.design-preview h2{margin:8px 0 5px;color:#16324f;font-size:1.55em}
.design-preview>p{margin:0 0 20px;color:#718195}
.design-preview nav{display:flex;gap:7px;padding:7px;border:1px solid #e1e9ef;border-radius:12px;background:#fff}
.design-preview nav a{padding:8px 10px;border-radius:7px;color:#52677b;font-size:var(--preview-nav,14px);font-weight:700}
.design-preview nav a.active{color:#087d82;background:#e7f5f3}
.design-preview-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0}
.design-preview-cards article{padding:16px;border:1px solid #e0e8ee;border-radius:14px;background:#fff;box-shadow:0 7px 22px rgba(22,50,79,.05)}
.design-preview-cards span{display:block;color:#748496;font-size:var(--preview-label,12px);font-weight:750}
.design-preview-cards strong{display:block;margin-top:10px;color:#173652;font-size:var(--preview-value,24px);line-height:1.1}
.design-preview label{font-size:var(--preview-label,12px)}
.design-preview input{margin-top:7px}
@media(max-width:1050px){.design-settings-layout{grid-template-columns:1fr}.design-preview{position:static}}
@media(max-width:650px){.design-fields,.design-preview-cards{grid-template-columns:1fr}.design-fields>label:first-child{grid-column:auto}}
:is(.workspace-summary,.control-summary,.commercial-summary,.after-sales-summary,.compliance-summary,.people-summary,.supply-chain-summary,.mobility-summary,.administration-summary) article{
  min-width:0
}
:is(.workspace-summary,.control-summary,.commercial-summary,.after-sales-summary,.compliance-summary,.people-summary,.supply-chain-summary,.mobility-summary,.administration-summary) article span{
  font-size:var(--erp-font-label);line-height:1.3
}
:is(.workspace-summary,.control-summary,.commercial-summary,.after-sales-summary,.compliance-summary,.people-summary,.supply-chain-summary,.mobility-summary,.administration-summary) article strong{
  max-width:100%;font-size:var(--erp-font-value);line-height:1.12;
  overflow-wrap:normal;word-break:normal
}
.control-summary article strong{white-space:nowrap}
.filter-card :is(label,input,select,button,.button){font-size:var(--erp-font-ui)}
.filter-card label{line-height:1.25}
@media(max-width:1400px) and (min-width:1101px){
  .control-summary strong{font-size:clamp(1.08rem,1.45vw,1.35rem)}
}
@media(max-width:700px){
  :root{--erp-font-value:1.35rem}
  :is(.workspace-subnav,.control-subnav,.commercial-subnav,.after-sales-subnav,.compliance-subnav,.people-subnav,.supply-chain-subnav,.mobility-subnav,.administration-subnav,.crm-tabs) a{
    white-space:normal
  }
}

/* System check results: compact, readable columns · v4.3.59 */
.system-check-table{
  width:100%;min-width:0;table-layout:fixed
}
.system-check-table th,
.system-check-table td{
  max-width:none;white-space:normal;overflow-wrap:anywhere;word-break:normal;
  line-height:1.42
}
.system-check-table th:nth-child(1),
.system-check-table td:nth-child(1){width:108px}
.system-check-table th:nth-child(2),
.system-check-table td:nth-child(2){width:132px}
.system-check-table th:nth-child(3),
.system-check-table td:nth-child(3){width:210px}
.system-check-table th:nth-child(6),
.system-check-table td:nth-child(6){width:148px;text-align:right}
.system-check-table td:nth-child(4),
.system-check-table td:nth-child(5){min-width:0}
.system-check-table td small{display:block;white-space:normal;line-height:1.42}
.system-check-table td:last-child .button{white-space:nowrap}

@media(max-width:900px){
  .system-check-table thead{
    position:absolute;width:1px;height:1px;padding:0;margin:-1px;
    overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0
  }
  .system-check-table,
  .system-check-table tbody,
  .system-check-table tr,
  .system-check-table td{display:block;width:100%}
  .system-check-table tr{
    margin-bottom:12px;padding:12px 14px;border:1px solid #e1e8ee;
    border-radius:11px
  }
  .system-check-table td,
  .system-check-table td:nth-child(n){
    display:grid;grid-template-columns:112px minmax(0,1fr);gap:10px;
    width:100%;padding:6px 0;border:0;text-align:left
  }
  .system-check-table td::before{
    color:#68778a;font-size:.76rem;font-weight:800;line-height:1.42
  }
  .system-check-table td:nth-child(1)::before{content:"Състояние"}
  .system-check-table td:nth-child(2)::before{content:"Категория"}
  .system-check-table td:nth-child(3)::before{content:"Проверка"}
  .system-check-table td:nth-child(4)::before{content:"Резултат"}
  .system-check-table td:nth-child(5)::before{content:"Подробности"}
  .system-check-table td:nth-child(6)::before{content:"Действие"}
  .system-check-table td:last-child .button{justify-self:start}
}

@media(max-width:520px){
  .system-check-table td,
  .system-check-table td:nth-child(n){grid-template-columns:1fr;gap:3px}
}

/* Stable application frame and CRM dashboard · v4.3.73
   Keep this block last: it is the protected final layout contract. */
body.erp-authenticated{
  min-width:320px;
  overflow-x:hidden;
}
.erp-authenticated .topbar{
  position:fixed!important;
  inset:0 0 auto 0!important;
  z-index:100!important;
  width:100%!important;
  height:76px!important;
  min-height:76px!important;
  padding:12px 26px!important;
  overflow:hidden;
}
.erp-authenticated .topbar .brand{
  min-width:0;
  max-width:420px;
  color:#16324f;
  text-decoration:none;
}
.erp-authenticated .topbar .brand strong,
.erp-authenticated .topbar .brand small{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.erp-shell{
  min-height:100vh!important;
  padding-top:76px!important;
}
.erp-content{
  min-width:0!important;
  margin-left:276px!important;
}
.erp-content .container{
  width:auto!important;
  max-width:1540px!important;
  margin:0 auto!important;
  padding:28px 30px 44px!important;
  overflow:visible!important;
}

.crm-dashboard{
  width:100%;
  min-width:0;
  font-size:16px;
}
.crm-dashboard *{
  min-width:0;
}
.crm-dashboard .module-hero{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:24px!important;
  min-height:168px!important;
  margin:0 0 22px!important;
  padding:28px 30px!important;
}
.crm-dashboard .module-hero h1{
  margin:0!important;
  line-height:1.15!important;
}
.crm-dashboard .module-hero p{
  margin:10px 0 0!important;
}
.crm-dashboard .module-hero .button-group{
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:flex-end!important;
  align-items:center!important;
  gap:9px!important;
}
.crm-dashboard .module-hero .button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:42px!important;
  padding:10px 15px!important;
  line-height:1.2!important;
  white-space:nowrap!important;
}

.crm-kpi-grid{
  display:grid!important;
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  gap:13px!important;
  width:100%!important;
  margin:0 0 20px!important;
}
.crm-kpi-grid article{
  position:relative!important;
  display:grid!important;
  grid-template-rows:auto 1fr auto!important;
  align-content:start!important;
  gap:8px!important;
  min-width:0!important;
  min-height:128px!important;
  margin:0!important;
  padding:17px 16px 15px 19px!important;
  overflow:hidden!important;
  border:1px solid #e0e8ee!important;
  border-radius:15px!important;
  background:#fff!important;
  box-shadow:0 8px 24px rgba(22,50,79,.055)!important;
}
.crm-kpi-grid article::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:4px;
  background:#0f8b8d;
}
.crm-kpi-grid article.metric-alert::before{
  background:#d99a24;
}
.crm-kpi-grid span,
.crm-kpi-grid strong,
.crm-kpi-grid small{
  display:block!important;
  max-width:100%!important;
  margin:0!important;
  overflow-wrap:break-word!important;
  word-break:normal!important;
}
.crm-kpi-grid span{
  color:#66788a!important;
  font-size:12px!important;
  font-weight:750!important;
  line-height:1.35!important;
}
.crm-kpi-grid strong,
.crm-kpi-grid strong.metric-money{
  align-self:center;
  color:#173652!important;
  font-size:clamp(20px,1.5vw,27px)!important;
  line-height:1.08!important;
  white-space:normal!important;
}
.crm-kpi-grid small{
  color:#8a97a5!important;
  font-size:11px!important;
  line-height:1.3!important;
}

.crm-dashboard .crm-tabs{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  gap:7px!important;
  width:100%!important;
  margin:0 0 20px!important;
  padding:7px!important;
  overflow:visible!important;
}
.crm-dashboard .crm-tabs a{
  display:inline-flex!important;
  align-items:center!important;
  min-height:38px!important;
  padding:8px 12px!important;
  font-size:13px!important;
  line-height:1.2!important;
  white-space:nowrap!important;
  text-decoration:none!important;
}
.crm-dashboard > .grid-2{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:18px!important;
  width:100%!important;
}
.crm-dashboard > .grid-2 > .card{
  min-width:0!important;
  margin:0!important;
}

@media(max-width:1600px){
  .crm-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:1050px){
  .erp-authenticated .topbar{
    height:68px!important;
    min-height:68px!important;
    padding:10px 18px!important;
  }
  .erp-shell{padding-top:68px!important}
  .erp-content{margin-left:0!important}
  .erp-content .container{padding:22px 18px 36px!important}
  .sidebar{top:68px!important}
  .crm-dashboard .module-hero{
    grid-template-columns:1fr!important;
    min-height:0!important;
  }
  .crm-dashboard .module-hero .button-group{justify-content:flex-start!important}
}
@media(max-width:760px){
  .crm-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .crm-dashboard > .grid-2{grid-template-columns:1fr!important}
}
@media(max-width:520px){
  .erp-content .container{padding:16px 12px 30px!important}
  .crm-dashboard{font-size:15px}
  .crm-dashboard .module-hero{padding:21px 18px!important}
  .crm-dashboard .module-hero .button-group,
  .crm-dashboard .module-hero .button{width:100%!important}
  .crm-kpi-grid{grid-template-columns:1fr!important}
  .crm-kpi-grid article{min-height:112px!important}
  .crm-dashboard .crm-tabs{display:grid!important;grid-template-columns:1fr!important}
  .crm-dashboard .crm-tabs a{white-space:normal!important}
}

/* Unified fields, rows and columns · stable system layer v4.3.74
   Scoped to interactive ERP and portal pages so print layouts stay unchanged. */
body.erp-ui-standard{
  --ui-control-height:40px;
  --ui-control-height-small:32px;
  --ui-row-gap:12px;
  --ui-column-gap:14px;
  --ui-cell-x:11px;
  --ui-cell-y:10px;
}
body.erp-ui-standard :where(form,fieldset,label,.card,.table-wrap){min-width:0}
body.erp-ui-standard fieldset{
  width:100%;margin:0;padding:14px;border:1px solid #dfe7ef;border-radius:11px
}
body.erp-ui-standard legend{padding:0 6px;color:#52677b;font-weight:800}
body.erp-ui-standard form:not(.inline-action):not(.company-switch){gap:var(--ui-row-gap)}
body.erp-ui-standard label{
  gap:6px;max-width:100%;font-size:clamp(12px,var(--erp-font-ui),14px);
  line-height:1.3
}
body.erp-ui-standard :where(
  input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]):not([type="file"]),
  select:not([multiple])
){
  width:100%;min-width:0;max-width:100%;height:var(--ui-control-height);
  padding:8px 10px;border-color:#cbd7e3;border-radius:8px;
  font-size:clamp(12px,var(--erp-font-ui),14px);line-height:1.2
}
body.erp-ui-standard :where(textarea,select[multiple],input[type="file"]){
  width:100%;min-width:0;max-width:100%;padding:8px 10px;
  border-color:#cbd7e3;border-radius:8px;
  font-size:clamp(12px,var(--erp-font-ui),14px);line-height:1.4
}
body.erp-ui-standard textarea{min-height:88px}
body.erp-ui-standard select[multiple]{min-height:112px}
body.erp-ui-standard input[type="file"]{min-height:var(--ui-control-height);padding:6px 8px}
body.erp-ui-standard :where(input[type="checkbox"],input[type="radio"]){
  width:17px;height:17px;min-width:17px;margin:0;accent-color:#0f8587
}
body.erp-ui-standard .check{min-height:var(--ui-control-height);gap:8px}
/* Notification preferences are a compact checklist, not full-height form rows. */
body.erp-ui-standard .notification-preferences-card{align-self:start}
body.erp-ui-standard .notification-settings-layout{
  grid-template-columns:minmax(0,1fr)!important;
  align-items:start;
}
body.erp-ui-standard .notification-settings-layout>.card{
  width:100%;
  min-width:0;
  align-self:start;
}
body.erp-ui-standard .notification-preferences-form{
  gap:7px;
  align-content:start;
}
body.erp-ui-standard .notification-preferences-form>.check{
  min-height:24px;
  margin:0;
  padding:0;
  line-height:1.25;
}
body.erp-ui-standard .notification-preferences-form>hr{
  width:100%;
  margin:3px 0;
}
body.erp-ui-standard .notification-category-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:7px 22px;
  width:100%;
  min-width:0;
}
body.erp-ui-standard .notification-category-grid>.check{
  min-width:0;
  min-height:24px;
  margin:0;
  padding:0;
  line-height:1.25;
}
@media(max-width:1100px){
  body.erp-ui-standard .notification-category-grid{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
}
@media(max-width:760px){
  body.erp-ui-standard .notification-category-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
body.erp-ui-standard .notification-preferences-form>button{
  margin-top:5px;
  justify-self:start;
}
body.erp-ui-standard :where(input,select,textarea):focus{
  outline:2px solid rgba(15,133,135,.18);outline-offset:1px;border-color:#0f8587
}
body.erp-ui-standard :where(button,.button){
  min-height:var(--ui-control-height);padding:8px 13px;
  display:inline-flex;align-items:center;justify-content:center;gap:6px;
  line-height:1.2;white-space:normal
}
body.erp-ui-standard :where(button.small,.button.small){
  min-height:var(--ui-control-height-small);padding:6px 9px;font-size:12px
}
body.erp-ui-standard :where(.form-grid-2,.grid-2){
  grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--ui-column-gap)
}
body.erp-ui-standard .form-grid-3{
  grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--ui-row-gap) var(--ui-column-gap)
}
body.erp-ui-standard :where(.form-grid-2,.form-grid-3,.grid-2,.filter-grid,.warehouse-filter)>*{
  min-width:0;max-width:100%
}
body.erp-ui-standard :where(.filter-grid,.warehouse-filter){
  grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr));
  gap:10px 12px;align-items:end
}
body.erp-ui-standard .filter-actions{
  min-height:var(--ui-control-height);display:flex;align-items:stretch;
  justify-content:flex-start;gap:7px;flex-wrap:wrap
}
body.erp-ui-standard .filter-actions :where(button,.button){flex:1 1 auto}
body.erp-ui-standard .inline-form{gap:10px 12px;align-items:end}
body.erp-ui-standard .inline-form label{flex:1 1 180px;min-width:0}
body.erp-ui-standard .inline-form .grow{flex:2 1 280px}
body.erp-ui-standard .inline-action{width:auto;max-width:100%}
body.erp-ui-standard .inline-action :where(button,.button){width:auto}
body.erp-ui-standard .compact-form{padding:12px;gap:10px;border-radius:10px}
body.erp-ui-standard .form-card{width:100%;max-width:100%}
body.erp-ui-standard :where(.button-group,.sales-actions,.notification-actions){
  align-items:center;gap:7px;max-width:100%
}
body.erp-ui-standard .details{
  grid-template-columns:minmax(120px,160px) minmax(0,1fr);gap:8px 12px
}
body.erp-ui-standard .details :where(dt,dd){min-width:0;overflow-wrap:anywhere}

body.erp-ui-standard .table-wrap{
  width:100%;max-width:100%;overflow-x:auto;overflow-y:hidden;
  overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch
}
body.erp-ui-standard .ui-auto-table-wrap{margin:0}
body.erp-ui-standard table{
  width:100%;max-width:100%;border-collapse:separate;border-spacing:0;
  font-size:clamp(12px,var(--erp-font-ui),14px)
}
body.erp-ui-standard :where(th,td){
  min-width:0;padding:var(--ui-cell-y) var(--ui-cell-x);
  vertical-align:middle;line-height:1.35;white-space:normal;
  overflow-wrap:anywhere;word-break:normal
}
body.erp-ui-standard thead tr{height:42px}
body.erp-ui-standard tbody tr{height:46px}
body.erp-ui-standard th{
  color:#68798c;font-size:12px;font-weight:800;line-height:1.25
}
body.erp-ui-standard td :where(.badge,time){white-space:nowrap}
body.erp-ui-standard td :where(.button-group,.sales-actions){
  min-width:max-content;justify-content:flex-start;flex-wrap:wrap
}
body.erp-ui-standard td :where(input,select){min-width:90px}
body.erp-ui-standard td :where(textarea,.description-input){min-width:220px}
body.erp-ui-standard table :where(button.small,.button.small){min-height:30px;padding:5px 8px}
body.erp-ui-standard tbody tr:last-child td{border-bottom:0}

@media(max-width:1180px){
  body.erp-ui-standard .form-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  body.erp-ui-standard{--ui-cell-x:9px;--ui-cell-y:8px}
  body.erp-ui-standard :where(.form-grid-2,.form-grid-3,.grid-2){grid-template-columns:1fr}
  body.erp-ui-standard :where(.filter-grid,.warehouse-filter){grid-template-columns:1fr}
  body.erp-ui-standard .filter-actions{width:100%}
  body.erp-ui-standard .filter-actions :where(button,.button){flex:1 1 140px}
  body.erp-ui-standard .details{grid-template-columns:1fr;gap:3px}
  body.erp-ui-standard .details dd{margin:0 0 8px}
  body.erp-ui-standard table{font-size:12px}
  body.erp-ui-standard td :where(.button-group,.sales-actions){min-width:0}
}
@media(max-width:480px){
  body.erp-ui-standard .button-group :where(button,.button){flex:1 1 100%}
  body.erp-ui-standard td .button-group :where(button,.button){flex:0 1 auto}
}

/* Compact CRM leads table typography · stable page layer v4.3.75
   Keep headings readable at narrower desktop widths without splitting words. */
body.erp-ui-standard .crm-leads-filter label{
  font-size:12px;
  line-height:1.25;
}
body.erp-ui-standard .crm-leads-filter :where(
  input:not([type="checkbox"]):not([type="radio"]),
  select,
  button,
  .button
){
  font-size:12px;
}
body.erp-ui-standard .crm-leads-table{
  min-width:1138px;
  table-layout:fixed;
  font-size:11px;
}
body.erp-ui-standard .crm-leads-table :where(th,td){
  padding:8px 7px;
  line-height:1.3;
  word-break:normal;
  overflow-wrap:normal;
  hyphens:none;
}
body.erp-ui-standard .crm-leads-table th{
  font-size:10px;
  line-height:1.25;
  letter-spacing:.01em;
  white-space:normal;
}
body.erp-ui-standard .crm-leads-table td{
  font-size:11px;
}
body.erp-ui-standard .crm-leads-table .empty{
  font-size:12px;
  line-height:1.4;
}
body.erp-ui-standard .crm-leads-table :is(th,td):nth-child(1){width:62px}
body.erp-ui-standard .crm-leads-table :is(th,td):nth-child(2){width:170px}
body.erp-ui-standard .crm-leads-table :is(th,td):nth-child(3){width:115px}
body.erp-ui-standard .crm-leads-table :is(th,td):nth-child(4){width:110px}
body.erp-ui-standard .crm-leads-table :is(th,td):nth-child(5){width:86px}
body.erp-ui-standard .crm-leads-table :is(th,td):nth-child(6){width:115px}
body.erp-ui-standard .crm-leads-table :is(th,td):nth-child(7){width:165px}
body.erp-ui-standard .crm-leads-table :is(th,td):nth-child(8){width:130px}
body.erp-ui-standard .crm-leads-table :is(th,td):nth-child(9){width:110px}
body.erp-ui-standard .crm-leads-table :is(th,td):nth-child(10){width:75px}
body.erp-ui-standard .crm-leads-table td :where(.badge,.button.small){
  font-size:10px;
}

@media(max-width:760px){
  body.erp-ui-standard .crm-leads-table th{font-size:9px}
  body.erp-ui-standard .crm-leads-table td{font-size:10px}
  body.erp-ui-standard .crm-leads-table .empty{font-size:11px}
}

/* Vehicle dossier and assigned-driver access · stable module layer v4.3.76 */
body.erp-ui-standard .vehicle-dossier-nav{
  display:flex;align-items:center;gap:8px;flex-wrap:wrap;
  margin:0 0 16px;padding:8px;background:#f1f5f8;
  border:1px solid #dbe5ed;border-radius:12px
}
body.erp-ui-standard .vehicle-dossier-nav a{
  min-height:34px;display:inline-flex;align-items:center;padding:7px 12px;
  border-radius:8px;color:#24435d;text-decoration:none;font-size:12px;font-weight:800
}
body.erp-ui-standard .vehicle-dossier-nav a:hover,
body.erp-ui-standard .vehicle-dossier-nav a:focus-visible{
  background:#fff;color:#0f787a;box-shadow:0 1px 4px rgba(25,55,75,.1)
}
body.erp-ui-standard :where(#vehicle-overview,#vehicle-data,#vehicle-documents,#vehicle-costs){
  scroll-margin-top:88px
}
body.erp-ui-standard .vehicle-driver-notice{margin:0 0 16px}
body.erp-ui-standard .vehicle-summary{
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr))
}
body.erp-ui-standard .vehicle-summary div{
  min-width:0;border:1px solid #e2e9ef
}
body.erp-ui-standard .vehicle-summary strong{
  font-size:clamp(13px,1.2vw,17px);overflow-wrap:anywhere
}
body.erp-ui-standard .vehicle-dossier-section{
  min-width:0;align-self:start
}
body.erp-ui-standard .vehicle-dossier-section .compact-form{
  margin:0 0 14px;background:#f8fafc;border:1px solid #dfe8ef
}
body.erp-ui-standard .vehicle-dossier-section .compact-form h3{
  margin:0 0 4px;font-size:14px;color:#24435d
}
body.erp-ui-standard .vehicle-record-actions{
  display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap
}
body.erp-ui-standard .expiry-item small,
body.erp-ui-standard .vehicle-cost-table small{
  display:block;margin-top:3px;color:#6d7f90
}
body.erp-ui-standard .vehicle-cost-table{
  min-width:980px;table-layout:auto;font-size:12px
}
body.erp-ui-standard .vehicle-cost-table th{font-size:11px;white-space:nowrap}
body.erp-ui-standard .vehicle-cost-table :is(th,td):nth-child(1){width:92px}
body.erp-ui-standard .vehicle-cost-table :is(th,td):nth-child(2){width:105px}
body.erp-ui-standard .vehicle-cost-table :is(th,td):nth-child(6){width:90px}
body.erp-ui-standard .vehicle-cost-table :is(th,td):nth-child(7){width:130px}
body.erp-ui-standard .vehicle-cost-table :is(th,td):nth-child(8){width:92px}

@media(max-width:760px){
  body.erp-ui-standard .vehicle-dossier-nav{display:grid;grid-template-columns:1fr 1fr}
  body.erp-ui-standard .vehicle-dossier-nav a{justify-content:center}
  body.erp-ui-standard .expiry-item{align-items:flex-start;flex-direction:column}
  body.erp-ui-standard .vehicle-record-actions{justify-content:flex-start}
}

/* Emergency frame repair and zoom-safe module layout · v4.3.77
   This block is intentionally last so older accumulated rules cannot break it. */
body.erp-ui-standard .erp-content,
body.erp-ui-standard .erp-content .container,
body.erp-ui-standard .control-layout-stable{
  min-width:0;
  max-width:100%;
}
body.erp-ui-standard .page-head.module-hero > *{
  min-width:0;
  max-width:100%;
}
body.erp-ui-standard .page-head.module-hero .button-group{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  max-width:100%;
}
body.erp-ui-standard .page-head.module-hero .button{
  max-width:100%;
  white-space:normal;
}

body.erp-ui-standard .control-layout-stable{
  display:block;
  width:100%;
}
body.erp-ui-standard .control-layout-stable .module-hero{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:22px;
  width:100%;
}
body.erp-ui-standard .control-layout-stable .module-hero .button-group{
  justify-content:flex-end;
}
body.erp-ui-standard .control-layout-stable .control-subnav{
  position:relative;
  z-index:2;
  clear:both;
  display:flex;
  visibility:visible;
  width:100%;
  max-width:100%;
  flex-wrap:wrap;
  overflow:visible;
}
body.erp-ui-standard .control-layout-stable .filter-card,
body.erp-ui-standard .control-layout-stable .control-summary,
body.erp-ui-standard .control-layout-stable .control-project-grid,
body.erp-ui-standard .control-layout-stable .control-grid{
  width:100%;
  min-width:0;
  max-width:100%;
}

@media(max-width:1450px) and (min-width:1051px){
  body.erp-ui-standard .erp-content .container{
    padding-left:22px!important;
    padding-right:22px!important;
  }
  body.erp-ui-standard .control-layout-stable .module-hero{
    grid-template-columns:1fr;
    align-items:start;
  }
  body.erp-ui-standard .control-layout-stable .module-hero .button-group{
    width:100%;
    justify-content:flex-start;
  }
  body.erp-ui-standard .control-layout-stable .control-summary{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  body.erp-ui-standard .control-layout-stable .control-project-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:1050px){
  body.erp-ui-standard .control-layout-stable .module-hero{
    grid-template-columns:1fr;
    min-height:0;
  }
  body.erp-ui-standard .control-layout-stable .module-hero .button-group{
    width:100%;
    justify-content:flex-start;
  }
  body.erp-ui-standard .control-layout-stable .control-summary{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  body.erp-ui-standard .control-layout-stable .control-project-grid,
  body.erp-ui-standard .control-layout-stable .control-grid{
    grid-template-columns:1fr;
  }
}

@media(max-width:600px){
  body.erp-ui-standard .control-layout-stable .module-hero .button-group,
  body.erp-ui-standard .control-layout-stable .module-hero .button{
    width:100%;
  }
  body.erp-ui-standard .control-layout-stable .control-summary{
    grid-template-columns:1fr;
  }
}

/* Assigned vehicle and active cost section · v4.3.78 */
body.erp-ui-standard .vehicle-dossier-nav a.active{
  background:#0f7f82;
  color:#fff;
  box-shadow:0 4px 12px rgba(15,127,130,.2);
}
body.erp-ui-standard .vehicle-dossier-nav a.active:hover,
body.erp-ui-standard .vehicle-dossier-nav a.active:focus-visible{
  background:#0b6e71;
  color:#fff;
}
body.erp-ui-standard .vehicle-dossier-active{
  border-color:#78bfc1;
  box-shadow:0 0 0 3px rgba(15,127,130,.08),0 12px 30px rgba(25,55,75,.08);
}
body.erp-ui-standard .fleet-card-actions{
  margin-top:auto;
  justify-content:flex-start;
}

@media(max-width:600px){
  body.erp-ui-standard .fleet-card-actions,
  body.erp-ui-standard .fleet-card-actions .button{
    width:100%;
  }
}

/* Protected home toolbar controls · v4.3.79
   These specific selectors prevent the global form/button rules from
   overriding the search icon spacing and desktop sidebar-toggle visibility. */
body.erp-ui-standard .home-search{
  position:relative;
  display:block;
  min-width:0;
}
body.erp-ui-standard .home-search > span{
  position:absolute;
  z-index:2;
  left:17px;
  top:50%;
  width:24px;
  height:24px;
  display:grid;
  place-items:center;
  margin:0;
  color:#64748b;
  font-size:22px;
  line-height:1;
  transform:translateY(-50%);
  pointer-events:none;
}
body.erp-ui-standard .home-search > input[type="search"]{
  height:48px;
  padding:8px 16px 8px 52px;
  border-color:#d3dce6;
  border-radius:12px;
  line-height:1.2;
}

@media(min-width:1051px){
  body.erp-authenticated .topbar > .sidebar-toggle{
    display:none!important;
  }
}

@media(max-width:1050px){
  body.erp-authenticated .topbar > .sidebar-toggle{
    display:grid!important;
    grid-template-rows:repeat(3,2px);
    align-content:center;
    gap:4px;
    width:42px;
    min-width:42px;
    height:42px;
    min-height:42px;
    padding:10px;
    border:0;
    border-radius:10px;
    background:#f0f5f8;
    box-shadow:none;
  }
  body.erp-authenticated .topbar > .sidebar-toggle span{
    display:block!important;
    width:100%;
    height:2px;
    margin:0;
    border-radius:2px;
    background:#16324f;
  }
}

/* Direct vehicle cost entry · v4.3.80 */
body.erp-ui-standard .fleet-new-cost-card{
  margin-bottom:24px;
  border-color:#9fcfd1;
  box-shadow:0 0 0 3px rgba(15,127,130,.07),0 14px 34px rgba(25,55,75,.08);
}
body.erp-ui-standard .fleet-new-cost-card .section-head{
  align-items:flex-start;
  padding-bottom:16px;
  border-bottom:1px solid #e2eaf0;
}
body.erp-ui-standard .fleet-new-cost-card .section-head p{
  margin:5px 0 0;
  color:#68778a;
}
body.erp-ui-standard .fleet-new-cost-form{
  display:grid;
  gap:16px;
}
body.erp-ui-standard .assigned-vehicle-field,
body.erp-ui-standard .fleet-calculated-total{
  display:flex;
  min-width:0;
  flex-direction:column;
  justify-content:center;
  gap:4px;
  padding:13px 15px;
  border:1px solid #c9dce2;
  border-radius:11px;
  background:#f3f8f9;
}
body.erp-ui-standard .assigned-vehicle-field span,
body.erp-ui-standard .fleet-calculated-total span{
  color:#536579;
  font-size:12px;
  font-weight:800;
  letter-spacing:.02em;
}
body.erp-ui-standard .assigned-vehicle-field strong{
  color:#173550;
  font-size:15px;
}
body.erp-ui-standard .assigned-vehicle-field small,
body.erp-ui-standard .fleet-calculated-total small{
  color:#68778a;
}
body.erp-ui-standard .fleet-calculated-total strong{
  color:#0f7f82;
  font-size:22px;
  line-height:1.1;
}
body.erp-ui-standard .fleet-new-cost-form textarea{
  min-height:82px;
}

@media(max-width:900px){
  body.erp-ui-standard .fleet-new-cost-card .section-head{
    flex-direction:column;
  }
  body.erp-ui-standard .fleet-new-cost-card .section-head .button{
    align-self:flex-start;
  }
}

@media(max-width:600px){
  body.erp-ui-standard .fleet-new-cost-form .button-group,
  body.erp-ui-standard .fleet-new-cost-form .button-group :is(button,.button){
    width:100%;
  }
}

/* Protected page layouts after the v4.3.80 cross-module audit · v4.3.81
   Keep page-specific structure separate from the shared form and table rules. */
body.erp-ui-standard :where(
  .administration-grid,
  .workspace-grid,
  .control-grid,
  .control-project-grid,
  .commercial-grid,
  .after-sales-grid,
  .compliance-grid,
  .people-grid,
  .supply-chain-grid,
  .mobility-grid,
  .fleet-card-grid
){
  min-width:0;
  max-width:100%;
  align-items:start;
}
body.erp-ui-standard :where(
  .administration-grid,
  .workspace-grid,
  .control-grid,
  .control-project-grid,
  .commercial-grid,
  .after-sales-grid,
  .compliance-grid,
  .people-grid,
  .supply-chain-grid,
  .mobility-grid,
  .fleet-card-grid
)>*{
  min-width:0;
  max-width:100%;
}

/* Users and permissions: the approved vertical order is a fixed page contract. */
body.erp-ui-standard .users-page-stack{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:0!important;
  width:100%;
  min-width:0;
  max-width:100%;
}
body.erp-ui-standard .users-page-stack>.user-access-card,
body.erp-ui-standard .users-page-stack>.roles-access-card{
  width:100%!important;
  min-width:0;
  max-width:none!important;
  align-self:start;
  padding:28px 32px;
}
body.erp-ui-standard .user-access-card>h2,
body.erp-ui-standard .roles-access-card>h2{
  margin-bottom:22px;
}
body.erp-ui-standard .user-profile-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px 24px;
}
body.erp-ui-standard .user-profile-grid>label{
  min-width:0;
  margin:0;
}
body.erp-ui-standard .company-access-fieldset{
  min-width:0;
  margin:22px 0 0;
}
body.erp-ui-standard .company-access-options{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px 24px;
}
body.erp-ui-standard .company-access-options .check{
  margin:0;
}
body.erp-ui-standard .roles-access-card>p{
  max-width:900px;
  margin-bottom:22px;
  line-height:1.55;
}
body.erp-ui-standard .user-access-summary{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
}
body.erp-ui-standard .user-access-summary>div{
  min-width:0;
  min-height:92px;
  padding:16px 18px;
  border:1px solid #e2e9f0;
  border-radius:13px;
  background:#f7f9fc;
}
body.erp-ui-standard .user-access-summary span,
body.erp-ui-standard .user-access-summary strong{
  display:block;
}
body.erp-ui-standard .user-access-summary span{
  color:#748397;
  font-size:.82rem;
  line-height:1.3;
}
body.erp-ui-standard .user-access-summary strong{
  margin-top:8px;
  color:#172b45;
  font-size:1.45rem;
  line-height:1;
}
body.erp-ui-standard .user-access-card .permission-table{
  width:100%;
  min-width:680px!important;
  table-layout:fixed;
}
body.erp-ui-standard .user-access-card .permission-table th:nth-child(1){width:30%}
body.erp-ui-standard .user-access-card .permission-table th:nth-child(2){width:42%}
body.erp-ui-standard .user-access-card .permission-table th:nth-child(3){width:28%}
body.erp-ui-standard .user-access-card .permission-table td{vertical-align:middle}
body.erp-ui-standard .user-access-card .permission-table select{
  width:100%;
  min-width:0;
  margin:0;
}

/* Users register: fixed desktop columns and readable mobile cards. */
body.erp-ui-standard .users-register-wrap{overflow-x:auto}
body.erp-ui-standard .users-register{
  width:100%;
  min-width:0!important;
  table-layout:fixed;
}
body.erp-ui-standard .users-register th,
body.erp-ui-standard .users-register td{
  padding:13px 10px;
  vertical-align:middle;
}
body.erp-ui-standard .users-register th{
  white-space:nowrap;
  overflow-wrap:normal;
  word-break:normal;
}
body.erp-ui-standard .users-register th:nth-child(1){width:27%}
body.erp-ui-standard .users-register th:nth-child(2){width:16%}
body.erp-ui-standard .users-register th:nth-child(3){width:23%}
body.erp-ui-standard .users-register th:nth-child(4){width:16%;text-align:center}
body.erp-ui-standard .users-register th:nth-child(5){width:9%;text-align:center}
body.erp-ui-standard .users-register th:nth-child(6){width:9%;text-align:right}
body.erp-ui-standard .users-register td:nth-child(4),
body.erp-ui-standard .users-register td:nth-child(5){text-align:center}
body.erp-ui-standard .users-register td:nth-child(6){text-align:right}
body.erp-ui-standard .user-register-identity{
  display:grid;
  gap:5px;
  min-width:0;
}
body.erp-ui-standard .user-register-identity strong{
  color:#1d3148;
  font-size:1rem;
  line-height:1.25;
  overflow-wrap:normal;
}
body.erp-ui-standard .user-register-identity small{
  display:block;
  color:#68798b;
  font-size:.82rem;
  line-height:1.3;
  overflow-wrap:anywhere;
}
body.erp-ui-standard .user-register-companies{
  display:block;
  line-height:1.4;
}
body.erp-ui-standard .unread-total{
  display:inline-grid;
  min-width:30px;
  height:30px;
  padding:0 8px;
  place-items:center;
  border-radius:999px;
  background:#eef4f8;
  color:#36536b;
  font-weight:800;
}

@media(max-width:900px){
  body.erp-ui-standard .users-register{min-width:780px!important}
  body.erp-ui-standard .users-register th:nth-child(1){width:235px}
  body.erp-ui-standard .users-register th:nth-child(2){width:150px}
  body.erp-ui-standard .users-register th:nth-child(3){width:205px}
}

@media(max-width:760px){
  body.erp-ui-standard .users-page-stack>.user-access-card,
  body.erp-ui-standard .users-page-stack>.roles-access-card{
    padding:21px 18px;
  }
  body.erp-ui-standard .user-profile-grid,
  body.erp-ui-standard .user-access-summary{
    grid-template-columns:1fr;
  }
}

@media(max-width:620px){
  body.erp-ui-standard .users-register-wrap{overflow:visible}
  body.erp-ui-standard .users-register{display:block;min-width:0!important}
  body.erp-ui-standard .users-register thead{display:none}
  body.erp-ui-standard .users-register tbody{display:grid;gap:12px}
  body.erp-ui-standard .users-register tr{
    display:grid;
    grid-template-columns:1fr auto;
    gap:0;
    padding:4px 14px;
    border:1px solid #dfe7ee;
    border-radius:12px;
    background:#fff;
    box-shadow:0 4px 14px rgba(22,50,79,.04);
  }
  body.erp-ui-standard .users-register td,
  body.erp-ui-standard .users-register td:nth-child(n){
    display:grid;
    grid-template-columns:112px minmax(0,1fr);
    gap:10px;
    align-items:center;
    grid-column:1/-1;
    width:auto!important;
    padding:10px 0;
    text-align:left;
    border-bottom:1px solid #edf1f4;
  }
  body.erp-ui-standard .users-register td:before{
    content:attr(data-label);
    color:#7a8998;
    font-size:.7rem;
    font-weight:800;
    letter-spacing:.04em;
    text-transform:uppercase;
  }
  body.erp-ui-standard .users-register td:first-child{padding-top:13px}
  body.erp-ui-standard .users-register td:last-child{
    padding-bottom:13px;
    border-bottom:0;
  }
  body.erp-ui-standard .users-register td:last-child .button{justify-self:start}
}

/* Vehicle dossier: approved full-width vertical card order · v4.3.82
   This page-specific wrapper keeps the four dossier blocks in one column
   without changing the shared two-column grids used elsewhere in the ERP. */
body.erp-ui-standard .vehicle-dossier-stack{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:18px!important;
  width:100%;
  min-width:0;
  max-width:100%;
  align-items:start;
}
body.erp-ui-standard .vehicle-dossier-stack>.card{
  grid-column:1/-1!important;
  width:100%!important;
  min-width:0;
  max-width:none!important;
  align-self:start;
}

/* v4.3.83 — isolated access-control editor styles. */
body.erp-ui-standard .section-permission-editor{
  margin-top:22px;
}
body.erp-ui-standard .section-permission-groups{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
}
body.erp-ui-standard .section-permission-group{
  border:1px solid #dfe7ef;
  border-radius:12px;
  background:#fff;
  overflow:hidden;
}
body.erp-ui-standard .section-permission-group>summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  min-height:48px;
  padding:10px 14px;
  cursor:pointer;
  background:#f7fafc;
}
body.erp-ui-standard .section-permission-group>summary span{
  color:#687887;
  font-size:12px;
  white-space:nowrap;
}
body.erp-ui-standard .section-permission-table-wrap{
  max-height:none;
  border:0;
  border-top:1px solid #dfe7ef;
  border-radius:0;
}
body.erp-ui-standard .section-permission-table td:first-child{
  width:42%;
}
body.erp-ui-standard .section-permission-table code{
  color:#526372;
  font-size:12px;
  overflow-wrap:anywhere;
}
@media(max-width:760px){
  body.erp-ui-standard .section-permission-table th:nth-child(2),
  body.erp-ui-standard .section-permission-table td:nth-child(2){
    display:none;
  }
  body.erp-ui-standard .section-permission-group>summary{
    align-items:flex-start;
  }
}

/* Mobile navigation recovery and cache-safe header · v4.3.91
   This block remains last so older accumulated frame rules cannot leave the
   overlay active while the drawer remains outside the viewport. */
@media(max-width:1050px){
  body.erp-authenticated{
    overflow-x:hidden!important;
  }
  body.erp-authenticated.sidebar-open{
    overflow:hidden!important;
  }
  body.erp-authenticated .topbar{
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:12px!important;
    overflow:visible!important;
  }
  body.erp-authenticated .topbar>.brand{
    flex:1 1 auto;
    min-width:0;
    max-width:calc(100% - 56px)!important;
  }
  body.erp-authenticated .topbar>.sidebar-toggle{
    position:relative!important;
    z-index:130!important;
    flex:0 0 42px!important;
    display:grid!important;
    grid-template-rows:repeat(3,2px)!important;
    align-content:center!important;
    gap:5px!important;
    width:42px!important;
    min-width:42px!important;
    height:42px!important;
    min-height:42px!important;
    margin:0!important;
    padding:10px!important;
    border:1px solid #e2e9ef!important;
    border-radius:11px!important;
    background:#f0f5f8!important;
    box-shadow:none!important;
    filter:none!important;
    transform:none!important;
  }
  body.erp-authenticated .topbar>.sidebar-toggle span{
    display:block!important;
    width:100%!important;
    height:2px!important;
    margin:0!important;
    border:0!important;
    border-radius:2px!important;
    background:#16324f!important;
    opacity:1!important;
    transform:none;
    transition:transform .18s ease,opacity .18s ease;
  }
  body.erp-authenticated.sidebar-open .topbar>.sidebar-toggle span:nth-child(1){
    transform:translateY(7px) rotate(45deg)!important;
  }
  body.erp-authenticated.sidebar-open .topbar>.sidebar-toggle span:nth-child(2){
    opacity:0!important;
  }
  body.erp-authenticated.sidebar-open .topbar>.sidebar-toggle span:nth-child(3){
    transform:translateY(-7px) rotate(-45deg)!important;
  }
  body.erp-authenticated .erp-shell>.sidebar{
    position:fixed!important;
    display:flex!important;
    visibility:hidden!important;
    left:0!important;
    right:auto!important;
    top:68px!important;
    bottom:0!important;
    width:min(88vw,320px)!important;
    max-width:320px!important;
    margin:0!important;
    opacity:0!important;
    pointer-events:none!important;
    transform:translate3d(calc(-100% - 18px),0,0)!important;
    transition:transform .22s ease,opacity .18s ease,visibility 0s linear .22s!important;
    z-index:120!important;
  }
  body.erp-authenticated.sidebar-open .erp-shell>.sidebar{
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
    transform:translate3d(0,0,0)!important;
    transition-delay:0s!important;
  }
  body.erp-authenticated .erp-shell>.sidebar-overlay{
    position:fixed!important;
    display:block!important;
    visibility:hidden!important;
    inset:68px 0 0!important;
    width:auto!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:rgba(16,42,67,.38)!important;
    box-shadow:none!important;
    opacity:0!important;
    pointer-events:none!important;
    filter:none!important;
    transform:none!important;
    transition:opacity .18s ease,visibility 0s linear .18s!important;
    z-index:110!important;
  }
  body.erp-authenticated.sidebar-open .erp-shell>.sidebar-overlay{
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
    transition-delay:0s!important;
  }
}

@media(max-width:600px){
  body.erp-authenticated .topbar{
    padding:10px 12px!important;
  }
  body.erp-authenticated .topbar>.brand strong{
    font-size:1rem!important;
  }
  body.erp-authenticated .topbar>.brand strong::before{
    width:32px!important;
    height:32px!important;
    margin-right:8px!important;
  }
  body.erp-authenticated .topbar>.brand small{
    display:none!important;
  }
}

@media(min-width:1051px){
  body.erp-authenticated .erp-shell>.sidebar{
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
    transform:none!important;
  }
  body.erp-authenticated .erp-shell>.sidebar-overlay{
    display:none!important;
  }
}

/* BG / EN switch · v4.3.94 */
@media(max-width:1050px){
  body.erp-authenticated .topbar>.brand{
    max-width:calc(100% - 142px)!important;
  }
  body.erp-authenticated .topbar>.language-switch{
    flex:0 0 auto;
    margin-left:auto;
  }
}
@media(max-width:420px){
  body.erp-authenticated .language-switch a{
    min-width:30px;
    padding:6px;
  }
}
