@font-face{font-family:Cairo;src:local('Cairo')}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%;font-family:Cairo,Tahoma,Arial,sans-serif;background:#f4f8fb;color:#12212d}body{direction:rtl}button,input,textarea{font:inherit}.login{min-height:100vh;display:grid;grid-template-columns:1.05fr .75fr;background:#eef5f7}.loginHero{position:relative;overflow:hidden;padding:7vw;color:#fff;background:linear-gradient(145deg,#0f766e,#0d3f57);display:flex;flex-direction:column;justify-content:center}.loginHero h1{font-size:clamp(34px,5vw,68px);margin:0}.loginHero p{font-size:24px}.heroGlow{position:absolute;width:420px;height:420px;border-radius:50%;background:#ffffff16;left:-90px;bottom:-120px}.loginCard{align-self:center;margin:6vw;background:white;padding:38px;border-radius:28px;box-shadow:0 24px 70px #0b3f551f;display:grid;gap:18px}.loginCard h2{font-size:30px;margin:0}.eyebrow{color:#0f766e;font-weight:900;font-size:12px}.loginCard label,.grid label{display:grid;gap:7px;font-weight:800;font-size:13px}input,textarea{width:100%;border:1px solid #d8e4e9;border-radius:12px;padding:11px 12px;background:#fff;outline:0}input:focus,textarea:focus{border-color:#0f766e;box-shadow:0 0 0 3px #0f766e15}.primary,.upload{border:0;border-radius:12px;padding:11px 16px;background:linear-gradient(135deg,#0f766e,#0b4f4a);color:white;font-weight:900;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.primary:disabled{opacity:.45;cursor:not-allowed}.upload input{display:none}.shell{min-height:100vh;display:grid;grid-template-columns:270px 1fr}.shell aside{background:linear-gradient(180deg,#0c3547,#0a2533);color:white;padding:20px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.brand{display:flex;gap:12px;align-items:center;padding:8px 6px 24px}.brand>b{width:48px;height:48px;display:grid;place-items:center;background:white;color:#0f766e;border-radius:16px;font-size:18px}.brand div{display:grid}.brand small{color:#b9d1dc}.shell nav{display:grid;gap:6px}.shell nav a{color:#d8e8ee;text-decoration:none;padding:11px 13px;border-radius:12px;font-weight:800;font-size:13px}.shell nav a.active,.shell nav a:hover{background:#ffffff18;color:white}.logout{margin-top:auto;background:#ffffff12;color:white;border:1px solid #ffffff22;border-radius:12px;padding:11px}.shell main{min-width:0;display:flex;flex-direction:column}.shell header{height:74px;background:#ffffffd9;backdrop-filter:blur(12px);border-bottom:1px solid #e1eaee;display:flex;justify-content:space-between;align-items:center;padding:0 28px;position:sticky;top:0;z-index:10}.shell header div{display:grid}.shell header small{color:#6c7e88}.role{background:#e9f7f4;color:#0f766e;padding:7px 12px;border-radius:999px;font-weight:900;font-size:12px}.content{padding:26px;flex:1}.shell footer{text-align:center;padding:16px;color:#72838c;font-size:12px}.title{display:flex;justify-content:space-between;gap:15px;align-items:end;margin-bottom:18px}.title h1{font-size:26px;margin:0}.title p{margin:4px 0 0;color:#72838c}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.stat{background:white;border:1px solid #e0e9ed;border-radius:18px;padding:18px;box-shadow:0 12px 34px #1a4b5a0b;display:grid;gap:2px}.stat b{font-size:30px;color:#0f766e}.stat span{color:#637780;font-size:12px}.heroPanel{border-radius:26px;padding:28px;background:radial-gradient(circle at 15% 15%,#ffffff20,transparent 25%),linear-gradient(135deg,#0f766e,#17466b);color:white;display:grid;grid-template-columns:1fr 170px;align-items:center;gap:20px}.heroPanel h2{font-size:28px;margin:6px 0}.heroPanel p{color:#d8f0ef}.meter{width:140px;height:140px;border-radius:50%;border:8px solid #ffffff34;display:grid;place-items:center;align-content:center;margin:auto}.meter b{font-size:34px}.meter span{font-size:11px}.panel{background:white;border:1px solid #dde8ec;border-radius:20px;padding:18px;margin-bottom:18px;box-shadow:0 10px 30px #10384709}.panel h3{margin-top:0}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-bottom:16px}.actions,.inline{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.inline input{flex:1}.table{background:white;border:1px solid #dde8ec;border-radius:18px;overflow:auto;margin-bottom:18px}table{width:100%;border-collapse:collapse;min-width:760px}th,td{padding:12px 13px;border-bottom:1px solid #edf2f4;text-align:right;font-size:12px}th{background:#f6fafb;color:#4d646e}tr:hover td{background:#fbfefe}.good{color:#078356}.bad{color:#be2b2b}.alert{padding:11px 14px;border-radius:12px;background:#edf9f5;border:1px solid #c8eadc;color:#116d52;margin-bottom:14px;font-weight:800}.alert.error{background:#fff0ef;border-color:#f1c4c0;color:#a02b23}.tabs{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:14px}.tabs button{border:1px solid #d8e4e9;background:white;border-radius:10px;padding:8px 11px;font-weight:800;color:#647982}.tabs button.active{background:#0f766e;color:white;border-color:#0f766e}.two{display:grid;grid-template-columns:1fr 1fr;gap:16px}.chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}.chips span{background:#eef7f7;border:1px solid #d5e9e7;padding:7px 9px;border-radius:10px;font-size:12px;font-weight:800}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.inst{background:white;border:1px solid #dce8ec;border-radius:20px;padding:18px;display:grid;gap:14px}.inst h3{margin:4px 0}.inst p{color:#71828a;font-size:12px}.inst>div>span{color:#0f766e;font-size:11px;font-weight:900}.capacity{background:#f3f9fa;border-radius:15px;padding:12px;display:grid}.capacity b{font-size:28px;color:#0f766e}.capacity small{color:#6a7e87}.successBig{background:linear-gradient(135deg,#e9faf3,#eef9ff);border:1px solid #c6eadb;border-radius:18px;padding:22px;font-size:18px}.loading{padding:60px;text-align:center;color:#6d8089}.identity{border-top:4px solid #0f766e}
@media(max-width:1000px){.shell{grid-template-columns:1fr}.shell aside{position:relative;height:auto}.shell nav{display:flex;overflow:auto}.logout{margin-top:14px}.stats{grid-template-columns:repeat(2,1fr)}.grid,.cards{grid-template-columns:repeat(2,1fr)}.two{grid-template-columns:1fr}.login{grid-template-columns:1fr}.loginHero{min-height:260px}.loginCard{margin:20px}.heroPanel{grid-template-columns:1fr}}
@media(max-width:650px){.content{padding:14px}.shell header{padding:0 14px}.grid,.cards,.stats{grid-template-columns:1fr}.title h1{font-size:22px}.loginCard{padding:24px}.heroPanel{padding:20px}.shell nav a{white-space:nowrap}}
/* =========================================================
   التكويدات والصلاحيات - الإصدار المرجعي المحسن
   ========================================================= */
.coding-page,.roles-page{--coding-blue:#2447a5;--coding-blue-dark:#17357f;--coding-blue-soft:#eef3ff;--coding-line:#dce4f1;--coding-ink:#11233d;--coding-muted:#718096}.coding-head{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;margin:4px 0 20px}.coding-head small{color:var(--coding-blue);font-weight:900}.coding-head h1{margin:5px 0 2px;font-size:30px;color:var(--coding-ink)}.coding-head p{margin:0;color:var(--coding-muted);font-size:13px}.coding-head-actions{display:flex;gap:9px;flex-wrap:wrap}.coding-add{background:linear-gradient(135deg,var(--coding-blue),var(--coding-blue-dark))!important;color:#fff!important;box-shadow:0 10px 24px rgba(36,71,165,.18)}.coding-soft{background:#fff!important;color:var(--coding-blue)!important;border:1px solid var(--coding-line)!important}.danger-soft{background:#fff0ef!important;color:#b42318!important;border:1px solid #f2c8c4!important}.coding-file{cursor:pointer}.coding-summary{display:grid;grid-template-columns:repeat(7,minmax(125px,1fr));gap:10px;margin-bottom:16px}.coding-summary-card{min-height:78px;border:1px solid var(--coding-line);background:#fff;border-radius:17px;padding:12px;display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:9px;text-align:right;cursor:pointer;box-shadow:0 8px 24px rgba(20,48,95,.045);transition:.18s ease}.coding-summary-card:hover{transform:translateY(-2px);box-shadow:0 13px 30px rgba(36,71,165,.09)}.coding-summary-card.active{background:linear-gradient(135deg,var(--coding-blue),var(--coding-blue-dark));border-color:transparent;color:#fff;box-shadow:0 14px 34px rgba(36,71,165,.24)}.coding-card-icon{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:var(--coding-blue-soft);color:var(--coding-blue);font-size:18px;font-weight:900}.coding-summary-card.active .coding-card-icon{background:rgba(255,255,255,.16);color:#fff}.coding-card-copy{display:grid;gap:2px}.coding-card-copy b{font-size:11.5px;white-space:nowrap}.coding-card-copy small{font-size:9.5px;color:var(--coding-muted)}.coding-summary-card.active .coding-card-copy small{color:#dce5ff}.coding-summary-card strong{font-size:20px;color:var(--coding-blue)}.coding-summary-card.active strong{color:#fff}.coding-toolbar{display:flex;align-items:center;gap:10px;padding:12px!important}.coding-search{flex:1;min-width:230px;display:flex;align-items:center;gap:8px;border:1px solid var(--coding-line);background:#f9fbff;border-radius:12px;padding:0 11px}.coding-search span{font-size:21px;color:var(--coding-blue)}.coding-search input{border:0!important;background:transparent!important;box-shadow:none!important;padding:10px 0!important}.coding-selection{font-size:11px;color:var(--coding-muted);font-weight:800;white-space:nowrap}.coding-table-card{padding:0!important;overflow:hidden}.coding-table-title{padding:15px 17px;display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid var(--coding-line);background:linear-gradient(180deg,#fff,#fbfcff)}.coding-table-title h3{margin:0 0 3px;color:var(--coding-ink);font-size:17px}.coding-table-title p{margin:0;color:var(--coding-muted);font-size:11px}.coding-badge,.permission-count{display:inline-flex;align-items:center;padding:6px 9px;border-radius:999px;background:#eef6ff;color:var(--coding-blue);font-size:10px;font-weight:900}.coding-table-wrap{margin:0}.coding-table{min-width:780px}.coding-table th{background:#f5f8fd!important;color:#526277!important;font-weight:900;font-size:10.5px}.coding-table td{font-size:11.5px;vertical-align:middle}.coding-table tr:hover td{background:#f9fbff}.coding-name{color:#162a46}.check-col{width:42px;text-align:center!important}.check-col input{width:17px!important;height:17px;accent-color:var(--coding-blue)}.status-pill{display:inline-flex;align-items:center;gap:5px;padding:5px 9px;border-radius:999px;font-size:10px;font-weight:900}.status-pill.on{background:#eaf9f1;color:#087a4d}.status-pill.off{background:#f3f4f6;color:#6b7280}.row-actions{display:flex;gap:6px;flex-wrap:wrap}.mini-btn{border:0;border-radius:8px;padding:6px 9px;font:inherit;font-size:10px;font-weight:900;cursor:pointer}.mini-btn.edit{background:#eef3ff;color:var(--coding-blue)}.mini-btn.delete{background:#fff0ef;color:#bd261b}.mini-btn:disabled{opacity:.35;cursor:not-allowed}.empty-state{padding:34px;display:grid;gap:5px;text-align:center;color:var(--coding-muted)}.empty-state b{color:var(--coding-ink)}
.modal-backdrop{position:fixed;inset:0;z-index:1000;background:rgba(11,25,48,.45);backdrop-filter:blur(4px);display:grid;place-items:center;padding:22px}.modal-box{width:min(650px,95vw);max-height:90vh;overflow:auto;background:#fff;border-radius:22px;border:1px solid #dfe6f0;box-shadow:0 30px 80px rgba(13,30,58,.28);padding:20px}.modal-box.compact{width:min(520px,95vw)}.modal-box.wide{width:min(900px,96vw)}.modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:15px}.modal-head small{color:var(--coding-blue);font-weight:900}.modal-head h3{margin:3px 0 0;font-size:21px;color:var(--coding-ink)}.modal-close{width:36px;height:36px;border:0;border-radius:10px;background:#f3f5f8;color:#536273;font-size:23px;cursor:pointer}.modal-form{display:grid;gap:13px}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.muted{color:var(--coding-muted);font-size:12px}.preview-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:12px}.preview-stats span{border:1px solid var(--coding-line);border-radius:12px;padding:10px;display:flex;justify-content:space-between;align-items:center;font-size:11px}.preview-stats span b{font-size:18px;color:var(--coding-blue)}.preview-stats .good-box{background:#effaf5}.preview-stats .warn-box{background:#fff8e9}.excel-preview{max-height:390px;overflow:auto;border:1px solid var(--coding-line);border-radius:14px}.excel-row{display:grid;grid-template-columns:44px 1fr auto;gap:10px;padding:9px 12px;border-bottom:1px solid #edf1f6;align-items:center;font-size:11px}.excel-row:last-child{border-bottom:0}.excel-row>em{font-style:normal;padding:4px 7px;border-radius:999px;background:#eaf9f1;color:#087a4d;font-size:9.5px;font-weight:900}.excel-row.duplicate{opacity:.66;background:#fafafa}.excel-row.duplicate>em{background:#f3f4f6;color:#6b7280}.roles-head{margin-bottom:14px}.roles-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:11px;margin-bottom:14px}.role-stat{background:#fff;border:1px solid var(--coding-line);border-radius:16px;padding:13px;display:flex;align-items:center;gap:11px}.role-stat>span{width:40px;height:40px;border-radius:11px;display:grid;place-items:center;background:var(--coding-blue-soft);color:var(--coding-blue);font-size:19px}.role-stat div{display:grid}.role-stat b{font-size:22px;color:var(--coding-ink)}.role-stat small{font-size:10px;color:var(--coding-muted)}.settings-subtabs{display:flex;gap:6px;margin-bottom:13px;border-bottom:1px solid var(--coding-line)}.settings-subtabs button{border:0;background:transparent;padding:10px 16px;color:#708094;font-weight:900;cursor:pointer;border-bottom:3px solid transparent}.settings-subtabs button.active{color:var(--coding-blue);border-color:var(--coding-blue)}.system-tag{display:inline-block;margin-right:7px;padding:3px 6px;border-radius:6px;background:#eef3ff;color:var(--coding-blue);font-size:8.5px}.role-modal{max-height:92vh}.select-all-box{align-self:end;min-height:69px;border:1px solid var(--coding-line);background:#f8faff;border-radius:12px;padding:10px;display:grid;gap:5px}.select-all-box label{display:flex!important;align-items:center;gap:7px}.select-all-box input,.permission-item input{width:17px!important;height:17px;accent-color:var(--coding-blue)}.select-all-box span{font-size:9px;color:var(--coding-muted)}.permission-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:13px}.permission-group{border:1px solid var(--coding-line);border-radius:14px;overflow:hidden;background:#fff}.permission-group-head{padding:10px 12px;background:#f7f9fd;display:flex;justify-content:space-between;align-items:center}.permission-group-head b{font-size:12px;color:var(--coding-ink)}.link-btn{border:0;background:transparent;color:var(--coding-blue);font-size:9px;font-weight:900;cursor:pointer}.permission-item{display:flex!important;align-items:center;gap:9px;padding:9px 11px;border-top:1px solid #eef2f6;cursor:pointer}.permission-item>span{display:grid;gap:1px}.permission-item b{font-size:10.5px}.permission-item small{font-size:8.5px;color:var(--coding-muted);direction:ltr;text-align:left}.permission-item:hover{background:#fbfcff}code{direction:ltr;display:inline-block;background:#f4f6fa;padding:4px 6px;border-radius:7px;color:#536273;font-size:10px}
@media(max-width:1250px){.coding-summary{grid-template-columns:repeat(4,1fr)}}
@media(max-width:900px){.coding-head{display:grid}.coding-head-actions{width:100%}.coding-head-actions .btn{flex:1}.coding-summary{grid-template-columns:repeat(2,1fr)}.coding-toolbar{flex-wrap:wrap}.coding-search{width:100%;flex-basis:100%}.roles-summary{grid-template-columns:repeat(2,1fr)}.permission-groups{grid-template-columns:1fr}.preview-stats{grid-template-columns:1fr}}
@media(max-width:560px){.coding-summary{grid-template-columns:1fr}.coding-summary-card{min-height:65px}.roles-summary{grid-template-columns:1fr}.coding-head h1{font-size:24px}.modal-backdrop{padding:8px}.modal-box{border-radius:16px;padding:14px}.modal-actions{display:grid;grid-template-columns:1fr 1fr}.coding-toolbar .btn{width:100%}}

/* توزيع المؤسسات على المشرفين */
.distribution-layout{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:16px}.distribution-card{padding:17px!important}.distribution-title{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:14px}.distribution-title small{color:var(--coding-blue);font-weight:900}.distribution-title h3{margin:3px 0 0;color:var(--coding-ink)}.distribution-tools{display:flex;justify-content:space-between;gap:10px;align-items:center;margin:10px 0;padding:9px 11px;border:1px solid var(--coding-line);border-radius:11px;background:#f8faff;font-size:11px;font-weight:800}.distribution-tools label{display:flex;gap:7px;align-items:center}.distribution-tools input,.institution-pick input{width:17px!important;height:17px;accent-color:var(--coding-blue)}.institution-pick-list{min-height:220px;max-height:350px;overflow:auto;border:1px solid var(--coding-line);border-radius:13px;background:#fff}.institution-pick{display:flex;gap:10px;align-items:center;padding:10px 12px;border-bottom:1px solid #edf1f6;cursor:pointer}.institution-pick:last-child{border-bottom:0}.institution-pick:hover{background:#f9fbff}.institution-pick>span{display:grid;gap:2px}.institution-pick b{font-size:11px;color:var(--coding-ink)}.institution-pick small{font-size:9.5px;color:var(--coding-muted)}
@media(max-width:980px){.distribution-layout{grid-template-columns:1fr}}


/* =========================================================
   بوابة الطالب — اختيار المؤسسات بالكروت المبهرة
   ========================================================= */
.student-portal-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center;margin-bottom:18px;padding:30px 32px;border-radius:28px;color:#fff;background:radial-gradient(circle at 8% 20%,rgba(255,255,255,.22),transparent 24%),radial-gradient(circle at 78% 120%,rgba(102,234,213,.28),transparent 34%),linear-gradient(135deg,#0b766d 0%,#0a5065 52%,#163c68 100%);box-shadow:0 22px 60px rgba(19,66,89,.20)}
.student-portal-hero:before{content:"";position:absolute;inset:-80px auto auto -80px;width:220px;height:220px;border:1px solid rgba(255,255,255,.13);border-radius:50%;box-shadow:0 0 0 35px rgba(255,255,255,.035),0 0 0 70px rgba(255,255,255,.025)}
.student-portal-welcome,.student-portal-badge{position:relative;z-index:1}
.student-portal-kicker{display:inline-flex;padding:7px 12px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(255,255,255,.10);font-size:11px;font-weight:900}
.student-portal-welcome h1{margin:10px 0 6px;font-size:31px;line-height:1.35}
.student-portal-welcome p{margin:0;color:rgba(255,255,255,.80);font-size:13px}
.student-portal-badge{min-width:145px;padding:18px 20px;border-radius:22px;text-align:center;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.11);backdrop-filter:blur(8px);box-shadow:inset 0 1px 0 rgba(255,255,255,.12)}
.student-portal-badge small{display:block;color:rgba(255,255,255,.65);font-size:10px}.student-portal-badge strong{display:block;margin-top:4px;font-size:19px}
.student-profile-card,.student-choice-section{background:#fff;border:1px solid #dfe9ef;border-radius:24px;padding:22px;box-shadow:0 14px 38px rgba(26,72,94,.07);margin-bottom:18px}
.student-section-title{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:18px}.student-section-title>div:first-child>span{color:#0f766e;font-size:11px;font-weight:900}.student-section-title h2{margin:4px 0 0;font-size:20px}.student-section-title p{margin:5px 0 0;color:#71838c;font-size:12px;line-height:1.8}
.student-complete-chip,.live-indicator{white-space:nowrap;padding:9px 13px;border-radius:999px;background:#fff6df;color:#9b6611;border:1px solid #f4ddb0;font-size:11px;font-weight:900}.student-complete-chip.done{background:#e8f8f1;color:#087551;border-color:#c7eadb}.live-indicator{display:flex;align-items:center;gap:8px;background:#eaf9f4;color:#087551;border-color:#ccebdd}.live-indicator i{width:8px;height:8px;border-radius:50%;background:#17ad74;box-shadow:0 0 0 5px rgba(23,173,116,.10);animation:studentPulse 1.65s infinite}
.student-profile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.student-field{display:grid;gap:7px}.student-field span{font-size:11px;font-weight:800;color:#526a76}.student-field input{min-height:43px;border:1px solid #d8e5ea;border-radius:12px;padding:9px 11px;background:#fbfdfe;outline:none;transition:.18s ease}.student-field input:focus{border-color:#0f766e;background:#fff;box-shadow:0 0 0 3px rgba(15,118,110,.08)}
.student-profile-actions{grid-column:1/-1;display:flex;gap:8px;flex-wrap:wrap;margin-top:3px}.student-save-btn,.student-upload-btn{min-height:40px;border:0;border-radius:11px;padding:9px 14px;font-weight:900;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease}.student-save-btn{color:#fff;background:linear-gradient(135deg,#0f766e,#0a555f);box-shadow:0 10px 22px rgba(15,118,110,.16)}.student-upload-btn{display:inline-flex;align-items:center;color:#245169;background:#eef5f8;border:1px solid #d9e6eb}.student-save-btn:hover,.student-upload-btn:hover{transform:translateY(-1px)}
.student-inst-grid{display:grid;grid-template-columns:repeat(3,minmax(250px,1fr));gap:16px}
.student-inst-card{--tone-a:#0f766e;--tone-b:#144e70;position:relative;isolation:isolate;overflow:hidden;min-height:310px;display:flex;flex-direction:column;border:1px solid color-mix(in srgb,var(--tone-a) 16%,#dfe8ed);border-radius:24px;padding:18px;background:radial-gradient(circle at 0 0,color-mix(in srgb,var(--tone-a) 10%,white),transparent 35%),linear-gradient(180deg,#fff,#fbfdfe);box-shadow:0 15px 34px rgba(35,71,89,.09);transition:transform .22s ease,box-shadow .22s ease,filter .22s ease,opacity .22s ease}
.student-inst-card:nth-child(6n+2){--tone-a:#3159b7;--tone-b:#573e9f}.student-inst-card:nth-child(6n+3){--tone-a:#b76a1d;--tone-b:#9b3f32}.student-inst-card:nth-child(6n+4){--tone-a:#7a4fb3;--tone-b:#2e5f9c}.student-inst-card:nth-child(6n+5){--tone-a:#118b84;--tone-b:#31599f}.student-inst-card:nth-child(6n+6){--tone-a:#9a5a2d;--tone-b:#6e477e}
.student-inst-card.open:hover,.student-inst-card.low:hover{transform:translateY(-6px);box-shadow:0 25px 48px color-mix(in srgb,var(--tone-a) 18%,transparent)}.student-inst-card.full{filter:saturate(.48);opacity:.67;background:#f5f7f8}.student-inst-card.selected{transform:scale(.985);box-shadow:0 0 0 3px rgba(15,118,110,.18),0 24px 50px rgba(15,118,110,.18)}
.student-inst-shine{position:absolute;z-index:-1;top:-55px;left:-45px;width:155px;height:155px;border-radius:50%;background:color-mix(in srgb,var(--tone-a) 12%,transparent);filter:blur(3px)}
.student-inst-head{display:flex;justify-content:space-between;gap:8px;align-items:center}.student-inst-type{max-width:55%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--tone-a);font-size:10px;font-weight:900}
.student-inst-state{display:inline-flex;align-items:center;gap:7px;padding:7px 9px;border-radius:999px;font-size:10px;font-weight:900;border:1px solid transparent}.student-inst-state i{width:7px;height:7px;border-radius:50%}.student-inst-state.open{background:#e8f8f1;color:#087652;border-color:#caebdc}.student-inst-state.open i{background:#18ad75;box-shadow:0 0 0 4px rgba(24,173,117,.10)}.student-inst-state.low{background:#fff4df;color:#a5660c;border-color:#f2d8a5}.student-inst-state.low i{background:#e49a23;box-shadow:0 0 0 4px rgba(228,154,35,.10);animation:studentPulse 1.4s infinite}.student-inst-state.full{background:#eef1f3;color:#7c8990;border-color:#dce2e5}.student-inst-state.full i{background:#9ca6ab}
.student-inst-body{padding:20px 2px 10px}.student-inst-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:15px;margin-bottom:14px;color:#fff;font-size:18px;background:linear-gradient(135deg,var(--tone-a),var(--tone-b));box-shadow:0 10px 22px color-mix(in srgb,var(--tone-a) 23%,transparent)}.student-inst-card.full .student-inst-icon{background:#9aa6ac;box-shadow:none}.student-inst-body h3{font-size:18px;line-height:1.7;margin:0 0 10px;color:#142b38}.student-inst-meta{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:10px}.student-inst-meta span{padding:5px 8px;border-radius:8px;background:#f3f7f9;color:#58707d;font-size:10px;font-weight:800}.student-inst-address{margin:0;color:#71838d;font-size:11px;line-height:1.9}
.student-inst-footer{margin-top:auto;padding-top:14px;border-top:1px dashed #e3eaee}.student-inst-btn{width:100%;min-height:44px;display:flex;justify-content:space-between;align-items:center;border:0;border-radius:13px;padding:10px 14px;font-weight:900;cursor:pointer;color:#fff;background:linear-gradient(135deg,var(--tone-a),var(--tone-b));box-shadow:0 10px 22px color-mix(in srgb,var(--tone-a) 20%,transparent);transition:transform .18s ease,filter .18s ease}.student-inst-btn:hover:not(:disabled){transform:translateY(-1px);filter:brightness(1.04)}.student-inst-btn b{font-size:18px}.student-inst-btn.full{background:#e7ebed;color:#78858c;box-shadow:none;cursor:not-allowed}.student-inst-btn.loading{opacity:.78;cursor:wait}
.student-reservation-success{position:relative;overflow:hidden;display:flex;gap:18px;align-items:center;padding:28px;border:1px solid #c6e8db;border-radius:22px;background:linear-gradient(135deg,#eaf9f3,#eef8ff);box-shadow:0 15px 35px rgba(15,118,110,.09)}.student-success-icon{flex:0 0 58px;width:58px;height:58px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(135deg,#0f8a68,#0d6474);color:#fff;font-size:26px;box-shadow:0 12px 28px rgba(15,118,110,.20)}.student-reservation-success small{color:#0b8060;font-weight:900}.student-reservation-success h2{margin:4px 0;font-size:22px}.student-reservation-success p{margin:0;color:#647983;font-size:12px}
.student-empty-state{min-height:180px;display:grid;place-items:center;align-content:center;gap:5px;text-align:center;border:1px dashed #d4e1e7;border-radius:20px;background:#f8fbfc}.student-empty-state b{font-size:17px}.student-empty-state span{color:#71838c;font-size:12px}
.student-toast{display:flex;gap:11px;align-items:center;margin:0 0 16px;padding:13px 15px;border-radius:15px;border:1px solid #cae9dc;background:#eaf9f3;color:#12684f;box-shadow:0 10px 25px rgba(20,83,70,.07)}.student-toast>b{width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:#0d8b69;color:#fff}.student-toast div{display:grid}.student-toast strong{font-size:12px}.student-toast span{font-size:11px;opacity:.82}.student-toast.error{border-color:#f0c8c4;background:#fff0ef;color:#962d25}.student-toast.error>b{background:#c43c31}.student-toast.big{animation:studentToastIn .35s ease}
@keyframes studentPulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(.72);opacity:.55}}@keyframes studentToastIn{from{transform:translateY(-8px);opacity:0}to{transform:none;opacity:1}}
@media(max-width:1050px){.student-inst-grid{grid-template-columns:repeat(2,minmax(240px,1fr))}.student-profile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.student-portal-hero{grid-template-columns:1fr;padding:22px;border-radius:22px}.student-portal-badge{min-width:0;text-align:right}.student-inst-grid,.student-profile-grid{grid-template-columns:1fr}.student-section-title{align-items:flex-start;flex-direction:column}.student-inst-card{min-height:0}}

/* =========================================================
   شاشة الطلاب الاحترافية — Excel + لصق مرن + قوائم مرجعية
   ========================================================= */
.students-page-pro{display:grid;gap:16px}
.students-hero{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:22px 24px;border-radius:22px;background:linear-gradient(135deg,#f8fbff,#eef7f6);border:1px solid #dce7ee;box-shadow:0 12px 32px rgba(32,68,88,.07)}
.students-hero small,.students-card-head small{color:#2457a6;font-weight:900;font-size:11px}.students-hero h1{margin:4px 0 5px;font-size:29px}.students-hero p,.students-card-head p{margin:0;color:#6f808a;font-size:12px;line-height:1.8}
.students-hero-actions{display:flex;gap:8px;flex-wrap:wrap}.students-btn{min-height:40px;border:0;border-radius:11px;padding:9px 13px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-weight:900;cursor:pointer;text-decoration:none;transition:.18s ease}.students-btn:hover{transform:translateY(-1px)}.students-btn.template{background:#eef3ff;color:#234da5;border:1px solid #dbe4fb}.students-btn.paste{background:#fff;color:#2457a6;border:1px solid #cfdaeb}.students-btn.save{background:linear-gradient(135deg,#0f766e,#0a5a66);color:#fff;box-shadow:0 9px 20px rgba(15,118,110,.16)}.students-btn.choose{background:#234da5;color:#fff}
.students-card{background:#fff;border:1px solid #dfe8ed;border-radius:20px;padding:18px;box-shadow:0 10px 28px rgba(25,66,86,.06)}
.students-card-head{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:15px}.students-card-head h2{margin:3px 0;font-size:19px}.required-chip{padding:7px 10px;border-radius:999px;background:#fff5dc;border:1px solid #f0d8a5;color:#95620d;font-size:10px;font-weight:900}
.student-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.student-control{display:grid;gap:6px}.student-control.wide{grid-column:span 1}.student-control span{font-size:11px;color:#506975;font-weight:900}.student-control input,.student-control select{min-height:43px;border:1px solid #d7e3e9;border-radius:11px;padding:8px 10px;background:#fbfdfe;outline:none}.student-control input:focus,.student-control select:focus{border-color:#2457a6;box-shadow:0 0 0 3px rgba(36,87,166,.07);background:#fff}.student-form-actions{grid-column:1/-1;display:flex;justify-content:flex-start;margin-top:3px}
.student-drop-zone{min-height:205px;border:2px dashed #bfd0df;border-radius:18px;display:grid;place-items:center;align-content:center;gap:6px;text-align:center;background:linear-gradient(180deg,#fbfdff,#f6fafc);cursor:pointer;transition:.2s ease}.student-drop-zone:hover,.student-drop-zone.dragging{border-color:#2457a6;background:#f1f5ff;box-shadow:inset 0 0 0 3px rgba(36,87,166,.04)}.student-drop-zone.working{opacity:.68;pointer-events:none}.drop-icon{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:#eaf0ff;color:#2457a6;font-size:25px;font-weight:900}.student-drop-zone h3{margin:2px 0;font-size:17px}.student-drop-zone p,.student-drop-zone small{margin:0;color:#758791;font-size:11px}
.student-preview-block{margin-top:16px;display:grid;gap:12px}.preview-stats{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:9px}.preview-stats article{display:flex;justify-content:space-between;align-items:center;padding:11px 13px;border-radius:13px;background:#f5f8fa;border:1px solid #e2e9ed}.preview-stats article span{font-size:10px;color:#667983;font-weight:800}.preview-stats article b{font-size:19px}.preview-stats article.ok{background:#edf9f3;color:#087552;border-color:#d0ecdf}.preview-stats article.dup{background:#fff8e8;color:#a16a12;border-color:#f1dfb8}.preview-stats article.err{background:#fff0ef;color:#a13a31;border-color:#efcfcb}.preview-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.preview-head h3{margin:2px 0}.preview-table-wrap{max-height:420px}.student-table.preview tr.preview-error,.student-table.preview tr.preview-duplicate{background:#fffafa}.row-error{color:#a23d34;font-size:10px;font-weight:800;line-height:1.6}
.students-card-head.list{margin-bottom:10px}.student-search{min-width:300px;display:flex;align-items:center;gap:8px;border:1px solid #d8e4ea;border-radius:11px;padding:0 10px;background:#fbfdfe}.student-search input{min-height:39px;border:0;outline:0;background:transparent;width:100%}.student-table{width:100%;border-collapse:collapse}.student-table th{background:#f5f8fa;color:#50656f;font-size:10px;padding:10px 8px;white-space:nowrap}.student-table td{padding:10px 8px;border-bottom:1px solid #edf1f3;font-size:11px;vertical-align:middle}.soft-pill,.institution-pill,.complete-pill{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:10px;font-weight:900}.soft-pill{background:#f0f4f7;color:#4f6672}.institution-pill{background:#edf3ff;color:#244fa4}.complete-pill.yes{background:#e8f8f1;color:#087552}.complete-pill.no{background:#fff3df;color:#996311}.muted{color:#8a999f}
.student-paste-modal{max-width:850px}.student-paste-modal .modal-head p{margin:5px 0 0;color:#75858e;font-size:11px}.paste-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:10px 0}.paste-columns span{padding:8px;border-radius:9px;background:#f4f7fa;color:#4e6672;font-size:10px;font-weight:800}.student-paste-area{width:100%;min-height:250px;resize:vertical;border:1px solid #d5e1e7;border-radius:13px;padding:12px;outline:none;font-family:Cairo,Arial,sans-serif;direction:rtl}.student-paste-area:focus{border-color:#2457a6;box-shadow:0 0 0 3px rgba(36,87,166,.06)}
@media(max-width:1000px){.student-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.preview-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.students-hero,.students-card-head,.preview-head{align-items:flex-start;flex-direction:column}.students-hero-actions{width:100%}.students-btn{flex:1}.student-form-grid{grid-template-columns:1fr}.student-search{min-width:0;width:100%}.paste-columns{grid-template-columns:1fr}.preview-stats{grid-template-columns:1fr 1fr}}


/* ========================= V9: Student Portal Login ========================= */
.portal-login-page{min-height:100vh;display:grid;grid-template-columns:minmax(360px,.92fr) minmax(430px,1.08fr);background:#f5f9fb;direction:rtl}
.portal-login-hero{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center;padding:clamp(36px,6vw,84px);color:#fff;background:radial-gradient(circle at 20% 15%,rgba(255,255,255,.18),transparent 22%),linear-gradient(145deg,#0c7a70,#0c5065 54%,#183b68);box-shadow:inset -1px 0 rgba(255,255,255,.1)}
.portal-login-brand{position:relative;z-index:2}.portal-login-brand>span{display:inline-flex;padding:7px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.09);font-size:11px;font-weight:900}.portal-login-brand h1{font-size:clamp(38px,5vw,68px);margin:12px 0 6px;line-height:1.15}.portal-login-brand p{font-size:15px;line-height:2;color:rgba(255,255,255,.75);max-width:520px}.portal-login-features{position:relative;z-index:2;display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}.portal-login-features span{padding:8px 10px;border-radius:10px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.12);font-size:10px;font-weight:800}.login-orbit{position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.1)}.login-orbit-a{width:420px;height:420px;left:-160px;bottom:-170px;box-shadow:0 0 0 48px rgba(255,255,255,.025),0 0 0 95px rgba(255,255,255,.018)}.login-orbit-b{width:180px;height:180px;right:-80px;top:8%;background:rgba(255,255,255,.025)}
.portal-login-panel{display:grid;place-items:center;padding:28px}.portal-login-box{width:min(570px,100%);background:#fff;border:1px solid #dfe9ee;border-radius:30px;padding:30px;box-shadow:0 28px 80px rgba(19,63,82,.12)}.login-type-switch{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:6px;background:#f1f6f8;border-radius:17px;margin-bottom:24px}.login-type-switch button{border:0;background:transparent;border-radius:13px;padding:12px;cursor:pointer;text-align:right;color:#6e818a;transition:.2s ease}.login-type-switch button b,.login-type-switch button small{display:block}.login-type-switch button b{font-size:13px}.login-type-switch button small{font-size:9px;margin-top:2px}.login-type-switch button.active{background:#fff;color:#0b6e68;box-shadow:0 8px 22px rgba(28,72,90,.1)}.login-intro>span{font-size:10px;color:#0b7a70;font-weight:900}.login-intro h2{font-size:27px;margin:5px 0}.login-intro p{font-size:11px;color:#71828b;line-height:1.8;margin:0 0 19px}.portal-login-box form{display:grid;gap:13px}.portal-login-box label,.password-change-card label{display:grid;gap:7px;font-size:11px;font-weight:900;color:#465e69}.portal-login-box input,.password-change-card input{min-height:47px;border-radius:13px;border:1px solid #d7e4e9;padding:10px 12px;background:#fbfdfe}.portal-login-box input:focus,.password-change-card input:focus{border-color:#0e7a70;box-shadow:0 0 0 4px rgba(14,122,112,.08);background:#fff}.portal-login-submit{min-height:49px;border:0;border-radius:14px;padding:10px 15px;display:flex;align-items:center;justify-content:space-between;background:linear-gradient(135deg,#0d7a70,#0b5361);color:#fff;font-weight:900;cursor:pointer;box-shadow:0 12px 28px rgba(12,108,99,.18);transition:.18s ease}.portal-login-submit:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 16px 34px rgba(12,108,99,.24)}.portal-login-submit b{font-size:19px}.portal-login-submit:disabled{opacity:.65;cursor:wait}.student-first-hint{display:flex;gap:7px;align-items:flex-start;margin-top:14px;padding:11px 12px;border-radius:13px;background:#f0f8ff;border:1px solid #d5e9f6;color:#456b7c;font-size:10px;line-height:1.8}.student-first-hint b{color:#176780;white-space:nowrap}
.password-change-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 20% 20%,rgba(15,118,110,.12),transparent 26%),linear-gradient(145deg,#edf7f5,#f5f8fb)}.password-change-card{width:min(520px,100%);display:grid;gap:13px;background:#fff;border:1px solid #dce8ed;border-radius:28px;padding:34px;box-shadow:0 26px 70px rgba(21,62,80,.13)}.password-change-icon{width:62px;height:62px;display:grid;place-items:center;border-radius:20px;background:linear-gradient(135deg,#e8faf4,#edf6ff);font-size:27px}.password-change-card h1{font-size:25px;margin:0}.password-change-card>p{margin:0 0 4px;color:#6d8089;font-size:11px;line-height:1.9}.password-rules{display:grid;gap:5px;margin:2px 0 6px}.password-rules span{font-size:9px;color:#71848d}.password-rules span:before{content:'✓';margin-left:6px;color:#0e8468;font-weight:900}
@media(max-width:850px){.portal-login-page{grid-template-columns:1fr}.portal-login-hero{min-height:300px;padding:34px}.portal-login-panel{padding:18px}.portal-login-box{border-radius:23px;padding:20px}.portal-login-brand h1{font-size:39px}}


/* =========================================================
   V10 — Compact Full-Color Institution Cards
   ========================================================= */

.student-inst-grid{
  grid-template-columns:repeat(4,minmax(210px,1fr)) !important;
  gap:13px !important;
}

.student-inst-card{
  --tone-a:#0f8f87;
  --tone-b:#0a5f86;
  --tone-c:#55d6c7;

  min-height:205px !important;
  padding:13px !important;
  border-radius:20px !important;
  border:1px solid rgba(255,255,255,.45) !important;

  color:#fff !important;
  background:
    radial-gradient(circle at 12% 6%,rgba(255,255,255,.34),transparent 26%),
    radial-gradient(circle at 92% 105%,rgba(255,255,255,.14),transparent 34%),
    linear-gradient(135deg,var(--tone-a) 0%,var(--tone-b) 72%,var(--tone-c) 145%) !important;

  box-shadow:
    0 14px 28px color-mix(in srgb,var(--tone-a) 24%,transparent),
    inset 0 1px 0 rgba(255,255,255,.38),
    inset 0 -24px 42px rgba(0,0,0,.08) !important;

  transform:translateZ(0);
  transition:
    transform .28s cubic-bezier(.2,.8,.2,1),
    box-shadow .28s ease,
    filter .28s ease !important;
}

.student-inst-card:nth-child(8n+1){--tone-a:#0f9a8d;--tone-b:#086f91;--tone-c:#72e2c8}
.student-inst-card:nth-child(8n+2){--tone-a:#4668df;--tone-b:#6a43bf;--tone-c:#7cc8ff}
.student-inst-card:nth-child(8n+3){--tone-a:#ea7a25;--tone-b:#c34b42;--tone-c:#ffd064}
.student-inst-card:nth-child(8n+4){--tone-a:#8b55d6;--tone-b:#4f61cf;--tone-c:#d9a8ff}
.student-inst-card:nth-child(8n+5){--tone-a:#00a09a;--tone-b:#1574ba;--tone-c:#63ece5}
.student-inst-card:nth-child(8n+6){--tone-a:#d36737;--tone-b:#8750a7;--tone-c:#ffb56f}
.student-inst-card:nth-child(8n+7){--tone-a:#2d9d62;--tone-b:#257a9f;--tone-c:#81e8ae}
.student-inst-card:nth-child(8n+8){--tone-a:#d84d7d;--tone-b:#8357c5;--tone-c:#ff9cbe}

.student-inst-card::before{
  content:"";
  position:absolute;
  inset:-45% -70%;
  z-index:-1;
  background:linear-gradient(
    115deg,
    transparent 37%,
    rgba(255,255,255,.05) 43%,
    rgba(255,255,255,.52) 50%,
    rgba(255,255,255,.08) 57%,
    transparent 63%
  );
  transform:translateX(-36%) rotate(4deg);
  animation:studentCardSweep 5.2s ease-in-out infinite;
  pointer-events:none;
}

.student-inst-card::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  border-radius:inherit;
  background:
    radial-gradient(circle at 78% 18%,rgba(255,255,255,.22),transparent 15%),
    repeating-linear-gradient(
      135deg,
      rgba(255,255,255,.025) 0 1px,
      transparent 1px 12px
    );
  pointer-events:none;
}

.student-inst-card:nth-child(2n)::before{animation-delay:-1.4s}
.student-inst-card:nth-child(3n)::before{animation-delay:-2.7s}
.student-inst-card:nth-child(4n)::before{animation-delay:-3.6s}

.student-inst-card.open:hover,
.student-inst-card.low:hover{
  transform:translateY(-7px) scale(1.018) rotateX(1deg) !important;
  filter:saturate(1.12) brightness(1.05);
  box-shadow:
    0 20px 46px color-mix(in srgb,var(--tone-a) 38%,transparent),
    0 0 0 1px rgba(255,255,255,.34),
    0 0 28px color-mix(in srgb,var(--tone-c) 22%,transparent),
    inset 0 1px 0 rgba(255,255,255,.48) !important;
}

.student-inst-shine{
  width:110px !important;
  height:110px !important;
  top:-35px !important;
  left:-30px !important;
  background:rgba(255,255,255,.22) !important;
  filter:blur(5px) !important;
  animation:studentGlowFloat 3.8s ease-in-out infinite;
}

.student-inst-head{
  position:relative;
  z-index:2;
  min-height:27px;
}

.student-inst-type{
  color:rgba(255,255,255,.95) !important;
  font-size:9px !important;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.18);
  padding:5px 8px;
  border-radius:999px;
  backdrop-filter:blur(8px);
}

.student-inst-state{
  padding:5px 8px !important;
  font-size:9px !important;
  border-color:rgba(255,255,255,.35) !important;
  backdrop-filter:blur(10px);
}

.student-inst-state.open,
.student-inst-state.low{
  color:#fff !important;
  background:rgba(255,255,255,.16) !important;
}

.student-inst-state.open i,
.student-inst-state.low i{
  background:#7dffd1 !important;
  box-shadow:
    0 0 0 3px rgba(125,255,209,.14),
    0 0 12px rgba(125,255,209,.95) !important;
}

.student-inst-body{
  padding:11px 1px 7px !important;
  position:relative;
  z-index:2;
}

.student-inst-icon{
  width:34px !important;
  height:34px !important;
  border-radius:11px !important;
  margin-bottom:7px !important;
  font-size:14px !important;
  color:#fff !important;
  background:rgba(255,255,255,.18) !important;
  border:1px solid rgba(255,255,255,.28);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.28),
    0 7px 16px rgba(0,0,0,.12) !important;
  backdrop-filter:blur(10px);
}

.student-inst-body h3{
  margin:0 0 6px !important;
  color:#fff !important;
  font-size:15px !important;
  line-height:1.45 !important;
  text-shadow:0 2px 8px rgba(0,0,0,.18);
}

.student-inst-meta{
  margin-bottom:6px !important;
  gap:5px !important;
}

.student-inst-meta span{
  padding:4px 7px !important;
  border-radius:7px !important;
  color:rgba(255,255,255,.96) !important;
  background:rgba(255,255,255,.13) !important;
  border:1px solid rgba(255,255,255,.14);
  font-size:8.5px !important;
  backdrop-filter:blur(8px);
}

.student-inst-address{
  color:rgba(255,255,255,.82) !important;
  font-size:9px !important;
  line-height:1.55 !important;
  max-height:29px;
  overflow:hidden;
}

.student-inst-footer{
  padding-top:8px !important;
  border-top:1px dashed rgba(255,255,255,.25) !important;
  position:relative;
  z-index:2;
}

.student-inst-btn{
  min-height:35px !important;
  border-radius:10px !important;
  padding:7px 10px !important;
  font-size:11px !important;
  color:#fff !important;
  background:rgba(5,28,42,.24) !important;
  border:1px solid rgba(255,255,255,.25) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.18),
    0 7px 15px rgba(0,0,0,.12) !important;
  backdrop-filter:blur(10px);
}

.student-inst-btn:hover:not(:disabled){
  background:rgba(255,255,255,.20) !important;
  transform:translateY(-1px) scale(1.01) !important;
}

.student-inst-card.low{
  animation:studentLowSeatsGlow 2.4s ease-in-out infinite;
}

.student-inst-card.full{
  opacity:.62 !important;
  filter:saturate(.28) brightness(.88) !important;
  background:
    radial-gradient(circle at 15% 10%,rgba(255,255,255,.16),transparent 28%),
    linear-gradient(135deg,#728089,#4c5961) !important;
  box-shadow:
    0 9px 20px rgba(50,65,73,.12),
    inset 0 1px 0 rgba(255,255,255,.18) !important;
}

.student-inst-card.full::before{
  animation:none;
  opacity:.15;
}

.student-inst-card.full .student-inst-state.full{
  color:#fff !important;
  background:rgba(20,30,36,.18) !important;
  border-color:rgba(255,255,255,.18) !important;
}

.student-inst-card.full .student-inst-body h3,
.student-inst-card.full .student-inst-address{
  color:rgba(255,255,255,.78) !important;
}

.student-inst-card.full .student-inst-btn.full{
  color:rgba(255,255,255,.75) !important;
  background:rgba(15,24,29,.18) !important;
  border-color:rgba(255,255,255,.12) !important;
}

@keyframes studentCardSweep{
  0%,18%{transform:translateX(-48%) rotate(4deg);opacity:0}
  30%{opacity:.95}
  48%,100%{transform:translateX(47%) rotate(4deg);opacity:0}
}

@keyframes studentGlowFloat{
  0%,100%{transform:translate(0,0) scale(1);opacity:.65}
  50%{transform:translate(12px,8px) scale(1.12);opacity:1}
}

@keyframes studentLowSeatsGlow{
  0%,100%{
    box-shadow:0 14px 28px color-mix(in srgb,var(--tone-a) 24%,transparent),
               0 0 0 0 rgba(255,219,107,0)
  }
  50%{
    box-shadow:0 18px 35px color-mix(in srgb,var(--tone-a) 32%,transparent),
               0 0 24px rgba(255,219,107,.34)
  }
}

@media(max-width:1250px){
  .student-inst-grid{grid-template-columns:repeat(3,minmax(210px,1fr)) !important}
}
@media(max-width:920px){
  .student-inst-grid{grid-template-columns:repeat(2,minmax(210px,1fr)) !important}
}
@media(max-width:560px){
  .student-inst-grid{grid-template-columns:1fr !important}
  .student-inst-card{min-height:190px !important}
}


/* =========================================================
   V11 — رغبة الطالب + كروت مدمجة واضحة
   ========================================================= */
.choice-window-settings{margin-top:20px;padding:18px;border:1px solid #dce8ed;border-radius:18px;background:linear-gradient(135deg,#f8fcfd,#f5f8ff)}
.choice-window-head{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-bottom:14px}.choice-window-head small{color:#0f766e;font-weight:900}.choice-window-head h3{margin:3px 0;font-size:18px}.choice-window-head p{margin:0;color:#72848e;font-size:11px}.choice-window-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:#e7f5f2;color:#0f766e;font-size:20px}

.student-inst-grid{grid-template-columns:repeat(5,minmax(180px,1fr)) !important;gap:11px !important}
.student-inst-card{min-height:148px !important;padding:12px 13px !important;border-radius:18px !important;overflow:hidden !important;position:relative !important}
.student-inst-card:nth-child(8n+1){--tone-a:#08a18e;--tone-b:#0c6f9f;--tone-c:#4de1c1}
.student-inst-card:nth-child(8n+2){--tone-a:#4867e5;--tone-b:#7b46cb;--tone-c:#8fd2ff}
.student-inst-card:nth-child(8n+3){--tone-a:#ed8127;--tone-b:#d4514b;--tone-c:#ffd56e}
.student-inst-card:nth-child(8n+4){--tone-a:#9157d8;--tone-b:#526bd3;--tone-c:#e1b1ff}
.student-inst-card:nth-child(8n+5){--tone-a:#00a6a0;--tone-b:#0d79bb;--tone-c:#70f0df}
.student-inst-card:nth-child(8n+6){--tone-a:#dc6840;--tone-b:#8a4cac;--tone-c:#ffb57a}
.student-inst-card:nth-child(8n+7){--tone-a:#2ca567;--tone-b:#287aa3;--tone-c:#89eeb3}
.student-inst-card:nth-child(8n+8){--tone-a:#dc507f;--tone-b:#8259c8;--tone-c:#ffa2c1}
.student-inst-card::before{animation-duration:4.4s !important}.student-inst-light{position:absolute;width:95px;height:95px;border-radius:50%;top:-42px;left:-25px;background:rgba(255,255,255,.25);filter:blur(7px);animation:studentGlowFloat 3.2s ease-in-out infinite;pointer-events:none}
.student-inst-head{min-height:24px !important;justify-content:flex-start !important}.student-inst-state{font-size:9px !important;padding:5px 8px !important;background:rgba(255,255,255,.17) !important;color:#fff !important;border:1px solid rgba(255,255,255,.28) !important}.student-inst-state.current{background:rgba(255,255,255,.25) !important}.student-inst-state.full{background:rgba(31,41,48,.18) !important;color:rgba(255,255,255,.9) !important}
.student-inst-body{padding:12px 0 8px !important;display:flex;align-items:center;min-height:62px !important}.student-inst-body h3{font-size:18px !important;line-height:1.5 !important;font-weight:900 !important;margin:0 !important;color:#fff !important;text-shadow:0 2px 10px rgba(0,0,0,.20) !important}
.student-inst-footer{padding-top:7px !important}.student-inst-btn{min-height:34px !important;font-size:11px !important;font-weight:900 !important;justify-content:center !important}.student-inst-btn.current{background:rgba(255,255,255,.22) !important;color:#fff !important;cursor:default}.student-inst-card.current{box-shadow:0 0 0 2px rgba(255,255,255,.7),0 0 26px color-mix(in srgb,var(--tone-c) 35%,transparent),0 16px 34px color-mix(in srgb,var(--tone-a) 28%,transparent) !important}

.student-current-choice{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:18px 20px;border:1px solid #cde7df;border-radius:18px;background:linear-gradient(135deg,#effbf7,#f1f8ff);box-shadow:0 10px 25px rgba(20,85,75,.06)}.student-current-choice small{color:#0a8263;font-weight:900}.student-current-choice h2{margin:3px 0 0;font-size:21px}.student-current-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.edit-choice-btn{border:0;border-radius:11px;padding:10px 15px;background:linear-gradient(135deg,#0f8b7d,#146b92);color:#fff;font-weight:900;cursor:pointer;box-shadow:0 8px 18px rgba(15,118,110,.16)}.edit-window-open,.edit-window-closed{padding:7px 10px;border-radius:999px;font-size:10px;font-weight:900}.edit-window-open{background:#e4f8ef;color:#087552}.edit-window-closed{background:#edf1f3;color:#68777e}
#institutionChoiceArea{margin-top:14px}

@media(max-width:1350px){.student-inst-grid{grid-template-columns:repeat(4,minmax(180px,1fr)) !important}}
@media(max-width:1050px){.student-inst-grid{grid-template-columns:repeat(3,minmax(180px,1fr)) !important}}
@media(max-width:760px){.student-inst-grid{grid-template-columns:repeat(2,minmax(160px,1fr)) !important}.student-current-choice{align-items:flex-start;flex-direction:column}.student-inst-body h3{font-size:16px !important}}
@media(max-width:500px){.student-inst-grid{grid-template-columns:1fr !important}.student-inst-card{min-height:135px !important}}


/* =========================================================
   V11.1 — إبراز نوع المؤسسة داخل الكارت
   ========================================================= */
.student-inst-gender-badge{
  position:relative;
  z-index:4;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:max-content;
  min-width:74px;
  padding:7px 13px;
  margin:0 0 8px 0;
  border-radius:999px;
  font-size:14px !important;
  font-weight:900 !important;
  line-height:1;
  letter-spacing:0;
  color:#fff;
  border:1px solid rgba(255,255,255,.42);
  background:rgba(255,255,255,.18);
  backdrop-filter:blur(12px);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.28),
    0 7px 18px rgba(0,0,0,.12),
    0 0 18px rgba(255,255,255,.10);
  text-shadow:0 1px 6px rgba(0,0,0,.16);
}

.student-inst-gender-badge.boys{
  background:linear-gradient(135deg,rgba(26,111,214,.92),rgba(54,73,196,.88));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.34),
    0 7px 18px rgba(26,111,214,.25),
    0 0 20px rgba(90,153,255,.25);
}

.student-inst-gender-badge.girls{
  background:linear-gradient(135deg,rgba(221,74,144,.93),rgba(157,76,202,.90));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.34),
    0 7px 18px rgba(202,66,136,.25),
    0 0 20px rgba(242,126,183,.24);
}

.student-inst-gender-badge.mixed{
  background:linear-gradient(135deg,rgba(19,156,131,.94),rgba(49,94,188,.90));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.34),
    0 7px 18px rgba(25,134,122,.25),
    0 0 20px rgba(92,207,186,.22);
}

.student-inst-card .student-inst-body h3{
  font-size:17px !important;
  font-weight:900 !important;
}

@media(max-width:560px){
  .student-inst-gender-badge{
    font-size:13px !important;
    padding:6px 11px;
  }
}


/* ========================= V12 Unified Institutional Identity ========================= */
:root{--primary:#0f766e;--secondary:#2563eb;--ink:#102a3a;--muted:#6d808b;--line:#dbe6eb;--surface:#fff;--shadow-card:0 14px 34px rgba(18,58,75,.08)}
.app-shell-v12{min-height:100vh;display:grid;grid-template-columns:252px minmax(0,1fr);background:#f5f8fa;color:var(--ink);direction:rtl}
.sidebar-v12{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;padding:18px 14px;background:radial-gradient(circle at 10% 0,rgba(255,255,255,.10),transparent 28%),linear-gradient(180deg,var(--primary),color-mix(in srgb,var(--primary) 72%,#062c33));color:#fff;box-shadow:-16px 0 42px rgba(18,58,75,.10)}
.brand-v12{display:flex;gap:11px;align-items:center;padding:8px 7px 20px}.brand-v12 img,.brand-monogram{width:44px;height:44px;border-radius:14px;object-fit:contain;background:rgba(255,255,255,.12);display:grid;place-items:center;font-weight:900}.brand-v12 strong,.brand-v12 small{display:block}.brand-v12 strong{font-size:13px}.brand-v12 small{font-size:10px;color:rgba(255,255,255,.68);margin-top:3px}
.sidebar-v12 nav{display:grid;gap:5px}.sidebar-v12 nav button{border:0;background:transparent;color:rgba(255,255,255,.82);min-height:43px;border-radius:12px;padding:9px 11px;text-align:right;display:flex;align-items:center;gap:10px;font-family:inherit;cursor:pointer}.sidebar-v12 nav button.active{background:linear-gradient(135deg,#fff,color-mix(in srgb,var(--primary) 7%,white));color:color-mix(in srgb,var(--primary) 72%,black);box-shadow:0 10px 24px rgba(0,0,0,.14)}.nav-dot{width:7px;height:7px;border-radius:50%;background:currentColor;opacity:.6}
.sidebar-user-v12{margin-top:auto;display:grid;grid-template-columns:38px 1fr;gap:9px;align-items:center;padding:11px;border-top:1px solid rgba(255,255,255,.12)}.sidebar-user-v12 strong,.sidebar-user-v12 small{display:block}.sidebar-user-v12 strong{font-size:11px}.sidebar-user-v12 small{font-size:9px;color:rgba(255,255,255,.58)}.avatar-v12{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:rgba(255,255,255,.15);font-weight:900}.sidebar-logout-v12{border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.08);color:#fff;border-radius:11px;min-height:38px;font-family:inherit;font-weight:800;cursor:pointer}
.main-area-v12{min-width:0;display:flex;flex-direction:column}.topbar-v12{height:68px;display:grid;grid-template-columns:auto 1fr auto;gap:13px;align-items:center;padding:0 22px;background:rgba(255,255,255,.92);border-bottom:1px solid var(--line);backdrop-filter:blur(16px);position:sticky;top:0;z-index:40}.icon-btn-v12{width:38px;height:38px;border:1px solid var(--line);background:#fff;border-radius:11px;cursor:pointer}.page-location-v12 small,.page-location-v12 strong{display:block}.page-location-v12 small{font-size:9px;color:var(--muted)}.page-location-v12 strong{font-size:13px;margin-top:2px}.topbar-user-v12{display:flex;align-items:center;gap:10px;font-size:11px}.session-theme-chip{padding:5px 8px;border-radius:999px;background:#edf7f5;color:var(--primary);font-size:9px;font-weight:900}
.content-v12{padding:22px;min-width:0}.footer-v12{padding:12px 22px;text-align:center;color:var(--muted);font-size:9px}
.app-shell-v12.sidebar-collapsed{grid-template-columns:78px minmax(0,1fr)}.sidebar-collapsed .brand-v12>div,.sidebar-collapsed .sidebar-v12 nav b,.sidebar-collapsed .sidebar-user-v12>div:nth-child(2){display:none}.sidebar-collapsed .brand-v12,.sidebar-collapsed .sidebar-v12 nav button{justify-content:center}.sidebar-collapsed .sidebar-user-v12{grid-template-columns:38px;justify-content:center}
.page-header-v12{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:16px}.page-header-v12 h1{margin:4px 0;font-size:28px}.page-header-v12 p{margin:0;color:var(--muted);font-size:11px}.eyebrow-v12{color:var(--primary);font-size:9px;font-weight:900}.cycle-pill-v12{padding:8px 11px;border:1px solid var(--line);border-radius:12px;background:#fff;font-size:10px;box-shadow:var(--shadow-card)}
.dashboard-stats-v12{display:grid;grid-template-columns:repeat(4,1fr);gap:11px;margin-bottom:13px}.dashboard-stats-v12 article{min-height:105px;padding:15px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:var(--shadow-card);display:flex;flex-direction:column}.dashboard-stats-v12 span,.dashboard-stats-v12 small{color:var(--muted);font-size:10px}.dashboard-stats-v12 strong{font-size:27px;margin:7px 0}.dashboard-stats-v12 small{margin-top:auto}.dashboard-grid-v12{display:grid;grid-template-columns:1.25fr .75fr;gap:12px}.panel-v12{background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px;box-shadow:var(--shadow-card)}.panel-head-v12 h2{margin:3px 0 13px}.panel-head-v12 span{font-size:9px;color:var(--primary);font-weight:900}.progress-row-v12{display:grid;grid-template-columns:1fr auto;gap:7px;margin:13px 0;font-size:10px}.progress-row-v12>div{grid-column:1/-1;height:8px;background:#edf2f4;border-radius:999px;overflow:hidden}.progress-row-v12 i{display:block;height:100%;background:linear-gradient(90deg,var(--primary),var(--secondary));border-radius:999px}.dashboard-highlight-v12{color:#fff;background:radial-gradient(circle at 10% 0,rgba(255,255,255,.17),transparent 30%),linear-gradient(145deg,var(--primary),#0d3f49)}.dashboard-highlight-v12 span,.dashboard-highlight-v12 p{color:rgba(255,255,255,.72);font-size:10px}
.roles-summary-v12{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:10px}.roles-summary-v12 article{display:flex;justify-content:space-between;align-items:center;min-height:58px;padding:10px;border:1px solid var(--line);border-radius:11px;background:#fff;box-shadow:var(--shadow-card)}.roles-summary-v12 span{color:var(--muted);font-size:10px}.roles-summary-v12 strong{font-size:20px}.settings-tabs-v12{display:inline-flex;gap:5px;padding:5px;background:#fff;border:1px solid var(--line);border-radius:11px;margin-bottom:10px}.settings-tabs-v12 button{border:0;background:transparent;padding:7px 11px;border-radius:8px;font-family:inherit;cursor:pointer}.settings-tabs-v12 button.active{background:var(--primary);color:#fff}.users-toolbar-v12{display:flex;gap:9px;margin-bottom:10px}.users-toolbar-v12 input,.users-toolbar-v12 select{min-height:38px;border:1px solid var(--line);border-radius:9px;padding:7px 10px;background:#fff;font-family:inherit}.users-toolbar-v12 input{flex:1}.users-table-v12{width:100%;border-collapse:collapse}.users-table-v12 th,.users-table-v12 td{padding:10px 8px;border-bottom:1px solid #edf2f4;font-size:10px}.row-actions-v12{display:flex;flex-wrap:wrap;gap:4px}.row-actions-v12 button,.role-card-v12 footer button{border:1px solid var(--line);background:#fff;border-radius:8px;padding:5px 7px;font-family:inherit;font-size:9px;cursor:pointer}.row-actions-v12 .danger,.role-card-v12 footer .danger{color:#b42318;background:#fff3f2}.status-pill{display:inline-flex;padding:4px 7px;border-radius:999px;font-size:9px;font-weight:900}.status-pill.ok{background:#eaf8f2;color:#08704c}.status-pill.off{background:#f1f3f4;color:#737f85}.btn-v12{min-height:36px;border:1px solid var(--line);border-radius:9px;background:#fff;padding:7px 11px;font-family:inherit;font-weight:800;cursor:pointer}.btn-v12.primary{color:#fff;border-color:transparent;background:linear-gradient(135deg,var(--primary),color-mix(in srgb,var(--primary) 74%,#07131f));box-shadow:0 8px 20px color-mix(in srgb,var(--primary) 19%,transparent)}
.roles-head-v12{display:flex;justify-content:flex-end;margin-bottom:8px}.roles-compact-grid-v12{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:8px}.role-card-v12{display:grid;gap:7px;min-height:132px;padding:10px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:var(--shadow-card)}.role-card-v12.protected{background:linear-gradient(135deg,#fff,color-mix(in srgb,var(--primary) 8%,#fff))}.role-card-v12 header{display:flex;justify-content:space-between}.role-card-v12 header strong,.role-card-v12 header code{display:block}.role-card-v12 header strong{font-size:13px}.role-card-v12 header code,.role-card-v12 p{font-size:9px;color:var(--muted)}.role-card-v12 footer{display:flex;justify-content:flex-end;gap:5px;margin-top:auto}.permission-module-grid-v12{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:380px;overflow:auto;margin-top:10px}.permission-module-grid-v12 section{border:1px solid var(--line);border-radius:10px;padding:10px}.permission-module-grid-v12 h4{margin:0 0 7px;font-size:11px}.permission-module-grid-v12 label{display:flex;gap:6px;align-items:center;padding:4px;font-size:9px}
.identity-settings-layout-v12{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);gap:13px;align-items:start}.identity-preview-v12{--preview-primary:#0f766e;--preview-secondary:#2563eb;min-height:440px;border-radius:22px;background:radial-gradient(circle at top left,color-mix(in srgb,var(--preview-secondary) 30%,transparent),transparent 32%),linear-gradient(145deg,var(--preview-primary),#0d3f49);color:#fff;padding:24px;display:flex;flex-direction:column;align-items:center;text-align:center;box-shadow:var(--shadow-card);overflow:hidden}.identity-preview-v12 h2{margin:14px 0 5px}.identity-preview-v12 p{margin:0;color:#d9f0ee}.identity-preview-v12 small{margin-top:auto;color:#d1e8e6}.preview-logo img,.preview-logo{width:82px;height:82px;border-radius:22px;object-fit:contain;display:grid;place-items:center;background:rgba(255,255,255,.12);font-size:28px}.branding-upload-v12{display:flex;justify-content:space-between;align-items:center;margin:12px 0;padding:11px;border-radius:13px;background:#f7f9fb}.branding-upload-v12 strong,.branding-upload-v12 small{display:block}.branding-upload-v12 small{font-size:9px;color:var(--muted)}.settings-save-bar-v12{display:flex;justify-content:flex-end;margin-top:12px}
.assistant-launcher-v12,.accessibility-launcher-v12{position:fixed;bottom:18px;z-index:120;min-height:52px;border:0;color:#fff;display:flex;align-items:center;justify-content:center;gap:9px;padding:0 17px;border-radius:18px;font-weight:900;box-shadow:0 16px 38px rgba(10,48,66,.25);cursor:pointer}.assistant-launcher-v12{right:18px;background:linear-gradient(135deg,#0f766e,#07524d)}.accessibility-launcher-v12{left:18px;background:linear-gradient(135deg,#7c3aed,#4c1d95)}.assistant-panel-v12,.accessibility-panel-v12{position:fixed;z-index:119;background:#fff;opacity:0;visibility:hidden;transform:translateY(16px) scale(.98);transition:.2s ease;overflow:hidden}.assistant-panel-v12.open,.accessibility-panel-v12.open{opacity:1;visibility:visible;transform:none}.assistant-panel-v12{right:18px;bottom:82px;width:min(430px,calc(100vw - 28px));height:min(650px,calc(100vh - 105px));border:1px solid #d7e5e8;border-radius:26px;box-shadow:0 28px 80px rgba(9,48,64,.28);display:flex;flex-direction:column}.assistant-panel-v12 header,.accessibility-panel-v12 header{display:flex;align-items:center;justify-content:space-between;padding:13px;color:#fff;background:linear-gradient(135deg,#0f766e,#064d49)}.assistant-panel-v12 header>div{margin-left:auto}.assistant-panel-v12 header strong,.assistant-panel-v12 header span{display:block}.assistant-panel-v12 header span{font-size:9px;color:#d6efec}.assistant-panel-v12 header button,.accessibility-panel-v12 header button{width:32px;height:32px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.1);color:#fff;border-radius:9px;margin-right:5px}.assistant-messages-v12{flex:1;overflow:auto;padding:13px;background:#f8fbfc}.assistant-bubble{max-width:88%;padding:9px 11px;border-radius:13px;margin:6px 0;font-size:10px;line-height:1.8}.assistant-bubble.user{margin-right:auto;background:#eaf8f5}.assistant-bubble.assistant,.assistant-bubble.system{background:#fff;border:1px solid var(--line)}.assistant-bubble.error{background:#fff1f1;color:#b42318}.assistant-actions-v12{display:flex;gap:5px;padding:7px 12px}.assistant-actions-v12 button{border:1px solid var(--line);background:#fff;border-radius:8px;padding:6px 8px;font-family:inherit;font-size:9px}.assistant-panel-v12 form{display:grid;grid-template-columns:1fr auto;gap:7px;padding:10px;border-top:1px solid var(--line)}.assistant-panel-v12 textarea{resize:none;border:1px solid var(--line);border-radius:10px;padding:8px;font-family:inherit}.assistant-panel-v12 form button{border:0;border-radius:10px;background:var(--primary);color:#fff;padding:0 13px;font-family:inherit;font-weight:800}
.accessibility-panel-v12{left:18px;bottom:82px;width:min(360px,calc(100vw - 28px));border:1px solid #e1d6f1;border-radius:24px;box-shadow:0 28px 75px rgba(49,22,89,.25)}.accessibility-panel-v12 header{background:linear-gradient(135deg,#6d28d9,#4c1d95)}.accessibility-panel-v12 header>div strong,.accessibility-panel-v12 header>div span{display:block}.accessibility-panel-v12 header span{font-size:9px;color:#e9ddff}.accessibility-grid-v12{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:12px}.accessibility-grid-v12 button{min-height:44px;border:1px solid #e1d6f1;border-radius:11px;background:#fff;font-family:inherit;font-weight:800;color:#5e3a83}.a11y-high-contrast body,.a11y-high-contrast .panel-v12,.a11y-high-contrast .topbar-v12{background:#fff!important;color:#000!important}.a11y-high-contrast *{border-color:#000!important}.a11y-gray{filter:grayscale(1)}.a11y-links a{text-decoration:underline!important;outline:2px solid currentColor}
@media(max-width:980px){.app-shell-v12,.app-shell-v12.sidebar-collapsed{grid-template-columns:1fr}.sidebar-v12{position:fixed;right:-270px;width:252px;z-index:90;transition:.2s}.app-shell-v12:not(.sidebar-collapsed) .sidebar-v12{right:0}.dashboard-stats-v12{grid-template-columns:repeat(2,1fr)}.identity-settings-layout-v12{grid-template-columns:1fr}.dashboard-grid-v12{grid-template-columns:1fr}}
@media(max-width:640px){.content-v12{padding:12px}.dashboard-stats-v12,.roles-summary-v12{grid-template-columns:1fr 1fr}.assistant-launcher-v12,.accessibility-launcher-v12{width:52px;padding:0;border-radius:50%;bottom:12px}.assistant-launcher-v12 span,.accessibility-launcher-v12 span{display:none}.assistant-panel-v12,.accessibility-panel-v12{left:7px;right:7px;bottom:72px;width:auto}.permission-module-grid-v12{grid-template-columns:1fr}.users-toolbar-v12{flex-direction:column}.page-header-v12{align-items:flex-start;flex-direction:column}}


/* ==========================================================================
   V13 — Professional Institutional Design System
   مبني فوق وظائف المشروع الحالية دون تغيير منطق الصفحات
   ========================================================================== */
:root{
  --primary:#087869;
  --secondary:#7d2248;
  --accent:#d5a62e;
  --surface-accent:#f7f4ec;
  --ink-pro:#0d2940;
  --muted-pro:#71808d;
  --line-pro:#d9e4e9;
  --bg-pro:#f3f7f9;
  --shadow-pro:0 10px 28px rgba(35,69,85,.09);
}
html,body,#root{background:var(--bg-pro)!important;color:var(--ink-pro)}
button,input,select,textarea{font-family:Cairo,Tahoma,Arial,sans-serif}
.app-shell-pro{min-height:100vh;display:grid;grid-template-columns:270px minmax(0,1fr);direction:rtl;background:linear-gradient(180deg,#f8fbfc,#f1f6f8)}
.sidebar-pro{height:100vh;position:sticky;top:0;display:flex;flex-direction:column;padding:12px 10px;background:linear-gradient(180deg,color-mix(in srgb,var(--primary) 92%,#17452f),color-mix(in srgb,var(--primary) 82%,#063c42));color:#fff;border-left:1px solid rgba(255,255,255,.08);box-shadow:-10px 0 35px rgba(17,66,65,.10);overflow:hidden}
.brand-pro{display:grid;grid-template-columns:46px 1fr;gap:10px;align-items:center;padding:2px 4px 13px;border-bottom:1px solid rgba(255,255,255,.12)}
.brand-logo-pro{width:46px;height:46px;display:grid;place-items:center;background:#fff;border-radius:14px;border:2px solid rgba(213,166,46,.62);overflow:hidden;box-shadow:0 7px 20px rgba(0,0,0,.12)}
.brand-logo-pro img{width:100%;height:100%;object-fit:contain;padding:4px}.brand-monogram-pro{color:var(--accent);font-size:24px}
.brand-copy-pro strong,.brand-copy-pro small{display:block}.brand-copy-pro strong{font-size:13px}.brand-copy-pro small{font-size:9px;color:rgba(255,255,255,.68)}
.sidebar-nav-pro{flex:1;overflow-y:auto;padding:9px 1px 7px;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.45) transparent}
.nav-group-pro{margin-bottom:9px}.nav-group-title-pro{padding:5px 9px 4px;color:rgba(255,255,255,.47);font-size:8px;font-weight:900}
.nav-item-pro{width:100%;min-height:39px;display:flex;align-items:center;gap:8px;padding:7px 9px;border:1px solid transparent;border-radius:10px;background:transparent;color:rgba(255,255,255,.87);text-align:right;cursor:pointer;transition:.17s ease}
.nav-item-pro b{font-size:10px}.nav-icon-pro{width:21px;height:21px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.55);border-radius:6px;font-size:11px}
.nav-item-pro:hover{background:rgba(255,255,255,.08)}
.nav-item-pro.active{background:rgba(255,255,255,.14);border-color:var(--accent);box-shadow:inset -3px 0 0 var(--accent),0 6px 16px rgba(0,0,0,.09);color:#fff}
.collapse-pro{min-height:38px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.05);color:#fff;border-radius:10px;display:flex;align-items:center;justify-content:center;gap:7px;font-size:9px;cursor:pointer}
.sidebar-bottom-pro{padding-top:7px;display:grid;gap:6px}
.sanad-dock-pro{min-height:50px;border:1px solid rgba(255,255,255,.10);border-radius:18px;background:linear-gradient(90deg,#078c82,#05675f);color:#fff;display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:center;padding:0 15px;cursor:pointer;box-shadow:0 8px 18px rgba(0,0,0,.12)}
.sanad-name{font-size:17px;font-weight:900}.sanad-bot{font-size:18px}.sanad-grip{opacity:.7}
.sidebar-user-pro{display:grid;grid-template-columns:34px 1fr 31px;gap:7px;align-items:center;padding:6px;border:1px solid rgba(255,255,255,.12);border-radius:11px;background:rgba(255,255,255,.05)}
.avatar-pro{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--primary);font-weight:900}
.sidebar-user-pro strong,.sidebar-user-pro small{display:block}.sidebar-user-pro strong{font-size:9px}.sidebar-user-pro small{font-size:8px;color:rgba(255,255,255,.57)}.sidebar-user-pro button{width:31px;height:31px;border:1px solid rgba(255,255,255,.15);border-radius:9px;background:rgba(255,255,255,.06);color:#fff}
.main-area-pro{min-width:0;display:flex;flex-direction:column}
.topbar-pro{height:54px;position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:0 16px;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line-pro);backdrop-filter:blur(18px)}
.topbar-page-pro small,.topbar-page-pro strong{display:block}.topbar-page-pro small{font-size:8px;color:var(--muted-pro)}.topbar-page-pro strong{font-size:11px}
.topbar-actions-pro{display:flex;align-items:center;gap:7px}.theme-chip-pro{padding:6px 9px;border-radius:999px;background:#eff6f5;border:1px solid #dae9e7;color:#4a6667;font-size:8px}.topbar-square-pro{width:34px;height:34px;border:1px solid var(--line-pro);border-radius:10px;background:#fff;color:var(--ink-pro);cursor:pointer}
.topbar-user-pro{display:grid;grid-template-columns:31px auto;gap:7px;align-items:center}.top-avatar-pro{width:31px;height:31px;border-radius:50%;background:linear-gradient(145deg,#fff,#edf8f5);border:1px solid #dce9e7;box-shadow:0 5px 12px rgba(20,66,70,.10)}.topbar-user-pro strong,.topbar-user-pro small{display:block}.topbar-user-pro strong{font-size:9px}.topbar-user-pro small{font-size:7px;color:var(--muted-pro)}
.content-pro{padding:16px 16px 22px;min-width:0}.footer-pro{margin-top:auto;display:flex;justify-content:space-between;padding:8px 16px;border-top:1px solid var(--line-pro);background:#fff;color:var(--muted-pro);font-size:8px}
.app-shell-pro.sidebar-collapsed{grid-template-columns:76px minmax(0,1fr)}.sidebar-collapsed .brand-copy-pro,.sidebar-collapsed .nav-group-title-pro,.sidebar-collapsed .nav-item-pro b,.sidebar-collapsed .collapse-pro b,.sidebar-collapsed .sidebar-user-pro>div:nth-child(2),.sidebar-collapsed .sanad-name{display:none}.sidebar-collapsed .brand-pro{grid-template-columns:46px;justify-content:center}.sidebar-collapsed .nav-item-pro{justify-content:center}.sidebar-collapsed .sanad-dock-pro{grid-template-columns:auto auto;justify-content:center;padding:0}.sidebar-collapsed .sidebar-user-pro{grid-template-columns:34px;justify-content:center}.sidebar-collapsed .sidebar-user-pro button{display:none}
.page-hero-pro{display:flex;justify-content:space-between;align-items:flex-end;gap:14px;margin:8px 0 14px}.page-hero-pro.compact{margin-bottom:9px}.eyebrow-pro{display:block;color:var(--primary);font-size:8px;font-weight:900;margin-bottom:3px}.page-hero-pro h1{margin:0;font-size:28px;line-height:1.25}.page-hero-pro p{margin:4px 0 0;color:var(--muted-pro);font-size:9px}.cycle-badge-pro{min-width:150px;padding:9px 12px;border:1px solid var(--line-pro);border-radius:12px;background:#fff;box-shadow:var(--shadow-pro)}.cycle-badge-pro small,.cycle-badge-pro strong{display:block}.cycle-badge-pro small{color:var(--muted-pro);font-size:8px}.cycle-badge-pro strong{font-size:12px;margin-top:2px}
.metric-grid-pro{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-bottom:10px}.metric-card-pro{position:relative;min-height:82px;overflow:hidden;border-radius:13px;color:#fff;padding:13px 15px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 8px 20px rgba(26,59,75,.12)}.metric-card-pro:before{content:"";position:absolute;left:-28px;bottom:-48px;width:110px;height:110px;border-radius:50%;background:rgba(255,255,255,.10)}.metric-card-pro span{display:block;font-size:9px;opacity:.85}.metric-card-pro strong{display:block;font-size:22px;margin-top:2px}.metric-card-pro i{width:36px;height:36px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.25);border-radius:10px;background:rgba(255,255,255,.10);font-style:normal;font-size:19px}.metric-card-pro.teal{background:linear-gradient(135deg,#158f8f,#0b7778)}.metric-card-pro.violet{background:linear-gradient(135deg,#6974d7,#4e58ae)}.metric-card-pro.gold{background:linear-gradient(135deg,#d9a530,#bd8213)}.metric-card-pro.green{background:linear-gradient(135deg,#12a071,#087559)}
.dashboard-layout-pro{display:grid;grid-template-columns:1.65fr .85fr;gap:10px}.panel-pro{background:#fff;border:1px solid var(--line-pro);border-radius:15px;padding:13px;box-shadow:var(--shadow-pro)}.panel-heading-pro{display:flex;align-items:center;justify-content:space-between;margin-bottom:9px}.panel-heading-pro span{font-size:8px;color:var(--primary);font-weight:900}.panel-heading-pro h2{margin:2px 0 0;font-size:15px}.round-pct-pro{padding:7px 9px;border-radius:999px;background:#e9f7f3;color:#077154;font-size:10px}
.chart-panel-pro{min-height:340px}.bar-chart-pro{height:270px;display:grid;grid-template-columns:36px 1fr;gap:8px;padding:7px}.chart-axis-pro{display:flex;flex-direction:column;justify-content:space-between;color:#6f7f89;font-size:8px;border-left:1px solid #d9e1e5}.chart-bars-pro{display:flex;align-items:flex-end;justify-content:space-around;border-bottom:1px solid #a8b4ba;background:repeating-linear-gradient(to top,transparent 0 64px,#e8edef 65px 66px)}.chart-col-pro{height:100%;width:27%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:6px}.chart-bar-pro{width:78%;min-height:3px;background:linear-gradient(180deg,#0c8f7d,#087768);border-radius:7px 7px 0 0;box-shadow:0 5px 12px rgba(8,119,104,.16)}.chart-col-pro span{font-size:8px;color:#63737d;white-space:nowrap}
.steps-panel-pro{min-height:340px}.steps-list-pro{display:grid;gap:7px}.steps-list-pro article{min-height:45px;display:grid;grid-template-columns:29px 1fr auto;align-items:center;gap:8px;padding:8px 9px;border-radius:10px;background:#f5f7f8;color:#66757e}.steps-list-pro article b{width:29px;height:29px;display:grid;place-items:center;border:1px solid #d9e1e5;border-radius:50%;background:#fff;font-size:10px}.steps-list-pro article span{font-size:10px;font-weight:800}.steps-list-pro article small{font-size:8px}.steps-list-pro article.done{background:#e8f7f1;color:#087554}.steps-list-pro article.done b{border-color:#a8ddc8;color:#087554}.steps-list-pro article.active{background:#eef5f8;color:#31536a}
.settings-tabs-pro{display:inline-flex;gap:3px;padding:4px;border:1px solid var(--line-pro);border-radius:10px;background:#fff;margin-bottom:10px}.settings-tabs-pro button{min-height:34px;border:0;border-radius:8px;background:transparent;color:#5c6d78;padding:6px 11px;font-size:10px;cursor:pointer}.settings-tabs-pro button.active{background:var(--primary);color:#fff;box-shadow:0 6px 15px rgba(8,120,105,.16)}.settings-tabs-pro button span{margin-right:6px}
.identity-layout-pro{display:grid;grid-template-columns:360px minmax(0,1fr);gap:10px;align-items:start}.identity-preview-pro{--preview-primary:var(--primary);--preview-secondary:var(--secondary);--preview-accent:var(--accent);position:sticky;top:69px;min-height:500px;display:flex;flex-direction:column;align-items:center;text-align:center;padding:18px;border-radius:14px;color:#fff;background:radial-gradient(circle at 14% 6%,rgba(213,166,46,.17),transparent 23%),linear-gradient(145deg,color-mix(in srgb,var(--preview-primary) 30%,#162b40),color-mix(in srgb,var(--preview-secondary) 48%,#18263d));box-shadow:0 15px 34px rgba(18,42,63,.18);overflow:hidden}.preview-top-pro{width:100%;display:flex;justify-content:space-between}.preview-top-pro span{font-size:9px;color:#edcf68;font-weight:900}.preview-top-pro small{padding:5px 8px;border-radius:999px;background:rgba(255,255,255,.11);font-size:7px}.preview-logo-pro{width:66px;height:66px;margin-top:38px;display:grid;place-items:center;border-radius:19px;background:color-mix(in srgb,var(--preview-secondary) 70%,transparent);border:2px solid rgba(255,255,255,.20);font-size:22px}.preview-logo-pro img{width:100%;height:100%;object-fit:contain;padding:7px}.identity-preview-pro h2{font-size:24px;margin:20px 0 3px}.identity-preview-pro p{font-size:14px;margin:0;color:rgba(255,255,255,.83)}.identity-preview-pro>strong{font-size:13px;margin-top:4px}.preview-portal-pro{width:100%;margin-top:24px;padding:12px;border:1px solid rgba(255,255,255,.18);border-radius:13px;text-align:right;background:rgba(255,255,255,.08)}.preview-portal-pro span{display:block;color:#edcf68;font-size:8px;font-weight:900}.preview-portal-pro b{display:block;font-size:9px;margin:4px 0}.preview-portal-pro i{display:block;width:58%;height:5px;border-radius:999px;background:rgba(255,255,255,.18);margin:10px auto 0}.preview-footer-pro{margin-top:auto;color:rgba(255,255,255,.75);font-size:8px}
.identity-form-pro{padding:12px}.section-title-pro span{font-size:8px;color:var(--primary);font-weight:900}.section-title-pro h2{margin:2px 0 10px;font-size:16px}.form-band-pro{margin:10px 0 8px;padding:8px 10px;border-right:3px solid var(--accent);border-radius:8px;background:#f6f8f9}.form-band-pro strong,.form-band-pro small{display:block}.form-band-pro strong{font-size:10px}.form-band-pro small{margin-top:2px;color:var(--muted-pro);font-size:7px}.branding-grid-pro{display:grid;grid-template-columns:repeat(2,1fr);gap:7px}.branding-card-pro{min-height:58px;display:flex;align-items:center;justify-content:space-between;padding:8px 10px;border:1px dashed #b9cbd3;border-radius:10px;background:#fbfdfe;cursor:pointer}.branding-card-pro strong,.branding-card-pro small{display:block}.branding-card-pro strong{font-size:9px}.branding-card-pro small{font-size:7px;color:var(--muted-pro)}.branding-card-pro span{width:32px;height:32px;display:grid;place-items:center;border:1px solid #c9d9df;border-radius:9px;color:var(--primary);font-size:16px}.color-grid-pro{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.color-grid-pro label{font-size:8px;font-weight:800}.color-grid-pro input{width:100%;height:34px;margin-top:4px;border:1px solid var(--line-pro);border-radius:7px;padding:2px}.settings-sticky-save-pro{position:sticky;bottom:4px;margin-top:10px;padding:7px;border:1px solid var(--line-pro);border-radius:10px;background:rgba(255,255,255,.94);backdrop-filter:blur(8px);box-shadow:0 -5px 18px rgba(25,61,78,.05)}
.assistant-panel-pro{position:fixed;right:285px;bottom:18px;z-index:119;width:min(410px,calc(100vw - 320px));height:min(620px,calc(100vh - 90px));display:flex;flex-direction:column;background:#fff;border:1px solid #d7e5e8;border-radius:22px;overflow:hidden;box-shadow:0 28px 80px rgba(9,48,64,.28);opacity:0;visibility:hidden;transform:translateY(18px) scale(.98);transition:.2s ease}.assistant-panel-pro.open{opacity:1;visibility:visible;transform:none}.assistant-panel-pro header{display:grid;grid-template-columns:1fr 32px 32px;gap:6px;align-items:center;padding:10px 11px;color:#fff;background:linear-gradient(135deg,var(--primary),#064d49)}.assistant-panel-pro header strong,.assistant-panel-pro header span{display:block}.assistant-panel-pro header span{font-size:8px;color:#d6efec}.assistant-panel-pro header button{width:32px;height:32px;border:1px solid rgba(255,255,255,.18);border-radius:8px;background:rgba(255,255,255,.1);color:#fff}.assistant-panel-pro form{display:grid;grid-template-columns:1fr auto;gap:7px;padding:9px;border-top:1px solid var(--line-pro)}.assistant-panel-pro textarea{resize:none;border:1px solid var(--line-pro);border-radius:9px;padding:7px}.assistant-panel-pro form button{border:0;border-radius:9px;background:var(--primary);color:#fff;padding:0 12px;font-weight:800}
.accessibility-pro{position:fixed;left:14px;bottom:14px;z-index:120;min-height:47px;border:0;border-radius:14px;padding:0 14px;background:linear-gradient(135deg,#7c32df,#4e16a5);color:#fff;display:flex;align-items:center;gap:7px;font-weight:900;box-shadow:0 13px 30px rgba(86,29,169,.22);cursor:pointer}
.accessibility-pro span{font-size:11px}
@media(max-width:1180px){.metric-grid-pro{grid-template-columns:repeat(2,1fr)}.dashboard-layout-pro{grid-template-columns:1fr}.identity-layout-pro{grid-template-columns:1fr}.identity-preview-pro{position:relative;top:0;min-height:380px}}
@media(max-width:900px){.app-shell-pro,.app-shell-pro.sidebar-collapsed{grid-template-columns:1fr}.sidebar-pro{position:fixed;right:-285px;width:270px;z-index:100;transition:.2s}.app-shell-pro:not(.sidebar-collapsed) .sidebar-pro{right:0}.content-pro{padding:11px}.assistant-panel-pro{right:7px;left:7px;width:auto}}
@media(max-width:620px){.metric-grid-pro{grid-template-columns:1fr 1fr}.metric-card-pro{min-height:74px}.page-hero-pro{align-items:flex-start;flex-direction:column}.page-hero-pro h1{font-size:23px}.color-grid-pro,.branding-grid-pro{grid-template-columns:1fr}.topbar-user-pro{display:none}.chart-panel-pro{min-height:290px}.bar-chart-pro{height:225px}.accessibility-pro{width:48px;padding:0;justify-content:center;border-radius:50%}.accessibility-pro span{display:none}}


/* ================= V13.3 Student status + photos + edit window ================= */
.student-status-board{background:#fff;border:1px solid #dce7eb;border-radius:18px;padding:15px;margin-bottom:13px;box-shadow:0 10px 26px rgba(26,68,84,.07)}
.student-status-board.complete{border-color:#bfe4d7;background:linear-gradient(180deg,#fff,#f8fdfb)}
.student-status-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:11px}.student-status-head span{font-size:9px;color:var(--primary);font-weight:900}.student-status-head h2{font-size:17px;margin:2px 0}.student-final-state{padding:7px 10px;border-radius:999px;font-size:9px}.student-final-state.done{background:#e7f8f1;color:#087253}.student-final-state.pending{background:#fff4df;color:#9b650b}
.student-status-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.student-status-item{min-height:65px;display:grid;grid-template-columns:34px 1fr;gap:8px;align-items:center;padding:9px;border:1px solid #dce7eb;border-radius:12px;background:#fbfdfe}.student-status-item>span{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;font-weight:900}.student-status-item.ok>span{background:#e7f8f1;color:#087253}.student-status-item.pending>span{background:#fff4df;color:#9b650b}.student-status-item small,.student-status-item strong{display:block}.student-status-item small{font-size:8px;color:#7a8992}.student-status-item strong{font-size:10px;margin-top:2px}
.student-choice-policy{margin-top:9px;padding:9px 11px;border-radius:10px;display:flex;justify-content:space-between;gap:10px;align-items:center}.student-choice-policy b{font-size:10px}.student-choice-policy span{font-size:8px}.student-choice-policy.open{background:#e8f8f1;color:#087253}.student-choice-policy.locked{background:#f2f5f7;color:#5e6f78}.student-choice-policy.closed{background:#fff0ef;color:#a1352d;border:1px solid #f1cbc7}
.student-profile-layout{display:grid;grid-template-columns:330px minmax(0,1fr);gap:12px}.student-images-panel{display:grid;grid-template-columns:1fr 1fr;gap:8px}.student-image-card{display:flex;flex-direction:column;gap:7px;padding:9px;border:1px solid #dce7eb;border-radius:13px;background:#f8fbfc}.student-image-card>span{font-size:9px;font-weight:900}.student-image-card img,.student-image-placeholder{width:100%;height:125px;border-radius:10px;object-fit:cover;border:1px solid #d9e5ea;background:#eef4f6}.student-image-placeholder{display:grid;place-items:center;color:#8a9ba4;font-size:10px}.student-image-card:nth-child(2) img{object-fit:contain;background:#fff}
.student-current-meta{display:flex;flex-wrap:wrap;gap:5px;margin-top:6px}.student-current-meta span{padding:4px 7px;border-radius:999px;background:#eef5f7;color:#58717d;font-size:8px}
.student-readonly-badge{padding:6px 9px;border-radius:999px;background:#fff0ef;color:#a1352d;font-size:9px;font-weight:900}.student-readonly-note{padding:14px;border:1px solid #f0c8c3;border-radius:12px;background:#fff4f3;color:#9e3c34}.student-readonly-note b,.student-readonly-note span{display:block}.student-readonly-note span{font-size:9px;margin-top:3px}
.student-choice-help{margin-bottom:8px;padding:8px 10px;border-radius:10px;background:#eef8f6;color:#456d67;font-size:8px}
@media(max-width:1000px){.student-status-grid{grid-template-columns:repeat(2,1fr)}.student-profile-layout{grid-template-columns:1fr}.student-images-panel{max-width:420px}}
@media(max-width:600px){.student-status-grid{grid-template-columns:1fr}.student-images-panel{grid-template-columns:1fr 1fr}.student-image-card img,.student-image-placeholder{height:105px}.student-choice-policy{align-items:flex-start;flex-direction:column}}

/* V14 Communications & Payments */
.payment-metrics{grid-template-columns:repeat(3,1fr)!important}.payment-upload-pro{display:grid;gap:10px}.drop-zone-pro{min-height:120px;border:2px dashed #b9ced6;border-radius:15px;background:#f7fbfc;display:grid;place-items:center;align-content:center;text-align:center;cursor:pointer}.drop-zone-pro strong,.drop-zone-pro small{display:block}.drop-zone-pro small{font-size:9px;color:#71818a;margin-top:5px}.preview-summary-pro{display:flex;gap:8px;flex-wrap:wrap}.preview-summary-pro span{padding:6px 9px;border-radius:999px;background:#eef3f5;font-size:9px}.preview-summary-pro .ok{background:#e7f8f1;color:#087253}.preview-summary-pro .bad{background:#fff0ef;color:#a1352d}.thread-dialog-pro{margin-top:12px;padding:12px;border:1px solid var(--line-pro);border-radius:12px;background:#f8fbfc}.thread-msg-pro{padding:9px 10px;border-radius:10px;background:#fff;border:1px solid #e0e9ed;margin:6px 0}.thread-msg-pro small{display:block;color:#7c8b93;font-size:8px;margin-top:4px}.thread-dialog-pro form{display:grid;grid-template-columns:1fr auto;gap:7px;margin-top:8px}.thread-dialog-pro textarea{border:1px solid #d7e4e9;border-radius:9px;padding:8px;resize:vertical}
.student-payment-status,.student-communications-card{background:#fff;border:1px solid #dce7eb;border-radius:18px;padding:14px;margin-bottom:13px;box-shadow:0 10px 26px rgba(26,68,84,.07)}.student-payment-status{display:flex;justify-content:space-between;align-items:center}.student-payment-status span{font-size:9px;color:#6f8089}.student-payment-status h2{margin:3px 0;font-size:18px}.student-payment-status p{margin:0;font-size:9px}.student-payment-status strong{padding:8px 11px;border-radius:999px;font-size:10px}.student-payment-status.paid{border-color:#bfe4d7;background:#f8fdfb}.student-payment-status.paid strong{background:#e7f8f1;color:#087253}.student-payment-status.unpaid{border-color:#f1cbc7;background:#fff8f7}.student-payment-status.unpaid strong{background:#fff0ef;color:#a1352d}.student-comm-actions{display:flex;gap:7px;flex-wrap:wrap}.student-inline-form{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.student-inline-form textarea{min-height:80px}.student-inline-form button{align-self:end}.student-notifications-list{display:grid;gap:7px;margin-top:10px}.student-notifications-list article{padding:10px;border:1px solid #dce7eb;border-radius:11px;background:#fff}.student-notifications-list article.unread{border-right:4px solid var(--primary);background:#f6fbfa}.student-notifications-list h4{margin:0 0 4px}.student-notifications-list p{margin:0;font-size:10px}.student-notifications-list small{font-size:8px;color:#7d8a92}
@media(max-width:700px){.payment-metrics{grid-template-columns:1fr!important}.student-payment-status{align-items:flex-start;flex-direction:column;gap:8px}.student-inline-form{grid-template-columns:1fr}}


/* V14.1 — تحفيز الطلاب والعدادات الحية للمؤسسات */
.student-seat-counter{
  margin-top:9px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:7px 9px;
  border-radius:10px;
  background:rgba(255,255,255,.15);
  border:1px solid rgba(255,255,255,.22);
  backdrop-filter:blur(8px);
  color:#fff;
}
.student-seat-counter span{
  font-size:9px;
  font-weight:800;
  opacity:.9;
}
.student-seat-counter strong{
  min-width:38px;
  height:32px;
  padding:0 8px;
  display:grid;
  place-items:center;
  border-radius:9px;
  background:rgba(255,255,255,.22);
  border:1px solid rgba(255,255,255,.28);
  font-size:18px;
  font-weight:900;
  text-shadow:0 2px 8px rgba(0,0,0,.18);
}
.student-seat-counter.warning strong{
  background:rgba(255,196,64,.25);
  box-shadow:0 0 18px rgba(255,196,64,.38);
  animation:seatPulse 1.8s ease-in-out infinite;
}
.student-seat-counter.critical{
  background:rgba(255,69,69,.16);
  border-color:rgba(255,255,255,.32);
}
.student-seat-counter.critical strong{
  background:rgba(255,69,69,.28);
  box-shadow:0 0 22px rgba(255,84,84,.48);
  animation:seatCritical 1.1s ease-in-out infinite;
}
.student-inst-card.critical{
  animation:cardUrgency 2s ease-in-out infinite;
}
.student-inst-btn.payment-required{
  background:rgba(255,255,255,.18)!important;
  border:1px solid rgba(255,255,255,.35)!important;
  color:#fff!important;
}
.student-inst-btn.payment-required:hover{
  background:rgba(255,255,255,.28)!important;
}
.student-toast.payment-alert{
  border:1px solid #f2d49a;
  background:#fff8e9;
  color:#8a5a00;
  box-shadow:0 12px 28px rgba(171,115,8,.12);
}
.student-toast.payment-alert>b{
  background:#d89514;
}
@keyframes seatPulse{
  0%,100%{transform:scale(1)}
  50%{transform:scale(1.06)}
}
@keyframes seatCritical{
  0%,100%{transform:scale(1);filter:brightness(1)}
  50%{transform:scale(1.1);filter:brightness(1.15)}
}
@keyframes cardUrgency{
  0%,100%{box-shadow:0 14px 28px rgba(35,71,89,.09)}
  50%{box-shadow:0 18px 36px rgba(219,79,66,.22),0 0 22px rgba(255,95,80,.15)}
}


/* V14.2 — كشف المسددين والبحث */
.paid-list-panel-pro{margin-top:12px}
.paid-list-head-pro{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:10px}
.paid-list-head-pro h2{margin:2px 0;font-size:17px}
.paid-list-head-pro p{margin:0;color:#71818a;font-size:9px}
.paid-count-pro{min-width:105px;padding:8px 11px;border-radius:11px;background:#eaf8f4;color:#087253;text-align:center}
.paid-count-pro small,.paid-count-pro strong{display:block}.paid-count-pro small{font-size:8px}.paid-count-pro strong{font-size:20px;margin-top:2px}
.paid-search-bar-pro{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;margin-bottom:10px}
.paid-search-bar-pro input{min-height:40px;border:1px solid #d7e4e9;border-radius:10px;padding:8px 11px;background:#fff}
.paid-table-pro{width:100%;border-collapse:collapse}.paid-table-pro th,.paid-table-pro td{padding:10px 8px;border-bottom:1px solid #edf2f4;font-size:9px}.paid-table-pro thead th{background:#f3f7f9;color:#536b77;font-weight:900}.paid-table-pro tbody tr:hover{background:#f8fbfc}
.receipt-chip-pro{display:inline-flex;padding:4px 7px;border-radius:8px;background:#edf4f7;color:#34566a;font-weight:900}
.payment-source-pro{display:inline-flex;padding:4px 7px;border-radius:999px;font-size:8px;font-weight:900}.payment-source-pro.excel{background:#e8f5ff;color:#17618d}.payment-source-pro.manual{background:#fff4df;color:#9b650b}
#manualStudentSearch{margin-bottom:6px}
@media(max-width:650px){.paid-list-head-pro{align-items:flex-start;flex-direction:column}.paid-search-bar-pro{grid-template-columns:1fr}.paid-count-pro{min-width:90px}}


/* V14.3 — بحث الطالب الفعلي في قاعدة البيانات */
.payment-student-search-field{position:relative}
.payment-student-results-pro{
  max-height:300px;
  overflow:auto;
  margin-top:6px;
  border:1px solid #d9e5ea;
  border-radius:11px;
  background:#fff;
  box-shadow:0 12px 28px rgba(30,66,82,.09);
}
.payment-student-results-pro:empty{display:none}
.payment-search-hint-pro,.payment-search-empty-pro{
  padding:11px;
  color:#768791;
  font-size:9px;
  text-align:center;
}
.payment-student-result-pro{
  width:100%;
  min-height:53px;
  border:0;
  border-bottom:1px solid #edf2f4;
  background:#fff;
  padding:8px 10px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  text-align:right;
  cursor:pointer;
}
.payment-student-result-pro:last-child{border-bottom:0}
.payment-student-result-pro:hover{background:#f3faf8}
.payment-student-result-pro div strong,.payment-student-result-pro div span{display:block}
.payment-student-result-pro div strong{font-size:10px;color:#163445}
.payment-student-result-pro div span{font-size:8px;color:#71838d;margin-top:2px}
.payment-student-result-pro small{
  white-space:nowrap;
  padding:5px 7px;
  border-radius:999px;
  background:#fff4df;
  color:#9b650b;
  font-size:8px;
  font-weight:900;
}
.payment-student-result-pro.paid{background:#fbfcfc;opacity:.7}
.payment-student-result-pro.paid small{background:#e7f8f1;color:#087253}
.payment-student-selected-pro{
  margin-top:7px;
  padding:9px 10px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  border:1px solid #cfe2e6;
  border-radius:11px;
  background:#f4faf9;
}
.payment-student-selected-pro small,.payment-student-selected-pro strong,.payment-student-selected-pro span{display:block}
.payment-student-selected-pro small{font-size:7px;color:#70818a}
.payment-student-selected-pro strong{font-size:10px}
.payment-student-selected-pro span{font-size:8px;color:#61747e}
.already-paid-pro,.not-paid-pro{
  white-space:nowrap;
  padding:5px 8px;
  border-radius:999px;
  font-size:8px;
}
.already-paid-pro{background:#e7f8f1;color:#087253}
.not-paid-pro{background:#fff4df;color:#9b650b}


/* V14.4 — كارت المؤسسة النظيف: الكارت كله زر */
.student-inst-card.clean-card{
  min-height:185px!important;
  padding:14px!important;
  cursor:pointer;
  user-select:none;
  display:flex!important;
  flex-direction:column!important;
  justify-content:space-between!important;
  transition:transform .22s ease,box-shadow .22s ease,filter .22s ease!important;
}
.student-inst-card.clean-card:hover:not(.full):not(.current){
  transform:translateY(-6px) scale(1.018)!important;
  filter:brightness(1.05) saturate(1.06);
}
.student-inst-card.clean-card:focus-visible{
  outline:3px solid rgba(255,255,255,.9);
  outline-offset:-5px;
}
.student-inst-card.clean-card.saving{
  pointer-events:none;
  opacity:.78;
  transform:scale(.985)!important;
}
.student-card-topline.clean{
  display:flex;
  justify-content:space-between;
  align-items:center;
  min-height:34px;
}
.current-choice-mini{
  padding:6px 9px;
  border-radius:999px;
  background:rgba(255,255,255,.18);
  border:1px solid rgba(255,255,255,.3);
  color:#fff;
  font-size:9px;
  font-weight:900;
}
.student-inst-body.clean{
  padding:8px 0 0!important;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  flex:1;
}
.student-inst-body.clean h3{
  margin:5px 0 8px!important;
  font-size:18px!important;
  line-height:1.45!important;
  font-weight:900!important;
  color:#fff!important;
  text-shadow:0 2px 8px rgba(0,0,0,.17);
}
.student-seat-main{
  margin-top:auto;
  min-height:68px;
  border-radius:13px;
  background:rgba(255,255,255,.15);
  border:1px solid rgba(255,255,255,.24);
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  color:#fff;
  backdrop-filter:blur(8px);
}
.student-seat-main span{
  font-size:10px;
  font-weight:800;
  opacity:.9;
}
.student-seat-main strong{
  font-size:34px;
  line-height:1;
  font-weight:1000;
  text-shadow:0 3px 10px rgba(0,0,0,.18);
}
.student-seat-main small{
  font-size:9px;
  font-weight:800;
  opacity:.85;
}
.student-seat-main.warning{
  background:rgba(255,194,57,.20);
  box-shadow:0 0 22px rgba(255,196,64,.25);
}
.student-seat-main.critical{
  background:rgba(255,74,74,.22);
  box-shadow:0 0 26px rgba(255,84,84,.32);
  animation:seatMainCritical 1.2s ease-in-out infinite;
}
.student-seat-main.full{
  background:rgba(36,50,58,.18);
}
.student-seat-main.full strong{
  font-size:22px;
  opacity:.86;
}
.student-inst-card.clean-card.full{
  cursor:not-allowed!important;
  filter:saturate(.25) brightness(.78)!important;
  opacity:.7!important;
}
.student-inst-card.clean-card.current{
  cursor:default!important;
}
.student-inst-card.clean-card.payment-required:after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.05);
}
@keyframes seatMainCritical{
  0%,100%{transform:scale(1);filter:brightness(1)}
  50%{transform:scale(1.025);filter:brightness(1.12)}
}
@media(max-width:700px){
  .student-inst-card.clean-card{min-height:165px!important}
  .student-inst-body.clean h3{font-size:16px!important}
  .student-seat-main strong{font-size:30px}
}

/* V14.5 — PDF attachments & links */
.pdf-attachment-pro,.notification-extras-pro a{
  display:inline-flex;align-items:center;gap:5px;margin-top:7px;margin-left:5px;
  padding:6px 9px;border-radius:9px;border:1px solid #d5e4e8;background:#f4f9fa;
  color:#0a7469;text-decoration:none;font-size:9px;font-weight:900;
}
.pdf-attachment-pro:hover,.notification-extras-pro a:hover{background:#e9f6f3}
.notification-extras-pro{display:flex;flex-wrap:wrap;gap:5px}
.student-inline-form input[type="file"],#broadcastForm input[type="file"]{
  min-height:40px;padding:6px;border:1px dashed #b8ccd4;border-radius:9px;background:#f8fbfc;
}


/* V14.6 — مركز التواصل */
.comm-student-results-pro{
  max-height:260px;overflow:auto;margin-top:6px;border:1px solid #d9e5ea;border-radius:11px;background:#fff;
}
.sent-log-pro{margin-top:18px;padding-top:14px;border-top:1px solid #e1eaee}
.sent-log-head-pro{display:flex;justify-content:space-between;align-items:flex-end;gap:10px;margin-bottom:9px}
.sent-log-head-pro h2{margin:2px 0;font-size:16px}.sent-log-head-pro p{margin:0;color:#71818a;font-size:9px}
.sent-log-head-pro>strong{min-width:42px;height:42px;border-radius:11px;display:grid;place-items:center;background:#eaf8f4;color:#087253;font-size:16px}
.sent-cards-pro{display:grid;gap:8px}
.sent-message-card-pro{padding:11px;border:1px solid #dce7eb;border-radius:12px;background:#fbfdfe}
.sent-message-card-pro header{display:flex;justify-content:space-between;gap:10px}.sent-message-card-pro header small{color:var(--primary);font-size:8px;font-weight:900}.sent-message-card-pro h3{margin:2px 0;font-size:11px}.sent-message-card-pro header>span{font-size:8px;color:#77868f}
.sent-message-card-pro p{margin:8px 0;font-size:10px;white-space:pre-wrap}
.sent-meta-pro{display:flex;flex-wrap:wrap;gap:6px}.sent-meta-pro span{padding:5px 7px;border-radius:8px;background:#eef4f6;color:#516b78;font-size:8px}
.sent-extra-pro{display:flex;gap:6px;flex-wrap:wrap;margin-top:7px}.sent-extra-pro a{padding:5px 8px;border-radius:8px;background:#edf8f5;color:#087253;text-decoration:none;font-size:8px;font-weight:900}


/* V14.7 — التوزيع الإداري */
.admin-dist-tabs-pro{display:inline-flex;gap:4px;padding:4px;border:1px solid var(--line-pro);border-radius:11px;background:#fff;margin-bottom:10px}
.admin-dist-tabs-pro button{border:0;background:transparent;padding:8px 12px;border-radius:8px;font-family:inherit;font-size:10px;cursor:pointer;color:#5b6d78}
.admin-dist-tabs-pro button.active{background:var(--primary);color:#fff;font-weight:900}
.admin-dist-panel-pro{display:grid;gap:12px}
.admin-dist-step-pro{display:flex;gap:9px;align-items:center;padding:9px 11px;border-radius:11px;background:#f4f8f9;border-right:3px solid var(--accent)}
.admin-dist-step-pro span{font-size:8px;color:var(--primary);font-weight:900}.admin-dist-step-pro h2{font-size:14px;margin:2px 0}
.step-number-pro{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:var(--primary);color:#fff;font-weight:900}
.grid3-pro{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.admin-dist-summary-pro{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}
.admin-dist-summary-pro article{padding:10px;border:1px solid #dce7eb;border-radius:11px;background:#fbfdfe}
.admin-dist-summary-pro small,.admin-dist-summary-pro strong{display:block}.admin-dist-summary-pro small{font-size:8px;color:#74848d}.admin-dist-summary-pro strong{font-size:20px;margin-top:2px}
.distribution-controls-pro{display:flex;gap:7px;align-items:flex-end;flex-wrap:wrap}
.field.compact{max-width:180px}.selected-count-pro{margin-right:auto;padding:8px 10px;border-radius:10px;background:#eaf8f4;color:#087253;font-size:9px}.selected-count-pro strong{font-size:15px}
.admin-dist-table-wrap{max-height:420px;overflow:auto;border:1px solid #dce7eb;border-radius:11px}
.admin-dist-table-pro{width:100%;border-collapse:collapse}.admin-dist-table-pro th{position:sticky;top:0;background:#eef4f6;z-index:2}.admin-dist-table-pro th,.admin-dist-table-pro td{padding:9px 8px;border-bottom:1px solid #e9eff2;font-size:9px}.admin-dist-table-pro tbody tr:hover{background:#f7fbfc}
.empty-cell-pro{text-align:center;color:#7b8a92;padding:22px!important}.empty-cell-pro.error{color:#a1352d}
.distribution-final-pro{display:grid;grid-template-columns:minmax(280px,.9fr) minmax(0,1.3fr) auto;gap:8px;align-items:end}
.capacity-preview-pro{min-height:42px}
.capacity-grid-pro{display:flex;flex-wrap:wrap;gap:6px}.capacity-grid-pro span{padding:7px 9px;border-radius:9px;background:#eef5f7;color:#486472;font-size:8px}.capacity-grid-pro span b{font-size:11px}.capacity-grid-pro span.danger{background:#fff0ef;color:#a1352d}
.capacity-warning-pro,.capacity-override-pro{margin-top:6px;padding:8px 10px;border-radius:9px;font-size:9px;font-weight:800}
.capacity-warning-pro{background:#fff0ef;color:#a1352d;border:1px solid #f0cac5}
.capacity-override-pro{background:#fff6e6;color:#926009;border:1px solid #ecd49f}
.big-action-pro{min-height:42px}
.single-student-results-pro{max-height:300px;overflow:auto;border-radius:11px;background:#fff}
.single-student-result-pro{width:100%;display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 10px;border:1px solid #e1e9ed;border-bottom:0;background:#fff;text-align:right;cursor:pointer}
.single-student-result-pro:first-child{border-radius:10px 10px 0 0}.single-student-result-pro:last-child{border-bottom:1px solid #e1e9ed;border-radius:0 0 10px 10px}.single-student-result-pro:hover{background:#f3faf8}
.single-student-result-pro strong,.single-student-result-pro span{display:block}.single-student-result-pro strong{font-size:10px}.single-student-result-pro span,.single-student-result-pro small{font-size:8px;color:#6f818b}
.single-selected-pro{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:11px;border:1px solid #bfe0d8;border-radius:12px;background:#f5fbf9}
.single-selected-pro small,.single-selected-pro h3,.single-selected-pro span,.single-current-pro b{display:block}.single-selected-pro small{font-size:8px;color:#6e8188}.single-selected-pro h3{font-size:13px;margin:2px 0}.single-selected-pro span{font-size:8px;color:#61747d}
.single-current-pro{text-align:left}
@media(max-width:900px){.grid3-pro,.distribution-final-pro{grid-template-columns:1fr}.admin-dist-summary-pro{grid-template-columns:repeat(3,1fr)}.selected-count-pro{margin-right:0}}
@media(max-width:600px){.grid3-pro,.admin-dist-summary-pro{grid-template-columns:1fr}.single-selected-pro{align-items:flex-start;flex-direction:column}}


/* V14.9 — إدارة بيانات الطلاب */
.student-bulk-toolbar-pro{
  display:flex;align-items:center;gap:7px;flex-wrap:wrap;
  padding:8px 9px;margin:0 0 8px;border:1px solid #dbe7eb;border-radius:11px;background:#f7fafb;
}
.student-bulk-toolbar-pro>span{font-size:9px;color:#586e79}
.student-bulk-toolbar-pro>span b{font-size:13px;color:var(--primary)}
.bulk-check-pro{display:flex;align-items:center;gap:5px;font-size:9px;font-weight:800}
.btn-v12.danger{background:#fff1ef;color:#a1342d;border-color:#efcbc7}
.btn-v12.danger-strong{background:#c7352b;color:#fff;border-color:#c7352b}
.student-row-actions-pro{display:flex;gap:5px;white-space:nowrap}
.mini-action{border:0;border-radius:7px;padding:5px 7px;font-family:inherit;font-size:8px;font-weight:900;cursor:pointer}
.mini-action.edit{background:#eaf5ff;color:#1d618d}
.mini-action.delete{background:#fff0ef;color:#ac342b}
.admin-student-table th,.admin-student-table td{vertical-align:middle}
.student-admin-edit-modal{width:min(980px,94vw)!important;max-height:90vh;overflow:auto}
.student-admin-edit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}
.student-admin-edit-grid .wide{grid-column:span 2}
.span2-pro{grid-column:1/-1}
.student-profile-admin-status{
  display:flex;gap:7px;flex-wrap:wrap;padding:9px;border-radius:10px;background:#f4f8f9;border:1px solid #dce7eb
}
.student-profile-admin-status span{padding:6px 8px;border-radius:8px;background:#fff;font-size:8px;color:#60747e}
.student-profile-admin-status b{color:#15384b}
@media(max-width:850px){.student-admin-edit-grid{grid-template-columns:1fr 1fr}}
@media(max-width:580px){.student-admin-edit-grid{grid-template-columns:1fr}.student-admin-edit-grid .wide{grid-column:auto}.student-row-actions-pro{flex-direction:column}}

/* V15 — التقارير ومصمم الطباعة */
.reports-blue-head-pro{background:#277b98;color:#fff;text-align:center;font-size:12px;font-weight:900;padding:8px 12px;border-radius:10px;margin-bottom:10px}
.report-filters-grid-pro{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.reports-actions-pro{display:flex;justify-content:flex-end;gap:6px;margin-top:8px}
.reports-catalog-grid-pro{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:10px 0}.report-card-pro{background:#fff;border:1px solid #dbe6ea;border-radius:14px;padding:13px;box-shadow:0 9px 25px rgba(20,55,72,.06)}.report-card-pro.active{border-color:var(--primary);background:#f4fbf9}.report-card-pro>span{font-size:8px;color:var(--primary);font-weight:900}.report-card-pro h3{margin:3px 0;font-size:14px}.report-card-pro p{font-size:9px;color:#71818a;min-height:26px}.report-card-actions-pro{display:flex;gap:6px}
.report-preview-toolbar-pro{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px}.report-preview-toolbar-pro h2{margin:2px 0}.report-preview-toolbar-pro p{margin:0;color:#70828b;font-size:9px}.report-preview-toolbar-pro>div:last-child{display:flex;gap:6px}
.official-a4-preview-pro{background:#fff;border:1px solid #d6e2e7;border-radius:12px;padding:18px;box-shadow:0 12px 32px rgba(20,50,67,.08);overflow:auto}.official-report-head-pro{text-align:center;border-bottom:1px solid #263238;padding-bottom:8px;margin-bottom:8px}.official-report-head-pro h2{margin:0;font-size:17px}.official-report-head-pro p{margin:3px 0;font-size:9px;color:#647780}
.official-table-pro{width:100%;border-collapse:collapse;table-layout:fixed}.official-table-pro th,.official-table-pro td{border:1px solid #111;padding:4px;text-align:center;font-size:9px;overflow-wrap:anywhere}.official-table-pro th{background:#dce5e9;font-weight:900}.preview-truncate-pro{text-align:center;padding:8px;color:#8a6b21;font-size:8px}
.report-edit-modal-pro{width:min(1050px,95vw)!important;max-height:92vh;overflow:auto}.template-editor-pro{display:grid;gap:12px}.check-field-pro{display:flex;gap:6px;align-items:center;padding:8px;border:1px solid #dce6ea;border-radius:9px;font-size:9px}
.columns-editor-head-pro{display:flex;justify-content:space-between;align-items:end;padding-top:9px;border-top:1px solid #e2eaed}.columns-editor-head-pro h3{margin:2px 0}.columns-editor-head-pro span{font-size:8px;color:#70818a}
.columns-editor-pro{display:grid;gap:5px}.column-edit-row-pro{display:grid;grid-template-columns:26px minmax(180px,1fr) minmax(160px,.8fr);gap:7px;align-items:center;padding:7px;border:1px solid #dce6ea;border-radius:9px;background:#fff}.column-edit-row-pro.dragging{opacity:.45;background:#eef7f5}.drag-handle-pro{cursor:grab;text-align:center;font-size:16px;color:#789}.column-edit-row-pro label{font-size:9px;font-weight:800}.column-label-input-pro{min-height:34px;border:1px solid #d9e4e8;border-radius:7px;padding:6px 8px}
.print-designer-toolbar-pro{position:sticky;top:0;z-index:6;display:flex;gap:6px;flex-wrap:wrap;padding:8px;background:#fffffffa;border:1px solid #d8e4ea;border-radius:14px;box-shadow:0 10px 25px rgba(20,50,67,.08);margin-bottom:10px}
.print-designer-layout-pro{display:grid;grid-template-columns:260px minmax(400px,1fr) minmax(420px,1.05fr);gap:10px;align-items:start}.print-designer-list-pro,.print-designer-editor-pro,.print-designer-canvas-pro{background:#fff;border:1px solid #dbe6ea;border-radius:14px;padding:10px;min-height:420px}
.print-designer-list-pro h3{font-size:11px;margin:4px 0 8px}.print-designer-list-pro #templateList{display:grid;gap:5px;max-height:390px;overflow:auto}.print-designer-list-pro #templateList button{border:1px solid #dce6ea;border-radius:9px;background:#fff;text-align:right;padding:8px;font-family:inherit;cursor:pointer}.print-designer-list-pro #templateList button.active{border-color:var(--primary);background:#eef9f6}.print-designer-list-pro button strong,.print-designer-list-pro button small{display:block}.print-designer-list-pro button strong{font-size:9px}.print-designer-list-pro button small{font-size:7px;color:#71818b;margin-top:2px}
.designer-runs-pro{margin-top:12px;border-top:1px solid #e3eaed;padding-top:8px}.designer-runs-pro>div{padding:6px;border-radius:7px;background:#f6f9fa;margin-bottom:4px}.designer-runs-pro b,.designer-runs-pro span{display:block;font-size:8px}.designer-runs-pro span{color:#74858d}
.canvas-title-pro{font-size:10px;font-weight:900;margin-bottom:8px}.print-preview-sheet-pro{background:#dbe7f0;padding:18px;min-height:520px;overflow:auto}.designer-sheet-inner-pro{width:520px;min-height:735px;margin:auto;background:#fff;box-shadow:0 15px 40px rgba(15,23,42,.18);padding:22px;transform-origin:top center}.designer-sheet-inner-pro h2{text-align:center;font-size:15px;margin:0}.designer-sheet-inner-pro p{text-align:center;font-size:8px}.designer-sheet-inner-pro table{width:100%;border-collapse:collapse;table-layout:fixed}.designer-sheet-inner-pro th,.designer-sheet-inner-pro td{border:1px solid #475569;padding:4px;font-size:7px;overflow-wrap:anywhere}.designer-sheet-inner-pro th{background:#e2e8f0}
@media(max-width:1180px){.print-designer-layout-pro{grid-template-columns:220px 1fr}.print-designer-canvas-pro{grid-column:1/-1}.designer-sheet-inner-pro{transform:scale(.82);transform-origin:top center;margin-bottom:-110px}}
@media(max-width:850px){.report-filters-grid-pro{grid-template-columns:1fr 1fr}.reports-catalog-grid-pro{grid-template-columns:1fr}.print-designer-layout-pro{grid-template-columns:1fr}.print-designer-canvas-pro{grid-column:auto}.designer-sheet-inner-pro{transform:scale(.7);margin-inline:auto;margin-bottom:-220px}.report-preview-toolbar-pro{align-items:flex-start;flex-direction:column}}
@media(max-width:600px){.report-filters-grid-pro{grid-template-columns:1fr}.column-edit-row-pro{grid-template-columns:24px 1fr}.column-label-input-pro{grid-column:2}.designer-sheet-inner-pro{transform:scale(.52);margin-inline:-110px;margin-bottom:-350px}}

/* V15.1 — الفلاتر المرنة والهيدر الديناميكي */
.dynamic-report-header-pro{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 10px;padding:8px;border:1px dashed #b9cbd3;border-radius:9px;background:#f8fbfc}
.dynamic-report-header-pro span{display:inline-flex;gap:4px;align-items:center;padding:5px 8px;border-radius:8px;background:#eef5f7;color:#294d5e;font-size:8px}
.dynamic-report-header-pro b{color:#0a7469}.flex-filter-config-pro{display:grid;gap:10px;padding:10px;border:1px solid #dce7eb;border-radius:11px;background:#fbfdfe}
.filter-config-grid-pro{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}@media(max-width:900px){.filter-config-grid-pro{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.filter-config-grid-pro{grid-template-columns:1fr}}


/* V15.4 — فهرس التقارير + شاشة تشغيل مستقلة */
.reports-index-head-pro{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:12px;
  padding:12px 14px;
  margin-bottom:10px;
  border:1px solid #dbe6ea;
  border-radius:14px;
  background:#fff;
}
.reports-index-head-pro span{font-size:8px;color:var(--primary);font-weight:900}
.reports-index-head-pro h2{margin:2px 0;font-size:16px}
.reports-index-head-pro p{margin:0;color:#71818a;font-size:9px}
.reports-index-search-pro{min-width:300px}
.reports-index-search-pro input{
  width:100%;
  min-height:40px;
  border:1px solid #d8e4e9;
  border-radius:10px;
  padding:8px 11px;
  font-family:inherit;
}
.reports-index-grid-pro{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.report-index-card-pro{
  position:relative;
  display:grid;
  grid-template-columns:48px 1fr;
  gap:10px;
  min-height:155px;
  padding:14px;
  border:1px solid #dce6ea;
  border-radius:15px;
  background:#fff;
  box-shadow:0 10px 28px rgba(23,54,69,.055);
  cursor:pointer;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.report-index-card-pro:hover{
  transform:translateY(-3px);
  border-color:#86bbb3;
  box-shadow:0 14px 34px rgba(16,92,80,.1);
}
.report-index-card-pro:focus-visible{outline:3px solid #86bbb3;outline-offset:2px}
.report-index-icon-pro{
  width:44px;height:44px;
  display:grid;place-items:center;
  border-radius:12px;
  background:#e9f7f3;
  color:#087565;
  font-size:15px;
  font-weight:900;
}
.report-index-content-pro span{font-size:8px;color:var(--primary);font-weight:900}
.report-index-content-pro h3{margin:4px 0;font-size:14px}
.report-index-content-pro p{margin:0;color:#71818a;font-size:9px;line-height:1.7}
.report-index-footer-pro{
  grid-column:1/-1;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:8px;
  margin-top:auto;
  padding-top:9px;
  border-top:1px solid #edf2f4;
}
.report-index-footer-pro>span{font-size:8px;color:#71818a}
.report-workspace-top-pro{
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:12px;
  padding:12px 14px;
  margin-bottom:10px;
  border:1px solid #dbe6ea;
  border-radius:14px;
  background:#fff;
}
.report-workspace-top-pro h1{margin:2px 0;font-size:22px}
.report-workspace-top-pro p{margin:0;color:#71818a;font-size:9px}
.report-workspace-top-actions-pro{display:flex;gap:6px}
.workspace-filter-panel-pro{margin-bottom:10px}

@media(max-width:850px){
  .reports-index-grid-pro{grid-template-columns:1fr}
  .reports-index-head-pro{align-items:stretch;flex-direction:column}
  .reports-index-search-pro{min-width:0;width:100%}
  .report-workspace-top-pro{grid-template-columns:1fr}
  .report-workspace-top-actions-pro{justify-content:flex-start}
}

/* ===== V16 — محرك التقييم والرصد المرن ===== */
.assessment-hero-pro,.assessment-scoring-hero-pro{background:linear-gradient(135deg,#f7fbfa,#fff8ee)}
.assessment-plan-tabs-pro{display:flex;gap:8px;overflow:auto;padding:2px 0 10px}.assessment-plan-tabs-pro button{min-width:170px;text-align:right;border:1px solid #dbe6ea;background:#fff;border-radius:13px;padding:10px 12px;cursor:pointer}.assessment-plan-tabs-pro button.active{border-color:#58a99e;box-shadow:0 8px 22px rgba(8,120,105,.12);background:#f0fbf8}.assessment-plan-tabs-pro span,.assessment-plan-tabs-pro small{display:block}.assessment-plan-tabs-pro span{font-weight:900}.assessment-plan-tabs-pro small{font-size:9px;color:#71818a;margin-top:3px}
.assessment-setup-layout-pro{display:grid;grid-template-columns:1fr 1fr;gap:10px}.assessment-setup-layout-pro .span-all{grid-column:1/-1}.assessment-rule-summary-pro{background:#f5fafb;border:1px dashed #bcd2d8;border-radius:10px;padding:9px 10px;display:flex;flex-direction:column;justify-content:center}.assessment-rule-summary-pro small{font-size:8px;color:#71818a}.assessment-rule-summary-pro strong{font-size:10px;color:#16594f;margin-top:3px}.status-pill-pro{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;font-size:8px;font-weight:900}.status-pill-pro.ok{background:#e8f8f2;color:#08705f}.status-pill-pro.warn{background:#fff5df;color:#946100}
.assessment-period-list-pro{display:grid;gap:7px}.assessment-period-list-pro article{display:grid;grid-template-columns:34px 1fr auto auto;align-items:center;gap:8px;border:1px solid #e1e9ec;border-radius:11px;padding:8px;background:#fff}.period-order-pro{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:#edf7f5;color:#087869;font-weight:900}.assessment-period-list-pro strong,.assessment-period-list-pro small{display:block}.assessment-period-list-pro small{font-size:8px;color:#71818a;margin-top:2px}
.assessment-fields-grid-pro{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.assessment-field-card-pro{border:1px solid #dfe8eb;border-radius:13px;padding:10px;background:#fff;box-shadow:0 6px 18px rgba(25,54,69,.045)}.assessment-field-card-pro.final{border-color:#e9d39e;background:#fffdf7}.assessment-field-card-pro header span,.assessment-field-card-pro header strong{display:block}.assessment-field-card-pro header span{font-size:8px;color:#087869;font-weight:900}.assessment-field-card-pro header strong{font-size:13px;margin-top:2px}.field-formula-pro{margin:9px 0;padding:7px;border-radius:8px;background:#f7fafb;color:#4d606a;font-size:9px}.assessment-field-card-pro footer{display:flex;justify-content:space-between;align-items:center;gap:5px;border-top:1px solid #edf2f4;padding-top:7px}.assessment-field-card-pro footer small{font-size:8px;color:#71818a}.assessment-formula-preview-pro{padding:10px 12px;border:1px dashed #9fc7c1;border-radius:10px;background:#f3fbf9;color:#294d46;font-size:10px}.assessment-formula-preview-pro strong{color:#087869}
.assessment-group-toolbar-pro{display:grid;grid-template-columns:1fr 1.4fr auto;gap:8px;align-items:end}.assessment-group-chips-pro{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}.assessment-group-chips-pro span{padding:5px 9px;border-radius:999px;background:#eef8f6;color:#0c6f62;font-size:9px;font-weight:900}.assessment-assignment-bar-pro{display:flex;gap:7px;align-items:center;margin:8px 0}.assessment-assignment-bar-pro select{max-width:280px}
.assessment-scoring-index-pro{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.assessment-period-card-pro{display:grid;grid-template-columns:50px 1fr auto;align-items:center;gap:12px;min-height:125px;padding:14px;border:1px solid #dce7ea;border-radius:15px;background:#fff;box-shadow:0 10px 28px rgba(23,54,69,.06);cursor:pointer;transition:.18s ease}.assessment-period-card-pro:hover{transform:translateY(-2px);border-color:#83b9b1;box-shadow:0 14px 32px rgba(8,120,105,.1)}.assessment-period-card-pro>span{width:46px;height:46px;display:grid;place-items:center;border-radius:13px;background:#eaf7f4;color:#087869;font-weight:900;font-size:15px}.assessment-period-card-pro.final>span{background:#fff3cf;color:#946100}.assessment-period-card-pro small,.assessment-period-card-pro h2,.assessment-period-card-pro p{display:block;margin:0}.assessment-period-card-pro small{font-size:8px;color:#087869;font-weight:900}.assessment-period-card-pro h2{font-size:16px;margin:3px 0}.assessment-period-card-pro p{font-size:9px;color:#71818a}
.assessment-workspace-head-pro{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;margin-bottom:9px;padding:11px 13px;border:1px solid #dce6ea;border-radius:14px;background:#fff}.assessment-workspace-head-pro small{font-size:8px;color:#087869;font-weight:900}.assessment-workspace-head-pro h1{font-size:20px;margin:2px 0}.assessment-workspace-head-pro p{font-size:9px;color:#71818a;margin:0}.assessment-scope-grid-pro{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;align-items:end}.assessment-scope-grid-pro .span2{grid-column:span 2}.assessment-roster-head-pro{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:10px;margin-bottom:8px}.assessment-roster-head-pro small{font-size:8px;color:#087869}.assessment-roster-head-pro h2{margin:1px 0;font-size:16px}.assessment-roster-head-pro p{margin:0;font-size:9px;color:#71818a}.assessment-kpis-inline-pro{display:flex;gap:5px;flex-wrap:wrap}.assessment-kpis-inline-pro span{padding:5px 8px;border:1px solid #e0e9ec;border-radius:8px;background:#f9fbfc;font-size:8px}.assessment-kpis-inline-pro b{font-size:11px;color:#087869;margin-left:3px}.assessment-score-table-wrap{max-height:66vh;overflow:auto}.assessment-score-table{min-width:1100px}.assessment-score-table thead th{position:sticky;top:0;z-index:3;background:#f3f8f7}.assessment-score-table th small{display:block;font-size:7px;color:#71818a;margin-top:2px;font-weight:600}.student-name-cell-pro strong,.student-name-cell-pro small{display:block;white-space:nowrap}.student-name-cell-pro small{font-size:7px;color:#71818a}.dynamic-score-cell-pro{min-width:105px}.dynamic-score-cell-pro input{width:76px;min-height:30px;text-align:center;border:1px solid #d9e4e7;border-radius:7px;font-family:inherit;font-weight:800}.dynamic-score-cell-pro input:focus{border-color:#56a79b;box-shadow:0 0 0 3px rgba(8,120,105,.08);outline:0}.dynamic-score-cell-pro .score-calc-pro{display:block;font-size:8px;color:#087869;margin-top:3px;white-space:nowrap}.score-invalid-pro{border-color:#d74848!important;background:#fff3f3!important}.row-total-pro,.periods-result-cell-pro{font-weight:900;color:#0a6258;background:#f4fbf9}.autosave-state{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;font-size:8px;font-weight:900;padding:4px 7px;border-radius:999px}.autosave-state.saving{background:#eff6ff;color:#1d4ed8}.autosave-state.saved{background:#ecfdf5;color:#047857}.autosave-state.error{background:#fff1f2;color:#be123c}.autosave-state.dirty{background:#fffbeb;color:#b45309}
.btn-v12.tiny{min-height:27px;padding:4px 7px;font-size:8px}.btn-v12.danger{background:#fff1f2;color:#b42318;border-color:#fecdd3}.assessment-empty-pro{text-align:center;padding:30px}
@media(max-width:1000px){.assessment-setup-layout-pro,.assessment-scoring-index-pro{grid-template-columns:1fr}.assessment-fields-grid-pro{grid-template-columns:repeat(2,minmax(0,1fr))}.assessment-scope-grid-pro{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.assessment-fields-grid-pro,.assessment-scope-grid-pro,.assessment-group-toolbar-pro{grid-template-columns:1fr}.assessment-scope-grid-pro .span2{grid-column:auto}.assessment-workspace-head-pro,.assessment-roster-head-pro,.assessment-period-card-pro{grid-template-columns:1fr}.assessment-period-card-pro>span{width:38px;height:38px}.assessment-assignment-bar-pro{flex-direction:column;align-items:stretch}}
.dynamic-score-cell-pro.calculated{min-width:120px}.score-raw-compact-pro{width:58px!important;min-height:25px!important;font-size:9px!important;opacity:.72}.score-calc-main-pro{display:block;margin-top:4px;font-size:11px;font-weight:900;color:#087869;white-space:nowrap}


/* ===== V16.2 — بطاقة تقييم الطالب الديناميكية ===== */
.assessment-evaluation-hero-pro{background:linear-gradient(135deg,#f7fbfa,#f5f1fb)}
.assessment-evaluation-search-pro{margin-bottom:10px}
.assessment-evaluation-search-row-pro{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:end}
.assessment-evaluation-results-pro{display:grid;gap:5px;margin-top:7px;max-height:260px;overflow:auto}
.assessment-evaluation-result-pro{display:grid;grid-template-columns:38px 1fr;gap:9px;align-items:center;width:100%;padding:8px 10px;border:1px solid #dfe8eb;border-radius:10px;background:#fff;text-align:right;font-family:inherit;cursor:pointer}
.assessment-evaluation-result-pro:hover{border-color:#72aaa3;background:#f5fbf9}
.assessment-evaluation-result-pro strong,.assessment-evaluation-result-pro small,.assessment-evaluation-result-pro em{display:block}
.assessment-evaluation-result-pro strong{font-size:10px;color:#15384b}.assessment-evaluation-result-pro small{font-size:8px;color:#667a85;margin-top:2px}.assessment-evaluation-result-pro em{font-size:7px;color:#087869;margin-top:2px;font-style:normal}
.assessment-evaluation-avatar-pro{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:#e8f6f3;color:#087869;font-weight:900}
.assessment-evaluation-empty-pro,.assessment-evaluation-card-shell-pro{margin-top:8px}
.student-evaluation-card-pro{max-width:1450px;margin:0 auto;background:#fff;border:1px solid #d8e3e8;border-radius:15px;padding:14px;box-shadow:0 12px 30px rgba(20,55,72,.07);color:#142f3f}
.student-evaluation-card-head-pro{display:grid;grid-template-columns:110px 1fr 130px;align-items:center;gap:12px;padding-bottom:10px;border-bottom:2px solid #174460}
.evaluation-logo-box-pro{height:78px;border:1px solid #d0dde2;border-radius:10px;display:grid;place-items:center;overflow:hidden;color:#7a8a92;font-size:8px;background:#fbfdfe}.evaluation-logo-box-pro img{max-width:100%;max-height:100%;object-fit:contain}
.evaluation-title-pro{text-align:center}.evaluation-title-pro small{font-size:9px;color:#536b78}.evaluation-title-pro h2{margin:3px 0;font-size:20px}.evaluation-title-pro p{margin:0;font-size:9px;color:#087869;font-weight:800}
.evaluation-seat-box-pro{text-align:center;border:2px solid #294b5e;border-radius:8px;padding:8px;background:#fbfdfe}.evaluation-seat-box-pro small,.evaluation-seat-box-pro strong{display:block}.evaluation-seat-box-pro small{font-size:8px}.evaluation-seat-box-pro strong{font-size:20px;margin-top:2px}
.student-evaluation-identity-pro{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:9px 0;border:1px solid #d7e2e7;border-radius:10px;overflow:hidden}.student-evaluation-identity-pro>div{padding:8px 10px;border-left:1px solid #e1e9ed;border-bottom:1px solid #e1e9ed}.student-evaluation-identity-pro small,.student-evaluation-identity-pro strong{display:block}.student-evaluation-identity-pro small{font-size:7px;color:#71818a}.student-evaluation-identity-pro strong{font-size:10px;margin-top:2px}
.student-evaluation-periods-head-pro{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 11px;border-radius:10px;background:#eef6f7;border:1px solid #cddde2}.student-evaluation-periods-head-pro small{font-size:8px;color:#087869}.student-evaluation-periods-head-pro h3{font-size:14px;margin:1px 0}.evaluation-result-chip-pro{text-align:left}.evaluation-result-chip-pro small,.evaluation-result-chip-pro strong{display:block}.evaluation-result-chip-pro strong{font-size:17px;color:#087869}
.student-evaluation-periods-pro{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:8px 0}.student-eval-period-pro{border:1px solid #d9e4e8;border-radius:11px;overflow:hidden;background:#fff}.student-eval-period-pro>header{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 9px;background:#f7fafb;border-bottom:1px solid #e0e8eb}.student-eval-period-pro>header>div{display:flex;gap:8px;align-items:center}.student-eval-period-pro>header>div>span{width:31px;height:31px;display:grid;place-items:center;border-radius:9px;background:#174460;color:#fff;font-size:9px;font-weight:900}.student-eval-period-pro header small,.student-eval-period-pro header h3{display:block;margin:0}.student-eval-period-pro header small{font-size:7px;color:#71818a}.student-eval-period-pro header h3{font-size:12px}.student-eval-period-pro header>strong{font-size:14px;color:#087869}
.student-eval-fields-grid-pro{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.student-eval-fields-grid-pro article{min-height:68px;padding:8px;border-left:1px solid #e5ecef;border-bottom:1px solid #e5ecef;text-align:center;display:flex;flex-direction:column;justify-content:center}.student-eval-fields-grid-pro article>small{font-size:7px;color:#617782;font-weight:800}.evaluation-value-pro{display:block;margin-top:3px}.evaluation-value-pro b{display:block;font-size:14px;color:#163d50}.evaluation-value-pro small{display:block;font-size:7px;color:#087869;margin-top:1px}.evaluation-empty-score-pro{display:inline-block;margin-top:5px;color:#a55241;font-size:8px}
.student-eval-period-pro>footer{display:flex;justify-content:space-between;gap:8px;padding:6px 8px;background:#fbfdfe;font-size:7px;color:#637681}.student-eval-period-pro>footer span{font-weight:900;color:#087869}
.student-evaluation-final-pro{margin-top:9px;border:1px solid #dec986;border-radius:11px;overflow:hidden;background:#fffdf8}.student-evaluation-final-pro>header{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 11px;background:#fff8df;border-bottom:1px solid #ead99e}.student-evaluation-final-pro header small{font-size:8px;color:#8a620b}.student-evaluation-final-pro header h3{margin:1px 0;font-size:14px}.student-evaluation-final-pro header>div:last-child{text-align:left}.student-evaluation-final-pro header span,.student-evaluation-final-pro header strong{display:block}.student-evaluation-final-pro header span{font-size:7px;color:#745d28}.student-evaluation-final-pro header strong{font-size:17px;color:#8a620b}
.student-eval-fields-grid-pro.final{grid-template-columns:repeat(4,minmax(0,1fr))}
.student-eval-no-fields-pro{grid-column:1/-1;padding:16px;text-align:center;color:#72848d;font-size:9px}
.student-evaluation-grand-pro{display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px;margin-top:9px;padding:11px 13px;border:1.5px solid #b99434;border-radius:11px;background:linear-gradient(135deg,#fffdf4,#fff7d8)}.student-evaluation-grand-pro small,.student-evaluation-grand-pro span{display:block}.student-evaluation-grand-pro small{font-size:8px;color:#745d28}.student-evaluation-grand-pro span{font-size:9px;margin-top:2px}.student-evaluation-grand-score-pro{text-align:left;min-width:170px}.student-evaluation-grand-score-pro strong{display:block;font-size:24px;color:#7a560a}.student-evaluation-grand-score-pro span{font-size:7px;font-weight:800}
.student-evaluation-signatures-pro{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:18px;padding:0 15px}.student-evaluation-signatures-pro div{text-align:center}.student-evaluation-signatures-pro strong,.student-evaluation-signatures-pro span{display:block}.student-evaluation-signatures-pro strong{font-size:9px}.student-evaluation-signatures-pro span{margin-top:25px;padding-top:4px;border-top:1px dotted #78909c;font-size:7px;color:#71818a}
#assessmentEvaluation .student-empty-state.compact,.assessment-evaluation-results-pro .student-empty-state.compact{padding:10px}
@media(max-width:900px){.student-evaluation-periods-pro{grid-template-columns:1fr}.student-evaluation-identity-pro{grid-template-columns:repeat(2,1fr)}.student-eval-fields-grid-pro.final{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.assessment-evaluation-search-row-pro,.student-evaluation-card-head-pro,.student-evaluation-grand-pro{grid-template-columns:1fr}.student-evaluation-identity-pro,.student-eval-fields-grid-pro,.student-eval-fields-grid-pro.final{grid-template-columns:1fr}.evaluation-logo-box-pro{height:60px}.evaluation-seat-box-pro{max-width:160px}.student-evaluation-periods-head-pro,.student-evaluation-final-pro>header{align-items:flex-start;flex-direction:column}.student-evaluation-grand-score-pro{text-align:right}}


/* ===== V16.3 — بطاقة التقييم الرسمية المرنة ===== */
.official-flex-evaluation-card-pro{max-width:1500px;margin:0 auto;background:#fff;border:1px solid #d5dce0;border-radius:12px;padding:14px;box-shadow:0 12px 32px rgba(15,23,42,.07);color:#111}
.official-flex-eval-header-pro{display:grid;grid-template-columns:140px 1fr 175px;align-items:center;gap:14px;border-bottom:2px solid #222;padding-bottom:10px;margin-bottom:7px}
.official-eval-seat-pro{text-align:center}.official-eval-seat-pro span{display:block;font-weight:800;font-size:9px}.official-eval-seat-pro strong{display:inline-block;min-width:100px;margin-top:5px;padding:8px 12px;border:2px solid #1d2d36;font-size:20px}
.official-eval-title-pro{text-align:center}.official-eval-title-pro h2{font-size:18px;margin:0;color:#111}.official-eval-title-pro h3{font-size:11px;margin:4px 0 0;color:#111}
.official-eval-org-pro{text-align:center}.official-eval-logo-pro{height:58px;border:1px solid #dbe3e7;border-radius:6px;display:grid;place-items:center;overflow:hidden}.official-eval-logo-pro img{max-height:56px;max-width:100%;object-fit:contain}.official-eval-logo-pro span{font-size:7px;color:#7b878d}.official-eval-org-pro strong{display:block;font-size:8px;margin-top:3px}
.official-eval-student-lines-pro{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #333;border-bottom:1px solid #333;margin-bottom:7px;padding:5px 0}.official-eval-student-lines-pro div{padding:3px 8px;font-size:9px}.official-eval-student-lines-pro b{font-weight:900}
.official-eval-main-table-wrap-pro{width:100%;overflow:auto}
.official-eval-main-table-pro{width:100%;border-collapse:collapse;table-layout:fixed}.official-eval-main-table-pro th,.official-eval-main-table-pro td{border:1px solid #222;padding:7px 5px;text-align:center;vertical-align:middle;overflow-wrap:anywhere}.official-eval-main-table-pro thead th{background:#d8d8d8;color:#111;font-size:8px}.official-eval-main-table-pro thead th small{display:block;font-size:6px;color:#333;margin-top:2px}.official-eval-main-table-pro tbody td{font-size:8px;min-height:44px}.official-eval-main-table-pro tbody td b{font-size:11px}.eval-cell-note{display:block;font-size:6px;color:#59656b;margin-top:2px}.eval-empty-cell{color:#777}.eval-period-name-cell{font-weight:900}.eval-period-status-cell{font-size:7px!important}.official-eval-main-table-pro tfoot th,.official-eval-main-table-pro tfoot td{background:#ececec;font-weight:800}.official-eval-main-table-pro tfoot th small{display:block;font-size:6px}
.official-eval-final-block-pro{margin-top:7px;border:1px solid #222}.official-eval-final-title-pro{display:flex;justify-content:space-between;align-items:center;padding:6px 8px;background:#d8d8d8;border-bottom:1px solid #222}.official-eval-final-title-pro span{font-size:8px}.official-eval-final-title-pro strong{font-size:11px}
.official-final-score-grid-pro{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}.official-final-score-cell-pro{min-height:62px;padding:7px;border-left:1px solid #222;text-align:center;display:flex;flex-direction:column;justify-content:center}.official-final-score-cell-pro span,.official-final-score-cell-pro strong,.official-final-score-cell-pro small{display:block}.official-final-score-cell-pro span{font-size:7px}.official-final-score-cell-pro strong{font-size:15px;margin:2px 0}.official-final-score-cell-pro small{font-size:6px;color:#5b666d}.official-final-score-cell-pro.total{background:#f0f0f0}.official-final-score-cell-pro.empty{grid-column:1/-1}
.official-eval-grand-row-pro{display:grid;grid-template-columns:1fr 260px;border:1px solid #222;border-top:0}.official-eval-grand-row-pro>div{padding:8px 10px}.official-eval-grand-row-pro>div:last-child{border-right:1px solid #222;text-align:center;background:#f0f0f0}.official-eval-grand-row-pro span,.official-eval-grand-row-pro strong,.official-eval-grand-row-pro small{display:block}.official-eval-grand-row-pro span{font-size:8px;font-weight:900}.official-eval-grand-row-pro small{font-size:7px;margin-top:2px}.official-eval-grand-row-pro strong{font-size:20px;margin:2px 0}
.official-eval-signatures-pro{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:22px;padding:0 12px}.official-eval-signatures-pro div{text-align:center}.official-eval-signatures-pro strong,.official-eval-signatures-pro span{display:block}.official-eval-signatures-pro strong{font-size:8px}.official-eval-signatures-pro span{margin-top:26px;padding-top:3px;border-top:1px dotted #666;font-size:6px;color:#666}
@media(max-width:900px){.official-flex-eval-header-pro{grid-template-columns:120px 1fr 140px}.official-eval-student-lines-pro{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.official-flex-eval-header-pro{grid-template-columns:1fr;text-align:center}.official-eval-student-lines-pro{grid-template-columns:1fr}.official-eval-grand-row-pro{grid-template-columns:1fr}.official-eval-grand-row-pro>div:last-child{border-right:0;border-top:1px solid #222}.official-eval-signatures-pro{grid-template-columns:1fr;gap:10px}}


/* ===== V16.4 — مصمم بطاقة التقييم الاحترافي ===== */
.eval-designer-hero-pro{background:linear-gradient(135deg,#f5fbfa,#f9f5ff)}
.eval-designer-hero-actions-pro{display:flex;gap:6px;flex-wrap:wrap}
.eval-designer-toolbar-pro{display:flex;align-items:end;gap:7px;flex-wrap:wrap;padding:8px 10px;margin-bottom:8px;background:#fff;border:1px solid #d9e5e9;border-radius:12px;box-shadow:0 8px 24px rgba(20,55,72,.05)}
.eval-designer-toolbar-pro label{display:grid;gap:3px;min-width:240px;font-size:8px}.eval-designer-toolbar-pro select{min-height:36px;border:1px solid #d5e2e7;border-radius:8px;padding:5px 8px;font-family:inherit}.eval-designer-version-pro{margin-inline-start:auto;font-size:8px;color:#657b86}
.eval-designer-layout-pro{display:grid;grid-template-columns:390px minmax(0,1fr);gap:10px;align-items:start}
.eval-designer-controls-pro{position:sticky;top:8px;max-height:calc(100vh - 24px);overflow:auto;background:#fff;border:1px solid #d9e5e9;border-radius:13px;padding:9px;box-shadow:0 10px 28px rgba(20,55,72,.06)}
.eval-designer-tabs-pro{display:grid;grid-template-columns:repeat(5,1fr);gap:3px;margin-bottom:8px}.eval-designer-tabs-pro button{border:1px solid #dce6ea;background:#f7fafb;border-radius:7px;padding:7px 3px;font-family:inherit;font-size:7px;font-weight:800;cursor:pointer}.eval-designer-tabs-pro button.active{background:#0f786b;color:#fff;border-color:#0f786b}
.eval-designer-tab-pane-pro{display:none}.eval-designer-tab-pane-pro.active{display:grid;gap:7px}.eval-designer-tab-pane-pro h3{margin:7px 0 0;font-size:11px;color:#173d50}.eval-designer-help-pro{font-size:7px;color:#758891;margin:0}
.eval-config-row-pro{display:grid;grid-template-columns:1fr 1fr;gap:6px}.eval-config-row-pro label{display:grid;gap:3px;font-size:8px}.eval-config-row-pro select{min-height:35px;border:1px solid #d6e2e7;border-radius:8px;padding:5px;font-family:inherit}
.eval-sort-list-pro,.eval-field-design-list-pro{display:grid;gap:4px}.eval-sort-list-pro>div{display:grid;grid-template-columns:24px 1fr;align-items:center;padding:7px;border:1px solid #dce6ea;border-radius:8px;background:#fbfdfe;cursor:grab}.eval-sort-list-pro>div span,.eval-field-design-list-pro .drag{color:#80939d;cursor:grab}
.eval-field-design-list-pro>div{display:grid;grid-template-columns:22px 22px minmax(0,1fr) 65px;gap:4px;align-items:center;padding:5px;border:1px solid #dce6ea;border-radius:8px;background:#fbfdfe}.eval-field-design-list-pro input.label,.eval-field-design-list-pro input.width{min-height:31px;border:1px solid #d7e3e8;border-radius:6px;padding:3px 5px;font-family:inherit;font-size:8px}.eval-field-design-list-pro small{font-size:6px;color:#82939b;direction:ltr;text-align:left}
#evalStudentFields>div{grid-template-columns:22px 22px minmax(0,1fr) 80px}#evalSignatures>div{grid-template-columns:22px 22px minmax(0,1fr) auto}
.eval-check-grid-pro{display:grid;grid-template-columns:1fr 1fr;gap:4px}.eval-check-grid-pro label,.check-field-pro{display:flex;align-items:center;gap:5px;font-size:8px;padding:5px;border-radius:7px;background:#f6fafb}
.eval-custom-fields-list-pro{display:grid;gap:4px}.eval-custom-fields-list-pro>div{display:grid;grid-template-columns:1fr 1fr auto;gap:4px}.eval-custom-fields-list-pro input{min-height:32px;border:1px solid #d7e3e8;border-radius:7px;padding:4px 6px;font-family:inherit;font-size:8px}
.eval-designer-preview-pro{min-width:0;background:#eef4f6;border:1px solid #d7e2e7;border-radius:13px;padding:9px;overflow:auto}.eval-preview-head-pro{display:flex;justify-content:space-between;align-items:center;margin-bottom:7px;padding:6px 8px;background:#fff;border-radius:9px}.eval-preview-head-pro span,.eval-preview-head-pro strong{display:block}.eval-preview-head-pro span{font-size:7px;color:#71818a}.eval-preview-head-pro strong{font-size:10px}
.eval-designer-preview-pro .official-flex-evaluation-card-pro{transform-origin:top center}
.official-eval-custom-fields-pro{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));border:1px solid #222;border-top:0}.official-eval-custom-fields-pro>div{padding:6px 8px;border-left:1px solid #222}.official-eval-custom-fields-pro span,.official-eval-custom-fields-pro strong{display:block}.official-eval-custom-fields-pro span{font-size:.75em;color:#5f6d74}.official-eval-custom-fields-pro strong{font-size:.95em;margin-top:2px}
.official-eval-footer-pro{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:12px;padding-top:5px;border-top:1px solid #aab8bf;font-size:.65em;color:#677a84}.designer-hidden{visibility:hidden}.official-flex-eval-header-pro.logo-left .official-eval-org-pro{grid-column:1;grid-row:1}.official-flex-eval-header-pro.logo-left .official-eval-seat-pro{grid-column:3;grid-row:1}.official-flex-eval-header-pro.logo-left .official-eval-title-pro{grid-column:2;grid-row:1}.official-flex-eval-header-pro.logo-center{grid-template-columns:130px 1fr 130px}.official-flex-eval-header-pro.logo-center .official-eval-org-pro{grid-column:2;grid-row:1}.official-flex-eval-header-pro.logo-center .official-eval-title-pro{grid-column:2;grid-row:2}.official-flex-eval-header-pro.logo-center{grid-template-rows:auto auto}.official-eval-org-pro.no-logo .official-eval-logo-pro{height:15px;border:0}
.dragging{opacity:.45}
@media(max-width:1150px){.eval-designer-layout-pro{grid-template-columns:330px minmax(0,1fr)}}@media(max-width:850px){.eval-designer-layout-pro{grid-template-columns:1fr}.eval-designer-controls-pro{position:static;max-height:none}.eval-designer-tabs-pro{grid-template-columns:repeat(3,1fr)}}@media(max-width:560px){.eval-designer-tabs-pro{grid-template-columns:1fr 1fr}.eval-config-row-pro,.eval-check-grid-pro{grid-template-columns:1fr}}

/* V17 Security — student portal activation */
.student-activation-admin-pro{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 10px;border:1px solid #d7e6e3;border-radius:10px;background:#f7fbfa}
.student-activation-admin-pro strong,.student-activation-admin-pro small{display:block}.student-activation-admin-pro strong{font-size:10px}.student-activation-admin-pro small{font-size:7px;color:#6a7d86;margin-top:2px}
.student-activation-code-pro{padding:10px;border:1px solid #b8d9d2;border-radius:10px;background:#ecf9f5;text-align:center}.student-activation-code-pro span,.student-activation-code-pro strong,.student-activation-code-pro small{display:block}.student-activation-code-pro strong{font-size:24px;letter-spacing:2px;color:#087869;margin:3px 0}.student-activation-code-pro small{font-size:7px;color:#667a83}


/* V17.2 — توسيط النصوص داخل خلايا الجداول وحقول التقارير */
table th,
table td,
.data-table th,
.data-table td,
.official-table-pro th,
.official-table-pro td,
.official-eval-main-table-pro th,
.official-eval-main-table-pro td,
.tablewrap th,
.tablewrap td{
  text-align:center !important;
  vertical-align:middle !important;
}

table td input,
table td select,
table td textarea,
table th input,
table th select,
table th textarea,
.report-filters-grid-pro input,
.report-filters-grid-pro select{
  text-align:center !important;
}

table td input::placeholder,
table td textarea::placeholder,
.report-filters-grid-pro input::placeholder{
  text-align:center !important;
}


/* V17.3 — إعداد عدد السجلات لكل صفحة */
.report-pagination-settings-pro{
  margin:10px 0;
  padding:12px;
  border:1px solid #cfe0e5;
  border-radius:12px;
  background:linear-gradient(135deg,#f8fcfd,#f4faf8);
}
.report-pagination-settings-head-pro{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  margin-bottom:10px;
}
.report-pagination-settings-head-pro small{
  display:block;
  font-size:8px;
  color:#0b7b6d;
  font-weight:900;
}
.report-pagination-settings-head-pro h3{
  margin:2px 0;
  font-size:14px;
}
.report-pagination-settings-head-pro p{
  margin:0;
  font-size:8px;
  color:#6c7f88;
}
.report-pagination-value-pro{
  min-width:105px;
  text-align:center;
  padding:8px 10px;
  border-radius:10px;
  background:#0d7568;
  color:#fff;
}
.report-pagination-value-pro strong,
.report-pagination-value-pro span{display:block}
.report-pagination-value-pro strong{font-size:22px;line-height:1}
.report-pagination-value-pro span{font-size:7px;margin-top:3px}
.report-pagination-control-pro{
  display:grid;
  grid-template-columns:170px 1fr;
  gap:10px;
  align-items:end;
}
.report-pagination-control-pro .field{margin:0}
.report-pagination-control-pro input{
  text-align:center!important;
  font-size:15px;
  font-weight:900;
}
.report-pagination-presets-pro{
  display:flex;
  align-items:center;
  gap:5px;
  flex-wrap:wrap;
  padding-bottom:2px;
}
.report-pagination-presets-pro>span{font-size:8px;color:#667983}
.report-pagination-presets-pro button{
  min-width:38px;
  min-height:34px;
  border:1px solid #cadde2;
  border-radius:8px;
  background:#fff;
  font-family:inherit;
  font-weight:900;
  cursor:pointer;
}
.report-pagination-presets-pro button.active{
  background:#0d7568;
  color:#fff;
  border-color:#0d7568;
}
.report-pagination-hint-pro{
  margin-top:8px;
  padding:6px 8px;
  border-radius:7px;
  background:#eef6f7;
  color:#60737c;
  font-size:7px;
}
.report-page-preview-meta-pro{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:8px;
  margin:6px 0;
  padding:6px 8px;
  border:1px dashed #b9cbd3;
  border-radius:8px;
  background:#f8fbfc;
  font-size:8px;
}
.report-page-preview-meta-pro strong{color:#0d7568;font-size:10px}
@media(max-width:700px){
  .report-pagination-settings-head-pro{align-items:stretch;flex-direction:column}
  .report-pagination-value-pro{width:100%}
  .report-pagination-control-pro{grid-template-columns:1fr}
}
