:root{--brand:#087f7b;--brand2:#0aa19a;--ink:#253238;--muted:#6a7a7e;--line:#dce5e6;--bg:#f5f8f8;--danger:#b42318;--ok:#067647;--warning:#b54708}*{box-sizing:border-box}html{overflow-x:hidden}body{margin:0;font-family:Tahoma,Arial,sans-serif;background:var(--bg);color:var(--ink);line-height:1.75;overflow-x:hidden}.wrap{width:min(1120px,calc(100% - 28px));margin:auto}.site-header{background:white;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}.header-row{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:18px}.brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:var(--ink);min-width:0}.brand img{width:78px;height:52px;object-fit:contain;flex:0 0 auto}.brand span{min-width:0}.brand strong{display:block;font-size:20px;color:var(--brand)}.brand small{display:block;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}nav{display:flex;gap:15px;flex-wrap:wrap}nav a{color:var(--brand);text-decoration:none}.main{padding:34px 0 60px}.card{background:white;border:1px solid var(--line);border-radius:18px;padding:26px;box-shadow:0 8px 30px rgba(27,59,61,.06);margin-bottom:20px;min-width:0}.login-card{max-width:520px;margin-left:auto;margin-right:auto}.hero{text-align:center;margin-bottom:24px}.hero h1,.hero h2{margin:6px 0;color:var(--brand)}.hero p{margin:6px 0}.eyebrow{display:inline-block;background:#eaf6f5;color:#087f7b;padding:4px 10px;border-radius:999px;font-size:13px}.form-row{max-width:620px;margin:auto}.label,label{display:block;font-weight:bold;margin-bottom:6px}.input,.select,.textarea{width:100%;max-width:100%;min-width:0;border:1px solid #bdcccc;border-radius:10px;padding:12px 13px;font:inherit;background:white}.textarea{min-height:180px;resize:vertical}.btn{display:inline-block;border:0;border-radius:10px;padding:11px 18px;font:inherit;font-weight:bold;cursor:pointer;text-decoration:none;text-align:center}.btn-primary{background:var(--brand);color:white}.btn-light{background:#eef5f5;color:var(--brand)}.btn-danger{background:#fee4e2;color:#b42318}.btn-warning{background:#fff4e5;color:#9a3412}.btn-block{width:100%}.alert{padding:12px 14px;border-radius:10px;margin-bottom:16px;overflow-wrap:anywhere}.alert-error{background:#fef3f2;color:#b42318}.alert-info{background:#eff8ff;color:#175cd3}.alert-ok{background:#ecfdf3;color:#067647}.alert-warn{background:#fff7ed;color:#b54708}.grid,.two,.three,.four{display:grid;gap:14px;min-width:0}.grid,.two{grid-template-columns:repeat(2,minmax(0,1fr))}.three{grid-template-columns:repeat(3,minmax(0,1fr))}.four{grid-template-columns:repeat(4,minmax(0,1fr))}.grid>* ,.two>* ,.three>* ,.four>*{min-width:0}.identity{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:18px 0}.item{border:1px solid var(--line);border-radius:10px;padding:11px;min-width:0}.k{color:var(--muted);font-size:13px}.v{font-weight:bold;overflow-wrap:anywhere}.course-list{display:grid;gap:12px}.course-card{display:flex;justify-content:space-between;align-items:center;gap:20px;border:1px solid var(--line);border-radius:14px;padding:16px}.course-card h3{margin:0;color:var(--brand)}.status{font-size:13px;padding:4px 9px;border-radius:999px;display:inline-block}.status.done{background:#ecfdf3;color:#067647}.status.pending{background:#fff7ed;color:#b54708}.status.failed{background:#fef3f2;color:#b42318}.grades{width:100%;border-collapse:collapse;margin:18px 0}.grades th{background:var(--brand);color:white}.grades td,.grades th{border:1px solid #d5e0e1;padding:9px;text-align:center}.declaration{background:#f8fbfb;border:1px solid #b7d8d6;border-right:5px solid var(--brand);padding:18px;border-radius:10px;text-align:justify}.fineprint,.hint{font-size:13px;color:var(--muted);margin-top:9px;overflow-wrap:anywhere}.footer{text-align:center;color:#839195;padding:25px 14px}.admin-nav{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}.admin-nav a{padding:8px 12px;background:white;border:1px solid var(--line);border-radius:9px;text-decoration:none;color:var(--brand)}.admin-nav a.active{background:var(--brand);color:white}.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.kpi{background:white;border:1px solid var(--line);border-radius:14px;padding:18px;min-width:0}.kpi b{font-size:28px;color:var(--brand);display:block}.table-wrap{max-width:100%;overflow:auto;border-radius:12px}.table{width:100%;border-collapse:collapse;background:white}.table th,.table td{border-bottom:1px solid var(--line);padding:9px 10px;text-align:right;vertical-align:top}.table th{background:#f1f6f6;white-space:nowrap}.table td{overflow-wrap:anywhere}.table.nowrap td{white-space:nowrap}.actions{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.actions form{margin:0}.ltr{direction:ltr;text-align:left}.section-title{color:var(--brand);margin:20px 0 8px}.code{direction:ltr;background:#f6f8fa;border:1px solid var(--line);padding:10px;border-radius:8px;font-family:monospace;overflow:auto}.admin-records{display:grid;gap:12px}.admin-record{border:1px solid var(--line);border-radius:14px;padding:16px;background:#fff;min-width:0}.admin-record summary{cursor:pointer;color:var(--brand);font-weight:bold}.admin-record form{margin-top:14px}.form-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.inline-check{display:flex;gap:8px;align-items:center;font-weight:normal;margin:0}.inline-check input{width:auto}.danger-zone{border-color:#f4c7c3;background:#fffafa}.meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 18px}.meta-grid div{min-width:0}.stack{display:grid;gap:10px}.mini{font-size:12px}.mobile-label{display:none}.sticky-actions{position:sticky;bottom:8px;background:rgba(245,248,248,.95);padding:8px;border-radius:12px;border:1px solid var(--line);backdrop-filter:blur(6px)}
@media(max-width:900px){.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.four,.three{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.wrap{width:min(100% - 20px,1120px)}.main{padding-top:20px}.header-row{min-height:68px}.brand img{width:66px;height:44px}.brand strong{font-size:18px}.brand small{display:none}.card{padding:17px;border-radius:14px}.grid,.identity,.two,.three,.four,.kpis,.meta-grid{grid-template-columns:1fr}.course-card{display:block}.course-card .btn{margin-top:10px;width:100%}.admin-nav{overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px}.admin-nav a{white-space:nowrap}.form-actions>.btn,.form-actions>form,.form-actions>form>.btn{width:100%}.login-card{max-width:520px}.responsive-table thead{display:none}.responsive-table,.responsive-table tbody,.responsive-table tr,.responsive-table td{display:block;width:100%}.responsive-table tr{border:1px solid var(--line);border-radius:12px;margin:0 0 12px;padding:10px;background:#fff}.responsive-table td{border:0;padding:6px 4px;white-space:normal!important}.responsive-table td[data-label]::before{content:attr(data-label);display:block;color:var(--muted);font-size:12px;font-weight:bold}.responsive-table td.actions{display:flex}.responsive-table td.select-cell{display:flex;gap:8px;align-items:center}.responsive-table td.select-cell::before{content:'تحديد';color:var(--muted);font-size:12px;font-weight:bold}.table-wrap{overflow:visible}.sticky-actions{position:static}.footer{font-size:13px}}
.filter-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;align-items:end}.filter-actions{grid-column:1/-1}.span-all{grid-column:1/-1}.option-spacer{margin-top:34px}.danger-choice{margin-top:16px;padding:14px;border:1px solid #f4c7c3;border-radius:12px;background:#fffafa}.danger-choice p{margin:6px 0 0}
@media(max-width:1000px){.filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.filter-grid{grid-template-columns:1fr}.span-all{grid-column:auto}.option-spacer{margin-top:4px}.filter-actions{grid-column:auto}.filter-actions>.btn,.filter-actions>a{width:100%}}

/* v1.1.5 administration polish */
.section-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px}.section-heading h3{margin:4px 0}.trainer-page-head{background:linear-gradient(135deg,#fff,#f4fbfa);border-color:#cfe5e3}.trainer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:20px}.trainer-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px;box-shadow:0 8px 30px rgba(27,59,61,.05);min-width:0}.trainer-card-head{display:flex;align-items:center;gap:12px;padding-bottom:14px;border-bottom:1px solid var(--line);margin-bottom:16px}.trainer-avatar{width:48px;height:48px;border-radius:14px;background:#e6f5f4;color:var(--brand);display:grid;place-items:center;font-size:22px;font-weight:bold;flex:0 0 auto}.trainer-card h4{margin:0;color:var(--brand);font-size:18px}.trainer-subtitle{font-size:12px;color:var(--muted);margin-top:2px}.trainer-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.trainer-fallback{grid-column:1/-1;display:flex;align-items:flex-start;gap:9px;border:1px solid var(--line);background:#f9fbfb;border-radius:12px;padding:12px;font-weight:normal}.trainer-fallback input{margin-top:5px}.trainer-fallback span{display:grid;gap:2px}.trainer-fallback strong{color:var(--ink)}.trainer-fallback small{color:var(--muted)}.trainer-card-actions{margin-top:14px;display:flex;justify-content:flex-end}.font-manager{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.font-card{border:1px solid var(--line);border-radius:16px;padding:18px;background:#fff;min-width:0}.font-card-builtin{background:#f8fbfb}.font-card-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;margin-bottom:12px}.font-card-head>div{display:grid;gap:6px}.font-card-head strong{font-size:18px;color:var(--brand)}.font-state{font-size:12px;border-radius:999px;padding:3px 9px;width:max-content}.font-state.ready{background:#ecfdf3;color:#067647}.font-state.missing{background:#fff7ed;color:#b54708}.font-files{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:12px}.font-files>div{border:1px solid var(--line);border-radius:10px;padding:10px;display:flex;justify-content:space-between;gap:8px}.file-ok{color:#067647}.file-missing{color:#b42318}.file-optional{color:var(--muted)}.font-upload-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:end}.font-upload-form .btn{grid-column:1/-1}.font-delete-form{margin-top:8px}.pdf-font-choice{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end}.section-merge-box{margin-top:12px;padding:14px;border:1px solid #b7d8d6;border-radius:14px;background:#f6fbfb;display:flex;justify-content:space-between;align-items:center;gap:16px}.section-merge-box strong{color:var(--brand)}.error-page-card{max-width:760px;margin-left:auto;margin-right:auto}.error-page-card h2{margin-top:0;color:var(--danger)}.error-details{background:#fff6f5;border:1px solid #f4c7c3;border-radius:12px;padding:14px;overflow-wrap:anywhere}.error-actions{margin-top:18px;display:flex;gap:8px;flex-wrap:wrap}
@media(max-width:900px){.trainer-grid,.font-manager{grid-template-columns:1fr}}
@media(max-width:760px){.trainer-fields,.font-upload-form,.pdf-font-choice{grid-template-columns:1fr}.font-upload-form .btn{grid-column:auto}.trainer-card-actions .btn{width:100%}.section-heading,.section-merge-box{display:block}.section-merge-box .btn{width:100%;margin-top:10px}.font-files{grid-template-columns:1fr}}

/* v1.1.5 assessment library editor */
.assessment-editor-head{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:18px;margin-bottom:10px}.assessment-editor-head h4{margin:0;color:var(--brand)}.assessment-editor{min-width:760px}.assessment-editor input{min-width:0}.assessment-editor .row-order-actions{white-space:nowrap}.assessment-editor .row-order-actions .btn{padding:8px 11px}.assessment-editor tfoot th{background:#eef8f7;color:var(--brand);font-weight:bold}.assessment-save{margin-top:12px}.course-assessment[open]{border-color:#b9d8d6;box-shadow:0 10px 30px rgba(8,127,123,.06)}
@media(max-width:760px){.assessment-editor-head{align-items:stretch;flex-direction:column}.assessment-editor-head .btn{width:100%}.assessment-editor{min-width:680px}.assessment-save .btn{width:100%}}

/* Eqrar v1.1.7 compact status/actions */
.icon-svg{width:18px;height:18px;display:inline-block;vertical-align:middle;flex:0 0 auto}.icon-btn{width:36px;height:36px;padding:0;border:1px solid #cddadb;border-radius:9px;background:#fff;color:#355b5b;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;text-decoration:none;transition:.15s ease}.icon-btn:hover{background:#eef8f7;border-color:#84bdbc;color:#087f7b}.icon-btn:focus-visible{outline:3px solid rgba(8,127,123,.25);outline-offset:2px}.icon-danger{color:#b42318;border-color:#f1c5c1}.icon-danger:hover{background:#fff1f0;border-color:#e99a92;color:#9b1c14}.icon-actions{display:flex!important;align-items:center;gap:6px;flex-wrap:wrap}.icon-actions form{margin:0;display:inline-flex}.mail-icons{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.mail-state{min-width:34px;height:30px;border-radius:999px;padding:0 8px;display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;border:1px solid transparent}.mail-state .icon-svg{width:15px;height:15px}.mail-ok{background:#ecfdf3;color:#067647;border-color:#abefc6}.mail-fail{background:#fff1f0;color:#b42318;border-color:#fecdca}.mail-pending{background:#fffaeb;color:#b54708;border-color:#fedf89}.mail-off{background:#f2f4f7;color:#667085;border-color:#e4e7ec}.mail-error summary{cursor:pointer;color:#b42318;list-style:none}.mail-error summary::-webkit-details-marker{display:none}.mail-error .hint{margin-top:5px;max-width:320px}.status .icon-svg{width:14px;height:14px;margin-left:3px}.record-archived{opacity:.78}.trainee-table th:nth-last-child(-n+2),.trainee-table td:nth-last-child(-n+2){white-space:nowrap}@media(max-width:760px){.icon-actions,.mail-icons{justify-content:flex-start}.mail-state span{display:none}.mail-state{min-width:30px;padding:0 6px}.trainee-table td[data-label="الإرسال"],.trainee-table td[data-label="الإجراءات"]{display:flex;align-items:center;gap:8px;justify-content:space-between}}
.lazy-loader{text-align:center;padding:14px;color:var(--muted);font-size:13px}.lazy-sentinel{height:1px}.record-archived{opacity:.72}


/* Eqrar v1.1.8 — hard compact icon sizing for trainee table */
.trainee-table th,.trainee-table td{vertical-align:middle!important}.trainee-table td{padding-top:7px!important;padding-bottom:7px!important}.trainee-table .icon-svg{width:16px!important;height:16px!important;max-width:16px!important;max-height:16px!important;min-width:16px!important;min-height:16px!important}.trainee-table .status{display:inline-flex!important;align-items:center;justify-content:center;gap:4px;font-size:12px!important;line-height:1.2!important;padding:4px 8px!important;min-height:26px!important;white-space:nowrap}.trainee-table .status .icon-svg{margin:0 0 0 2px!important}.trainee-table .icon-actions{display:flex!important;align-items:center!important;gap:4px!important;flex-wrap:nowrap!important;line-height:1!important}.trainee-table .icon-actions form{display:inline-flex!important;margin:0!important}.trainee-table .icon-btn{width:30px!important;height:30px!important;min-width:30px!important;min-height:30px!important;max-width:30px!important;max-height:30px!important;padding:0!important;border-radius:8px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;line-height:1!important}.trainee-table .icon-btn .icon-svg{width:15px!important;height:15px!important;min-width:15px!important;min-height:15px!important;max-width:15px!important;max-height:15px!important}.trainee-table .mail-icons{display:flex!important;align-items:center!important;gap:4px!important;flex-wrap:nowrap!important;line-height:1!important}.trainee-table .mail-state{width:28px!important;min-width:28px!important;max-width:28px!important;height:26px!important;min-height:26px!important;max-height:26px!important;padding:0!important;border-radius:8px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;line-height:1!important}.trainee-table .mail-state .icon-svg{width:14px!important;height:14px!important;min-width:14px!important;min-height:14px!important;max-width:14px!important;max-height:14px!important}.trainee-table .mail-error{display:inline-block!important;margin:0!important;line-height:1!important}.trainee-table .mail-error summary{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:26px!important;height:26px!important}.trainee-table .mail-error summary .icon-svg{width:14px!important;height:14px!important;min-width:14px!important;min-height:14px!important;max-width:14px!important;max-height:14px!important}
@media(max-width:760px){.trainee-table .icon-actions,.trainee-table .mail-icons{flex-wrap:wrap!important}.trainee-table .icon-btn{width:30px!important;height:30px!important}.trainee-table .mail-state{width:28px!important;height:26px!important}}

/* Eqrar v1.1.9 — icon-only acknowledgement state and instructions */
.trainee-table .ack-status-cell{text-align:center!important}.ack-state{width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;border:1px solid transparent;line-height:1}.ack-state .icon-svg{width:15px!important;height:15px!important;min-width:15px!important;min-height:15px!important;max-width:15px!important;max-height:15px!important}.ack-state-approved{background:#ecfdf3;color:#067647;border-color:#abefc6}.ack-state-pending{background:#f2f4f7;color:#667085;border-color:#d0d5dd}.instructions-card p{margin:8px 0;line-height:1.9}.instructions-card h3{margin-bottom:8px}

/* Eqrar v1.1.10 — composite mail states, compact actions, dashboard exports, release card */
.trainee-table .ack-state{width:20px!important;height:20px!important;min-width:20px!important;min-height:20px!important;border:0!important;border-radius:0!important;background:transparent!important;padding:0!important}.trainee-table .ack-state .icon-svg{width:16px!important;height:16px!important;min-width:16px!important;min-height:16px!important;max-width:16px!important;max-height:16px!important}.trainee-table .ack-state-approved{color:#067647!important}.trainee-table .ack-state-pending{color:#667085!important}
.trainee-table .mail-state{position:relative!important;width:24px!important;min-width:24px!important;max-width:24px!important;height:24px!important;min-height:24px!important;max-height:24px!important;border:0!important;border-radius:0!important;padding:0!important;background:transparent!important;overflow:visible!important}.trainee-table .mail-state-base{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:20px!important;height:20px!important}.trainee-table .mail-state-base .icon-svg{width:16px!important;height:16px!important;min-width:16px!important;min-height:16px!important;max-width:16px!important;max-height:16px!important}.trainee-table .mail-state-mark{position:absolute!important;left:-1px!important;bottom:-1px!important;width:11px!important;height:11px!important;border-radius:50%!important;background:#fff!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;box-shadow:0 0 0 1px #fff!important}.trainee-table .mail-state-mark .icon-svg{width:9px!important;height:9px!important;min-width:9px!important;min-height:9px!important;max-width:9px!important;max-height:9px!important;stroke-width:2.4!important}.trainee-table .mail-ok{color:#067647!important}.trainee-table .mail-fail{color:#b42318!important}.trainee-table .mail-pending{color:#b54708!important}.trainee-table .mail-off{color:#667085!important}.trainee-table .icon-btn{width:30px!important;height:30px!important;min-width:30px!important;min-height:30px!important;max-width:30px!important;max-height:30px!important}.trainee-table .icon-actions{gap:4px!important}
.dashboard-export-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.dashboard-export-actions .btn{display:inline-flex;align-items:center;gap:7px}.dashboard-export-actions .icon-svg{width:16px;height:16px}.release-card{border-color:#b7d8d6;background:linear-gradient(135deg,#fff,#f5fbfa)}.release-card .section-heading{margin-bottom:10px}.release-card h3{margin:4px 0 0}.release-date{font-size:13px;color:var(--muted);white-space:nowrap}.release-update{font-size:15px;color:var(--ink)}.release-summary{margin:7px 0 0}.release-card strong{color:var(--brand)}
@media(max-width:760px){.dashboard-section-heading{display:block}.dashboard-export-actions{margin-top:12px}.dashboard-export-actions .btn{width:100%;justify-content:center}.release-card .section-heading{display:block}.release-date{margin-top:6px}}
