@font-face{font-family:'Tajawal';font-weight:400;src:url(/fonts/tajawal-arabic-400-normal.woff2) format('woff2');unicode-range:U+0600-06FF,U+0750-077F,U+FB50-FDFF,U+FE70-FEFC,U+200C-200E}
@font-face{font-family:'Tajawal';font-weight:500;src:url(/fonts/tajawal-arabic-500-normal.woff2) format('woff2');unicode-range:U+0600-06FF,U+0750-077F,U+FB50-FDFF,U+FE70-FEFC,U+200C-200E}
@font-face{font-family:'Tajawal';font-weight:700;src:url(/fonts/tajawal-arabic-700-normal.woff2) format('woff2');unicode-range:U+0600-06FF,U+0750-077F,U+FB50-FDFF,U+FE70-FEFC,U+200C-200E}
@font-face{font-family:'Tajawal';font-weight:800;src:url(/fonts/tajawal-arabic-800-normal.woff2) format('woff2');unicode-range:U+0600-06FF,U+0750-077F,U+FB50-FDFF,U+FE70-FEFC,U+200C-200E}
@font-face{font-family:'Tajawal';font-weight:400;src:url(/fonts/tajawal-latin-400-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+2000-206F}
@font-face{font-family:'Tajawal';font-weight:700;src:url(/fonts/tajawal-latin-700-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+2000-206F}

/* هوية وزارة التعليم: تدرج الشعار من الأزرق إلى الأخضر */
:root{
  --blue:#2F7FB4;--blue-dark:#1B557D;--teal:#2F8F9A;--green:#48A878;--green-dark:#2C7D56;
  --grad:linear-gradient(90deg,#2F7FB4 0%,#3C9696 55%,#48A878 100%);
  --grad-deep:linear-gradient(135deg,#1B557D 0%,#2B7F98 50%,#2F8F6C 100%);
  --grad-soft:linear-gradient(90deg,#EAF3FA 0%,#EAF5F2 100%);
  /* أسماء قديمة مستخدمة في الواجهة، تشير إلى الهوية الجديدة */
  --teal-2:#3C9C8A;--teal-3:#9CCBD0;--teal-dark:#1B557D;--teal-soft:#EDF5F7;
  --ink:#16303F;--muted:#5D707C;--bg:#F3F7F9;--card:#fff;--line:#E0EAEF;
  --danger:#C0392B;--warn:#B98100;--info:#2F7FB4;--ok:#2C8A5A;
  --radius:16px;
  --shadow:0 1px 2px rgba(27,85,125,.05),0 6px 24px rgba(27,85,125,.07);
  --shadow-lg:0 10px 40px rgba(27,85,125,.14);
}
*{box-sizing:border-box}
html,body{margin:0}
body{font-family:'Tajawal',system-ui,sans-serif;background:var(--bg);color:var(--ink);font-size:15px;line-height:1.65;
  background-image:radial-gradient(1200px 400px at 100% -10%,rgba(47,127,180,.07),transparent),radial-gradient(900px 400px at 0% 0%,rgba(72,168,120,.07),transparent);background-attachment:fixed}
a{color:var(--blue-dark)}
button,input,select,textarea{font:inherit;color:inherit}
[hidden]{display:none!important}
::selection{background:rgba(47,127,180,.18)}
*::-webkit-scrollbar{width:10px;height:10px}
*::-webkit-scrollbar-thumb{background:#C9D8E0;border-radius:10px;border:2px solid transparent;background-clip:padding-box}

/* الشريط العلوي */
.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:18px;padding:10px 24px;background:rgba(255,255,255,.92);backdrop-filter:saturate(1.4) blur(10px);box-shadow:0 1px 0 var(--line),0 6px 20px rgba(27,85,125,.06);flex-wrap:wrap}
.topbar::after{content:'';position:absolute;inset:auto 0 0 0;height:3px;background:var(--grad)}
.brand{display:flex;align-items:center;gap:12px}
.brand img{height:44px;width:44px;border-radius:12px;box-shadow:0 4px 12px rgba(27,85,125,.25)}
.brand-title{font-weight:800;font-size:16px;background:var(--grad-deep);-webkit-background-clip:text;background-clip:text;color:transparent}
.brand-sub{font-size:12px;color:var(--muted)}
nav{display:flex;gap:4px;flex:1;flex-wrap:wrap}
nav a{padding:7px 14px;border-radius:999px;text-decoration:none;color:var(--ink);font-weight:500;transition:background .15s,color .15s}
nav a:hover{background:var(--teal-soft);color:var(--blue-dark)}
nav a.active{background:var(--grad);color:#fff;box-shadow:0 4px 12px rgba(47,127,180,.25)}
.user{display:flex;align-items:center;gap:8px;font-size:14px}
.user .name{font-weight:700}

main{max-width:1400px;margin:0 auto;padding:26px 20px 70px}
main.bare{max-width:none;padding:0}
h1{font-size:24px;font-weight:800;margin:0 0 4px;color:var(--blue-dark)}
h2{font-size:18px;font-weight:700;margin:0 0 12px;color:var(--blue-dark)}
h3{font-size:16px;margin:0 0 8px}
.sub{color:var(--muted);font-size:14px}
.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:20px;flex-wrap:wrap}
.page-head h1{position:relative;padding-inline-start:14px}
.page-head h1::before{content:'';position:absolute;inset-inline-start:0;top:6px;bottom:6px;width:5px;border-radius:5px;background:var(--grad)}
.crumbs{font-size:13px;color:var(--muted);margin-bottom:6px}
.crumbs a{text-decoration:none;color:var(--blue)}

.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px}
.grid{display:grid;gap:16px}
.grid.cols-2{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}
.grid.cols-4{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.stack{display:flex;flex-direction:column;gap:16px}
.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.spacer{flex:1}

/* الأزرار */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid var(--line);background:#fff;border-radius:11px;padding:8px 16px;cursor:pointer;font-weight:500;text-decoration:none;color:var(--ink);white-space:nowrap;transition:transform .12s,box-shadow .15s,background .15s,border-color .15s}
.btn:hover{border-color:#B9D3E0;background:#F7FBFC;box-shadow:0 3px 10px rgba(27,85,125,.08)}
.btn:active{transform:translateY(1px)}
.btn.primary{background:var(--grad);border-color:transparent;color:#fff;font-weight:700;box-shadow:0 4px 14px rgba(47,127,180,.28)}
.btn.primary:hover{filter:brightness(1.06);box-shadow:0 6px 18px rgba(47,127,180,.35)}
.btn.danger{color:var(--danger);border-color:#F1D0CB}
.btn.danger:hover{background:#FDF1EF}
.btn.ghost{border-color:transparent;background:transparent;box-shadow:none}
.btn.sm{padding:5px 12px;font-size:13px;border-radius:9px}
.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}

/* الحقول */
label.field,div.field{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:500}
input:not([type]),input[type=text],input[type=password],input[type=date],input[type=email],input[type=tel],input[type=number],input[type=url],select,textarea{border:1px solid #D5E2E9;border-radius:11px;padding:9px 12px;background:#FBFDFE;width:100%;transition:border-color .15s,box-shadow .15s,background .15s}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--blue);background:#fff;box-shadow:0 0 0 4px rgba(47,127,180,.14)}
textarea{resize:vertical;min-height:44px;line-height:1.75}
input[type=checkbox],input[type=radio]{accent-color:var(--blue)}
.seg{display:flex;flex-wrap:wrap;gap:6px}
.seg label{border:1px solid #D5E2E9;border-radius:999px;padding:5px 14px;cursor:pointer;font-weight:500;font-size:14px;background:#fff;transition:all .15s}
.seg label:hover{border-color:var(--blue)}
.seg input{display:none}
.seg label:has(input:checked){background:var(--grad);border-color:transparent;color:#fff;box-shadow:0 3px 10px rgba(47,127,180,.25)}

/* الشارات والتقدم */
.badge{display:inline-block;padding:3px 11px;border-radius:999px;font-size:12px;font-weight:700;white-space:nowrap;vertical-align:middle}
.st-new{background:#EEF2F4;color:#56656E}
.st-in_progress{background:#E5F0F9;color:var(--blue)}
.st-review{background:#FFF3D6;color:var(--warn)}
.st-approved{background:#E2F4EA;color:var(--ok)}
.st-returned{background:#FCE8E6;color:var(--danger)}
.progress{height:8px;background:#E7EFF3;border-radius:8px;overflow:hidden}
.progress>div{height:100%;background:var(--grad);border-radius:8px;transition:width .4s}
.muted{color:var(--muted)}
.small{font-size:13px}
.empty-state{text-align:center;color:var(--muted);padding:34px}

table.list{width:100%;border-collapse:separate;border-spacing:0}
table.list th,table.list td{text-align:right;padding:11px 10px;border-bottom:1px solid var(--line);vertical-align:middle}
table.list th{font-size:13px;color:var(--muted);font-weight:700;background:#F7FAFC}
table.list th:first-child{border-start-start-radius:10px}
table.list th:last-child{border-start-end-radius:10px}
table.list tr:hover td{background:#FAFCFD}

/* الواجهة الترحيبية في الرئيسية */
.hero{position:relative;overflow:hidden;border-radius:22px;padding:28px 30px;color:#fff;background:var(--grad-deep);box-shadow:var(--shadow-lg);margin-bottom:22px}
.hero::before{content:'';position:absolute;inset:0;opacity:.18;background-image:radial-gradient(circle,#fff 2.2px,transparent 2.6px);background-size:26px 26px;mask-image:linear-gradient(90deg,#000,transparent 70%);-webkit-mask-image:linear-gradient(90deg,#000,transparent 70%)}
.hero>*{position:relative}
.hero h1{color:#fff;font-size:26px;padding:0}
.hero h1::before{display:none}
.hero .sub{color:rgba(255,255,255,.85);font-size:15px}
.hero .btn{background:#fff;color:var(--blue-dark);border-color:transparent;font-weight:700}
.hero .btn:hover{background:#F2F8FB}
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-top:20px}
.kpi{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.22);border-radius:14px;padding:12px 16px;backdrop-filter:blur(4px)}
.kpi b{display:block;font-size:28px;font-weight:800;line-height:1.2}
.kpi span{font-size:13px;color:rgba(255,255,255,.88)}

/* شاشة الدخول */
.login-wrap{min-height:100vh;display:grid;grid-template-columns:1.1fr 1fr;background:#fff}
@media (max-width:900px){.login-wrap{grid-template-columns:1fr}.login-art{display:none!important}}
.login-art{position:relative;overflow:hidden;background:var(--grad-deep);color:#fff;display:flex;flex-direction:column;justify-content:center;padding:60px}
.login-art::before{content:'';position:absolute;inset:0;opacity:.16;background-image:radial-gradient(circle,#fff 3px,transparent 3.5px);background-size:34px 34px}
.login-art>*{position:relative}
.login-art h2{color:#fff;font-size:34px;font-weight:800;line-height:1.35;margin:0 0 12px}
.login-art p{color:rgba(255,255,255,.88);font-size:16px;max-width:460px;margin:0 0 26px}
.login-art ul{list-style:none;padding:0;margin:0;display:grid;gap:12px}
.login-art li{display:flex;gap:10px;align-items:center;font-size:15px}
.login-art li::before{content:'';flex:none;width:10px;height:10px;border-radius:50%;background:#fff;box-shadow:0 0 0 4px rgba(255,255,255,.2)}
.login-side{display:grid;place-items:center;padding:30px 20px;background:radial-gradient(600px 300px at 50% 0%,#EDF5F9,transparent)}
.login-card{width:min(400px,100%);display:flex;flex-direction:column;gap:16px}
.login-card img{display:block;height:88px;width:88px;margin:0 auto 6px;border-radius:22px;box-shadow:0 10px 26px rgba(27,85,125,.28)}
.login-card h1{text-align:center;font-size:22px;padding:0}
.login-card h1::before{display:none}
.login-card p{text-align:center;margin:0}
.login-card .btn{padding:11px}

/* محرر المجال */
.editor{display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:18px;align-items:start}
@media (max-width:1100px){.editor{grid-template-columns:1fr}}
.row-card{border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow);overflow:hidden;transition:box-shadow .2s,border-color .2s}
.row-card.active{border-color:var(--blue);box-shadow:0 0 0 4px rgba(47,127,180,.13),var(--shadow)}
.row-card>header{display:flex;align-items:center;gap:8px;padding:11px 16px;background:var(--grad-soft);border-bottom:1px solid var(--line)}
.row-card .num{width:30px;height:30px;border-radius:50%;background:var(--grad);color:#fff;display:grid;place-items:center;font-weight:800;flex:none;box-shadow:0 3px 8px rgba(47,127,180,.3)}
.row-card .title{font-weight:700;color:var(--blue-dark);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.row-card .body{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px;padding:16px}
.row-card .body .wide{grid-column:1/-1}
@media (max-width:700px){.row-card .body{grid-template-columns:1fr}}

/* حالة الحفظ */
.save-status{font-size:13px;font-weight:500;padding:5px 12px;border-radius:999px;position:fixed;left:16px;bottom:16px;z-index:60;pointer-events:none;box-shadow:0 4px 14px rgba(34,63,74,.14);max-width:calc(100vw - 32px)}
.save-status:empty{display:none}
.save-status.ok{background:#E2F4EA;color:var(--ok)}
.save-status.busy{background:#E5F0F9;color:var(--blue)}
.save-status.err{background:#FCE8E6;color:var(--danger)}
.storage-warning{background:#FCE8E6;color:var(--danger);border-bottom:1px solid #F1D0CB;padding:10px 20px;font-weight:500;text-align:center}
.save-state{font-size:12px;color:var(--muted)}
.save-state.err{color:var(--danger)}
.note{border-inline-start:4px solid var(--warn);background:#FFF8E8;padding:11px 14px;border-radius:12px}

/* المساعد الذكي */
.ai-panel{position:sticky;top:92px;display:flex;flex-direction:column;height:calc(100vh - 116px);min-height:480px;padding:0;overflow:hidden;border:none;box-shadow:var(--shadow-lg)}
.ai-head{position:relative;overflow:hidden;padding:14px 16px;background:var(--grad-deep);color:#fff}
.ai-head::after{content:'';position:absolute;inset:0;opacity:.15;background-image:radial-gradient(circle,#fff 1.8px,transparent 2.2px);background-size:18px 18px;mask-image:linear-gradient(270deg,#000,transparent 60%);-webkit-mask-image:linear-gradient(270deg,#000,transparent 60%)}
.ai-head .t{font-weight:800;font-size:16px}
.ai-head .s{font-size:12px;opacity:.88}
.ai-scope{display:flex;gap:6px;padding:10px 12px;border-bottom:1px solid var(--line);flex-wrap:wrap;background:#fff}
.ai-context{padding:7px 14px;background:var(--grad-soft);color:var(--blue-dark);font-weight:500;border-bottom:1px solid var(--line)}
.ai-msgs{flex:1;overflow:auto;padding:14px;display:flex;flex-direction:column;gap:12px;background:#F7FAFC}
.msg{max-width:92%;padding:10px 13px;border-radius:14px;font-size:14px}
.msg.user,.msg .txt{white-space:pre-wrap}
.msg.user{align-self:flex-start;background:var(--grad);color:#fff;border-end-start-radius:4px;box-shadow:0 3px 10px rgba(47,127,180,.22)}
.msg.assistant{align-self:flex-end;width:92%;background:#fff;border:1px solid var(--line);border-end-end-radius:4px;box-shadow:0 2px 8px rgba(27,85,125,.05)}
.msg .qs{margin:8px 0 0;padding-inline-start:18px}
.msg .qs li{margin-bottom:3px}
.sugg{margin-top:10px;border:1px dashed #A9CBDA;border-radius:12px;padding:10px;background:var(--grad-soft)}
.sugg .f{margin-bottom:10px}
.sugg .f b{display:block;font-size:12px;color:var(--blue-dark)}
.sugg .f .v{white-space:pre-wrap;font-size:13px;background:#fff;border-radius:8px;padding:7px 9px;margin:4px 0;border:1px solid var(--line)}
.ai-quick{display:flex;gap:6px;flex-wrap:wrap;padding:10px 12px;border-top:1px solid var(--line);background:#fff}
.ai-input{display:flex;gap:8px;padding:12px;border-top:1px solid var(--line);background:#fff}
.ai-input textarea{min-height:44px;max-height:140px}
.typing{align-self:flex-end;color:var(--muted);font-size:13px}

/* النوافذ والتنبيهات */
.toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);background:var(--ink);color:#fff;padding:11px 20px;border-radius:12px;z-index:100;box-shadow:var(--shadow-lg);max-width:90vw}
.toast.err{background:var(--danger)}
.modal-bg{position:fixed;inset:0;background:rgba(16,40,56,.45);backdrop-filter:blur(3px);display:grid;place-items:center;z-index:50;padding:16px}
.modal{position:relative;background:#fff;border-radius:20px;width:min(620px,100%);max-height:90vh;overflow:auto;padding:24px;box-shadow:var(--shadow-lg)}
.modal::before{content:'';position:absolute;inset:0 0 auto 0;height:5px;background:var(--grad)}
.modal h2{margin-bottom:16px}
.modal .actions{display:flex;gap:8px;justify-content:flex-start;margin-top:18px}
.checks{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px}
.checks label{display:flex;gap:8px;align-items:center;flex-wrap:wrap;border:1px solid #D5E2E9;border-radius:11px;padding:8px 10px;cursor:pointer;transition:all .15s}
.checks label:hover{border-color:var(--blue)}
.checks label:has(input:checked){border-color:var(--blue);background:#F1F7FB}

/* المراحل */
.stage-block{position:relative;overflow:hidden;padding-top:22px}
.stage-block::before{content:'';position:absolute;inset:0 0 auto 0;height:5px;background:var(--grad)}
.stage-head h2{color:var(--blue-dark);font-size:20px}
.stage-tabs{display:flex;gap:10px;flex-wrap:wrap}
.stage-tab{display:flex;flex-direction:column;gap:2px;padding:12px 16px;border:1px solid var(--line);border-radius:14px;background:#fff;text-decoration:none;color:var(--ink);min-width:180px;cursor:pointer;font:inherit;text-align:right;box-shadow:var(--shadow);transition:all .15s}
.stage-tab b{color:var(--blue-dark)}
.stage-tab .small{color:var(--muted)}
.stage-tab:hover{border-color:var(--blue);transform:translateY(-1px)}
.stage-tab.active{background:var(--grad);border-color:transparent;box-shadow:0 6px 16px rgba(47,127,180,.3)}
.stage-tab.active b,.stage-tab.active .small{color:#fff}
.stage-tab.add{justify-content:center;align-items:center;border-style:dashed;color:var(--blue);font-weight:700;box-shadow:none;background:transparent}
.task-card{text-decoration:none;color:inherit;display:block;transition:transform .15s,box-shadow .15s}
.task-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}
.feed{list-style:none;margin:0;padding:0;max-height:340px;overflow:auto}
.feed li{position:relative;padding:8px 18px 8px 0;border-bottom:1px dashed var(--line);font-size:13px}
.feed li::before{content:'';position:absolute;right:2px;top:15px;width:8px;height:8px;border-radius:50%;background:var(--grad)}
iframe.preview{width:100%;height:78vh;border:1px solid var(--line);border-radius:12px;background:#fff}
.dialog-bg{z-index:60}
.dialog{width:min(460px,100%)}
.dialog.danger::before{background:linear-gradient(90deg,#C0392B,#E0685A)}
.dialog-msg{white-space:pre-wrap;color:var(--ink)}
.btn.danger-solid{background:var(--danger);border-color:transparent;color:#fff;font-weight:700}
.btn.danger-solid:hover{filter:brightness(1.07)}
input.invalid,textarea.invalid,select.invalid{border-color:var(--danger)!important;box-shadow:0 0 0 4px rgba(192,57,43,.12)!important}
.btn.magic{background:linear-gradient(90deg,#6A5ACD,#2F7FB4 60%,#48A878);border-color:transparent;color:#fff;font-weight:700;box-shadow:0 4px 14px rgba(106,90,205,.28)}
.btn.magic:hover{filter:brightness(1.07)}
.correction{margin-bottom:16px}
.correction.running{border-inline-start:5px solid var(--blue)}
.correction.done-bar{padding:10px 16px;background:#F2FAF6;border-color:#CBE8D8}
.corr-row{border:1px solid var(--line);border-radius:14px;padding:12px;background:#FBFDFE}
.corr-title{display:flex;align-items:center;gap:8px;font-weight:700;color:var(--blue-dark);margin-bottom:8px}
.corr-title .num{width:26px;height:26px;border-radius:50%;background:var(--grad);color:#fff;display:grid;place-items:center;font-size:13px}
.corr-item{display:flex;gap:10px;align-items:flex-start;padding:8px 4px;border-top:1px dashed var(--line);cursor:pointer}
.corr-item:first-of-type{border-top:none}
.corr-item input{margin-top:5px}
.corr-item>div{flex:1;min-width:0}
.diff{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:6px}
@media (max-width:800px){.diff{grid-template-columns:1fr}}
.diff>div{white-space:pre-wrap;font-size:13px;border-radius:10px;padding:8px 10px;line-height:1.8}
.diff .before{background:#FDF5F4;border:1px solid #F3DAD6}
.diff .after{background:#F2FAF6;border:1px solid #CBE8D8}
.diff del{background:#F8C9C3;color:#8E2A1F;text-decoration:line-through;border-radius:4px}
.diff ins{background:#BFE6CF;color:#1B5E3B;text-decoration:none;border-radius:4px}
.corr-note{font-size:13px;color:#5B4A00;background:#FFF6DA;border-radius:8px;padding:6px 10px;margin-bottom:8px}
.topics{display:grid;gap:6px}
.topic{display:flex;gap:8px;align-items:flex-start;font-size:13px;color:var(--muted)}
.topic span{flex:none;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:#EEF2F4;font-size:12px;font-weight:700}
.topic.ok{color:var(--ink)}
.topic.ok span{background:var(--grad);color:#fff}
.topic.unk span{background:#FFF3D6;color:var(--warn)}
.fact-group{margin-bottom:10px}
.fact-group>b{display:block;color:var(--blue-dark);font-size:13px;margin-bottom:4px}
.fact{display:flex;align-items:center;gap:6px;background:#F7FAFC;border:1px solid var(--line);border-radius:10px;padding:5px 10px;margin-bottom:5px;font-size:14px}
.fact span{flex:1}
.iv-q{margin-top:10px;padding-top:8px;border-top:1px dashed var(--line)}
.iv-opts{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.iv-opts .btn{border-radius:999px}

/* تقرير واقع المدرسة */
.report-card{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 14px;padding:12px 16px;border-radius:12px;background:var(--grad-soft);border:1px solid var(--line)}
.report-card b{color:var(--blue-dark)}
.rp-basic{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px;margin-top:12px}
.rp-basic div{background:var(--teal-soft);border-radius:10px;padding:8px 12px;display:flex;flex-direction:column;gap:2px}
.rp-list textarea{min-height:150px;line-height:1.8}
.rp-prio{display:grid;grid-template-columns:140px 1fr;gap:8px 14px;align-items:center;padding:12px 0;border-top:1px solid var(--line)}
.rp-prio:first-of-type{border-top:0}
.rp-prio b{color:var(--blue-dark)}
.rp-prio textarea{grid-column:1/-1;width:100%}
.rp-checks{border-inline-start:4px solid var(--warn)}
.rp-checks.ok{border-inline-start-color:var(--ok)}
.rp-checks ul{margin:8px 0 0;padding-inline-start:20px}
.rp-checks li{margin:3px 0}
.rp-checks li.warn::marker{color:var(--warn)}
.rp-checks li.info{color:var(--muted)}
@media (max-width:700px){.rp-prio{grid-template-columns:1fr}}
.ai-tools{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px;background:linear-gradient(135deg,#F5F2FF 0%,#EEF6FB 100%)}
.ai-tool{display:flex;align-items:center;gap:14px;justify-content:space-between;background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px 14px}
.ai-tool b{font-size:15px}
.ai-tool .btn{flex-shrink:0}
@media (max-width:900px){.ai-tools{grid-template-columns:1fr}}
@media (max-width:520px){.ai-tool{flex-direction:column;align-items:stretch}}

/* ===================== التجاوب مع كل أحجام الشاشات ===================== */
/* الشبكات لا تفرض عرضًا أكبر من الشاشة، وعناصرها تنكمش بدل أن تدفع الصفحة */
.grid.cols-2{grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr))}
.grid.cols-4{grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr))}
.checks{grid-template-columns:repeat(auto-fill,minmax(min(200px,100%),1fr))}
.kpis{grid-template-columns:repeat(auto-fit,minmax(min(170px,100%),1fr))}
.editor>*,.grid>*,.stack>*,.row>*{min-width:0}
input,select,textarea{max-width:100%}
img{max-width:100%}
.msg,.sugg .v,.corr-item>div,.diff>div,.fact span{overflow-wrap:anywhere}

/* الشاشات الكبيرة جدًا */
@media (min-width:1700px){main{max-width:1600px}.editor{grid-template-columns:minmax(0,1fr) 460px}}

/* الحواسيب الصغيرة والأجهزة اللوحية: المحرر عمود واحد والمساعد تحته بارتفاع مناسب */
@media (max-width:1100px){
  .editor{grid-template-columns:minmax(0,1fr)}
  .ai-panel{position:relative;top:auto;height:min(78vh,680px);min-height:420px}
}

/* الجداول: تمرير أفقي داخل الجدول بدل خروج الصفحة عن الشاشة */
@media (max-width:860px){
  table.list{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}
  table.list th,table.list td{padding:9px 8px;min-width:90px}
}

label.row{flex-wrap:nowrap;align-items:flex-start}
label.row input[type=checkbox],label.row input[type=radio]{flex:none;margin-top:5px}

/* الشريط العلوي في الأجهزة اللوحية والهواتف: الروابط في سطر مستقل قابل للتمرير */
@media (max-width:1000px){
  .topbar{flex-wrap:wrap;gap:6px 10px;padding:8px 14px}
  .user{margin-inline-start:auto;gap:6px}
  nav{order:3;flex:1 0 100%;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;gap:2px;margin:0 -14px;padding:0 14px 2px}
  nav::-webkit-scrollbar{display:none}
  nav a{white-space:nowrap;padding:6px 12px;font-size:14px}
  .save-status{font-size:12px;padding:3px 10px;left:10px;bottom:10px}
  .save-status:empty{display:none}
}

/* الأجهزة اللوحية الصغيرة والهواتف */
@media (max-width:760px){
  .topbar{padding:8px 12px}
  nav{margin:0 -12px;padding:0 12px 2px}
  .brand{gap:8px}
  .brand img{height:36px;width:36px;border-radius:10px}
  .brand-title{font-size:14px}
  .brand-sub{display:none}
  .user .name,.user .badge{display:none}
  main{padding:16px 12px 70px}
  h1{font-size:20px}
  h2{font-size:17px}
  .page-head{align-items:stretch;margin-bottom:14px}
  .page-head>div:first-child{width:100%}
  .page-head>.row{width:100%}
  .btn{padding:8px 12px;font-size:14px}
  .card{padding:14px;border-radius:14px}
  .hero{padding:20px 16px;border-radius:18px}
  .hero h1{font-size:21px}
  .kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .modal-bg{padding:8px}
  .modal{padding:18px 16px;border-radius:16px;max-height:94vh}
  .row-card>header{flex-wrap:wrap;padding:10px 12px}
  .row-card .title{white-space:normal;flex-basis:calc(100% - 40px)}
  .row-card .body{padding:12px;grid-template-columns:1fr}
  .stage-tab{min-width:0;flex:1 1 150px}
  .rp-basic{grid-template-columns:repeat(2,minmax(0,1fr))}
  .seg label{padding:4px 11px;font-size:13px}
  .report-card{padding:12px}
  .report-card>div:first-child{flex-basis:100%}
  .diff{grid-template-columns:1fr}
  iframe.preview{height:72vh}
  .toast{bottom:14px;max-width:calc(100vw - 24px)}
  .ai-panel{height:min(72vh,620px)}
  .login-side{padding:24px 14px}
}

/* الهواتف الصغيرة */
@media (max-width:420px){
  .page-head>.row .btn{flex:1 1 auto}
  .rp-basic{grid-template-columns:1fr}
  .kpis{grid-template-columns:1fr 1fr;gap:8px}
  .stage-tab{flex-basis:100%}
  .topbar{padding:8px 10px;column-gap:6px}
  nav{margin:0 -10px;padding:0 10px 2px}
  .brand{gap:6px}
  .brand-title{font-size:12.5px}
  .brand img{height:32px;width:32px}
  .user .btn{padding:5px 9px;font-size:13px}
}
@media (max-width:350px){.brand-title{display:none}}

/* مشاركة الخطة برابط */
.share-kind{margin-top:12px}
.share-help{margin:10px 0 0}
.share-form{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) auto auto;gap:10px;align-items:end;margin-top:12px}
.share-form select:disabled{opacity:.6}
.share-form .share-pdf[hidden]{display:none}
.share-form .share-pdf{padding-bottom:10px;white-space:nowrap}
.share-url{font-size:12.5px;color:var(--blue);word-break:break-all;margin:4px 0 2px;text-align:left}
.share-actions{white-space:nowrap;text-align:left!important}
.share-actions .btn{margin:2px 0}
tr.share-new td{background:#EAF6F0!important}
@media (max-width:700px){
  .share-form{grid-template-columns:minmax(0,1fr)}
  .share-form .share-pdf{padding-bottom:0}
  .share-actions{white-space:normal}
}

/* متابعة تنفيذ الخطة */
.exec-card{display:grid;gap:14px}
.exec-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}
.exec-tiles>div{border:1px solid var(--line);border-radius:12px;padding:10px 14px;background:#FAFCFD;display:grid;gap:4px}
.exec-tiles b{font-size:24px;font-weight:800;color:var(--blue-dark);line-height:1.2}
.exec-tiles b small{font-size:14px;color:var(--muted);font-weight:600}
.exec-tiles span{font-size:13px;color:var(--muted)}
.exec-tiles .warn{border-color:#F1D0CB;background:#FDF3F1}.exec-tiles .warn b{color:var(--danger)}
.progress.exec>div{background:linear-gradient(90deg,#2F7FB4,#48A878)}
.exec-stages{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:12px}
.exec-stage{border:1px solid var(--line);border-radius:12px;padding:10px 12px;display:grid;gap:6px}
.exec-stage>b{color:var(--teal-dark)}
.exec-line{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(60px,1fr) 42px auto;gap:8px;align-items:center;text-decoration:none;color:var(--ink);padding:4px 6px;border-radius:8px;font-size:14px}
.exec-line:hover{background:var(--teal-soft)}
.exec-line>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.exec-pct{font-weight:700;color:var(--blue-dark);text-align:left}
.exec-stalled{border:1px solid #F1D0CB;background:#FDF6F5;border-radius:12px;padding:10px 12px;display:grid;gap:4px}
.exec-stalled a{display:grid;text-decoration:none;color:var(--ink);padding:4px 0;border-top:1px dashed #F1D0CB}
.exec-filter button{border:1px solid #D5E2E9;border-radius:999px;padding:5px 14px;background:#fff;cursor:pointer;font:inherit;font-size:14px}
.exec-filter button i{font-style:normal;color:var(--muted);font-size:12px}
.exec-filter button.on{background:var(--grad);border-color:transparent;color:#fff}.exec-filter button.on i{color:#fff}
.exec-row header .badge{flex:none}
.exec-head-pct{display:flex;align-items:center;gap:8px;width:150px;flex:none;font-weight:700;color:var(--blue-dark);font-size:14px}
.exec-head-pct .progress{flex:1}
.exec-body{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,1fr);gap:16px;padding:14px 16px}
.exec-checks{display:grid;gap:2px;align-content:start}
.exec-h{font-weight:700;color:var(--teal-dark);margin:8px 0 2px;font-size:14px}
.exec-item{display:flex;gap:10px;align-items:flex-start;padding:6px 8px;border-radius:8px;cursor:pointer;line-height:1.7;font-size:14.5px}
.exec-item:hover{background:#F5F9FB}
.exec-item input{width:18px;height:18px;margin-top:4px;flex:none;accent-color:var(--green-dark)}
.exec-item.on span{color:var(--muted);text-decoration:line-through;text-decoration-color:rgba(44,138,90,.5)}
.exec-side{display:grid;gap:12px;align-content:start;border-inline-start:1px solid var(--line);padding-inline-start:16px}
.exec-ev{list-style:none;margin:6px 0;padding:0;display:grid;gap:6px}
.exec-ev li{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;padding:6px 8px;border:1px solid var(--line);border-radius:10px;background:#FAFCFD}
.exec-ev li a{font-weight:600;color:var(--blue-dark);text-decoration:none;overflow-wrap:anywhere}
.exec-ev li .btn{margin-inline-start:auto;padding:2px 8px}
.exec-add{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:4px}
.exec-stall{color:var(--danger)}
@media (max-width:900px){
  .exec-body{grid-template-columns:1fr}
  .exec-side{border-inline-start:0;padding-inline-start:0;border-top:1px solid var(--line);padding-top:12px}
  .exec-head-pct{width:110px}
  .exec-line{grid-template-columns:minmax(0,1fr) 70px 40px}
  .exec-line>span:last-child{display:none}
}

/* ---------- الخطة من تقرير الأداء المدرسي (منصة تميز) ---------- */
.ev-hero p{margin:0;line-height:1.9}
.ev-hero{margin-bottom:16px;background:var(--grad-soft)}
.ev-title{outline:none;border-radius:8px}
.ev-title:focus{background:#fff;box-shadow:0 0 0 2px #B9D3E0}
.ev-tabs{display:flex;gap:6px;overflow-x:auto;margin:0 0 16px;padding-bottom:4px;scrollbar-width:thin}
.ev-tabs a{flex:none;padding:8px 16px;border-radius:999px;border:1px solid var(--line);background:#fff;color:var(--ink);text-decoration:none;font-weight:500;white-space:nowrap}
.ev-tabs a.active{background:var(--grad);color:#fff;border-color:transparent;font-weight:700}
.ev-tabs a small{opacity:.75}
.ev-lv{display:inline-block;padding:2px 10px;border-radius:999px;font-size:12px;font-weight:700;color:var(--c,#5D707C);background:var(--s,#EEF2F5);white-space:nowrap}
.ev-bar{display:flex;justify-content:flex-start;width:100%;height:10px;border-radius:6px;background:#E7EFF4;overflow:hidden;vertical-align:middle}
.ev-bar i{display:block;height:100%;border-radius:6px}
.ev-br{display:grid;grid-template-columns:minmax(120px,38%) 1fr 56px 78px;gap:10px;align-items:center;margin:7px 0;font-size:14px}
.ev-br b{text-align:left}
.ev-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}
.ev-tile{background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px 14px;position:relative;overflow:hidden;box-shadow:var(--shadow)}
.ev-tile:before{content:'';position:absolute;top:0;right:0;left:0;height:4px;background:var(--c,#2B7F98)}
.ev-tile span{display:block;color:var(--muted);font-size:13px}
.ev-tile b{display:block;font-size:26px;color:var(--blue-dark);line-height:1.3}
.ev-tile small{color:var(--muted)}
.ev-dist{display:flex;height:30px;border-radius:9px;overflow:hidden;margin:6px 0}
.ev-dist i{display:flex;align-items:center;justify-content:center;color:#fff;font-style:normal;font-weight:800;min-width:0}
.ev-legend{display:flex;gap:14px;flex-wrap:wrap;font-size:13px;color:var(--muted)}
.ev-legend span:before{content:'';display:inline-block;width:11px;height:11px;border-radius:3px;background:var(--c);margin-left:5px;vertical-align:-1px}
.ev-cls{margin-top:16px;border-right:6px solid #2F7FB4}
.ev-cls b{font-size:17px;color:var(--blue-dark)}
.ev-cls-intensive{border-right-color:#C2410C}.ev-cls-innovate{border-right-color:#2F8F6C}
.ev-t td,.ev-t th{padding:8px;font-size:14px;vertical-align:top}
.ev-t td:first-child b{white-space:nowrap;direction:ltr;unicode-bidi:isolate}
.ev-up{color:#2F8F6C;font-weight:700}.ev-down{color:#C2410C;font-weight:700}
.ev-scroll{overflow-x:auto}
.ev-ind textarea,.ev-progs textarea,.ev-outs textarea{width:100%;min-width:140px;resize:vertical;border:1px solid var(--line);border-radius:8px;padding:6px;font:inherit;font-size:14px}
.ev-num{width:80px;border:1px solid var(--line);border-radius:8px;padding:6px;font:inherit}
.ev-num.changed{background:#FFF6E0;border-color:#E5C27A}
.ev-drop{border:2px dashed #B9D3E0;border-radius:14px;padding:26px 16px;text-align:center;cursor:pointer;display:flex;flex-direction:column;gap:6px;align-items:center;transition:all .15s;background:#FAFCFD}
.ev-drop:hover,.ev-drop.over{border-color:var(--blue);background:#EEF6FB}
.ev-drop-ic{font-size:34px}
.ev-job{display:flex;align-items:center;gap:10px;margin-top:10px}
.note.ok{background:#EAF6EF;border-color:#BFE3CC;margin-top:10px}
.note.err{background:#FDF1EF;border-color:#F1D0CB;color:var(--danger);margin-top:10px}
.ev-spin{width:16px;height:16px;border:3px solid #CFE0EA;border-top-color:var(--blue);border-radius:50%;animation:ev-spin .8s linear infinite;flex:none}
@keyframes ev-spin{to{transform:rotate(360deg)}}
.ev-warn{margin:8px 0 0;padding-right:18px;color:var(--warn);font-size:13px}
.ev-steps{margin:0;padding-right:20px;line-height:1.9}
.ev-dom{margin-top:16px}
.ev-ic{border:1px solid var(--line);border-radius:12px;margin:8px 0;background:#fff}
.ev-ic summary{cursor:pointer;padding:10px 12px;display:flex;gap:8px;align-items:center;flex-wrap:wrap;list-style:none}
.ev-ic summary::-webkit-details-marker{display:none}
.ev-ic[open] summary{border-bottom:1px solid var(--line);background:#F7FAFC;border-radius:12px 12px 0 0}
.ev-sum-r{margin-inline-start:auto;display:flex;gap:6px;align-items:center;font-size:13px;color:var(--muted)}
.ev-sum-r .progress{width:90px}
.ev-ic-body{padding:12px}
.ev-ic-body textarea{width:100%;resize:vertical}
.ev-inc{display:inline-flex;gap:4px;align-items:center;font-size:13px;background:#EEF6FB;border-radius:8px;padding:2px 8px}
.ev-fu{border-top:1px solid var(--line);padding:12px 0}
.ev-fu-h{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:6px}
.ev-fu select,.ev-fu input,.ev-mem input,.ev-nf select,.ev-sc{border:1px solid var(--line);border-radius:8px;padding:6px;font:inherit;background:#fff}
.ev-mem input{width:100%}
.ev-nf{margin:8px 0;padding:12px}
.ev-nf .row{gap:10px;margin:4px 0}
.ev-survey{margin:6px 0}
.ev-survey input{border:1px solid var(--line);border-radius:8px;padding:6px;font:inherit}
.ev-preview-modal{width:min(1100px,96vw)!important;max-width:none!important;padding:12px!important}
.ev-preview-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.ev-preview{width:100%;height:78vh;border:1px solid var(--line);border-radius:10px;background:#E9EEF2}
@media (max-width:640px){
  .ev-br{grid-template-columns:1fr 50px 70px}
  .ev-br .ev-bar{grid-column:1/-1;order:5}
  .ev-tile b{font-size:21px}
  .ev-sum-r{margin-inline-start:0;width:100%}
}

/* ---------- الخطة التشغيلية ١٤٤٨ ---------- */
.op-types{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}
.op-type{display:flex;flex-direction:column;gap:4px;border:1px solid var(--line);border-radius:12px;padding:10px 12px;cursor:pointer;background:#fff}
.op-type input{display:none}
.op-type.on{border-color:transparent;background:var(--grad-soft);box-shadow:0 0 0 2px #2F7FB4}
.op-type.off{opacity:.55;cursor:not-allowed}
.op-st{display:inline-block;color:#fff;border-radius:999px;padding:1px 10px;font-size:12px;font-weight:700;white-space:nowrap}
.op-chk{display:flex;gap:6px;align-items:flex-start;margin:6px 0;line-height:1.6}
.op-chk input{margin-top:5px}
.op-prog{border:1px solid var(--line);border-radius:10px;padding:8px 10px;margin:8px 0;background:#FBFCFD}
.op-prog.on{border-color:#9FD3BD;background:#F3FBF7}
.op-prog textarea{width:100%;border:1px solid var(--line);border-radius:8px;padding:6px;font:inherit;font-size:14px}
.op-link{display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.op-link img{border:1px solid var(--line);border-radius:10px;background:#fff}
.op-lib{max-height:60vh;overflow:auto;margin-top:8px}
.op-libi{border-bottom:1px solid var(--line);padding:8px 0}
.op-fu select,.op-fu input,.op-rev textarea,.op-add,#lib-q,#op-prog{border:1px solid var(--line);border-radius:8px;padding:6px;font:inherit}
.op-rev textarea{width:100%;min-width:140px}
.ev-tile.on{box-shadow:0 0 0 2px var(--c)}

/* ===== المنصة التجارية ===== */
.center{text-align:center}
.sub-banner{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:center;padding:8px 16px;background:#FFF7E0;border-bottom:1px solid #F3E2B3;font-size:14px}
.sub-banner.bad{background:#FDF1EF;border-color:#F1D0CB;color:#8E2A1F}.sub-banner .sep{width:1px;height:18px;background:#E5D3A8}
.sa-landing{max-width:1180px;margin:0 auto;padding:0 16px 30px}
.sa-top{display:flex;align-items:center;gap:10px;padding:14px 0;flex-wrap:wrap}.sa-top .brand{display:flex;align-items:center;gap:8px}.sa-top .brand img{height:38px}.sa-top .brand b{font-size:17px;color:var(--blue-dark)}
.sa-hero{background:var(--grad-deep);color:#fff;border-radius:22px;padding:56px 24px;text-align:center;box-shadow:var(--shadow-lg)}
.sa-hero h1{color:#fff;font-size:34px;margin-bottom:10px}.sa-hero p{font-size:18px;opacity:.93;max-width:720px;margin:0 auto 22px}
.btn.lg{padding:12px 26px;font-size:17px}.sa-hero .btn.primary{background:#fff;color:var(--blue-dark)}
.sa-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin:26px 0}
.sa-feat{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;box-shadow:var(--shadow)}.sa-feat span{font-size:28px}.sa-feat h3{margin:6px 0;color:var(--blue-dark)}.sa-feat p{margin:0;color:var(--muted);font-size:14.5px}
.sa-pricing{margin:30px 0}.sa-pricing h2{text-align:center;font-size:24px}
.sa-tiers{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin:16px 0}
.sa-tier{position:relative;background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px;display:flex;flex-direction:column;gap:6px;box-shadow:var(--shadow)}
.sa-tier.hl{border:2px solid var(--blue);box-shadow:var(--shadow-lg)}.sa-ribbon{position:absolute;top:-11px;inset-inline-start:16px;background:var(--grad);color:#fff;border-radius:999px;padding:2px 12px;font-size:12px;font-weight:700}
.sa-tier h3{margin:0;color:var(--blue-dark)}.sa-price b{font-size:26px;color:var(--ink)}.sa-price span{color:var(--muted);margin-inline-start:4px}
.sa-tier ul{list-style:none;padding:0;margin:6px 0 10px;flex:1}.sa-tier li{padding:3px 0;font-size:14px}.sa-tier li::before{content:'✓ ';color:var(--ok);font-weight:700}
.sa-foot{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;padding:24px 0;border-top:1px solid var(--line);margin-top:20px}.sa-foot div{flex-basis:100%;text-align:center}
.sa-msg{padding:12px 16px;border-radius:12px;margin-bottom:14px;background:#EDF5F7;border:1px solid var(--line)}.sa-msg.ok{background:#EAF6EF;border-color:#BFE3CC}.sa-msg.bad{background:#FDF1EF;border-color:#F1D0CB}
.sa-cur{display:flex;gap:8px;align-items:center;font-size:17px;margin-bottom:6px}
.sa-use{display:grid;grid-template-columns:1fr auto;gap:2px 10px;margin:8px 0}.sa-use .progress,.sa-use .small{grid-column:1/-1}
.sa-tabs{margin-bottom:14px}
.sa-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}
.sa-kpi{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px;border-top:4px solid var(--blue);box-shadow:var(--shadow)}.sa-kpi b{display:block;font-size:22px}.sa-kpi span{color:var(--muted);font-size:13px}
.sa-kpi.ok{border-top-color:var(--ok)}.sa-kpi.warn{border-top-color:var(--warn)}.sa-kpi.bad{border-top-color:var(--danger)}
.sa-chart{width:100%;height:auto;display:block}
.sa-donut{display:flex;gap:18px;align-items:center;flex-wrap:wrap}.sa-donut svg{width:150px;height:150px}.sa-donut ul{list-style:none;padding:0;margin:0}.sa-donut li{display:flex;gap:6px;align-items:center;padding:3px 0}.sa-donut i{width:12px;height:12px;border-radius:3px;display:inline-block}
.sa-filter{gap:8px;margin-bottom:10px;flex-wrap:wrap}.sa-filter input{min-width:220px;flex:1}
.sa-save{position:sticky;bottom:0;background:rgba(243,247,249,.95);padding:10px 0;display:flex;gap:8px;flex-wrap:wrap}
@media (max-width:600px){.sa-hero{padding:34px 16px}.sa-hero h1{font-size:25px}.sa-filter input{min-width:0}}
/* لوحة التحليلات */
.an-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap;margin-bottom:14px}.an-ins{margin:0;padding-inline-start:20px;line-height:1.9}
.an-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.an-grid>.card{grid-column:1/-1;min-width:0}.an-grid>.card.half{grid-column:auto}
@media (max-width:900px){.an-grid>.card.half{grid-column:1/-1}}
/* محرر المستندات */
.de-root{position:fixed;inset:0;z-index:60;background:#e9eef1;display:flex;flex-direction:column}
.de-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px 12px;background:#fff;border-bottom:1px solid var(--line);box-shadow:var(--shadow)}
.de-tools{display:flex;gap:4px;align-items:center;flex-wrap:wrap}.de-tools select{width:auto!important;padding:0 6px}.de-tools button,.de-tools select,.de-tools label{border:1px solid var(--line);background:#fff;border-radius:8px;min-width:32px;height:32px;padding:0 8px;cursor:pointer;font:inherit;display:inline-flex;align-items:center;justify-content:center}
.de-tools label input{width:0;height:0;opacity:0;position:absolute}.de-tools i{width:1px;height:22px;background:var(--line);margin:0 3px}.de-tools button:hover{background:var(--teal-soft)}
.de-note{padding:4px 14px;color:var(--muted)}.de-frame{flex:1;border:0;background:#fff;width:min(100%,1180px);margin:0 auto 10px;box-shadow:var(--shadow-lg);border-radius:6px}
.de-state{color:var(--muted)}

/* مساعد المنصة العائم (في كل الصفحات) */
.pa-fab{position:fixed;inset-inline-start:18px;bottom:18px;z-index:45;border:0;border-radius:999px;padding:12px 18px;font:inherit;font-weight:800;color:#fff;background:var(--grad-deep);box-shadow:var(--shadow-lg);cursor:pointer}
.pa-drawer{position:fixed;inset-inline-start:18px;bottom:76px;z-index:46;width:min(420px,calc(100vw - 32px));height:min(620px,calc(100vh - 110px));display:flex;flex-direction:column;background:#fff;border-radius:18px;box-shadow:var(--shadow-lg);overflow:hidden;border:1px solid var(--line)}
.pa-drawer[hidden]{display:none}
.pa-drawer .ai-msgs{min-height:0}
.pa-drawer form{display:flex;gap:8px;padding:10px;border-top:1px solid var(--line);background:#fff}
.pa-drawer textarea{flex:1;min-height:44px;max-height:120px;resize:vertical;border:1px solid var(--line);border-radius:12px;padding:8px 10px;font:inherit}
.pa-drawer .pa-tools{display:flex;gap:6px;align-items:center;padding:8px 12px;border-bottom:1px solid var(--line);font-size:12px;color:var(--muted)}
.pa-drawer .pa-tools .spacer{flex:1}
.msg.blocked{border-color:#F1D0CB;background:#FDF6F4}
@media (max-width:600px){.pa-fab{inset-inline-start:12px;bottom:12px;padding:10px 14px}.pa-drawer{inset-inline-start:16px;bottom:64px;height:calc(100vh - 140px)}}
@media print{.pa-fab,.pa-drawer{display:none!important}}
.pa-quick{display:flex;gap:6px;flex-wrap:wrap;padding:8px 12px;border-bottom:1px solid var(--line);background:var(--grad-soft)}
.pa-quick:empty{display:none}
.pa-edits .f{display:block;cursor:pointer}
.pa-edits .f input{vertical-align:middle}
.sa-save{padding-inline-start:190px}
@media (max-width:600px){.sa-save{padding-inline-start:0;padding-bottom:58px}}
/* الصفحة الرئيسية */
.home-grid{align-items:start}
.home-plans td{vertical-align:top}
.home-plans .progress{margin:4px 0 2px}

.grid.cols-3{grid-template-columns:repeat(auto-fit,minmax(min(340px,100%),1fr))}
.sa-h{margin:18px 0 8px;font-size:15px;color:var(--blue-dark)}
@media (min-width:1000px){.sa-kpis{grid-template-columns:repeat(4,1fr)}}

/* ================= الخطة التشغيلية — التصميم الجديد ================= */
.opx-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:1.1fr 1fr;gap:24px;align-items:center;padding:28px;border-radius:22px;background:var(--grad-deep);color:#fff;box-shadow:var(--shadow-lg);margin-bottom:22px}
.opx-hero::after{content:'';position:absolute;inset:0;opacity:.12;background-image:radial-gradient(circle,#fff 1.6px,transparent 2px);background-size:20px 20px;pointer-events:none}
.opx-hero .crumbs,.opx-hero .crumbs a{color:rgba(255,255,255,.8)}
.opx-hero h1{margin:6px 0 8px;font-size:28px}
.opx-hero p{margin:0 0 14px;opacity:.92;line-height:1.8}
.opx-hero .btn{background:#fff;color:var(--blue-dark);border:0;font-weight:800}
.opx-flow{list-style:none;margin:0;padding:0;display:grid;gap:8px;position:relative;z-index:1}
.opx-flow li{display:flex;gap:10px;align-items:center;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);border-radius:14px;padding:9px 12px}
.opx-flow-n{width:34px;height:34px;flex:none;display:grid;place-items:center;border-radius:10px;background:rgba(255,255,255,.18);font-size:18px}
.opx-flow b{display:block;font-size:14px}.opx-flow small{opacity:.85;font-size:12px}
.opx-sec-head{display:flex;align-items:baseline;gap:12px;margin:4px 2px 12px}.opx-sec-head h2{margin:0}
.opx-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(320px,100%),1fr));gap:16px}
.opx-pcard{background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:12px;transition:transform .15s,box-shadow .15s}
.opx-pcard:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}
.opx-pcard-top{display:flex;gap:14px;align-items:center}
.opx-pcard-t{display:flex;flex-direction:column;gap:4px;min-width:0}.opx-pcard-t a{color:var(--ink);text-decoration:none;font-size:16px}
.opx-pcard-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;background:#F6F9FB;border-radius:12px;padding:10px}
.opx-pcard-stats div{text-align:center}.opx-pcard-stats b{display:block;font-size:20px;color:var(--blue-dark)}.opx-pcard-stats b.bad{color:var(--danger)}.opx-pcard-stats span{font-size:12px;color:var(--muted)}
.opx-pcard-foot{display:flex;align-items:center;gap:8px}
.opx-ring{flex:none}
.opx-chips{display:flex;gap:6px;flex-wrap:wrap}
.opx-chip{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:999px;background:#EEF3F6;color:#36505F;font-size:12px;font-weight:600;line-height:1.6}
.opx-chip.ok{background:#E3F4EC;color:#1E6B4E}.opx-chip.warn{background:#FFF3DC;color:#8A5A00}
.opx-chip.light{background:rgba(255,255,255,.16);color:#fff;border:1px solid rgba(255,255,255,.22)}.opx-chip.okl{background:#7FE0B5;color:#0E3B2A}
.opx-empty{text-align:center;padding:34px 18px}.opx-empty-ic{font-size:42px;margin-bottom:6px}.opx-empty h3{margin:4px 0}
/* رأس الخطة */
.opx-head{position:relative;overflow:hidden;display:flex;gap:20px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:22px 24px;border-radius:22px;background:var(--grad-deep);color:#fff;box-shadow:var(--shadow-lg);margin-bottom:14px}
.opx-head::after{content:'';position:absolute;inset:0;opacity:.1;background-image:radial-gradient(circle,#fff 1.6px,transparent 2px);background-size:20px 20px;pointer-events:none}
.opx-head>*{position:relative;z-index:1}
.opx-head .crumbs,.opx-head .crumbs a{color:rgba(255,255,255,.8)}
.opx-head h1{margin:4px 0 10px;font-size:26px;color:#fff;outline:none;border-radius:8px}
.opx-head h1:focus{background:rgba(255,255,255,.12);padding:0 8px}
.opx-head-main{flex:1;min-width:260px}
.opx-head-actions{margin-top:12px;gap:8px;flex-wrap:wrap}
.opx-head-actions .btn{background:rgba(255,255,255,.14);color:#fff;border:1px solid rgba(255,255,255,.3)}
.opx-head-actions .btn:hover{background:rgba(255,255,255,.24)}
.opx-head-stats{display:flex;gap:16px;align-items:center;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);border-radius:18px;padding:12px 16px}
.opx-hs{display:grid;grid-template-columns:repeat(2,auto);gap:8px 22px}.opx-hs b{display:block;font-size:22px}.opx-hs span{font-size:12px;opacity:.85}
/* شريط الأقسام */
.opx-nav{position:sticky;top:64px;z-index:15;display:flex;gap:10px;flex-wrap:wrap;justify-content:space-between;background:rgba(255,255,255,.94);backdrop-filter:blur(8px);border:1px solid var(--line);border-radius:16px;padding:8px;margin-bottom:16px;box-shadow:var(--shadow)}
.opx-nav-g{display:flex;align-items:center;gap:4px;flex-wrap:wrap}
.opx-nav-l{font-size:11px;font-weight:800;color:var(--muted);padding:0 6px;letter-spacing:.3px}
.opx-nav a{display:inline-flex;align-items:center;gap:7px;padding:7px 12px;border-radius:12px;color:var(--ink);text-decoration:none;font-weight:600;font-size:14px;white-space:nowrap}
.opx-nav a:hover{background:#F1F6F9}
.opx-nav a i{font-style:normal;width:24px;height:24px;display:grid;place-items:center;border-radius:50%;background:#EEF3F6;color:#557081;font-size:12px;font-weight:800}
.opx-nav a.done i{background:#DFF3EA;color:#1E6B4E}
.opx-nav a.active{background:var(--grad);color:#fff}.opx-nav a.active i{background:rgba(255,255,255,.25);color:#fff}
.opx-nav-sep{width:14px;height:2px;background:var(--line);border-radius:2px}
.opx-body>.card,.opx-body>.grid,.opx-body>section{margin-bottom:16px}
.opx-pager{display:flex;justify-content:space-between;margin-top:6px}
/* بطاقات الأقسام */
.opx-card{border-radius:18px}
.opx-card-h{display:flex;gap:12px;align-items:flex-start;margin-bottom:14px}
.opx-card-h h2{margin:0;font-size:18px}.opx-card-h p{margin:2px 0 0}
.opx-num{flex:none;width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:var(--grad);color:#fff;font-weight:800}
.opx-num.big{width:42px;height:42px;font-size:18px;border-radius:13px}
.opx-intro{display:flex;flex-direction:column;gap:2px;background:linear-gradient(135deg,#EEF6FB,#F1FAF5);border:1px solid #D7E8F0;border-radius:16px;padding:12px 16px;margin-bottom:16px}
.opx-intro b{color:var(--blue-dark)}.opx-intro span{font-size:13.5px;color:#46606F;line-height:1.8}
.opx-intro.warn{background:#FFF8E8;border-color:#F3DFB0}
.opx-more{margin-top:10px}.opx-more summary{cursor:pointer;font-weight:700;color:var(--blue-dark);font-size:13.5px}
/* المرحلة */
.opx-types{grid-template-columns:repeat(auto-fill,minmax(min(230px,100%),1fr))!important;gap:12px!important}
.opx-types .op-type{position:relative;padding:14px;border-radius:16px;gap:6px;background:#fff;transition:box-shadow .15s,border-color .15s}
.opx-types .op-type:hover:not(.off){border-color:#9CC3D8;box-shadow:var(--shadow)}
.opx-type-ic{font-size:26px}
.opx-type-on{position:absolute;top:10px;inset-inline-start:10px;background:var(--grad);color:#fff;border-radius:999px;padding:1px 10px;font-size:11px;font-weight:800}
.opx-diag{display:grid;grid-template-columns:1fr 1.2fr;gap:18px}
.opx-drop{min-height:190px;justify-content:center;border-radius:18px}
.opx-manual{background:#F7FAFC;border:1px solid var(--line);border-radius:16px;padding:14px}
.opx-levels{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(170px,100%),1fr));gap:12px;margin-top:16px}
.opx-lvl{background:#fff;border:1px solid var(--line);border-radius:16px;padding:12px 14px;display:flex;flex-direction:column;gap:6px;border-top:4px solid var(--c)}
.opx-lvl.weak{box-shadow:0 0 0 2px var(--c)}
.opx-lvl span{font-size:13px;color:var(--muted)}.opx-lvl b{font-size:26px;color:var(--ink)}.opx-lvl em{font-style:normal;font-size:12px;font-weight:800;color:var(--c)}
.opx-bar{height:8px;background:#EDF2F5;border-radius:99px;overflow:hidden}.opx-bar i{display:block;height:100%;background:var(--c,#2F8F6C);border-radius:99px}
/* SWOT */
.opx-swot{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.opx-q{border-top:5px solid var(--c);border-radius:18px;display:flex;flex-direction:column}
.opx-q-h{display:flex;gap:10px;align-items:center;margin-bottom:10px}.opx-q-h>span{font-size:24px}.opx-q-h h2{margin:0;color:var(--c);font-size:18px}.opx-q-h small{color:var(--muted)}
.opx-q-n{margin-inline-start:auto;min-width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:var(--c);color:#fff}
.opx-q-list{display:flex;flex-direction:column;gap:6px;flex:1}
.opx-pick{display:flex;gap:8px;align-items:flex-start;padding:8px 10px;border:1px solid var(--line);border-radius:12px;cursor:pointer;line-height:1.7;font-size:14px;background:#FBFCFD}
.opx-pick input{margin-top:6px;accent-color:var(--c)}
.opx-pick span{flex:1}.opx-pick em{font-style:normal;font-size:11px;color:var(--muted);white-space:nowrap;background:#EEF3F6;border-radius:99px;padding:0 8px;align-self:center}.opx-pick em.rep{background:#FFF3DC;color:#8A5A00}
.opx-pick.on{border-color:var(--c);background:color-mix(in srgb,var(--c) 7%,#fff)}
.opx-pick.own{cursor:default}
.opx-q-add{display:flex;gap:8px;margin-top:10px}.opx-q-add input{flex:1;border:1px solid var(--line);border-radius:10px;padding:8px 10px;font:inherit}
/* الأهداف والبرامج */
.opx-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr));gap:12px;margin-bottom:16px}
.opx-stats>div{background:#fff;border:1px solid var(--line);border-radius:16px;padding:12px 14px;box-shadow:var(--shadow)}
.opx-stats b{font-size:26px;color:var(--blue-dark)}.opx-stats span{display:block;color:var(--muted);font-size:13px;margin-bottom:6px}
.opx-goal{border-radius:18px}
.opx-goal-h{display:flex;gap:12px;align-items:center;margin-bottom:8px}.opx-goal-h h2{margin:0;flex:1;font-size:17px}
.opx-det{border-radius:14px!important}
.opx-det summary{gap:10px!important;padding:11px 14px!important}
.opx-code{font-weight:800;color:var(--blue-dark);background:#EAF3F8;border-radius:8px;padding:1px 8px;font-size:13px}
.opx-det-t{flex:1;min-width:200px;line-height:1.7}
.opx-det-r{font-size:12.5px;color:var(--muted);display:flex;flex-direction:column;align-items:flex-end}.opx-det-r b{color:var(--ink)}.opx-det-r small{font-size:11px}
.opx-switch{position:relative;display:inline-block;width:40px;height:22px;flex:none;cursor:pointer}
.opx-switch input{opacity:0;width:0;height:0}
.opx-switch i{position:absolute;inset:0;background:#CBD7DE;border-radius:99px;transition:.2s}
.opx-switch i::before{content:'';position:absolute;width:16px;height:16px;top:3px;inset-inline-start:3px;background:#fff;border-radius:50%;transition:.2s;box-shadow:0 1px 3px rgba(0,0,0,.2)}
.opx-switch input:checked+i{background:#2F8F6C}
.opx-switch input:checked+i::before{transform:translateX(-18px)}
[dir=ltr] .opx-switch input:checked+i::before{transform:translateX(18px)}
.opx-progs{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr));gap:12px}
.opx-prog{margin:0!important;border-radius:14px!important;padding:12px!important;display:flex;flex-direction:column;gap:8px;background:#fff!important;border:1px solid var(--line)!important;transition:box-shadow .15s}
.opx-prog.on{border-color:#7CC3A3!important;box-shadow:0 0 0 1px #7CC3A3;background:#F6FCF9!important}
.opx-prog-h{display:flex;gap:8px;align-items:flex-start;cursor:pointer;line-height:1.6}.opx-prog-h input{margin-top:5px;accent-color:#2F8F6C;width:16px;height:16px}
.opx-prog-d{margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
/* الفريق */
.opx-approve.ok{background:linear-gradient(180deg,#F1FAF5,#fff)}
.opx-big-ok{width:56px;height:56px;border-radius:50%;background:#2F8F6C;color:#fff;display:grid;place-items:center;font-size:28px;font-weight:800;margin-bottom:6px}
.opx-check{display:flex;gap:8px;flex-wrap:wrap;margin:6px 0 14px}.opx-check span{padding:4px 10px;border-radius:99px;background:#F1F4F6;font-size:13px}.opx-check span.ok{background:#E3F4EC;color:#1E6B4E}
.opx-link img{border-radius:14px!important;padding:6px}
.opx-url{width:100%;border:1px solid var(--line);border-radius:10px;padding:9px 10px;font:inherit;direction:ltr;background:#F7FAFC}
/* المتابعة */
.opx-follow-top{display:grid;grid-template-columns:minmax(260px,auto) 1fr;gap:14px;align-items:stretch}
.opx-overall{display:flex;gap:16px;align-items:center;border-radius:18px}.opx-overall b{display:block;font-size:17px}
.opx-filters{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:10px}
.opx-flt{display:flex;flex-direction:column;align-items:flex-start;gap:2px;background:#fff;border:1px solid var(--line);border-inline-start:5px solid var(--c);border-radius:14px;padding:10px 12px;cursor:pointer;font:inherit;text-align:start;box-shadow:var(--shadow);transition:transform .1s}
.opx-flt:hover{transform:translateY(-1px)}.opx-flt b{font-size:22px;color:var(--c)}.opx-flt span{font-size:12.5px;color:var(--muted)}
.opx-flt.on{background:var(--c);border-color:var(--c)}.opx-flt.on b,.opx-flt.on span{color:#fff}
.opx-flt.all{border-inline-start-color:#9AA8B1;justify-content:center;align-items:center;font-weight:700;color:var(--muted)}
.opx-months{display:flex;gap:10px;overflow-x:auto;padding:4px 2px 8px}
.opx-month{flex:1;min-width:64px;display:flex;flex-direction:column;align-items:center;gap:4px}
.opx-mbars{height:110px;width:34px;display:flex;align-items:flex-end;gap:3px}
.opx-mbars i{flex:1;border-radius:6px 6px 2px 2px;min-height:2px}.opx-mbars .pl{background:#CFE0EA}.opx-mbars .ex{background:#2F8F6C}
.opx-month b{font-size:13px}.opx-month span{font-size:11.5px;color:var(--muted);white-space:nowrap}
.opx-month.future{opacity:.55}
.opx-fu-list{display:flex;flex-direction:column;gap:10px;margin-top:14px}
.opx-fu{border-inline-start:5px solid var(--c);border-radius:16px;padding:14px 16px}
.opx-fu-h{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.opx-fu-t{flex:1;min-width:220px;display:flex;flex-direction:column;gap:2px}
.opx-fu-p{display:flex;align-items:center;gap:8px;min-width:150px}.opx-fu-p .opx-bar{flex:1}.opx-fu-p span{font-weight:800;font-size:13px}
.opx-rec-form{display:grid;grid-template-columns:150px 1fr 1fr auto auto;gap:8px;align-items:center;margin-top:10px;background:#F7FAFC;border:1px solid var(--line);border-radius:12px;padding:10px}
.opx-rec-form select,.opx-rec-form input[type=url],.opx-rec-form input:not([type]){border:1px solid var(--line);border-radius:10px;padding:8px;font:inherit;min-width:0}
/* التقارير */
.opx-docs{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(330px,100%),1fr));gap:14px;margin-bottom:16px}
.opx-doc{display:flex;gap:14px;align-items:flex-start;border-radius:18px;margin:0!important}
.opx-doc-ic{flex:none;width:52px;height:52px;border-radius:14px;display:grid;place-items:center;font-size:26px;background:linear-gradient(135deg,#E6F1F8,#E5F5EE)}
.opx-doc-b{flex:1;min-width:0}.opx-doc-b h3{margin:2px 0 4px;font-size:16px}.opx-doc-b p{margin:0 0 10px;line-height:1.7}
@media (max-width:900px){
  .opx-hero{grid-template-columns:1fr;padding:20px}
  .opx-diag,.opx-follow-top{grid-template-columns:1fr}
  .opx-swot{grid-template-columns:1fr}
  .opx-rec-form{grid-template-columns:1fr 1fr}
  .opx-nav{top:56px}
}
@media (max-width:600px){
  .opx-hero h1,.opx-head h1{font-size:21px}
  .opx-head{padding:18px}
  .opx-head-stats{width:100%;justify-content:space-between}
  .opx-nav{position:static}
  .opx-nav-sep{display:none}
  .opx-rec-form{grid-template-columns:1fr}
  .opx-det-r{align-items:flex-start}
}
.opx-body .grid>*,.opx-follow-top>*,.opx-diag>*{min-width:0}
.opx-body .ev-mem input{width:100%;min-width:0;box-sizing:border-box}
.opx-hero h1{color:#fff}
.opx-body .grid>*,.opx-follow-top>*,.opx-diag>*{min-width:0}
.opx-body .ev-mem input{width:100%;min-width:0;box-sizing:border-box}
.opx-hero h1{color:#fff}

/* الخطة التشغيلية: المدرسة المشتركة (تقرير لكل مرحلة) */
.opx-stages{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;margin-top:10px}
.opx-stage{border:1px solid var(--line);border-radius:14px;padding:12px;min-width:0;background:#fff}
.opx-stage.ok{border-color:#9FD8C6;background:linear-gradient(180deg,#F1FAF6,#fff 60%)}
.opx-stage-h{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px}
.opx-stage .opx-drop{padding:14px}
.opx-stage-r{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:8px}
.opx-stage-r span{display:flex;justify-content:space-between;gap:6px;font-size:12.5px;padding:4px 8px;border-radius:8px;background:color-mix(in srgb,var(--c) 10%,#fff);border-inline-start:3px solid var(--c)}
.opx-stage-r b{color:var(--c)}
.opx-sub{font-size:14px;margin:14px 0 4px;color:var(--ink)}
