:root{font-family:Tahoma,Arial,sans-serif;color:#20383e;background:#f3f6f5;line-height:1.8;--green:#19766c;--navy:#102e36;--line:#d9e4e1}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,.button{border:0;border-radius:10px;padding:9px 17px;background:var(--green);color:white;cursor:pointer;text-decoration:none;display:inline-block}button:hover,.button:hover{filter:brightness(1.1)}button:disabled{opacity:.5;cursor:wait}button.secondary,.button.secondary{background:#e6efec;color:var(--navy)}button.danger{background:#9f403f}input,select,textarea{width:100%;border:1px solid #becdca;border-radius:8px;background:white;color:#20383e;padding:10px;min-height:44px}textarea{min-height:110px}input[type=checkbox]{width:20px;min-height:20px}label{display:grid;gap:5px;font-size:13px}small,.muted{color:#637a7f;font-size:12px}h1,h2,h3,p{margin-top:0}h1{font-size:28px}h2{font-size:20px}h3{font-size:16px}header{background:var(--navy);color:#fff;padding:18px 30px;display:flex;justify-content:space-between;gap:20px;align-items:center}.brand{font-size:26px;font-weight:bold}.brand small{display:block;color:#aed4ce;font-size:11px;font-weight:normal}header a{color:white}.layout{display:grid;grid-template-columns:230px minmax(0,1fr);min-height:calc(100vh - 90px)}aside{padding:24px 16px;background:#fff;border-left:1px solid var(--line)}aside button,aside a{display:block;text-align:right;width:100%;margin-bottom:7px;font-size:13px;background:transparent;color:#36565c}aside button.active{background:#e0efea;color:#116959;font-weight:bold}main{max-width:1400px;width:100%;margin:0 auto;padding:28px}.hero{background:var(--navy);color:white;border-radius:20px;padding:32px;margin-bottom:24px;position:relative;overflow:hidden}.hero:after{content:'ق';position:absolute;left:35px;top:-70px;font-size:220px;color:#ffffff0b}.hero p{color:#c6dfd9;max-width:660px;margin:0}.eyebrow{color:#a8d6c6;font-size:12px;letter-spacing:1px}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px;margin-bottom:18px}.grid .card{margin:0}.module{cursor:pointer;text-align:right;min-height:156px;background:white;color:#23434a;display:flex;flex-direction:column;align-items:start;justify-content:space-between}.module .symbol{font-size:25px}.module h3{margin:8px 0}.toolbar{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-bottom:20px}.toolbar input{max-width:330px}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.tabs button{background:#e6eeec;color:#385e62}.tabs button.active{background:var(--green);color:white}.table-wrap{overflow:auto;background:white;border:1px solid var(--line);border-radius:12px}table{border-collapse:collapse;width:100%;font-size:13px}td,th{text-align:right;padding:13px;border-bottom:1px solid var(--line);white-space:nowrap}th{background:#eaf1ee;font-size:12px}tr:hover td{background:#f8fbfa}.badge{background:#e7eeec;color:#315c55;border-radius:30px;font-size:11px;padding:3px 10px;display:inline-block}.badge.approved,.badge.paid,.badge.issued{background:#d8efe1;color:#1a6f4b}.badge.manager,.badge.central,.badge.supervisor{background:#fff0cf;color:#7a5b16}.empty{text-align:center;padding:55px;color:#647d7e}.hint{border-right:4px solid #daa647;background:#fff8e7;padding:13px 18px;font-size:13px;margin-bottom:18px;border-radius:6px}.actions{display:flex;gap:8px;flex-wrap:wrap}dialog{border:0;border-radius:16px;padding:26px;max-width:900px;width:94%;max-height:90vh;box-shadow:0 16px 70px #102e3650}dialog::backdrop{background:#061d2b88}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid .wide{grid-column:1/-1}.form-actions{display:flex;gap:10px;margin-top:25px;position:sticky;bottom:-26px;background:white;padding:15px 0}.auth{max-width:500px;margin:7vh auto}.auth form{display:grid;gap:15px}.auth .brand{color:var(--green)}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#102e36;color:white;box-shadow:0 5px 20px #0003;border-radius:12px;padding:14px 22px;max-width:90%;display:none;z-index:9999}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px}.stat{background:white;border:1px solid var(--line);border-radius:12px;padding:20px}.stat strong{display:block;font-size:27px;color:var(--green)}.kv{display:grid;grid-template-columns:180px 1fr;gap:0;border-bottom:1px solid #edf1ef;padding:9px 0}.kv span{white-space:pre-wrap;overflow-wrap:anywhere}.bar{display:flex;align-items:center;gap:10px;margin:12px 0}.bar i{display:block;background:#2e9481;min-width:3px;height:14px;border-radius:7px}.print-only{display:none}a{color:#177268}footer{padding:22px;text-align:center;color:#678181;font-size:11px}@media(max-width:900px){.grid{grid-template-columns:repeat(2,1fr)}.layout{grid-template-columns:1fr}aside{display:flex;overflow:auto;gap:8px;padding:12px;border:0}aside button,aside a{width:auto;white-space:nowrap;margin:0}main{padding:18px}.stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:520px){header{padding:15px;align-items:flex-start}.brand{font-size:22px}.grid{grid-template-columns:1fr 1fr;gap:10px}.module{padding:14px;min-height:150px}.module h3{font-size:14px}.hero{padding:22px}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.kv{grid-template-columns:1fr}.toolbar input{max-width:100%}dialog{padding:18px}.actions button{font-size:12px}}@media print{body>*{display:none!important}dialog[open]{display:block!important;position:static;width:100%;max-width:none;max-height:none;box-shadow:none;overflow:visible}.no-print{display:none!important}.print-only{display:block}.kv{break-inside:avoid}button{display:none!important}}

/* Checkbox choices: stable row alignment and generous touch targets. */
.selection-wrap{margin:12px 0 24px;border:1px solid #ccdcd7;border-radius:10px;overflow:hidden;background:white}
.selection-table{width:100%;border-collapse:collapse;table-layout:fixed}
.selection-table th:first-child,.selection-table td:first-child{width:76px;text-align:center}
.selection-table th,.selection-table td{padding:0 12px;white-space:normal;overflow-wrap:anywhere;height:46px;border-bottom:1px solid #e0e9e5}
.selection-table th{background:#eaf1ee;padding:12px;font-weight:bold}
.selection-table tr:last-child td{border-bottom:0}
.selection-table tbody tr:nth-child(even){background:#f7faf9}
.selection-table td label{display:flex;align-items:center;min-height:46px;margin:0;cursor:pointer;font-size:14px;line-height:1.7}
.selection-table input[type=checkbox]{width:20px;height:20px;margin:0;accent-color:#177268;vertical-align:middle}
.selection-table tr:has(input:checked){background:#eaf6f1}
@media(max-width:520px){.selection-table th:first-child,.selection-table td:first-child{width:60px}.selection-table td label{font-size:14px}}

.dialog-message{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:12px;background:#102e36;color:white;border-radius:10px;padding:14px;margin-bottom:16px;box-shadow:0 3px 12px #0003;overflow-wrap:anywhere}.dialog-message span,#toast span{white-space:pre-wrap}.dialog-message.message-error,#toast.message-error{background:#fff0ee;color:#8b2520;border:2px solid #bd443c}.dialog-message button,#toast button{flex-shrink:0;background:transparent;color:inherit;border:1px solid currentColor;font-size:12px;padding:5px 9px}#toast button{margin-inline-start:12px}
