: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,"Traditional Arabic",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%}}
