@import url('https://fonts.googleapis.com/css2?family=Cairo:wght@500;700;800&display=swap');
:root{font-family:Cairo,Arial,sans-serif;color:#101b18;background:#edf3ef;font-weight:700}*{box-sizing:border-box}body{margin:0}header{background:#092a21;color:white;padding:22px 4%;display:flex;align-items:center;gap:28px}header b{font-size:22px}header button{margin-inline-start:auto}main{max-width:1450px;margin:32px auto;padding:0 24px}h1{font-size:30px}.card{background:white;border:1px solid #c9d9cf;border-radius:18px;padding:26px;margin:20px 0;box-shadow:0 5px 20px #12332206}.login{max-width:530px;margin:70px auto}.login form{display:grid;gap:18px;margin:24px 0}label{display:grid;gap:8px;font-size:14px}input,select,textarea,button{font:inherit;border:1px solid #9eb7a8;border-radius:10px;padding:12px;color:#101b18;max-width:100%}input,select,textarea{background:white;width:100%;min-width:0}button{background:#14543c;color:white;cursor:pointer}button:disabled{opacity:.5;cursor:wait}.secondary{background:white;color:#164c38}a{color:#15543b}.foot{color:#456353;font-size:13px}.identity,.heading{display:flex;justify-content:space-between;align-items:center;gap:16px}.identity{font-size:13px}nav{display:flex;gap:8px;flex-wrap:wrap;margin:24px 0}nav button{background:white;color:#164631}nav button.active{background:#103d2c;color:white}.filters{display:flex;gap:14px;align-items:end;flex-wrap:wrap}.filters label{flex:1;min-width:150px}.tablewrap{overflow:auto}table{width:100%;border-collapse:collapse;white-space:nowrap}th,td{text-align:right;padding:17px 14px;border-bottom:1px solid #dbe5de}th{background:#e9f1eb}td button{padding:7px 12px;margin:3px;font-size:13px}.badge{background:#e5f0e8;color:#13442e;padding:5px 10px;border-radius:30px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.stats .card{margin:0}.stats strong{display:block;font-size:30px;margin-top:16px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}dialog{border:0;border-radius:20px;padding:28px;width:min(680px,94vw);max-height:90vh;color:#101b18}dialog::backdrop{background:#092a2177}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:16px}#message,#formError{color:#a22323}#message:not(:empty){background:white;border:1px solid #d7ddd7;border-radius:10px;padding:16px}#estimate{background:#edf4e8;padding:12px;border-radius:8px;font-size:14px}button:focus-visible,a:focus-visible{outline:3px solid #cb9d14;outline-offset:3px}[hidden]{display:none!important}@media(max-width:700px){header{flex-wrap:wrap}header span{display:none}.stats{grid-template-columns:1fr 1fr}.formgrid{grid-template-columns:1fr}main{padding:0 14px}}@media print{header button,nav,.filters,.identity,.actions,main>a,.foot,#add,td:last-child button{display:none!important}body{background:white}.card{box-shadow:none}main{margin:0;padding:0}.tablewrap{overflow:visible}table{white-space:normal}th,td{padding:8px}header{color:black;background:white}tr{break-inside:avoid}}
/* Keep attendance controls within their cell, including at browser zoom. */
#content[data-page="attendance"] table{table-layout:fixed;white-space:normal}
#content[data-page="attendance"] th,#content[data-page="attendance"] td{overflow-wrap:anywhere;vertical-align:middle}
#content[data-page="attendance"] th:nth-child(1){width:28%}
#content[data-page="attendance"] th:nth-child(2){width:16%}
#content[data-page="attendance"] th:nth-child(3){width:16%}
#content[data-page="attendance"] th:nth-child(4){width:40%}
.attendance-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-width:0}
.attendance-actions select{width:auto;flex:1 1 120px;min-width:0;max-width:220px}
.attendance-actions button{flex:0 1 auto;white-space:normal;margin:0}
@media(max-width:600px){#content[data-page="attendance"] .card{padding:10px}#content[data-page="attendance"] th,#content[data-page="attendance"] td{padding:10px 5px;font-size:12px}.attendance-actions select,.attendance-actions button{padding:8px 5px;font-size:12px}.attendance-actions select{flex-basis:100%;max-width:100%}}
#importModal>p{font-size:14px;line-height:1.9;color:#344d40}#importModal>label{margin-top:18px}#importModal input[type="checkbox"]{width:auto;justify-self:start;accent-color:#14543c;transform:scale(1.25)}#importSummary:not(:empty){padding:16px;background:#edf4e8;border-radius:10px}#importModal button{white-space:normal}.identity .actions{margin-top:0}
#restoreModal>p{font-size:14px;line-height:1.9;color:#344d40}#restoreModal>label{margin:18px 0}#restoreModal input[type="checkbox"]{width:auto;justify-self:start;accent-color:#14543c;transform:scale(1.25)}#restoreSummary table{white-space:normal;font-size:13px}#restoreSummary .card{padding:8px}#restoreSummary th,#restoreSummary td{padding:8px}#restoreSummary p{font-size:14px;line-height:1.8}#restoreSummary .danger{color:#9b1c1c;background:#fff1ec;padding:12px;border-radius:8px}#restoreRun{background:#83301f}#restoreModal button{white-space:normal}
dialog{overflow-y:auto;overscroll-behavior:contain}
#content[data-page="orders"] table,#content[data-page="customers"] table,#content[data-page="vehicles"] table{table-layout:fixed;white-space:normal}#content[data-page="orders"] td,#content[data-page="customers"] td,#content[data-page="vehicles"] td{overflow-wrap:anywhere;vertical-align:top}#content[data-page="orders"] th:last-child{width:28%}#content[data-page="orders"] td button{white-space:normal}.formgrid .tablewrap{grid-column:1/-1;width:100%}.formgrid .tablewrap table{white-space:normal}textarea{min-height:95px;resize:vertical}@media(max-width:650px){#content[data-page="orders"] th,#content[data-page="orders"] td,#content[data-page="vehicles"] th,#content[data-page="vehicles"] td{font-size:11px;padding:8px 4px}#content[data-page="orders"] .card,#content[data-page="vehicles"] .card{padding:8px}}
@media(max-width:650px){#content[data-page="orders"] table,#content[data-page="vehicles"] table,#content[data-page="customers"] table{display:block}#content[data-page="orders"] thead,#content[data-page="vehicles"] thead,#content[data-page="customers"] thead{display:none}#content[data-page="orders"] tbody,#content[data-page="vehicles"] tbody,#content[data-page="customers"] tbody{display:block}#content[data-page="orders"] tbody tr,#content[data-page="vehicles"] tbody tr,#content[data-page="customers"] tbody tr{display:block;border:1px solid #c9d9cf;border-radius:10px;margin-bottom:12px;padding:10px}#content[data-page="orders"] td,#content[data-page="vehicles"] td,#content[data-page="customers"] td{display:block;font-size:14px;border:0;padding:8px}#content[data-page="orders"] td::before,#content[data-page="vehicles"] td::before,#content[data-page="customers"] td::before{content:attr(data-label);display:block;color:#52695b;font-size:12px;margin-bottom:4px}}
#content[data-page="parts"] table,#content[data-page="stock"] table,#content[data-page="suppliers"] table{table-layout:fixed;white-space:normal}#content[data-page="parts"] td,#content[data-page="stock"] td,#content[data-page="suppliers"] td{overflow-wrap:anywhere;vertical-align:top}#content[data-page="parts"] th:last-child{width:34%}#content[data-page="parts"] button,#content[data-page="stock"] button{white-space:normal}
@media(max-width:650px){#content[data-page="parts"] table,#content[data-page="stock"] table,#content[data-page="suppliers"] table,#content[data-page="parts"] tbody,#content[data-page="stock"] tbody,#content[data-page="suppliers"] tbody{display:block}#content[data-page="parts"] thead,#content[data-page="stock"] thead,#content[data-page="suppliers"] thead{display:none}#content[data-page="parts"] tr,#content[data-page="stock"] tr,#content[data-page="suppliers"] tr{display:block;border:1px solid #c9d9cf;border-radius:10px;margin-bottom:12px;padding:10px}#content[data-page="parts"] td,#content[data-page="stock"] td,#content[data-page="suppliers"] td{display:block;border:0;padding:8px}#content[data-page="parts"] td::before,#content[data-page="stock"] td::before,#content[data-page="suppliers"] td::before{content:attr(data-label);display:block;color:#52695b;font-size:12px;margin-bottom:4px}}
nav{display:grid;grid-template-columns:1fr;gap:14px}.navgroup>span{display:block;font-size:12px;color:#456353;margin-bottom:8px}.navgroup>div{display:flex;gap:8px;flex-wrap:wrap}.navgroup{border-bottom:1px solid #d2ded6;padding-bottom:14px}.navgroup:last-child{border:0;padding-bottom:0}.navgroup button{padding:10px 14px}
#message{color:#14543c}#message.is-error{color:#a22323}@media(min-width:1050px){nav{grid-template-columns:1fr 1fr 1.5fr;align-items:start;gap:20px}.navgroup{border-bottom:0;padding-bottom:0;min-width:0}.navgroup>div{gap:6px}.navgroup button{padding:10px}}
#brand{display:flex;align-items:center;gap:14px}.brand-logo{height:58px;max-width:140px;object-fit:contain}#logoPreview{width:160px;height:120px;object-fit:contain;background:#f5f8f5;border:1px solid #c9d9cf;border-radius:10px}fieldset{border:0;margin:0;padding:0;min-width:0}#settingsForm h2{margin-top:28px}#settingsForm p{font-size:14px;line-height:1.8}#settingsForm input[type="checkbox"]{width:auto;justify-self:start;accent-color:#14543c}#settingsMessage{color:#9b3020}#settingsForm>fieldset>label{margin:16px 0}.schedule-note{grid-column:1/-1;background:#edf4e8;padding:12px;border-radius:10px}
#brand{min-width:0;max-width:100%}#brand span{overflow-wrap:anywhere}.brand-logo{flex-shrink:0}@media(max-width:600px){.brand-logo{max-width:90px;height:45px}}

.invoice-editor{grid-column:1/-1;min-width:0}.invoice-line{display:grid;grid-template-columns:2fr 1fr 1fr 1fr auto;gap:10px;align-items:end;padding:15px 0;border-bottom:1px solid #d2ded6}.invoice-line button{padding:12px}.invoice-line input,.invoice-line select{width:100%;min-width:0}#invoiceTotals{background:#edf4e9;padding:16px;font-weight:800}#content[data-page=invoices] table,#content[data-page=receipts] table,#content[data-page=balances] table{table-layout:fixed;width:100%;white-space:normal}#content[data-page=invoices] td,#content[data-page=receipts] td,#content[data-page=balances] td{overflow-wrap:anywhere}#content[data-page=invoices] td button{margin:3px;padding:8px 10px}@media(min-width:1050px){nav{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.invoice-line{grid-template-columns:1fr 1fr}.invoice-line>label:first-child{grid-column:1/-1}#content[data-page=invoices] table,#content[data-page=receipts] table,#content[data-page=balances] table{display:block}#content[data-page=invoices] thead,#content[data-page=receipts] thead,#content[data-page=balances] thead{display:none}#content[data-page=invoices] tbody,#content[data-page=receipts] tbody,#content[data-page=balances] tbody{display:block}#content[data-page=invoices] tr,#content[data-page=receipts] tr,#content[data-page=balances] tr{display:block;border-bottom:2px solid #c4d3c8;padding:10px 0}#content[data-page=invoices] td,#content[data-page=receipts] td,#content[data-page=balances] td{display:block;width:auto;border:0;padding:8px}#content[data-page=invoices] td:before,#content[data-page=receipts] td:before,#content[data-page=balances] td:before{content:attr(data-label) ' : ';font-weight:800;color:#345a47}}

#modal[data-kind=invoice],#modal[data-kind=invoice_detail]{width:min(1000px,94vw)}
#content:is([data-page=expenses],[data-page=cashbook]) table{width:100%;table-layout:fixed;white-space:normal}#content:is([data-page=expenses],[data-page=cashbook]) th,#content:is([data-page=expenses],[data-page=cashbook]) td{padding:13px 9px;overflow-wrap:anywhere;font-size:13px;vertical-align:top}#content:is([data-page=expenses],[data-page=cashbook]) .stats .card,.cash-summary .card{background:#103d2c;color:#fff;border-color:#285b45}#content:is([data-page=expenses],[data-page=cashbook]) .stats strong,.cash-summary strong{font-size:26px}#content .danger{color:#a12622;font-weight:800}summary{cursor:pointer;font-weight:800}#content[data-page=cashbook] details .tablewrap{box-shadow:none;border:0;padding:0}
@media(max-width:760px){#content:is([data-page=expenses],[data-page=cashbook]) table,#content:is([data-page=expenses],[data-page=cashbook]) tbody{display:block}#content:is([data-page=expenses],[data-page=cashbook]) thead{display:none}#content:is([data-page=expenses],[data-page=cashbook]) tr{display:block;border:1px solid #c9d9cf;border-radius:12px;margin:12px 0;padding:10px}#content:is([data-page=expenses],[data-page=cashbook]) td{display:block;width:auto;border:0;padding:8px;font-size:14px}#content:is([data-page=expenses],[data-page=cashbook]) td:before{content:attr(data-label)' : ';font-weight:800;color:#456353}.stats strong{overflow-wrap:anywhere}}
@media print{#content .cash-summary .card,#content:is([data-page=expenses],[data-page=cashbook]) .stats .card{background:white;color:black;border-color:#bbb}#content:is([data-page=expenses],[data-page=cashbook]) table{font-size:11px}details{display:none}}
#modal[data-kind=purchase],#modal[data-kind=purchase_detail]{width:min(1000px,94vw)}.purchase-line{display:grid;grid-template-columns:3fr 1fr;gap:16px;align-items:center;padding:16px 0;border-bottom:1px solid #d3dfd6}.pick-receipt{display:flex;align-items:center;gap:14px;cursor:pointer}.pick-receipt input{width:auto;accent-color:#14543c;flex:none;transform:scale(1.25)}#purchaseTotals{background:#edf4e9;padding:16px;font-weight:800}.purchase-summary .card{background:#103d2c;color:white;border-color:#285b45}.purchase-summary strong{font-size:26px}#content:is([data-page=purchases],[data-page=supplierPayments],[data-page=supplierBalances]) table{table-layout:fixed;white-space:normal;width:100%}#content:is([data-page=purchases],[data-page=supplierPayments],[data-page=supplierBalances]) td{overflow-wrap:anywhere;vertical-align:top;padding:14px 10px}
@media(max-width:760px){.purchase-line{grid-template-columns:1fr}#content:is([data-page=purchases],[data-page=supplierPayments],[data-page=supplierBalances]) table,#content:is([data-page=purchases],[data-page=supplierPayments],[data-page=supplierBalances]) tbody{display:block}#content:is([data-page=purchases],[data-page=supplierPayments],[data-page=supplierBalances]) thead{display:none}#content:is([data-page=purchases],[data-page=supplierPayments],[data-page=supplierBalances]) tr{display:block;border:1px solid #c9d9cf;border-radius:12px;margin:12px 0;padding:10px}#content:is([data-page=purchases],[data-page=supplierPayments],[data-page=supplierBalances]) td{display:block;width:auto;border:0;padding:8px}#content:is([data-page=purchases],[data-page=supplierPayments],[data-page=supplierBalances]) td:before{content:attr(data-label)' : ';font-weight:800;color:#456353}}
@media print{.purchase-summary .card{background:white;color:black;border-color:#bbb}}
.report-cover{display:flex;justify-content:space-between;align-items:center;gap:28px;border-top:5px solid #14543c}.report-cover>p{max-width:380px;color:#456353;font-size:13px}.report-cover h2{font-size:27px;margin:5px 0}.report-section{margin:32px 0}.report-section>h2{border-inline-start:5px solid #14543c;padding-inline-start:12px}.report-section>p{font-size:13px;color:#456353}.report-stats .card{background:#103d2c;color:#fff;border-color:#285b45}.report-stats strong{font-size:26px}.report-current{border-inline-start:5px solid #a47d18}.report-methods{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.report-methods>div{display:grid;gap:10px}.report-methods progress{width:100%;height:14px;accent-color:#14543c}#content[data-page=centerReports] table{table-layout:fixed;white-space:normal;width:100%}#content[data-page=centerReports] td{overflow-wrap:anywhere;vertical-align:top}#content[data-page=centerReports] .tablewrap{padding:20px}#content[data-page=centerReports] .actions{margin-bottom:24px}
@media(max-width:760px){.report-cover{display:block}.report-methods{grid-template-columns:1fr}.report-stats strong{font-size:22px}#content[data-page=centerReports] table,#content[data-page=centerReports] tbody{display:block}#content[data-page=centerReports] thead{display:none}#content[data-page=centerReports] tr{display:block;border:1px solid #c9d9cf;border-radius:10px;margin:12px 0;padding:8px}#content[data-page=centerReports] td{display:block;border:0;width:auto;padding:8px}#content[data-page=centerReports] td:before{content:attr(data-label)' : ';font-weight:800;color:#456353}}
@media print{.report-stats .card{background:white;color:black;border-color:#bbb}.report-cover{display:block;padding:14px;margin:8px 0}.report-cover>p{max-width:none}.report-section{margin:20px 0}.report-section>h2{break-after:avoid}.report-stats{break-inside:avoid}.report-section .tablewrap{padding:0!important}.report-methods{display:none}#content[data-page=centerReports] th,#content[data-page=centerReports] td{padding:8px;font-size:11px}}
.workshop-board{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin:24px 0;align-items:start}.board-column{background:#e2ece5;border:1px solid #c9d9cf;border-radius:16px;padding:12px;min-width:0}.board-column>h2{font-size:16px;margin:4px 0 16px;display:flex;justify-content:space-between;gap:8px}.board-column>h2>span{background:#103d2c;color:white;border-radius:30px;min-width:28px;text-align:center}.board-order{background:white;border-radius:12px;border:1px solid #cadace;padding:14px;margin:12px 0;overflow-wrap:anywhere}.board-order.is-overdue{border-top:4px solid #a32e23}.board-order.is-today{border-top:4px solid #b58213}.board-order-title{display:flex;align-items:center;justify-content:space-between;gap:10px}.board-order h3{font-size:18px;margin:0}.board-order p{font-size:12px;line-height:1.8;margin:8px 0}.board-complaint{white-space:pre-wrap;background:#f0f5f1;padding:8px;border-radius:8px}.board-buttons,.board-transitions{display:flex;flex-wrap:wrap;gap:6px}.board-buttons button,.board-transitions button{padding:7px 9px;font-size:11px;white-space:normal}.board-buttons button{background:white;color:#164c38}.board-transitions{border-top:1px solid #dbe5de;margin-top:12px;padding-top:6px}.board-transitions p{width:100%;font-weight:800}.board-alert{color:#a32e23;font-weight:800}.board-today{color:#805c0e;font-weight:800}.board-empty{font-size:12px;color:#456353}.board-cover{border-top:4px solid #14543c}.board-cover p{font-size:13px}#content[data-page=workshopBoard]>.stats .card{background:#103d2c;color:white}#content[data-page=workshopBoard]>.stats strong{font-size:26px}@media(max-width:600px){.workshop-board{grid-template-columns:1fr}.board-order p{font-size:14px}.board-buttons button,.board-transitions button{font-size:13px}}
@media print{.workshop-board{display:block}.board-column{background:white;border:0;padding:0;margin:20px 0}.board-column>h2{border-bottom:2px solid #555;padding-bottom:8px;break-after:avoid}.board-order{break-inside:avoid;border:1px solid #bbb}.board-buttons,.board-transitions{display:none!important}.board-order .foot{display:block!important}#content[data-page=workshopBoard]>.stats .card{background:white;color:black}.board-column>h2>span{background:white;color:black}}
.board-transitions button[data-value=cancelled]{background:white;color:#a32e23;border-color:#bc716a}.board-transitions button[data-value=delivered]{background:#0b4933;border-color:#0b4933}
.board-order p{font-size:14px}.board-buttons button,.board-transitions button{font-size:12px}
#content:is([data-page=appointments],[data-page=workBays]) table{width:100%;table-layout:fixed;white-space:normal}#content:is([data-page=appointments],[data-page=workBays]) td{overflow-wrap:anywhere;vertical-align:top;padding:14px 10px}#content[data-page=appointments] th:last-child{width:28%}.appointment-cover{border-top:4px solid #14543c}#content[data-page=appointments]>.stats .card{background:#103d2c;color:white}#content[data-page=appointments]>.stats strong{font-size:26px}#content[data-page=appointments] td button{white-space:normal}#content[data-page=appointments] .danger{color:#9b2920}
@media(max-width:760px){#content:is([data-page=appointments],[data-page=workBays]) table,#content:is([data-page=appointments],[data-page=workBays]) tbody{display:block}#content:is([data-page=appointments],[data-page=workBays]) thead{display:none}#content:is([data-page=appointments],[data-page=workBays]) tr{display:block;border:1px solid #c9d9cf;border-radius:12px;margin:12px 0;padding:10px}#content:is([data-page=appointments],[data-page=workBays]) td{display:block;width:auto;border:0;padding:8px}#content:is([data-page=appointments],[data-page=workBays]) td:before{content:attr(data-label)' : ';font-weight:800;color:#456353}}
@media print{#content[data-page=appointments]>.stats .card{background:white;color:black}}
#content[data-page=appointments] button[data-action=appointment_cancel]{background:white;color:#a32e23;border-color:#bc716a}
.return-line{display:grid;grid-template-columns:3fr 1fr;gap:16px;align-items:center;padding:16px 0;border-bottom:1px solid #d3dfd6}#modal[data-kind=purchase_return],#modal[data-kind=return_detail]{width:min(1000px,94vw)}#content:is([data-page=purchaseReturns],[data-page=supplierRefunds]) table{width:100%;table-layout:fixed;white-space:normal}#content:is([data-page=purchaseReturns],[data-page=supplierRefunds]) td{overflow-wrap:anywhere;vertical-align:top}#content[data-page=purchaseReturns]>.stats .card{background:#103d2c;color:white}@media(max-width:760px){.return-line{grid-template-columns:1fr}#content:is([data-page=purchaseReturns],[data-page=supplierRefunds]) table,#content:is([data-page=purchaseReturns],[data-page=supplierRefunds]) tbody{display:block}#content:is([data-page=purchaseReturns],[data-page=supplierRefunds]) thead{display:none}#content:is([data-page=purchaseReturns],[data-page=supplierRefunds]) tr{display:block;border:1px solid #c9d9cf;margin:12px 0;padding:10px;border-radius:12px}#content:is([data-page=purchaseReturns],[data-page=supplierRefunds]) td{display:block;width:auto;border:0;padding:8px}#content:is([data-page=purchaseReturns],[data-page=supplierRefunds]) td:before{content:attr(data-label)' : ';font-weight:800;color:#456353}}@media print{#content[data-page=purchaseReturns]>.stats .card{background:white;color:black}}

.correction-line{border:1px solid #b7cec3;border-radius:12px;padding:16px;margin:10px 0;background:#f5f9f6}.correction-history{margin:16px 0;border:1px solid #b7cec3;border-radius:12px;padding:16px}.correction-history table{font-size:14px}@media(max-width:700px){.correction-history{padding:10px}}

.workflow-check{border:1px solid #b2c9bd;border-radius:12px;padding:16px;margin:12px 0;grid-column:1/-1}.workflow-ok{background:#edf6ee}.workflow-warning{background:#fff6df;border-color:#c19b3e}.workflow-status{display:block;color:#185336;font-weight:800}.workflow-check table{font-size:14px}.invoice-line>[hidden]{display:none!important}
#modal[data-kind="invoice"] .invoice-line{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end}#modal[data-kind="invoice"] .invoice-line>label:first-child{grid-column:1/-1}#modal[data-kind="invoice"] .invoice-line>[data-stock-part-label]{grid-column:span 2}@media(max-width:600px){#modal[data-kind="invoice"] .invoice-line{grid-template-columns:repeat(2,minmax(0,1fr))}.workflow-check{padding:10px}.workflow-check th,.workflow-check td{padding:8px 5px;font-size:12px}}

.closing-badge{display:inline-block;padding:5px 9px;border-radius:8px;font-size:12px;background:#e9f0eb}.closing-badge.balanced,.closing-balanced{color:#154f31}.closing-badge.shortage,.closing-badge.stale{background:#fff0df;color:#822b14}.closing-badge.superseded{background:#e8e9e8;color:#505b54}#closingPreviewSummary,#closingDifference{grid-column:1/-1}#closingPreviewSummary .stats{grid-template-columns:repeat(2,minmax(0,1fr))}#closingPreviewSummary .card{padding:12px}#closingPreviewSummary strong{font-size:21px}#closingDifference{background:#edf4ed;border-radius:12px;padding:14px}#content[data-page=cashClosings] table{table-layout:fixed;white-space:normal}#content[data-page=cashClosings] td{overflow-wrap:anywhere;vertical-align:top}@media(max-width:700px){#content[data-page=cashClosings] table,#content[data-page=cashClosings] tbody,#content[data-page=cashClosings] tr,#content[data-page=cashClosings] td{display:block}#content[data-page=cashClosings] thead{display:none}#content[data-page=cashClosings] td{border:0;padding:8px}#content[data-page=cashClosings] td:before{content:attr(data-label) ' : ';color:#456353}#content[data-page=cashClosings] tr{border-bottom:2px solid #c9d9cf;padding:12px 0}}
#content[data-page=cashClosings] th:nth-child(1){width:12%}#content[data-page=cashClosings] th:nth-child(2),#content[data-page=cashClosings] th:nth-child(3){width:11%}#content[data-page=cashClosings] th:nth-child(4){width:13%}#content[data-page=cashClosings] th:nth-child(5){width:15%}#content[data-page=cashClosings] th:nth-child(6){width:22%}#content[data-page=cashClosings] th:nth-child(7){width:16%}

/* Role and audit tables wrap safely; cards preserve every column on small screens. */
#content[data-page="access"] table,#content[data-page="activity"] table{table-layout:fixed;white-space:normal}
#content[data-page="access"] td,#content[data-page="activity"] td{overflow-wrap:anywhere;vertical-align:top}
#content[data-page="access"] th:first-child{width:28%}#content[data-page="access"] th:nth-child(4){width:30%}
#content[data-page="activity"] th:nth-child(2){width:23%}#content[data-page="activity"] th:nth-child(5){width:20%}
@media(max-width:650px){#content[data-page="access"] table,#content[data-page="activity"] table,#content[data-page="access"] tbody,#content[data-page="activity"] tbody{display:block}#content[data-page="access"] thead,#content[data-page="activity"] thead{display:none}#content[data-page="access"] tr,#content[data-page="activity"] tr{display:block;border:1px solid #c9d9cf;border-radius:10px;padding:10px;margin-bottom:12px}#content[data-page="access"] td,#content[data-page="activity"] td{display:block;border:0;padding:8px;font-size:14px}#content[data-page="access"] td:before,#content[data-page="activity"] td:before{content:attr(data-label);display:block;font-size:12px;color:#456353;margin-bottom:4px}}

.invite-consent{display:flex;align-items:flex-start;gap:10px;grid-column:1/-1;line-height:1.8}.invite-consent input{width:20px;min-width:20px;margin-top:5px}#fields .invite-consent+p{grid-column:1/-1}

#content[data-page="access"] table.invitation-table th:nth-child(1){width:28%}#content[data-page="access"] table.invitation-table th:nth-child(2){width:15%}#content[data-page="access"] table.invitation-table th:nth-child(3){width:25%}#content[data-page="access"] table.invitation-table th:nth-child(4){width:20%}#content[data-page="access"] table.invitation-table th:nth-child(5){width:12%}

.password-help{margin-top:22px;text-align:right}.password-help>summary{cursor:pointer;color:#14543c;padding:10px 0}.password-help p{line-height:1.8}.owner-recovery-help{border-top:1px solid #d0dfd5;padding-top:16px;margin-top:16px}.owner-recovery-help h2{font-size:1.15rem;margin:0 0 8px}.owner-recovery-help button{width:100%;white-space:normal}.owner-recovery-help [role="status"]{margin-bottom:0}.owner-recovery-help .is-error{color:#a22323}

.member-editor{grid-column:1/-1;min-width:0}.member-email{overflow-wrap:anywhere;color:#456353;font-size:.95rem;margin:0 0 16px}.member-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.member-profile-section h3,.member-password-section h3{margin:0 0 16px;font-size:1.15rem}.member-profile-section .foot{margin:14px 0}.member-password-section{border-top:1px solid #cfdfd4;margin-top:24px;padding-top:22px}.member-password-section p{line-height:1.8}.member-reset-consent{display:flex;align-items:flex-start;gap:10px;margin:16px 0;line-height:1.7}.member-reset-consent input{width:20px;min-width:20px;margin-top:5px}.member-reset-unavailable{padding:14px;background:#fff4d5;border:1px solid #d8bd77;border-radius:10px}#memberResetStatus{color:#a22323}#modal:has(.member-editor){padding:24px;max-height:90dvh}#modal:has(.member-editor) .heading{position:sticky;top:-24px;background:white;z-index:1;padding:12px 0;margin-bottom:16px}#modal:has(.member-editor) #estimate:empty{display:none}@media(max-width:600px){.member-profile-grid{grid-template-columns:1fr}#modal:has(.member-editor){padding:18px;width:calc(100% - 24px)}#modal:has(.member-editor) .heading{top:-18px}.member-editor button{width:100%}}

/* Owner section navigation */
nav.owner-sections{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;align-items:start;margin:26px 0}
.owner-section{--section-color:#14543c;--section-tint:#edf5f0;background:white;border:1px solid #d5dfd9;border-top:4px solid var(--section-color);border-radius:14px;overflow:hidden;min-width:0;box-shadow:0 4px 14px #163a2408}
.owner-section.section-inventory{--section-color:#1f568c;--section-tint:#edf3fa}.owner-section.section-finance{--section-color:#81560b;--section-tint:#fcf5e8}.owner-section.section-people{--section-color:#70418e;--section-tint:#f5eff9}.owner-section.section-administration{--section-color:#963f48;--section-tint:#fbf0f1}
.owner-section>summary{display:flex;align-items:center;gap:10px;padding:18px 12px;cursor:pointer;list-style:none;background:var(--section-tint);color:var(--section-color);min-height:96px}.owner-section>summary::-webkit-details-marker{display:none}.owner-section>summary:focus-visible{outline:3px solid #cb9d14;outline-offset:-4px}.section-icon{display:grid;place-items:center;font-size:25px;flex:0 0 30px}.section-title{font-size:14px;line-height:1.7;flex:1}.section-title small{display:block;font-size:11px;font-weight:700;opacity:.85}.section-chevron{font-size:21px;transition:transform .15s}.owner-section[open] .section-chevron{transform:rotate(180deg)}.section-links{display:grid;gap:6px;padding:10px}.section-links button{width:100%;text-align:right;white-space:normal;padding:10px 12px;font-size:13px;border:1px solid transparent;background:white;color:#172b22}.section-links button:hover{background:var(--section-tint);border-color:var(--section-color)}.section-links button.active{background:var(--section-color);color:white;border-color:var(--section-color)}
@media(max-width:1150px){nav.owner-sections{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:700px){nav.owner-sections{grid-template-columns:1fr;gap:10px}.owner-section>summary{min-height:72px;padding:12px 16px}.section-title{font-size:16px}.section-links{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:380px){.section-links{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.section-chevron{transition:none}}

.purchase-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0 20px;padding:12px;background:#e6eef7;border:1px solid #c3d3e4;border-radius:14px}.purchase-tabs button{background:white;color:#1f568c;border-color:#b3c7dd}.purchase-tabs button.active{background:#1f568c;color:white;border-color:#1f568c}@media(max-width:600px){.purchase-tabs{display:grid;grid-template-columns:1fr 1fr}.purchase-tabs button{padding:10px;font-size:13px}}@media print{.purchase-tabs{display:none!important}}

.hub-row-actions{display:flex;flex-wrap:wrap;gap:5px;min-width:270px;max-width:370px}.hub-row-actions button{margin:0;flex:1 1 28%;white-space:normal;min-height:39px}.hub-row-actions button:first-child{background:#1f568c}.hub-intro p{margin:8px 0}.hub-warning{padding:12px;background:#fff5db;border:1px solid #ead09a;border-radius:10px;color:#684300}.hub-dialog-body,.supply-editor{grid-column:1/-1;min-width:0}.hub-dialog-body table{white-space:normal;font-size:13px}.hub-dialog-body td button{font-size:12px;padding:7px}.hub-dialog-body h3{margin-top:25px}.hub-supplier-heading{background:#edf3f8;padding:12px;border-radius:9px}.supply-line{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:10px;align-items:end;padding:12px 0;border-bottom:1px solid #dce5e0}.supply-line button{padding:12px 8px}.supply-editor h3{margin-bottom:0}#supplyTotals{padding:16px;background:#edf4ed;border-radius:10px}#content[data-page=supplierBalances] table{white-space:normal}#content[data-page=supplierBalances] td{vertical-align:middle}#content[data-page=supplierBalances] td:last-child{width:36%}@media(max-width:650px){.supply-line{grid-template-columns:1fr 1fr}.supply-line label:first-child{grid-column:1/-1}.hub-row-actions{min-width:220px}.hub-dialog-body td,.hub-dialog-body th{padding:8px}}

#content[data-page=supplierBalances] th:first-child{width:20%}#content[data-page=supplierBalances] th:last-child{width:41%}#content[data-page=supplierBalances] .hub-row-actions{min-width:0;width:100%;max-width:none}#modal[data-kind=supplier_hub],#modal[data-kind=supply_receive]{width:min(1000px,94vw)}@media(max-width:760px){#content[data-page=supplierBalances] td:last-child{width:auto}.hub-row-actions button{flex-basis:40%}}

.hub-row-actions button[data-action="hub_edit"]{flex:0 1 calc((100% - 10px)/3)}@media(max-width:760px){.hub-row-actions button[data-action="hub_edit"]{flex-basis:calc((100% - 5px)/2)}}

.assignment-editor{grid-column:1/-1;border-top:1px solid #c8dcd1;padding-top:16px}.assignment-row{display:grid;grid-template-columns:1.4fr 1fr auto;gap:12px;align-items:end;margin-bottom:14px}.assignment-row button{margin-bottom:2px}@media(max-width:650px){.assignment-row{grid-template-columns:1fr}.assignment-row button{justify-self:start}}

#content button.order-state-next{background:#245b95;border-color:#245b95;color:#fff}#content button.order-state-next:hover{background:#194675;border-color:#194675}#content button.order-state-back{background:#fff;border-color:#7d8c98;color:#354956}#content button.order-state-cancel{background:#fff;border-color:#a34b46;color:#8d302b}

/* Compact filters are distinct from account entry forms. */
#content .access-filter-panel{margin-top:20px;padding:14px;background:#f1f5f3;border:1px solid #c9d9cf;border-radius:10px}
#content .access-filter-panel h3{margin:0 0 10px;font-size:14px;color:#456353}
#content .access-filter-row{display:grid;grid-template-columns:minmax(180px,2fr) minmax(130px,1fr) minmax(130px,1fr) auto auto auto;gap:10px;align-items:end}
#content .access-filter-row label{gap:5px;font-size:12px}
#content .access-filter-row input,#content .access-filter-row select{height:38px;padding:6px 9px;border-radius:6px;font-size:13px;background:#fff}
#content .access-filter-row button{height:38px;padding:6px 12px;border-radius:6px;font-size:12px;white-space:nowrap}
#content .access-filter-row button[data-action=access_reset],#content .access-filter-row button[data-action=access_pdf]{background:#fff;color:#14543c}
@media(max-width:950px){#content .access-filter-row{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:560px){#content .access-filter-row{grid-template-columns:repeat(2,minmax(0,1fr))}#content .access-filter-row label:first-child{grid-column:1/-1}}

#modal[data-kind=payroll_detail]{width:min(1050px,96vw)}.payroll-slip-host{grid-column:1/-1;min-width:0}.payroll-slip-host>button{margin-bottom:12px}

/* Print data only: omit application chrome and trailing navigation. */
@media print{
 html,body{background:#fff!important;height:auto!important;min-height:0!important}
 #message,#workspace>a,#workspace>.foot,dialog{display:none!important}
 main,#workspace,#content{height:auto!important;min-height:0!important;margin-bottom:0!important;padding-bottom:0!important}
 header{padding:10px 0;gap:14px}
 #workspace>.heading{margin:8px 0}
 #workspace>.heading h1{margin:8px 0;font-size:22px}
 #content>.card{margin:10px 0;padding:14px;border-radius:0;box-shadow:none}
 #content>:last-child{margin-bottom:0!important}
}

.reception-editor{grid-column:1/-1;border-top:1px solid #c9d9cf;padding-top:12px}.reception-editor h3{margin:0 0 8px}.reception-editor>p{font-size:13px;color:#456353}.reception-editor textarea{min-height:80px}

#content button[data-action=part_delete]{background:#fff;color:#8d302b;border-color:#a34b46}

#content button[data-action="part_set_active"][data-value="suspend"]{background:#b42318;border-color:#b42318;color:#fff}
#content button[data-action="part_set_active"][data-value="activate"]{background:#187448;border-color:#187448;color:#fff}
