:root{
  --navy:#0F2849; --navy2:#16406e; --gold:#C9A227; --teal:#1D9E75; --red:#C0392B;
  --amber:#E0A100; --blue:#2563A8; --bg:#F5F7FA; --border:#E3E8EF;
  --muted:#64748b; --card:#ffffff;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family:'Cairo',system-ui,sans-serif;
  background:var(--bg); color:var(--navy);
  -webkit-font-smoothing:antialiased;
  direction:rtl;
}
a{color:var(--blue);text-decoration:none}
a:hover{color:var(--navy)}
input,select,textarea,button{font-family:inherit;font-size:14px}
button{cursor:pointer}
::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:#cbd3df;border-radius:8px}
::-webkit-scrollbar-thumb:hover{background:#aab4c4}
@keyframes fin{from{opacity:0}to{opacity:1}}
@keyframes tin{from{opacity:0;transform:translateY(-14px)}to{opacity:1;transform:none}}
#root{min-height:100vh;animation:fin .3s ease}
.loading{padding:40px;font-size:16px;color:var(--muted);text-align:center}

/* ===== LOGIN ===== */
.login-wrap{
  min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;
  background:radial-gradient(1200px 500px at 70% -10%, rgba(37,99,168,.12), transparent), var(--bg);
}
.login-card{width:100%;max-width:430px;background:var(--card);border-radius:18px;box-shadow:0 24px 60px rgba(15,40,73,.14);overflow:hidden;border:1px solid var(--border)}
.login-head{background:var(--navy);color:#fff;padding:26px 28px;text-align:center}
.login-logo{width:76px;height:76px;border-radius:18px;display:block;margin:0 auto 14px}
.login-head .m{font-size:12px;opacity:.85;letter-spacing:.5px}
.login-head .b{font-size:22px;font-weight:800;margin-top:6px}
.login-head .rule{width:44px;height:3px;background:var(--gold);border-radius:2px;margin:12px auto 0}
.login-body{padding:26px 28px}
.login-body h2{font-size:15px;font-weight:700;margin:0 0 16px}
.login-row{display:flex;gap:12px;margin-top:14px}
.login-row > label{flex:1}
.login-btn{width:100%;margin-top:20px;padding:13px;border-radius:10px;border:none;background:var(--navy);color:#fff;font-weight:700;font-size:15px}
.login-btn:disabled{opacity:.65;cursor:wait}
.login-hint{margin-top:16px;background:#FFF7E6;border:1px solid #F0DDA8;border-radius:10px;padding:11px 13px;font-size:12.5px;color:#7a5b00;line-height:1.8}
.login-foot{padding:12px;text-align:center;font-size:11px;color:var(--muted);border-top:1px solid var(--border)}

/* ===== APP SHELL ===== */
.app-shell{display:flex;min-height:100vh}
.sidebar{width:250px;background:var(--navy);color:#fff;flex-shrink:0;position:sticky;top:0;height:100vh;overflow-y:auto;z-index:150}
.sidebar-head{padding:20px 18px;border-bottom:1px solid rgba(255,255,255,.1)}
.sidebar-head .b{font-size:13px;font-weight:800}
.sidebar-head .m{font-size:11px;opacity:.7;margin-top:3px}
.sidebar-nav{padding:10px}
.nav-item{display:flex;align-items:center;gap:10px;width:100%;text-align:right;border:none;border-radius:9px;
  padding:11px 12px;margin-bottom:3px;font-size:13.5px;font-weight:600;cursor:pointer;background:transparent;color:rgba(255,255,255,.85)}
.nav-item .ic{font-size:16px}
.nav-item.active{background:var(--gold);color:var(--navy)}
.nav-item:hover:not(.active){background:rgba(255,255,255,.08)}
.sidebar-foot{padding:14px 16px;font-size:10.5px;color:rgba(255,255,255,.5);line-height:1.7;border-top:1px solid rgba(255,255,255,.1)}
.sidebar-backdrop{display:none;position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:140}
.notif-backdrop{display:none;position:fixed;inset:0;z-index:15}
.notif-backdrop.show{display:block}
.notif-wrap{position:relative}
.notif-bell{position:relative;width:38px;height:38px;border-radius:50%;border:1px solid var(--border);background:#fff;font-size:16px;display:flex;align-items:center;justify-content:center;cursor:pointer}
.notif-badge{position:absolute;top:-4px;left:-4px;background:var(--red);color:#fff;font-size:10px;font-weight:800;min-width:16px;height:16px;border-radius:8px;display:flex;align-items:center;justify-content:center;padding:0 3px}
.notif-panel{position:absolute;top:46px;left:0;width:300px;max-height:400px;overflow-y:auto;background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:0 14px 34px rgba(15,40,73,.16);z-index:30}
.notif-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 14px;border-bottom:1px solid var(--border);background:var(--bg);position:sticky;top:0;font-size:11.5px}
.notif-toolbar label{display:flex;align-items:center;gap:5px;cursor:pointer;white-space:nowrap}
.notif-item{display:flex;align-items:flex-start;gap:8px;padding:11px 14px;font-size:12.5px;line-height:1.6;border-bottom:1px solid var(--border);cursor:pointer}
.notif-item input[type=checkbox]{margin-top:2px;flex-shrink:0}
.notif-item:last-child{border-bottom:none}
.notif-item:hover{background:var(--bg)}
.notif-empty{padding:18px;text-align:center;font-size:12.5px;color:var(--muted)}
.notif-highlight{animation:notifHighlightPulse 2.4s ease}
@keyframes notifHighlightPulse{0%{background:#FFF3C4}70%{background:#FFF3C4}100%{background:transparent}}
/* للبطاقات (اجتماع/تعميم/مبادرة): خلفية الكرت نفسه معتمة فلا تظهر خلفية العنصر الحاوي، فنستخدم إطاراً مضيئاً حول أول عنصر داخلي بدلاً من ذلك */
.notif-highlight > *{animation:notifHighlightRing 2.4s ease;border-radius:12px}
@keyframes notifHighlightRing{0%{box-shadow:0 0 0 3px #F5C94E}70%{box-shadow:0 0 0 3px #F5C94E}100%{box-shadow:0 1px 2px rgba(15,40,73,.04)}}

.main-col{flex:1;min-width:0;display:flex;flex-direction:column}
.topbar{background:#fff;border-bottom:1px solid var(--border);padding:12px 22px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:20;gap:12px}
.topbar-title{font-size:17px;font-weight:800;color:var(--navy);display:flex;align-items:center;gap:10px}
.hamburger{display:none;width:36px;height:36px;border-radius:8px;border:1px solid var(--border);background:#fff;align-items:center;justify-content:center;font-size:18px}
.topbar-user{display:flex;align-items:center;gap:16px}
.topbar-user .info{text-align:left;line-height:1.4}
.topbar-user .name{font-weight:700;font-size:13.5px}
.topbar-user .role{font-size:11.5px;color:var(--muted)}
.avatar{width:38px;height:38px;border-radius:50%;background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800}
.logout-btn{border:1px solid var(--red);color:var(--red);background:#fff;border-radius:8px;padding:7px 14px;font-weight:700;font-size:13px}

.content{padding:22px 26px;flex:1;min-width:0}

/* ===== CARD ===== */
.card{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:18px 20px;margin-bottom:18px;box-shadow:0 1px 2px rgba(15,40,73,.04)}
.card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;gap:12px;flex-wrap:wrap}
.card-title{margin:0;font-size:15.5px;font-weight:800;color:var(--navy)}
.card-actions{display:flex;gap:8px;flex-wrap:wrap}
.no-access{padding:40px;text-align:center;color:var(--muted)}

/* ===== BUTTONS ===== */
.btn{padding:9px 15px;border-radius:9px;font-weight:700;font-size:13px;border:none;display:inline-flex;align-items:center;gap:6px}
.btn-primary{background:var(--navy);color:#fff}
.btn-gold{background:var(--gold);color:var(--navy)}
.btn-teal{background:var(--teal);color:#fff}
.btn-ghost{background:#fff;color:var(--navy);border:1px solid var(--border)}
.btn-red{background:#fff;color:var(--red);border:1px solid var(--red)}
.btn-sm{padding:6px 12px;font-size:12px}
.row-gap{margin-top:14px;display:flex;gap:8px;flex-wrap:wrap}

/* ===== FORM ===== */
.field{display:block;font-size:12.5px;font-weight:600;color:var(--navy)}
.ctl{width:100%;padding:10px 12px;border-radius:9px;border:1px solid var(--border);margin-top:5px;outline:none;background:#fff;font-family:inherit;display:block}
.ctl:focus{border-color:var(--navy)}
textarea.ctl{resize:vertical;min-height:70px}
.form-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}
.filter-bar{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end;margin-bottom:16px;background:#F8FAFC;border:1px solid var(--border);border-radius:12px;padding:12px 14px}
.filter-bar .field{min-width:160px}
.info-box{background:#F0F6FF;border:1px solid rgba(37,99,168,.2);border-radius:10px;padding:11px 14px;margin-bottom:14px;font-size:12.5px;color:var(--blue);line-height:1.8}
.warn-box{background:#FFF7E6;border:1px solid #F0DDA8;border-radius:10px;padding:10px 14px;margin-top:12px;font-size:13px;color:#7a5b00;line-height:1.8}
.alert-box{background:#FDECEA;border:1px solid rgba(192,57,43,.33);border-radius:12px;padding:12px 16px;margin-bottom:18px;font-size:13px;color:var(--red);line-height:1.8}

/* ===== TABLE ===== */
.tbl-wrap{overflow-x:auto}
.tbl-empty{padding:26px;text-align:center;color:var(--muted);font-size:13.5px}
table{width:100%;border-collapse:collapse;font-size:13px}
thead th{text-align:right;padding:10px 12px;background:#F1F5FB;color:var(--navy);font-weight:700;border-bottom:2px solid var(--border);white-space:nowrap}
tbody td{padding:10px 12px;vertical-align:middle;border-bottom:1px solid var(--border)}
tbody tr:last-child td{border-bottom:none}
.td-actions{display:flex;gap:6px;flex-wrap:wrap}

/* ===== PILL ===== */
.pill{display:inline-block;padding:3px 10px;border-radius:20px;font-size:12px;font-weight:700}

/* ===== STAT ===== */
.stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px;margin-bottom:20px}
.stat-tile{background:#fff;border:1px solid var(--border);border-radius:14px;padding:16px 18px;min-width:0}
.stat-tile .lbl{font-size:12.5px;color:var(--muted);font-weight:600}
.stat-tile .val{font-size:28px;font-weight:800;margin-top:6px;line-height:1}
.stat-tile .bar{height:3px;width:34px;background:var(--gold);border-radius:2px;margin-top:10px}

/* ===== CHART ===== */
.charts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;margin-bottom:18px}
.chart-card{background:#fff;border:1px solid var(--border);border-radius:14px;padding:16px 18px}
.chart-grid{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:14px}
.chart-grid .chart-card{flex:1 1 220px;min-width:220px}
.chart-grid .chart-bars{height:120px}
.chart-title{font-size:13.5px;font-weight:800;color:var(--navy);margin-bottom:14px}
.chart-bars{display:flex;align-items:flex-end;gap:10px;height:150px;padding-top:6px}
.chart-bar-col{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;min-width:0}
.chart-bar-val{font-size:12px;font-weight:700;color:var(--navy)}
.chart-bar{width:100%;max-width:38px;border-radius:6px 6px 0 0;transition:height .4s;min-height:2px}
.chart-bar-lbl{font-size:10.5px;color:var(--muted);text-align:center;line-height:1.3;word-break:break-word}
.chart-toggle-grid{display:flex;flex-wrap:wrap;gap:10px}
.chart-toggle{display:flex;align-items:center;gap:6px;font-size:13px;background:#F8FAFC;border:1px solid var(--border);border-radius:8px;padding:6px 11px}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media(max-width:760px){.two-col{grid-template-columns:1fr}}
.plain-list{margin:0;padding-right:18px;line-height:2;font-size:13.5px}
.plain-list.small{font-size:13px}

/* ===== SUBTABS ===== */
.subtabs{display:flex;gap:8px;margin-bottom:18px;flex-wrap:wrap}
.subtab-btn{padding:9px 16px;border-radius:10px;font-weight:700;font-size:13.5px;border:1px solid var(--border);background:#fff;color:var(--navy)}
.subtab-btn.active{background:var(--navy);color:#fff;border-color:var(--navy)}

/* ===== MEETING ROOM (اجتماعات / تعاميم) ===== */
.invitee-list{display:flex;flex-wrap:wrap;gap:8px}
.invitee-chip{display:flex;align-items:center;gap:6px;padding:7px 12px;border:1px solid var(--border);border-radius:20px;font-size:13px;font-weight:600;background:#fff;cursor:pointer}
.chat-thread{max-height:320px;overflow-y:auto;display:flex;flex-direction:column;gap:8px;padding:4px}
.chat-msg{background:var(--bg);border:1px solid var(--border);border-radius:10px;padding:8px 12px;font-size:13.5px}
.chat-msg.mine{background:#eaf3ff;border-color:#cfe2ff}

/* ===== SEARCH DROPDOWN (بحث تدريجي بالاسم) ===== */
.search-dropdown{position:absolute;z-index:20;top:100%;right:0;left:0;background:#fff;border:1px solid var(--border);border-radius:9px;margin-top:4px;max-height:220px;overflow-y:auto;box-shadow:0 10px 24px rgba(15,40,73,.12)}
.search-item{padding:9px 12px;font-size:13.5px;cursor:pointer}
.search-item:hover{background:var(--bg)}

/* ===== TOAST ===== */
.toast-wrap{position:fixed;top:16px;left:50%;transform:translateX(-50%);z-index:9999;display:flex;flex-direction:column;gap:8px;align-items:center}
.toast{color:#fff;padding:11px 20px;border-radius:10px;font-weight:600;font-size:14px;box-shadow:0 10px 30px rgba(15,40,73,.25);animation:tin .25s ease}

/* ===== ATTENDANCE ===== */
.legend-row{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:14px}
.legend-item{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600}
.legend-dot{width:14px;height:14px;border-radius:4px;display:inline-block}
.day-btn{padding:5px 10px;border-radius:7px;font-size:12px;font-weight:700;background:#fff;cursor:pointer;min-height:30px}
.period-btn{width:32px;height:32px;border-radius:7px;font-weight:800;font-size:13px;background:#fff;cursor:pointer;color:var(--muted)}
.period-row,.day-row{display:flex;gap:5px;flex-wrap:wrap}

/* ===== USERS PERMS ===== */
.perm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px}
.perm-item{display:flex;align-items:center;gap:6px;font-size:12.5px;background:#F8FAFC;border:1px solid var(--border);border-radius:8px;padding:7px 10px}

/* ===== CLOUD STATUS ===== */
.cloud-status{font-size:11.5px;font-weight:700;padding:6px 12px;border-radius:8px;background:#F1F5FB}
.cloud-status.offline{background:#FDECEA;animation:cloudStatusPulse 1.8s ease-in-out infinite}
@keyframes cloudStatusPulse{0%,100%{box-shadow:0 0 0 0 rgba(192,57,43,.35)}50%{box-shadow:0 0 0 5px rgba(192,57,43,0)}}
.cloud-banner{display:none;flex-direction:column;gap:10px;
  background:#FDECEA;border-bottom:1px solid rgba(192,57,43,.3);color:var(--red);
  padding:10px 22px;font-size:13px;font-weight:600;line-height:1.6;position:sticky;top:0;z-index:25}
.cloud-banner.show{display:flex}
.cloud-banner-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.cloud-banner button{flex-shrink:0}
.cloud-banner-details{background:#fff;color:var(--navy);border-radius:10px;padding:10px 14px;
  font-weight:400;font-size:13px;max-height:320px;overflow-y:auto}

/* ===== MOBILE / TABLET ===== */
@media(max-width:860px){
  .sidebar{position:fixed;right:0;top:0;transform:translateX(100%);transition:transform .25s ease}
  .sidebar.open{transform:translateX(0)}
  .sidebar-backdrop.show{display:block}
  .hamburger{display:flex}
  .content{padding:14px}
  .topbar{padding:10px 14px;gap:8px}
  .topbar-user .info{display:none}
  /* الجوال: شريط علوي مضغوط — كان صندوق المستخدم يطلع برا الشاشة فتنسحب الصفحة يمين ويسار وينقص زر الخروج */
  .topbar-title{min-width:0;flex:1 1 auto;font-size:15.5px;gap:8px;line-height:1.35}
  .topbar-user{gap:7px;flex-shrink:0}
  .cloud-status{padding:5px 8px;white-space:nowrap}
  .topbar .avatar,.topbar .notif-bell{width:34px;height:34px}
  .logout-btn{padding:6px 10px}
  .stats-grid{grid-template-columns:repeat(2,1fr)}
  .form-grid{grid-template-columns:1fr}
  .login-row{flex-direction:column}
  .cloud-banner{padding:9px 14px;font-size:12.5px}
}
@media(max-width:400px){ .topbar .avatar{display:none} }
@media(min-width:861px) and (max-width:1100px){
  .stats-grid{grid-template-columns:repeat(3,1fr)}
}
/* ===== ملف الطالب 360: خط زمني موحّد ===== */
.timeline{display:flex;flex-direction:column;gap:2px;max-height:520px;overflow-y:auto}
.timeline-item{display:flex;gap:14px;padding:10px 14px;background:var(--bg);border-radius:0 8px 8px 0}
.timeline-date{flex-shrink:0;width:92px;font-size:12px;color:var(--muted);font-weight:700;padding-top:1px}
.timeline-body{font-size:13.5px;line-height:1.6}

/* أجهزة اللمس (جوال وأجهزة لوحية): تكبير مساحات اللمس */
@media(pointer:coarse){
  .btn{min-height:40px}
  .btn-sm{min-height:34px}
  .day-btn{min-height:36px;padding:8px 12px}
  .period-btn{width:38px;height:38px}
  .nav-item{padding:13px 12px}
  input[type=checkbox],input[type=radio]{width:18px;height:18px;flex-shrink:0}
  .ctl{padding:11px 12px}
  .hamburger,.notif-bell,.avatar{width:42px;height:42px}
}

/* الجدول المدرسي — شريط الجرس + لون ثابت لكل مادة (--h) */
.tb-hd{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:14px}
.tb-k{font-size:11.5px;font-weight:800;color:var(--muted);letter-spacing:.3px}
.tb-sub{margin:16px 0 8px}
.tb-hd h2{margin:2px 0 6px;font-size:24px;font-weight:900;line-height:1.25;text-wrap:balance}
.tb-meta{font-size:12.5px;color:var(--muted);display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.tb-live{background:var(--navy);color:#fff;border-radius:14px;padding:10px 16px;display:grid;gap:2px;min-width:210px}
.tb-live b{font-size:14px}.tb-live span{font-size:12px;opacity:.8}
.tb-hint{font-size:12px;color:var(--muted);margin:0 0 8px}
.tb-cls{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}
.tb-cg{display:flex;align-items:center;gap:4px;background:#fff;border:1px solid var(--border);border-radius:12px;padding:4px}
.tb-cg>span{font-size:12.5px;font-weight:800;padding:0 8px}
.tb-cg button{min-width:32px;height:30px;border-radius:9px;border:0;background:var(--bg);color:var(--navy);font-weight:800;font-variant-numeric:tabular-nums}
.tb-cg button:hover{background:#E4EAF2}
.tb-cg button.on{background:var(--navy);color:#fff}
.tb-cg button:focus-visible,.tb-gc.click:focus-visible,.tb-ti:focus-visible,.tb-tp:focus-visible,.tb-chips button:focus-visible,.tb-sc button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
/* شريط الجرس */
.tb-bells{display:grid;gap:6px;margin:4px 0 12px}
.tb-bell{display:grid;grid-template-columns:96px minmax(0,1fr);gap:10px;align-items:center;margin-bottom:10px}
.tb-bells .tb-bell{margin:0}
.tb-bell-l{font-size:12px;font-weight:800;display:grid}
.tb-bell-l em{font-style:normal;font-weight:600;color:var(--muted);font-size:11px;font-variant-numeric:tabular-nums}
.tb-track{position:relative;height:42px;background:var(--bg);border-radius:10px}
.tb-seg{position:absolute;top:3px;bottom:3px;background:#fff;border:1px solid var(--border);border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.15;overflow:hidden;box-sizing:border-box}
.tb-seg b{font-size:12.5px}.tb-seg span{font-size:9.5px;color:var(--muted);font-variant-numeric:tabular-nums}
.tb-seg.done{background:#E6EBF2;border-color:transparent}.tb-seg.done b,.tb-seg.done span{color:#9aa6b6}
.tb-seg.cur{background:var(--teal);border-color:var(--teal)}.tb-seg.cur b,.tb-seg.cur span{color:#fff}
.tb-brk{position:absolute;top:3px;bottom:3px;border-radius:8px;background:repeating-linear-gradient(135deg,#FBF1D0 0 5px,#F3E2A6 5px 10px);display:flex;align-items:center;justify-content:center;overflow:hidden}
.tb-brk span{font-size:10px;font-weight:800;color:#7a5f08}
.tb-needle{position:absolute;top:-5px;bottom:-5px;width:2px;background:var(--red);border-radius:2px;margin-inline-start:-1px;z-index:2}
.tb-needle::before{content:'';position:absolute;top:-3px;inset-inline-start:-3px;width:8px;height:8px;border-radius:50%;background:var(--red)}
/* المواد */
.tb-legend{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 12px}
.tb-lg{--h:#64748b;display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:700;background:#fff;border:1px solid var(--border);border-radius:20px;padding:2px 10px;color:var(--navy)}
.tb-lg i{width:8px;height:8px;border-radius:3px;background:var(--h)}
.tb-lg b{font-variant-numeric:tabular-nums;color:var(--h)}
/* شبكة الأسبوع */
.tb-gwrap{overflow-x:auto;padding:8px 2px 2px}
.tb-grid{display:grid;grid-template-columns:64px repeat(7,minmax(74px,1fr));gap:5px;min-width:620px}
.tb-gh{text-align:center;display:grid;padding-bottom:2px}
.tb-gh b{font-size:14px;font-weight:900}.tb-gh span{font-size:10.5px;color:var(--muted);font-variant-numeric:tabular-nums}
.tb-gd{display:flex;flex-direction:column;align-items:center;justify-content:center;font-weight:800;font-size:13px;background:var(--bg);border-radius:10px;position:sticky;inset-inline-start:0;z-index:1}
.tb-gd.today{background:var(--gold)}
.tb-gd small{font-size:10px;font-weight:700}
.tb-gc{--h:#64748b;position:relative;min-height:62px;border-radius:10px;border:1px solid #fff;background:#fff;background:color-mix(in srgb,var(--h) 10%,#fff);border-color:color-mix(in srgb,var(--h) 24%,#fff);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:6px 4px;font:inherit;color:var(--navy);min-width:0}
.tb-gc b{font-size:12.5px;line-height:1.3;color:color-mix(in srgb,var(--h) 82%,#000)}
.tb-gc span{font-size:10.5px;color:var(--muted);line-height:1.3;margin-top:2px;overflow-wrap:anywhere}
.tb-gc.empty{background:#fff;border:1px dashed #d3dae5}.tb-gc.empty span{color:#b0bac8}
.tb-gc.off{background:repeating-linear-gradient(45deg,#f6f8fb 0 6px,#eef1f5 6px 12px);border-color:transparent}
.tb-gc.click{cursor:pointer;transition:transform .12s,box-shadow .12s}
.tb-gc.click:hover{transform:translateY(-1px);box-shadow:0 6px 14px rgba(15,40,73,.12)}
.tb-gc.now{box-shadow:0 0 0 2px var(--teal)}
.tb-gc.sel{box-shadow:0 0 0 2px var(--gold)}
.tb-now{position:absolute;top:-8px;font-style:normal;font-size:10px;font-weight:800;background:var(--teal);color:#fff;border-radius:20px;padding:0 8px;line-height:16px}
/* حصص اليوم (جدولي) */
.tb-today{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;margin-bottom:16px}
.tb-today.none{display:block;padding:12px 14px;background:var(--bg);border-radius:12px;font-size:13px;color:var(--muted);margin-top:14px}
.tb-tc{--h:#64748b;display:grid;grid-template-columns:36px minmax(0,1fr);gap:10px;align-items:center;background:#fff;border:1px solid var(--border);border-radius:14px;padding:10px}
.tb-tc .n{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;font-weight:900;background:color-mix(in srgb,var(--h) 14%,#fff);color:color-mix(in srgb,var(--h) 85%,#000)}
.tb-tc .x{display:grid;min-width:0}.tb-tc b{font-size:13.5px}.tb-tc span{font-size:11.5px;color:var(--muted)}
.tb-tc em{font-style:normal;font-size:11px;font-weight:800;color:var(--muted);margin-top:2px}
.tb-tc.done{opacity:.55}
.tb-tc.cur{border-color:var(--teal);box-shadow:0 0 0 2px rgba(29,158,117,.18)}.tb-tc.cur em{color:var(--teal)}
.tb-tc.next em{color:var(--blue)}
/* جدول المعلمين */
.tb-split{display:grid;grid-template-columns:250px minmax(0,1fr);gap:16px;align-items:start}
.tb-tl{background:#fff;border:1px solid var(--border);border-radius:14px;padding:10px;position:sticky;top:12px}
.tb-tl .ctl{margin-top:0}
.tb-tis{max-height:64vh;overflow:auto;margin-top:8px;display:grid;gap:2px}
.tb-ti{display:grid;grid-template-columns:minmax(0,1fr) 40px 22px;align-items:center;gap:8px;border:0;background:transparent;border-radius:10px;padding:7px 8px;text-align:start;color:var(--navy)}
.tb-ti b{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tb-ti span{height:5px;background:var(--bg);border-radius:4px;overflow:hidden}.tb-ti span i{display:block;height:100%;background:var(--blue);border-radius:4px}
.tb-ti em{font-style:normal;font-size:12px;font-weight:800;font-variant-numeric:tabular-nums}
.tb-ti:hover{background:var(--bg)}
.tb-ti.on{background:var(--navy);color:#fff}.tb-ti.on span{background:rgba(255,255,255,.2)}.tb-ti.on span i{background:var(--gold)}
.tb-ti[hidden],.tb-tp[hidden]{display:none}
.tb-load{display:flex;align-items:flex-end;gap:18px;flex-wrap:wrap}
.tb-big{display:grid;line-height:1}.tb-big b{font-size:40px;font-weight:900;font-variant-numeric:tabular-nums}.tb-big span{font-size:11.5px;color:var(--muted);margin-top:6px}
.tb-days{display:flex;gap:4px;align-items:flex-end}
.tb-dy{display:grid;justify-items:center;width:40px}
.tb-dy .c{height:34px;width:14px;display:flex;align-items:flex-end}
.tb-dy i{display:block;width:100%;min-height:3px;background:#D3DCE8;border-radius:4px 4px 2px 2px}
.tb-dy.today i{background:var(--gold)}
.tb-dy b{font-size:11.5px;font-variant-numeric:tabular-nums}.tb-dy span{font-size:9.5px;color:var(--muted)}
.tb-mini{display:grid;gap:2px;font-size:12px;color:var(--muted)}.tb-mini b{color:var(--navy)}
/* المدرسة الآن */
.tb-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}
.tb-chips button{border:1px solid var(--border);background:#fff;border-radius:20px;padding:5px 12px;font-size:12.5px;font-weight:700;color:var(--navy)}
.tb-chips button.on{background:var(--navy);border-color:var(--navy);color:#fff}
.tb-chips.p button.on{background:var(--gold);border-color:var(--gold);color:var(--navy)}
.tb-kp{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:12px 0 6px}
.tb-kp div{background:var(--bg);border-radius:12px;padding:10px 12px;display:grid}
.tb-kp b{font-size:22px;font-weight:900;font-variant-numeric:tabular-nums;line-height:1.2}.tb-kp span{font-size:11.5px;color:var(--muted)}
.tb-kp .bad{background:#FBEAE8}.tb-kp .bad b{color:var(--red)}
.tb-br{display:grid;grid-template-columns:72px minmax(0,1fr);gap:10px;padding:10px 0;border-top:1px solid var(--border)}
.tb-br:first-of-type{border-top:0}
.tb-brg{font-weight:900;font-size:13.5px;display:flex;align-items:center}
.tb-brt{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:8px}
.tb-tile{--h:#64748b;display:grid;grid-template-columns:30px minmax(0,1fr);column-gap:8px;align-items:center;background:#fff;background:color-mix(in srgb,var(--h) 9%,#fff);border:1px solid color-mix(in srgb,var(--h) 24%,#fff);border-radius:12px;padding:8px 10px}
.tb-tile em{grid-row:span 2;font-style:normal;font-size:20px;font-weight:900;text-align:center;color:color-mix(in srgb,var(--h) 85%,#000)}
.tb-tile b{font-size:13px;color:color-mix(in srgb,var(--h) 85%,#000)}
.tb-tile span{font-size:11.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tb-tile.brk{background:repeating-linear-gradient(135deg,#FBF1D0 0 6px,#F6E7B4 6px 12px);border-color:transparent}.tb-tile.brk b,.tb-tile.brk em{color:#7a5f08}
.tb-tile.emp{background:#fff;border:1.5px dashed var(--red)}.tb-tile.emp b,.tb-tile.emp em{color:var(--red)}
.tb-tile.off{opacity:.6}
.tb-free{display:flex;flex-wrap:wrap;gap:6px}
.tb-fr{display:inline-flex;gap:8px;align-items:center;background:#E3F5EC;color:#11684d;border-radius:20px;padding:5px 12px;font-size:12.5px;font-weight:700}
.tb-fr small{font-weight:600;color:#4b8a74;font-size:11px}
/* نافذة تعديل الحصة */
.tb-eh{--h:#64748b;display:inline-block;background:color-mix(in srgb,var(--h) 14%,#fff);color:color-mix(in srgb,var(--h) 85%,#000);font-weight:800;font-size:13px;border-radius:20px;padding:4px 14px}
.tb-lbl{font-size:12.5px;font-weight:800;margin:14px 0 6px}
.tb-sc{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.tb-sc button{--h:#64748b;border:1px solid color-mix(in srgb,var(--h) 30%,#fff);background:#fff;color:color-mix(in srgb,var(--h) 85%,#000);border-radius:20px;padding:4px 11px;font-size:12.5px;font-weight:700}
.tb-sc button.on{background:var(--h);color:#fff;border-color:var(--h)}
.tb-fwrap>.ctl{margin-top:0}
.tb-tps{max-height:280px;overflow:auto;display:grid;gap:4px;margin-top:8px}
.tb-tp{display:flex;justify-content:space-between;gap:10px;align-items:center;border:1px solid var(--border);background:#fff;border-radius:10px;padding:8px 12px;text-align:start;color:var(--navy)}
.tb-tp b{font-size:13px}.tb-tp span{font-size:11.5px;color:var(--muted);text-align:end}
.tb-tp:hover{border-color:#b9c5d6}
.tb-tp.on{border-color:var(--navy);background:var(--navy);color:#fff}.tb-tp.on span{color:#cfd8e6}
.tb-tp.busy{opacity:.55;cursor:not-allowed}.tb-tp.busy span{color:var(--red)}
/* الإعداد */
.tb-setup{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:16px;align-items:start}
.tb-h3{margin:2px 0 6px;font-size:17px;font-weight:900}
.tb-p{font-size:12.5px;color:var(--muted);margin:0 0 12px;line-height:1.8}
.tb-drop{position:relative;display:grid;place-items:center;gap:2px;border:2px dashed #c7d2e1;border-radius:14px;padding:24px 12px;cursor:pointer;background:var(--bg);text-align:center}
.tb-drop:hover,.tb-drop:focus-within{border-color:var(--blue)}
.tb-drop input{position:absolute;inset:0;opacity:0;cursor:pointer}
.tb-drop b{font-size:14px}.tb-drop span{font-size:11.5px;color:var(--muted)}
.tb-cur{margin-top:12px;font-size:12.5px;color:var(--muted)}.tb-cur b{color:var(--navy)}
.tb-bt{width:100%;border-collapse:separate;border-spacing:0 4px}
.tb-bt th{font-size:11.5px;color:var(--muted);font-weight:800;text-align:center;padding:2px 4px;background:none}
.tb-bt td{text-align:center;padding:0 3px;border:0}
.tb-bt td:first-child b{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:8px;background:var(--bg)}
.tb-bt .ctl{margin:0;padding:5px 6px;min-width:88px}
.tb-cnt{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}
.tb-cnt label{display:grid;gap:3px;text-align:center;font-size:11.5px;font-weight:800;color:var(--muted)}
.tb-cnt .ctl{margin:0;text-align:center;font-weight:800;padding:7px 4px}
@media (max-width:1000px){.tb-setup{grid-template-columns:minmax(0,1fr)}}
@media (max-width:900px){.tb-split{grid-template-columns:minmax(0,1fr)}.tb-tl{position:static}.tb-tis{max-height:210px}}
@media (max-width:760px){
  .tb-bell{grid-template-columns:1fr;gap:4px}.tb-bell-l{display:flex;gap:8px;align-items:baseline}.tb-seg span,.tb-brk span{display:none}
  .tb-hd h2{font-size:21px}.tb-live{min-width:0;width:100%}
  .tb-kp{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tb-br{grid-template-columns:1fr;gap:6px}.tb-brt{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tb-tile{grid-template-columns:24px minmax(0,1fr);padding:8px}
}
/* سجل حالات المعلمين حسب اليوم */
.ta-day{border:1px solid var(--border);border-radius:12px;padding:12px 14px;margin-bottom:12px}
.ta-day-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:8px;font-size:14px;color:var(--navy)}
/* شواهد الدروس */
.le-chips{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 12px}
.le-chip{border:1px solid var(--border);background:#fff;color:var(--navy);border-radius:20px;padding:6px 12px;font-size:12.5px;font-family:inherit;cursor:pointer}
.le-chip.on{background:var(--navy);color:#fff;border-color:var(--navy)}
.le-thumbs{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.le-thumb{position:relative;width:86px;height:86px;border-radius:10px;overflow:hidden;border:1px solid var(--border);background:var(--bg)}
.le-thumb img{width:100%;height:100%;object-fit:cover;cursor:zoom-in}
.le-thumb button{position:absolute;top:4px;left:4px;width:22px;height:22px;border-radius:50%;border:none;background:rgba(15,40,73,.75);color:#fff;font-size:11px;cursor:pointer}
.le-uploading{display:flex;align-items:center;justify-content:center;font-size:11.5px;color:var(--muted)}
.le-mini{width:34px;height:34px;object-fit:cover;border-radius:6px;margin-left:3px;cursor:zoom-in;vertical-align:middle}

/* ===== بطاقة اليوم العالمي للمدير ===== */
.bd-overlay{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:16px;
  background:rgba(7,20,39,.72);backdrop-filter:blur(3px);animation:fin .35s ease}
.bd-card{position:relative;width:100%;max-width:440px;max-height:calc(100vh - 32px);overflow:auto;text-align:center;color:#F5EEDC;
  padding:34px 26px 26px;border-radius:14px;outline:1.5px solid #D9B45A;outline-offset:-10px;
  background:radial-gradient(360px 260px at 50% 22%,rgba(217,180,90,.22),transparent 70%),linear-gradient(180deg,#0F2A4D,#0A1C35 65%,#071427);
  box-shadow:0 30px 80px rgba(0,0,0,.45);animation:tin .45s ease}
.bd-c{position:absolute;width:26px;height:26px}
.bd-c svg{width:100%;height:100%;display:block}
.bd-c.tr{top:-3px;right:-3px}.bd-c.tl{top:-3px;left:-3px}.bd-c.br{bottom:-3px;right:-3px}.bd-c.bl{bottom:-3px;left:-3px}
.bd-school{font-size:13px;color:#B9C3D3;font-weight:600}
.bd-medal{width:96px;height:96px;margin:16px auto 0;display:flex;flex-direction:column;align-items:center;justify-content:center;
  border:2px solid #D9B45A;border-radius:50%;background:#0C2342;box-shadow:0 0 30px rgba(217,180,90,.35),inset 0 0 0 5px #0C2342,inset 0 0 0 6px rgba(217,180,90,.45)}
.bd-medal b{font-size:34px;line-height:1;color:#F3DC9A;font-weight:800}
.bd-medal span{font-size:12px;color:#D9B45A;margin-top:2px}
.bd-eyebrow{margin-top:16px;color:#D9B45A;font-weight:700;font-size:16px}
.bd-title{margin:2px 0 0;font-family:'Aref Ruqaa','Amiri',serif;font-weight:700;font-size:58px;line-height:1.2;
  background:linear-gradient(180deg,#FFF6D8,#F3DC9A 35%,#D9B45A 65%,#A87D2A);-webkit-background-clip:text;background-clip:text;color:transparent}
.bd-name{font-family:'Amiri',serif;font-weight:700;font-size:23px;margin-top:2px}
.bd-msg{margin:14px 0 0;font-size:14.5px;line-height:1.9;color:#DCE3EE;text-wrap:balance}
.bd-gift{margin-top:16px;padding:10px 12px;border-radius:10px;background:rgba(217,180,90,.12);border:1px solid rgba(217,180,90,.4);
  color:#F3DC9A;font-size:13.5px;font-weight:700;line-height:1.7;text-wrap:balance}
.bd-from{margin-top:14px;font-size:13px;color:#B9C3D3}
.bd-btn{margin-top:16px;width:100%;padding:12px;border:0;border-radius:10px;font-weight:800;font-size:15px;color:#0A1C35;
  background:linear-gradient(180deg,#F3DC9A,#D9B45A)}
.bd-btn:focus-visible{outline:2px solid #F3DC9A;outline-offset:3px}
@media (prefers-reduced-motion:reduce){.bd-overlay,.bd-card{animation:none}}
@media print{.bd-overlay{display:none!important}}
.bd-strip{display:flex;align-items:center;gap:10px;margin:0 0 14px;padding:10px 14px;border-radius:12px;font-size:14px;line-height:1.7;
  color:#F5EEDC;background:linear-gradient(90deg,#0A1C35,#0F2A4D);border:1px solid rgba(217,180,90,.55);box-shadow:0 6px 18px rgba(10,28,53,.15)}
.bd-strip b{color:#F3DC9A}
.bd-strip-star{color:#D9B45A;font-size:16px;flex:none}
.bd-strip>span:nth-child(2){flex:1}
.bd-strip-x{flex:none;background:transparent;border:0;color:#B9C3D3;font-size:20px;line-height:1;padding:2px 6px;border-radius:6px}
.bd-strip-x:hover{color:#fff;background:rgba(255,255,255,.08)}
@media print{.bd-strip{display:none!important}}

/* ===== ثيمات المناسبات ===== */
.occ-banner{position:relative;overflow:hidden;border-radius:16px;margin:0 0 16px;min-height:132px;display:flex;align-items:center;padding:20px 26px}
.occ-art{position:absolute;left:0;top:0;height:100%;width:auto;max-width:48%}
.occ-text{position:relative;max-width:62%}
.occ-title{font-family:'Aref Ruqaa','Amiri',serif;font-weight:700;font-size:42px;line-height:1.15}
.occ-sub{font-size:14px;margin-top:4px;line-height:1.8;font-weight:600}
.occ-lantern{filter:drop-shadow(0 0 8px rgba(246,185,74,.75))}
@media (prefers-reduced-motion:no-preference){
  .occ-ramadan .occ-lantern{animation:occSway 4s ease-in-out infinite alternate;transform-box:fill-box;transform-origin:50% 0}
}
@keyframes occSway{from{rotate:-3deg}to{rotate:3deg}}

/* رمضان: ليلي بنفسجي وذهبي */
.occ-ramadan{background:radial-gradient(1.4px 1.4px at 62% 22%,#F3DC9A 60%,transparent),radial-gradient(1px 1px at 78% 78%,#F3DC9A 60%,transparent),radial-gradient(1.6px 1.6px at 90% 14%,#F3DC9A 60%,transparent),radial-gradient(1px 1px at 55% 86%,#F3DC9A 60%,transparent),linear-gradient(135deg,#2A1A55,#1B1140 55%,#120B2C);color:#F5EEDC;border:1px solid rgba(217,180,90,.45)}
.occ-ramadan .occ-title{background:linear-gradient(180deg,#FFF3C4,#F3DC9A 40%,#D9B45A);-webkit-background-clip:text;background-clip:text;color:transparent}
.occ-ramadan .occ-sub{color:#D9CCF0}
[data-occasion="ramadan"] .sidebar{background:radial-gradient(1.2px 1.2px at 20% 12%,#F3DC9A 60%,transparent),radial-gradient(1px 1px at 70% 30%,#F3DC9A 60%,transparent),radial-gradient(1.4px 1.4px at 40% 64%,#F3DC9A 60%,transparent),radial-gradient(1px 1px at 82% 82%,#F3DC9A 60%,transparent),linear-gradient(180deg,#24184A,#150E31)}
[data-occasion="ramadan"] .topbar{box-shadow:inset 0 -3px 0 #6E4FB0}
[data-occasion="ramadan"] .login-head{background:radial-gradient(1.4px 1.4px at 14% 22%,#F3DC9A 60%,transparent),radial-gradient(1px 1px at 84% 30%,#F3DC9A 60%,transparent),radial-gradient(1.6px 1.6px at 72% 76%,#F3DC9A 60%,transparent),radial-gradient(1px 1px at 26% 70%,#F3DC9A 60%,transparent),linear-gradient(135deg,#2A1A55,#150E31)}

/* يوم التأسيس: رملي وبني وأخضر نخيل */
.occ-founding{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='16'%3E%3Cpath d='M0 16 L12 1 L24 16Z' fill='%237A4A24'/%3E%3Cpath d='M7 16 L12 10 L17 16Z' fill='%23E9D6B0'/%3E%3C/svg%3E") repeat-x bottom/24px 16px,linear-gradient(135deg,#F6EBD3,#EAD6AF);color:#4A2C17;border:1px solid #D2B482;padding-bottom:30px}
.occ-founding .occ-title{color:#6B3B17}
.occ-founding .occ-sub{color:#6B4A2B}
[data-occasion="founding"] .sidebar{background:linear-gradient(180deg,#5A341A,#3B2210)}
[data-occasion="founding"] .sidebar-head{border-bottom:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='12'%3E%3Cpath d='M0 12 L10 1 L20 12Z' fill='%23C9A227' opacity='.55'/%3E%3C/svg%3E") repeat-x bottom/20px 12px;padding-bottom:28px}
[data-occasion="founding"] .nav-item.active{background:#E2C38A;color:#3B2210}
[data-occasion="founding"] .topbar{box-shadow:inset 0 -3px 0 #A86A32}
[data-occasion="founding"] .login-head{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='12'%3E%3Cpath d='M0 12 L10 1 L20 12Z' fill='%23C9A227' opacity='.55'/%3E%3C/svg%3E") repeat-x bottom/20px 12px,linear-gradient(135deg,#5A341A,#3B2210);padding-bottom:34px}

/* العيدين: فيروزي احتفالي وذهبي */
.occ-fitr,.occ-adha{background:linear-gradient(135deg,#0F6A6E,#0A4A55 60%,#083A45);color:#F5EEDC;border:1px solid rgba(243,220,154,.5)}
.occ-fitr .occ-title,.occ-adha .occ-title{background:linear-gradient(180deg,#FFF3C4,#F3DC9A 45%,#E9B949);-webkit-background-clip:text;background-clip:text;color:transparent}
.occ-fitr .occ-sub,.occ-adha .occ-sub{color:#CFE9E6}
[data-occasion="fitr"] .sidebar,[data-occasion="adha"] .sidebar{background:linear-gradient(180deg,#0E5C61,#08363F)}
[data-occasion="fitr"] .topbar,[data-occasion="adha"] .topbar{box-shadow:inset 0 -3px 0 #E9B949}
[data-occasion="fitr"] .login-head,[data-occasion="adha"] .login-head{background:linear-gradient(135deg,#0F6A6E,#083A45)}
/* يوم العلم واليوم الوطني: أخضر */
.occ-flag,.occ-national{background:linear-gradient(135deg,#0F7A45,#0A5A33 60%,#074426);color:#fff;border:1px solid #0A5A33}
.occ-flag .occ-sub,.occ-national .occ-sub{color:#D5EFDF}
.occ-national .occ-title{color:#fff}
[data-occasion="flag"] .sidebar,[data-occasion="national"] .sidebar{background:linear-gradient(180deg,#0B6A3C,#064026)}
[data-occasion="flag"] .nav-item.active,[data-occasion="national"] .nav-item.active{background:#fff;color:#0A5A33}
[data-occasion="flag"] .topbar,[data-occasion="national"] .topbar{box-shadow:inset 0 -3px 0 #0F7A45}
[data-occasion="flag"] .login-head,[data-occasion="national"] .login-head{background:linear-gradient(135deg,#0F7A45,#064026)}
/* يوم المعلم: أزرق فاتح */
.occ-teacher{background:linear-gradient(135deg,#EAF5FA,#D5EAF3);color:#0F2849;border:1px solid #BFDCE8}
.occ-teacher .occ-title{color:#0C6E80}
.occ-teacher .occ-sub{color:#35506B}
[data-occasion="teacher"] .topbar{box-shadow:inset 0 -3px 0 #0C8599}
[data-occasion="teacher"] .nav-item.active{background:#5FC3CF;color:#0F2849}
/* يوم اللغة العربية: ورق قديم وحبر */
.occ-arabic{background:linear-gradient(135deg,#FBF5E6,#F1E5C9);color:#0F2849;border:1px solid #E2D2A8}
.occ-arabic .occ-title{color:#0F2849}
.occ-arabic .occ-sub{color:#5B4A2B}
[data-occasion="arabic"] .topbar{box-shadow:inset 0 -3px 0 #B8892B}
[data-occasion="arabic"] .nav-item.active{background:#F1E5C9;color:#0F2849}

/* خانة الثيم في الإعدادات */
.th-opts{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}
.th-opt{display:flex;gap:10px;align-items:flex-start;padding:12px;border:1.5px solid var(--border);border-radius:12px;cursor:pointer;background:#fff}
.th-opt.on{border-color:var(--teal);background:rgba(29,158,117,.06)}
.th-opt input{margin-top:4px}
.th-opt b{display:block;font-size:14px}
.th-opt small{display:block;font-size:12px;color:var(--muted);line-height:1.6;margin-top:2px}
.th-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:8px}
.th-item{display:flex;align-items:center;gap:8px;padding:9px 12px;border:1px solid var(--border);border-radius:10px;font-size:13px;font-weight:600}
.th-item small{color:var(--muted);font-weight:500;font-size:11.5px;margin-inline-start:auto}
.th-item a{font-size:12px;font-weight:700;color:var(--blue)}

@media (max-width:640px){
  .occ-banner{min-height:120px;padding:16px 18px}
  .occ-text{max-width:66%}
  .occ-art{max-width:42%}
  .occ-title{font-size:32px}
  .occ-sub{font-size:12.5px}
}
@media print{.occ-banner{display:none!important}}

/* نسيت كلمة المرور */
.login-link{display:block;width:100%;margin-top:10px;background:none;border:0;color:var(--blue);font-weight:700;font-size:13px;padding:6px;cursor:pointer}
.login-link:hover{text-decoration:underline}
.login-link:disabled{opacity:.5;cursor:default}
.login-note{font-size:13px;color:var(--muted);line-height:1.8;margin:-6px 0 14px}
.fg-code{text-align:center;letter-spacing:8px;font-size:22px;font-weight:800;direction:ltr}

/* شاشة المستخدمين: فلتر الحالة وعلامات الصلاحيات */
.u-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}
.u-chip{border:1.5px solid var(--border);background:#fff;color:var(--navy);border-radius:20px;padding:6px 14px;font-size:13px;font-weight:700;cursor:pointer}
.u-chip b{display:inline-block;min-width:22px;margin-inline-start:4px;padding:0 6px;border-radius:10px;background:#EEF2F6;font-size:12px}
.u-chip.on{background:var(--navy);border-color:var(--navy);color:#fff}
.u-chip.on b{background:rgba(255,255,255,.18)}
.u-chip.pending:not(.on){border-color:#F0D58A;color:#8a6400}
.u-chip.pending.on{background:#E0A100;border-color:#E0A100}
.u-chip.off:not(.on){border-color:#EBC0BA;color:var(--red)}
.u-chip.off.on{background:var(--red);border-color:var(--red)}
.u-tags{display:flex;gap:4px;margin-top:4px}
.u-tags span{font-size:11px;font-weight:700;color:#0C6E80;background:rgba(12,133,153,.1);border-radius:6px;padding:1px 7px}

/* الإحالات */
.rf-urgent{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:700;margin-top:10px;color:var(--red)}
.rf-badge{display:inline-block;font-size:11px;font-weight:800;color:#fff;background:var(--red);border-radius:6px;padding:1px 7px;vertical-align:middle}
.rf-card{border:1px solid var(--border);border-inline-start:4px solid var(--blue);border-radius:12px;padding:14px 16px;margin-bottom:12px;background:#fff}
.rf-card.urgent{border-inline-start-color:var(--red);background:#FFF9F8}
.rf-top{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 14px;align-items:baseline}
.rf-muted{font-size:12.5px;color:var(--muted)}
.rf-body{margin-top:8px;font-size:14px;line-height:1.8;white-space:pre-wrap}
.rf-prior{margin-top:8px;font-size:12.5px;line-height:1.8;color:#5b6b80;background:#F5F7FA;border-radius:8px;padding:8px 10px}
.cm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:8px}
.cm-row{display:grid;grid-template-columns:96px 1fr;align-items:center;gap:6px 10px;padding:8px 10px;border:1px solid var(--border);border-radius:10px}
.cm-warn{grid-column:2;font-size:12px;color:#8a6400;font-weight:600}
.cm-row b{white-space:nowrap}
.rf-badge.late{background:#B7791F}
.rf-track{display:flex;gap:4px;align-items:flex-start;min-width:200px}
.rf-step{flex:1;position:relative;text-align:center;font-size:11.5px;color:var(--muted);padding-top:14px}
.rf-step i{position:absolute;top:3px;inset-inline:0;height:3px;border-radius:2px;background:#E3E8EF}
.rf-step.on i{background:var(--teal)}
.rf-track.back .rf-step.on:last-child i{background:var(--red)}
.rf-step b{display:block;font-weight:700}
.rf-step.on b{color:var(--navy)}
.rf-step small{display:block;font-size:10.5px}
.rf-late{margin-top:4px;font-size:11.5px;font-weight:700;color:#B7791F}
.rf-mini{margin-inline-start:8px;font-size:11px;font-weight:700;color:var(--blue);background:rgba(37,99,168,.08);border:1px solid rgba(37,99,168,.25);border-radius:6px;padding:1px 6px;cursor:pointer;vertical-align:middle}
.rf-toggle{display:flex;align-items:center;gap:8px;margin-top:12px;font-size:13px;font-weight:700}
.rf-rep{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}
.rf-rep-h{font-size:13px;font-weight:800;margin-bottom:6px}
.g-chips{display:flex;flex-wrap:wrap;gap:8px}
.g-chip{display:inline-flex;flex-direction:column;align-items:center;gap:1px;border:1.5px solid var(--border);background:#fff;color:var(--navy);border-radius:10px;padding:7px 14px;font-size:13px;font-weight:700;cursor:pointer;line-height:1.3}
.g-chip small{font-size:10.5px;font-weight:600;color:var(--muted)}
.g-chip.on{background:var(--teal);border-color:var(--teal);color:#fff}
.cm-sum{font-size:13px;line-height:1.9;margin-bottom:12px;padding:8px 12px;border-radius:10px;background:#F5F8FA;border:1px solid var(--border)}
.cm-sum .cm-warn{display:inline;color:#8a6400;font-weight:600}
.rf-ctx{margin-top:8px;display:inline-block;font-size:12.5px;font-weight:700;color:#0C6E80;background:rgba(12,133,153,.08);border-radius:8px;padding:3px 10px}

/* رسم أفقي مرتّب (أسماء طويلة) */
.hb-card{margin-bottom:18px}
.hb-note{font-size:12px;font-weight:600;color:var(--muted);margin-inline-start:8px}
.hb-list{display:flex;flex-direction:column;gap:4px}
.hb-row{display:grid;grid-template-columns:minmax(150px,260px) 1fr 52px;align-items:center;gap:12px;padding:5px 6px;border-radius:8px}
.hb-row:hover{background:#F5F8FA}
.hb-lbl{display:flex;align-items:baseline;gap:8px;min-width:0}
.hb-rank{flex:none;width:20px;font-size:11.5px;color:var(--muted);font-variant-numeric:tabular-nums;text-align:center}
.hb-name{font-size:13px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.hb-sub{flex:none;font-size:11.5px;color:var(--muted);white-space:nowrap}
.hb-track{height:12px;border-radius:4px;background:#EEF2F6;overflow:hidden}
.hb-bar{height:100%;border-radius:4px}
.hb-val{font-size:13px;font-weight:800;color:var(--navy);font-variant-numeric:tabular-nums;text-align:start}
.hb-more{margin-top:10px;background:none;border:1px solid var(--border);border-radius:8px;padding:6px 12px;font-size:12.5px;font-weight:700;color:var(--blue);cursor:pointer}
.chart-grid .hb-card{flex:1 1 380px;min-width:300px}
.chart-grid .hb-row{grid-template-columns:minmax(110px,180px) 1fr 40px}
@media (max-width:640px){
  .hb-row{grid-template-columns:55% 1fr 38px;gap:8px;padding:5px 2px}
  .hb-rank{width:16px}
  .hb-sub{display:none}
}

/* الإعدادات: النسخ الاحتياطية والأدوات المتقدمة */
.bk-auto{font-size:13.5px;line-height:1.9;background:rgba(29,158,117,.07);border:1px solid rgba(29,158,117,.3);border-radius:10px;padding:10px 14px}
.adv-card{padding:0;overflow:hidden}
.adv-toggle{width:100%;display:flex;justify-content:space-between;align-items:center;background:none;border:0;padding:14px 20px;font-size:14px;font-weight:800;color:var(--navy);cursor:pointer}
.adv-toggle:hover{background:#F5F8FA}
.adv-arrow{font-size:11px;color:var(--muted)}
.adv-body{padding:4px 20px 18px;border-top:1px solid var(--border)}
.adv-warn{margin-top:12px;font-size:13px;font-weight:700;color:#8a3a2b;background:#FFF5F3;border:1px solid #F2C9C1;border-radius:10px;padding:9px 12px}
.adv-sec{margin-top:16px;padding-top:14px;border-top:1px dashed var(--border)}
.adv-sec:first-of-type{border-top:0}
.adv-h{font-size:13px;font-weight:800;margin-bottom:8px}

/* ===== لوحة المعلومات ===== */
.dash-hero{position:relative;overflow:hidden;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 20px;margin-bottom:16px;padding:20px 24px;border-radius:16px;color:#fff;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80'%3E%3Cg fill='none' stroke='%23C9A227' stroke-opacity='.16' stroke-width='1.2'%3E%3Crect x='24' y='24' width='32' height='32'/%3E%3Crect x='24' y='24' width='32' height='32' transform='rotate(45 40 40)'/%3E%3C/g%3E%3C/svg%3E") left center/80px 80px repeat-y,linear-gradient(120deg,var(--navy) 0%,var(--navy2) 70%,var(--navy2) 100%)}
.dh-greet{font-size:24px;font-weight:800;line-height:1.3}
.dh-date{margin-top:4px;font-size:13.5px;color:#C9D6E8}
.dh-now{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);font-size:13.5px;font-weight:700}
.dh-dot{width:9px;height:9px;border-radius:50%;background:#94A3B8}
.dh-dot.live{background:#34D399;box-shadow:0 0 0 0 rgba(52,211,153,.6);animation:dhPulse 1.8s infinite}
@keyframes dhPulse{70%{box-shadow:0 0 0 9px rgba(52,211,153,0)}100%{box-shadow:0 0 0 0 rgba(52,211,153,0)}}
@media (prefers-reduced-motion:reduce){.dh-dot.live{animation:none}}

.pulse{display:grid;grid-template-columns:minmax(260px,1fr) 2.2fr;gap:14px;margin-bottom:10px}
.pulse-main{display:flex;align-items:center;gap:18px;background:#fff;border:1px solid var(--border);border-radius:16px;padding:18px 20px}
.pulse-ring{position:relative;width:118px;height:118px;flex:none}
.pulse-ring svg{width:100%;height:100%}
.pr-val{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:800;color:var(--navy);font-variant-numeric:tabular-nums}
.pr-val small{font-size:15px;margin-inline-start:1px}
.pr-title{font-size:15px;font-weight:800}
.pr-sub{font-size:12.5px;color:var(--muted);margin-top:4px;line-height:1.8}
.pr-cmp{display:inline-block;margin-top:6px;font-size:12px;font-weight:700;border-radius:8px;padding:2px 8px}
.pr-cmp.up{color:#0E7A57;background:rgba(29,158,117,.1)}.pr-cmp.down{color:var(--red);background:rgba(192,57,43,.08)}
.pulse-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.pulse-tile{text-align:right;background:#fff;border:1px solid var(--border);border-radius:16px;padding:14px 16px;cursor:pointer;font-family:inherit;color:var(--navy);transition:transform .15s,box-shadow .15s}
.pulse-tile:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(15,40,73,.08)}
.pt-lbl{font-size:12.5px;font-weight:700;color:var(--muted)}
.pt-row{display:flex;align-items:flex-end;justify-content:space-between;gap:8px;margin-top:6px}
.pt-val{font-size:30px;font-weight:800;line-height:1;font-variant-numeric:tabular-nums}
.spark{width:96px;height:30px;flex:none}
.pt-cmp{margin-top:8px;font-size:11.5px;font-weight:700}
.pt-cmp.bad{color:var(--red)}.pt-cmp.good{color:#0E7A57}.pt-cmp.flat{color:var(--muted)}
.facts{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}
.facts span{font-size:12.5px;color:var(--muted);background:#fff;border:1px solid var(--border);border-radius:999px;padding:5px 12px}
.facts b{color:var(--navy);font-size:13.5px;margin-inline-end:3px}

.dash-two{display:grid;grid-template-columns:1.6fr 1fr;gap:14px;margin-bottom:6px}
.dash-two .card{margin-bottom:0}
.dash-h{font-size:15px;font-weight:800;margin-bottom:12px;display:flex;align-items:center;gap:8px}
.dash-count{font-size:12px;background:var(--red);color:#fff;border-radius:999px;padding:1px 8px}
.att-item{width:100%;display:grid;grid-template-columns:34px 1fr auto 14px;align-items:center;gap:10px;text-align:right;background:#fff;border:1px solid var(--border);border-inline-start:4px solid var(--blue);border-radius:12px;padding:10px 12px;margin-bottom:8px;cursor:pointer;font-family:inherit;color:var(--navy)}
.att-item:hover{background:#F8FAFC}
.att-item.bad{border-inline-start-color:var(--red)}.att-item.warn{border-inline-start-color:var(--amber)}
.ai-icon{font-size:20px;text-align:center}
.ai-text b{display:block;font-size:13.5px}
.ai-text small{display:block;font-size:12px;color:var(--muted);margin-top:2px;line-height:1.6}
.ai-n{font-size:18px;font-weight:800;font-variant-numeric:tabular-nums}
.att-item.bad .ai-n{color:var(--red)}.att-item.warn .ai-n{color:#B7791F}
.ai-go{color:var(--muted);font-size:18px}
.att-empty{display:flex;flex-direction:column;align-items:center;gap:4px;padding:26px 0;color:var(--muted);font-size:13px;text-align:center}
.att-empty b{color:var(--navy);font-size:15px}
.team-nums{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.team-nums div{background:#F5F8FA;border-radius:12px;padding:10px 12px}
.team-nums b{display:block;font-size:26px;font-weight:800;font-variant-numeric:tabular-nums}
.team-nums span{font-size:12px;color:var(--muted)}
.team-bar{height:6px;border-radius:999px;background:#EEF2F6;margin:12px 0 14px;overflow:hidden}
.team-bar i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--teal),#34D399)}
.tt-row{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:8px;padding:7px 4px;border-bottom:1px solid var(--border)}
.tt-row:last-child{border-bottom:0}
.tt-medal{font-size:18px}.tt-name{font-size:13.5px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tt-n{font-weight:800;font-variant-numeric:tabular-nums}
.dash-sec-h{display:flex;justify-content:space-between;align-items:center;margin:18px 2px 10px;font-size:15px;font-weight:800}
.dash-cust{background:#fff;border:1px solid var(--border);border-radius:10px;padding:6px 12px;font-family:inherit;font-size:12.5px;font-weight:700;color:var(--navy);cursor:pointer}
.feed-row{display:grid;grid-template-columns:32px 1fr auto;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--border)}
.feed-row:last-child{border-bottom:0}
.feed-av{width:32px;height:32px;border-radius:50%;background:#E8F0FA;color:var(--navy);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:13px}
.feed-txt{font-size:13px;line-height:1.6;min-width:0}
.feed-t{font-size:11.5px;color:var(--muted);white-space:nowrap}
.chart-bar{border-radius:6px 6px 2px 2px}
@media (max-width:1100px){.pulse{grid-template-columns:1fr}.pulse-tiles{grid-template-columns:repeat(2,1fr)}}
@media (max-width:760px){.dash-two{grid-template-columns:1fr}.dh-greet{font-size:20px}.dash-hero{padding:16px 18px}}
@media (max-width:420px){.pulse-tiles{gap:8px}.pulse-tile{padding:12px}.pt-val{font-size:24px}.spark{width:64px}.pulse-main{gap:12px;padding:14px}.pulse-ring{width:96px;height:96px}.pr-val{font-size:22px}}
.pr-val{direction:ltr}
.pr-text{min-width:0}
.pr-title{white-space:nowrap}

/* ===== المبادرات ===== */
.ini-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}
.ini-new{display:inline-flex;align-items:center;gap:6px;padding:10px 20px;border:none;border-radius:12px;background:var(--navy);color:#fff;font:inherit;font-size:14px;font-weight:800;cursor:pointer;box-shadow:0 6px 16px rgba(15,40,73,.18);transition:transform .12s,box-shadow .12s}
.ini-new:hover{transform:translateY(-1px);box-shadow:0 10px 22px rgba(15,40,73,.22)}
.ini-new:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.ini-pill{flex-shrink:0;display:inline-block;padding:3px 11px;border-radius:20px;font-size:12px;font-weight:800;color:var(--c);background:color-mix(in srgb,var(--c) 11%,#fff);border:1px solid color-mix(in srgb,var(--c) 30%,#fff);white-space:nowrap}
.ini-fsec{border:1px solid var(--border);border-radius:12px;padding:14px 16px;margin-bottom:12px;background:#FBFCFE}
.ini-fh{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:14px;font-weight:800;color:var(--navy);margin-bottom:10px}
.ini-fh small{font-size:11.5px;font-weight:600;color:var(--muted)}
.ini-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.ini-2 textarea{min-height:92px}
.ini-note{margin:10px 0;padding:10px 12px;border-radius:10px;font-size:13px;line-height:1.7}
.ini-note.blue{background:rgba(37,99,168,.07);border:1px solid rgba(37,99,168,.22);color:#1d4f86}
.ini-note.red{background:rgba(192,57,43,.06);border:1px solid rgba(192,57,43,.22);color:#9b2c20}
.ini-sec-h{display:flex;align-items:center;gap:8px;margin:22px 0 12px;font-size:15.5px;font-weight:800;color:var(--navy)}
.ini-sec-h:first-of-type{margin-top:6px}
.ini-sec-h span{min-width:24px;padding:1px 8px;border-radius:10px;background:#EEF2F6;font-size:12.5px;text-align:center}
.ini-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:16px;margin-bottom:8px;align-items:start}
.ini-card{background:var(--card);border:1px solid var(--border);border-inline-start:4px solid var(--c);border-radius:14px;padding:16px 18px;box-shadow:0 1px 3px rgba(15,40,73,.05);display:flex;flex-direction:column;gap:10px}
.ini-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.ini-title{font-size:15.5px;font-weight:800;color:var(--navy);line-height:1.5}
.ini-by{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--muted)}
.ini-av{width:26px;height:26px;border-radius:50%;background:color-mix(in srgb,var(--c) 14%,#fff);color:var(--c);display:inline-flex;align-items:center;justify-content:center;font-weight:800;font-size:12.5px;flex-shrink:0}
.ini-desc{font-size:13.5px;line-height:1.8;color:#334155;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ini-facts{display:flex;flex-wrap:wrap;gap:6px}
.ini-facts span{font-size:12px;padding:3px 10px;border-radius:8px;background:#F3F6F9;color:#3b4b60}
.ini-card .ini-note{margin:0}
.ini-details{border-top:1px dashed var(--border);padding-top:10px;font-size:13px;line-height:1.8;display:flex;flex-direction:column;gap:6px}
.ini-dgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:4px}
.ini-dgrid div{background:#F8FAFC;border-radius:8px;padding:6px 10px;display:flex;flex-direction:column}
.ini-dgrid span{font-size:11.5px;color:var(--muted)}
.ini-dgrid b{font-size:13px;overflow-wrap:anywhere}
.ini-ev{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.ini-ev img{width:84px;height:64px;object-fit:cover;border-radius:8px;cursor:zoom-in;border:1px solid var(--border)}
.ini-ev a{font-size:12.5px;padding:6px 10px;border:1px solid var(--border);border-radius:8px}
.ini-doc{border:1px solid rgba(124,58,237,.25);background:rgba(124,58,237,.04);border-radius:12px;padding:14px}
.ini-doc .row-gap{margin-top:10px}
.ini-decide{border-top:1px dashed var(--border);padding-top:10px}
.ini-decide .row-gap{margin-top:8px}
.ini-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:10px;border-top:1px solid #EEF2F6}
.ini-actions .btn{padding:7px 12px;font-size:12.5px}
.ini-board{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:14px;margin-bottom:8px}
.ini-tile{all:unset;box-sizing:border-box;cursor:pointer;background:var(--card);border:1px solid var(--border);border-radius:14px;overflow:hidden;display:flex;flex-direction:column;transition:transform .12s,box-shadow .12s}
.ini-tile:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(15,40,73,.1)}
.ini-tile:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.ini-tile-img{height:110px;background:linear-gradient(135deg,#efe7ff,#e8f6f0) center/cover no-repeat;display:flex;align-items:center;justify-content:center;font-size:36px}
.ini-tile-b{padding:10px 12px 12px;display:flex;flex-direction:column;gap:3px}
.ini-tile-b b{font-size:13.5px;color:var(--navy);line-height:1.5}
.ini-tile-b span{font-size:12px;color:var(--muted)}
.ini-tile-b em{font-style:normal;font-size:11.5px;font-weight:700;color:#7C3AED}
@media (max-width:760px){.ini-list,.ini-2{grid-template-columns:1fr}.ini-dgrid{grid-template-columns:1fr}.ini-new{width:100%;justify-content:center}.ini-board{grid-template-columns:repeat(2,minmax(0,1fr))}.ini-tile-img{height:84px}}
@media (prefers-reduced-motion:reduce){.ini-new,.ini-tile{transition:none}}

/* ===== خدمة المستفيد ===== */
.ben-sum{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:16px}
.ben-tile{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:14px;border:1.5px solid var(--border);background:var(--card);font:inherit;color:var(--navy);cursor:pointer;text-align:start;transition:border-color .12s,box-shadow .12s}
.ben-tile:hover{border-color:color-mix(in srgb,var(--c) 45%,#fff)}
.ben-tile.on{border-color:var(--c);box-shadow:0 0 0 3px color-mix(in srgb,var(--c) 14%,transparent);background:color-mix(in srgb,var(--c) 4%,#fff)}
.ben-tile:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.ben-ic{width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:21px;background:color-mix(in srgb,var(--c) 12%,#fff);flex-shrink:0}
.ben-tx{display:flex;flex-direction:column;flex:1;min-width:0}
.ben-tx b{font-size:15px}
.ben-tx small{font-size:12px;color:var(--muted)}
.ben-n{font-size:28px;font-weight:800;color:var(--c);font-variant-numeric:tabular-nums;line-height:1}
.ben-head{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin-bottom:16px}
.ben-hint{font-size:12.5px;color:var(--muted)}
.ben-hint a{color:var(--blue);font-weight:700}
.ben-done{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;padding:12px 14px;border-radius:12px;background:rgba(29,158,117,.08);border:1px solid rgba(29,158,117,.3);font-size:14px}
.ben-done>span{flex:1;min-width:200px}
.ben-x{border:none;background:none;font-size:20px;line-height:1;color:var(--muted);cursor:pointer;padding:2px 6px}
.ben-info .ben-sub{margin-top:4px;font-size:12.5px;color:var(--teal);font-weight:700}
.ben-rep{font-weight:800;color:#B7791F}
.ben-rep.hi{color:var(--red)}
.ben-inside{border-color:rgba(29,158,117,.35)}
.ben-count{display:inline-block;min-width:22px;padding:0 7px;margin-inline-start:4px;border-radius:10px;background:rgba(29,158,117,.12);color:#0F6E54;font-size:12.5px;text-align:center}
.ben-in{display:flex;align-items:center;gap:12px;padding:10px 0;border-top:1px solid #EEF2F6}
.ben-in:first-of-type{border-top:none}
.ben-in-b{flex:1;min-width:0;display:flex;flex-direction:column}
.ben-in-b b{font-size:14px}
.ben-in-b span{font-size:12.5px;color:var(--muted)}
.ben-in-t{display:flex;flex-direction:column;align-items:center;font-variant-numeric:tabular-nums}
.ben-in-t b{font-size:14px}
.ben-in-t small{font-size:11.5px;color:var(--muted)}
.ben-in-t small.long{color:var(--red);font-weight:700}
.gen-cards{display:none}
.gen-empty{text-align:center;color:var(--muted);font-size:13px;padding:18px 0}
.ben-card{border:1px solid var(--border);border-radius:12px;padding:12px 14px;margin-bottom:10px;display:flex;flex-direction:column;gap:6px}
.ben-card-top{display:flex;align-items:center;gap:8px}
.ben-card-top b{font-size:14.5px}
.ben-date{margin-inline-start:auto;font-size:12px;color:var(--muted)}
.ben-card-sub{font-size:13px;color:#3b4b60}
.ben-facts{display:flex;flex-wrap:wrap;gap:6px}
.ben-facts span{font-size:12px;padding:2px 9px;border-radius:8px;background:#F3F6F9;color:#3b4b60}
.ben-card-act{display:flex;flex-wrap:wrap;gap:6px;padding-top:8px;border-top:1px solid #EEF2F6}
.ben-card-act .btn{padding:6px 11px;font-size:12.5px}
.ben-sms-row{display:flex;align-items:flex-start;gap:10px;padding:10px 0;border-top:1px solid #EEF2F6;cursor:pointer}
.ben-sms-row:first-of-type{border-top:none}
.ben-sms-row input{margin-top:4px}
.ben-sms-row span{display:flex;flex-direction:column;gap:2px}
.ben-sms-row small{font-size:12px;color:var(--muted)}
@media (max-width:760px){
  .ben-sum{gap:8px}
  .ben-tile{flex-direction:column;align-items:flex-start;gap:6px;padding:10px 12px}
  .ben-ic{width:34px;height:34px;font-size:17px}
  .ben-tx b{font-size:13px}
  .ben-tx small{display:none}
  .ben-n{font-size:24px}
  .ben-head .ini-new{width:100%;justify-content:center}
  .gen-table{display:none}
  .gen-cards{display:block}
  .ben-in{flex-wrap:wrap}
  .ben-in .btn{width:100%}
}
.u-card .td-actions{display:flex;flex-wrap:wrap;gap:6px}
.u-card .ben-card-top b{font-weight:700}

/* ===== الحضور: المبنى + المقاعد + النداء ===== */
.att-pulse{position:relative;overflow:hidden;border-radius:18px;padding:18px 22px;color:#fff;display:flex;align-items:center;gap:22px;margin-bottom:16px;
  background:radial-gradient(520px 180px at 92% 0%,rgba(201,162,39,.22),transparent),linear-gradient(120deg,var(--navy),var(--navy2))}
.att-ring{--p:0;width:92px;height:92px;border-radius:50%;flex-shrink:0;display:grid;place-items:center;background:conic-gradient(var(--gold) calc(var(--p)*1%),rgba(255,255,255,.14) 0)}
.att-ring>div{width:74px;height:74px;border-radius:50%;background:#132f55;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.15}
.att-ring b{font-size:21px;font-variant-numeric:tabular-nums}.att-ring small{font-size:10px;opacity:.75}
.att-pt{min-width:0}
.att-pt h2{margin:2px 0 0;font-size:19px;font-weight:800}
.att-pt p{margin:3px 0 0;font-size:13px;opacity:.82}
.att-live{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;color:#cfe0f5}
.att-live.on{color:#bff3df}
.att-live i{width:8px;height:8px;border-radius:50%;background:#3ee0a1;box-shadow:0 0 0 4px rgba(62,224,161,.2)}
.att-date{display:inline-flex;align-items:center;gap:6px;margin-top:8px;font-size:12px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);border-radius:9px;padding:3px 8px}
.att-date input{background:transparent;border:none;color:#fff;font:inherit;font-size:12.5px;color-scheme:dark}
.att-kpis{display:flex;gap:10px;margin-inline-start:auto}
.att-kpis>div{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.14);border-radius:12px;padding:8px 14px;text-align:center;min-width:86px}
.att-kpis b{display:block;font-size:22px;font-variant-numeric:tabular-nums}.att-kpis span{font-size:11.5px;opacity:.8}
.att-grid{display:grid;grid-template-columns:320px minmax(0,1fr);gap:16px;align-items:start}
.att-grid>*{min-width:0}
.att-panel{background:#fff;border:1px solid var(--border);border-radius:16px;padding:16px;margin-bottom:16px}
.att-empty{text-align:center;color:var(--muted);padding:44px 16px;font-size:14px}
.att-ph{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.att-ph h3{margin:0;font-size:15px;font-weight:800}.att-ph small{font-size:11.5px;color:var(--muted)}
.att-bld{position:relative;padding-top:34px}
.att-roof{position:absolute;top:0;left:8px;right:8px;height:30px;background:var(--navy);clip-path:polygon(50% 0,100% 100%,0 100%);opacity:.9}
.att-flag{position:absolute;top:-12px;left:50%;width:2px;height:20px;background:var(--navy)}
.att-flag:after{content:"";position:absolute;top:0;left:2px;width:16px;height:10px;background:#0F7A45;border-radius:0 2px 2px 0}
.att-floor{display:grid;grid-template-columns:52px 1fr;gap:6px;align-items:center;padding:6px 0;border-bottom:3px solid #e9eef4}
.att-floor:last-child{border-bottom:6px solid var(--navy)}
.att-floor>span{font-size:12px;font-weight:800;color:var(--muted)}
.att-floor>div{display:grid;grid-template-columns:repeat(auto-fill,minmax(86px,1fr));gap:6px}
.att-room{display:flex;align-items:center;justify-content:space-between;gap:6px;border-radius:10px;padding:7px 8px;font:inherit;font-size:12px;font-weight:800;border:1.5px solid;cursor:pointer;white-space:nowrap}
.att-room.done{background:#EAF6F1;border-color:#b9e3d2;color:#0F6E54}
.att-room.pend{background:#fff;border:1.5px dashed #c6d0dc;color:#7b8aa0}
.att-room.cur{background:var(--navy);border-color:var(--navy);color:#fff;box-shadow:0 6px 16px rgba(15,40,73,.25)}
.att-room em{font-style:normal;font-size:11px;font-weight:700;padding:1px 7px;border-radius:8px;background:rgba(214,69,50,.12);color:#C0392B}
.att-room em.ok{background:rgba(29,158,117,.14);color:#0F6E54}
.att-room.cur em{background:rgba(255,255,255,.18);color:#fff}
.att-room:focus-visible,.att-seat:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.att-blink{width:7px;height:7px;border-radius:50%;background:var(--amber);animation:attBlink 1.4s infinite}
@keyframes attBlink{50%{opacity:.25}}
.att-legend{display:flex;gap:12px;flex-wrap:wrap;margin-top:10px;font-size:11.5px;color:var(--muted)}
.att-legend span{display:inline-flex;align-items:center;gap:5px}
.att-legend i{width:12px;height:12px;border-radius:4px}
.att-legend i.d{background:#EAF6F1;border:1px solid #b9e3d2}.att-legend i.p{border:1.5px dashed #c6d0dc}.att-legend i.c{background:var(--navy)}
.att-link{margin-top:12px;width:100%;border:1px solid var(--border);background:#F8FAFC;border-radius:10px;padding:8px;font:inherit;font-size:12.5px;font-weight:700;color:var(--navy);cursor:pointer}
.att-strip{display:none}
.att-ch{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.att-ch h3{margin:0;font-size:19px;font-weight:900}
.att-sub{font-size:12.5px;color:var(--muted)}
.att-seg{display:inline-flex;background:#EEF2F6;border-radius:10px;padding:3px;margin-inline-start:auto}
.att-seg button{border:none;background:none;font:inherit;font-size:12.5px;font-weight:700;padding:6px 12px;border-radius:8px;color:var(--muted);cursor:pointer}
.att-seg button.on{background:#fff;color:var(--navy);box-shadow:0 1px 3px rgba(0,0,0,.08)}
.att-tools{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.att-q{flex:1;min-width:160px;border:1.5px solid var(--border);border-radius:10px;padding:7px 12px;font:inherit;font-size:13px}
.att-tl{border:1.5px solid var(--border);background:#fff;border-radius:10px;padding:6px 12px;font:inherit;font-size:12.5px;font-weight:700;color:var(--navy);cursor:pointer;white-space:nowrap}
.att-brush{display:flex;align-items:center;gap:8px;margin-top:12px;overflow-x:auto;padding-bottom:2px}
.att-brush>span{font-size:12.5px;color:var(--muted);font-weight:700;flex-shrink:0}
.att-brush button{flex-shrink:0;display:inline-flex;align-items:center;gap:7px;padding:7px 13px;border-radius:999px;border:1.5px solid var(--border);font:inherit;font-size:13px;font-weight:800;background:#fff;color:var(--navy);cursor:pointer}
.att-brush button i{width:13px;height:13px;border-radius:50%;background:var(--c)}
.att-brush button.on{border-color:var(--c);background:color-mix(in srgb,var(--c) 10%,#fff);color:var(--c);box-shadow:0 0 0 3px color-mix(in srgb,var(--c) 15%,transparent)}
.att-arr{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:12px;padding:10px 12px;border-radius:12px;background:#FFF8E6;border:1px solid #f3dc9b;font-size:13px;font-weight:700}
.att-arr .btn{margin-inline-start:auto}
.att-board{margin:16px auto 0;width:60%;height:12px;border-radius:0 0 10px 10px;background:linear-gradient(#2c4a3a,#1d3328);position:relative}
.att-board span{position:absolute;top:13px;left:0;right:0;text-align:center;font-size:10.5px;color:var(--muted);font-weight:700}
.att-seats{display:grid;grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:12px 10px;margin-top:30px}
.att-seat{position:relative;border:1.5px solid var(--border);border-radius:14px;padding:12px 6px 9px;text-align:center;background:#fff;font:inherit;color:var(--navy);cursor:pointer;display:flex;flex-direction:column;align-items:center;min-width:0;transition:transform .1s,opacity .15s}
.att-seat:active{transform:scale(.96)}
.att-seat:after{content:"";position:absolute;bottom:-5px;left:22%;right:22%;height:5px;border-radius:0 0 6px 6px;background:#e3e8ef}
.att-av{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;font-weight:900;font-size:16px;background:#EEF4FA;color:var(--navy);margin-bottom:5px}
.att-seat b{font-size:12.5px;font-weight:800;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.att-seat small{font-size:10.5px;color:var(--muted);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.att-hist{display:flex;justify-content:center;gap:3px;margin-top:6px}
.att-hist i{width:6px;height:6px;border-radius:50%;background:#cfe9de}
.att-hist i.a{background:#D64532}.att-hist i.l{background:var(--amber)}.att-hist i.e{background:var(--blue)}.att-hist i.n{background:#e5e9ef}
.att-hist.big i{width:10px;height:10px}
.att-per{margin-top:4px;font-size:10px;font-weight:700;color:#7a1f16}
.att-seat.absent{border-color:#D64532;background:#FDF0EE}.att-seat.absent .att-av{background:#D64532;color:#fff}
.att-seat.late{border-color:var(--amber);background:#FFF8E6}.att-seat.late .att-av{background:var(--amber);color:#fff}
.att-seat.excused{border-color:var(--blue);background:#EEF4FC}.att-seat.excused .att-av{background:var(--blue);color:#fff}
.att-seat.swap{outline:3px dashed var(--gold);outline-offset:2px}
.att-seat.dim,.att-li.dim{opacity:.25}
.att-tag{position:absolute;top:-9px;left:50%;transform:translateX(-50%);max-width:96%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:800;padding:1px 8px;border-radius:8px;color:#fff;background:var(--c)}
.att-warn{position:absolute;top:6px;inset-inline-start:6px;font-size:13px}
.att-list{display:flex;flex-direction:column;margin-top:12px}
.att-li{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:9px 4px;border-top:1px solid #EEF2F6}
.att-li.absent{background:#FDF6F5}.att-li.late{background:#FFFBF0}
.att-no{width:22px;text-align:center;font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}
.att-ln{flex:1;min-width:140px;display:flex;flex-direction:column}
.att-ln b{font-size:13.5px}.att-ln small{font-size:11.5px;color:var(--muted)}
.att-dots{display:flex;gap:5px}
.att-dots button{width:34px;height:34px;border-radius:50%;border:1.5px solid color-mix(in srgb,var(--c) 45%,#fff);background:#fff;color:var(--c);font:inherit;font-weight:900;font-size:13px;cursor:pointer}
.att-dots button.on{background:var(--c);border-color:var(--c);color:#fff}
.att-pbtn{border:1px solid var(--border);background:#fff;border-radius:8px;padding:5px 9px;font:inherit;font-size:11.5px;font-weight:700;color:var(--muted);cursor:pointer}
.att-pbtn.on{color:var(--navy);border-color:var(--navy)}
.att-pers{flex-basis:100%;display:flex;flex-wrap:wrap;gap:8px;padding:6px 32px 2px 0}
.att-pers label{display:flex;flex-direction:column;font-size:11px;font-weight:700;color:var(--muted)}
.att-pers select{font:inherit;font-size:12.5px;border:1px solid var(--border);border-radius:8px;padding:4px 6px}
.att-ins{margin-top:16px;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}
.att-ins>div{border-radius:12px;padding:10px 12px;font-size:12.5px;line-height:1.7;background:#F8FAFC;border:1px solid var(--border)}
.att-ins>div b{display:block;font-size:12px;color:var(--muted)}
.att-ins>div.hot{background:#FFF6F4;border-color:#f5cfc8}
.att-bar{position:sticky;bottom:12px;z-index:6;display:flex;align-items:center;gap:10px;justify-content:space-between;background:var(--navy);color:#fff;border-radius:16px;padding:9px 10px;box-shadow:0 14px 34px rgba(15,40,73,.3);margin-top:-4px}
.att-cnt{display:flex;gap:6px;flex-wrap:wrap}
.att-cnt span{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:800;padding:5px 10px;border-radius:9px;background:rgba(255,255,255,.1);font-variant-numeric:tabular-nums}
.att-cnt i{width:8px;height:8px;border-radius:50%}
.att-go{border:none;background:var(--gold);color:var(--navy);border-radius:12px;padding:8px 16px;font:inherit;font-weight:900;font-size:14px;cursor:pointer;white-space:nowrap;line-height:1.3}
.att-go small{display:block;font-size:10.5px;font-weight:700;opacity:.75}
.att-go.ok{background:#3ee0a1}
.att-call{margin-top:12px;border-radius:18px;background:radial-gradient(500px 300px at 50% 0%,#1d4b80,transparent),var(--navy);color:#fff;padding:14px 16px 18px;touch-action:pan-y}
.att-chd{display:flex;align-items:center;justify-content:space-between;font-size:13px}
.att-chd button{border:none;background:none;color:#fff;font:inherit;font-size:13px;cursor:pointer;opacity:.85}
.att-prog{height:6px;border-radius:6px;background:rgba(255,255,255,.12);margin:12px 0 16px;overflow:hidden}
.att-prog i{display:block;height:100%;background:var(--gold);transition:width .25s}
.att-deck{position:relative;height:400px;display:flex;align-items:center;justify-content:center}
.att-cd{position:absolute;width:86%;max-width:330px;height:370px;border-radius:26px;background:#fff;color:var(--navy);box-shadow:0 30px 60px rgba(0,0,0,.35);display:flex;flex-direction:column;align-items:center;padding:26px 18px 18px}
.att-cd.b2{transform:translateY(-16px) scale(.92);opacity:.45}.att-cd.b3{transform:translateY(-30px) scale(.84);opacity:.2}
.att-cd.f{cursor:grab;user-select:none;touch-action:none;transition:transform .12s}
.att-big{width:104px;height:104px;border-radius:50%;display:grid;place-items:center;font-size:40px;font-weight:900;background:#EEF4FA}
.att-cd h2{margin:14px 0 0;font-size:24px;font-weight:900;text-align:center;line-height:1.35}
.att-meta{font-size:12.5px;color:var(--muted);margin-top:6px}
.att-spk{margin-top:auto;border:none;display:inline-flex;align-items:center;gap:8px;font:inherit;font-size:13px;font-weight:800;color:var(--blue);background:#EEF4FC;border-radius:999px;padding:7px 14px;cursor:pointer}
.att-stamp{position:absolute;top:22px;right:20px;border:3px solid var(--c);color:var(--c);font-weight:900;font-size:18px;padding:1px 12px;border-radius:10px;transform:rotate(12deg)}
.att-acts{display:flex;justify-content:center;align-items:center;gap:22px;margin-top:14px}
.att-acts button{width:72px;height:72px;border-radius:50%;background:transparent;font-size:28px;font-weight:900;border:3px solid;cursor:pointer}
.att-acts .no{border-color:#f08a7c;color:#f08a7c}.att-acts .ok{border-color:#5fe0b0;color:#5fe0b0}
.att-acts .mid{width:56px;height:56px;font-size:21px;border-color:#f3c75a;color:#f3c75a}
.att-hint{text-align:center;font-size:12px;opacity:.75;margin-top:12px}
.att-hint a{color:#fff;font-weight:700}
.att-cdone{text-align:center;padding:40px 10px}
.att-cdone>div{font-size:46px}.att-cdone h2{margin:6px 0}.att-cdone p{opacity:.8;margin:0 0 18px}
@media (max-width:1100px){.att-grid{grid-template-columns:1fr}.att-bld-wrap{display:none}.att-strip{display:flex;gap:8px;overflow-x:auto;padding-bottom:6px;margin-bottom:12px}.att-strip .att-room{flex-shrink:0}}
@media (max-width:760px){
  .att-pulse{flex-wrap:wrap;padding:14px;gap:12px}
  .att-ring{width:70px;height:70px}.att-ring>div{width:56px;height:56px}.att-ring b{font-size:16px}
  .att-pt{flex:1}.att-pt h2{font-size:16px}.att-pt p{font-size:12px}
  .att-kpis{margin:0;width:100%;gap:6px}.att-kpis>div{flex:1;min-width:0;padding:6px}.att-kpis b{font-size:18px}
  .att-panel{padding:12px}
  .att-seg{margin:0;width:100%}.att-seg button{flex:1}
  .att-seats{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 8px}
  .att-board{width:80%}
  .att-bar{bottom:8px;padding:7px}
  .att-cnt span{padding:4px 7px;font-size:11.5px}
  .att-go{padding:7px 11px;font-size:13px}
  .att-li .att-pbtn{margin-inline-start:32px}
}
@media (prefers-reduced-motion:reduce){.att-blink{animation:none}.att-cd.f,.att-prog i{transition:none}}

/* ===== تسجيل حالات الحصص: الملصقات + الطقس ===== */
.pi-pick{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;font-size:13px;color:var(--muted)}
.pi-pick input,.pi-pick select{font:inherit;font-size:13px;border:1.5px solid var(--border);border-radius:10px;padding:6px 10px;background:#fff;color:var(--navy)}
.pi-head{background:radial-gradient(520px 200px at 95% 0%,rgba(109,79,194,.35),transparent),linear-gradient(120deg,var(--navy),var(--navy2))}
.pi-clock{background:conic-gradient(#7ee3c0 calc(var(--p)*1%),rgba(255,255,255,.14) 0)}
.pi-badge{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:800;color:#ffd7d2;background:rgba(214,69,50,.25);padding:2px 10px;border-radius:999px}
.pi-badge i{width:7px;height:7px;border-radius:50%;background:#ff7b6b;animation:attBlink 1.2s infinite}
.pi-mood{margin-inline-start:auto;display:flex;align-items:center;gap:12px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);border-radius:14px;padding:8px 14px}
.pi-mood>span{font-size:36px;line-height:1}
.pi-mood b{display:block;font-size:15px}.pi-mood small{font-size:11.5px;opacity:.8}
.pi-pers{display:flex;gap:8px;margin-bottom:16px;overflow-x:auto;padding-bottom:3px}
.pi-per{flex:1 0 auto;min-width:118px;background:#fff;border:1.5px solid var(--border);border-radius:12px;padding:7px 10px;display:flex;align-items:center;gap:8px;font:inherit;color:var(--navy);cursor:pointer;text-align:start}
.pi-per>span{font-size:22px}
.pi-per b{display:block;font-size:12.5px;white-space:nowrap}.pi-per small{font-size:11px;color:var(--muted);white-space:nowrap}
.pi-per.on{border-color:#6D4FC2;box-shadow:0 0 0 3px rgba(109,79,194,.15)}
.pi-per.fut{opacity:.55;border-style:dashed}
.pi-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px;align-items:start}
.pi-grid.solo{grid-template-columns:minmax(0,1fr)}
.pi-grid>*{min-width:0}
.pi-seats{gap:16px 10px}
.pi-seat.pi-neg{border-color:#f2b5ab;background:#FFF7F5}
.pi-seat.pi-pos{border-color:#b9e3d2;background:#F2FBF7}
.pi-seat.pi-out{opacity:.4;border-style:dashed}
.pi-seat.pi-out .att-av{background:#e5e9ef;color:#94a3b8}
.pi-stk{position:absolute;top:-12px;inset-inline-end:-6px;display:flex;gap:2px}
.pi-stk span{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-size:15px;background:#fff;box-shadow:0 3px 8px rgba(15,40,73,.18);border:2px solid var(--c)}
.pi-mem{margin-top:5px;display:flex;flex-wrap:wrap;gap:3px;justify-content:center}
.pi-mem i{font-style:normal;font-size:9.5px;font-weight:800;padding:0 5px;border-radius:6px;background:#F1F4F8;color:var(--muted);white-space:nowrap}
.pi-mem i.r{background:#FDECEA;color:#C0392B}.pi-mem i.g{background:#E6F6EF;color:#0F6E54}
.pi-tray{position:sticky;bottom:10px;z-index:6;margin-top:22px;border-radius:16px;background:var(--navy);padding:10px 12px 12px;color:#fff;box-shadow:0 12px 30px rgba(15,40,73,.25)}
.pi-th{font-size:12px;font-weight:700;opacity:.8;margin-bottom:8px}
.pi-row{display:flex;gap:7px;overflow-x:auto;padding-bottom:2px}
.pi-st{flex:1 0 auto;min-width:64px;display:flex;flex-direction:column;align-items:center;gap:3px;padding:7px 6px;border-radius:12px;background:rgba(255,255,255,.07);border:1.5px solid rgba(255,255,255,.12);font:inherit;font-size:11.5px;font-weight:700;color:#fff;cursor:pointer;white-space:nowrap}
.pi-st em{font-style:normal;font-size:22px;line-height:1}
.pi-st.on{background:#fff;color:var(--navy);border-color:#fff;box-shadow:0 0 0 3px rgba(255,255,255,.25)}
.pi-st.pos.on{box-shadow:0 0 0 3px rgba(62,224,161,.55)}.pi-st.neg.on{box-shadow:0 0 0 3px rgba(240,138,124,.6)}
.pi-sep{flex:0 0 1px;background:rgba(255,255,255,.15);margin:0 3px}
.pi-wx{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.pi-wr{border:1.5px solid var(--border);border-radius:12px;padding:7px 9px;display:flex;align-items:center;gap:8px;background:#fff;font:inherit;color:var(--navy);cursor:pointer;text-align:start}
.pi-wr>span{font-size:22px}
.pi-wr b{display:block;font-size:12.5px}.pi-wr small{font-size:10.5px;color:var(--muted)}
.pi-wr.me{border-color:#6D4FC2;background:#F5F2FD}.pi-wr.bad{border-color:#f2b5ab;background:#FFF7F5}
.pi-ins{display:flex;flex-direction:column;gap:10px}
.pi-ins>div{border-radius:12px;padding:10px 12px;font-size:12.5px;line-height:1.7;background:#F8FAFC;border:1px solid var(--border)}
.pi-ins>div>b{display:block;font-size:12px;color:var(--muted)}
.pi-ins>div.hot{background:#FFF6F4;border-color:#f5cfc8}
.pi-ins>div.star{background:#FFFBEB;border-color:#f5e2a8}
.pi-mini{margin-top:6px;border:none;font:inherit;font-size:12px;font-weight:800;padding:5px 12px;border-radius:9px;background:var(--navy);color:#fff;cursor:pointer}
.pi-mini.g{background:var(--gold);color:var(--navy)}
.pi-lb{display:flex;align-items:center;gap:8px;padding:4px 0}
.pi-lb span{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:900;background:#FFF3C4;color:#8a6400}
.pi-lb b{flex:1;font-size:12.5px}.pi-lb em{font-style:normal;font-weight:800;color:#8a6400}
.pi-back{position:fixed;inset:0;background:rgba(15,40,73,.35);z-index:60}
.pi-sheet{position:fixed;left:50%;bottom:0;transform:translateX(-50%);width:min(560px,100%);max-height:82vh;overflow-y:auto;background:#fff;border-radius:22px 22px 0 0;box-shadow:0 -20px 50px rgba(15,40,73,.3);padding:10px 18px 18px;z-index:61}
.pi-grab{width:44px;height:5px;border-radius:5px;background:#d5dbe3;margin:0 auto 10px}
.pi-sh{display:flex;align-items:center;gap:12px}
.pi-sh .att-av{width:50px;height:50px;font-size:19px;margin:0}
.pi-sh h3{margin:0;font-size:17px}.pi-sh small{color:var(--muted);font-size:12px}
.pi-x{margin-inline-start:auto;border:none;background:#F1F4F8;width:34px;height:34px;border-radius:50%;font-size:20px;cursor:pointer;color:var(--muted)}
.pi-tl{margin:12px 0;border-inline-start:2px solid #e3e8ef;padding-inline-start:14px}
.pi-tl div{position:relative;font-size:13px;padding:5px 0}
.pi-tl div:before{content:"";position:absolute;inset-inline-start:-20px;top:11px;width:10px;height:10px;border-radius:50%;background:#cbd5e1}
.pi-tl div.r:before{background:#D64532}.pi-tl div.g:before{background:var(--teal)}
.pi-tl div.now{font-weight:800}.pi-tl div.now:before{box-shadow:0 0 0 4px rgba(109,79,194,.25)}
.pi-tl small{color:var(--muted);font-weight:400}
@media (max-width:1100px){.pi-grid{grid-template-columns:1fr}}
@media (max-width:760px){
  .pi-mood{margin:0;width:100%;padding:6px 12px}.pi-mood>span{font-size:28px}
  .pi-tray{position:fixed;left:8px;right:8px;bottom:8px;margin:0;z-index:50}
  .pi-grid{padding-bottom:150px}
  .pi-st{min-width:60px;padding:6px 4px}.pi-st em{font-size:20px}
  .pi-wx{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* ===== تقرير الحضور ===== */
.ar-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;font-size:13px;color:var(--muted)}
.ar-chip{padding:7px 14px;border-radius:999px;border:1.5px solid var(--border);background:#fff;font:inherit;font-size:13px;font-weight:700;color:var(--navy);cursor:pointer}
.ar-chip.on{background:var(--navy);border-color:var(--navy);color:#fff}
.ar-in{font:inherit;font-size:13px;font-weight:700;border:1.5px solid var(--border);border-radius:10px;padding:6px 10px;background:#fff;color:var(--navy)}
.ar-print{margin-inline-start:auto;border:none;padding:9px 16px;border-radius:12px;background:var(--gold);color:var(--navy);font:inherit;font-weight:900;font-size:13.5px;cursor:pointer}
.ar-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}
.ar-kpi{background:#fff;border:1px solid var(--border);border-radius:16px;padding:14px 16px;display:flex;align-items:center;gap:10px;min-width:0}
.ar-kpi>div{min-width:0}
.ar-kpi b{display:block;font-size:26px;font-weight:900;line-height:1.15;font-variant-numeric:tabular-nums}
.ar-kpi span{font-size:12.5px;color:var(--muted)}
.ar-d{font-size:11.5px;font-weight:800;color:var(--muted)}.ar-d.up{color:var(--teal)}.ar-d.dn{color:var(--red)}
.ar-kpi .ar-spk{margin-inline-start:auto;flex-shrink:0}
.ar-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:16px;align-items:start}
.ar-grid>*{min-width:0}
.ar-hm{display:flex;gap:6px;align-items:flex-start;overflow-x:auto;padding-bottom:4px}
.ar-hd,.ar-wk{display:grid;grid-template-rows:20px repeat(5,24px);gap:5px;flex-shrink:0}
.ar-hd span{font-size:11px;color:var(--muted);font-weight:700;display:flex;align-items:center;padding-inline-end:4px}
.ar-wk b{font-size:10.5px;color:var(--muted);font-weight:700;white-space:nowrap;max-width:24px;overflow:visible}
.ar-c{display:inline-block;width:24px;height:24px;border-radius:7px;background:var(--c)}
.ar-c.none{background:transparent}
.ar-c.off{background:repeating-linear-gradient(45deg,#f1f4f8 0 4px,#fff 4px 8px);border:1px dashed #dde3ea}
.ar-c.hot{outline:2px solid var(--navy);outline-offset:2px}
.ar-lg{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:11.5px;color:var(--muted);margin-top:10px}
.ar-lg i{width:16px;height:16px;border-radius:5px;display:inline-block}
.ar-lg .ar-c{width:16px;height:16px}
.ar-notes{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.ar-notes span{font-size:12.5px;padding:6px 12px;border-radius:10px;background:#FFF6F4;border:1px solid #f5cfc8;color:#9b2c20;font-weight:700}
.ar-notes span.b{background:#EEF4FC;border-color:#cfe0f5;color:#1d4f86}
.ar-tiers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.ar-tier{border-radius:14px;padding:12px 14px;border:1.5px solid;display:flex;flex-direction:column;gap:8px;min-width:0}
.ar-tier.t1{background:#FFFBEB;border-color:#f3dc9b}.ar-tier.t2{background:#FFF4EA;border-color:#f6c9a0}.ar-tier.t3{background:#FFF1EF;border-color:#f2b5ab}
.ar-tier h4{margin:0;font-size:13.5px;display:flex;align-items:center;justify-content:space-between;gap:6px}
.ar-tier h4 em{font-style:normal;font-size:22px;font-weight:900}
.ar-tier small{font-size:12px;color:var(--muted)}
.ar-avs{display:flex;flex-wrap:wrap;gap:5px}
.ar-avs>span{display:inline-flex;align-items:center;border-radius:999px;background:#fff;border:1px solid var(--border);overflow:hidden}
.ar-avs button{border:none;background:none;font:inherit;font-size:11.5px;font-weight:700;padding:3px 9px;color:var(--navy);cursor:pointer}
.ar-avs button b{color:#C0392B}
.ar-avs .ar-ref{border-inline-start:1px solid var(--border);padding:3px 7px}
.ar-avs .more{font-size:11.5px;font-weight:700;padding:3px 9px;color:var(--muted)}
.ar-act{align-self:flex-start;border:none;font:inherit;font-size:12.5px;font-weight:800;padding:6px 12px;border-radius:10px;background:var(--navy);color:#fff;cursor:pointer}
.ar-lnk{border:none;background:none;font:inherit;font-size:12px;font-weight:700;color:var(--blue);cursor:pointer;padding:0 4px}
.ar-cfg{display:inline-flex;align-items:center;gap:5px}
.ar-cfg input{width:48px;font:inherit;font-size:12.5px;border:1px solid var(--border);border-radius:8px;padding:3px 5px;text-align:center}
.ar-league{display:flex;flex-direction:column}
.ar-row{display:grid;grid-template-columns:28px minmax(0,1fr) 88px 86px 52px;align-items:center;gap:10px;padding:7px 2px;border-top:1px solid #EEF2F6;font-size:13px}
.ar-row:first-child{border-top:none}
.ar-row.me{background:#F5F2FD;border-radius:10px}
.ar-rk{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-weight:900;font-size:12px;background:#F1F4F8;color:var(--muted)}
.ar-rk.g1{background:#FFF3C4;color:#8a6400}.ar-rk.g2{background:#EEF1F5;color:#475569}.ar-rk.g3{background:#FBE7D9;color:#9a4f17}
.ar-rate{font-weight:900;font-variant-numeric:tabular-nums}
.ar-pb{height:8px;border-radius:5px;background:#EEF2F6;overflow:hidden}.ar-pb i{display:block;height:100%;border-radius:5px}
.ar-say{margin-top:12px;font-size:13px;background:#F8FAFC;border:1px solid var(--border);border-radius:12px;padding:9px 12px}
.ar-wd{display:flex;align-items:flex-end;gap:12px;height:150px;padding:0 6px}
.ar-wd>div{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;height:100%;justify-content:flex-end}
.ar-wd i{width:100%;max-width:46px;border-radius:9px 9px 4px 4px;background:#9FC4E8}
.ar-wd i.max{background:var(--red)}
.ar-wd b{font-size:12.5px}.ar-wd small{font-size:11px;color:var(--muted);font-weight:700}
.ar-pats{display:flex;flex-direction:column;gap:9px}
.ar-pat{display:flex;gap:10px;align-items:flex-start;font-size:13px;line-height:1.7;padding:9px 11px;border-radius:12px;background:#F8FAFC;border:1px solid var(--border)}
.ar-pat[onclick]{cursor:pointer}.ar-pat[onclick]:hover{border-color:#b9c7d8}
.ar-pat em{font-style:normal;font-size:19px}
.ar-pat small{display:block;color:var(--muted);font-size:11.5px}
.ar-stu{display:flex;align-items:center;gap:12px;margin-bottom:10px}
.ar-stu .att-av{width:46px;height:46px;font-size:18px;margin:0;background:#FFF0ED;color:#C0392B}
.ar-stu h4{margin:0;font-size:15px}.ar-stu small{color:var(--muted);font-size:12px}
.ar-mini{display:flex;flex-wrap:wrap;gap:4px}
.ar-mini i{width:18px;height:18px;border-radius:5px;background:#cfe9de}
.ar-mini i.a{background:#D64532}.ar-mini i.l{background:var(--amber)}.ar-mini i.e{background:var(--blue)}.ar-mini i.o{background:#eef1f5}
.ar-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.ar-tags span{font-size:11.5px;font-weight:800;padding:3px 10px;border-radius:999px;background:#FDECEA;color:#C0392B}
.ar-tags span.n{background:#F1F4F8;color:var(--muted)}
.ar-hist{display:flex;align-items:flex-end;gap:6px;height:120px}
.ar-hist>div{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;height:100%;justify-content:flex-end}
.ar-hist i{width:100%;border-radius:7px 7px 3px 3px;background:#F3C75A;min-height:2px}
.ar-hist i.pk{background:var(--amber)}
.ar-hist small{font-size:10.5px;color:var(--muted);font-weight:700;white-space:nowrap}
.ar-hist small.n{color:var(--navy)}
.ar-fold{width:100%;display:flex;align-items:center;justify-content:space-between;border:none;background:none;font:inherit;font-weight:800;font-size:14px;color:var(--navy);cursor:pointer;padding:0}
.ar-fold span{font-size:12.5px;color:var(--muted);font-weight:700}
.ar-fold+.tbl-wrap,.ar-fold+div{margin-top:12px}
@media (max-width:1100px){.ar-grid{grid-template-columns:1fr}.ar-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){
  .ar-print{width:100%;margin:0}
  .ar-kpis{gap:8px}.ar-kpi{padding:10px 12px}.ar-kpi b{font-size:22px}.ar-kpi .ar-spk{display:none}
  .ar-tiers{grid-template-columns:1fr}
  .ar-row{grid-template-columns:26px minmax(0,1fr) 56px 64px 46px;gap:6px}
  .ar-row .ar-spk{width:64px}
  .ar-c{width:20px;height:20px}.ar-hd,.ar-wk{grid-template-rows:20px repeat(5,20px)}
}

/* ===== ملف الطالب ===== */
.sf-navs{display:flex;justify-content:flex-end;gap:8px;margin:-4px 0 10px}
.sf-nav{border:1.5px solid var(--border);background:#fff;border-radius:10px;padding:6px 12px;font:inherit;font-size:12.5px;font-weight:700;color:var(--navy);cursor:pointer}
.sf-hero{position:relative;overflow:hidden;border-radius:20px;padding:20px 22px;color:#fff;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:20px;align-items:center;margin-bottom:14px;
  background:radial-gradient(500px 220px at 8% 0%,rgba(201,162,39,.25),transparent),linear-gradient(120deg,var(--navy),var(--navy2))}
.sf-av{width:84px;height:84px;border-radius:24px;display:grid;place-items:center;font-size:36px;font-weight:900;background:linear-gradient(135deg,#ffffff22,#ffffff0d);border:1.5px solid #ffffff33}
.sf-hi h2{margin:0;font-size:23px;font-weight:900}
.sf-meta{font-size:13px;opacity:.85;margin-top:2px}
.sf-state{display:inline-flex;align-items:center;gap:7px;margin-top:8px;font-size:12.5px;font-weight:800;padding:4px 12px;border-radius:999px;border:1px solid}
.sf-state i{width:8px;height:8px;border-radius:50%}
.sf-state.red{background:rgba(240,138,124,.22);color:#ffd5cf;border-color:rgba(240,138,124,.5)}.sf-state.red i{background:#ff8a78}
.sf-state.amber{background:rgba(243,199,90,.18);color:#ffe9b3;border-color:rgba(243,199,90,.45)}.sf-state.amber i{background:#F3C75A}
.sf-state.green{background:rgba(95,224,176,.16);color:#c9f6e4;border-color:rgba(95,224,176,.4)}.sf-state.green i{background:#5fe0b0}
.sf-contact{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}
.sf-contact a,.sf-contact span{font-size:12px;font-weight:700;padding:5px 11px;border-radius:10px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);color:#fff;text-decoration:none}
.sf-rings{display:flex;gap:14px}
.sf-ring{--c:#5fe0b0;background:conic-gradient(var(--c) calc(var(--p)*1%),rgba(255,255,255,.14) 0)}
.sf-next{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:14px 16px;border-radius:16px;background:#FFF6F4;border:1.5px solid #f5cfc8;margin-bottom:16px}
.sf-next.ok{background:#F2FBF7;border-color:#b9e3d2}
.sf-next>em{font-style:normal;font-size:28px}
.sf-next>div:not(.sf-nb){flex:1;min-width:220px}
.sf-next b{display:block;font-size:14.5px}
.sf-next span{font-size:12.5px;color:#5b4a46}
.sf-nb{display:flex;gap:8px;flex-wrap:wrap}
.sf-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);gap:16px;align-items:start}
.sf-grid>*{min-width:0}
.sf-rad{display:flex;align-items:center;gap:14px}
.sf-radar{flex-shrink:0}
.sf-axes{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px}
.sf-ax{display:grid;grid-template-columns:70px 1fr 32px;align-items:center;gap:8px;font-size:12.5px}
.sf-ax b{font-variant-numeric:tabular-nums;text-align:left}
.sf-cal{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}
.sf-cal>span{font-size:11px;color:var(--muted);font-weight:700;text-align:center}
.sf-day{aspect-ratio:1.3;border-radius:10px;background:#E8F5EF;display:flex;flex-direction:column;align-items:center;justify-content:center;font-style:normal;color:#0F6E54;min-width:0}
.sf-day b{font-size:11.5px}.sf-day em{font-style:normal;font-size:12px;line-height:1.2}
.sf-day.a{background:#FDE4E0;color:#B5321F}.sf-day.l{background:#FFF1CC;color:#8a6400}.sf-day.e{background:#E3EDFB;color:#1d4f86}.sf-day.o{background:#F3F5F8;color:#a0aec0}
.sf-day.now{outline:2px solid var(--navy);outline-offset:1px}
.sf-str{display:flex;flex-wrap:wrap;gap:8px}
.sf-str span{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:800;padding:6px 12px;border-radius:12px;background:#F2FBF7;border:1px solid #b9e3d2;color:#0F6E54}
.sf-str em{font-style:normal;font-size:17px}.sf-str small{font-weight:700;color:var(--muted)}
.sf-ppl{display:flex;flex-direction:column;gap:8px}
.sf-p{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:12px;background:#F8FAFC;border:1px solid var(--border)}
.sf-p .att-av{width:34px;height:34px;font-size:14px;margin:0}
.sf-p b{display:block;font-size:13px}.sf-p small{font-size:11.5px;color:var(--muted)}
.sf-tag{margin-inline-start:auto;font-size:11.5px;font-weight:800;padding:2px 9px;border-radius:999px;background:#FFF3C4;color:#8a6400;white-space:nowrap}
.sf-chips{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}
.sf-wk{margin-bottom:14px}
.sf-wk h4{margin:0 0 6px;font-size:12.5px;color:var(--muted);display:flex;align-items:center;gap:8px}
.sf-wk h4:after{content:"";flex:1;height:1px;background:var(--border)}
.sf-ev{display:grid;grid-template-columns:82px 32px minmax(0,1fr);gap:8px;align-items:start;padding:6px 0}
.sf-d{font-size:11px;color:var(--muted);font-weight:700;line-height:1.5;padding-top:2px}
.sf-ic{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;font-size:15px;background:color-mix(in srgb,var(--b) 13%,#fff)}
.sf-ev b{font-size:13px}.sf-ev small{display:block;font-size:12px;color:var(--muted);overflow-wrap:anywhere}
.sf-more{display:block;margin:4px auto 0}
.sf-fold{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.sf-fold span{font-size:12.5px;font-weight:700;padding:6px 11px;border-radius:10px;background:#F8FAFC;border:1px solid var(--border)}
@media (max-width:1100px){.sf-grid{display:flex;flex-direction:column}.sf-grid>*{width:100%}.sf-colB{order:-1}}
@media (max-width:760px){
  .sf-hero{grid-template-columns:auto minmax(0,1fr);padding:16px;gap:14px}
  .sf-av{width:62px;height:62px;font-size:26px;border-radius:18px}
  .sf-hi h2{font-size:19px}
  .sf-rings{grid-column:1/-1;justify-content:space-around}
  .sf-rad{flex-direction:column;align-items:stretch}.sf-radar{align-self:center}
  .sf-ax{grid-template-columns:70px 1fr 32px}
  .sf-ev{grid-template-columns:70px 30px minmax(0,1fr)}
}

/* ===== إدارة الطلاب ===== */
.stu-head{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px}
.stu-head h2{margin:0;font-size:22px;font-weight:900}
.stu-head small{font-size:13px;color:var(--muted);font-weight:700}
.stu-head .sp{flex:1}
.stu-file{position:relative;overflow:hidden;cursor:pointer}
.stu-file input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%}
.stu-note{font-size:12.5px;background:#EEF4FC;border:1px solid #cfe0f5;color:#1d4f86;border-radius:12px;padding:9px 12px;margin:0 0 10px;line-height:1.8}
.stu-note.warn{background:#FFFBEB;border-color:#f3dc9b;color:#8a6400}
.stu-note.ok{background:#F2FBF7;border-color:#b9e3d2;color:#0F6E54}
.stu-health{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px;align-items:center}
.stu-health>span:first-child{font-size:13px;font-weight:800}
.stu-hc{display:inline-flex;align-items:center;gap:7px;padding:7px 13px;border-radius:999px;font:inherit;font-size:12.5px;font-weight:800;border:1.5px solid;cursor:pointer}
.stu-hc b{font-size:14px}
.stu-hc.r{background:#FFF1EF;border-color:#f2b5ab;color:#9b2c20}
.stu-hc.a{background:#FFFBEB;border-color:#f3dc9b;color:#8a6400}
.stu-hc.g{background:#F2FBF7;border-color:#b9e3d2;color:#0F6E54}
.stu-hc.on{box-shadow:0 0 0 3px rgba(15,40,73,.15);border-color:var(--navy)}
.stu-grid{display:grid;grid-template-columns:330px minmax(0,1fr);gap:16px;align-items:start}
.stu-grid>*{min-width:0;margin:0}
.stu-ph{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}
.stu-ph h3{margin:0;font-size:15.5px;font-weight:800}.stu-ph small{font-size:12px;color:var(--muted)}
.stu-floor{margin-bottom:10px}
.stu-floor h5{margin:0 0 6px;font-size:12px;color:var(--muted)}
.stu-rooms{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.stu-room{border:1.5px solid var(--border);border-radius:12px;padding:9px 11px;display:flex;flex-direction:column;gap:3px;background:#fff;font:inherit;color:var(--navy);text-align:right;cursor:pointer}
.stu-room:hover{background:#F8FAFC}
.stu-room b{font-size:14px;display:flex;align-items:center;justify-content:space-between}
.stu-room b em{font-style:normal;font-size:20px;font-weight:900;font-variant-numeric:tabular-nums}
.stu-room small{font-size:11.5px;color:var(--muted)}
.stu-room .warn{color:#B5321F;font-weight:700}
.stu-room.on{border-color:var(--navy);background:#F4F7FB;box-shadow:0 0 0 3px rgba(15,40,73,.08)}
.stu-room.low{border-style:dashed}
.stu-room .cnt{display:block;height:6px;border-radius:4px;background:#EEF2F6;overflow:hidden;margin-top:3px}
.stu-room .cnt i{display:block;height:100%;background:#9FC4E8;border-radius:4px}
.stu-search{display:flex;gap:8px;margin-bottom:10px;align-items:center}
.stu-search .ctl{flex:1;min-width:0}
.stu-all{display:flex;align-items:center;gap:5px;font-size:12.5px;font-weight:700;white-space:nowrap;cursor:pointer}
.stu-bulk{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:9px 12px;border-radius:12px;background:var(--navy);color:#fff;margin-bottom:10px;font-size:13px}
.stu-bulk>button{font:inherit;font-size:12.5px;font-weight:700;padding:6px 12px;border-radius:9px;background:rgba(255,255,255,.12);color:#fff;border:0;cursor:pointer}
.stu-bulk>button.on{background:#fff;color:var(--navy)}
.stu-bulk2{flex-basis:100%;display:flex;gap:8px;flex-wrap:wrap;align-items:center;padding-top:6px}
.stu-bulk2 .ctl{width:auto;min-width:120px;flex:0 1 auto}
.stu-bulk2.col{flex-direction:column;align-items:stretch}
.stu-bulk2.col .ctl{width:100%}
.stu-bulk2 small{opacity:.8;margin-inline-end:auto}
.stu-row{display:grid;grid-template-columns:20px 34px minmax(0,1.6fr) 140px minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 4px;border-top:1px solid #EEF2F6;font-size:13px}
.stu-row.sel{background:#F4F7FB}
.stu-row input[type=checkbox]{width:17px;height:17px;margin:0;accent-color:var(--navy)}
.stu-av{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;font-weight:900;font-size:13px;background:#EEF4FA}
.stu-nm{min-width:0}
.stu-nm b{font-size:13.5px}
.stu-nm .sub{display:block;font-size:11.5px;color:var(--muted);font-weight:600}
.stu-tag{font-size:11px;font-weight:800;padding:2px 8px;border-radius:999px;background:#FFF1EF;color:#9b2c20;white-space:nowrap}
.stu-tag.g{background:#EEF4FC;color:#1d4f86}
.stu-ph2{font:inherit;font-size:13px;font-variant-numeric:tabular-nums;font-weight:700;background:none;border:1px dashed transparent;border-radius:8px;padding:3px 6px;color:var(--navy);text-align:right;cursor:pointer;justify-self:start}
button.stu-ph2:hover{border-color:var(--border);background:#F8FAFC}
.stu-ph2.bad{color:#B5321F}.stu-ph2.none{color:#B5321F;font-weight:800;border-color:#f2b5ab}
.stu-phin{padding:5px 8px;font-size:13px}
.stu-sib{display:flex;flex-wrap:wrap;gap:4px}
.stu-sib button{font:inherit;font-size:11px;font-weight:700;padding:2px 8px;border-radius:999px;background:#EEF4FC;color:#1d4f86;border:0;cursor:pointer}
.stu-acts{display:flex;gap:4px;justify-content:flex-end}
.stu-acts button{font:inherit;font-size:12px;font-weight:800;padding:5px 8px;border-radius:9px;border:1px solid var(--border);background:#fff;cursor:pointer;color:var(--navy)}
.stu-acts button:hover{background:#F4F7FB}
.stu-empty{padding:26px;text-align:center;color:var(--muted);font-size:13px}
.stu-foot{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:12px;padding-top:10px;border-top:1px solid var(--border)}
.stu-foot small{color:var(--muted);font-size:11.5px}
.stu-dim{position:fixed;inset:0;background:rgba(15,40,73,.35);z-index:60}
.stu-modal{position:fixed;top:40px;left:50%;transform:translateX(-50%);width:min(860px,94vw);max-height:calc(100vh - 80px);overflow:auto;background:#fff;border-radius:20px;box-shadow:0 30px 70px rgba(15,40,73,.35);padding:20px 22px;z-index:61}
.stu-modal h2{margin:0 0 4px;font-size:19px;font-weight:900}
.stu-modal .lead{font-size:13px;color:var(--muted);margin:0 0 14px}
.stu-sum{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:12px}
.stu-sum>div{border-radius:14px;padding:12px 14px;border:1.5px solid}
.stu-sum b{display:block;font-size:26px;font-weight:900;font-variant-numeric:tabular-nums}
.stu-sum span{font-size:12.5px;font-weight:700}
.stu-sum .n{background:#F2FBF7;border-color:#b9e3d2;color:#0F6E54}
.stu-sum .u{background:#EEF4FC;border-color:#cfe0f5;color:#1d4f86}
.stu-sum .m{background:#FFFBEB;border-color:#f3dc9b;color:#8a6400}
.stu-sec{margin-top:12px}
.stu-sec h4{margin:0 0 6px;font-size:13.5px;display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.stu-sec h4 small{font-weight:600;color:var(--muted);font-size:11.5px}
.stu-li{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;padding:7px 10px;border-radius:10px;background:#F8FAFC;border:1px solid var(--border);margin-bottom:6px;font-size:13px}
.stu-ch{font-size:12px;color:var(--muted)}
.stu-ch del{color:#B5321F}.stu-ch i{font-style:normal;color:#B5321F}.stu-ch ins{text-decoration:none;color:#0F6E54;font-weight:800}
.stu-more{font-size:12px;color:var(--muted);padding:2px 10px}
.stu-sel,.stu-selall{display:inline-flex;gap:4px;margin-inline-start:auto}
.stu-sel button,.stu-selall button{font:inherit;font-size:11.5px;font-weight:800;padding:4px 9px;border-radius:8px;border:1px solid var(--border);background:#fff;color:var(--navy);cursor:pointer}
.stu-sel button.on{background:var(--navy);color:#fff;border-color:var(--navy)}
.stu-mfoot{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;margin-top:16px;padding-top:12px;border-top:1px solid var(--border);align-items:center}
.stu-mfoot small{margin-inline-end:auto;color:var(--muted);font-size:12px}
.stu-mfoot .sp{flex:1}
.stu-mfoot .btn[disabled]{opacity:.45;cursor:not-allowed}
.stu-promo{display:grid;grid-template-columns:1fr 40px 1fr 70px;gap:8px;align-items:center;padding:8px 10px;border-radius:12px;background:#F8FAFC;border:1px solid var(--border);margin-bottom:6px;font-size:13.5px;font-weight:700}
.stu-promo .ar{text-align:center;color:var(--muted)}
.stu-promo em{font-style:normal;text-align:left;font-weight:900;font-variant-numeric:tabular-nums}
.stu-promo.grad{background:#FFFBEB;border-color:#f3dc9b}
.stu-acts .txt{font-size:12px}
@media (max-width:1100px){.stu-grid{grid-template-columns:1fr}.stu-rooms{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (max-width:760px){
  .stu-head .btn,.stu-head .stu-file{flex:1 1 calc(50% - 10px);justify-content:center;text-align:center}
  .stu-head .sp{display:none}
  .stu-head h2{font-size:19px}
  .stu-board{padding:12px}
  .stu-board .stu-ph{margin-bottom:8px}
  .stu-floors{display:flex;gap:12px;overflow-x:auto;padding-bottom:6px;scroll-snap-type:x proximity}
  .stu-floor{flex:0 0 auto;margin:0;scroll-snap-align:start}
  .stu-rooms{grid-template-columns:repeat(2,104px);gap:6px}
  .stu-room{padding:7px 8px}.stu-room b{font-size:12.5px}.stu-room b em{font-size:17px}.stu-room small{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .stu-row{grid-template-columns:20px 32px minmax(0,1fr) auto;grid-template-areas:"cb av nm nm" ". . ph acts" ". . sib sib";row-gap:4px;gap:4px 8px}
  .stu-row>input[type=checkbox]{grid-area:cb}.stu-row>.stu-av{grid-area:av}.stu-row>.stu-nm{grid-area:nm}
  .stu-row>.stu-ph2,.stu-row>.stu-phin{grid-area:ph}.stu-row>.stu-acts{grid-area:acts}.stu-row>.stu-sib{grid-area:sib}
  .stu-row>.stu-sib:empty{display:none}
  .stu-row.arch>span:first-child{grid-area:cb}
  .stu-acts{gap:3px}.stu-acts button{padding:4px 6px;font-size:11.5px}
  .stu-modal{top:0;left:0;transform:none;width:100%;max-height:100vh;height:100%;border-radius:0;padding:16px 14px}
  .stu-sum{gap:6px}.stu-sum>div{padding:9px 10px}.stu-sum b{font-size:21px}.stu-sum span{font-size:11px}
  .stu-promo{grid-template-columns:1fr 26px 1fr 46px;font-size:12.5px}
}

/* ===== رائد النشاط ===== */
.act-stage{position:relative;overflow:hidden;border-radius:22px;padding:22px 24px;color:#fff;background:radial-gradient(120% 140% at 100% 0%,#1d3d6b 0%,#0F2849 55%,#0a1d36 100%);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:center;margin-bottom:16px}
.act-stage:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 38px,rgba(255,255,255,.035) 38px 40px);pointer-events:none}
.act-spot{position:absolute;top:-60px;left:12%;width:260px;height:260px;background:radial-gradient(circle,rgba(201,162,39,.35),transparent 65%);pointer-events:none}
.act-stage h1{margin:0;font-size:24px;font-weight:900;position:relative}
.act-stage p{margin:4px 0 14px;font-size:13px;opacity:.75;position:relative}
.act-kp{display:flex;gap:10px;flex-wrap:wrap;position:relative}
.act-kp>div{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);border-radius:14px;padding:9px 14px;min-width:120px}
.act-kp b{display:block;font-size:22px;font-weight:900;font-variant-numeric:tabular-nums}
.act-kp b small{font-size:13px;opacity:.7;font-weight:700}
.act-kp span{font-size:11.5px;opacity:.8}
.act-cap{position:relative;width:118px;height:118px;border-radius:50%;border:0;background:var(--gold);color:var(--navy);font:inherit;font-weight:900;font-size:14px;cursor:pointer;box-shadow:0 0 0 8px rgba(201,162,39,.18),0 0 0 18px rgba(201,162,39,.07);transition:transform .15s}
.act-cap:hover{transform:scale(1.04)}
.act-cap em{display:block;font-style:normal;font-size:34px;line-height:1.1}
.act-ph{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;flex-wrap:wrap}
.act-ph h3{margin:0;font-size:15.5px;font-weight:800}.act-ph small{font-size:12px;color:var(--muted)}
.act-ph-x{display:flex;align-items:center;gap:8px}
.act-occ .act-track{position:relative;padding-top:20px}
.act-rail{position:absolute;top:4px;right:6px;left:6px;height:4px;border-radius:4px;background:#E3E8EF;overflow:hidden}
.act-rail i{display:block;height:100%;background:var(--teal);border-radius:4px}
.act-ocs{display:flex;gap:8px;overflow-x:auto;padding:4px 2px 8px;scroll-snap-type:x proximity}
.act-oc{flex:0 0 148px;scroll-snap-align:start;border:1.5px solid var(--border);border-radius:14px;padding:9px 10px;background:#fff;text-align:right;font:inherit;color:var(--navy);cursor:pointer;display:flex;flex-direction:column;gap:2px}
.act-oc b{font-size:12.5px;line-height:1.45}
.act-oc small{font-size:11px;color:var(--muted)}
.act-oc .st{align-self:flex-start;margin-top:5px;font-size:10.5px;font-weight:800;padding:2px 8px;border-radius:999px;background:#EEF2F6;color:var(--muted)}
.act-oc.done{border-color:#b9e3d2;background:#F2FBF7}.act-oc.done .st{background:#dff3ea;color:#0F6E54}
.act-oc.miss{border-style:dashed;border-color:#f2b5ab}.act-oc.miss .st{background:#FFF1EF;color:#9b2c20}
.act-oc.next{border-color:var(--gold);background:#FFFBEB;box-shadow:0 0 0 3px rgba(201,162,39,.18)}.act-oc.next .st{background:var(--gold);color:var(--navy)}
.act-orow{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:8px 10px;border:1px solid var(--border);border-radius:11px;margin-bottom:6px;font-size:13px}
.act-orow span{color:var(--muted);font-size:12px}.act-orow small{color:#0F6E54;font-weight:700}
.act-orow .btn{margin-inline-start:auto}
.act-g3{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) minmax(0,.95fr);gap:16px;margin-bottom:16px;align-items:start}
.act-g3>*{min-width:0;margin:0}
.act-big{display:flex;align-items:center;gap:14px;margin-bottom:10px}
.act-ring{width:84px;height:84px;border-radius:50%;display:grid;place-items:center;flex-shrink:0}
.act-ring>div{width:64px;height:64px;border-radius:50%;background:#fff;display:grid;place-items:center;font-weight:900;font-size:18px}
.act-big p{margin:0;font-size:12.5px;line-height:1.9}.act-big p b{font-size:14px}.act-big .bad{color:#B5321F}
.act-cls{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:5px}
.act-cls button{border:0;border-radius:8px;padding:5px 0;text-align:center;font:inherit;font-size:10.5px;font-weight:800;color:#fff;cursor:pointer;line-height:1.5}
.act-cls button.on{outline:3px solid var(--navy);outline-offset:1px}
.act-zero,.act-stars{margin-top:10px;font-size:12px;display:flex;flex-wrap:wrap;gap:5px;align-items:center;line-height:1.8}
.act-zero span{background:#FFF1EF;color:#9b2c20;border-radius:999px;padding:1px 9px;font-weight:700}
.act-zero em{font-style:normal;color:#0F6E54;font-weight:700}
.act-stars span{background:#FFFBEB;color:#8a6400;border-radius:999px;padding:1px 9px;font-weight:700}
.act-hint{font-size:12px;background:#FFFBEB;border:1px solid #f3dc9b;color:#8a6400;border-radius:10px;padding:7px 10px;margin-top:8px;line-height:1.7}
.act-br{display:grid;grid-template-columns:118px minmax(0,1fr) 26px;gap:8px;align-items:center;font-size:12.5px;font-weight:700;margin-bottom:7px}
.act-br .bar{height:10px;border-radius:6px;background:#EEF2F6;overflow:hidden}.act-br .bar i{display:block;height:100%;border-radius:6px}
.act-br.zero{color:#B5321F}.act-br.zero .bar{outline:1.5px dashed #f2b5ab;outline-offset:-1.5px;background:#FFF7F5}
.act-br em{font-style:normal;text-align:left;font-variant-numeric:tabular-nums}
.act-wk{display:flex;align-items:center;gap:6px}
.act-wk button{width:26px;height:26px;border-radius:8px;border:1px solid var(--border);background:#fff;font:inherit;font-weight:900;cursor:pointer;color:var(--navy)}
.act-day{width:100%;display:grid;grid-template-columns:62px minmax(0,1fr) auto;gap:8px;align-items:center;padding:7px 9px;border-radius:11px;border:1px solid var(--border);margin-bottom:6px;font:inherit;font-size:12.5px;background:#fff;color:var(--navy);text-align:right;cursor:pointer}
.act-day b{font-weight:800}
.act-day span{min-width:0}.act-day span small{display:block;font-size:11px;color:var(--muted)}
.act-day em{font-style:normal;font-size:11px;font-weight:800}
.act-day.empty span{color:var(--muted)}
.act-day.today{background:var(--navy);color:#fff;border-color:var(--navy)}.act-day.today span small,.act-day.today.empty span{color:#cbd5e1}
.act-day.done{opacity:.6}
.act-day.ed{cursor:default;grid-template-columns:1fr;background:#F8FAFC}
.act-dayf{display:flex;flex-direction:column;gap:6px}
.act-fill{width:100%;border:1.5px dashed #cbd5e1;background:#F8FAFC;border-radius:11px;padding:7px;font:inherit;font-size:12px;font-weight:800;color:var(--navy);cursor:pointer}
.act-note{font-size:11.5px;color:var(--muted);margin-top:6px}
.act-tools{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:12px}
.act-tools .ctl{flex:1 1 220px;min-width:0}
.act-chips{display:flex;flex-wrap:wrap;gap:6px}
.act-chips button{font:inherit;font-size:12.5px;font-weight:700;padding:6px 12px;border-radius:999px;border:1.5px solid var(--border);background:#fff;color:var(--navy);cursor:pointer}
.act-chips button.on{background:var(--navy);color:#fff;border-color:var(--navy)}
.act-chips.gold button.on{background:var(--gold);color:var(--navy);border-color:var(--gold)}
.act-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px}
.act-ac{background:#fff;border:1px solid var(--border);border-radius:16px;overflow:hidden;display:flex;flex-direction:column}
.act-ac.notif-highlight{box-shadow:0 0 0 3px var(--gold)}
.act-cover{height:140px;position:relative;display:flex;align-items:flex-end;padding:8px;background-size:cover;background-position:center;cursor:zoom-in}
.act-cover .n{position:absolute;top:8px;left:8px;background:rgba(15,40,73,.75);color:#fff;font-size:11px;font-weight:800;border-radius:8px;padding:2px 8px}
.act-cover .t{background:#fff;font-size:11px;font-weight:800;border-radius:999px;padding:3px 10px;box-shadow:0 2px 6px rgba(0,0,0,.12)}
.act-bd{padding:10px 12px 12px;display:flex;flex-direction:column;gap:4px;flex:1}
.act-bd b{font-size:14px}
.act-bd small{font-size:11.5px;color:var(--muted)}
.act-bd p{margin:2px 0 0;font-size:12px;color:#475569;line-height:1.7}
.act-occtag{font-size:10.5px;font-weight:800;color:#0F6E54;background:#F2FBF7;border-radius:6px;padding:1px 6px;align-self:flex-start}
.act-ft{display:flex;flex-wrap:wrap;gap:5px;margin-top:auto;padding-top:8px;align-items:center}
.act-ft button{font:inherit;font-size:11.5px;font-weight:800;border:1px solid var(--border);border-radius:9px;padding:4px 8px;background:#fff;color:var(--navy);cursor:pointer}
.act-bd small .who{font-weight:800;color:#1d4f86}
.act-empty{padding:30px;text-align:center;color:var(--muted);font-size:13px}
.act-range{margin-top:14px;border-top:1px solid var(--border);padding-top:10px}
.act-range summary{cursor:pointer;font-size:13px;font-weight:800}
.act-dim{position:fixed;inset:0;background:rgba(15,40,73,.4);z-index:60}
.act-sheet{position:fixed;left:50%;top:30px;transform:translateX(-50%);width:min(760px,94vw);max-height:calc(100vh - 60px);overflow:auto;background:#fff;border-radius:22px;padding:18px 20px;z-index:61;box-shadow:0 30px 70px rgba(15,40,73,.35)}
.act-sh-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.act-sh-h h2{margin:0;font-size:19px;font-weight:900}
.act-x{width:34px;height:34px;border-radius:50%;border:1px solid var(--border);background:#fff;font-size:15px;cursor:pointer;color:var(--navy)}
.act-lbl{font-size:12.5px;font-weight:800;margin:14px 0 6px;display:block}
.act-lbl small{font-weight:600;color:var(--muted)}.act-lbl small b{color:#0F6E54}
.act-shots{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}
.act-shots>div{aspect-ratio:1;border-radius:12px;background-size:cover;background-position:center;position:relative;border:1px solid var(--border)}
.act-shots>div button{position:absolute;top:-6px;left:-6px;width:22px;height:22px;border-radius:50%;border:0;background:var(--red);color:#fff;font-size:13px;cursor:pointer}
.act-shots .add{aspect-ratio:1;border-radius:12px;border:2px dashed #cbd5e1;display:grid;place-items:center;text-align:center;font-size:24px;color:var(--muted);background:#F8FAFC;cursor:pointer;position:relative;overflow:hidden}
.act-shots .add input{position:absolute;inset:0;opacity:0;cursor:pointer}
.act-shots .add small{display:block;font-size:10px;font-weight:700}
.act-pick{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}
.act-pk{display:flex;border:1.5px solid var(--border);border-radius:10px;overflow:hidden;background:#fff}
.act-pk button{border:0;background:none;font:inherit;font-size:12px;font-weight:800;color:var(--navy);cursor:pointer;padding:6px 2px;flex:1;line-height:1.4}
.act-pk button small{display:block;font-size:10.5px;font-weight:700;color:var(--muted)}
.act-pk .nm{flex:0 0 26px;border-inline-start:1px solid var(--border);font-size:12px}
.act-pk.on{border-color:var(--teal);background:#F2FBF7}.act-pk.on button,.act-pk.on small{color:#0F6E54}
.act-pk.part{border-color:#9FC4E8;background:#EEF4FC}.act-pk.part small{color:#1d4f86}
.act-pk.open{box-shadow:0 0 0 3px rgba(15,40,73,.12)}
.act-names{margin-top:8px;border:1px solid var(--border);border-radius:12px;padding:10px;display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:4px 10px;max-height:240px;overflow:auto;font-size:12.5px}
.act-names b{grid-column:1/-1;font-size:12.5px}
.act-names label{display:flex;align-items:center;gap:6px;cursor:pointer}
.act-sh-f{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;align-items:center;margin-top:16px;padding-top:12px;border-top:1px solid var(--border);position:sticky;bottom:-18px;background:#fff;padding-bottom:4px}
.act-sh-f small{margin-inline-end:auto;color:var(--muted);font-size:12px}
@media (max-width:1100px){.act-g3{grid-template-columns:1fr 1fr}.act-g3>.act-radio{grid-column:1/-1}}
@media (max-width:760px){
  .act-stage{grid-template-columns:1fr;padding:18px 16px}
  .act-stage h1{font-size:20px}
  .act-kp>div{min-width:0;flex:1 1 calc(50% - 10px)}
  .act-cap{position:fixed;bottom:16px;left:16px;z-index:50;width:66px;height:66px;font-size:0;box-shadow:0 10px 25px rgba(15,40,73,.35),0 0 0 6px rgba(201,162,39,.25)}
  .act-cap em{font-size:28px}
  .act-g3{grid-template-columns:1fr}
  .act-oc{flex-basis:132px}
  .act-grid{grid-template-columns:1fr 1fr;gap:10px}
  .act-cover{height:100px}
  .act-ft button:not(:first-child){display:none}
  .act-sheet{top:auto;bottom:0;left:0;transform:none;width:100%;border-radius:22px 22px 0 0;max-height:92vh;padding:14px}
  .act-shots{grid-template-columns:repeat(4,minmax(0,1fr))}
  .act-pick{grid-template-columns:repeat(3,minmax(0,1fr))}
  .act-sh-f{bottom:-14px}
}
@media (max-width:400px){.act-grid{grid-template-columns:1fr}.act-ft button:not(:first-child){display:inline-block}}

/* ===== يومي ===== */
.md-hero{align-items:stretch}
.md-hero>div:first-child{align-self:center}
.md-now{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-radius:16px;padding:12px 16px;min-width:300px;display:flex;flex-direction:column;justify-content:center;gap:2px}
.md-now small{display:flex;align-items:center;gap:6px;font-size:12px;color:#C9D6E8}
.md-now b{display:block;font-size:17px;font-weight:900}
.md-bar{display:block;height:6px;border-radius:4px;background:rgba(255,255,255,.15);overflow:hidden;margin-top:6px}.md-bar i{display:block;height:100%;background:#7fe0b8;border-radius:4px}
.md-row{display:flex;justify-content:space-between;gap:10px;font-size:11.5px;color:#C9D6E8;margin-top:4px}
.md-ph{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}
.md-ph h3{margin:0;font-size:15.5px;font-weight:800}.md-ph small{font-size:12px;color:var(--muted)}
.md-ps{display:grid;grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:8px}
.md-p{min-width:0;border:1.5px solid var(--border);border-radius:14px;padding:10px;position:relative;min-height:108px;display:flex;flex-direction:column;gap:2px;background:#fff}
.md-p .n{font-size:11px;color:var(--muted);font-weight:800}
.md-p b{font-size:14px}
.md-p .c{font-size:12px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.md-p .t{font-size:11px;color:var(--muted);margin-top:auto;font-variant-numeric:tabular-nums}
.md-p.done{opacity:.55}
.md-p .ok{position:absolute;top:8px;left:8px;font-size:11px;font-weight:800;color:#0F6E54}
.md-p.free{border-style:dashed;background:#FAFBFC}.md-p.free b{color:var(--muted);font-weight:700}
.md-p.now{border-color:var(--teal);background:#F2FBF7;box-shadow:0 0 0 3px rgba(29,158,117,.15);opacity:1}
.md-p.sb{border-color:var(--gold);background:#FFFBEB}
.md-p .tag{position:absolute;top:8px;left:8px;font-size:10.5px;font-weight:900;color:#fff;background:var(--teal);border-radius:999px;padding:1px 8px}
.md-p .tag.sb{color:var(--navy);background:var(--gold)}
.md-acts{display:flex;flex-direction:column;gap:4px;margin-top:6px}
.md-acts button{font:inherit;font-size:11px;font-weight:800;padding:4px 8px;border-radius:9px;background:#fff;border:1px solid #b9e3d2;color:#0F6E54;cursor:pointer;text-align:right}
.md-g2{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:16px;align-items:start;margin-bottom:16px}
.md-g2>*,.md-side>*{min-width:0;margin:0}
.md-side{display:flex;flex-direction:column;gap:16px}
.md-items{display:flex;flex-direction:column;gap:8px}
.md-it{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 12px;border-radius:13px;border:1px solid var(--border);background:#fff;cursor:pointer}
.md-it:hover{background:#F8FAFC}
.md-it .ic{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;font-size:18px}
.md-it b{font-size:13.5px;display:block;line-height:1.6}.md-it small{display:block;font-size:11.5px;color:var(--muted);line-height:1.6}
.md-it .go{font-size:12px;font-weight:800;padding:6px 11px;border-radius:10px;background:var(--navy);color:#fff;white-space:nowrap}
.md-it.u{border-color:#f2b5ab;background:#FFF7F5}.md-it.u .go{background:var(--red)}
.md-it .ic.r{background:#FFF1EF}.md-it .ic.b{background:#EEF4FC}.md-it .ic.y{background:#FFFBEB}.md-it .ic.p{background:#F4F0FC}
.md-more{font-size:12px;color:var(--muted);margin-top:8px;text-align:center}
.md-empty{padding:26px;text-align:center;color:#0F6E54;font-weight:700;font-size:13.5px;background:#F2FBF7;border-radius:12px}
.md-cls-g{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.md-cl{border:1px solid var(--border);border-radius:13px;padding:10px 12px;min-width:0}
.md-cl b{font-size:14px;display:flex;justify-content:space-between;gap:6px;align-items:baseline}
.md-cl b em{font-style:normal;font-size:11px;color:var(--muted);font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.md-cl .chips{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}
.md-cl .chips span{font-size:11px;font-weight:700;padding:2px 8px;border-radius:999px}
.md-cl .ab{background:#FFF1EF;color:#9b2c20}.md-cl .lt{background:#FFFBEB;color:#8a6400}.md-cl .ok{background:#F2FBF7;color:#0F6E54}.md-cl .lv{background:#EEF4FC;color:#1d4f86}.md-cl .na{background:#F1F5F9;color:var(--muted)}
.md-wk{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.md-wk div{border-radius:12px;padding:10px 6px;text-align:center;background:#F8FAFC;border:1px solid var(--border)}
.md-wk b{display:block;font-size:22px;font-weight:900;font-variant-numeric:tabular-nums}
.md-wk span{font-size:11px;color:var(--muted);font-weight:700}
.md-say{margin-top:10px;font-size:12.5px;background:#F2FBF7;border:1px solid #b9e3d2;color:#0F6E54;border-radius:12px;padding:8px 12px;line-height:1.8}
.md-sg{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px}
.md-st{border:1px solid var(--border);border-radius:13px;padding:10px 12px;background:#fff;text-align:right;font:inherit;color:var(--navy);cursor:pointer;display:flex;flex-direction:column;gap:2px}
.md-st em{font-style:normal;font-size:18px}
.md-st b{font-size:24px;font-weight:900;font-variant-numeric:tabular-nums}
.md-st span{font-size:11.5px;color:var(--muted);font-weight:700;line-height:1.5}
.md-st.warn{border-color:#f2b5ab;background:#FFF7F5}.md-st.warn b{color:#B5321F}
.md-tg{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px}
.md-tg button{border:1px solid var(--border);border-radius:13px;padding:12px 8px;text-align:center;font:inherit;font-size:12.5px;font-weight:800;background:#fff;color:var(--navy);cursor:pointer}
.md-tg button:hover{background:#F8FAFC}
.md-tg em{display:block;font-style:normal;font-size:22px;margin-bottom:2px}
@media (max-width:1000px){.md-g2{grid-template-columns:1fr}}
@media (max-width:760px){
  .md-now{min-width:0;width:100%}
  .md-ps{display:flex;overflow-x:auto;padding-bottom:4px;scroll-snap-type:x proximity}
  .md-p{flex:0 0 122px;scroll-snap-align:start}
  .md-wk{grid-template-columns:repeat(2,minmax(0,1fr))}
  .md-tg{grid-template-columns:repeat(4,minmax(0,1fr))}
  .md-tg button{padding:9px 4px;font-size:11px}
}
@media (max-width:420px){.md-cls-g{grid-template-columns:1fr}}

/* ===== شواهد الدروس: ملف الأداء ===== */
.le-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;background:linear-gradient(110deg,#0d3b2e 0%,#0F6E54 60%,#1D9E75 100%);color:#fff;border-radius:20px;padding:20px 24px;margin-bottom:16px;position:relative;overflow:hidden}
.le-hero.ro{background:linear-gradient(110deg,#102a4c 0%,#16365f 55%,#1f4a7d 100%)}
.le-hero:after{content:"";position:absolute;left:-40px;bottom:-60px;width:240px;height:240px;border-radius:50%;border:30px solid rgba(255,255,255,.06);pointer-events:none}
.le-hero h1{margin:0;font-size:23px;font-weight:900}
.le-hero p{margin:4px 0 12px;font-size:13px;opacity:.85}
.le-kp{display:flex;gap:10px;flex-wrap:wrap}
.le-kp div{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);border-radius:14px;padding:8px 14px;min-width:116px}
.le-kp b{display:block;font-size:21px;font-weight:900;font-variant-numeric:tabular-nums}.le-kp b small{font-size:12px;opacity:.75}
.le-kp span{font-size:11.5px;opacity:.85}
.le-cap{position:relative;z-index:1;width:116px;height:116px;border-radius:50%;border:0;background:#fff;color:#0F6E54;font:inherit;font-weight:900;font-size:13.5px;cursor:pointer;box-shadow:0 0 0 8px rgba(255,255,255,.15),0 0 0 18px rgba(255,255,255,.06)}
.le-hero.ro .le-cap{color:var(--navy)}
.le-cap em{display:block;font-style:normal;font-size:30px;line-height:1.15}
.le-cap small{display:block;font-size:10.5px;font-weight:700;color:var(--muted)}
.le-ph{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;flex-wrap:wrap}
.le-ph h3{margin:0;font-size:15.5px;font-weight:800}.le-ph small{font-size:12px;color:var(--muted)}
.le-ph-x{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.le-std{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px}
.le-s{border:1.5px solid var(--border);border-radius:14px;padding:10px 12px;display:flex;flex-direction:column;gap:3px;position:relative;background:#fff;font:inherit;color:var(--navy);text-align:right;cursor:pointer}
.le-s b{font-size:12.5px;line-height:1.5;padding-inline-end:26px}
.le-s .n{position:absolute;top:9px;left:10px;font-size:12px;font-weight:900;width:24px;height:24px;border-radius:50%;display:grid;place-items:center}
.le-s small{font-size:11px;color:var(--muted)}
.le-s .src{display:flex;flex-wrap:wrap;gap:4px;margin-top:2px}
.le-s .src i{font-style:normal;font-size:10.5px;font-weight:700;padding:1px 7px;border-radius:999px;background:#F1F5F9;color:#475569}
.le-s .tip{font-size:11px;color:#9b2c20;font-weight:700;line-height:1.6}
.le-s.full{border-color:#b9e3d2;background:#F2FBF7}.le-s.full .n{background:var(--teal);color:#fff}
.le-s.part{border-color:#f3dc9b;background:#FFFDF5}.le-s.part .n{background:#FFF1CC;color:#8a6400}
.le-s.none{border-style:dashed}.le-s.none .n{background:#FFF1EF;color:#9b2c20}.le-s.none b{color:#475569}
.le-s.on{box-shadow:0 0 0 3px rgba(15,40,73,.18);border-color:var(--navy)}
.le-g2{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:16px;margin-bottom:16px;align-items:start}
.le-g2>*{min-width:0;margin:0}
.le-strat{display:flex;flex-wrap:wrap;gap:6px}
.le-strat span{font-size:12px;font-weight:700;padding:5px 11px;border-radius:999px;border:1.5px solid var(--border);display:inline-flex;gap:6px;align-items:center;cursor:default}
.le-strat span i{font-style:normal;font-size:10.5px;font-weight:900;border-radius:999px;padding:0 6px;background:#fff;color:#0F6E54}
.le-strat .h3{background:#0F6E54;color:#fff;border-color:#0F6E54}
.le-strat .h2{background:#1D9E75;color:#fff;border-color:#1D9E75}
.le-strat .h1{background:#DFF3EA;color:#0F6E54;border-color:#b9e3d2}
.le-strat .h0{color:#94a3b8;border-style:dashed}
.le-hint{font-size:12.5px;background:#FFFBEB;border:1px solid #f3dc9b;color:#8a6400;border-radius:10px;padding:8px 11px;margin-top:10px;line-height:1.8}
.le-hint.ok{background:#F2FBF7;border-color:#b9e3d2;color:#0F6E54}
.le-streak{display:flex;align-items:center;gap:10px;margin-bottom:8px;font-size:13px}
.le-streak b{font-size:24px;font-weight:900;color:#B4462F;white-space:nowrap}
.le-weeks{display:flex;gap:4px;align-items:flex-end;height:72px}
.le-weeks i{flex:1;border-radius:6px 6px 2px 2px;background:#9FC4E8}
.le-weeks i.z{background:#F1F5F9}
.le-weeks i.now{background:var(--teal)}
.le-wl{display:flex;justify-content:space-between;font-size:10.5px;color:var(--muted);margin-top:4px}
.le-cls{margin-top:10px;font-size:12.5px;background:#F2FBF7;border:1px solid #b9e3d2;color:#0F6E54;border-radius:10px;padding:8px 11px;line-height:1.9}
.le-cls .low{color:#9b2c20;font-weight:800}
.le-tools{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px;align-items:center}
.le-tools .ctl{flex:1 1 220px;min-width:0}
.le-chips2{display:flex;flex-wrap:wrap;gap:6px}
.le-chips2 button{font:inherit;font-size:12px;font-weight:700;padding:6px 12px;border-radius:999px;border:1.5px solid var(--border);background:#fff;color:var(--navy);cursor:pointer}
.le-chips2 button.on{background:var(--navy);color:#fff;border-color:var(--navy)}
.le-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}
.le-ev{border:1px solid var(--border);border-radius:16px;overflow:hidden;background:#fff;display:flex;flex-direction:column}
.le-im{height:124px;position:relative;display:flex;align-items:flex-end;padding:8px;background-size:cover;background-position:center;cursor:zoom-in}
.le-im .c{background:#fff;font-size:11px;font-weight:800;border-radius:999px;padding:2px 9px;box-shadow:0 2px 6px rgba(0,0,0,.12)}
.le-im .n{position:absolute;top:8px;left:8px;background:rgba(15,40,73,.75);color:#fff;font-size:11px;font-weight:800;border-radius:8px;padding:1px 7px}
.le-bd{padding:10px 12px;display:flex;flex-direction:column;gap:4px;flex:1}
.le-bd b{font-size:14px}
.le-bd small{font-size:11.5px;color:var(--muted)}
.le-bd .st{display:flex;flex-wrap:wrap;gap:4px}
.le-bd .st span{font-size:10.5px;font-weight:700;padding:1px 7px;border-radius:999px;background:#EEF4FC;color:#1d4f86}
.le-bd .fb{font-size:11.5px;background:#F2FBF7;border:1px solid #b9e3d2;color:#0F6E54;border-radius:9px;padding:5px 8px;line-height:1.6}
.le-bd .ft,.le-rv .ft{display:flex;flex-wrap:wrap;gap:5px;margin-top:auto;padding-top:6px}
.le-bd .ft button,.le-rv .ft button{font:inherit;font-size:11.5px;font-weight:800;border:1px solid var(--border);border-radius:9px;padding:3px 9px;background:#fff;color:var(--navy);cursor:pointer}
.le-bd .ft button.on,.le-rv .ft button.on{background:var(--teal);color:#fff;border-color:var(--teal)}
.le-empty{padding:28px;text-align:center;color:var(--muted);font-size:13px}
.le-more{font-size:12px;color:var(--muted);text-align:center;margin-top:6px}
.le-tt{display:flex;flex-direction:column;gap:6px}
.le-tr{display:grid;grid-template-columns:minmax(0,1.7fr) 74px 104px 120px 90px minmax(0,1fr);gap:10px;align-items:center;padding:9px 12px;border:1px solid var(--border);border-radius:12px;background:#fff;font:inherit;font-size:13px;color:var(--navy);text-align:right;cursor:pointer;width:100%}
.le-tr:hover{background:#F8FAFC}
.le-tr.h{border:0;background:none;cursor:default;font-size:11.5px;color:var(--muted);font-weight:800;padding:0 12px}
.le-tr.warn{background:#FFF7F5;border-color:#f2b5ab}
.le-tr .nm{display:flex;align-items:center;gap:8px;min-width:0}
.le-tr .nm i{font-style:normal;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#EEF4FA;font-weight:900;flex-shrink:0}
.le-tr .nm b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.le-tr .nm small{color:var(--muted);font-size:11.5px;white-space:nowrap}
.le-tr .num{font-weight:800;font-variant-numeric:tabular-nums}.le-tr .num small{color:var(--muted);font-weight:600;font-size:11px}
.le-tr .num .pd{display:block;color:#1d4f86;font-size:10.5px}
.le-tr .tag{font-style:normal;font-size:11.5px;font-weight:700}
.le-tr .tag.r{background:#FFF1EF;color:#9b2c20;border-radius:999px;padding:2px 9px;font-weight:800}
.le-tr .tag.y{background:#FFFBEB;color:#8a6400;border-radius:999px;padding:2px 9px;font-weight:800}
.le-tr .mini{display:flex;gap:2px;align-items:flex-end;height:22px}
.le-tr .mini i{width:8px;border-radius:2px;background:#9FC4E8}.le-tr .mini i.z{background:#EEF2F6}
.le-tr .cov{display:flex;align-items:center;gap:6px;font-weight:800;font-variant-numeric:tabular-nums}
.le-tr .bar{flex:1;max-width:120px;height:8px;border-radius:6px;background:#EEF2F6;overflow:hidden}.le-tr .bar i{display:block;height:100%;background:var(--teal)}
.le-rv{border:1px solid var(--border);border-radius:14px;padding:10px;display:grid;grid-template-columns:90px minmax(0,1fr);gap:12px;margin-bottom:8px}
.le-rv .im{height:80px;border-radius:10px;background-size:cover;background-position:center}
.le-rv b{font-size:13.5px}.le-rv small{display:block;font-size:11.5px;color:var(--muted)}
.le-old summary{cursor:pointer;font-weight:800;font-size:14px}
@media (max-width:1000px){.le-g2{grid-template-columns:1fr}.le-tr{grid-template-columns:minmax(0,1fr) 64px 96px;}.le-tr>span:nth-child(n+4){display:none}}
@media (max-width:760px){
  .le-hero{grid-template-columns:1fr;padding:16px}
  .le-hero h1{font-size:19px}
  .le-kp div{flex:1 1 calc(50% - 10px);min-width:0}
  .le-cap{position:fixed;bottom:16px;left:16px;width:68px;height:68px;font-size:0;z-index:50;background:#0F6E54;color:#fff;box-shadow:0 10px 25px rgba(15,40,73,.35),0 0 0 6px rgba(29,158,117,.25)}
  .le-hero.ro .le-cap{background:var(--navy);color:#fff}
  .le-cap em{font-size:26px}.le-cap small{display:none}
  .le-std{grid-template-columns:1fr 1fr}
  .le-s .src,.le-s small{display:none}
  .le-grid{grid-template-columns:1fr 1fr;gap:10px}
  .le-im{height:92px}
}
@media (max-width:400px){.le-grid{grid-template-columns:1fr}}

/* ===== الموجه الصحي ===== */
.hc-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;color:#fff;border-radius:20px;padding:20px 24px;margin-bottom:12px;position:relative;overflow:hidden;background:linear-gradient(115deg,#0b3550 0%,#0E5E73 55%,#139A9A 100%)}
.hc-ecg{position:absolute;left:0;right:0;bottom:6px;width:100%;height:40px;opacity:.25;pointer-events:none}
.hc-hero h1{margin:0;font-size:23px;font-weight:900;position:relative}
.hc-hero p{margin:4px 0 12px;font-size:13px;opacity:.85;position:relative}
.hc-kp{display:flex;gap:10px;flex-wrap:wrap;position:relative}
.hc-kp div{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);border-radius:14px;padding:8px 14px;min-width:112px}
.hc-kp div.in{background:#fff;color:#0E5E73}
.hc-kp b{display:block;font-size:21px;font-weight:900;font-variant-numeric:tabular-nums}
.hc-kp span{font-size:11.5px;opacity:.85}
.hc-cap{position:relative;z-index:1;width:118px;height:118px;border-radius:50%;border:0;background:#fff;color:#0E5E73;font:inherit;font-weight:900;font-size:13.5px;cursor:pointer;box-shadow:0 0 0 8px rgba(255,255,255,.15),0 0 0 18px rgba(255,255,255,.06)}
.hc-cap em{display:block;font-style:normal;font-size:32px;line-height:1.1}
.hc-cap small{display:block;font-size:10.5px;color:var(--muted);font-weight:700}
.hc-note{font-size:12.5px;background:#FFFBEB;border:1px solid #f3dc9b;color:#8a6400;border-radius:12px;padding:9px 12px;margin-bottom:12px}
.hc-alerts{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:10px;margin-bottom:16px}
.hc-al{display:flex;gap:12px;align-items:center;padding:11px 14px;border-radius:14px;border:1.5px solid}
.hc-al em{font-style:normal;font-size:24px}
.hc-al b{display:block;font-size:13.5px}.hc-al small{font-size:12px}
.hc-al button{margin-inline-start:auto;font:inherit;font-size:12px;font-weight:800;padding:6px 11px;border-radius:10px;border:0;cursor:pointer;white-space:nowrap}
.hc-al .done{margin-inline-start:auto;font-size:12px;font-weight:800;white-space:nowrap}
.hc-al.r{background:#FFF5F3;border-color:#f2b5ab;color:#8f2a1e}.hc-al.r button{background:#C0392B;color:#fff}
.hc-al.y{background:#FFFBEB;border-color:#f3dc9b;color:#7a5a00}.hc-al.y button{background:#8a6400;color:#fff}
.hc-g2{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:16px;align-items:start}
.hc-g3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:16px 0;align-items:start}
.hc-g2>*,.hc-g3>*{min-width:0;margin:0}
.hc-ph{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;flex-wrap:wrap}
.hc-ph h3{margin:0;font-size:15.5px;font-weight:800}.hc-ph small{font-size:12px;color:var(--muted)}
.hc-ph-x{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.hc-empty{padding:22px;text-align:center;color:var(--muted);font-size:13px;line-height:1.8}
.hc-mute{font-size:12px;color:var(--muted);margin-top:6px}
.hc-tl{display:flex;flex-direction:column;gap:8px}
.hc-v{display:grid;grid-template-columns:48px 34px minmax(0,1fr) auto;gap:10px;align-items:center;padding:9px 12px;border-radius:13px;border:1px solid var(--border)}
.hc-v .t{font-size:12px;font-weight:800;color:var(--muted);font-variant-numeric:tabular-nums}
.hc-v .av{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#E6F4F4;font-weight:900;color:#0E5E73}
.hc-v .who{min-width:0}.hc-v b{font-size:13.5px}.hc-v small{font-size:11.5px;color:var(--muted)}
.hc-v .cx{display:flex;gap:4px;flex-wrap:wrap;margin-top:3px}
.hc-v .cx span{font-size:10.5px;font-weight:800;padding:1px 8px;border-radius:999px;background:#FFF1EF;color:#9b2c20}
.hc-v .cx .tmp{background:#FFF5EC;color:#B4462F}.hc-v .cx .sms{background:#EEF4FC;color:#1d4f86}
.hp-mini{font-size:10.5px;font-weight:800;color:#C2416B;background:#FFF0F5;border-radius:999px;padding:1px 7px}
.hc-ac{font-size:11.5px;font-weight:800;padding:4px 10px;border-radius:999px;white-space:nowrap;background:#F1F5F9;color:#475569}
.hc-ac.back{background:#F2FBF7;color:#0F6E54}.hc-ac.home{background:#FFFBEB;color:#8a6400}.hc-ac.ref{background:#FFF1EF;color:#9b2c20}
.hc-v.now{border-color:#139A9A;background:#F0FAFA;box-shadow:0 0 0 3px rgba(19,154,154,.12)}
.hc-v .btns{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}
.hc-v .btns button{font:inherit;font-size:11.5px;font-weight:800;padding:5px 9px;border-radius:9px;background:#fff;border:1px solid var(--border);color:var(--navy);cursor:pointer}
.hc-v .btns button.p{background:#0E5E73;color:#fff;border-color:#0E5E73}
.hp-conds{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.hp-conds button{font:inherit;font-size:12px;font-weight:800;padding:5px 11px;border-radius:999px;border:1.5px solid var(--border);background:#fff;color:var(--navy);display:inline-flex;gap:6px;align-items:center;cursor:pointer}
.hp-conds button i{font-style:normal;font-size:11px;background:#F1F5F9;border-radius:999px;padding:0 6px}
.hp-conds button.on{background:#C2416B;color:#fff;border-color:#C2416B}.hp-conds button.on i{background:#fff;color:#C2416B}
.hp-c{border:1px solid var(--border);border-radius:14px;padding:10px 12px;margin-bottom:8px;border-inline-start:4px solid #C2416B;background:#fff}
.hp-c[role=button]{cursor:pointer}.hp-c[role=button]:hover{background:#FFFAFC}
.hp-c b{font-size:13.5px}.hp-c small{font-size:11.5px;color:var(--muted)}
.hp-c .row{display:flex;justify-content:space-between;align-items:center;gap:8px}
.hp-c .vis{font-size:10.5px;font-weight:800;color:#0F6E54;background:#F2FBF7;border-radius:999px;padding:1px 8px;white-space:nowrap}
.hp-c .vis.off{color:#475569;background:#F1F5F9}
.hp-c .pl{font-size:12px;background:#FFF5F8;border-radius:9px;padding:6px 9px;margin-top:6px;line-height:1.7;color:#7a2440}
.hp-c .md{font-size:12px;color:#475569;margin-top:4px}
.hc-add{width:100%;margin-top:8px;border:1.5px dashed #9fd2d2;background:#F0FAFA;border-radius:11px;padding:7px;font:inherit;font-size:12.5px;font-weight:800;color:#0E5E73;cursor:pointer}
.hc-br{display:grid;grid-template-columns:76px minmax(0,1fr) 24px;gap:8px;align-items:center;font-size:12.5px;font-weight:700;margin-bottom:7px}
.hc-br .bar{height:10px;border-radius:6px;background:#EEF2F6;overflow:hidden}.hc-br .bar i{display:block;height:100%;border-radius:6px;background:#139A9A}
.hc-br em{font-style:normal;text-align:left;font-variant-numeric:tabular-nums}
.hc-pt{font-size:13px}.hc-pt span{color:var(--muted)}
.hc-prog{height:8px;border-radius:6px;background:#EEF2F6;overflow:hidden;margin:6px 0 10px}.hc-prog i{display:block;height:100%;background:#139A9A}
.hc-scr{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}
.hc-scr button{border:0;border-radius:8px;padding:5px 0;text-align:center;font:inherit;font-size:10.5px;font-weight:800;line-height:1.4;cursor:pointer}
.hc-scr .f{background:#139A9A;color:#fff}.hc-scr .p{background:#BFE6E6;color:#0b3550}.hc-scr .z{background:#F1F5F9;color:var(--muted)}
.hc-days .d{width:100%;display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:8px;align-items:center;padding:7px 9px;border-radius:11px;border:1px solid var(--border);margin-bottom:6px;font:inherit;font-size:12.5px;background:#fff;color:var(--navy);text-align:right;cursor:pointer}
.hc-days .dt{font-weight:900;text-align:center;line-height:1.1;font-size:15px}.hc-days .dt small{display:block;font-size:10px;color:var(--muted);font-weight:700}
.hc-days .st{font-size:11px;font-weight:800;padding:2px 8px;border-radius:999px;white-space:nowrap}
.hc-days .st.ok{background:#F2FBF7;color:#0F6E54}.hc-days .st.nx{background:#139A9A;color:#fff}.hc-days .st.far{background:#F1F5F9;color:var(--muted)}.hc-days .st.miss{background:#FFF1EF;color:#9b2c20}
.hc-kb{display:grid;gap:12px}
.hc-kb .col{min-width:0}
.hc-kb h4{margin:0 0 8px;font-size:12.5px;display:flex;justify-content:space-between;color:var(--muted)}
.hc-kb .cd{border:1px solid var(--border);border-radius:12px;padding:9px 11px;margin-bottom:7px;background:#fff;cursor:pointer;position:relative}
.hc-kb .cd:hover{background:#F8FAFC}
.hc-kb .cd b{font-size:13px;display:block;padding-inline-end:22px}
.hc-kb .cd small{display:block;font-size:11px;color:var(--muted);margin-top:3px}
.hc-kb .cd .tg{display:inline-block;font-size:10.5px;font-weight:800;padding:1px 7px;border-radius:999px;background:#E6F4F4;color:#0E5E73;margin-top:4px}
.hc-kb .cd .nr{font-size:10.5px;font-weight:800;color:#0F6E54}
.hc-kb .cd .pr{position:absolute;top:8px;left:9px;font-size:13px;cursor:pointer}
.hc-dim{position:fixed;inset:0;background:rgba(15,40,73,.4);z-index:60}
.hc-sheet{position:fixed;left:50%;top:30px;transform:translateX(-50%);width:min(700px,94vw);max-height:calc(100vh - 60px);overflow:auto;background:#fff;border-radius:22px;padding:18px 20px;z-index:61;box-shadow:0 30px 70px rgba(15,40,73,.35)}
.hc-sh-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}
.hc-sh-h h2{margin:0;font-size:19px;font-weight:900}
.hc-x{width:34px;height:34px;border-radius:50%;border:1px solid var(--border);background:#fff;font-size:15px;cursor:pointer;color:var(--navy)}
.hc-lbl{font-size:12.5px;font-weight:800;margin:12px 0 6px;display:block}
.hc-stu{display:flex;align-items:center;gap:10px;border:1.5px solid #139A9A;background:#F0FAFA;border-radius:12px;padding:8px 12px;font-size:13px;flex-wrap:wrap}
.hc-stu span{color:var(--muted);font-size:12px}
.hc-stu button{margin-inline-start:auto;border:0;background:none;font-size:14px;cursor:pointer;color:var(--muted)}
.hc-warn{margin-top:6px;font-size:12.5px;font-weight:700;background:#FFF5F3;border:1px solid #f2b5ab;color:#8f2a1e;border-radius:10px;padding:7px 10px;line-height:1.7}
.hc-warn.hp{background:#FFF5F8;border-color:#f3c2d2;color:#7a2440}
.hc-chips{display:flex;flex-wrap:wrap;gap:6px}
.hc-chips button{font:inherit;font-size:12.5px;font-weight:700;padding:6px 12px;border-radius:999px;border:1.5px solid var(--border);background:#fff;color:var(--navy);cursor:pointer}
.hc-chips button.on{background:#0E5E73;color:#fff;border-color:#0E5E73}
.hc-chips.act button.on{background:#8a6400;border-color:#8a6400}
.hc-temp{font-weight:900;font-size:16px;text-align:center}.hc-temp.hot{color:#B4462F;border-color:#f2b5ab}
.hc-sw{display:flex;align-items:flex-start;gap:10px;font-size:13px;background:#F8FAFC;border:1px solid var(--border);border-radius:12px;padding:10px 12px;margin-top:12px;cursor:pointer}
.hc-sw input{width:18px;height:18px;margin-top:2px;accent-color:#0E5E73}
.hc-sw small{display:block;font-size:11.5px;color:var(--muted);line-height:1.7}
.hc-atts{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.hc-atts span{font-size:12px;border:1px solid var(--border);border-radius:8px;padding:4px 8px;display:inline-flex;gap:6px;align-items:center}
.hc-atts button{border:0;background:#C0392B;color:#fff;border-radius:50%;width:18px;height:18px;font-size:11px;cursor:pointer}
.hc-sh-f{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;align-items:center;margin-top:14px;padding-top:12px;border-top:1px solid var(--border);position:sticky;bottom:-18px;background:#fff;padding-bottom:4px}
.hc-sh-f small{margin-inline-end:auto;color:var(--muted);font-size:12px}
/* علامة البطاقة الصحية على المقعد */
.hp-b{position:absolute;top:-8px;right:-6px;background:#C2416B;color:#fff;font-size:11px;line-height:1;border-radius:999px;padding:3px 5px;box-shadow:0 2px 6px rgba(194,65,107,.35);cursor:pointer;z-index:2}
.att-seat{position:relative}
.hp-pop-dim{position:fixed;inset:0;background:rgba(15,40,73,.35);z-index:200}
.hp-pop{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);width:min(420px,92vw);background:#fff;border-radius:18px;padding:16px 18px;z-index:201;border-top:5px solid #C2416B;box-shadow:0 30px 70px rgba(15,40,73,.35)}
.hp-pop b{font-size:15px;color:#7a2440}
.hp-pop p{font-size:13.5px;line-height:1.9;margin:8px 0 12px}
.md-cl .hp{background:#FFF0F5;color:#C2416B}
@media (max-width:1100px){.hc-g3{grid-template-columns:1fr 1fr}.hc-g3>:last-child{grid-column:1/-1}}
@media (max-width:760px){
  .hc-hero{grid-template-columns:1fr;padding:16px}
  .hc-hero h1{font-size:20px}
  .hc-kp div{flex:1 1 calc(50% - 10px);min-width:0}
  .hc-cap{position:fixed;bottom:16px;left:16px;width:68px;height:68px;font-size:0;z-index:50;background:#0E5E73;color:#fff;box-shadow:0 10px 25px rgba(15,40,73,.35),0 0 0 6px rgba(19,154,154,.25)}
  .hc-cap em{font-size:28px}.hc-cap small{display:none}
  .hc-g2,.hc-g3{grid-template-columns:1fr}
  .hc-alerts{grid-template-columns:1fr}
  .hc-al{flex-wrap:wrap}.hc-al>div{flex:1;min-width:0}.hc-al button,.hc-al .done{flex-basis:100%;margin:0}
  .hc-kb{grid-template-columns:1fr!important}
  .hc-v{grid-template-columns:44px minmax(0,1fr)}.hc-v .av{display:none}
  .hc-v .btns,.hc-v>.hc-ac{grid-column:2;justify-content:flex-start;justify-self:start}
  .hc-sheet{top:auto;bottom:0;left:0;transform:none;width:100%;border-radius:22px 22px 0 0;max-height:92vh;padding:14px}
  .hc-sh-f{bottom:-14px}
}

/* ===== الاتصال المؤسسي: غرفة الأخبار ===== */
.ch-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;color:#fff;border-radius:20px;padding:20px 24px 42px;margin-bottom:14px;position:relative;overflow:hidden;background:#1F1B3A}
.ch-hero:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0 26px,rgba(255,255,255,.04) 26px 27px),radial-gradient(circle at 85% -20%,rgba(155,120,255,.45),transparent 50%);pointer-events:none}
.ch-hero>div,.ch-cap{position:relative}
.ch-hero h1{margin:0;font-size:24px;font-weight:900}
.ch-hero p{margin:4px 0 12px;font-size:13px;opacity:.8}
.ch-kp{display:flex;gap:10px;flex-wrap:wrap}
.ch-kp div{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);border-radius:14px;padding:8px 14px;min-width:112px}
.ch-kp div.hot{background:#C9A227;color:#1F1B3A;border-color:#C9A227}
.ch-kp b{display:block;font-size:21px;font-weight:900;font-variant-numeric:tabular-nums}
.ch-kp span{font-size:11.5px;opacity:.85}
.ch-cap{z-index:1;width:116px;height:116px;border-radius:50%;border:0;background:#fff;color:#1F1B3A;font:inherit;font-weight:900;font-size:13.5px;cursor:pointer;box-shadow:0 0 0 8px rgba(255,255,255,.1),0 0 0 18px rgba(255,255,255,.05)}
.ch-cap em{display:block;font-style:normal;font-size:30px;line-height:1.15}
.ch-cap small{display:block;font-size:10.5px;color:var(--muted);font-weight:700}
.ch-ticker{position:absolute!important;left:0;right:0;bottom:0;height:28px;background:#C9A227;color:#1F1B3A;font-size:12px;font-weight:800;display:flex;align-items:center;gap:26px;padding:0 16px;white-space:nowrap;overflow:hidden}
.ch-ticker b{background:#1F1B3A;color:#C9A227;padding:2px 8px;border-radius:4px;font-size:11px}
.ch-warn{font-size:13px;background:#FFF5F3;border:1px solid #f2b5ab;color:#8f2a1e;border-radius:12px;padding:9px 12px;margin-bottom:14px;font-weight:700}
.ch-ph{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;flex-wrap:wrap}
.ch-ph h3{margin:0;font-size:15.5px;font-weight:800}.ch-ph small{font-size:12px;color:var(--muted)}
.ch-ph-x{display:flex;gap:6px;flex-wrap:wrap}
.ch-stories{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}
.ch-st{border:1px solid var(--border);border-radius:16px;overflow:hidden;background:#fff;display:flex;flex-direction:column}
.ch-st .im{height:118px;position:relative;background-size:cover;background-position:center}
.ch-st .src{position:absolute;top:8px;right:8px;background:rgba(255,255,255,.95);font-size:11px;font-weight:800;border-radius:999px;padding:2px 9px}
.ch-st .n{position:absolute;top:8px;left:8px;background:rgba(15,40,73,.75);color:#fff;font-size:11px;font-weight:800;border-radius:8px;padding:1px 7px}
.ch-st .bd{padding:10px 12px;display:flex;flex-direction:column;gap:4px;flex:1}
.ch-st .bd b{font-size:14px}
.ch-st .bd small{font-size:11.5px;color:var(--muted)}
.ch-st .why{font-size:11.5px;font-weight:700;color:#5B3FA8;background:#F3F0FC;border-radius:8px;padding:4px 8px;align-self:flex-start}
.ch-st .ft{display:flex;gap:6px;margin-top:auto;padding-top:8px}
.ch-st .ft button{font:inherit;font-size:12px;font-weight:800;border-radius:10px;padding:6px 10px;border:1px solid var(--border);background:#fff;color:var(--navy);cursor:pointer}
.ch-st .ft .go{background:#1F1B3A;color:#fff;border-color:#1F1B3A;flex:1}
.ch-g2{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:16px;margin:16px 0;align-items:start}
.ch-g2>*{min-width:0;margin:0}
.ch-wk{display:flex;align-items:center;gap:6px}
.ch-wk button{width:26px;height:26px;border-radius:8px;border:1px solid var(--border);background:#fff;font:inherit;font-weight:900;cursor:pointer;color:var(--navy)}
.ch-cal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}
.ch-cal .h{font-size:10.5px;color:var(--muted);text-align:center;font-weight:800}
.ch-cal .c{aspect-ratio:1.2;border-radius:9px;background:#F8FAFC;border:1px solid #EEF2F6;padding:4px;font-size:11px;font-weight:800;color:#94a3b8;display:flex;flex-direction:column;justify-content:space-between}
.ch-cal .c:empty{background:none;border:0}
.ch-cal .c.on{background:#fff;color:var(--navy);border-color:var(--border)}
.ch-cal .c.today{border-color:#5B3FA8;box-shadow:0 0 0 2px rgba(91,63,168,.2)}
.ch-cal .d{display:flex;gap:2px;flex-wrap:wrap;font-style:normal}
.ch-cal .d i{width:7px;height:7px;border-radius:50%}
.ch-lg{display:flex;flex-wrap:wrap;gap:12px;font-size:11.5px;color:var(--muted);margin-top:8px}
.ch-lg i{display:inline-block;width:9px;height:9px;border-radius:50%;margin-inline-end:4px;vertical-align:middle}
.ch-hint{font-size:12.5px;background:#F3F0FC;border:1px solid #d9cff5;color:#4a3390;border-radius:10px;padding:8px 10px;line-height:1.8;margin-top:8px}
.ch-hint button{font:inherit;font-size:11.5px;font-weight:800;border:0;border-radius:8px;padding:3px 9px;background:#1F1B3A;color:#fff;cursor:pointer;margin-inline-start:4px}
.ch-posts{display:flex;flex-direction:column;gap:8px}
.ch-po{display:grid;grid-template-columns:60px minmax(0,1fr) auto;gap:12px;align-items:center;border:1px solid var(--border);border-radius:14px;padding:8px 10px;cursor:pointer}
.ch-po:hover{background:#F8FAFC}
.ch-po .im{width:60px;height:50px;border-radius:10px;background:#F3F0FC center/cover;display:grid;place-items:center;font-size:20px}
.ch-po b{font-size:13.5px}.ch-po small{display:block;font-size:11.5px;color:var(--muted)}
.ch-po .pl{display:flex;gap:4px;flex-wrap:wrap;margin-top:3px}
.ch-po .pl i{font-style:normal;font-size:10.5px;font-weight:800;border-radius:6px;padding:1px 6px;color:#fff}
.ch-po .s{font-size:11.5px;font-weight:800;border-radius:999px;padding:3px 10px;white-space:nowrap}
.ch-po .s.pub{background:#F2FBF7;color:#0F6E54}.ch-po .s.dr{background:#F1F5F9;color:#475569}
.ch-sheet{width:min(760px,94vw)}
.ch-lead{font-size:12.5px;color:#5B3FA8;margin:0 0 10px;font-weight:700}
.ch-tabs{display:flex;gap:6px;flex-wrap:wrap;margin:14px 0 10px}
.ch-tabs button{font:inherit;font-size:12.5px;font-weight:800;padding:7px 12px;border-radius:10px;border:1.5px solid var(--border);background:#fff;color:var(--navy);cursor:pointer}
.ch-tabs button.on{background:#1F1B3A;color:#fff;border-color:#1F1B3A}
.ch-ta{line-height:1.9;font-size:13.5px}
.ch-cnt{display:flex;justify-content:space-between;gap:8px;font-size:11.5px;color:var(--muted);margin-top:4px}
.ch-cnt b{color:#0F6E54}
.ch-photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(82px,1fr));gap:6px}
.ch-photos button{aspect-ratio:1;border-radius:10px;border:2px solid transparent;background:#F1F5F9 center/cover;position:relative;cursor:pointer;opacity:.45}
.ch-photos button.on{opacity:1;border-color:#5B3FA8}
.ch-photos button i{position:absolute;top:4px;left:4px;width:18px;height:18px;border-radius:50%;background:#fff;font-style:normal;font-size:11px;display:grid;place-items:center;font-weight:900;color:#5B3FA8}
.ch-photos .add{aspect-ratio:1;border-radius:10px;border:2px dashed #cbd5e1;display:grid;place-items:center;font-size:22px;color:var(--muted);background:#F8FAFC;cursor:pointer;position:relative;overflow:hidden}
.ch-photos .add input{position:absolute;inset:0;opacity:0;cursor:pointer}
@media (max-width:1000px){.ch-g2{grid-template-columns:1fr}}
@media (max-width:760px){
  .ch-hero{grid-template-columns:1fr;padding:16px 16px 42px}
  .ch-hero h1{font-size:20px}
  .ch-kp div{flex:1 1 calc(50% - 10px);min-width:0}
  .ch-cap{position:fixed!important;bottom:16px;left:16px;width:66px;height:66px;font-size:0;z-index:50;background:#1F1B3A;color:#fff;box-shadow:0 10px 25px rgba(15,40,73,.35),0 0 0 6px rgba(91,63,168,.25)}
  .ch-cap em{font-size:26px}.ch-cap small{display:none}
  .ch-stories{grid-template-columns:1fr}
}

/* ===== مصادر التعلم: رف الكتب + لوحة القاعة ===== */
.rv-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;color:#fff;border-radius:20px;padding:20px 24px 38px;margin-bottom:14px;position:relative;overflow:hidden;background:linear-gradient(120deg,#3b2414 0%,#6b4423 55%,#8B5E34 100%)}
.rv-hero>div:not(.rv-shelf),.rv-cap{position:relative}
.rv-hero h1{margin:0;font-size:24px;font-weight:900}
.rv-hero p{margin:4px 0 12px;font-size:13px;opacity:.85}
.rv-shelf{position:absolute;left:0;right:0;bottom:0;height:24px;display:flex;align-items:flex-end;gap:3px;padding:0 18px;background:#2B1D12;overflow:hidden}
.rv-shelf i{display:block;width:11px;flex-shrink:0;border-radius:2px 2px 0 0}
.rv-now{display:inline-flex;align-items:center;gap:10px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);border-radius:14px;padding:10px 14px;margin-bottom:10px;max-width:100%}
.rv-now .dot{width:10px;height:10px;flex-shrink:0;border-radius:50%;background:#7fe0b8;box-shadow:0 0 0 5px rgba(127,224,184,.25)}
.rv-now.off .dot{background:#d9c6a8;box-shadow:0 0 0 5px rgba(217,198,168,.2)}
.rv-now b{font-size:15px}.rv-now small{display:block;font-size:11.5px;opacity:.8}
.rv-kp{display:flex;gap:10px;flex-wrap:wrap}
.rv-kp div{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-radius:14px;padding:8px 14px;min-width:110px}
.rv-kp div.hot{background:#C9A227;color:#2B1D12;border-color:#C9A227}
.rv-kp b{display:block;font-size:20px;font-weight:900;font-variant-numeric:tabular-nums}
.rv-kp span{font-size:11.5px;opacity:.85}
.rv-cap{z-index:1;width:116px;height:116px;border-radius:50%;border:0;background:#FBF6EC;color:#6b4423;font:inherit;font-weight:900;font-size:13.5px;cursor:pointer;box-shadow:0 0 0 8px rgba(255,255,255,.12),0 0 0 18px rgba(255,255,255,.05)}
.rv-cap em{display:block;font-style:normal;font-size:30px;line-height:1.15}
.rv-cap small{display:block;font-size:10.5px;color:var(--muted);font-weight:700}
.rv-cap:focus-visible,.rv-s:focus-visible,.rv-slots button:focus-visible{outline:3px solid #C9A227;outline-offset:2px}
.rv-pend{border-color:#E2CFAE;background:#FFFCF6}
.rv-rq{display:grid;grid-template-columns:92px minmax(0,1fr) auto;gap:12px;align-items:center;border:1px solid #EFE4D2;background:#fff;border-radius:14px;padding:9px 12px;margin-bottom:8px;font-size:13px}
.rv-rq .dt{border-inline-end:1px solid #EFE4D2;padding-inline-end:8px}
.rv-rq .dt b{display:block;font-size:13.5px;color:#6b4423}.rv-rq .dt small{font-size:11px;color:var(--muted)}
.rv-rq small{color:var(--muted)}
.rv-rq .tp{display:block;font-size:12px;color:#6b4423;margin-top:2px}
.rv-rq .nd{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}
.rv-rq .nd i{font-style:normal;font-size:11px;font-weight:700;background:#F6EEDF;color:#4a3420;border-radius:999px;padding:1px 8px}
.rv-rq .bt{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.rv-rq .bt button{font:inherit;font-size:12px;font-weight:800;border-radius:10px;padding:6px 11px;border:1px solid var(--border);background:#fff;color:var(--navy);cursor:pointer}
.rv-rq .bt button.ok{background:#1D9E75;border-color:#1D9E75;color:#fff}
.rv-rq .bt em{font-style:normal;font-size:11.5px;font-weight:800;border-radius:999px;padding:3px 10px;white-space:nowrap}
.rv-rq em.g{background:#F2FBF7;color:#0F6E54}.rv-rq em.y{background:#FFF8E1;color:#8a6400}.rv-rq em.r{background:#FFF5F3;color:#8f2a1e}.rv-rq em.n{background:#F1F5F9;color:#64748b}
.rv-nav{display:flex;align-items:center;gap:6px}
.rv-nav button{min-width:26px;height:26px;border-radius:8px;border:1px solid var(--border);background:#fff;font:inherit;font-weight:900;cursor:pointer;color:var(--navy)}
.rv-nav .pr{padding:0 10px;font-size:12px;margin-inline-start:4px}
.rv-wrap{overflow-x:auto}
.rv-wk{display:grid;gap:5px}
.rv-wk .h{font-size:11px;color:var(--muted);font-weight:800;text-align:center;padding:4px 0}
.rv-wk .d{font-size:12.5px;font-weight:900;display:flex;flex-direction:column;justify-content:center;padding:0 4px}
.rv-wk .d small{font-size:10.5px;color:var(--muted);font-weight:700}
.rv-wk .d.today{color:#8B5E34}
.rv-s{min-height:62px;border-radius:11px;border:1.5px dashed #E7DCC9;background:#FDFBF6;padding:6px 7px;font:inherit;font-size:11px;display:flex;flex-direction:column;gap:1px;position:relative;text-align:start;color:#4a3420;cursor:pointer;min-width:0;overflow:hidden}
.rv-s.free{color:#b9a88c;align-items:center;justify-content:center;font-weight:800}
.rv-s.free:not(:disabled):hover{background:#F6EEDF;border-color:#c9ab7d}
.rv-s:disabled{cursor:default}
.rv-s.free.my{border-color:#c9ab7d;background:#FBF6EC;color:#8B5E34}
.rv-s.fix{border-style:solid;border-color:#E2CFAE;background:#F6EEDF}
.rv-s.bk{border-style:solid;border-color:#9FC4E8;background:#EEF4FC;color:#1d4f86}
.rv-s.pend{border-color:#E0A100;background:#FFFBEB;color:#8a6400}
.rv-s.mine{border-style:solid;border-color:#1D9E75;background:#F2FBF7;color:#0F6E54;box-shadow:0 0 0 2px rgba(29,158,117,.15)}
.rv-s.now{outline:3px solid #C9A227;outline-offset:1px}
.rv-s.past{opacity:.5}
.rv-s.past:has(.ev){opacity:1}
.rv-s b{font-size:11.5px;font-weight:900;padding-inline-end:34px}
.rv-s .nd{font-size:10.5px}
.rv-s .tg{position:absolute;top:4px;left:5px;font-size:9.5px;font-weight:900;border-radius:5px;padding:0 5px;background:#E2CFAE;color:#4a3420}
.rv-s.bk .tg{background:#cfe0f5;color:#1d4f86}.rv-s.pend .tg{background:#f7e2a0;color:#6b4e00}.rv-s.mine .tg{background:#1D9E75;color:#fff}
.rv-s .ev{margin-top:auto;align-self:flex-start;font-size:10.5px;font-weight:800;background:#1D9E75;color:#fff;border-radius:6px;padding:1px 6px}
.rv-lg{display:flex;flex-wrap:wrap;gap:12px;font-size:11.5px;color:var(--muted);margin-top:10px;align-items:center}
.rv-lg i{display:inline-block;width:14px;height:10px;border-radius:3px;margin-inline-end:4px;vertical-align:middle;border:1.5px solid}
.rv-lg i.fix{background:#F6EEDF;border-color:#E2CFAE}.rv-lg i.bk{background:#EEF4FC;border-color:#9FC4E8}.rv-lg i.pend{background:#FFFBEB;border-color:#E0A100;border-style:dashed}.rv-lg i.mine{background:#F2FBF7;border-color:#1D9E75}
.rv-g3{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1fr) minmax(0,1.1fr);gap:16px;margin-top:16px;align-items:start}
.rv-g3>*{min-width:0;margin:0}
.rv-use{display:flex;align-items:center;gap:14px}
.rv-use p{margin:0;font-size:12.5px;line-height:1.9}
.rv-ring{width:96px;height:96px;border-radius:50%;display:grid;place-items:center;flex-shrink:0}
.rv-ring>div{width:74px;height:74px;border-radius:50%;background:#fff;display:grid;place-items:center;font-weight:900;font-size:20px;color:#6b4423;font-variant-numeric:tabular-nums}
.rv-hint{font-size:12.5px;background:#FBF6EC;border:1px solid #E7DCC9;color:#6b4423;border-radius:10px;padding:8px 10px;line-height:1.8;margin-top:10px}
.rv-hint.ok{background:#F2FBF7;border-color:#b9e3d2;color:#0F6E54}
.rv-br .bar{background:#F1E9DB}.rv-br .bar i{background:#8B5E34}
.rv-tch{display:flex;flex-direction:column;gap:6px}
.rv-tch .t{display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:8px;align-items:center;font-size:12.5px;padding:6px 8px;border:1px solid var(--border);border-radius:11px}
.rv-tch .t i{font-style:normal;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#F6EEDF;font-weight:900;color:#6b4423}
.rv-tch .t small{display:block;font-size:11px;color:var(--muted)}
.rv-tch .t button{font:inherit;font-size:11.5px;font-weight:800;padding:4px 9px;border-radius:9px;border:0;background:#2B1D12;color:#fff;cursor:pointer;white-space:nowrap}
.rv-tch .t.z{border-style:dashed}
.rv-tch .t.z i{background:#F1F5F9;color:#94a3b8}
.rv-lead{font-size:12.5px;color:#6b4423;margin:0 0 12px;font-weight:700}
.rv-slots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.rv-slots button{font:inherit;text-align:start;border:1.5px solid var(--border);border-radius:12px;padding:8px 10px;font-size:12px;background:#fff;color:var(--navy);cursor:pointer}
.rv-slots button b{display:block;font-size:13px}
.rv-slots button small{color:var(--muted)}
.rv-slots button.on{border-color:#6b4423;background:#FBF6EC;box-shadow:0 0 0 3px rgba(107,68,35,.12)}
.rv-slots button.taken{opacity:.45;border-style:dashed;cursor:not-allowed}
.rv-ch button.on{background:#6b4423;border-color:#6b4423}
.btn.rv-go{background:#6b4423;border-color:#6b4423}
@media (max-width:1000px){.rv-g3{grid-template-columns:1fr}}
@media (max-width:760px){
  .rv-hero{grid-template-columns:1fr;padding:16px 16px 36px}
  .rv-hero h1{font-size:20px}
  .rv-kp div{flex:1 1 calc(50% - 10px);min-width:0}
  .rv-cap{position:fixed!important;bottom:16px;left:16px;width:66px;height:66px;font-size:0;z-index:50;background:#6b4423;color:#fff;box-shadow:0 10px 25px rgba(43,29,18,.35),0 0 0 6px rgba(201,162,39,.25)}
  .rv-cap em{font-size:26px}.rv-cap small{display:none}
  .rv-wk{min-width:640px}
  .rv-s .tg{position:static;align-self:flex-start;margin-bottom:2px}
  .rv-s b{padding-inline-end:0}
  .rv-rq{grid-template-columns:78px minmax(0,1fr)}
  .rv-rq .bt{grid-column:1/-1;justify-content:stretch}.rv-rq .bt button{flex:1}
  .rv-slots{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* ===== الموجه الطلابي: مكتب الإرشاد ===== */
.cs-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;color:#fff;border-radius:20px;padding:20px 24px;margin-bottom:14px;position:relative;overflow:hidden;background:linear-gradient(125deg,#16302B 0%,#1E3A34 50%,#2F5B4F 100%)}
.cs-hero:before{content:"";position:absolute;left:-90px;top:50%;width:420px;height:420px;transform:translateY(-50%);border-radius:50%;background:repeating-radial-gradient(circle,rgba(255,255,255,.07) 0 1px,transparent 1px 46px);pointer-events:none}
.cs-hero>*{position:relative}
.cs-hero h1{margin:0;font-size:24px;font-weight:900}
.cs-hero p{margin:4px 0 10px;font-size:13px;opacity:.88}
.cs-lock{display:inline-flex;gap:6px;align-items:center;font-size:11.5px;font-weight:800;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-radius:999px;padding:3px 10px;margin-bottom:12px;max-width:100%}
.cs-kp{display:flex;gap:10px;flex-wrap:wrap}
.cs-kp div{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:14px;padding:8px 14px;min-width:112px}
.cs-kp div.hot{background:#E08A4F;border-color:#E08A4F;color:#2a1407}
.cs-kp div.warn b{color:#FFC59A}
.cs-kp b{display:block;font-size:21px;font-weight:900;font-variant-numeric:tabular-nums}
.cs-kp span{font-size:11.5px;opacity:.88}
.cs-cap{z-index:1;width:116px;height:116px;border-radius:50%;border:0;background:#F4F8F5;color:#1E3A34;font:inherit;font-weight:900;font-size:13.5px;cursor:pointer;box-shadow:0 0 0 8px rgba(255,255,255,.1),0 0 0 18px rgba(255,255,255,.04)}
.cs-cap em{display:block;font-style:normal;font-size:30px;line-height:1.15}
.cs-cap small{display:block;font-size:10.5px;color:var(--muted);font-weight:700}
.cs-cap:focus-visible,.cs-cc:focus-visible{outline:3px solid #C9A227;outline-offset:2px}
.cs-g2{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:16px;margin-bottom:16px;align-items:start}
.cs-g2>*{min-width:0;margin:0}
.cs-ag{display:flex;flex-direction:column;gap:8px}
.cs-ai{display:grid;grid-template-columns:62px minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid var(--border);border-radius:14px;padding:9px 12px;font-size:13px}
.cs-ai .t{font-size:11.5px;font-weight:900;color:#2F5B4F;text-align:center;line-height:1.3}
.cs-ai small{display:block;font-size:11.5px;color:var(--muted);line-height:1.6}
.cs-ai.urg{border-color:#f2b5ab;background:#FFF7F5}.cs-ai.urg .t{color:#D64532}
.cs-ai.late{border-inline-start:4px solid #E08A4F}.cs-ai.late .t{color:#B4561B}
.cs-ai .bt{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.cs-ai button{font:inherit;font-size:12px;font-weight:800;border-radius:10px;padding:6px 11px;border:1px solid var(--border);background:#fff;color:var(--navy);cursor:pointer;white-space:nowrap}
.cs-ai button.p{background:#1E3A34;border-color:#1E3A34;color:#fff}
.cs-rad{display:grid;grid-template-columns:190px minmax(0,1fr);gap:14px;align-items:center}
.cs-radar{width:190px;height:190px;border-radius:50%;position:relative;background:radial-gradient(circle,#fff 0 18%,#F1F6F3 18% 19%,#fff 19% 45%,#E6EFE9 45% 46%,#fff 46% 72%,#E6EFE9 72% 73%,#F8FBF9 73%);border:1px solid #DCE7E0;overflow:hidden}
.cs-radar:before{content:"";position:absolute;inset:0;background:conic-gradient(from 200deg,rgba(79,138,114,.28),transparent 22%)}
.cs-radar i{position:absolute;width:14px;height:14px;border-radius:50%;border:2px solid #fff;box-shadow:0 1px 4px rgba(0,0,0,.2)}
.cs-radar .c{position:absolute;inset:0;margin:auto;width:22px;height:22px;border-radius:50%;background:#1E3A34;display:grid;place-items:center;color:#fff;font-size:11px}
.cs-radar i.r,.cs-rs>i.r{background:#D64532}.cs-radar i.o,.cs-rs>i.o{background:#E08A4F}.cs-radar i.y,.cs-rs>i.y{background:#E0A100}
@media (prefers-reduced-motion:no-preference){.cs-radar:before{animation:csSweep 6s linear infinite}}
@keyframes csSweep{to{transform:rotate(360deg)}}
.cs-rl{display:flex;flex-direction:column;gap:8px;min-width:0}
.cs-rs{display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:8px;align-items:center;font-size:12.5px}
.cs-rs>i{width:10px;height:10px;border-radius:50%}
.cs-rs b{font-size:13px}.cs-rs small{color:var(--muted)}
.cs-rs .sg{display:flex;flex-wrap:wrap;gap:4px;margin-top:2px}
.cs-rs .sg em{font-style:normal;font-size:10.5px;font-weight:700;background:#F1F5F9;border-radius:999px;padding:1px 7px;color:#475569}
.cs-rs .bt{display:flex;gap:4px}
.cs-rs button{font:inherit;font-size:11.5px;font-weight:800;border-radius:9px;padding:4px 9px;border:1px solid #CFE0D6;background:#F4F9F6;color:#1E3A34;cursor:pointer;white-space:nowrap}
.cs-rs button.x{background:#fff;border-color:var(--border);color:#94a3b8;padding:4px 7px}
.cs-hint{font-size:12.5px;background:#EEF4F0;border:1px solid #D5E5DB;color:#1E3A34;border-radius:10px;padding:8px 10px;line-height:1.8;margin-top:10px}
.cs-flt{display:flex;gap:6px;flex-wrap:wrap}
.cs-flt.sm{margin:-4px 0 12px}
.cs-flt button{font:inherit;font-size:12px;font-weight:800;padding:5px 11px;border-radius:999px;border:1.5px solid var(--border);background:#fff;color:var(--navy);cursor:pointer}
.cs-flt button.on{background:#1E3A34;color:#fff;border-color:#1E3A34}
.cs-flt.sm button{font-size:11.5px;padding:3px 10px}
.cs-kb{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:start}
.cs-col{background:#F7FAF8;border:1px solid #E3ECE6;border-radius:16px;padding:10px;min-width:0}
.cs-col h4{margin:0 0 8px;font-size:13.5px;display:flex;justify-content:space-between;align-items:center}
.cs-col h4 small{font-size:11.5px;color:var(--muted);font-weight:700}
.cs-none{text-align:center;color:#94a3b8;font-size:12px;padding:10px}
.cs-more{display:block;width:100%;font:inherit;font-size:12px;font-weight:800;color:var(--muted);background:none;border:0;cursor:pointer;padding:4px}
.cs-cc{display:block;width:100%;text-align:start;font:inherit;color:inherit;background:#fff;border:1px solid var(--border);border-radius:14px;padding:10px 11px;margin-bottom:8px;font-size:12px;cursor:pointer}
.cs-cc:hover{border-color:#B9D2C3}
.cs-cc .hd{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:8px;align-items:center}
.cs-cc .av{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;font-weight:900;color:#fff;font-size:13px}
.cs-cc b{display:block;font-size:13.5px}.cs-cc small{color:var(--muted);font-size:11px}
.cs-ty{font-size:10.5px;font-weight:900;border-radius:6px;padding:1px 7px;white-space:nowrap}
.cs-cc .mt{display:flex;flex-wrap:wrap;gap:4px 10px;margin-top:8px;color:#475569;font-size:11.5px;align-items:center}
.cs-dots{display:inline-flex;gap:3px;vertical-align:middle}.cs-dots i{width:7px;height:7px;border-radius:50%;background:#D5E3DA}.cs-dots i.on{background:#4F8A72}
.cs-cc .src{display:inline-block;margin-top:6px;font-size:10.5px;font-weight:800;background:#EEF4FC;color:#1d4f86;border-radius:6px;padding:1px 7px}
.cs-cc.late{border-color:#F3C9A9;box-shadow:inset -4px 0 0 #E08A4F}
.cs-cc.late .due{color:#B4561B;font-weight:800}
.cs-cc.done{opacity:.85}
.cs-cc .res{display:block;margin-top:6px;font-size:11.5px;color:#0F6E54;background:#F2FBF7;border-radius:8px;padding:4px 8px}
.cs-g3{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,.9fr);gap:16px;margin-top:16px;align-items:start}
.cs-g3>*{min-width:0;margin:0}
.cs-lt{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.cs-lt button{font:inherit;text-align:start;border:1px solid var(--border);border-radius:12px;padding:9px 10px;font-size:12.5px;font-weight:800;display:flex;gap:8px;align-items:center;background:#fff;color:var(--navy);cursor:pointer}
.cs-lt button:hover{border-color:#B9D2C3}
.cs-lt em{font-style:normal;font-size:20px}
.cs-lt small{display:block;font-size:10.5px;color:var(--muted);font-weight:700}
.cs-br{grid-template-columns:104px minmax(0,1fr) 24px}
.cs-br .bar{background:#EAF1EC}
.cs-pl{display:flex;flex-direction:column;gap:8px;font-size:12.5px}
.cs-pl div{display:flex;justify-content:space-between;gap:8px;border-bottom:1px dashed var(--border);padding-bottom:6px}
.cs-pl b{font-variant-numeric:tabular-nums}
/* ملف الحالة */
.cs-sheet{width:min(860px,95vw)}
.cs-file{padding:0;overflow:auto}
.cs-sh-h{background:linear-gradient(125deg,#16302B,#2F5B4F);color:#fff;padding:16px 20px;display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:12px;align-items:center;position:sticky;top:0;z-index:2}
.cs-sh-h .av{width:48px;height:48px;border-radius:50%;background:#F4F8F5;display:grid;place-items:center;font-weight:900;font-size:20px}
.cs-sh-h h2{margin:0;font-size:19px}.cs-sh-h small{font-size:12px;opacity:.85}
.cs-sh-h .hb{display:flex;gap:6px}
.cs-sh-h .hb button{width:34px;height:34px;border-radius:50%;border:0;background:rgba(255,255,255,.14);color:#fff;font:inherit;font-size:14px;cursor:pointer}
.cs-step{display:flex;margin:14px 20px 0;border-radius:12px;overflow:hidden;border:1px solid var(--border)}
.cs-step span{flex:1;text-align:center;font-size:12px;font-weight:800;padding:7px 4px;color:var(--muted);background:#F8FAFC}
.cs-step span.on{background:#4F8A72;color:#fff}.cs-step span.dn{background:#E6F0EA;color:#1E3A34}
.cs-sh-b{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:16px;padding:14px 20px}
.cs-sh-b.one{display:block}
.cs-ch button.on{background:#1E3A34;border-color:#1E3A34}
.cs-in{width:100%;margin-top:10px;border:1.5px solid #CFE0D6;border-radius:12px;background:#FBFDFC;font:inherit;font-size:13px;padding:10px 12px;resize:vertical}
.cs-plan{margin-top:10px}
.cs-addrow{display:flex;gap:8px;justify-content:space-between;align-items:center;margin-top:8px;flex-wrap:wrap}
.cs-addrow label{font-size:12px;color:var(--muted);display:flex;align-items:center;gap:6px;font-weight:700}
.cs-addrow input{width:auto;padding:6px 8px}
.btn.cs-go{background:#1E3A34;border-color:#1E3A34}
.btn.cs-closebtn{background:#fff;border:1.5px solid #0F6E54;color:#0F6E54}
.cs-tl{margin-top:16px;position:relative;padding-inline-start:22px}
.cs-tl:before{content:"";position:absolute;inset-inline-start:7px;top:6px;bottom:6px;width:2px;background:#DCE7E0}
.cs-te{position:relative;margin-bottom:12px;font-size:12.5px;line-height:1.8}
.cs-te>i{position:absolute;inset-inline-start:-22px;top:3px;width:16px;height:16px;border-radius:50%;border:3px solid #fff;box-shadow:0 0 0 1.5px #DCE7E0}
.cs-te b{font-size:13px}.cs-te small{color:var(--muted);font-size:11px;margin-inline-start:6px}
.cs-te p{margin:2px 0 0;color:#334155}
.cs-te button{font:inherit;font-size:11px;font-weight:800;border:1px solid var(--border);background:#fff;border-radius:8px;padding:1px 7px;margin-inline-start:6px;cursor:pointer;color:var(--navy)}
.cs-te button.del{color:#94a3b8;border:0}
.cs-res{font-size:13px;background:#F2FBF7;border:1px solid #b9e3d2;color:#0F6E54;border-radius:12px;padding:10px 12px;line-height:1.9}
.cs-closing{border:1.5px solid #b9e3d2;background:#F7FCFA;border-radius:14px;padding:12px}
.cs-closing h4{margin:0 0 8px;font-size:14px;color:#0F6E54}
.cs-ab{display:flex;flex-direction:column;gap:10px;min-width:0}
.cs-bx{border:1px solid var(--border);border-radius:14px;padding:10px 12px;font-size:12.5px}
.cs-bx h5{margin:0 0 6px;font-size:12.5px;color:var(--muted)}
.cs-bx .f{display:flex;justify-content:space-between;gap:8px;margin-bottom:4px}
.cs-bx .f b{font-weight:900}.cs-bx .f b.r{color:#B23A2B}.cs-bx .f b.g{color:#0F6E54}
.cs-lnk{font:inherit;font-size:12px;font-weight:800;color:#1E3A34;background:none;border:0;padding:4px 0 0;cursor:pointer}
.cs-priv{font-size:11.5px;background:#FFF8E1;border:1px solid #f3dc9b;color:#8a6400;border-radius:10px;padding:7px 10px;line-height:1.7;margin-top:10px}
.cs-ab .cs-priv{margin-top:0}
.cs-foot{display:flex;gap:8px;justify-content:flex-end;padding:12px 20px;border-top:1px solid var(--border);align-items:center;flex-wrap:wrap;position:sticky;bottom:0;background:#fff}
.cs-foot small{margin-inline-end:auto;color:var(--muted);font-size:12px}
@media (max-width:1000px){.cs-g2,.cs-g3{grid-template-columns:1fr}}
@media (max-width:760px){
  .cs-hero{grid-template-columns:1fr;padding:16px}
  .cs-hero h1{font-size:20px}
  .cs-kp div{flex:1 1 calc(50% - 10px);min-width:0}
  .cs-cap{position:fixed!important;bottom:16px;left:16px;width:66px;height:66px;font-size:0;z-index:50;background:#1E3A34;color:#fff;box-shadow:0 10px 25px rgba(15,30,26,.35),0 0 0 6px rgba(79,138,114,.25)}
  .cs-cap em{font-size:26px}.cs-cap small{display:none}
  .cs-rad{grid-template-columns:1fr;justify-items:center}
  .cs-rl{width:100%}
  .cs-kb{grid-template-columns:1fr}
  .cs-ai{grid-template-columns:52px minmax(0,1fr)}
  .cs-ai .bt{grid-column:1/-1}.cs-ai .bt button{flex:1}
  .cs-sh-b{grid-template-columns:1fr;padding:12px 14px}
  .cs-step{margin:12px 14px 0}
  .cs-foot{padding:10px 14px}
  .cs-lt{grid-template-columns:1fr}
  .cs-sheet{width:100%}
}

/* ===== وكيل شؤون الطلاب: ميزان السلوك ===== */
.ds-hero{display:grid;grid-template-columns:minmax(0,1fr) 300px auto;gap:20px;align-items:center;border-radius:20px;padding:20px 24px;margin-bottom:14px;color:#fff;background:linear-gradient(135deg,#1E2025,#2F333B 60%,#3A3E46);position:relative;overflow:hidden}
.ds-hero:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 70% 0%,rgba(212,167,58,.22),transparent 45%);pointer-events:none}
.ds-hero>*{position:relative;z-index:1}
.ds-hero h1{margin:0;font-size:24px;font-weight:900}
.ds-hero p{margin:4px 0 12px;font-size:13px;opacity:.85}
.ds-kp{display:flex;gap:10px;flex-wrap:wrap}
.ds-kp div{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);border-radius:14px;padding:8px 14px;min-width:104px}
.ds-kp div.hot{background:#D4A73A;border-color:#D4A73A;color:#1E2025}
.ds-kp b{display:block;font-size:21px;font-weight:900;font-variant-numeric:tabular-nums}
.ds-kp span{font-size:11.5px;opacity:.88}
.ds-scale{position:relative;height:172px;margin-bottom:14px}
.ds-scale .post{position:absolute;left:50%;bottom:16px;width:6px;height:112px;margin-left:-3px;background:linear-gradient(#E9C766,#B88A22);border-radius:3px}
.ds-scale .base{position:absolute;left:50%;bottom:6px;width:90px;height:12px;margin-left:-45px;background:#B88A22;border-radius:8px}
.ds-scale .beam{position:absolute;left:20px;right:20px;top:38px;height:6px;background:linear-gradient(90deg,#E9C766,#B88A22);border-radius:3px;transform-origin:50% 50%;transition:transform .6s}
.ds-scale .knob{position:absolute;left:50%;top:32px;width:18px;height:18px;margin-left:-9px;border-radius:50%;background:#E9C766;box-shadow:0 0 0 4px rgba(233,199,102,.25)}
.ds-scale .pan{position:absolute;width:112px;text-align:center;transition:top .6s}
.ds-scale .pan.p{right:0}.ds-scale .pan.n{left:0}
.ds-scale .str{height:34px;border-inline:1.5px solid rgba(233,199,102,.7);width:70px;margin:0 auto}
.ds-scale .bowl{border-radius:0 0 60px 60px;padding:8px 6px 10px;font-size:11px;font-weight:800}
.ds-scale .bowl b{display:block;font-size:22px;line-height:1.1;font-variant-numeric:tabular-nums}
.ds-scale .pan.p .bowl{background:rgba(29,158,117,.92)}.ds-scale .pan.n .bowl{background:rgba(214,69,50,.88)}
.ds-scale .cap{position:absolute;bottom:-18px;left:0;right:0;text-align:center;font-size:11px;opacity:.75}
.ds-acts{display:flex;flex-direction:column;gap:10px;align-items:center}
.ds-cap{width:120px;height:120px;border-radius:50%;border:0;background:#fff;color:#1E2025;font:inherit;font-weight:900;font-size:13.5px;cursor:pointer;box-shadow:0 0 0 8px rgba(255,255,255,.08)}
.ds-cap em{display:block;font-style:normal;font-size:28px;line-height:1.15}
.ds-cap small{display:block;font-size:10.5px;color:var(--muted);font-weight:700}
.ds-cap2{font:inherit;font-size:12.5px;font-weight:900;background:#D4A73A;color:#1E2025;border:0;border-radius:999px;padding:6px 14px;cursor:pointer}
.ds-cap:focus-visible,.ds-cap2:focus-visible,.ds-cl:focus-visible{outline:3px solid #E9C766;outline-offset:2px}
.ds-g2{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:16px;margin-bottom:16px;align-items:start}
.ds-g2>*{min-width:0;margin:0}
.ds-qt{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:10px}
.ds-qt button{font:inherit;font-size:12px;font-weight:800;padding:5px 11px;border-radius:999px;border:1.5px solid var(--border);background:#fff;color:var(--navy);cursor:pointer}
.ds-qt button.on{background:#26292F;color:#fff;border-color:#26292F}
.ds-qt button i{font-style:normal;background:#D64532;color:#fff;border-radius:999px;padding:0 6px;margin-inline-start:4px;font-size:10.5px}
.ds-qi{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid var(--border);border-radius:14px;padding:9px 12px;margin-bottom:8px;font-size:13px}
.ds-qi .ic{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;font-size:19px;background:#F4F5F7}
.ds-qi small{display:block;font-size:11.5px;color:var(--muted);line-height:1.6}
.ds-qi.urg{border-color:#f2b5ab;background:#FFF7F5}
.ds-tag{font-size:10.5px;font-weight:900;border-radius:6px;padding:1px 7px;margin-inline-start:4px;background:#D64532;color:#fff}
.ds-qi .bt{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.ds-qi button{font:inherit;font-size:12px;font-weight:800;border-radius:10px;padding:6px 11px;border:1px solid var(--border);background:#fff;color:var(--navy);cursor:pointer;white-space:nowrap}
.ds-qi button.p{background:#26292F;border-color:#26292F;color:#fff}
.ds-qi button.g{background:#F2FBF7;border-color:#b9e3d2;color:#0F6E54}
.ds-qi button.x{color:#94a3b8;padding:6px 9px}
.ds-hon{display:flex;flex-direction:column;gap:8px}
.ds-hn{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:8px;align-items:center;border:1px solid #F1E3B5;background:#FFFCF2;border-radius:14px;padding:8px 10px;font-size:12px}
.ds-hn .av{width:34px;height:34px;border-radius:50%;background:#D4A73A;display:grid;place-items:center;font-weight:900;color:#1E2025}
.ds-hn b{font-size:13px;display:block}.ds-hn small{color:var(--muted)}
.ds-hn em{font-style:normal;font-size:11px;font-weight:900;color:#0F6E54}
.ds-hn button{font:inherit;font-size:11.5px;font-weight:800;border-radius:9px;padding:5px 10px;border:0;background:#26292F;color:#fff;cursor:pointer;white-space:nowrap}
.ds-hint{font-size:12.5px;background:#FBF7EA;border:1px solid #EFE0B0;color:#7A5B12;border-radius:10px;padding:8px 10px;line-height:1.8;margin-top:10px}
.ds-cls{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:8px}
.ds-cl{font:inherit;text-align:start;border-radius:14px;padding:10px;border:1px solid var(--border);font-size:11.5px;background:#fff;color:var(--navy);cursor:pointer;display:block}
.ds-cl b{font-size:14px;display:block}
.ds-cl .sc{font-size:20px;font-weight:900;font-variant-numeric:tabular-nums}
.ds-cl .bar{display:block;height:6px;border-radius:4px;background:#EEF1F5;overflow:hidden;margin:6px 0}
.ds-cl .bar i{display:block;height:100%}
.ds-cl small{color:var(--muted);display:block}
.ds-cl.w{border-color:#F3C9A9;background:#FFF9F4}.ds-cl.b{border-color:#f2b5ab;background:#FFF5F3}
.ds-cl.on{box-shadow:0 0 0 3px rgba(38,41,47,.25);border-color:#26292F}
.ds-cd{margin-top:12px;border:1px solid var(--border);border-radius:14px;padding:12px;background:#FAFBFC}
.ds-cl-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:6px}
.ds-cl-list .r{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:4px 8px;align-items:center;background:#fff;border:1px solid var(--border);border-radius:10px;padding:6px 8px;font-size:12.5px}
.ds-cl-list .sc{grid-row:1/3;font-weight:900;font-size:15px;text-align:center;font-variant-numeric:tabular-nums}
.ds-cl-list small{grid-column:2;color:var(--muted);font-size:11px}
.ds-cl-list .bt{grid-row:1/3;grid-column:3;display:flex;gap:4px}
.ds-cl-list button{font:inherit;border:1px solid var(--border);background:#fff;border-radius:8px;padding:3px 7px;cursor:pointer}
.ds-g3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:16px;align-items:start}
.ds-g3>*{min-width:0;margin:0}
.ds-lad{display:flex;flex-direction:column;gap:8px}
.ds-st{border-radius:14px;padding:10px 12px;border:1px solid var(--border)}
.ds-st h5{margin:0 0 6px;font-size:13px;display:flex;justify-content:space-between;gap:8px}
.ds-st h5 small{color:var(--muted);font-weight:700;font-size:11.5px}
.ds-st .who{display:flex;flex-wrap:wrap;gap:4px}
.ds-st .who em{font-style:normal;font-size:11.5px;font-weight:700;background:#F4F5F7;border-radius:999px;padding:2px 9px}
.ds-st .none{color:#94a3b8;font-size:12px}
.ds-st.s10{border-color:#f2b5ab;background:#FFF7F5}.ds-st.s5{border-color:#F3C9A9;background:#FFFAF5}
.ds-row{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}
.ds-pr{display:flex;flex-direction:column;gap:8px;font-size:12.5px}
.ds-pr>div{display:grid;grid-template-columns:42px minmax(0,1fr);gap:8px;align-items:center;border-bottom:1px dashed var(--border);padding-bottom:7px}
.ds-pr i{font-style:normal;font-size:11px;font-weight:900;color:var(--muted);text-align:center;line-height:1.2}
.ds-pr i b{display:block;font-size:16px;color:#26292F}
.ds-pr small{display:block;color:var(--muted);font-size:11px}
.ds-fm{display:flex;flex-direction:column;gap:6px}
.ds-fm button{font:inherit;font-size:12.5px;font-weight:800;text-align:start;border:1px solid var(--border);border-radius:10px;padding:8px 12px;background:#fff;color:var(--navy);cursor:pointer}
.ds-launch{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.ds-launch b{font-size:15px;display:block}.ds-launch small{color:var(--muted);font-size:12px}
/* ورقة الرصد والتكريم */
.ds-sheet{width:min(820px,95vw);padding:0;overflow:auto}
.ds-sh-h{background:linear-gradient(135deg,#1E2025,#3A3E46);color:#fff;padding:16px 20px;display:flex;justify-content:space-between;align-items:center;gap:10px;position:sticky;top:0;z-index:2}
.ds-sh-h.gold{background:linear-gradient(135deg,#7A5B12,#B88A22)}
.ds-sh-h h2{margin:0;font-size:19px}.ds-sh-h small{opacity:.8;font-size:12px}
.ds-sh-h button{width:34px;height:34px;border-radius:50%;border:0;background:rgba(255,255,255,.14);color:#fff;font:inherit;cursor:pointer}
.ds-sb{padding:14px 20px}
.ds-stu{display:grid;grid-template-columns:44px minmax(0,1fr) auto auto;gap:10px;align-items:center;border:1.5px solid var(--border);border-radius:14px;padding:8px 12px}
.ds-stu .av{width:44px;height:44px;border-radius:50%;background:#2F5B9F;color:#fff;display:grid;place-items:center;font-weight:900;font-size:18px}
.ds-stu .av.gold{background:#D4A73A;color:#1E2025}
.ds-stu small{display:block;color:var(--muted);font-size:11.5px}
.ds-stu .scr{text-align:center;font-weight:900;font-size:20px;font-variant-numeric:tabular-nums}
.ds-stu .scr small{font-size:10.5px}
.ds-stu .x{border:0;background:#F4F5F7;border-radius:50%;width:28px;height:28px;cursor:pointer;color:#64748b}
.ds-deg{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}
.ds-deg button{font:inherit;border-radius:12px;padding:8px 6px;text-align:center;font-size:12px;font-weight:900;border:1.5px solid var(--border);background:#fff;color:var(--navy);cursor:pointer}
.ds-deg button small{display:block;font-size:10.5px;font-weight:700;color:var(--muted)}
.ds-deg button.on{border-color:#E0A100;background:#FFF8E1;box-shadow:0 0 0 3px rgba(224,161,0,.15)}
.ds-deg button.d4.on,.ds-deg button.d5.on{border-color:#D64532;background:#FFF5F3;box-shadow:0 0 0 3px rgba(214,69,50,.15)}
.ds-prob{display:flex;flex-wrap:wrap;gap:6px}
.ds-prob button{font:inherit;font-size:12.5px;font-weight:700;padding:6px 12px;border-radius:14px;border:1.5px solid var(--border);background:#fff;color:var(--navy);cursor:pointer;text-align:start;line-height:1.6}
.ds-prob button.on{background:#26292F;color:#fff;border-color:#26292F}
.ds-prob button.chg{border-style:dashed;color:var(--muted)}
.ds-prob button small{color:#0F6E54;font-weight:900}.ds-prob button.on small{color:#9fe3c8}
.ds-rep{display:flex;gap:10px;align-items:center;background:#FFF5F3;border:1px solid #f2b5ab;border-radius:12px;padding:10px 12px;margin-top:12px;font-size:12.5px}
.ds-rep.first{background:#F8FAFC;border-color:var(--border)}
.ds-rep b.x{font-size:22px;color:#D64532}.ds-rep.first b.x{color:#64748b}
.ds-rep .hist{display:flex;gap:6px;flex-wrap:wrap;margin-top:4px}
.ds-rep .hist em{font-style:normal;font-size:11px;background:#fff;border:1px solid #f2b5ab;border-radius:999px;padding:1px 8px}
.ds-proc{border:1px solid var(--border);border-radius:14px;padding:10px 12px;margin-top:10px}
.ds-proc h5{margin:0 0 6px;font-size:13px}
.ds-proc label{display:flex;gap:8px;align-items:flex-start;font-size:12.5px;margin:6px 0;cursor:pointer;line-height:1.7}
.ds-proc input{margin-top:4px;accent-color:#26292F}
.ds-proc .warn{margin-top:8px;color:#B23A2B;font-weight:800;font-size:12.5px}
.ds-then{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.ds-then button{font:inherit;text-align:start;border:1.5px solid var(--border);border-radius:12px;padding:8px 10px;font-size:12px;font-weight:800;display:flex;gap:8px;align-items:center;background:#fff;color:var(--navy);cursor:pointer}
.ds-then button.on{border-color:#2563A8;background:#EEF4FC;color:#1d4f86}
.ds-then button:disabled{opacity:.5;cursor:not-allowed}
.ds-then small{display:block;font-weight:700;color:var(--muted);font-size:10.5px;line-height:1.5}
.ds-foot{display:flex;gap:8px;justify-content:flex-end;padding:12px 20px;border-top:1px solid var(--border);align-items:center;position:sticky;bottom:0;background:#fff;flex-wrap:wrap}
.ds-foot small{margin-inline-end:auto;color:var(--muted);font-size:12px}
.btn.ds-go{background:#26292F;border-color:#26292F}
.btn.ds-go.gold{background:#B88A22;border-color:#B88A22}
@media (max-width:1100px){.ds-hero{grid-template-columns:minmax(0,1fr) 260px}.ds-acts{grid-column:1/-1;flex-direction:row;justify-content:flex-start}}
@media (max-width:1000px){.ds-g2,.ds-g3{grid-template-columns:1fr}}
@media (max-width:760px){
  .ds-hero{grid-template-columns:1fr;padding:16px}
  .ds-hero h1{font-size:20px}
  .ds-kp div{flex:1 1 calc(50% - 10px);min-width:0}
  .ds-scale{max-width:300px;width:100%;margin:0 auto 14px}
  .ds-acts{position:fixed;bottom:16px;left:16px;z-index:50;display:block}
  .ds-cap{width:66px;height:66px;font-size:0;background:#26292F;color:#fff;box-shadow:0 10px 25px rgba(0,0,0,.35),0 0 0 6px rgba(212,167,58,.35)}
  .ds-cap em{font-size:26px}.ds-cap small,.ds-cap2{display:none}
  .ds-qi{grid-template-columns:40px minmax(0,1fr)}
  .ds-qi .bt{grid-column:1/-1}.ds-qi .bt button{flex:1}
  .ds-cls{grid-template-columns:repeat(3,minmax(0,1fr))}
  .ds-sheet{width:100%}
  .ds-sb{padding:12px 14px}
  .ds-deg{grid-template-columns:repeat(3,minmax(0,1fr))}
  .ds-then{grid-template-columns:1fr}
  .ds-stu{grid-template-columns:40px minmax(0,1fr) auto}
  .ds-stu .x{display:none}
  .ds-foot{padding:10px 14px}
}

/* ===== الموجه الصحي: سجل الزيارات والتقرير ===== */
.hl-chips{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.hl-chips button{font:inherit;font-size:12px;font-weight:800;padding:5px 11px;border-radius:999px;border:1.5px solid var(--border);background:#fff;color:var(--navy);cursor:pointer}
.hl-chips button.on{background:#0E5E73;border-color:#0E5E73;color:#fff}
.hl-chips.cx{margin:8px 0 4px}.hl-chips.cx button{font-size:11.5px;padding:3px 10px}
.hl-bar{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.hl-bar input{flex:1 1 220px;min-width:0}.hl-bar select{width:auto;flex:0 0 auto}
.hl-sum{font-size:12px;color:var(--muted);font-weight:700;margin:8px 0}
.hl-day{margin-top:12px}
.hl-day h4{margin:0 0 8px;font-size:13.5px;color:#0E5E73;border-bottom:1px dashed var(--border);padding-bottom:4px}
.hl-day h4 small{color:var(--muted);font-weight:700;font-size:11.5px}
.hl-day .hc-tl{display:flex;flex-direction:column;gap:6px}
.hl-act{display:block;margin-top:3px}
.hl-end{display:flex;gap:6px;align-items:center}
.hl-x{border:0;background:none;color:#cbd5e1;cursor:pointer;font:inherit;padding:2px 4px}.hl-x:hover{color:#D64532}
.hl-kp{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px}
.hl-kp div{border:1px solid var(--border);border-radius:14px;padding:10px 12px;background:#F8FBFB}
.hl-kp b{display:block;font-size:22px;font-weight:900;color:#0E5E73;font-variant-numeric:tabular-nums}
.hl-kp span{font-size:11.5px;color:var(--muted);font-weight:700}
.hl-kp .g b{color:#0F6E54}.hl-kp .y b{color:#8a6400}.hl-kp .r b{color:#B23A2B}.hl-kp .st{background:#fff}
.hl-kp.sm b{font-size:18px}
.hl-g3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:16px;align-items:start}
.hl-g2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:16px;margin:16px 0;align-items:start}
.hl-g3>*,.hl-g2>*{min-width:0;margin:0}
.hl-fq{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:4px 10px;align-items:center;border:1px solid var(--border);border-radius:12px;padding:7px 10px;margin-bottom:6px;font-size:12.5px}
.hl-fq small{grid-column:1;color:var(--muted);font-size:11px}
.hl-fq em{grid-row:1/3;grid-column:2;font-style:normal;font-weight:900;font-size:18px;color:#B23A2B}
.hl-fq button{grid-row:1/3;grid-column:3;font:inherit;font-size:11.5px;font-weight:800;border:1px solid var(--border);background:#fff;border-radius:9px;padding:4px 9px;cursor:pointer}
@media (max-width:1000px){.hl-g3,.hl-g2{grid-template-columns:1fr}}
@media (max-width:760px){.hl-day .hc-v{grid-template-columns:42px minmax(0,1fr) auto}.hl-day .hc-v .av{display:none}}

/* ===== سجل المخالفات المشترك + إحالات الموجه + الخطابات ===== */
.bh-g{border:1px solid var(--border);border-radius:14px;margin-top:10px;overflow:hidden}
.bh-h{display:grid;grid-template-columns:36px minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:8px 12px;background:#F8FAFC}
.bh-h .av{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#26292F;color:#fff;font-weight:900}
.bh-h b{font-size:14px;display:block}.bh-h small{color:var(--muted);font-size:11.5px}
.bh-h .sc{font-weight:900;font-size:18px;text-align:center;line-height:1.1;font-variant-numeric:tabular-nums}.bh-h .sc small{display:block;font-size:10px}
.bh-h button,.bh-r .bt button{font:inherit;border:1px solid var(--border);background:#fff;border-radius:8px;padding:3px 7px;cursor:pointer}
.bh-r{display:grid;grid-template-columns:auto 34px minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:8px 12px;border-top:1px solid #EEF1F5;font-size:12.5px}
.bh-r .dg{color:#fff;font-weight:900;font-size:11px;border-radius:8px;padding:3px 0;text-align:center}
.bh-r b{display:block;font-size:13px}.bh-r small{color:var(--muted);font-size:11px;line-height:1.6;display:block}
.bh-r .dt{font-size:11.5px;color:var(--muted);text-align:center;white-space:nowrap}.bh-r .dt em{display:block;font-style:normal;color:#D64532;font-weight:900}
.bh-r .bt{display:flex;gap:3px}
.ri-c{border:1px solid var(--border);border-radius:14px;padding:12px;margin-bottom:10px}
.ri-c.urg{border-color:#f2b5ab;background:#FFF9F8}
.ri-h{display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;align-items:center}
.ri-h .av{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#1E3A34;color:#fff;font-weight:900}
.ri-h b{font-size:14.5px}.ri-h small{display:block;color:var(--muted);font-size:11.5px}
.ri-late{font-size:10.5px;font-weight:900;color:#B4561B;background:#FDF1E7;border-radius:6px;padding:1px 7px}
.ri-d{margin:8px 0 0;font-size:13px;line-height:1.8}
.ri-p{margin-top:8px;font-size:12px;background:#F8FAFC;border-radius:10px;padding:8px 10px;line-height:1.8}
.ri-b{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}
.ri-ret{margin-top:10px}
.ri-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) auto;gap:12px;align-items:center;border-top:1px solid #EEF1F5;padding:10px 2px;font-size:12.5px}
.ri-row b{font-size:13.5px}.ri-row small{display:block;color:var(--muted);font-size:11.5px}.ri-row small.n{color:#0F6E54}
.lt-g{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}
.lt-g button{font:inherit;text-align:start;border:1.5px solid var(--border);border-radius:14px;padding:10px;background:#fff;color:var(--navy);cursor:pointer;display:grid;grid-template-columns:30px minmax(0,1fr);gap:2px 8px;align-items:center}
.lt-g em{grid-row:1/3;font-style:normal;font-size:24px}.lt-g b{font-size:13px}.lt-g small{color:var(--muted);font-size:11px}
.lt-g button.on{border-color:#1E3A34;background:#EEF4F0;box-shadow:0 0 0 3px rgba(30,58,52,.12)}
.lt-w{margin-top:12px;border-top:1px dashed var(--border);padding-top:12px}
.lt-pv{margin-top:10px;border:1px solid #D5E5DB;background:#FBFDFC;border-radius:14px;padding:12px 16px}
.lt-pv small{color:var(--muted);font-size:11px}.lt-pv h4{margin:2px 0 6px;font-size:15px;text-align:center}.lt-pv p{margin:0;font-size:13.5px;line-height:2.2}
.lt-rc{margin-top:12px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}.lt-rc small{color:var(--muted)}
.lt-rc span{font-size:11.5px;background:#F4F5F7;border-radius:999px;padding:2px 10px}
/* سجل الخطابات: رقم كل خطاب وحالته (أُرسل / فُتح / اطلع ولي الأمر / ملغى) */
.lt-hj{display:block;margin-top:4px;color:var(--muted);font-size:11.5px;font-weight:700}
.lt-send{display:flex;gap:8px;align-items:flex-start;margin-top:10px;font-size:12.5px;font-weight:700;color:var(--navy);background:#F2F8F5;border-radius:12px;padding:8px 12px;cursor:pointer}
.lt-send input{margin-top:3px;accent-color:#0F6E54}
.lt-log{margin-top:14px;border-top:1px dashed var(--border);padding-top:12px}
.lt-lh{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between;margin-bottom:8px}.lt-lh b{font-size:14px}
.lt-bulk{margin-bottom:8px}
.lt-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid var(--border);border-radius:12px;padding:8px 10px;margin-bottom:6px;background:#fff}
.lt-row .no{min-width:40px;text-align:center;font-weight:900;font-size:12.5px;background:#EEF2F6;border-radius:8px;padding:4px 6px;font-variant-numeric:tabular-nums}
.lt-row b{display:block;font-size:13px}.lt-row small{display:block;color:var(--muted);font-size:11.5px}
.lt-row .st{display:inline-block;margin-top:3px;font-size:11.5px;font-weight:800;border-radius:999px;padding:1px 9px;background:#F4F5F7;color:#475569}
.lt-row.ack .st{background:#E6F6EE;color:#0F5A44}.lt-row.open .st{background:#E8F1FB;color:#1D4F8A}.lt-row.sent .st{background:#FFF6E0;color:#7A5200}
.lt-row.void{opacity:.65}.lt-row.void b{text-decoration:line-through}
.lt-row .bt{display:flex;gap:4px}.lt-row .bt button{font:inherit;font-size:12px;font-weight:800;border:1px solid var(--border);background:#fff;border-radius:9px;padding:4px 8px;cursor:pointer;color:var(--navy)}
@media (max-width:560px){ .lt-row{grid-template-columns:auto minmax(0,1fr)} .lt-row .bt{grid-column:1/-1;justify-content:flex-end} }
.bp-g{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 14px;margin-top:10px}
.bp-g .sh{grid-column:auto}
@media (max-width:760px){.bp-g{grid-template-columns:1fr}.ri-row{grid-template-columns:1fr}.bh-r{grid-template-columns:auto 30px minmax(0,1fr)}.bh-r .dt{grid-column:3;text-align:start}.bh-r .bt{grid-column:1/-1;justify-content:flex-end}.bh-h{grid-template-columns:36px minmax(0,1fr) auto}.bh-h button{display:none}}

/* ===== شؤون الطلاب: التبويبات الداخلية ===== */
.mr-t{font-size:11.5px;font-weight:700;background:#FBF7EA;border:1px solid #EFE0B0;color:#7A5B12;border-radius:999px;padding:3px 10px}
.bh-h.mr .av{background:#D4A73A;color:#1E2025}
.bh-r.mr{grid-template-columns:40px minmax(0,1fr) auto auto}
.at-t{display:flex;flex-direction:column;gap:10px;margin-top:10px}
.ds-st.lo{background:#FAFBFC}
.at-l{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:6px}
.at-r{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto auto;gap:2px 8px;align-items:center;background:#fff;border:1px solid var(--border);border-radius:10px;padding:6px 10px;font-size:12.5px}
.at-r small{grid-column:1;color:var(--muted);font-size:11px}
.at-r em{grid-row:1/3;grid-column:2;font-style:normal;font-weight:900;font-size:17px;color:#B23A2B}
.at-r .sc{grid-row:1/3;grid-column:3;font-weight:900;font-size:12px;background:#F4F5F7;border-radius:8px;padding:2px 6px}
.at-r button{grid-row:1/3;font:inherit;border:1px solid var(--border);background:#fff;border-radius:8px;padding:3px 7px;cursor:pointer}
.lt-g button.on.ds{border-color:#26292F;background:#F4F5F7;box-shadow:0 0 0 3px rgba(38,41,47,.12)}
.lt-pv .formbox{background:#fff}
.sp-g{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}
.sp-c{border:1px solid var(--border);border-radius:16px;overflow:hidden;background:#fff;display:flex;flex-direction:column}
.sp-c .im{height:110px;background:#F4F5F7 center/cover}
.sp-c .im.e{display:grid;place-items:center;font-size:38px;background:linear-gradient(135deg,#F4F5F7,#FBF7EA)}
.sp-c .bd{padding:10px 12px;display:flex;flex-direction:column;gap:3px;flex:1}
.sp-c .ty{align-self:flex-start;font-size:10.5px;font-weight:900;background:#26292F;color:#fff;border-radius:6px;padding:1px 8px}
.sp-c b{font-size:14px}.sp-c small{color:var(--muted);font-size:11.5px}.sp-c p{margin:4px 0 0;font-size:12.5px;line-height:1.7;color:#334155}
.sp-c .bt{display:flex;gap:6px;margin-top:auto;padding-top:8px}
.sp-c .bt button,.ri-row .bt{font:inherit}
.sp-c .bt button{font-size:12px;font-weight:800;border:1px solid var(--border);background:#fff;border-radius:9px;padding:4px 10px;cursor:pointer}
.ri-row .bt{display:flex;gap:4px}
@media (max-width:760px){.at-l{grid-template-columns:1fr}}

/* ===== شاهد الدرس + سجل خدمة المستفيد ===== */
.le-fw{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:16px;align-items:start}
.le-fw>*{min-width:0;margin:0}
.le-side{position:sticky;top:12px;background:#fff;border:1px solid var(--border);border-radius:18px;padding:14px;font-size:12.5px}
.le-side h4{margin:0 0 10px;font-size:14px}.le-side h5{margin:12px 0 6px;font-size:12.5px;color:#0F6E54}
.le-side .r{display:flex;justify-content:space-between;gap:8px;border-bottom:1px dashed var(--border);padding:6px 0}.le-side .r span{color:var(--muted)}.le-side .r b{text-align:left}
.le-sc{display:flex;flex-direction:column;gap:4px}.le-sc span{font-size:11.5px;font-weight:700;background:#F2FBF7;color:#0F6E54;border-radius:8px;padding:3px 8px}
.le-quick{display:flex;flex-wrap:wrap;gap:6px;align-items:center;background:#F2FBF7;border:1px solid #b9e3d2;border-radius:12px;padding:8px 10px;margin-bottom:12px}
.le-quick small{color:#0F6E54;font-weight:800}
.le-quick button{font:inherit;font-size:12px;font-weight:800;border:1.5px solid #b9e3d2;background:#fff;color:#0F6E54;border-radius:999px;padding:4px 11px;cursor:pointer}
.le-quick button.on{background:#0F6E54;color:#fff;border-color:#0F6E54}
.bn-l{display:flex;flex-direction:column;gap:6px}
.bn-r{display:grid;grid-template-columns:48px 34px minmax(0,1fr) auto;gap:10px;align-items:center;padding:8px 12px;border:1px solid var(--border);border-radius:13px;background:#fff}
.bn-r .t{font-size:12px;font-weight:800;color:var(--muted);font-variant-numeric:tabular-nums}
.bn-r .av{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;color:#fff;font-weight:900}
.bn-r b{font-size:13.5px;display:block}.bn-r small{color:var(--muted);font-size:11.5px}
.bn-r .end{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.bn-out{font:inherit;font-size:12px;font-weight:800;border:1px solid var(--border);background:#fff;border-radius:9px;padding:4px 10px;cursor:pointer}
@media (max-width:1000px){.le-fw{grid-template-columns:1fr}.le-side{position:static}}
@media (max-width:760px){.bn-r{grid-template-columns:44px minmax(0,1fr)}.bn-r .av{display:none}.bn-r .end{grid-column:1/-1}}

/* ===== وكيل الشؤون التعليمية ===== */
.de-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;color:#fff;border-radius:20px;padding:20px 24px;margin-bottom:14px;background:linear-gradient(125deg,#14304F,#1d4f86 60%,#2563A8);position:relative;overflow:hidden}
.de-hero:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0 30px,rgba(255,255,255,.05) 30px 31px);pointer-events:none}
.de-hero>*{position:relative}.de-hero h1{margin:0;font-size:24px;font-weight:900}.de-hero p{margin:4px 0 10px;font-size:13px;opacity:.88}
.de-prog{height:8px;border-radius:6px;background:rgba(255,255,255,.18);overflow:hidden;margin-bottom:12px;max-width:520px}.de-prog i{display:block;height:100%;background:#7fe0b8;border-radius:6px}
.de-now{display:flex;flex-wrap:wrap;gap:8px}
.de-now button{font:inherit;text-align:start;border:1.5px solid #9FC4E8;background:#EEF4FC;color:#1d4f86;border-radius:12px;padding:7px 12px;cursor:pointer}
.de-now b{display:block;font-size:13px}.de-now small{font-size:11px}
.de-tg{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:8px}
.de-t{display:grid;grid-template-columns:34px minmax(0,1fr) auto auto;gap:8px;align-items:center;border:1px solid var(--border);border-radius:12px;padding:8px 10px;font-size:12.5px}
.de-t.z{border-style:dashed;background:#FAFBFC}
.de-t .av{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#EEF4FC;color:#1d4f86;font-weight:900}
.de-t b{display:block;font-size:13px}.de-t small{display:block;color:var(--muted);font-size:11px}
.de-t em{font-style:normal;font-weight:900;font-size:17px;color:#1d4f86}
.de-t button{font:inherit;font-size:11.5px;font-weight:800;border:0;background:#1d4f86;color:#fff;border-radius:9px;padding:5px 9px;cursor:pointer;white-space:nowrap}
.rt{display:inline-block;font-size:10.5px;font-weight:900;border-radius:6px;padding:1px 8px;margin-top:3px;white-space:nowrap}
.de-v{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid var(--border);border-radius:13px;padding:8px 12px;margin-top:8px;font-size:12.5px}
.de-v .dt{text-align:center;font-size:11px;color:var(--muted);font-weight:800;line-height:1.2}.de-v .dt b{display:block;font-size:17px;color:#1d4f86}
.de-v b{font-size:13.5px}.de-v small{display:block;color:var(--muted);font-size:11.5px}.de-v p{margin:3px 0 0;font-size:12px;color:#334155}
.de-v .end{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.de-v .end>button{font:inherit;border:1px solid var(--border);background:#fff;border-radius:8px;padding:3px 7px;cursor:pointer}
@media (max-width:760px){.de-hero{grid-template-columns:1fr;padding:16px}.de-hero h1{font-size:20px}.de-hero .ds-cap{position:fixed;bottom:16px;left:16px;width:66px;height:66px;font-size:0;z-index:50;background:#1d4f86;color:#fff}.de-hero .ds-cap em{font-size:26px}.de-hero .ds-cap small{display:none}.de-v{grid-template-columns:40px minmax(0,1fr)}.de-v .end{grid-column:1/-1}}

/* ===== وكيل الشؤون المدرسية: البلاغات ===== */
.fx-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;color:#fff;border-radius:20px;padding:20px 24px;margin-bottom:14px;background:linear-gradient(125deg,#3a2a06,#7A5B12 55%,#B88A22);position:relative;overflow:hidden}
.fx-hero:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(135deg,transparent 0 22px,rgba(0,0,0,.08) 22px 44px);pointer-events:none}
.fx-hero>*{position:relative}.fx-hero h1{margin:0;font-size:24px;font-weight:900}.fx-hero p{margin:4px 0 12px;font-size:13px;opacity:.9}
.fx-hero .ds-kp div.hot{background:#fff;color:#7A5B12;border-color:#fff}
.btn.fx-go{background:#7A5B12;border-color:#7A5B12}
.fx-k{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}
.fx-k button{font:inherit;font-size:12px;font-weight:800;border:1.5px solid var(--border);background:#fff;border-radius:12px;padding:8px 4px;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:2px;color:var(--navy)}
.fx-k em{font-style:normal;font-size:20px}.fx-k button.on{border-color:#B88A22;background:#FBF7EA;box-shadow:0 0 0 3px rgba(184,138,34,.15)}
.fx-row{display:flex;gap:10px;align-items:stretch;margin-top:10px;flex-wrap:wrap}
.fx-ph{display:flex;align-items:center;gap:8px;border:1.5px dashed #cbd5e1;border-radius:12px;padding:8px 14px;font-size:13px;font-weight:800;cursor:pointer;background:#F8FAFC}
.fx-ph img{width:40px;height:40px;object-fit:cover;border-radius:8px}
.fx-c{border:1px solid var(--border);background:#fff;border-radius:14px;padding:10px 11px;margin-bottom:8px;font-size:12px;display:flex;flex-direction:column;gap:3px}
.fx-c.urg{border-color:#f2b5ab;box-shadow:inset -4px 0 0 #D64532}
.fx-c .im{height:90px;border-radius:10px;background:#F4F5F7 center/cover;margin-bottom:4px;cursor:pointer}
.fx-c b{font-size:13.5px}.fx-c small{color:var(--muted);font-size:11px}.fx-c small.by{color:#1d4f86}.fx-c small.ok{color:#0F6E54}.fx-c p{margin:2px 0 0;font-size:12px;color:#334155}
.fx-c .bt{display:flex;gap:4px;margin-top:6px;flex-wrap:wrap}
.fx-c .bt button{font:inherit;font-size:11.5px;font-weight:800;border:1px solid var(--border);background:#fff;border-radius:8px;padding:3px 8px;cursor:pointer}
.fx-c .bt button.p{background:#7A5B12;border-color:#7A5B12;color:#fff}.fx-c .bt button.g{background:#0F6E54;border-color:#0F6E54;color:#fff}
.fx-mr{display:flex;justify-content:space-between;align-items:center;gap:10px;border-top:1px solid #EEF1F5;padding:8px 0;font-size:12.5px}
.fx-mr b{font-size:13px}.fx-mr small{display:block;color:var(--muted);font-size:11px}
.fx-mr em{font-style:normal;font-size:11.5px;font-weight:800;border-radius:999px;padding:3px 10px;white-space:nowrap}
.fx-mr em.y{background:#FFF8E1;color:#8a6400}.fx-mr em.b{background:#EEF4FC;color:#1d4f86}.fx-mr em.g{background:#F2FBF7;color:#0F6E54}
.fx-mine{margin-top:16px}
.sf-r{display:flex;justify-content:space-between;align-items:center;gap:10px;border-bottom:1px dashed var(--border);padding:8px 0;font-size:13px}
.sf-r .bt{display:flex;gap:6px}
.sf-r button{font:inherit;font-size:12px;font-weight:800;border:1.5px solid var(--border);background:#fff;border-radius:9px;padding:4px 10px;cursor:pointer;white-space:nowrap}
.sf-r button.on.g{background:#0F6E54;border-color:#0F6E54;color:#fff}.sf-r button.on.r{background:#D64532;border-color:#D64532;color:#fff}
@media (max-width:760px){.fx-hero{grid-template-columns:1fr;padding:16px}.fx-hero h1{font-size:20px}.fx-k{grid-template-columns:repeat(3,minmax(0,1fr))}.sf-r{flex-direction:column;align-items:stretch}.sf-r .bt button{flex:1}}

/* ===== غرفة الاجتماعات والتعاميم ===== */
.mr-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;color:#fff;border-radius:20px;padding:20px 24px;margin-bottom:14px;background:linear-gradient(125deg,#1b1f3b,#33407a 60%,#4a5aa8);position:relative;overflow:hidden}
.mr-hero>*{position:relative}.mr-hero h1{margin:0;font-size:24px;font-weight:900}.mr-hero p{margin:4px 0 12px;font-size:13px;opacity:.92}
.mr-c{display:grid;grid-template-columns:54px minmax(0,1fr) auto;gap:12px;align-items:start;border:1px solid var(--border);border-radius:14px;padding:10px 12px;margin-bottom:8px}
.mr-c.past{background:#FAFBFC}
.mr-c .dt{text-align:center;font-size:11px;color:var(--muted);font-weight:800;line-height:1.25;background:#EEF1FA;border-radius:10px;padding:6px 0}.mr-c .dt b{display:block;font-size:19px;color:#33407a}.mr-c .dt small{display:block;font-size:10.5px}
.mr-c .bd>b{font-size:14.5px}.mr-c .bd>small{display:block;color:var(--muted);font-size:12px;margin-top:2px}
.mr-w{display:inline-block;margin-top:5px;font-size:11px;font-weight:800;color:#8a6400;background:#FFF8E1;border-radius:6px;padding:1px 8px}
.mr-ok{display:inline-block;margin-top:5px;font-size:11.5px;font-weight:800;color:#0F6E54}
.mr-t{font:inherit;font-size:12px;font-weight:800;border:1px solid var(--border);background:#fff;border-radius:9px;padding:5px 10px;cursor:pointer;white-space:nowrap;color:var(--navy)}
.mr-x{margin-top:10px;border-top:1px dashed var(--border);padding-top:10px}
.mr-s{background:#F8FAFC;border-radius:10px;padding:8px 12px;margin-bottom:8px;font-size:13px}.mr-s p{margin:4px 0 0;white-space:pre-wrap;line-height:1.8}.mr-s.rec{background:#F2FBF7}
.mr-inv{display:flex;flex-wrap:wrap;gap:4px;margin:8px 0}.mr-inv span{font-size:11.5px;background:#EEF1FA;color:#33407a;border-radius:999px;padding:2px 9px;font-weight:700}.mr-inv a{color:#D64532;font-weight:900;text-decoration:none;margin-inline-start:4px}
.cr-c.new{border-color:#9FC4E8;box-shadow:inset -4px 0 0 #2563A8}
.cr-h{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.cr-h b{font-size:15px}.cr-h small{display:block;color:var(--muted);font-size:12px}
.cr-b{margin:10px 0 0;white-space:pre-wrap;line-height:1.9;font-size:13.5px}
.cr-img{max-width:100%;max-height:260px;border-radius:10px;border:1px solid var(--border);margin-top:10px;cursor:zoom-in}
.cr-ack{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;margin-top:10px;font-size:12px;font-weight:800;color:var(--muted)}
.cr-ack .bar{height:8px;border-radius:6px;background:#EEF1F5;overflow:hidden}.cr-ack .bar i{display:block;height:100%;background:#2563A8}
@media (max-width:760px){.mr-hero{grid-template-columns:1fr;padding:16px}.mr-hero h1{font-size:20px}.mr-hero .ds-cap{position:fixed;bottom:16px;left:16px;width:66px;height:66px;font-size:0;z-index:50;background:#33407a;color:#fff}.mr-hero .ds-cap em{font-size:26px}.mr-hero .ds-cap small{display:none}.mr-c{grid-template-columns:48px minmax(0,1fr)}.mr-t{grid-column:1/-1}.cr-ack{grid-template-columns:1fr}}

/* ===== الموظفون والمهام ===== */
.em-g{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:8px;margin-top:10px}
.em-c{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid var(--border);border-radius:14px;padding:9px 11px}
.em-c .av{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;color:#fff;font-weight:900}
.em-c b{display:block;font-size:13.5px}.em-c small{display:block;color:var(--muted);font-size:11.5px}
.em-f{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px;font-size:11px}.em-f a{color:#1d4f86;text-decoration:none;font-weight:700}
.em-f span{background:#F4F5F7;border-radius:999px;padding:1px 8px;font-weight:700}.em-f .ok{background:#F2FBF7;color:#0F6E54}.em-f .no{background:#FFF8E1;color:#8a6400}
.em-c .bt{display:flex;flex-direction:column;gap:3px}.em-c .bt button,.tk-c .bt button{font:inherit;border:1px solid var(--border);background:#fff;border-radius:8px;padding:2px 6px;cursor:pointer}
.tk-c{border:1px solid var(--border);background:#fff;border-radius:14px;padding:10px 11px;margin-bottom:8px;font-size:12px}
.tk-c.late{border-color:#f2b5ab;box-shadow:inset -4px 0 0 #D64532}
.tk-c b{display:block;font-size:13.5px}.tk-c small{display:block;color:var(--muted);font-size:11px;margin-top:2px}.tk-c p{margin:4px 0 0;font-size:11.5px;color:#334155}
.tk-p{height:6px;border-radius:4px;background:#EEF1F5;overflow:hidden;margin-top:6px}.tk-p i{display:block;height:100%;background:#1D9E75}
.tk-c .bt{display:flex;gap:4px;margin-top:6px}

/* ===== التقارير + الرسائل ===== */
.rp-c{font:inherit;text-align:start;display:grid;grid-template-columns:40px minmax(0,1fr);gap:4px 10px;align-items:center;border:1px solid var(--border);background:#fff;border-radius:14px;padding:10px 12px;cursor:pointer;color:var(--navy)}
.rp-c:hover{border-color:#9FC4E8}.rp-c.w{border-color:#F3C9A9}
.rp-c .av{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;color:#fff;font-weight:900}
.rp-c .nm b{display:block;font-size:13.5px}.rp-c .nm small{color:var(--muted);font-size:11.5px}
.rp-k{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin-top:6px}
.rp-k i{font-style:normal;text-align:center;font-size:10.5px;color:var(--muted);background:#F8FAFC;border-radius:8px;padding:3px 0}.rp-k i b{display:block;font-size:15px;color:var(--navy)}
.rp-k i.r b{color:#B23A2B}.rp-k i.g b{color:#0F6E54}
.sm-r{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid var(--border);border-radius:13px;padding:8px 12px;margin-top:8px;font-size:12.5px}
.sm-r.w{border-color:#F3C9A9}.sm-r.b{border-color:#f2b5ab}
.sm-r .dt{text-align:center;font-size:11px;color:var(--muted);font-weight:800;line-height:1.2}.sm-r .dt b{display:block;font-size:17px;color:#0F6E54}.sm-r .dt small{display:block;font-size:10px}
.sm-r b{font-size:13.5px}.sm-r small{display:block;color:var(--muted);font-size:11.5px}
.sm-r .end{display:flex;gap:6px;align-items:center}
.sm-d{grid-column:1/-1;border-top:1px dashed var(--border);padding-top:8px;overflow-x:auto}

/* ===== الرسائل: الإرسال ===== */
.sx-g button{font-size:12px}
.ctl.sx-sel{max-width:420px;width:100%;margin-bottom:6px}
.sx-ro{margin-top:10px;font-size:12.5px;color:var(--muted)}
.sx-w{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:16px;align-items:start;margin-top:12px}
.sx-n{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;font-size:12px;color:var(--muted);margin-top:4px}.sx-n .g{color:#0F6E54;font-weight:800}.sx-n .w{color:#B4561B;font-weight:800}
.sx-ph{background:#1E2025;border-radius:30px;padding:12px;box-shadow:0 10px 30px rgba(0,0,0,.18)}
.sx-ph .sc{background:#F2F2F7;border-radius:20px;min-height:220px;padding:14px 12px}
.sx-ph small{display:block;text-align:center;font-size:11px;color:#64748b;font-weight:800;margin-bottom:10px}
.sx-ph .bb{background:#E5E5EA;border-radius:16px 16px 16px 4px;padding:9px 12px;font-size:12.5px;line-height:1.7;color:#111;max-width:92%;margin-inline-end:auto;word-break:break-word}
.btn.sx-go{background:#0F6E54;border-color:#0F6E54}
@media (max-width:900px){.sx-w{grid-template-columns:1fr}.sx-ph{max-width:280px}}

/* سجل المخالفات في وضع العرض فقط (الموجه): بدون خانة تحديد ولا أزرار */
.bh-r.ro{grid-template-columns:40px minmax(0,1fr) auto}
@media (max-width:760px){.bh-r.ro{grid-template-columns:34px minmax(0,1fr)}.bh-r.ro .dt{grid-column:2;text-align:start}}
.tb-rg{font-variant-numeric:tabular-nums;white-space:nowrap}
/* المستخدمون — بطاقة لكل حساب بلون دوره (--h) */
.ua-hd{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;flex-wrap:wrap;margin-bottom:12px}
.ua-hd h2{margin:2px 0 0;font-size:24px;font-weight:900}
.ua-kp{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:12px}
.ua-k{display:grid;text-align:start;background:#fff;border:1px solid var(--border);border-radius:14px;padding:12px 14px;color:var(--navy);font:inherit}
button.ua-k{cursor:pointer}
.ua-k b{font-size:26px;font-weight:900;line-height:1.1;font-variant-numeric:tabular-nums}
.ua-k span{font-size:12.5px;font-weight:700}.ua-k small{font-size:10.5px;color:var(--muted)}
.ua-k.on b{color:var(--teal)}.ua-k.pending b{color:#B7791F}.ua-k.off b{color:var(--red)}
button.ua-k.sel{border-color:var(--navy);box-shadow:0 0 0 2px var(--navy) inset}
.ua-roles{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.ua-roles button{--h:var(--navy);display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border);background:#fff;border-radius:20px;padding:5px 12px;font-size:12.5px;font-weight:700;color:var(--navy)}
.ua-roles button i{width:8px;height:8px;border-radius:50%;background:var(--h)}
.ua-roles button b{font-variant-numeric:tabular-nums;color:var(--muted)}
.ua-roles button.on{background:var(--navy);border-color:var(--navy);color:#fff}.ua-roles button.on b{color:#cfd8e6}
.ua-roles button:focus-visible,.ua-rp button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.ua-q{margin:2px 0 12px;max-width:420px}
.ua-g{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:10px}
.ua-c{--h:#5D6D7E;display:grid;gap:10px;background:#fff;border:1px solid var(--border);border-radius:16px;padding:14px}
.ua-c[hidden]{display:none}
.ua-c.off{background:#FAFBFC}.ua-c.off .ua-av{filter:grayscale(1);opacity:.6}
.ua-top{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:10px;align-items:center}
.ua-av{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;font-weight:900;font-size:18px;color:#fff;background:var(--h)}
.ua-id{display:grid;min-width:0}.ua-id b{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ua-id span{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums;text-align:end;justify-self:start}
.ua-st{font-size:11px;font-weight:800;border-radius:20px;padding:3px 9px;white-space:nowrap;background:#E3F5EC;color:#11684d}
.ua-st.pending{background:#FBF1D0;color:#7a5f08}.ua-st.off{background:#FBEAE8;color:var(--red)}
.ua-role{display:flex;flex-wrap:wrap;gap:5px;align-items:center}
.ua-role span{font-size:12.5px;font-weight:800;color:var(--h)}
.ua-role em{font-style:normal;font-size:11px;font-weight:700;background:var(--bg);border-radius:6px;padding:2px 7px;color:var(--navy)}
.ua-act{display:flex;flex-wrap:wrap;gap:6px;border-top:1px dashed var(--border);padding-top:10px}
.ua-act .btn{padding:5px 10px;font-size:11.5px}
.ua-rp{display:flex;flex-wrap:wrap;gap:6px}
.ua-rp button{--h:var(--navy);border:1px solid var(--border);background:#fff;border-radius:10px;padding:6px 11px;font-size:12.5px;font-weight:700;color:var(--navy)}
.ua-rp button.on{background:var(--h);border-color:var(--h);color:#fff}
.ua-sw,.ua-pg{display:flex;flex-wrap:wrap;gap:6px}
.ua-sw label,.ua-pg label{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border);border-radius:10px;padding:6px 10px;font-size:12.5px;font-weight:700;cursor:pointer;background:#fff}
.ua-sw label.on,.ua-pg label.on{background:#E3F5EC;border-color:#9fd9c3;color:#11684d}
.ua-sw input,.ua-pg input{accent-color:var(--teal);margin:0}
.ua-note{font-size:11.5px;color:var(--muted);font-weight:600}
/* سجل الحركات */
.lg-kinds button i{width:8px;height:8px;border-radius:50%;background:var(--k,var(--muted))}
.lg-add{--k:var(--teal)}.lg-edit{--k:var(--blue)}.lg-del{--k:var(--red)}.lg-send{--k:var(--gold)}.lg-auth{--k:#9aa6b6}.lg-other{--k:#5D6D7E}
.lg-tl{display:grid;gap:14px}
.lg-day[hidden],.lg-i[hidden]{display:none}
.lg-dh{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:900;margin-bottom:6px;position:sticky;top:0;background:#fff;padding:4px 0;z-index:1}
.lg-dh span{font-size:11px;font-weight:800;color:var(--muted);background:var(--bg);border-radius:20px;padding:1px 8px}
.lg-i{display:grid;grid-template-columns:44px 12px minmax(0,1fr);gap:10px;align-items:start;padding:6px 0;position:relative}
.lg-i time{font-size:12px;font-weight:700;color:var(--muted);font-variant-numeric:tabular-nums;padding-top:2px;text-align:center}
.lg-i>i{width:10px;height:10px;border-radius:50%;background:var(--k);margin-top:6px;box-shadow:0 0 0 3px #fff;position:relative;z-index:1}
.lg-i::before{content:'';position:absolute;inset-inline-start:59px;top:0;bottom:0;width:2px;background:var(--border)}
.lg-i>div{display:grid;min-width:0}.lg-i b{font-size:13px;font-weight:700;overflow-wrap:anywhere}.lg-i span{font-size:11.5px;color:var(--muted)}
/* تقرير التفاعل */
.eg-l{display:grid;gap:2px}
.eg-r{--h:#5D6D7E;display:grid;grid-template-columns:26px minmax(0,190px) minmax(0,1fr) 40px;grid-template-areas:"n u b t" ". s s s";column-gap:12px;row-gap:2px;align-items:center;padding:8px 4px;border-bottom:1px solid var(--border)}
.eg-r:last-child{border-bottom:0}
.eg-r em{grid-area:n;font-style:normal;font-weight:900;color:var(--muted);text-align:center;font-variant-numeric:tabular-nums}
.eg-n{grid-area:u;display:grid;min-width:0}.eg-n b{font-size:13.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.eg-n span{font-size:11.5px;color:var(--h);font-weight:700}
.eg-b{grid-area:b;height:10px;background:var(--bg);border-radius:6px;overflow:hidden}.eg-b i{display:block;height:100%;background:var(--h);border-radius:6px}
.eg-r strong{grid-area:t;font-size:16px;font-weight:900;text-align:end;font-variant-numeric:tabular-nums}
.eg-s{grid-area:s;display:flex;flex-wrap:wrap;gap:4px}.eg-s span{font-size:11px;background:var(--bg);border-radius:6px;padding:1px 7px;color:var(--muted);font-weight:700}
.eg-in{display:flex;flex-wrap:wrap;gap:6px}
.eg-in span{--h:#5D6D7E;display:inline-flex;gap:6px;align-items:baseline;border:1px solid var(--border);border-radius:8px;padding:5px 10px;font-size:11.5px;color:var(--muted)}
.eg-in span::before{content:'';width:7px;height:7px;border-radius:50%;background:var(--h);align-self:center}
.eg-in b{font-size:12.5px;color:var(--navy)}
.eg-det summary{cursor:pointer;font-weight:800;font-size:14px}
.eg-det[open] summary{margin-bottom:12px}
/* الإعدادات: بيانات المدرسة + معاينة الترويسة */
.sx-sc{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:16px;align-items:start}
.sx-sc>.card{margin:0}
.sx-term{font-size:12.5px;color:var(--muted);margin-top:10px;line-height:1.8}.sx-term b{color:var(--navy)}
.sx-pg{position:relative;border:1px solid var(--border);border-radius:10px;background:#fff;padding:12px 16px 0;display:grid;gap:7px;box-shadow:0 6px 18px rgba(15,40,73,.06)}
.sx-pg img{width:72px;margin:0 auto 4px}
.sx-ln{height:7px;border-radius:4px;background:var(--bg);width:100%}.sx-ln.s{width:62%}
.sx-ft{font-size:9.5px;line-height:1.8;color:#334;margin-top:10px}
.sx-ft mark{background:#FBF1D0;color:var(--navy);font-weight:800;border-radius:3px;padding:0 2px}
.sx-bar{height:6px;margin:6px -16px 0;border-radius:0 0 10px 10px;background:linear-gradient(90deg,#3A81B7 0%,#11A5A7 50%,#08A878 100%)}
.sx-where{margin:14px 0 12px;padding:0 18px 0 0;font-size:12.5px;line-height:1.9;color:var(--muted)}.sx-where b{color:var(--navy)}
.sx-logo-in{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:12.5px;font-weight:700;border-top:1px dashed var(--border);padding-top:12px}
.sx-logo-in img{height:40px;border-radius:8px;border:1px solid var(--border)}.sx-logo-in input{font-size:12px;max-width:100%}
/* المظهر: معرض المناسبات بالبانر الحقيقي */
.th-g{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:10px}
.th-t{border:1px solid var(--border);border-radius:14px;overflow:hidden;background:#fff;display:grid}
.th-t.dim .th-art{filter:grayscale(.9);opacity:.5}
.th-t.sel{border-color:var(--teal);box-shadow:0 0 0 2px var(--teal)}
.th-art{position:relative;height:96px;overflow:hidden}
.th-art .occ-banner{margin:0;border-radius:0;min-height:96px;height:96px;padding:12px 14px}
.th-art .occ-title{font-size:24px}.th-art .occ-sub{font-size:10.5px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.th-art .occ-text{max-width:66%}
.th-boss{height:100%;display:grid;align-content:center;padding:12px 14px;background:linear-gradient(135deg,#0A1C35,#1B3A63);color:#F3DC9A}
.th-boss b{font-family:'Aref Ruqaa','Amiri',serif;font-size:22px}.th-boss span{font-size:11px;color:#cfd8e6}
.th-now{position:absolute;top:8px;inset-inline-end:8px;font-style:normal;font-size:10.5px;font-weight:800;background:var(--teal);color:#fff;border-radius:20px;padding:2px 9px}
.th-now.soon{background:#fff;color:var(--teal)}
.th-f{display:flex;align-items:center;gap:8px;padding:10px 12px}
.th-f>div{display:grid;flex:1;min-width:0}.th-f b{font-size:13px}.th-f small{font-size:11px;color:var(--muted)}
.th-f a{font-size:12px;font-weight:700;color:var(--blue)}
.th-pick{border:1px solid var(--border);background:#fff;border-radius:20px;padding:4px 12px;font-size:12px;font-weight:700;color:var(--navy)}
.th-pick.on{background:var(--teal);border-color:var(--teal);color:#fff}
.th-sw{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:700;cursor:pointer;color:var(--muted)}
.th-sw input{position:absolute;opacity:0;width:1px;height:1px}
.th-sw i{width:34px;height:20px;border-radius:20px;background:#cfd6e0;position:relative;transition:background .15s;flex:none}
.th-sw i::after{content:'';position:absolute;top:2px;inset-inline-start:2px;width:16px;height:16px;border-radius:50%;background:#fff;transition:inset-inline-start .15s}
.th-sw.on{color:var(--teal)}.th-sw.on i{background:var(--teal)}.th-sw.on i::after{inset-inline-start:16px}
.th-sw:focus-within i{outline:2px solid var(--gold);outline-offset:2px}
.th-sw.big{gap:12px;border:1px solid var(--border);border-radius:12px;padding:12px 14px;width:100%;color:var(--navy)}
.th-sw.big span{display:grid}.th-sw.big b{font-size:13.5px}.th-sw.big small{font-size:12px;color:var(--muted);font-weight:600}
.rf-map{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}
.rf-map div{display:grid;background:#E3F5EC;border-radius:10px;padding:8px 12px}
.rf-map span{font-size:11.5px;color:#3f7f69;font-weight:700}.rf-map b{font-size:13px;color:#11684d}
.rf-map .none{background:#FBF1D0}.rf-map .none span{color:#8a6d0b}.rf-map .none b{color:#7a5f08}
@media (max-width:1000px){.sx-sc{grid-template-columns:minmax(0,1fr)}}
@media (max-width:760px){
  .ua-kp{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ua-g{grid-template-columns:minmax(0,1fr)}
  .ua-hd h2{font-size:21px}
  .eg-r{grid-template-columns:22px minmax(0,1fr) 34px;grid-template-areas:"n u t" ". b b" ". s s"}
}
@media (max-width:760px){.th-art,.th-art .occ-banner{height:80px;min-height:80px}.th-art .occ-title{font-size:21px}}
/* أعمدة تتحول لعمود واحد على الجوال (بدل style مضمّن كان يغلب قاعدة الجوال) */
.hc-kb{grid-template-columns:repeat(var(--n,3),minmax(0,1fr))}
@media (max-width:760px){.hc-kb{grid-template-columns:minmax(0,1fr)}}
@media (min-width:1001px){.hl-g2.de-g2{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}}
/* خانات التذييل: فراغات على السطر نفسه */
.sx-f{font:inherit;font-size:10.5px;font-weight:700;color:var(--navy);background:#FBF6E6;border:0;border-bottom:1.5px dashed #C9A227;border-radius:3px 3px 0 0;padding:1px 4px;margin:1px 0;max-width:100%;min-width:0;field-sizing:content}
.sx-f:focus{outline:none;background:#FBF1D0;border-bottom-style:solid}
.sx-f::placeholder{color:#b49a5a;font-weight:600}
.sx-ft{line-height:2.1}
/* تقرير الطالب: البحث واختيار الفصل وبطاقات الطلاب */
.sf-hd h2{margin:2px 0 12px;font-size:24px;font-weight:900}
.sf-q{max-width:560px;position:relative}.sf-q .ctl{font-size:15px;padding:12px 14px;margin-top:0}
.sf-cls{margin-bottom:0}
.sf-g{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px}
.sf-c{display:grid;grid-template-columns:40px minmax(0,1fr) auto;grid-template-areas:"av nm sc" "rt rt rt" "ch ch ch";column-gap:10px;row-gap:8px;align-items:center;text-align:start;background:#fff;border:1px solid var(--border);border-radius:14px;padding:12px;font:inherit;color:var(--navy);cursor:pointer;transition:box-shadow .15s,transform .15s}
.sf-c:hover{box-shadow:0 8px 18px rgba(15,40,73,.1);transform:translateY(-1px)}
.sf-c:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.sf-c .av{grid-area:av;width:40px;height:40px;border-radius:12px;display:grid;place-items:center;color:#fff;font-weight:900;font-size:17px}
.sf-c .nm{grid-area:nm;display:grid;min-width:0}.sf-c .nm b{font-size:13.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sf-c .nm small{font-size:11.5px;color:var(--muted)}
.sf-c .sc{grid-area:sc;display:grid;justify-items:center;line-height:1.1}.sf-c .sc b{font-size:19px;font-weight:900;font-variant-numeric:tabular-nums}.sf-c .sc small{font-size:10px;color:var(--muted)}
.sf-c .sc.g b{color:var(--teal)}.sf-c .sc.a b{color:#B7791F}.sf-c .sc.r b{color:var(--red)}
.sf-c .rt{grid-area:rt;height:6px;background:var(--bg);border-radius:4px;overflow:hidden}.sf-c .rt i{display:block;height:100%;background:var(--teal);border-radius:4px}
.sf-c .rt i.a{background:var(--amber)}.sf-c .rt i.r{background:var(--red)}
.sf-c .ch{grid-area:ch;display:flex;flex-wrap:wrap;gap:4px}
.sf-c .ch em{font-style:normal;font-size:11px;font-weight:700;background:var(--bg);border-radius:6px;padding:2px 7px;color:var(--muted)}
.sf-c .ch em.r{background:#FBEAE8;color:var(--red)}.sf-c .ch em.a{background:#FBF1D0;color:#7a5f08}
@media (max-width:760px){.sf-g{grid-template-columns:minmax(0,1fr)}.sf-hd h2{font-size:21px}}
/* رصد الحصص: المعلم يختار من فصوله بس */
.pi-mine .pi-ml{font-weight:800;color:var(--navy);margin-inline-start:4px}
.pi-mine button{display:inline-grid;justify-items:center;font:inherit;font-size:13px;font-weight:800;border:1.5px solid var(--border);border-radius:10px;padding:6px 12px;background:#fff;color:var(--navy);line-height:1.25;cursor:pointer}
.pi-mine button small{font-size:10.5px;font-weight:700;color:#7a5f08}
.pi-mine button.sb{border-style:dashed;border-color:#C9A227;background:#FFFBEF}
.pi-mine button.on{background:var(--navy);border-color:var(--navy);border-style:solid;color:#fff}.pi-mine button.on small{color:#F3DC9A}
.pi-mine button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
/* الانتظار: شريط اليوم + لوحة الحصص + نموذج التسجيل + السجل */
.sb-bar{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;background:var(--navy);color:#fff;border-radius:16px;padding:16px 18px;margin-bottom:16px}
.sb-bar .tb-k{color:#cfd8e6}
.sb-d h2{margin:2px 0 8px;font-size:22px;font-weight:900}.sb-d h2 small{font-size:13px;font-weight:600;opacity:.8}
.sb-d .ctl{margin:0;max-width:190px;background:#fff}
.sb-kp{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;flex:1;max-width:680px}
.sb-kp div{background:rgba(255,255,255,.08);border-radius:12px;padding:8px 10px;display:grid;text-align:center}
.sb-kp b{font-size:22px;font-weight:900;font-variant-numeric:tabular-nums;line-height:1.2}.sb-kp span{font-size:11px;opacity:.85}
.sb-kp .g b{color:#7FE0BC}.sb-kp .r{background:rgba(214,69,50,.3)}.sb-kp .r b{color:#FFD2CB}
.sb-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:16px;align-items:start}
.sb-grid>.card{margin:0}
.sb-p{border-top:1px solid var(--border);padding:10px 0}
.sb-ph{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.sb-ph b{font-size:14px;font-weight:900}.sb-ph span{font-size:12px;color:var(--muted)}
.sb-ph em{margin-inline-start:auto;font-style:normal;font-size:11px;font-weight:800;background:var(--bg);border-radius:20px;padding:1px 9px;color:var(--muted)}
.sb-s{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) auto;gap:10px;align-items:center;border:1px solid var(--border);border-radius:12px;padding:9px 12px;margin-bottom:6px;background:#fff}
.sb-s.r{border-color:#F1C7C1;background:#FFF8F7}
.sb-c{display:grid;min-width:0}.sb-c b{font-size:14px;font-weight:900}.sb-c small{font-size:11.5px;color:var(--muted)}
.sb-pick{display:grid;gap:3px;min-width:0}.sb-pick .ctl{margin:0;padding:7px 10px;font-size:13px}
.sb-fair{font-size:10.5px;color:var(--muted);font-weight:600}
.sb-st{font-size:11px;font-weight:800;border-radius:20px;padding:3px 10px;white-space:nowrap}
.sb-st.g{background:#E3F5EC;color:#11684d}.sb-st.a{background:#FBF1D0;color:#7a5f08}.sb-st.r{background:#FBEAE8;color:var(--red)}
.sb-how{margin-top:10px;font-size:12.5px;color:var(--muted)}.sb-how summary{cursor:pointer;font-weight:800;color:var(--navy)}.sb-how p{margin:6px 0 0;line-height:1.9}
.sb-ty,.sb-ex{display:flex;flex-wrap:wrap;gap:6px}
.sb-ty button,.sb-ex button{border:1.5px solid var(--border);background:#fff;border-radius:10px;padding:7px 11px;font:inherit;font-size:12.5px;font-weight:800;color:var(--navy);display:inline-flex;align-items:center;gap:5px;cursor:pointer}
.sb-ty em{font-style:normal}
.sb-ty button.on,.sb-ex button.on{background:var(--navy);border-color:var(--navy);color:#fff}
.sb-ps{display:flex;flex-wrap:wrap;gap:6px}
.sb-ps>*{display:inline-grid;justify-items:start;border:1.5px solid var(--border);background:#fff;border-radius:10px;padding:6px 10px;font:inherit;font-size:11.5px;color:var(--muted);text-align:start;cursor:pointer}
.sb-ps>span{cursor:default}
.sb-ps b{font-size:13px;color:var(--navy)}
.sb-ps .on{border-color:var(--red);background:#FFF5F3}.sb-ps .on b{color:var(--red)}
.sb-warn{margin-top:12px;font-size:12.5px;font-weight:700;color:#7a5f08;background:#FBF1D0;border-radius:10px;padding:8px 12px}
.sb-ty button:focus-visible,.sb-ex button:focus-visible,.sb-ps button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.sb-day+.sb-day{margin-top:14px}
.sb-dh{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:8px}.sb-dh b{font-size:14px;font-weight:900}.sb-dh span{font-size:12px;color:var(--muted)}.sb-dh .btn{margin-inline-start:auto}
.sb-rs{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:8px}
.sb-r{border:1px solid var(--border);border-radius:12px;padding:10px 12px;background:#fff;display:grid;gap:8px}
.sb-rh{display:grid;grid-template-columns:28px minmax(0,1fr) auto auto;gap:8px;align-items:center}
.sb-rh .ic{font-size:18px;text-align:center}.sb-rh>div{display:grid;min-width:0}.sb-rh b{font-size:13.5px}.sb-rh b a{color:var(--navy)}.sb-rh small{font-size:11.5px;color:var(--muted)}
.sb-xc{font-size:10.5px;font-weight:800;border-radius:20px;padding:2px 8px}.sb-xc.g{background:#E3F5EC;color:#11684d}.sb-xc.r{background:#FBEAE8;color:var(--red)}
.sb-rh .bt{display:flex;gap:2px}.sb-rh .bt button{border:0;background:transparent;font-size:14px;padding:4px;cursor:pointer;border-radius:8px}.sb-rh .bt button:hover{background:var(--bg)}
.sb-rp{display:flex;flex-wrap:wrap;gap:5px}
.sb-rp span{display:inline-flex;gap:5px;align-items:baseline;font-size:11.5px;background:#F2FBF7;border-radius:8px;padding:3px 8px;color:#11684d}
.sb-rp span b{font-size:12px}.sb-rp span i{font-style:normal;font-weight:700}
.sb-rp span.n{background:#FBEAE8;color:var(--red)}
@media (max-width:1000px){.sb-grid{grid-template-columns:minmax(0,1fr)}.sb-form{order:-1}}
@media (max-width:760px){
  .sb-kp{grid-template-columns:repeat(3,minmax(0,1fr));max-width:none}
  .sb-s{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"c st" "p p"}.sb-c{grid-area:c}.sb-pick{grid-area:p}.sb-st{grid-area:st}
  .sb-rs{grid-template-columns:minmax(0,1fr)}
}
/* جدول الانتظار الأسبوعي */
.rs-hd{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap}
.rs-hd>div:first-child{flex:1;min-width:240px}.rs-hd .tb-p{margin:0}
.rs-kp{display:flex;gap:8px}
.rs-kp div{background:var(--bg);border-radius:12px;padding:8px 14px;display:grid;text-align:center}
.rs-kp b{font-size:22px;font-weight:900;font-variant-numeric:tabular-nums;line-height:1.2}.rs-kp b small{font-size:12px;color:var(--muted);font-weight:700}.rs-kp span{font-size:11px;color:var(--muted)}
.rs-kp .r{background:#FBEAE8}.rs-kp .r b{color:var(--red)}
.rs-mw{overflow-x:auto}
.rs-map{display:grid;grid-template-columns:76px repeat(7,minmax(54px,1fr));gap:5px;min-width:520px}
.rs-mh{text-align:center;font-size:12px;font-weight:900;color:var(--muted)}
.rs-md{border:0;border-radius:10px;background:var(--bg);font:inherit;font-size:12.5px;font-weight:800;color:var(--navy);padding:8px 4px;cursor:pointer}
.rs-md.on{background:var(--navy);color:#fff}
.rs-mc{border:1.5px solid var(--border);border-radius:10px;background:#fff;font:inherit;font-size:12px;letter-spacing:2px;color:#1D9E75;padding:8px 2px;cursor:pointer;text-align:center}
.rs-mc.n0{color:#c3cad5}.rs-mc.n1{background:#F2FBF7}.rs-mc.n2{background:#E3F5EC}.rs-mc.n3{background:#CDEEDF}
.rs-mc.cur{border-color:var(--navy)}
.rs-mc.bad{border-color:var(--red);box-shadow:inset 0 0 0 1px var(--red)}
.rs-mc.off{background:repeating-linear-gradient(45deg,#f6f8fb 0 6px,#eef1f5 6px 12px);border-color:transparent;cursor:default}
.rs-md:focus-visible,.rs-mc:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.rs-g{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:16px;align-items:start}
.rs-g>.card{margin:0}
.rs-r{display:grid;grid-template-columns:44px minmax(0,1fr);gap:10px;align-items:start;padding:10px 0;border-top:1px solid var(--border)}
.rs-r:first-of-type{border-top:0}
.rs-p{display:grid;justify-items:center;padding-top:8px}.rs-p b{font-size:15px;font-weight:900}
.rs-ss{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.rs-s{display:grid;grid-template-columns:20px minmax(0,1fr);column-gap:6px;align-items:center}
.rs-s em{font-style:normal;font-weight:900;color:#1D9E75;text-align:center}
.rs-s .ctl{margin:0;padding:7px 8px;font-size:12.5px}
.rs-s small{grid-column:2;font-size:10.5px;font-weight:700;color:var(--red)}
.rs-s.bad .ctl{border-color:var(--red);background:#FFF8F7}
.rs-none{display:flex;flex-wrap:wrap;gap:5px}
.rs-none span{font-size:12px;font-weight:700;background:var(--bg);border-radius:8px;padding:3px 9px}.rs-none small{color:var(--muted);font-weight:600}
.rs-bulk summary{cursor:pointer;font-weight:800;font-size:14px}
/* تقرير الفاقد */
.lr-kp{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-top:10px}
.lr-kp div{background:var(--bg);border-radius:12px;padding:10px 12px;display:grid}
.lr-kp b{font-size:24px;font-weight:900;font-variant-numeric:tabular-nums;line-height:1.2}.lr-kp span{font-size:11.5px;color:var(--muted)}
.lr-kp .r b{color:var(--red)}.lr-kp .g b{color:var(--teal)}.lr-kp .a b{color:#B7791F}
.lr-l{display:grid;gap:2px}
.lr-r{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) 40px 36px;gap:12px;align-items:center;padding:10px 4px;border-bottom:1px solid var(--border)}
.lr-r:last-child{border-bottom:0}
.lr-n{display:grid;gap:4px;min-width:0}.lr-n a,.lr-n b{font-size:14px;font-weight:800;color:var(--navy)}
.lr-ch{display:flex;flex-wrap:wrap;gap:4px}.lr-ch i{font-style:normal;font-size:11px;font-weight:700;background:var(--bg);border-radius:6px;padding:1px 7px;color:var(--muted)}
.lr-b{display:grid;gap:3px}.lr-b .bar{height:8px;background:#FBEAE8;border-radius:5px;overflow:hidden}.lr-b .bar i{display:block;height:100%;background:var(--teal);border-radius:5px}
.lr-b small{font-size:11px;color:var(--muted)}
.lr-r em{font-style:normal;font-size:20px;font-weight:900;text-align:center;font-variant-numeric:tabular-nums;color:var(--muted)}.lr-r em.r{color:var(--red)}
.lr-p{border:0;background:transparent;font-size:16px;cursor:pointer;border-radius:8px;padding:4px}.lr-p:hover{background:var(--bg)}
@media (max-width:1000px){.rs-g{grid-template-columns:minmax(0,1fr)}}
@media (max-width:760px){
  .rs-kp{width:100%}.rs-kp div{flex:1}
  .rs-ss{grid-template-columns:minmax(0,1fr)}
  .lr-kp{grid-template-columns:repeat(3,minmax(0,1fr))}
  .lr-r{grid-template-columns:minmax(0,1fr) 34px 30px;grid-template-areas:"n e p" "b b b"}.lr-n{grid-area:n}.lr-b{grid-area:b}.lr-r em{grid-area:e}.lr-p{grid-area:p}
}
/* لوحة المعلومات: طقس المدرسة */
.dw-g{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:16px;align-items:start}
.dw-row{display:grid;grid-template-columns:62px minmax(0,1fr);gap:8px;align-items:center;padding:5px 0}
.dw-gl{font-size:12.5px;font-weight:900}
.dw-ts{display:flex;flex-wrap:wrap;gap:6px}
.dw-t{display:grid;grid-template-columns:auto auto;grid-template-areas:"ic b" "s s";column-gap:6px;align-items:center;justify-items:start;min-width:92px;border:1.5px solid var(--border);border-radius:12px;padding:7px 10px;background:#fff;font:inherit;color:var(--navy);cursor:pointer;text-align:start}
.dw-t .ic{grid-area:ic;font-size:18px;line-height:1}.dw-t b{grid-area:b;font-size:15px;font-weight:900}.dw-t small{grid-area:s;font-size:10.5px;color:var(--muted);font-weight:700;white-space:nowrap}
.dw-t.none{background:repeating-linear-gradient(135deg,#fff 0 6px,#F6F8FB 6px 12px);border-style:dashed}.dw-t.none .ic{color:#b6c0cd}
.dw-t.sun{background:#FFF8E1;border-color:#F3DC9A}
.dw-t.ok{background:#F2FBF7;border-color:#BFE6D4}
.dw-t.rn{background:#EEF4FC;border-color:#BCD3EE}.dw-t.rn small{color:#1d4f86}
.dw-t.st{background:#FBEAE8;border-color:#F1B8AF}.dw-t.st small{color:var(--red)}
.dw-t:hover{box-shadow:0 4px 12px rgba(15,40,73,.1)}.dw-t:focus-visible,.dw-x:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.dw-k{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.dw-k div{background:var(--bg);border-radius:12px;padding:10px 12px;display:grid}
.dw-k b{font-size:24px;font-weight:900;font-variant-numeric:tabular-nums;line-height:1.2}.dw-k span{font-size:11.5px;color:var(--muted)}
.dw-k .r b{color:var(--red)}.dw-k .g b{color:var(--teal)}
.dw-x{display:grid;gap:2px;width:100%;text-align:start;border:1px solid #F1C7C1;background:#FFF8F7;border-radius:10px;padding:8px 12px;margin-bottom:6px;font:inherit;color:var(--navy);cursor:pointer}
.dw-x b{font-size:13.5px}.dw-x span{font-size:11.5px;color:var(--muted)}
.dw-ok,.dw-star,.dw-none{margin-top:10px;font-size:12.5px;border-radius:10px;padding:8px 12px}
.dw-ok{background:#E3F5EC;color:#11684d;font-weight:700}.dw-star{background:#FFF8E1;color:#7a5f08}.dw-none{background:var(--bg);color:var(--muted);line-height:1.8}
@media (max-width:1000px){.dw-g{grid-template-columns:minmax(0,1fr)}}
@media (max-width:760px){.dw-row{grid-template-columns:50px minmax(0,1fr);gap:6px;padding:3px 0}.dw-gl{font-size:12px}.dw-t{min-width:0;flex:1 1 0;padding:6px 8px}.dw-t b{font-size:14px}}

/* ===== تقرير السلوك والغياب للكل ===== */
.gr-head{display:flex;flex-direction:column;gap:14px}
.gr-k{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.gr-k button{font:inherit;font-size:14.5px;font-weight:800;padding:12px 14px;border-radius:14px;border:1.5px solid var(--border);background:#fff;color:var(--navy);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px}
.gr-k button em{font-style:normal;font-size:18px}
.gr-k button.on{background:var(--navy);border-color:var(--navy);color:#fff}
.gr-f{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:flex-end}
.gr-f label,.gr-r{display:flex;flex-direction:column;gap:4px;min-width:0}
.gr-f label span,.gr-r>span{font-size:12px;font-weight:700;color:var(--muted)}
.gr-f select{min-width:150px}
.gr-dt{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.gr-dt span{font-size:12.5px;color:var(--muted)}
.gr-sc{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding-top:12px;border-top:1px dashed var(--border)}
.gr-sc b{font-size:15px}.gr-sc span{font-size:12.5px;color:var(--muted);font-variant-numeric:tabular-nums}
.gr-sc .btn{margin-inline-start:auto}
.gr-kp{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin-bottom:16px}
.gr-kp div{background:#fff;border:1px solid var(--border);border-radius:16px;padding:12px 14px;min-width:0}
.gr-kp div.hot{border-color:#E8B4AC;background:#FFF6F4}
.gr-kp b{display:block;font-size:24px;font-weight:900;line-height:1.2;font-variant-numeric:tabular-nums}
.gr-kp span{font-size:12.5px;color:var(--muted)}
.gr-g3{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;margin-bottom:14px}
.gr-g3 .card{margin:0}
.gr-g3 .hc-br,.gr-bars .hc-br{grid-template-columns:minmax(84px,40%) minmax(0,1fr) 36px}
.gr-g3 .hc-br span,.gr-bars .hc-br span{overflow-wrap:anywhere;line-height:1.4}
.gr-tb{width:100%;border-collapse:collapse;font-size:13px}
.gr-tb th{background:#F3F6FA;font-size:12px;font-weight:800;text-align:right;padding:8px 10px;white-space:nowrap}
.gr-tb td{padding:8px 10px;border-top:1px solid var(--border);white-space:nowrap}
.gr-tb td.n,.gr-tb td:first-child{font-variant-numeric:tabular-nums}
.gr-tb td:first-child{color:var(--muted);width:32px}
.gr-tb tbody tr:hover{background:#FAFBFD}
@media (max-width:640px){ .gr-f label,.gr-r{flex:1 1 100%} .gr-f select{width:100%} .gr-k button{font-size:13.5px;padding:10px} .gr-sc .btn{margin-inline-start:0} }

/* ===== نسخة العرض التجريبية ===== */
.demo-acc{margin:0 0 16px;border:1.5px dashed #C9A227;background:#FFFBEF;border-radius:14px;padding:12px}
.demo-acc-h{display:flex;flex-direction:column;gap:2px;margin-bottom:10px}
.demo-acc-h b{font-size:14px;color:var(--navy)}.demo-acc-h span{font-size:12px;color:#6b5a1e}
.demo-acc-h bdi{font-weight:900;font-size:13px;background:#fff;border:1px solid #E8D58E;border-radius:6px;padding:0 6px}
.demo-acc-g{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.demo-acc-g button{font:inherit;display:flex;flex-direction:column;align-items:flex-start;gap:0;padding:7px 10px;border-radius:10px;border:1px solid #E8D58E;background:#fff;cursor:pointer;text-align:right;min-width:0}
.demo-acc-g button:hover{border-color:#C9A227;background:#FFF6D8}
.demo-acc-g b{font-size:12.5px;color:var(--navy)}.demo-acc-g bdi{font-size:12px;color:#8a6d1a;font-family:ui-monospace,Menlo,monospace}
.demo-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;background:#FFF6D8;border-bottom:1px solid #E8D58E;color:#5a4a12;font-size:12.5px;padding:7px 16px}
.demo-bar button{font:inherit;font-size:12px;font-weight:800;border:1px solid #D9BE62;background:#fff;color:#5a4a12;border-radius:999px;padding:4px 12px;cursor:pointer}
.demo-bar-b{display:flex;gap:6px;flex-wrap:wrap}
.demo-bar .demo-bar-lead{background:var(--navy);border-color:var(--navy);color:#fff}
.demo-acc-lead{font:inherit;width:100%;margin-top:8px;padding:8px;border-radius:10px;border:none;background:var(--navy);color:#fff;font-weight:800;font-size:13px;cursor:pointer}
.demo-lead-ov{position:fixed;inset:0;z-index:9999;background:rgba(15,40,73,.45);display:flex;align-items:center;justify-content:center;padding:16px}
.demo-lead{position:relative;width:100%;max-width:440px;max-height:calc(100vh - 32px);overflow:auto;background:#fff;border-radius:18px;padding:22px 20px 18px;display:flex;flex-direction:column;gap:10px;box-shadow:0 20px 60px rgba(0,0,0,.25)}
.demo-lead-x{position:absolute;top:10px;left:10px;width:32px;height:32px;border-radius:50%;border:1px solid var(--border);background:#fff;cursor:pointer;font-size:14px}
.demo-lead-h{display:flex;flex-direction:column;gap:2px;padding-left:30px}.demo-lead-h b{font-size:17px}.demo-lead-h span{font-size:12.5px;color:var(--muted)}
.demo-lead label{display:flex;flex-direction:column;gap:4px;font-size:12.5px;font-weight:700;min-width:0}
.demo-lead input,.demo-lead select,.demo-lead textarea{font:inherit;font-size:14px;padding:9px 11px;border:1.5px solid var(--border);border-radius:10px;width:100%;box-sizing:border-box}
.demo-lead input:focus,.demo-lead select:focus,.demo-lead textarea:focus{outline:none;border-color:#0C8599}
.demo-lead-r{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.demo-lead .demo-lead-c{flex-direction:row;align-items:center;gap:8px;font-weight:600}.demo-lead-c input{width:auto}
.demo-lead-m{min-height:18px;font-size:12.5px;font-weight:700}.demo-lead-m.err{color:#C0392B}.demo-lead-m.ok{color:#0F6E54}
.demo-lead-go{font:inherit;font-size:15px;font-weight:800;color:#fff;background:var(--navy);border:none;border-radius:12px;padding:12px;cursor:pointer}
.demo-lead-go:disabled{opacity:.6}
.demo-lead-done{display:flex;flex-direction:column;gap:8px;text-align:center;padding:24px 6px 6px}.demo-lead-done b{font-size:19px}.demo-lead-done span{color:var(--muted);font-size:13.5px}
@media (max-width:420px){ .demo-lead-r{grid-template-columns:1fr} }

/* ===== مِرسال: دردشة حية بين الزملاء ===== */
.ms{font-size:14px;color:var(--navy)}
.ms-dock{position:fixed;left:18px;bottom:18px;z-index:57;display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.ms-fab{position:relative;display:flex;align-items:center;gap:8px;height:48px;padding:0 14px 0 16px;border:0;border-radius:24px;background:var(--navy);color:#fff;font-weight:800;font-size:14.5px;box-shadow:0 12px 30px rgba(15,40,73,.28);transition:background .15s,transform .15s}
.ms-fab:hover,.ms-fab.on{background:#183C69}
.ms-fab:active{transform:scale(.97)}
.ms-fab:focus-visible,.ms-row:focus-visible,.ms-ib:focus-visible,.ms-bt:focus-visible,.ms-send:focus-visible,.ms-x:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.ms-fi{font-size:18px;line-height:1}
.ms-fo{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:700;background:rgba(255,255,255,.13);padding:2px 9px;border-radius:10px;font-variant-numeric:tabular-nums}
.ms-fo i{width:8px;height:8px;border-radius:50%;background:#3DDC97}
.ms-badge{min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:var(--red);color:#fff;font-size:11.5px;font-weight:800;font-style:normal;display:inline-flex;align-items:center;justify-content:center;line-height:1;flex:0 0 auto;font-variant-numeric:tabular-nums}
.ms-fab .ms-badge{position:absolute;top:-6px;right:-4px;box-shadow:0 0 0 2px var(--bg)}
.ms-panel{width:320px;max-height:min(560px,calc(100vh - 100px));display:flex;flex-direction:column;background:#fff;border:1px solid var(--border);border-radius:18px;box-shadow:0 24px 60px rgba(15,40,73,.24);overflow:hidden;animation:msUp .18s ease}
.ms-ph{display:flex;align-items:center;gap:10px;padding:11px 12px 11px 14px;background:var(--navy);color:#fff}
.ms-ph b{font-size:15px;font-weight:800}
.ms-ph span{flex:1;font-size:12px;opacity:.78}
.ms-x{width:32px;height:32px;border:0;border-radius:9px;background:transparent;color:inherit;font-size:15px}
.ms-x:hover{background:rgba(255,255,255,.13)}
.ms-ps{padding:10px 12px;border-bottom:1px solid var(--border)}
.ms-ps .ctl{width:100%;border-radius:12px}
.ms-pl{overflow-y:auto;padding:4px 6px 10px;overscroll-behavior:contain}
.ms-sec{font-size:11.5px;font-weight:800;color:var(--muted);padding:10px 10px 4px;letter-spacing:.3px}
.ms-row{display:flex;align-items:center;gap:10px;width:100%;padding:7px 8px;border:0;background:transparent;border-radius:12px;text-align:start;color:var(--navy)}
.ms-row:hover{background:var(--bg)}
.ms-row.unread b{font-weight:900}
.ms-row.unread small{color:var(--navy);font-weight:700}
.ms-row time{font-size:11px;color:var(--muted);flex:0 0 auto}
.ms-av{position:relative;flex:0 0 38px;width:38px;height:38px;border-radius:50%;background:#E6EDF6;color:var(--navy);display:inline-flex;align-items:center;justify-content:center;font-weight:800;font-size:15px}
.ms-av i{position:absolute;bottom:-1px;left:-1px;width:12px;height:12px;border-radius:50%;border:2px solid #fff;background:#B7C1CE}
.ms-av.on i{background:#22C55E}
.ms-av.away i{background:#F2B10C}
.ms-av.class i{background:var(--blue)}
.ms-rt{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}
.ms-rt b{font-size:13.5px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ms-rt small{font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ms-none{padding:28px 12px;text-align:center;color:var(--muted);font-size:13px}
/* تحت النوافذ المنبثقة (60–61) عشان ما تغطي ورقة الطالب أو النماذج، وفوق محتوى الصفحة */
.ms-boxes{position:fixed;left:196px;bottom:0;z-index:56;display:flex;align-items:flex-end;gap:12px;direction:ltr}
.ms.po .ms-boxes{left:354px}
.ms-box{direction:rtl;width:330px;height:450px;max-height:calc(100vh - 24px);display:flex;flex-direction:column;background:#fff;border:1px solid var(--border);border-bottom:0;border-radius:16px 16px 0 0;box-shadow:0 -4px 40px rgba(15,40,73,.2);overflow:hidden;animation:msUp .18s ease}
.ms-box.min{height:auto}
.ms-box.min .ms-list,.ms-box.min .ms-typ,.ms-box.min .ms-in{display:none}
.ms-bh{display:flex;align-items:center;gap:2px;padding:7px 6px 7px 8px;background:var(--navy);color:#fff}
.ms-bt{flex:1;min-width:0;display:flex;align-items:center;gap:9px;border:0;background:transparent;color:inherit;text-align:start;padding:2px 4px;border-radius:10px}
.ms-bt>.ms-bn{min-width:0;display:flex;flex-direction:column;flex:1}
.ms-bt b{font-size:13.5px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ms-bt small{font-size:11.5px;opacity:.78;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ms-bt .ms-av{flex-basis:32px;width:32px;height:32px;font-size:13px;background:rgba(255,255,255,.15);color:#fff}
.ms-bt .ms-av i{border-color:var(--navy)}
.ms-ib{flex:0 0 32px;width:32px;height:32px;border:0;border-radius:9px;background:transparent;color:#fff;font-size:15px;display:inline-flex;align-items:center;justify-content:center}
.ms-ib:hover{background:rgba(255,255,255,.14)}
.ms-list{flex:1;overflow-y:auto;padding:10px 12px 4px;display:flex;flex-direction:column;gap:6px;background:#F6F8FB;overscroll-behavior:contain}
.ms-m{max-width:82%;display:flex;flex-direction:column;gap:1px;padding:7px 12px 5px;border-radius:16px;font-size:13.5px;line-height:1.6}
.ms-m.cont{margin-top:-3px}
.ms-m p{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}
.ms-m time{display:flex;align-items:center;gap:5px;font-size:10.5px;opacity:.72;align-self:flex-end;font-variant-numeric:tabular-nums}
/* مثل الواتساب بالعربي: رسائلك يسار والزميل يمين */
.ms-m.me{align-self:flex-end;background:var(--navy);color:#fff;border-bottom-left-radius:5px}
.ms-m.them{align-self:flex-start;background:#fff;border:1px solid var(--border);border-bottom-right-radius:5px}
.ms-m time i{font-style:normal;font-size:12px;font-weight:800;letter-spacing:-4px;padding-left:4px}
.ms-m time i.rd{color:#8BD3FF;opacity:1}
.ms-day{align-self:center;margin:6px 0 2px}
.ms-day span{display:inline-block;font-size:11px;font-weight:700;color:var(--muted);background:#E8EDF4;padding:2px 11px;border-radius:10px}
.ms-nudge{align-self:center;display:flex;align-items:center;gap:8px;font-size:12.5px;font-weight:800;color:#8A5A00;background:#FFF3D1;border:1px solid #F2DA97;border-radius:12px;padding:4px 12px;margin:3px 0}
.ms-nudge time{font-weight:600;opacity:.7;font-size:10.5px;font-variant-numeric:tabular-nums}
.ms-more{align-self:center;border:1px solid var(--border);background:#fff;color:var(--navy);border-radius:10px;font-size:12px;font-weight:700;padding:4px 12px;margin-bottom:4px}
.ms-empty{margin:auto;display:flex;flex-direction:column;align-items:center;gap:6px;color:var(--muted);font-size:13px;text-align:center;padding:20px}
.ms-empty .ms-av{width:56px;height:56px;flex-basis:auto;font-size:22px}
.ms-empty .ms-av i{width:15px;height:15px;border-color:#F6F8FB}
.ms-empty b{color:var(--navy);font-size:14px}
.ms-typ{min-height:18px;padding:0 14px 2px;font-size:11.5px;font-weight:600;color:var(--teal);background:#F6F8FB}
.ms-in{display:flex;align-items:flex-end;gap:8px;padding:8px 10px 10px;border-top:1px solid var(--border);background:#fff}
.ms-in textarea{flex:1;min-width:0;resize:none;border:1px solid var(--border);border-radius:18px;padding:8px 14px;font:inherit;font-size:14px;line-height:1.5;max-height:110px;background:var(--bg);color:var(--navy);outline:none}
.ms-in textarea:focus{border-color:var(--blue);background:#fff}
.ms-send{flex:0 0 38px;width:38px;height:38px;border:0;border-radius:50%;background:var(--navy);color:#fff;display:inline-flex;align-items:center;justify-content:center}
.ms-send:hover{background:#183C69}
.ms-send svg{width:18px;height:18px}
.ms-box.shake{animation:msShake .6s cubic-bezier(.36,.07,.19,.97)}
@keyframes msShake{10%,90%{transform:translate3d(-2px,0,0)}20%,80%{transform:translate3d(4px,0,0)}30%,50%,70%{transform:translate3d(-9px,0,0)}40%,60%{transform:translate3d(9px,0,0)}}
@keyframes msUp{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.ms-top{display:none}
body.ms-lock{overflow:hidden}
@media (prefers-reduced-motion:reduce){.ms-panel,.ms-box{animation:none}.ms-box.shake{animation:none;box-shadow:0 0 0 3px var(--gold)}}
@media print{.ms,.ms-top{display:none!important}}
@media (max-width:760px){
  .ms-top{display:flex}
  .ms-fab{display:none}
  .ms-dock{left:0;bottom:0}
  .ms-dock,.ms-boxes{z-index:182}
  .ms-panel,.ms-box{position:fixed;inset:0;width:auto;height:auto;max-height:none;border:0;border-radius:0;box-shadow:none;animation:none;z-index:182}
  .ms-boxes,.ms.po .ms-boxes{left:0}
  .ms-ph,.ms-bh{padding-top:calc(10px + env(safe-area-inset-top))}
  .ms-in{padding-bottom:calc(10px + env(safe-area-inset-bottom))}
  .ms-in textarea{font-size:16px}
  .ms-row{padding:9px 8px}
  .ms-m{max-width:86%}
}

/* الجرس: التوقيت الصيفي والشتوي ورمضان */
.tb-bnow{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;background:#EEF6F2;border:1px solid #CDE7DA;color:#0F5E44;border-radius:12px;padding:9px 12px;font-size:13px;margin:4px 0 12px}
.tb-bnow b{font-weight:800}
.tb-bk{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:12px}
.tb-bk button{display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 6px;border:1px solid var(--border);border-radius:12px;background:#fff;color:var(--navy);font-weight:800;font-size:13px}
.tb-bk button em{font-style:normal;font-size:20px;line-height:1.1}
.tb-bk button small{font-size:10.5px;font-weight:800;color:#fff;background:var(--teal);border-radius:8px;padding:0 7px}
.tb-bk button.on{border-color:var(--navy);box-shadow:inset 0 0 0 1px var(--navy);background:#F3F6FB}
.tb-bk button:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.tb-bra{display:flex;align-items:flex-start;gap:8px;margin-top:12px;font-size:13px;color:var(--navy);line-height:1.6}
.tb-bra input{margin-top:4px}
/* أوقات الحصص: الحساب من بداية الدوام والمدد، وتقسيم الصفوف على جرس أو جرسين */
.tb-sp{margin:2px 0 12px}
.tb-sp .tb-lbl{margin-top:0}
.tb-seg2{display:inline-flex;border:1px solid var(--border);border-radius:12px;padding:3px;background:var(--bg);gap:3px;max-width:100%;flex-wrap:wrap}
.tb-seg2 button{border:0;background:none;padding:7px 14px;border-radius:9px;font:inherit;font-size:13px;font-weight:800;color:var(--muted);cursor:pointer}
.tb-seg2 button.on{background:#fff;color:var(--navy);box-shadow:0 1px 4px rgba(15,40,73,.12)}
.tb-gr{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.tb-gr button{display:flex;flex-direction:column;align-items:center;gap:1px;min-width:64px;padding:6px 10px;border-radius:10px;border:1px solid var(--border);background:#fff;font:inherit;font-size:13px;font-weight:800;color:var(--navy);cursor:pointer}
.tb-gr button small{font-size:10px;font-weight:800;border-radius:6px;padding:0 6px}
.tb-gr button.a{border-color:var(--navy);background:var(--tint,#EEF2F8)}
.tb-gr button.a small{background:var(--navy);color:#fff}
.tb-gr button.b small{background:var(--bg);color:var(--muted)}
.tb-ins{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;margin:0 0 12px}
.tb-in{display:grid;gap:4px;font-size:12px;font-weight:800;color:var(--muted)}
.tb-in>div{display:flex;align-items:center;gap:6px}
.tb-in .ctl{margin:0;padding:7px 8px;font-weight:800;min-width:0;flex:1}
.tb-in em{font-style:normal;font-size:11.5px;font-weight:700}
.tb-cnt small{font-size:10.5px;font-weight:700;color:var(--muted)}
.tb-man{margin-top:12px;border:1px solid var(--border);border-radius:12px;padding:8px 12px}
.tb-man summary{cursor:pointer;font-size:13px;font-weight:800;color:var(--navy)}
.tb-man summary b{color:#B45309}
.tb-man[open] summary{margin-bottom:6px}
.tb-brk.tb-asm{background:repeating-linear-gradient(135deg,#E6EEF8 0 5px,#D6E2F1 5px 10px)}
.tb-brk.tb-asm span{color:#2B4A72}
.tb-brk.tb-pray{background:repeating-linear-gradient(135deg,#E3F4EC 0 5px,#CDEBDD 5px 10px)}
.tb-brk.tb-pray span{color:#0F5E44}
.sx-bell{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:13.5px;font-weight:700;color:var(--navy)}

/* نسخة العرض: اختيار المرحلة */
.demo-stg{display:grid;grid-template-columns:auto repeat(3,minmax(0,1fr));align-items:center;gap:6px;margin:4px 0 10px;font-size:12.5px;font-weight:800;color:#6b5a1e}
.demo-stg button{border:1px solid #E8D9A6;background:#fff;color:var(--navy);border-radius:10px;padding:8px 6px;font-weight:800;font-size:13.5px}
.demo-stg button.on{background:var(--navy);border-color:var(--navy);color:#fff}
.demo-stg button:focus-visible{outline:3px solid var(--gold);outline-offset:2px}

/* ===== تأمين الحصص ===== */
.cv-hero{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;background:linear-gradient(135deg,var(--navy),var(--navy2));color:#fff;border-radius:18px;padding:18px 22px;margin-bottom:14px}
.cv-hero .tb-k{color:#C9D8EA}.cv-hero h2{margin:2px 0 4px;font-size:21px}.cv-hero p{margin:0;font-size:13px;opacity:.85}
.cv-bal{display:flex;gap:10px}
.cv-bal div{background:rgba(255,255,255,.1);border-radius:14px;padding:10px 16px;text-align:center;min-width:110px}
.cv-bal b{display:block;font-size:24px;font-weight:900;font-variant-numeric:tabular-nums}.cv-bal span{font-size:11.5px;opacity:.85}
.cv-form .form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.cv-hint{text-align:center;color:var(--muted);font-size:13.5px;padding:18px}.cv-hint.bad{color:var(--red)}
.cv-slot{border:1px solid var(--border);border-radius:14px;padding:12px;margin-top:10px;background:#FBFCFE}
.cv-sh{display:flex;align-items:center;gap:10px;margin-bottom:10px}.cv-sh b{display:block;font-size:14px}.cv-sh small{color:var(--muted);font-size:12px}
.cv-n{flex:0 0 30px;width:30px;height:30px;border-radius:9px;background:var(--navy);color:#fff;font-weight:900;display:inline-flex;align-items:center;justify-content:center;font-variant-numeric:tabular-nums}
.cv-cs{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.cv-c{display:flex;flex-direction:column;align-items:flex-start;gap:1px;border:1px solid var(--border);background:#fff;border-radius:12px;padding:7px 12px;color:var(--navy);text-align:start}
.cv-c b{font-size:13px}.cv-c small{font-size:11px;color:var(--teal);font-weight:700}
.cv-c.on{border-color:var(--teal);box-shadow:inset 0 0 0 1px var(--teal);background:#EEF8F3}
.cv-c:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.cv-more{max-width:200px;font-size:12.5px}
.cv-none,.cv-mute{font-size:12.5px;color:var(--muted)}
.cv-need{color:var(--muted);font-size:12px;align-self:center}
.cv-list{display:flex;flex-direction:column;gap:12px}
.cv-card{background:#fff;border:1px solid var(--border);border-radius:16px;padding:14px 16px;border-inline-start:4px solid var(--border)}
.cv-card.g{border-inline-start-color:var(--teal)}.cv-card.y{border-inline-start-color:var(--amber)}.cv-card.b{border-inline-start-color:var(--blue)}.cv-card.r{border-inline-start-color:var(--red)}
.cv-ch{display:flex;align-items:flex-start;gap:8px;flex-wrap:wrap;margin-bottom:10px}
.cv-ch>div{flex:1;min-width:180px}.cv-t{font-weight:800;font-size:14px}.cv-ch small{color:var(--muted);font-size:12.5px}
.cv-pill{display:inline-flex;align-items:center;font-size:11.5px;font-weight:800;padding:3px 10px;border-radius:999px;background:#EEF1F5;color:#475569;white-space:nowrap}
.cv-pill.g{background:#E6F6EE;color:#0F6E4E}.cv-pill.y{background:#FFF4D6;color:#8A5A00}.cv-pill.r{background:#FDECEA;color:#A32A1E}.cv-pill.b{background:#E7F0FB;color:#1E4C8A}
.cv-srs{display:flex;flex-direction:column;gap:6px}
.cv-sr{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:6px 8px;border-radius:10px;background:#F7F9FC}
.cv-sr.me{background:#FFF8E6;box-shadow:inset 0 0 0 1px #F2DA97}
.cv-sr .cv-n{flex-basis:24px;width:24px;height:24px;font-size:12px;border-radius:7px}
.cv-st{flex:1;min-width:150px;font-size:13px}
.cv-acts{display:flex;gap:6px}
.cv-re{max-width:220px;font-size:12.5px;padding:4px 8px}
.cv-dec{margin-top:8px;font-size:12.5px;color:var(--muted)}
.cv-ft{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:10px;padding-top:10px;border-top:1px dashed var(--border)}
.cv-warn{flex-basis:100%;font-size:12.5px;color:#8A5A00;background:#FFF4D6;border-radius:10px;padding:6px 10px}
.cv-kp{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:12px}
.cv-kp div{background:#fff;border:1px solid var(--border);border-radius:14px;padding:12px;text-align:center}
.cv-kp b{display:block;font-size:24px;font-weight:900;font-variant-numeric:tabular-nums}.cv-kp span{font-size:12px;color:var(--muted)}
.cv-kp .r b{color:var(--red)}
@media (max-width:760px){.cv-form .form-grid{grid-template-columns:1fr 1fr}.cv-hero{padding:16px}.cv-bal div{min-width:0;flex:1}.cv-bal{width:100%}.cv-st{min-width:0;flex-basis:calc(100% - 40px)}}
/* تعويض الفاقد */
.lc-hero{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:18px;background:linear-gradient(135deg,#123B3A,#1D6B5C);color:#fff;border-radius:18px;padding:18px 22px;margin-bottom:14px}
.lc-hero .tb-k{color:#BFE3D6}.lc-hero h2{margin:2px 0 4px;font-size:21px}.lc-hero p{margin:0;font-size:13px;opacity:.88;max-width:52ch}
.lc-ring{--p:0;width:92px;height:92px;border-radius:50%;background:conic-gradient(#7FE0B5 calc(var(--p)*1%),rgba(255,255,255,.16) 0);display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative}
.lc-ring::before{content:"";position:absolute;inset:9px;border-radius:50%;background:#174F47}
.lc-ring b,.lc-ring span{position:relative}.lc-ring b{font-size:20px;font-weight:900;font-variant-numeric:tabular-nums}.lc-ring span{font-size:11px;opacity:.85}
.lc-kp{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.lc-kp div{background:rgba(255,255,255,.1);border-radius:13px;padding:9px 12px;text-align:center;min-width:76px}
.lc-kp b{display:block;font-size:22px;font-weight:900;font-variant-numeric:tabular-nums}.lc-kp span{font-size:11px;opacity:.85;white-space:nowrap}
.lc-kp .g b{color:#9BF0C8}.lc-kp .y b{color:#FFE08A}.lc-kp .r b{color:#FFB4A8}
.lc-lg{display:inline-flex;align-items:center;gap:5px;margin-inline-start:10px;font-size:11.5px}.lc-lg::before{content:"";width:10px;height:10px;border-radius:3px;background:#fff;border:1.5px solid var(--red)}
.lc-lg.wait::before{background:#FFE7A3;border-color:#E2B33A}.lc-lg.ok::before{background:#BFEBD5;border-color:var(--teal)}
.lc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}
.lc-cls{border:1px solid var(--border);border-radius:16px;padding:12px 14px;background:#fff;display:flex;flex-direction:column;gap:9px}
.lc-cls.done{background:#F4FBF7;border-color:#CFEADC}
.lc-ch{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.lc-ch b{display:block;font-size:15px}.lc-ch small{color:var(--muted);font-size:12.5px}
.lc-ch em{font-style:normal;font-size:12px;font-weight:800;color:var(--red);white-space:nowrap}.lc-ch em.g{color:var(--teal)}.lc-ch em.y{color:#8A5A00}
.lc-bar{display:flex;height:8px;border-radius:99px;background:#FCE3DF;overflow:hidden}.lc-bar i{display:block;height:100%}.lc-bar .g{background:var(--teal)}.lc-bar .y{background:#E9B83C}
.lc-its{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.lc-it{display:inline-flex;align-items:center;gap:5px;font-size:12px;padding:4px 9px;border-radius:9px;background:#F3F5F8;color:#334155;border:1.5px solid transparent;font-variant-numeric:tabular-nums}
.lc-it b{font-weight:900;color:var(--navy)}
.lc-it.open{background:#fff;border-color:#F0A99F;color:#8C2A1E}.lc-it.wait{background:#FFF4D6;color:#7A5200}.lc-it.ret{background:#FFF4D6;color:#7A5200;border-style:dashed;border-color:#E2B33A}.lc-it.ok{background:#E6F6EE;color:#0F6E4E}
.lc-its.pick .lc-it{cursor:pointer;background:#fff;border-color:var(--border);padding:7px 11px;font-size:12.5px}
.lc-its.pick .lc-it small{color:var(--muted);font-size:11px}
.lc-its.pick .lc-it.on{border-color:var(--teal);background:#EEF8F3;box-shadow:inset 0 0 0 1px var(--teal)}
.lc-its.pick .lc-it:focus-visible,.lc-m:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.lc-go{align-self:flex-start}
.lc-guide summary{cursor:pointer;font-weight:800;font-size:14px;color:var(--navy)}
.lc-gl{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px;margin-top:12px}
.lc-gl div{border:1px solid var(--border);border-radius:13px;padding:10px 12px;display:flex;flex-direction:column;gap:2px;background:#FBFCFE}
.lc-gl em{font-style:normal;font-size:20px}.lc-gl b{font-size:13.5px}.lc-gl small{font-size:12px;color:var(--muted)}.lc-gl i{font-style:normal;font-size:11.5px;color:var(--teal);font-weight:700}
.lc-gs{display:flex;flex-wrap:wrap;gap:8px}
.lc-ms{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:8px}
.lc-m{display:flex;flex-direction:column;align-items:flex-start;gap:2px;border:1px solid var(--border);background:#fff;border-radius:13px;padding:10px 12px;text-align:start;cursor:pointer;color:var(--navy)}
.lc-m em{font-style:normal;font-size:20px}.lc-m b{font-size:13.5px}.lc-m small{font-size:11.5px;color:var(--muted)}
.lc-m.on{border-color:var(--teal);background:#EEF8F3;box-shadow:inset 0 0 0 1px var(--teal)}
.lc-need{margin-top:10px;font-size:13px;background:#EEF8F3;color:#0F5A44;border-radius:10px;padding:8px 12px}
.lc-mi{font-style:normal;font-size:22px;line-height:1}
.lc-card .lc-its{margin-bottom:6px}
.lc-d{margin:6px 0;font-size:13px;line-height:1.8;color:#334155;white-space:pre-line}
.lc-ev{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:6px}
.lc-img{width:74px;height:74px;object-fit:cover;border-radius:10px;cursor:pointer;border:1px solid var(--border)}
.lc-link{border:1px solid var(--border);background:#fff;border-radius:10px;padding:7px 12px;font-size:12.5px;cursor:pointer;color:var(--blue);font-weight:700}
.lc-rows{display:flex;flex-direction:column}
.lc-row{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) 40px 36px;gap:12px;align-items:center;padding:10px 4px;border-bottom:1px solid var(--border)}
.lc-row:last-child{border-bottom:0}
.lc-rn b{display:block;font-size:14px}.lc-rs{display:flex;flex-wrap:wrap;gap:4px;margin-top:3px}
.lc-rs i{font-style:normal;font-size:11px;background:#FDECEA;color:#A32A1E;border-radius:6px;padding:1px 6px;font-variant-numeric:tabular-nums}.lc-rs i.ok{background:#E6F6EE;color:#0F6E4E}
.lc-rb small{display:block;margin-top:4px;font-size:11.5px;color:var(--muted)}
.lc-row em{font-style:normal;font-weight:900;font-size:17px;text-align:center;font-variant-numeric:tabular-nums}.lc-row em.r{color:var(--red)}.lc-row em.g{color:var(--teal)}
.lc-rows .lc-row:not(:has(.lr-p)){grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) 40px}
@media (max-width:900px){.lc-hero{grid-template-columns:minmax(0,1fr) auto}.lc-kp{grid-column:1/-1}}
@media (max-width:600px){.lc-hero{padding:16px;gap:12px}.lc-ring{width:78px;height:78px}.lc-kp{gap:6px}.lc-kp div{min-width:0;padding:8px 4px}.lc-kp b{font-size:19px}
  .lc-row{grid-template-columns:minmax(0,1fr) 34px 30px;grid-template-areas:"n e p" "b b b"}.lc-rn{grid-area:n}.lc-rb{grid-area:b}.lc-row em{grid-area:e}.lc-row .lr-p{grid-area:p}
  .lc-rows .lc-row:not(:has(.lr-p)){grid-template-columns:minmax(0,1fr) 34px;grid-template-areas:"n e" "b b"}
  .lc-ms{grid-template-columns:1fr 1fr}.lc-grid{grid-template-columns:1fr}}

/* ===== نبض المنظومة (للمدير) ===== */
.pl-hero{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;border-radius:20px;padding:18px 22px;margin-bottom:14px;color:#fff;background:linear-gradient(135deg,var(--navy),var(--navy2) 65%,#0C6E7E)}
.pl-hero h2{margin:0;font-size:20px;font-weight:900}.pl-hero p{margin:4px 0 0;font-size:12.5px;opacity:.85}
.pl-hero .hl-chips button{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.25);color:#fff}
.pl-hero .hl-chips button.on{background:#fff;color:var(--navy);border-color:#fff}
.pl-kp{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}
.pl-kp>div{background:#fff;border:1px solid var(--border);border-radius:16px;padding:12px 14px}
.pl-kp b{display:block;font-size:26px;font-weight:900;font-variant-numeric:tabular-nums;line-height:1.2}.pl-kp b small{font-size:14px;color:var(--muted);font-weight:700}
.pl-kp span{font-size:12px;color:var(--muted);font-weight:700}.pl-kp .warn{border-color:#F0C27A;background:#FFF8EA}.pl-kp .warn b{color:#9A5B00}
.pl-d{display:inline-block;font-size:11px;font-weight:800;border-radius:999px;padding:1px 7px;margin-inline-start:4px;white-space:nowrap}
.pl-d.up{background:#E6F6EE;color:#0F5A44}.pl-d.dn{background:#FDECEA;color:#8A2318}.pl-d.eq{color:var(--muted)}
.pl-g{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:14px;align-items:start}
.pl-ar{display:grid;grid-template-columns:28px minmax(0,1.1fr) minmax(0,1fr) auto;gap:10px;align-items:center;padding:7px 0;border-bottom:1px dashed var(--border)}
.pl-ar:last-of-type{border-bottom:none}.pl-ar .ic{font-size:18px;text-align:center}
.pl-ar b{display:block;font-size:13px}.pl-ar small{display:block;font-size:11.5px;color:var(--muted);font-variant-numeric:tabular-nums}
.pl-ar .bar{position:relative;height:10px;background:#F1F4F8;border-radius:999px;overflow:hidden}
.pl-ar .bar i,.pl-ar .bar s{position:absolute;inset-inline-start:0;top:0;bottom:0;border-radius:999px}
.pl-ar .bar s{background:#C9DCEB;text-decoration:none}.pl-ar .bar i{background:linear-gradient(90deg,#0C8599,#0F2849);z-index:1;height:6px;top:2px}
.pl-quiet{margin-top:10px;font-size:12px;background:#F7F8FA;border-radius:10px;padding:8px 10px;color:#475569}
.pl-gone .pl-gr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 10px;padding:7px 0;border-bottom:1px dashed var(--border)}
.pl-gone .pl-gr:last-child{border-bottom:none}.pl-gr b{font-size:13px}.pl-gr small{grid-row:2;font-size:11.5px;color:var(--muted)}.pl-gr span{grid-row:1/3;align-self:center;font-size:11.5px;font-weight:800;color:#8A2318;background:#FDECEA;border-radius:999px;padding:2px 9px}
.pl-tools{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:10px}.pl-tools .ctl{flex:1 1 220px;min-width:0}
.pl-us{display:flex;flex-direction:column;gap:6px}
.pl-u{display:grid;grid-template-columns:36px minmax(0,1.1fr) 130px 76px minmax(0,2fr);gap:10px;align-items:center;border:1px solid var(--border);border-radius:14px;padding:8px 10px;background:#fff}
.pl-u .av{width:36px;height:36px;border-radius:12px;display:grid;place-items:center;font-weight:900;color:#fff;background:var(--navy)}
.pl-u .nm b{display:block;font-size:13.5px}.pl-u .nm small{display:block;font-size:11.5px;color:var(--muted)}
.pl-u .seen{font-size:12px;font-weight:700;display:flex;align-items:center;gap:6px}.pl-u .seen i{width:8px;height:8px;border-radius:50%;background:#94A3B8;flex:0 0 auto}
.pl-u.today .seen i{background:#16A34A}.pl-u.recent .seen i{background:#E0A100}.pl-u.gone .seen i,.pl-u.never .seen i{background:#C0392B}
.pl-u.gone,.pl-u.never{background:#FFFBFA}.pl-u.never .av,.pl-u.gone .av{background:#B6463A}
.pl-u .dy{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}.pl-u .dy b{font-size:15px;color:var(--navy)}
.pl-u .tp{display:flex;flex-wrap:wrap;gap:4px}.pl-u .tp span{font-size:11.5px;background:#F1F4F8;border-radius:999px;padding:2px 8px;font-weight:700}.pl-u .tp b{color:#0C6E7E}
.pl-u .tp em{font-size:11.5px;color:var(--muted)}
.pl-note{margin-top:10px;font-size:11.5px;color:var(--muted)}
@media (max-width:900px){ .pl-g{grid-template-columns:1fr} .pl-kp{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pl-u{grid-template-columns:36px minmax(0,1fr) auto} .pl-u .dy{grid-column:3;grid-row:1} .pl-u .seen{grid-column:2/4} .pl-u .tp{grid-column:1/-1} }
@media (max-width:420px){ .pl-ar{grid-template-columns:24px minmax(0,1fr) auto} .pl-ar .bar{grid-column:2/4;grid-row:2} }

/* ===== التقرير الأسبوعي للمدير ===== */
.pl-hero.wk{background:linear-gradient(135deg,#123B33,#0F5A44 60%,#0C8599)}
.wk-ins h3{margin:0 0 8px;font-size:15px;font-weight:800}
.wk-ins div{position:relative;padding:6px 14px 6px 0;font-size:13.5px;font-weight:700;border-bottom:1px dashed var(--border)}
.wk-ins div:last-child{border-bottom:none}
.wk-ins div::before{content:"";position:absolute;inset-inline-start:0;top:13px;width:8px;height:8px;border-radius:50%;background:#94A3B8}
.wk-ins .good::before{background:#16A34A}.wk-ins .bad::before{background:#C0392B}.wk-ins .warn::before{background:#E0A100}
.wk-g{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:14px}
.wk-g .card{margin:0}
.wk-t{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.wk-t>div{background:#F7FAFC;border-radius:12px;padding:9px 10px}
.wk-t b{display:block;font-size:21px;font-weight:900;font-variant-numeric:tabular-nums;line-height:1.25}
.wk-t span{font-size:11.5px;color:var(--muted);font-weight:700}
.wk-l{display:flex;flex-wrap:wrap;gap:5px;align-items:center;margin-top:10px;font-size:12px}
.wk-l small{color:var(--muted);font-weight:700}
.wk-l span{background:#F1F4F8;border-radius:999px;padding:2px 9px;font-weight:700}.wk-l span b{color:#0C6E7E}
.wk-l.bad span{background:#FDECEA;color:#8A2318}
.wk-days{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin-top:10px}
.wk-days div{position:relative;height:66px;border-radius:10px;background:#F7FAFC;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;padding-bottom:4px}
.wk-days i{position:absolute;bottom:0;inset-inline:0;background:linear-gradient(180deg,#F2A97E,#D64532);opacity:.35}
.wk-days b{position:relative;font-size:13px;font-variant-numeric:tabular-nums}.wk-days small{position:relative;font-size:11px;color:var(--muted)}
@media (max-width:900px){ .wk-g{grid-template-columns:1fr} }
@media (max-width:420px){ .wk-t b{font-size:18px} }

/* ===== سجل الحركات: أزرار إضافية + سجل التدقيق ===== */
.lg-x{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}
.lg-x button{font:inherit;font-size:12px;font-weight:700;border:1px dashed var(--border);background:#fff;border-radius:999px;padding:4px 12px;cursor:pointer;color:var(--navy)}
.lg-x button.on{border-style:solid;background:#EEF2F6}
.au-intro{display:flex;flex-direction:column;gap:4px;background:#F4F8FB;border-color:#D9E5EF}
.au-intro b{font-size:15px}.au-intro span{font-size:12.5px;color:#475569;line-height:1.9}
.au-f{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:10px}
.au-f select.ctl{width:auto;min-width:170px}.au-f #au-q{flex:1 1 200px;min-width:0}
.au-d{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:700;color:var(--muted)}.au-d .ctl{width:auto}
.au-list{display:flex;flex-direction:column;gap:6px}
.au-r{display:grid;grid-template-columns:32px minmax(0,1fr);gap:10px;border:1px solid var(--border);border-radius:14px;padding:9px 12px;background:#fff;border-inline-start:4px solid #2563A8}
.au-r.del{border-inline-start-color:#C0392B}.au-r.bulk{background:#FFF8EA;border-inline-start-color:#E0A100}
.au-r .ic{font-size:20px;text-align:center;line-height:1.6}
.au-h{font-size:13.5px;line-height:1.7}.au-h span{color:#334}.au-h em{font-style:normal;font-size:11.5px;font-weight:800;margin-inline-start:8px;border-radius:999px;padding:1px 8px;background:#EEF2F6;white-space:nowrap}
.au-r.del .au-h em{background:#FDECEA;color:#8A2318}.au-r.bulk .au-h em{background:#FCE9C2;color:#7A5200}
.au-r small{display:block;font-size:11.5px;color:var(--muted)}
.au-ch{font-size:12.5px;margin-top:4px;line-height:1.8}.au-ch del{color:#8A2318;background:#FDECEA;border-radius:6px;padding:0 6px}.au-ch ins{color:#0F5A44;background:#E6F6EE;border-radius:6px;padding:0 6px;text-decoration:none}
.au-dt{margin-top:4px;font-size:12.5px}.au-dt summary{cursor:pointer;font-weight:700;color:#8A2318}.au-dt div{padding:2px 0;border-bottom:1px dashed var(--border)}
@media (max-width:560px){ .au-f select.ctl{min-width:0;flex:1 1 100%} .au-d{flex:1 1 45%} .au-d .ctl{flex:1;min-width:0} }

/* ===== تقويم الدراسة: الدراسة عن بعد ===== */
.sm-banner{display:flex;align-items:center;gap:12px;margin:0 0 14px;padding:10px 16px;border-radius:14px;color:#fff;
  background:radial-gradient(360px 120px at 95% 0%,rgba(201,162,39,.28),transparent),linear-gradient(110deg,var(--navy),var(--navy2))}
.sm-banner.soon{background:#EAF1FA;color:var(--navy);border:1px dashed #9DB8D8}
.sm-banner b{display:block;font-size:14.5px;font-weight:900;line-height:1.5}
.sm-banner small{display:block;font-size:12px;opacity:.85;line-height:1.5}
.sm-ic{font-size:22px;line-height:1;flex:none}
.sm-note{margin:0 0 12px;padding:8px 14px;border-radius:12px;background:#EAF1FA;color:var(--navy);font-size:13px;font-weight:700;border-inline-start:4px solid var(--blue)}
.sm-note.md{margin-bottom:14px}
.att-pulse.rm{background:radial-gradient(520px 180px at 92% 0%,rgba(201,162,39,.22),transparent),linear-gradient(120deg,var(--navy),var(--navy2))}
.att-paste-open{margin:0 0 14px}
.att-paste{border-color:#9DB8D8}
.att-paste .att-ph{gap:10px}.att-paste .att-ph h3{flex:1}
.ap-x{border:1px solid var(--border);background:#fff;border-radius:8px;width:30px;height:30px;cursor:pointer;font:inherit}
.ap-help{margin:0 0 8px;font-size:12.5px;color:var(--muted);line-height:1.8}
.ap-t{font-family:inherit;line-height:1.8;resize:vertical}
.ap-res{margin-top:12px;display:flex;flex-direction:column;gap:8px}
.ap-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:6px}
.ap-s{display:flex;align-items:center;gap:8px;flex-wrap:wrap;border:1px solid var(--border);border-radius:10px;padding:6px 10px;cursor:pointer;background:#fff}
.ap-s.on{border-color:#E8A2A2;background:#FDF3F3}
.ap-s b{font-size:13px;font-weight:800}.ap-s small{flex-basis:100%;font-size:11.5px;color:var(--muted);padding-inline-start:24px}
.ap-amb{border:1px dashed var(--border);border-radius:10px;padding:8px}
.ap-amb code,.ap-miss code{font-family:inherit;font-size:12px;background:#F4F6F9;border-radius:6px;padding:2px 8px}
.ap-amb .ap-list{margin-top:6px}
.ap-miss{display:flex;flex-wrap:wrap;gap:6px}
.ap-all{font-size:13px;font-weight:700;display:flex;gap:8px;align-items:center;margin-top:4px}
.ap-foot{font-size:12px;color:var(--muted)}
.ar-c.rm{box-shadow:inset 0 0 0 2px #fff,0 0 0 2px var(--blue)}
.ar-notes .rm{color:var(--blue);font-weight:800}
@media (max-width:640px){.sm-quick{grid-template-columns:minmax(0,1fr)}.sm-banner{padding:9px 12px}.sm-banner b{font-size:13.5px}}
.sf-day.rm{box-shadow:inset 0 0 0 2px #9DB8D8}
.wk-rm{margin:0 0 10px;padding:7px 12px;border-radius:10px;background:#EAF1FA;color:var(--navy);font-size:12.5px;font-weight:700}

/* ===== دفعة المراجعة الشاملة ===== */
/* عناوين مجموعات القائمة الجانبية (للقوائم الطويلة) */
.nav-grp{font-size:10.5px;font-weight:800;letter-spacing:.4px;color:rgba(255,255,255,.45);padding:12px 12px 4px;border-top:1px solid rgba(255,255,255,.07);margin-top:6px}
.nav-grp:first-child{border-top:none;margin-top:0;padding-top:4px}
/* سرية الإرشاد: طلبات الاطلاع وصندوق القفل */
.cs-req{border:1px solid #f3dc9b;background:#FFF8E1;color:#6b4e00;border-radius:12px;padding:9px 12px;margin-bottom:10px;display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;font-size:13px}
.cs-req b{flex:1 1 220px;font-size:13px}
.cs-req small{flex-basis:100%;font-size:12px;color:#8a6400}
.cs-req.ok{background:#E9F7F1;border-color:#bfe5d4;color:#0f6a4c}
.cs-req.ok small{color:#0f6a4c;flex-basis:auto}
.cs-req .btn{flex:0 0 auto}
.cs-lockbx{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px;border:1px dashed #d8c27a;background:#FFFBEF;color:#6b4e00;border-radius:12px;padding:12px 14px;font-size:13px;line-height:1.7;margin-top:12px}
.cs-lockbx.ok{border-style:solid;border-color:#bfe5d4;background:#E9F7F1;color:#0f6a4c}
/* نظرة المدير: بطاقات الموجهين */
.cs-cns{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px;margin:14px 0}
.cs-cn{font:inherit;text-align:right;display:flex;flex-direction:column;gap:3px;border:1.5px solid var(--border);background:#fff;border-radius:14px;padding:11px 14px;cursor:pointer;color:var(--navy)}
.cs-cn b{font-size:14px}
.cs-cn span{font-size:12.5px;color:var(--muted)}
.cs-cn em{font-style:normal;font-weight:800;color:var(--navy);font-variant-numeric:tabular-nums}
.cs-cn em.r{color:var(--red)}
.cs-cn small{font-size:11.5px;color:var(--muted)}
.cs-cn.all{background:#F4F7FB}
.cs-cn.on{border-color:var(--teal);box-shadow:0 0 0 3px rgba(29,158,117,.12)}
.cs-cn:focus-visible,.ms-tg:focus-visible,.ms-qr button:focus-visible{outline:2px solid var(--teal);outline-offset:2px}
.cs-fold{margin-top:12px}
.cs-fold > summary{cursor:pointer;font-weight:800;font-size:14px;list-style:none;display:flex;align-items:center;gap:8px}
.cs-fold > summary::-webkit-details-marker{display:none}
.cs-fold > summary:after{content:"▸";margin-inline-start:auto;color:var(--muted)}
.cs-fold[open] > summary{margin-bottom:10px}
.cs-fold[open] > summary:after{content:"▾"}
/* مكتب الوكيل: الإجراءات الجماعية */
.ds-bulk{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 10px}
/* نموذج الموظف: الدور والحساب */
.emp-acc{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--navy);line-height:1.6;cursor:pointer}
div.emp-acc{cursor:default;color:#0f6a4c;background:#E9F7F1;border-radius:10px;padding:8px 12px}
.emp-acc input{width:18px;height:18px;flex-shrink:0;accent-color:var(--teal)}
.emp-acc small{color:var(--muted,#64748b);font-weight:400}
.emp-acc-row{margin-top:12px}
.emp-les{margin-top:10px;font-size:13px;color:var(--navy);background:#F4F7FB;border-radius:10px;padding:8px 12px}
.emp-les.mut{color:#64748b}
.emp-les a,.emp-acc a{color:var(--navy);font-weight:700}
.emp-more-t{margin-top:14px;display:flex;align-items:baseline;gap:6px;flex-wrap:wrap;background:none;border:0;padding:0;font:inherit;font-size:13px;font-weight:700;color:var(--navy);cursor:pointer;text-align:right}
.emp-more-t small{font-weight:400;color:#64748b}
.emx-p{font-size:13px;color:#64748b;margin:0 0 10px;line-height:1.7}
.emx-sum{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}
.emx-sum span{font-size:13px;padding:5px 12px;border-radius:999px;background:#F4F7FB}
.emx-sum .ok{background:#E9F7F1;color:#0f6a4c}.emx-sum .up{background:#EAF1FB;color:#1d4f91}.emx-sum .er{background:#FDECEC;color:#B42318}
.emx-file{font-size:12px;color:#64748b;margin-bottom:8px;word-break:break-all}
.emx-tbl{max-height:46vh;overflow:auto}
.emx-tbl td,.emx-tbl th{font-size:12.5px;white-space:nowrap}
.emx-tbl td:last-child{white-space:normal;min-width:160px}
.emx-tbl tr.emx-er td{background:#FFF6F5;color:#B42318}
.emx-tbl tr.emx-sm td{color:#94a3b8}
.emx-warn{margin-top:8px;font-size:12.5px;color:#B42318}
.emx-acct{margin-top:12px;background:#FBF6EA;border-radius:10px;padding:10px 12px}
.btn[disabled]{opacity:.5;cursor:not-allowed}
.emp-role-hint{grid-column:1/-1;font-size:12px;color:var(--muted);background:#F4F7FB;border-radius:10px;padding:7px 12px;line-height:1.7;margin-top:-4px}
.emp-role-hint i{font-style:normal;color:#8a6400}
/* ملف الأداء: وزن المعيار */
.le-w{font-style:normal;font-size:11px;font-weight:800;color:#0f6a4c;background:#E9F7F1;border-radius:999px;padding:1px 7px;margin-inline-start:6px;white-space:nowrap;font-variant-numeric:tabular-nums}
/* مِرسال: الأقسام القابلة للطي والردود السريعة */
.ms-tg{display:flex;align-items:center;gap:6px;width:100%;border:none;background:none;font-family:inherit;text-align:right;cursor:pointer;border-top:1px solid var(--border);margin-top:4px;padding-top:12px}
.ms-tg i{font-style:normal;margin-inline-start:auto;font-size:12px}
.ms-tg:hover{color:var(--navy)}
.ms-qr{display:flex;gap:6px;overflow-x:auto;padding:8px 10px 0;scrollbar-width:none;background:#fff;border-top:1px solid var(--border)}
.ms-qr::-webkit-scrollbar{display:none}
.ms-qr button{flex:0 0 auto;font:inherit;font-size:12.5px;font-weight:700;border:1px solid var(--border);background:var(--bg);color:var(--navy);border-radius:999px;padding:5px 12px;cursor:pointer;white-space:nowrap}
.ms-qr button:hover{border-color:var(--teal);color:#0f6a4c}
.ms-qr + .ms-in{border-top:none}
.cs-mgr .cs-kp{display:grid;grid-template-columns:repeat(2,minmax(112px,1fr))}
@media (min-width:1100px){ .cs-mgr .cs-kp{grid-template-columns:repeat(4,minmax(104px,auto))} }
@media (max-width:720px){ .cs-mgr{grid-template-columns:1fr} }

/* ===== التقويم الدراسي ===== */
.cal-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}
.cal-now{display:inline-flex;align-items:center;gap:6px;margin-top:6px;font-size:13px;font-weight:800;color:var(--navy);background:#F4F7FB;border-radius:999px;padding:5px 12px}
.cal-yr{display:flex;align-items:stretch;gap:6px;flex-wrap:wrap}
.cal-yr button{font:inherit;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;min-width:74px;border-radius:12px;border:1.5px solid var(--border);background:#fff;color:var(--navy);cursor:pointer;padding:5px 12px;line-height:1.25}
.cal-yr button b{font-size:13.5px;font-weight:900}.cal-yr button small{font-size:10.5px;color:var(--muted);font-weight:600;font-variant-numeric:tabular-nums}
.cal-yr button.on{background:var(--navy);border-color:var(--navy);color:#fff}.cal-yr button.on small{color:rgba(255,255,255,.75)}
.cal-yr button.add{border-style:dashed;border-color:#9ad1bd;color:#0F6E54}.cal-yr button.add.on{background:#0F6E54;border-style:solid;color:#fff}
.cal-yr button.tdy{color:#C0392B;border-color:#f3c9c3;min-width:0}
.cal-yr button:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.cal-terms{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}
.cal-term{display:flex;gap:10px;align-items:flex-start;border:1.5px solid var(--border);border-radius:14px;padding:10px 12px;min-width:0}
.cal-term>i{font-style:normal;font-size:12px;font-weight:900;background:#EEF1FA;color:#33407a;border-radius:8px;padding:2px 9px;white-space:nowrap;flex:none}
.cal-term>div{min-width:0}.cal-term b{display:block;font-size:14px;font-variant-numeric:tabular-nums}.cal-term small{display:block;font-size:12px;color:var(--muted);line-height:1.7}
.cal-term em{display:inline-block;margin-top:3px;font-style:normal;font-size:11.5px;font-weight:800;color:#0F6E54;background:#E8F6EF;border-radius:999px;padding:1px 9px}
.cal-term.cur{border-color:#9ad1bd;background:#F2FBF7}
.cal-term.empty{border-style:dashed}.cal-term.empty b{color:var(--muted)}
.cal-g.w8{grid-template-columns:30px repeat(7,minmax(0,1fr))}
.cal-wn{display:flex;align-items:center;justify-content:center;font-size:10.5px;font-weight:900;color:#33407a;font-variant-numeric:tabular-nums}
.cal-wn:not(:empty){background:#EEF1FA;border-radius:8px;margin:6px 2px}
.cal-h.wn{font-size:9px}
.cal-lg i.st{background:#fff;box-shadow:inset 0 0 0 2px #1D9E75}.cal-lg i.en{background:#fff;box-shadow:inset 0 0 0 2px #C0392B}
.cal-lg b.wn{font-size:10px;font-weight:900;color:#33407a;background:#EEF1FA;border-radius:6px;padding:0 6px}
@media (max-width:640px){.cal-terms{grid-template-columns:1fr}}
.cal-card{padding-top:14px}
.cal-br{display:flex;gap:6px;overflow-x:auto;padding:2px 2px 8px;scrollbar-width:thin;position:sticky;top:0;z-index:5;background:#fff}
.cal-br button{flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;font:inherit;font-size:12.5px;font-weight:800;border:1.5px solid var(--border);background:#fff;color:var(--navy);border-radius:999px;padding:7px 12px;cursor:pointer;white-space:nowrap}
.cal-br button span{font-size:15px;line-height:1}
.cal-br button.on{color:#fff;border-color:transparent;box-shadow:0 4px 12px rgba(15,40,73,.18)}
.cal-br .b-start.on{background:#1D9E75}.cal-br .b-end.on{background:#C0392B}.cal-br .b-holiday.on{background:#D9822B}.cal-br .b-exam.on{background:#7C5CC4}
.cal-br .b-remote.on{background:#2563A8}.cal-br .b-staff.on{background:#64748b}.cal-br .b-erase.on{background:#334155}
.cal-hint{font-size:12.5px;color:var(--muted);background:#F8FAFC;border-radius:10px;padding:8px 12px;margin-bottom:12px;line-height:1.7}
.cal-hint.on{background:#FFF8E1;color:#6b4e00;font-weight:700}
.cal-ms{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px}
.cal-m{border:1px solid var(--border);border-radius:16px;padding:12px 10px 10px;background:#fff}
.cal-m header{display:flex;align-items:baseline;justify-content:space-between;gap:8px;padding:0 4px 8px}
.cal-m header b{font-size:16px;color:#C0392B}.cal-m header small{font-size:11.5px;color:var(--muted)}
.cal-g{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}
.cal-h{text-align:center;font-size:10.5px;font-weight:800;color:var(--muted);padding-bottom:4px}.cal-h.we{opacity:.6}
.cal-e{min-height:46px}
.cal-d{position:relative;min-height:46px;border:0;border-radius:10px;background:transparent;font:inherit;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;padding:3px 0;color:var(--navy)}
.cal-d b{font-size:14px;font-weight:700;width:26px;height:26px;line-height:26px;border-radius:50%;font-variant-numeric:tabular-nums}
.cal-d small{font-size:9.5px;color:var(--muted);line-height:1}
.cal-d:hover{background:#F4F7FB}
.cal-d:focus-visible{outline:2px solid var(--navy);outline-offset:1px}
.cal-d.we{color:#94a3b8}.cal-d.we small{opacity:.7}
.cal-d.out:not(.we){color:#b6c0cc}
.cal-d.k-holiday{background:#FCE9D2;color:#8a4b00}.cal-d.k-holiday small{color:#a8642a}
.cal-d.k-exam{background:#EDE7FB;color:#4b3591}.cal-d.k-exam small{color:#6a54b0}
.cal-d.k-remote{background:#E1ECFA;color:#1d4f8a}.cal-d.k-remote small{color:#3f6aa3}
.cal-d.k-staff{background:repeating-linear-gradient(135deg,#EEF1F5 0 6px,#E2E7EE 6px 12px);color:#475569}
.cal-d.today b{background:#C0392B;color:#fff;font-weight:900}
.cal-d.st{box-shadow:inset 0 0 0 2px #1D9E75}.cal-d.en{box-shadow:inset 0 0 0 2px #C0392B}
.cal-d .mk{position:absolute;bottom:-1px;left:50%;transform:translateX(-50%);font-style:normal;font-size:8.5px;font-weight:900;color:#fff;background:#1D9E75;border-radius:6px;padding:0 4px;line-height:13px}
.cal-d.en .mk{background:#C0392B}
.cal-d.anc{box-shadow:inset 0 0 0 2px #E8A33D;animation:calPulse 1.2s ease-in-out infinite}
@keyframes calPulse{50%{box-shadow:inset 0 0 0 4px rgba(232,163,61,.55)}}
.cal-d.ram::after{content:"";position:absolute;top:4px;right:5px;width:5px;height:5px;border-radius:50%;background:#C9A227}
.cal-lg{display:flex;flex-wrap:wrap;gap:6px 14px;margin:14px 0 4px;font-size:11.5px;color:var(--muted)}
.cal-lg span{display:inline-flex;align-items:center;gap:5px}
.cal-lg i{width:12px;height:12px;border-radius:4px;display:inline-block}
.cal-lg i.k-holiday{background:#FCE9D2;border:1px solid #f1c48f}.cal-lg i.k-exam{background:#EDE7FB;border:1px solid #c9b8f3}.cal-lg i.k-remote{background:#E1ECFA;border:1px solid #a9c4ea}
.cal-lg i.k-staff{background:repeating-linear-gradient(135deg,#EEF1F5 0 3px,#D5DCE5 3px 6px)}.cal-lg i.ram{width:7px;height:7px;border-radius:50%;background:#C9A227}.cal-lg i.today{border-radius:50%;background:#C0392B}
.cal-list{display:flex;flex-direction:column;gap:6px;margin-top:12px}
.cal-li{display:flex;align-items:center;gap:10px;border:1px solid var(--border);border-radius:12px;padding:8px 12px}
.cal-li .ic{font-size:18px}.cal-li div{flex:1;min-width:0}.cal-li b{display:block;font-size:13px}.cal-li small{font-size:11.5px;color:var(--muted)}
.cal-li button{border:0;background:#F4F7FB;color:var(--muted);width:30px;height:30px;border-radius:8px;cursor:pointer;font-size:13px;flex-shrink:0}
.cal-li button:hover{background:#FDE4E0;color:#C0392B}
.cal-names{flex-wrap:wrap;margin-bottom:12px}
.cal-from{display:block;font-size:11.5px;color:var(--muted);margin-top:4px}
.sm-banner.cal{background:radial-gradient(360px 120px at 95% 0%,rgba(255,255,255,.18),transparent),linear-gradient(110deg,#9A4F12,#D9822B);color:#fff}
.sm-banner.cal.soon{background:#FFF6EA;color:#6b3d00;border:1px dashed #E8B27A}
@media (max-width:720px){
  .cal-ms{grid-template-columns:minmax(0,1fr)}
  .cal-d,.cal-e{min-height:48px}
  .cal-tabs button{padding:9px 12px}
}
@media (prefers-reduced-motion:reduce){.cal-d.anc{animation:none}}

/* ===== القوائم: شريط أيقونات (كمبيوتر) وشريط سفلي زجاجي (جوال) ===== */
.sidebar-head{display:flex;align-items:center;gap:10px}
.sh-t{min-width:0;flex:1}
.sh-t .b{white-space:nowrap}
.sh-t .m{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(min-width:861px){ .sidebar-head{padding:16px 12px} .nav-tg{width:32px;height:32px;font-size:15px} .sh-t .b{font-size:12.5px} }
.nav-tg{flex:none;width:36px;height:36px;border-radius:10px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.06);color:#fff;font-size:17px;cursor:pointer;display:grid;place-items:center}
.nav-tg:hover{background:rgba(255,255,255,.14)}
.nav-tg:focus-visible,.nav-item:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.nav-item .lb{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#nav-tip{position:fixed;transform:translateY(-50%);z-index:300;background:var(--navy);color:#fff;font:700 13px inherit;font-family:inherit;padding:6px 12px;border-radius:8px;box-shadow:0 8px 22px rgba(15,40,73,.28);white-space:nowrap;pointer-events:none}
#nav-tip::after{content:"";position:absolute;right:-6px;top:50%;margin-top:-6px;border:6px solid transparent;border-right:0;border-left-color:var(--navy)}
@media(min-width:861px){
  .sidebar{transition:width .2s ease}
  .app-shell.rail .sidebar{width:68px}
  .app-shell.rail .sidebar-head{padding:14px 0;justify-content:center}
  .app-shell.rail .sh-t,.app-shell.rail .sidebar-foot{display:none}
  .app-shell.rail .sidebar-nav{padding:8px 6px}
  .app-shell.rail .nav-item{justify-content:center;padding:10px 0;gap:0}
  .app-shell.rail .nav-item .lb{display:none}
  .app-shell.rail .nav-item .ic{font-size:19px}
  .app-shell.rail .nav-grp{font-size:0;height:0;padding:0;margin:8px 10px;border-top:1px solid rgba(255,255,255,.16)}
  .app-shell.rail .nav-grp:first-child{display:none}
}
@media(max-width:860px){ .nav-tg{display:none} }
@media(prefers-reduced-motion:reduce){ .sidebar{transition:none} }

.tbar{display:none}
@media(max-width:860px){
  .tbar{position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:55;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));
    padding:7px 6px;border-radius:30px;background:rgba(255,255,255,.96);border:1px solid rgba(15,40,73,.08);
    box-shadow:0 10px 34px rgba(15,40,73,.22),inset 0 1px 0 rgba(255,255,255,.9),inset 0 -1px 0 rgba(15,40,73,.06)}
  @supports ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){
    .tbar{background:linear-gradient(180deg,rgba(255,255,255,.58),rgba(255,255,255,.34));-webkit-backdrop-filter:blur(22px) saturate(185%);backdrop-filter:blur(22px) saturate(185%);border-color:rgba(255,255,255,.65)}
  }
  .tbar button{border:0;background:none;display:flex;flex-direction:column;align-items:center;gap:2px;font:inherit;font-size:10.5px;font-weight:800;color:#334155;padding:3px 0;min-width:0;cursor:pointer;-webkit-tap-highlight-color:transparent}
  .tbar button span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .tbar button i{font-style:normal;font-size:21px;line-height:1;width:52px;max-width:100%;height:32px;display:grid;place-items:center;border-radius:999px;transition:background .15s}
  .tbar button.on{color:var(--navy)}
  .tbar button.on i{background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(255,255,255,.62));box-shadow:0 2px 10px rgba(15,40,73,.16),inset 0 1px 0 #fff;border:1px solid rgba(255,255,255,.9)}
  .tbar button:active i{transform:scale(.94)}
  .tbar button:focus-visible{outline:2px solid var(--navy);outline-offset:-2px;border-radius:14px}
  .content{padding-bottom:calc(104px + env(safe-area-inset-bottom))}
  /* الأزرار العائمة في الأقسام ترتفع فوق الشريط */
  .act-cap,.le-cap,.hc-cap,.ch-cap,.rv-cap,.cs-cap,.ds-acts,.de-hero .ds-cap,.mr-hero .ds-cap{bottom:calc(96px + env(safe-area-inset-bottom))!important}
  .pi-tray{bottom:calc(92px + env(safe-area-inset-bottom))!important}
}
@media print{ .tbar,.nav-tg,#nav-tip{display:none!important} }

/* ===== هوية مدارس البنات: لون المرحلة على زي الطالبات الرسمي + فضي لؤلؤي (بدل الذهبي) =====
   الألوان ذات المعنى (الأحمر للغياب والتنبيه، والأخضر للحضور) لا تتغير، وأقسام المكاتب تبقى بألوانها الخاصة */
html[data-kind="girls"]{--gold:#CDD3DE}
html[data-kind="girls"][data-stage="primary"]{--navy:#8E2F56;--navy2:#B2537A}
html[data-kind="girls"][data-stage="middle"]{--navy:#4B5A2A;--navy2:#6E7F43}
html[data-kind="girls"][data-stage="secondary"]{--navy:#1F2560;--navy2:#3B3F86}
html[data-kind="girls"] .nav-item.active{color:var(--navy)}
/* داخل الصفحات (البنات): ألوان الهوية — الكحلي والفحمي والذهبي — تتبع لون المرحلة والفضي اللؤلؤي.
   ألوان المعنى (الحضور والغياب والتأخر) وطابع الأقسام الخاص (الفلّين، العيادة، الإرشاد…) تبقى كما هي. */
html[data-kind="girls"]{--navyD:color-mix(in srgb,var(--navy) 72%,#000);--tint:color-mix(in srgb,var(--navy) 9%,#fff);--tint2:color-mix(in srgb,var(--navy) 30%,#fff)}
html[data-kind="girls"] .ds-hero,html[data-kind="girls"] .de-hero,html[data-kind="girls"] .mr-hero,html[data-kind="girls"] .le-hero.ro,html[data-kind="girls"] .th-boss{background:linear-gradient(125deg,var(--navyD) 0%,var(--navy) 55%,var(--navy2) 100%)}
html[data-kind="girls"] .act-stage{background:radial-gradient(120% 140% at 100% 0%,var(--navy2) 0%,var(--navy) 55%,var(--navyD) 100%)}
html[data-kind="girls"] .ds-hero::after{background:radial-gradient(circle at 70% 0%,rgba(255,255,255,.16),transparent 45%)}
html[data-kind="girls"] .th-boss{color:#EEF1F6}
html[data-kind="girls"] .ds-kp div.hot,html[data-kind="girls"] .ds-cap2{background:var(--gold);border-color:var(--gold);color:var(--navyD)}
html[data-kind="girls"] .fx-hero .ds-kp div.hot{background:#fff;color:#7A5B12;border-color:#fff}
html[data-kind="girls"] .ds-cap{color:var(--navyD)}
@media (max-width:760px){html[data-kind="girls"] .ds-cap{background:var(--navy);color:#fff}}
html[data-kind="girls"] .de-now button{border-color:var(--tint2);background:var(--tint);color:var(--navy)}
html[data-kind="girls"] .de-t .av{background:var(--tint);color:var(--navy)}
html[data-kind="girls"] .de-t em,html[data-kind="girls"] .de-v .dt b{color:var(--navy)}
html[data-kind="girls"] .de-t button{background:var(--navy)}
html[data-kind="girls"] .mr-c .dt{background:var(--tint)}
html[data-kind="girls"] .mr-c .dt b,html[data-kind="girls"] .mr-inv span,html[data-kind="girls"] .cal-wn,html[data-kind="girls"] .cal-term>i,html[data-kind="girls"] .cal-lg b.wn{color:var(--navy)}
html[data-kind="girls"] .mr-inv span,html[data-kind="girls"] .cal-wn:not(:empty),html[data-kind="girls"] .cal-term>i,html[data-kind="girls"] .cal-lg b.wn{background:var(--tint)}
html[data-kind="girls"] .tbar button.on i{border-color:rgba(205,211,222,.95)}

/* ===== الاتصال المؤسسي: أربع غرف ===== */
.cm-hero{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;border-radius:20px;padding:18px 22px;margin-bottom:12px;color:#fff;position:relative;overflow:hidden}
.cm-hero h1{margin:0;font-size:22px;font-weight:900}.cm-hero p{margin:4px 0 0;font-size:13px;opacity:.9}
.cm-hero .btn-primary{background:#fff;color:#1b2a3d;border-color:#fff}
.cm-circ{background:linear-gradient(125deg,#22303f,#3c5068)}
.cm-ann{background:linear-gradient(125deg,#6e4423,#a8743f)}
.cm-lib{background:linear-gradient(125deg,#33241a,#6b4a2b)}
.cm-tools{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:12px}
.cm-tools .ctl{flex:1 1 240px;max-width:420px}
.cm-lg{display:flex;gap:12px;flex-wrap:wrap;font-size:12px;color:var(--muted);margin-inline-start:auto}
.cm-lg span{display:inline-flex;align-items:center;gap:5px}.cm-lg i{width:10px;height:14px;border-radius:2px;display:inline-block}
.cm-lg i.bx-m,.bx-tag.bx-m{background:#0F6E54}.cm-lg i.bx-e,.bx-tag.bx-e{background:#2563A8}.cm-lg i.bx-s,.bx-tag.bx-s{background:var(--navy)}
/* دولاب الملفات */
.bx-shelf{background:linear-gradient(180deg,#F3EEE6,#EAE2D5);border:1px solid #DDD2C2;border-radius:16px;padding:12px 14px 0;margin-bottom:14px}
.bx-shelf h3{margin:0 0 10px;font-size:14px;color:#5a4632}.bx-shelf h3 small{font-weight:600;color:#8a7660;font-size:12px}
.bx-row{display:flex;gap:9px;align-items:flex-end;overflow-x:auto;padding:4px 2px 0;min-height:216px;scrollbar-width:thin}
.bx-board{height:14px;margin:0 -14px;border-radius:0 0 16px 16px;background:linear-gradient(180deg,#9b7651,#7a5838);box-shadow:inset 0 2px 0 rgba(255,255,255,.18)}
.bx{--k:var(--navy);flex:0 0 auto;position:relative;width:62px;height:204px;border:0;border-radius:4px 4px 2px 2px;cursor:pointer;font:inherit;padding:10px 6px 0;display:flex;flex-direction:column;align-items:center;gap:8px;
  background:linear-gradient(90deg,rgba(0,0,0,.28) 0,rgba(0,0,0,.05) 7px,rgba(255,255,255,.08) 50%,rgba(0,0,0,.18) 100%),var(--k);color:#fff;box-shadow:0 3px 8px rgba(40,25,10,.25);transition:transform .15s}
.bx:hover,.bx:focus-visible{transform:translateY(-6px)}.bx:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.bx.bx-m{--k:#0F6E54}.bx.bx-e{--k:#2563A8}.bx.bx-s{--k:var(--navy)}
.bx .no{background:#fff;color:#1b2a3d;font-size:10.5px;font-weight:900;border-radius:3px;padding:3px 4px;width:100%;text-align:center;font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bx .tt{writing-mode:vertical-rl;font-size:12.5px;font-weight:800;line-height:1.3;max-height:112px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bx .sr{font-size:8.5px;opacity:.85;margin-top:auto;white-space:nowrap}
.bx .hole{width:22px;height:22px;border-radius:50%;background:radial-gradient(circle at 50% 40%,rgba(0,0,0,.45),rgba(0,0,0,.2));box-shadow:inset 0 2px 3px rgba(0,0,0,.5),0 1px 0 rgba(255,255,255,.25);margin-bottom:10px}
.bx .rib{position:absolute;top:-2px;left:8px;width:9px;height:30px;background:#D64532;clip-path:polygon(0 0,100% 0,100% 100%,50% 78%,0 100%);box-shadow:0 2px 3px rgba(0,0,0,.25)}
.bx-meta{display:flex;gap:10px;flex-wrap:wrap;align-items:center;font-size:12px;color:var(--muted)}
.bx-tag{color:#fff;border-radius:999px;padding:2px 10px;font-weight:800;font-size:11.5px}
.bx-title{font-size:18px;margin:10px 0 6px;color:var(--navy)}
.bx-att{margin:8px 0}.bx-miss{margin-top:8px;font-size:13px}.bx-miss summary{cursor:pointer;font-weight:700}
.bx-files{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}
/* الأخبار للزملاء */
.nw-hero{padding-bottom:20px}
.nw-imgs{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px;margin:12px 0}
.nw-imgs img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px;cursor:zoom-in}
/* لوحة الفلّين */
.cork{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:22px 18px;padding:26px 20px;border-radius:18px;border:10px solid #8a5a33;
  background:radial-gradient(#b98552 1px,transparent 1.5px) 0 0/9px 9px,radial-gradient(#a8743f 1px,transparent 1.5px) 4px 5px/11px 11px,#C9965F;box-shadow:inset 0 2px 10px rgba(0,0,0,.25)}
.cork.sm{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));border-width:6px;padding:16px;margin-top:10px}
.cork-empty{grid-column:1/-1;text-align:center;color:#fff;font-weight:800;text-shadow:0 1px 2px rgba(0,0,0,.35);padding:20px}
.an{position:relative;background:var(--c);transform:rotate(var(--r));padding:22px 14px 12px;border-radius:3px;box-shadow:0 8px 14px rgba(60,35,10,.28);color:#3a2e1c;min-height:120px}
.an h3{margin:0 0 6px;font-size:15px;line-height:1.5}.an p{margin:0 0 8px;font-size:13px;line-height:1.7}.an small{font-size:11.5px;color:#6b5a3e;font-weight:700}
.an .pin{position:absolute;top:6px;left:50%;width:16px;height:16px;margin-left:-8px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#ff8a7a,#C0392B 60%,#7a1d14);box-shadow:0 3px 4px rgba(0,0,0,.35)}
.an.old{opacity:.6;filter:grayscale(.4)}
.an-x{position:absolute;top:6px;inset-inline-start:6px;border:0;background:rgba(255,255,255,.6);border-radius:6px;width:24px;height:24px;cursor:pointer;color:#7a1d14;font-size:12px}
.an-cols{display:flex;gap:8px;flex-wrap:wrap}.an-cols button{width:34px;height:34px;border-radius:8px;border:2px solid rgba(0,0,0,.08);cursor:pointer}.an-cols button.on{border-color:var(--navy);box-shadow:0 0 0 2px #fff inset}
/* المكتبة الرقمية */
.lb-shelf{background:linear-gradient(180deg,#F1E8DC,#E6D9C6);border:1px solid #D8C7AE;border-radius:16px;padding:12px 14px 0;margin-bottom:16px}
.lb-shelf h3{margin:0 0 10px;font-size:14px;color:#5a4130}
.lb-row{display:flex;gap:18px;overflow-x:auto;padding:6px 2px 8px;align-items:flex-end;scrollbar-width:thin}
.lb-board{height:16px;margin:0 -14px;border-radius:0 0 16px 16px;background:linear-gradient(180deg,#8d6440,#6b4a2b);box-shadow:inset 0 2px 0 rgba(255,255,255,.15)}
.lb-book{flex:0 0 132px;display:flex;flex-direction:column;gap:6px}
.lb-cv{display:block;width:132px;aspect-ratio:3/4;border:0;padding:0;border-radius:4px 8px 8px 4px;overflow:hidden;cursor:pointer;background:#fff;box-shadow:-4px 0 0 rgba(0,0,0,.18) inset,0 8px 16px rgba(50,30,10,.3);transition:transform .15s}
.lb-cv:hover,.lb-cv:focus-visible{transform:translateY(-6px) rotate(-1deg)}.lb-cv:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.lb-cv img{width:100%;height:100%;object-fit:cover;display:block}
.lb-gen{display:flex;flex-direction:column;justify-content:space-between;height:100%;padding:16px 12px;background:linear-gradient(160deg,var(--a),var(--b));color:#fff;text-align:center;position:relative}
.lb-gen::before{content:"";position:absolute;inset:8px;border:1px solid rgba(255,255,255,.35);border-radius:3px}
.lb-gen b{font-size:14px;line-height:1.6;position:relative;margin-top:18px}.lb-gen i{font-style:normal;font-size:10.5px;opacity:.85;position:relative}
.lb-t b{display:block;font-size:12.5px;line-height:1.5;color:#3a2a1c}.lb-t small{font-size:11px;color:#8a7660}
.lb-act{display:flex;gap:6px}.lb-act button{font:inherit;font-size:11.5px;font-weight:800;border:1px solid #d8c7ae;background:#fff;border-radius:8px;padding:4px 8px;cursor:pointer;color:#5a4130}
.lb-act button.x{color:#C0392B;margin-inline-start:auto}
.lb-pick{display:flex;margin-bottom:10px}
.lb-prev{display:flex;align-items:center;gap:12px;margin-bottom:10px}.lb-prev img{width:72px;border-radius:4px;box-shadow:0 4px 10px rgba(0,0,0,.2)}.lb-prev small{color:var(--muted);font-size:12px}
@media (max-width:720px){
  .cork{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));padding:18px 12px;border-width:7px;gap:18px 12px}
  .lb-book{flex-basis:112px}.lb-cv{width:112px}
}
@media (prefers-reduced-motion:reduce){.bx,.lb-cv{transition:none}}

/* ===== توقيع حضور الاجتماعات إلكترونياً ===== */
.mt-strip{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:7px}
.mt-go{font:inherit;font-size:13px;font-weight:800;border:none;border-radius:10px;padding:7px 14px;background:var(--navy);color:#fff;cursor:pointer;box-shadow:0 4px 12px rgba(15,40,73,.18)}
.mt-go small{font-weight:600;opacity:.85}
.mt-go:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.mt-done{font-size:12px;font-weight:800;color:#0F6E54;background:#E8F6EF;border-radius:999px;padding:3px 10px}
.mt-soon{font-size:11.5px;font-weight:700;color:var(--muted);background:#F1F4F8;border-radius:999px;padding:3px 10px}
.mt-cnt{font-size:11.5px;font-weight:800;color:#8a6400;background:#FFF8E1;border-radius:999px;padding:3px 10px}
.mt-cnt.ok{color:#0F6E54;background:#E8F6EF}
.mt-list{border:1px solid var(--border);border-radius:12px;padding:6px 10px;margin:8px 0;background:#fff}
.mt-list>b{display:block;font-size:12.5px;margin:2px 0 4px}
.mt-row{display:flex;align-items:center;gap:8px;padding:5px 0;border-top:1px dashed var(--border);font-size:13px}
.mt-row span{flex:1;min-width:0;font-weight:700}
.mt-row em{font-style:normal;font-size:11.5px;font-weight:800;border-radius:999px;padding:1px 9px;white-space:nowrap}
.mt-row em.ok{color:#0F6E54;background:#E8F6EF}.mt-row em.ex{color:#5b6b80;background:#EEF1F5}.mt-row em.no{color:#B23B2E;background:#FDECEA}
.mt-row button{font:inherit;font-size:11.5px;font-weight:700;border:1px solid var(--border);background:#fff;border-radius:8px;padding:2px 9px;cursor:pointer;color:var(--navy)}
.mt-who{font-size:13px;color:var(--muted);font-weight:700;margin-bottom:10px}
.mt-hint{font-size:13px;margin:0 0 8px;color:var(--muted)}
.mt-pad{position:relative;height:190px;border:2px dashed #C9D3E0;border-radius:14px;background:#fff;touch-action:none;overflow:hidden}
.mt-pad canvas{position:absolute;inset:0;width:100%;height:100%;touch-action:none;cursor:crosshair}
.mt-line{position:absolute;left:24px;right:24px;bottom:42px;border-bottom:1.5px solid #E1E7EF;pointer-events:none}
.mt-saved{display:flex;justify-content:center;align-items:center;min-height:130px;border:1px solid var(--border);border-radius:14px;background:#fff;padding:12px}
.mt-saved img{max-width:100%;max-height:110px}
.dh-wk{color:#fff;font-weight:800}
.an-sep{display:flex;align-items:center;gap:10px;margin:18px 4px 2px;color:var(--muted);font-size:12.5px;font-weight:800}
.an-sep::before,.an-sep::after{content:"";flex:1;border-top:1.5px dashed var(--border)}

/* ===== الجدول العام (كل الفصول أو كل المعلمين): أيام × حصص، والانتظار داخل جدول المعلمين ===== */
.ta-hd{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:10px}
.ta-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:8px}
.ta-bar .ctl{margin:0;flex:1 1 180px;max-width:260px}
.ta-wk{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:6px;font-size:13px;font-weight:800;color:var(--navy);flex:1 1 320px;max-width:520px}
.ta-wk span{text-align:center;line-height:1.5}.ta-wk .btn{min-width:34px;margin:0}.ta-wk .btn:nth-child(4){grid-column:1/-1;justify-self:center}
.ta-lg{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 10px;font-size:11.5px;font-weight:700}
.ta-lg span{border-radius:8px;padding:3px 9px;border:1px solid var(--border);background:#fff;color:var(--muted)}
.ta-lg .l{background:#EEF3FA;color:var(--navy)}.ta-lg .sb{background:#F1F5F9;border-style:dashed}.ta-lg .cv{background:#FFF4DB;border-color:#F0D58C;color:#7A5200}
.ta-lg .abs{background:repeating-linear-gradient(135deg,#fff 0 4px,#EEF1F5 4px 8px)}.ta-lg .nc{background:#FDECEA;border-color:#F5C2BC;color:#A32A1E}
.ta-wrap{overflow:auto;max-height:72vh;border:1px solid var(--border);border-radius:12px;-webkit-overflow-scrolling:touch}
.ta-t{border-collapse:separate;border-spacing:0;font-size:11px;min-width:max-content}
.ta-t th,.ta-t td{border-bottom:1px solid #EEF1F5;border-left:1px solid #EEF1F5;padding:3px 2px;text-align:center;vertical-align:middle}
.ta-t thead th{position:sticky;top:0;z-index:2;background:#F4F7FB;color:var(--navy);font-weight:800}
.ta-t thead tr:nth-child(2) th{top:31px;font-size:10.5px;color:var(--muted)}
.ta-t .dh{font-size:12px;height:31px;box-sizing:border-box}.ta-t .dh small{display:block;font-size:9.5px;color:var(--muted);font-weight:700}
.ta-t th.nm{position:sticky;right:0;z-index:1;background:#fff;text-align:start;padding:4px 10px;min-width:118px;max-width:150px;font-size:11.5px;font-weight:800;white-space:normal;box-shadow:-2px 0 0 #EEF1F5}
.ta-t thead th.nm{z-index:3;background:#F4F7FB}
.ta-t .ds{border-right:2px solid #C9D3E0}
.ta-t td{min-width:46px;height:38px;background:#fff}
.ta-t th.today,.ta-t td.today{background:#FFFBEB}
.ta-t td.l{--h:#64748b;background:color-mix(in srgb,var(--h) 10%,#fff)}
.ta-t td b{display:block;font-size:11px;line-height:1.2;color:color-mix(in srgb,var(--h,#0F2849) 80%,#000)}
.ta-t td span{display:block;font-size:9.5px;color:var(--muted);line-height:1.2}
.ta-t td i{display:block;font-style:normal;font-size:9px;font-weight:800;line-height:1.3}
.ta-t td i.cv{color:#7A5200}.ta-t td i.nc{color:#B91C1C}
.ta-t td.sb{background:#F8FAFC;box-shadow:inset 0 0 0 1px #CBD5E1;border-radius:6px}.ta-t td.sb b{color:#475569;font-size:10.5px}
.ta-t td.cv{background:#FFF4DB;box-shadow:inset 0 0 0 1px #F0D58C}.ta-t td.cv b{color:#7A5200}
.ta-t td.abs{background:repeating-linear-gradient(135deg,#fff 0 4px,#EEF1F5 4px 8px)}.ta-t td.abs i{color:#64748b}
.ta-t td.ab{background:repeating-linear-gradient(135deg,#fff 0 4px,#EEF1F5 4px 8px)}
.ta-t .tot{min-width:40px;font-weight:800;color:var(--navy);background:#F8FAFC}.ta-t td.cvn{color:#7A5200;background:#FFF4DB}
.ta-t tr.ex th.nm{color:var(--muted)}
.ta-t tbody tr:hover td,.ta-t tbody tr:hover th.nm{filter:brightness(.97)}
/* جدول المعلم: خانة جدول الانتظار والانتظار الفعلي */
.tb-gc.sb{background:#F8FAFC;border:1px dashed #CBD5E1}.tb-gc.sb b{color:#475569}
.tb-gc.cov{background:#FFF4DB;border-color:#F0D58C}.tb-gc.cov b{color:#7A5200}

/* ===== المناوبة: قائمة التفقد الصباحية وقائمة الإقفال ===== */
.du-run{border-top:4px solid #E0A100}.du-run.pm{border-top-color:#3949AB}.du-run.done{border-top-color:var(--teal)}
.du-rh{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}
.du-pl{font-size:13px;font-weight:700;color:var(--navy);margin-top:2px}
.du-pg{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.du-pg b{font-size:26px;line-height:1;color:var(--navy)}.du-pg b small{font-size:14px;color:var(--muted)}
.du-st{font-size:11.5px;font-weight:800;border-radius:999px;padding:2px 10px;background:#EEF2F6;color:var(--muted);white-space:nowrap}
.du-st.done{background:#E6F6EE;color:#0F6E4E}.du-st.open{background:#FFF4DB;color:#7A5200}.du-st.late{background:#FDECEA;color:#A32A1E}
.du-bar{height:6px;border-radius:9px;background:#EEF2F6;overflow:hidden;margin:10px 0 12px}.du-bar i{display:block;height:100%;background:var(--teal);transition:width .3s}
.du-items{display:flex;flex-direction:column;gap:8px}
.du-it{display:flex;align-items:stretch;gap:6px}
.du-ck{flex:1;display:flex;align-items:center;gap:12px;min-height:52px;text-align:start;border:1.5px solid var(--border);border-radius:14px;background:#fff;padding:10px 12px;font:inherit;font-size:14px;font-weight:700;color:var(--navy);cursor:pointer}
.du-ck i{flex:0 0 28px;height:28px;border-radius:9px;border:2px solid #CBD5E1;display:grid;place-items:center;font-style:normal;font-weight:900;color:#fff}
.du-ck span{flex:1;min-width:0;line-height:1.6}.du-ck small{display:block;font-size:12px;color:#A32A1E;font-weight:700}
.du-ck em{font-style:normal;font-size:11.5px;color:var(--muted);font-weight:800;direction:ltr}
.du-it.ok .du-ck{border-color:#9ED9C3;background:#F1FAF6}.du-it.ok .du-ck i{background:var(--teal);border-color:var(--teal)}
.du-it.iss .du-ck{border-color:#F5C2BC;background:#FFF7F6}.du-it.iss .du-ck i{background:#C0392B;border-color:#C0392B}
.du-ck:disabled{cursor:default;opacity:.9}
.du-iss{flex:0 0 46px;border:1.5px solid var(--border);border-radius:14px;background:#fff;color:#B45309;font-size:16px;cursor:pointer}
.du-ck:focus-visible,.du-iss:focus-visible,.du-mc:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.du-note{margin-top:12px}
.du-done{margin-top:12px;display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;background:#E6F6EE;color:#0F5E44;border-radius:12px;padding:10px 14px;font-weight:800;font-size:13.5px}
.du-md{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;margin-bottom:14px}
.du-mc{display:flex;align-items:center;gap:12px;text-align:start;border:1.5px solid #F0D58C;background:#FFFBEB;border-radius:16px;padding:12px 14px;font:inherit;color:var(--navy);cursor:pointer}
.du-mc>span{font-size:24px}.du-mc div{flex:1;min-width:0}.du-mc b{display:block;font-size:14px}.du-mc small{display:block;font-size:12px;color:var(--muted);margin-top:2px}
.du-mc em{font-style:normal;font-size:11.5px;font-weight:800;border-radius:999px;padding:2px 9px;background:#fff}
.du-mc.done{border-color:#9ED9C3;background:#F1FAF6}.du-mc.late{border-color:#F5C2BC;background:#FFF7F6}.du-mc.late em{color:#A32A1E}
.du-th{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;flex-wrap:wrap}
.du-dn{flex:0 1 360px}
.du-kp{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:12px}
.du-kp div{background:var(--bg);border-radius:12px;padding:10px;text-align:center}.du-kp b{display:block;font-size:22px;color:var(--navy)}.du-kp span{font-size:12px;color:var(--muted);font-weight:700}
.du-kp .g b{color:var(--teal)}.du-kp .r{background:#FDECEA}.du-kp .r b{color:#A32A1E}
.du-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr));gap:14px}
.du-row{display:grid;grid-template-columns:minmax(0,1fr) 70px auto auto;align-items:center;gap:8px 10px;padding:10px 0;border-bottom:1px solid #EEF1F5}
.du-row:last-child{border-bottom:none}
.du-who b{display:block;font-size:13.5px}.du-who small{font-size:11.5px;color:var(--muted)}
.du-mini{height:6px;border-radius:9px;background:#EEF2F6;overflow:hidden}.du-mini i{display:block;height:100%;background:var(--teal)}
.du-n{font-size:12px;font-weight:800;color:var(--muted);direction:ltr}
.du-iss-l{grid-column:1/-1;display:flex;flex-direction:column;gap:3px}.du-iss-l span{font-size:12px;color:#A32A1E;background:#FFF7F6;border-radius:8px;padding:3px 8px}.du-iss-l span.n{color:var(--navy);background:var(--bg)}
.du-rt{width:100%;border-collapse:separate;border-spacing:0 6px}.du-rt th{font-size:12px;color:var(--muted);text-align:start;padding:4px 8px}
.du-rt tbody th{color:var(--navy);font-size:13.5px;width:76px;vertical-align:top;padding-top:12px}
.du-rt td{background:var(--bg);border-radius:12px;padding:8px;vertical-align:top;min-width:240px}
.du-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:6px}
.du-chip{display:inline-flex;align-items:center;gap:6px;background:#fff;border:1px solid var(--border);border-radius:10px;padding:4px 6px 4px 10px;font-size:12.5px;font-weight:800;color:var(--navy)}
.du-chip small{font-size:11px;color:var(--muted);font-weight:700}
.du-chip button{border:none;background:#FDECEA;color:#A32A1E;border-radius:6px;width:20px;height:20px;cursor:pointer;font-size:11px}
.du-add{display:flex;flex-wrap:wrap;gap:6px}.du-add .ctl{margin:0;flex:1 1 130px;padding:6px 8px;font-size:12.5px}
/* الإشراف على الفسحة */
.rc-t tbody th{width:92px}.rc-cp{display:block;margin-top:6px;border:0;background:transparent;color:var(--teal);font:inherit;font-size:11px;cursor:pointer;padding:0;text-decoration:underline}
.rc-chip{flex-wrap:wrap}.rc-chip.head{background:color-mix(in srgb,var(--gold,#C9A227) 16%,var(--card,#fff));border-color:color-mix(in srgb,var(--gold,#C9A227) 55%,transparent);font-weight:800}
.rc-chip small{color:var(--muted);font-weight:600}.rc-chip.clash{border-color:#DC2626;background:color-mix(in srgb,#DC2626 7%,var(--card,#fff))}.rc-chip .rc-cl{color:#B91C1C;flex-basis:100%;font-size:11px}
.rc-mk{border:0;background:transparent;font:inherit;font-size:13px;cursor:pointer;padding:0 3px;opacity:.35;filter:grayscale(1);border-radius:6px}.rc-mk:hover,.rc-mk:focus-visible{opacity:1;filter:none;background:var(--bg)}
.rc-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:9px 10px;border-radius:12px;background:var(--bg);margin-bottom:6px}.rc-row .rc-hd{color:#92400E;font-size:11.5px;font-weight:700}
.rc-row.ab{background:color-mix(in srgb,#DC2626 8%,var(--bg));box-shadow:inset 0 0 0 1px color-mix(in srgb,#DC2626 35%,transparent)}
.rc-ab{color:#B91C1C;font-size:12px;font-weight:700}.rc-row select{max-width:220px;margin-inline-start:auto}
.rc-sub{font-size:12px;color:var(--teal);margin-inline-start:auto}.rc-sub button{border:0;background:transparent;cursor:pointer;color:var(--muted)}
.du-asg.rc{border-color:color-mix(in srgb,#16A34A 40%,transparent)}.du-mc.rc{cursor:default}
/* المناوبة حسب أسابيع الدراسة */
.du-mode-l{display:block;margin:14px 0 0;border:0;background:transparent;color:var(--muted);font:inherit;font-size:12px;cursor:pointer;text-decoration:underline;padding:0}.du-mode-l:hover{color:var(--teal)}
.du-mode{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:14px}
.du-mode button{text-align:start;background:var(--card,#fff);border:1.5px solid var(--border);border-radius:14px;padding:12px 14px;cursor:pointer;font:inherit;color:var(--navy);display:flex;flex-direction:column;gap:3px}
.du-mode button small{color:var(--muted);font-size:12px;line-height:1.6}.du-mode button.on{border-color:var(--teal);background:color-mix(in srgb,var(--teal) 8%,transparent);box-shadow:inset 0 0 0 1px var(--teal)}
.du-mode button:focus-visible{outline:2px solid var(--teal);outline-offset:2px}
.du-wh{display:flex;justify-content:space-between;align-items:flex-end;gap:10px;flex-wrap:wrap}.du-wd{color:var(--muted);font-size:12.5px}
.du-wks{display:flex;flex-wrap:wrap;gap:5px;margin:12px 0 6px}
.du-wks button{min-width:34px;height:32px;border-radius:9px;border:1px solid var(--border);background:var(--bg);font:inherit;font-size:12.5px;font-weight:700;color:var(--muted);cursor:pointer;font-variant-numeric:tabular-nums}
.du-wks button.f{background:color-mix(in srgb,var(--teal) 14%,transparent);color:var(--teal);border-color:color-mix(in srgb,var(--teal) 35%,transparent)}
.du-wks button.e:not(.past){border-style:dashed}.du-wks button.past{opacity:.55}.du-wks button.now{box-shadow:0 0 0 2px var(--gold,#C9A227)}
.du-wks button.on{background:var(--navy);color:#fff;border-color:var(--navy);opacity:1}
.du-lg{display:flex;flex-wrap:wrap;gap:12px;align-items:center;font-size:12px;color:var(--muted)}.du-lg span::before{content:"";display:inline-block;width:10px;height:10px;border-radius:3px;margin-inline-end:5px;vertical-align:-1px}
.du-lg .f::before{background:color-mix(in srgb,var(--teal) 30%,transparent)}.du-lg .e::before{border:1px dashed var(--muted)}.du-lg b{color:#B45309;font-weight:700}
.du-tools{margin-top:12px}
.du-rt tbody th small{display:block;color:var(--muted);font-weight:500;font-size:11px;margin-top:2px;font-variant-numeric:tabular-nums}
.du-rt td.off{color:var(--muted);font-size:12.5px;text-align:center;background:transparent;border:1px dashed var(--border)}
.du-rt tr.today th{color:var(--teal)}
.du-rot{border:1.5px solid color-mix(in srgb,var(--teal) 40%,transparent)}
.du-rw{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end;margin-bottom:12px}.du-rw label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--muted)}.du-rw span{font-size:12.5px;color:var(--navy);font-weight:700;padding-bottom:8px}
.du-rl{background:var(--bg);border-radius:12px;padding:10px}.du-rlh{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:6px}.du-rlh small{color:var(--muted);font-size:12px}
.du-ro{margin:0 0 8px;padding:0 22px 0 0;max-height:260px;overflow:auto}.du-ro li{display:flex;align-items:center;gap:4px;padding:3px 0;font-size:13px;font-variant-numeric:tabular-nums}.du-ro li span{flex:1}
.du-ro button{border:0;background:transparent;cursor:pointer;color:var(--muted);font-size:12px;padding:2px 5px;border-radius:6px}.du-ro button:disabled{opacity:.3;cursor:default}.du-ro button:hover:not(:disabled){background:var(--border)}
.du-rn{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}.du-rn label{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted)}.du-rn input{width:70px}
@media (max-width:560px){ .du-mode{grid-template-columns:1fr} }
.du-fair{display:flex;flex-wrap:wrap;gap:6px}.du-fair span{font-size:12px;background:var(--bg);border-radius:8px;padding:3px 9px;color:var(--navy)}.du-fair b{color:var(--teal)}
.du-ed{display:flex;flex-direction:column;gap:6px}
.du-er{display:flex;align-items:center;gap:6px}.du-er .ctl{margin:0;flex:1;min-width:0}.du-er.add{margin-top:8px}
.du-er .btn{padding:4px 8px}
.du-num{flex:0 0 26px;height:26px;border-radius:8px;background:var(--bg);display:grid;place-items:center;font-size:12px;font-weight:800;color:var(--muted)}
.del-x{border:none;background:#FDECEA;color:#A32A1E;border-radius:8px;width:30px;height:30px;cursor:pointer;flex:0 0 auto}
@media (max-width:560px){ .du-kp{grid-template-columns:repeat(2,minmax(0,1fr))} .du-row{grid-template-columns:minmax(0,1fr) auto auto} .du-row .du-mini{display:none} .du-rt td{min-width:200px} }
@media (prefers-reduced-motion:reduce){ .du-bar i{transition:none} }

/* ===== النقل المدرسي: كشف الحافلات اليومي بأربع محطات ===== */
.tr-al{display:flex;flex-direction:column;gap:6px;margin-top:12px}
.tr-al div{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:baseline;border-radius:12px;padding:9px 12px;font-size:13px}
.tr-al .crit{background:#FDECEA;border:1.5px solid #F5C2BC;color:#8A2318}.tr-al .warn{background:#FFF6E0;color:#7A5200}
.tr-al b{font-weight:900}
.tr-ok{margin-top:12px;background:#E6F6EE;color:#0F5E44;border-radius:12px;padding:9px 12px;font-weight:800;font-size:13px}
.tr-bc{display:flex;gap:6px;overflow-x:auto;padding:2px 2px 10px;margin-bottom:4px}
.tr-bc button{flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;border:1.5px solid var(--border);background:#fff;border-radius:999px;padding:7px 14px;font:inherit;font-size:13px;font-weight:800;color:var(--navy);cursor:pointer}
.tr-bc button small{color:var(--muted)}.tr-bc button i{font-style:normal;background:#C0392B;color:#fff;border-radius:999px;padding:0 7px;font-size:11px}
.tr-bc button.on{background:var(--navy);border-color:var(--navy);color:#fff}.tr-bc button.on small{color:#cfd8e3}
.tr-bh{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:10px}
.tr-bh small{font-size:12px;color:var(--muted)}.tr-bh h3 small{font-size:12px;font-weight:700}
.tr-trips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:12px}
.tr-trip{display:flex;flex-direction:column;gap:6px}.tr-tl{font-size:12.5px;font-weight:900;color:var(--navy);padding-inline-start:4px}
.tr-sh{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.tr-sh div{background:var(--bg);border-radius:12px;padding:8px;text-align:center;display:flex;flex-direction:column;gap:2px;align-items:center}
.tr-sh b{font-size:20px;color:var(--navy)}.tr-sh b small{font-size:12px;color:var(--muted)}.tr-sh span{font-size:11.5px;color:var(--muted);font-weight:700}
.link-x{border:none;background:none;color:var(--teal);font:inherit;font-size:11.5px;font-weight:800;cursor:pointer;padding:0}
.tr-list{display:flex;flex-direction:column}
.tr-r{display:grid;grid-template-columns:minmax(130px,1fr) minmax(0,3fr);gap:8px 12px;align-items:center;padding:9px 0;border-bottom:1px solid #EEF1F5}
.tr-r:last-child{border-bottom:none}.tr-r.abs{opacity:.75}
.tr-n b{display:block;font-size:13.5px}.tr-n small{font-size:11.5px;color:var(--muted)}.tr-n i{font-style:normal;color:#A32A1E;font-weight:800}
.tr-sts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.tr-g{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.tr-g+.tr-g{position:relative}.tr-g+.tr-g::before{content:'';position:absolute;inset-inline-start:-7px;top:6px;bottom:6px;border-inline-start:1.5px solid #E2E8F0}
.tr-b{display:flex;align-items:center;justify-content:center;gap:5px;min-height:40px;border:1.5px dashed #CBD5E1;border-radius:12px;background:#fff;font:inherit;cursor:pointer;color:var(--muted);padding:4px 6px}
.tr-b span{font-size:15px}.tr-b em{font-style:normal;font-size:11px;font-weight:700;line-height:1.2}
.tr-b.on{border-style:solid;border-color:#9ED9C3;background:#F1FAF6;color:#0F5E44}.tr-b.on em{font-size:12.5px;font-weight:900;direction:ltr}
.tr-b:disabled{cursor:default}.tr-b:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.tr-lk{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;background:var(--bg);border-radius:12px;padding:10px 12px;margin-bottom:10px}
.tr-lk.on{background:#EEF6FB}.tr-lk b{display:block;font-size:13.5px}.tr-lk small{font-size:12px;color:var(--muted)}
.tr-rs{display:flex;flex-wrap:wrap;gap:6px}.tr-rs span{font-size:12px;background:var(--bg);border-radius:8px;padding:3px 9px;font-weight:700;color:var(--navy)}.tr-rs small{color:var(--muted)}
.tr-sel{margin:6px 0 0;padding:5px 8px;font-size:12.5px;max-width:220px}
@media (max-width:640px){ .tr-r{grid-template-columns:1fr} .tr-sts{gap:10px}.tr-g+.tr-g::before{inset-inline-start:-6px} .tr-b em{font-size:10.5px} }

/* ===== نداء الطلاب ===== */
.pk-list{display:flex;flex-direction:column}
.pk-r{display:flex;align-items:center;justify-content:space-between;gap:8px 12px;flex-wrap:wrap;padding:10px 0;border-bottom:1px solid #EEF1F5}
.pk-r:last-child{border-bottom:none}
.pk-n{flex:1 1 220px;min-width:0}.pk-n b{display:block;font-size:14px}.pk-n small{display:block;font-size:12px;color:var(--muted)}
.pk-t{font-size:12.5px;font-weight:800;color:var(--muted);white-space:nowrap}
.pk-r.called .pk-t{color:#7A5200}.pk-r.late{background:#FFF6E0;border-radius:12px;padding-inline:10px}.pk-r.late .pk-t::after{content:' · لم يُؤكَّد';color:#B45309}
.pk-r.blocked{background:#FDECEA;border-radius:12px;padding-inline:10px}
.pk-blk{margin-top:4px;font-size:12.5px;font-weight:900;color:#8A2318}
.pk-r.received .pk-t,.pk-r.closed .pk-t{color:#0F6E4E}
.pk-g{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;background:var(--bg);border-radius:12px;padding:10px 12px;font-size:13px;margin-bottom:8px}
.pk-ov{position:fixed;inset:0;z-index:400;background:rgba(15,40,73,.55);display:grid;place-items:center;padding:16px}
.pk-fr{position:relative;width:min(100%,980px);height:min(88vh,760px);background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.3)}
.pk-fr iframe{width:100%;height:100%;border:0}
.pk-x{position:absolute;top:8px;left:8px;z-index:2;border:none;background:#fff;border-radius:10px;width:34px;height:34px;font-size:16px;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.2)}
.du-pk{display:block;width:100%;text-align:start;margin-bottom:10px;border:1.5px solid #F0D58C;background:#FFFBEB;border-radius:12px;padding:10px 12px;font:inherit;font-size:13px;font-weight:800;color:#7A5200;cursor:pointer}

/* ===== نسخ الجدول والمولّد ===== */
.tv-steps{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}
.tv-steps button{border:1px solid var(--border);background:#fff;border-radius:12px;padding:9px 14px;font:inherit;font-size:13.5px;font-weight:800;color:var(--muted);cursor:pointer}
.tv-steps button small{background:var(--bg);border-radius:8px;padding:1px 7px;font-size:11.5px;margin-inline-start:4px}
.tv-steps button.on{background:var(--navy);border-color:var(--navy);color:#fff}.tv-steps button.on small{background:rgba(255,255,255,.18)}
.tv-steps button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.tv-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:10px;margin-top:12px}
.tv-c{border:1.5px solid var(--border);border-radius:14px;padding:12px 14px;display:flex;flex-direction:column;gap:7px;background:#fff}
.tv-c.active{border-color:#9ED9C3;background:#F4FBF8}.tv-c.scheduled{border-color:#A9C6EA;background:#F5F9FE}.tv-c.archived{opacity:.85;background:var(--bg)}
.tv-c.sel{box-shadow:0 0 0 2px var(--gold)}
.tv-h{display:flex;align-items:center;justify-content:space-between;gap:8px}.tv-h b{font-size:15px}
.tv-st{font-size:11.5px;font-weight:800;border-radius:999px;padding:2px 10px;background:#EEF1F5;color:#475569;white-space:nowrap}
.tv-st.g{background:#DDF3EA;color:#0F5E44}.tv-st.b{background:#E1ECFA;color:#1D4F91}.tv-st.m{background:#E5E7EB;color:#4B5563}
.tv-meta{font-size:12px;color:var(--muted);font-weight:700}
.tv-m{display:flex;flex-wrap:wrap;gap:6px}.tv-m span{font-size:11.5px;background:var(--bg);border-radius:8px;padding:3px 8px;color:var(--muted);font-weight:700}.tv-m b{color:var(--navy)}
.tv-old{font-size:12.5px;font-weight:800;color:#8A5A00;background:#FFF6E0;border-radius:10px;padding:7px 10px;display:flex;flex-wrap:wrap;align-items:center;gap:6px;justify-content:space-between}
.tv-old span{display:flex;gap:6px;flex-wrap:wrap}
.tv-a{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.tv-sch{display:flex;flex-wrap:wrap;gap:8px;align-items:center;background:var(--bg);border-radius:10px;padding:8px}.tv-sch label{display:flex;gap:6px;align-items:center;font-size:13px;font-weight:700}.tv-sch small{flex-basis:100%;color:var(--muted)}
.tv-sum{font-size:13px;font-weight:700;background:#FFF6E0;color:#6B4A00;border-radius:10px;padding:8px 12px;margin:8px 0}.tv-sum.same{background:#E9F7F1;color:#0F5E44}
.ta-t td.chg{box-shadow:inset 0 0 0 2px #E0A100;border-radius:6px}.ta-t td.x{background:repeating-linear-gradient(135deg,#fff 0 4px,#FFF1CC 4px 8px)}
.tv-box{border-radius:12px;padding:10px 12px;margin-top:10px;font-size:13px;line-height:1.8;background:var(--bg)}
.tv-box.bad{background:#FDECEA;color:#8E2418;font-weight:700}.tv-box.warn{background:#FFF6E0;color:#6B4A00}
.tv-box summary{cursor:pointer;font-weight:800}
.tv-subs{display:flex;flex-direction:column;gap:6px}
.tv-sb{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:4px 0;border-bottom:1px solid #EEF1F5}.tv-sb b{min-width:130px;font-size:13.5px}
.tv-pf{border:1px solid var(--border);background:#fff;border-radius:999px;padding:5px 11px;font:inherit;font-size:12px;font-weight:700;color:var(--muted);cursor:pointer;display:inline-flex;gap:5px;align-items:center}
.tv-pf.on{background:#E1ECFA;border-color:#A9C6EA;color:#1D4F91}.tv-pf.must{background:#0F2849;border-color:#0F2849;color:#fff}
.tv-pf i{font-style:normal;font-size:10.5px;opacity:.85}.tv-pf:disabled{opacity:.45;cursor:not-allowed}
select.tv-pf{padding:5px 10px;height:auto;width:auto}
.tv-ld{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.tv-ld span{background:#fff;border:1px solid var(--border);border-radius:10px;padding:4px 9px;font-size:12px}.tv-ld b{color:var(--navy)}
.tv-cls{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end;margin-bottom:10px}.tv-cls .tb-in{min-width:220px;flex:1}
.tv-cnt{border-radius:12px;padding:6px 12px;font-size:13px;font-weight:700;background:var(--bg)}.tv-cnt b{font-size:18px}.tv-cnt small{display:block;color:var(--muted);font-size:11px}
.tv-cnt.g{background:#E9F7F1;color:#0F5E44}.tv-cnt.r{background:#FDECEA;color:#8E2418}.tv-cnt.w{background:#FFF6E0;color:#6B4A00}
.tv-at{display:flex;flex-direction:column;gap:6px}
.tv-ar{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1.4fr) 76px 30px;gap:6px;align-items:center}
.tv-ar.add{margin-top:10px;padding-top:10px;border-top:1px dashed var(--border);grid-template-columns:minmax(0,1.1fr) minmax(0,1.4fr) 76px auto}
.ctl.num{text-align:center}.ctl.miss{border-color:#E0A100;background:#FFF9EA}
.tv-rules{display:flex;flex-direction:column;gap:8px;margin-top:10px}
.tv-rl{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;border:1px solid var(--border);border-radius:12px;padding:10px 12px;border-inline-start:4px solid #CBD5E1}
.tv-rl.must{border-inline-start-color:var(--navy)}.tv-rl.pref{border-inline-start-color:#5B8FD6}.tv-rl.off{opacity:.75}
.tv-rt{display:flex;flex-direction:column;gap:3px;flex:1;min-width:200px}.tv-rt b{font-size:14px}.tv-rt small{color:var(--muted);font-size:12px}
.tv-rc{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:700;flex-wrap:wrap}.tv-rc .ctl{width:auto;min-width:64px;padding:4px 8px}
.tv-lrn{color:#1D4F91!important;font-weight:700}
.tv-lv{display:inline-flex;border:1px solid var(--border);border-radius:10px;padding:2px;gap:2px;background:var(--bg)}
.tv-lv button{border:0;background:none;padding:6px 11px;border-radius:8px;font:inherit;font-size:12.5px;font-weight:800;color:var(--muted);cursor:pointer}
.tv-lv button.on.must{background:var(--navy);color:#fff}.tv-lv button.on.pref{background:#E1ECFA;color:#1D4F91}.tv-lv button.on.off{background:#fff;color:var(--navy);box-shadow:0 1px 3px rgba(15,40,73,.12)}
.tv-sg{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;padding:4px 0}
.tv-chips{display:flex;flex-wrap:wrap;gap:6px}
.tv-pr{display:flex;flex-direction:column}
.tv-prr{display:grid;grid-template-columns:minmax(150px,220px) 1fr;gap:8px;padding:9px 0;border-bottom:1px solid #EEF1F5;align-items:start}
.tv-prn b{font-size:13.5px}.tv-prn small{display:block;color:var(--muted);font-size:11.5px}
.tv-prb{display:flex;flex-wrap:wrap;gap:5px;align-items:center}
.tv-offd summary{cursor:pointer;font-size:12px;font-weight:700;color:var(--muted);padding:4px 8px;border:1px dashed var(--border);border-radius:999px;list-style:none}
.tv-offd summary b{color:#A32A1E}.tv-offd[open] summary{margin-bottom:6px}
.tv-off table{border-collapse:separate;border-spacing:3px}.tv-off th{font-size:11px;color:var(--muted);font-weight:700;padding:0 3px}
.tv-off button{width:24px;height:22px;border:1px solid var(--border);border-radius:6px;background:#fff;cursor:pointer}.tv-off button.on{background:#F3B5AE;border-color:#E07A6F}
.tv-off button.day{width:34px}.tv-off button:disabled{opacity:.6}
.tv-bar{height:10px;border-radius:999px;background:var(--bg);overflow:hidden;margin-top:12px}.tv-bar i{display:block;height:100%;background:linear-gradient(90deg,var(--teal),#5B8FD6);transition:width .3s}
.tv-cmp{overflow-x:auto;margin-top:10px}.tv-cmp table{width:100%;border-collapse:collapse;font-size:13px}
.tv-cmp th,.tv-cmp td{padding:7px 10px;border-bottom:1px solid #EEF1F5;text-align:start}.tv-cmp th{color:var(--muted);font-size:12px}
.tv-cmp td:not(:first-child),.tv-cmp th:not(:first-child){text-align:center;width:120px}
.tv-cmp td.g{background:#E9F7F1;color:#0F5E44}.tv-cmp td.r{background:#FDECEA;color:#8E2418}
.tv-lvt{font-style:normal;font-size:10.5px;border-radius:6px;padding:1px 6px;background:#EEF1F5;color:#475569;margin-inline-start:4px}.tv-lvt.must{background:var(--navy);color:#fff}.tv-lvt.pref{background:#E1ECFA;color:#1D4F91}
@media (max-width:640px){
  .tv-ar{grid-template-columns:1fr 64px 30px}.tv-ar select{grid-column:1/-1;grid-row:2}
  .tv-ar.add{grid-template-columns:1fr 64px}.tv-ar.add select{grid-column:1/-1}.tv-ar.add button{grid-column:1/-1}
  .tv-prr{grid-template-columns:1fr}
  .tv-steps button{flex:1 1 calc(50% - 6px);padding:8px 10px}
}

/* ===== اللجان وفرق العمل ===== */
.cm-guide{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;background:#EEF6F3;border:1px solid #CFE6DD;border-radius:14px;padding:12px 14px;margin-top:12px}
.cm-guide b{font-size:14px}.cm-guide small{display:block;color:var(--muted);font-size:12px;margin-top:2px}
.cm-warn{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12.5px;font-weight:800;color:#8A5A00;background:#FFF6E0;border-radius:10px;padding:7px 10px;margin-top:8px}
.cm-g{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,420px),1fr));gap:12px;margin-top:12px;align-items:start}
.cm-c{background:#fff;border:1px solid var(--border);border-radius:16px;padding:14px 16px;display:flex;flex-direction:column;gap:8px;border-inline-start:4px solid var(--navy)}
.cm-c.team{border-inline-start-color:var(--teal)}
.cm-h{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.cm-h b{display:block;font-size:16px}
.cm-k{font-size:11.5px;font-weight:800;color:var(--muted)}
.cm-meet{font-size:11.5px;font-weight:800;background:var(--bg);border-radius:999px;padding:3px 10px;white-space:nowrap;color:var(--muted)}
.cm-goal{margin:0;font-size:12.5px;color:#475569;line-height:1.8}
.cm-ms{display:flex;flex-wrap:wrap;gap:6px}
.cm-m{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border);border-radius:999px;padding:3px 10px 3px 4px;font-size:12.5px;font-weight:700;background:#fff}
.cm-m i{font-style:normal;font-size:10.5px;font-weight:800;background:var(--bg);color:var(--muted);border-radius:999px;padding:2px 8px}
.cm-m.k i{background:#E1ECFA;color:#1D4F91}.cm-m.e{border-style:dashed;border-color:#E0A100;color:#8A5A00;background:#FFF9EA}
.cm-t summary{cursor:pointer;font-size:13px;font-weight:800;color:var(--navy)}
.cm-t ol{margin:8px 0 0;padding-inline-start:22px;font-size:12.5px;line-height:1.85;color:#334155}
.cm-rules{margin-top:8px;font-size:12px;color:#475569;line-height:1.8;background:var(--bg);border-radius:10px;padding:8px 10px}.cm-rules b{display:block;margin-bottom:2px}
.cm-ref{display:block;margin-top:6px;color:var(--muted);font-size:11.5px}
.cm-a{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.cm-ed{display:flex;flex-direction:column;gap:8px}
.form-grid .cm-field{grid-column:1/-1;display:flex;flex-direction:column;gap:6px}
.cm-er{display:grid;grid-template-columns:150px minmax(0,1fr) 30px;gap:8px;align-items:start;padding:8px;border:1px solid var(--border);border-radius:12px}
.cm-er.empty{border-style:dashed;border-color:#E0A100;background:#FFFCF3}
.cm-who{display:flex;flex-direction:column;gap:6px}.cm-who small{color:var(--muted);font-size:11.5px}
.cm-my{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.cm-my span{display:flex;flex-direction:column;background:var(--bg);border-radius:12px;padding:8px 12px;min-width:150px}.cm-my b{font-size:13.5px}.cm-my i{font-style:normal;font-size:12px;color:#1D4F91;font-weight:800}.cm-my small{font-size:11px;color:var(--muted)}
.tv-ld span.z{opacity:.6}
@media (max-width:640px){ .cm-er{grid-template-columns:1fr 30px}.cm-er .cm-who{grid-column:1/-1;grid-row:2} }
/* صفحة رصد الحصص على الجوال: شريط الملصقات ثابت فوق الشريط السفلي، فنترك تحت المحتوى مسافة تكفيهما (حتى «إحالاتي» ما تختفي تحته) */
@media (max-width:760px){ .content:has(.pi-tray){padding-bottom:calc(270px + env(safe-area-inset-bottom))} }

/* ===== المميزون في السلوك ===== */
.st-bar{display:flex;flex-direction:column;gap:8px;margin-top:10px}
.st-chips{display:flex;flex-wrap:wrap;gap:6px}
.st-chip{border:1px solid var(--border);background:#fff;border-radius:999px;padding:6px 12px;font:inherit;font-size:12.5px;font-weight:800;color:var(--muted);cursor:pointer}
.st-chip.on{background:var(--navy);border-color:var(--navy);color:#fff}
.st-in{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.st-in label{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:700}.st-in .ctl{width:auto}
.st-kp{margin-top:12px}
.st-note{margin-top:8px;font-size:12.5px;font-weight:700;color:#8A5A00;background:#FFF6E0;border-radius:10px;padding:7px 10px}
.st-pod{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;align-items:end;margin-top:14px}
.st-pod div{border-radius:16px;padding:14px 10px;text-align:center;display:flex;flex-direction:column;gap:3px;background:linear-gradient(180deg,#FFF9E8,#fff);border:1px solid #F1DFA6}
.st-pod .p1{padding-block:22px;background:linear-gradient(180deg,#FCEFC2,#FFF9E8);border-color:#E8C24A}
.st-pod i{font-style:normal;font-size:30px}.st-pod b{font-size:14.5px}.st-pod small{color:var(--muted);font-size:12px}.st-pod em{font-style:normal;font-size:12px;font-weight:800;color:#8A6A12}
.st-g{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,330px),1fr));gap:12px;margin-top:12px;align-items:start}
.st-c{background:#fff;border:1px solid var(--border);border-radius:16px;padding:12px 14px}
.st-ch{display:flex;align-items:baseline;justify-content:space-between;gap:8px;border-bottom:1px solid #EEF1F5;padding-bottom:8px;margin-bottom:6px}.st-ch b{font-size:15px}.st-ch small{color:var(--muted);font-size:11.5px}
.st-l{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.st-l li{display:grid;grid-template-columns:26px minmax(0,1fr) auto 22px;gap:8px;align-items:center;padding:7px 0;border-bottom:1px dashed #EEF1F5}.st-l li:last-child{border-bottom:0}
.st-l li.off{opacity:.45}
.st-l .n{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:var(--bg);font-size:12px;font-weight:900}
.st-l li:nth-child(1) .n{background:#FCEFC2}.st-l li:nth-child(2) .n{background:#E5E7EB}.st-l li:nth-child(3) .n{background:#F3DCC7}
.st-l b{display:block;font-size:13.5px}.st-k{display:flex;flex-wrap:wrap;gap:6px;font-size:11.5px;color:var(--muted)}
.st-l em{font-style:normal;font-weight:900;color:#8A6A12;font-size:15px}
@media (max-width:640px){ .st-pod{gap:6px}.st-pod b{font-size:12.5px} }
.st-tc{display:flex;align-items:center;gap:12px;margin-top:10px;background:linear-gradient(90deg,#0F2849,#16406e);color:#fff;border-radius:14px;padding:10px 16px}
.st-tc i{font-style:normal;font-size:30px}.st-tc small{display:block;font-size:12px;opacity:.85;font-weight:700}.st-tc b{font-size:18px}.st-tc em{margin-inline-start:auto;font-style:normal;font-weight:900;font-size:20px;color:#FCE7A2}

/* ===== المتأخرون في الاستلام بعد الانصراف ===== */
.lp{border-top:4px solid #3949AB}
.lp-h{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;flex-wrap:wrap}
.lp-cnt{display:flex;gap:6px}.lp-cnt span{font-size:12.5px;font-weight:800;color:var(--muted);background:var(--bg);border-radius:999px;padding:4px 12px}
.lp-cnt span b{font-size:15px;color:var(--navy);margin-inline-end:3px}.lp-cnt span.on{background:#FDECEA;color:#A32A1E}.lp-cnt span.on b{color:#A32A1E}
.lp-add{position:relative;margin:12px 0 4px}.lp-add .ctl{margin:0;font-size:15px;min-height:46px}
.lp-sug{display:flex;flex-direction:column;gap:4px;margin-top:6px;background:#fff;border:1.5px solid var(--border);border-radius:14px;padding:6px}
.lp-sug button{display:flex;align-items:center;gap:10px;border:none;background:transparent;border-radius:10px;padding:9px 10px;font:inherit;text-align:start;cursor:pointer;color:var(--navy)}
.lp-sug button:hover,.lp-sug button:focus-visible{background:#EEF2FB;outline:none}
.lp-sug b{flex:1;font-size:14px}.lp-sug small{font-size:12px;color:var(--muted);font-weight:700}.lp-sug i{font-style:normal;font-weight:900;color:#3949AB;font-size:18px}
.lp-list{display:flex;flex-direction:column;gap:10px;margin-top:10px}
.lp-r{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;align-items:center;border:1.5px solid var(--border);border-inline-start:5px solid var(--teal);border-radius:16px;padding:12px 14px;background:#fff}
.lp-r.a{border-inline-start-color:var(--amber);background:#FFFCF3}.lp-r.r{border-inline-start-color:var(--red);background:#FFF8F7}
.lp-r.miss .lp-n b::after{content:'لم يردّ';font-size:10.5px;font-weight:800;color:#fff;background:#A32A1E;border-radius:6px;padding:1px 7px;margin-inline-start:8px;vertical-align:middle}
.lp-r.done{border-inline-start-color:#94A3B8;background:var(--bg)}
.lp-n b{display:block;font-size:15px;color:var(--navy)}.lp-n small{font-size:12px;color:var(--muted);font-weight:700}
.lp-w{text-align:center;min-width:64px;border-radius:12px;padding:4px 8px;background:#E6F6EE;color:#0F6E4E}
.lp-w b{display:block;font-size:22px;line-height:1.1;font-variant-numeric:tabular-nums}.lp-w small{font-size:11px;font-weight:800}
.lp-w.a{background:#FFF4DB;color:#7A5200}.lp-w.r{background:#FDECEA;color:#A32A1E}.lp-w.done{background:#EEF2F6;color:var(--muted)}
.lp-log{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:5px}
.lp-log span{font-size:11.5px;font-weight:800;border-radius:8px;padding:2px 8px;background:#EEF2F6;color:var(--muted)}
.lp-log .answered{background:#E6F6EE;color:#0F6E4E}.lp-log .no_answer,.lp-log .unreachable{background:#FDECEA;color:#A32A1E}.lp-log .sms{background:#EEF2FB;color:#3949AB}
.lp-act{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.lp-tel,.lp-sms,.lp-go{display:inline-flex;align-items:center;gap:6px;min-height:40px;border-radius:12px;padding:6px 14px;font:inherit;font-size:13.5px;font-weight:800;text-decoration:none;cursor:pointer;border:1.5px solid}
.lp-tel{background:var(--teal);border-color:var(--teal);color:#fff}
.lp-sms{background:#fff;border-color:#3949AB;color:#3949AB}
.lp-go{background:var(--navy);border-color:var(--navy);color:#fff;margin-inline-start:auto}
.lp-nop{font-size:12px;font-weight:800;color:#A32A1E}
.lp-res{display:inline-flex;border:1.5px solid var(--border);border-radius:12px;overflow:hidden}
.lp-res button{border:none;border-inline-start:1px solid var(--border);background:#fff;font:inherit;font-size:12.5px;font-weight:800;padding:8px 10px;cursor:pointer;color:var(--navy);min-height:40px}
.lp-res button:first-child{border-inline-start:none}
.lp-res .answered{color:#0F6E4E}.lp-res .no_answer,.lp-res .unreachable{color:#A32A1E}.lp-res .undo{color:var(--muted)}
.lp-res button:hover{background:var(--bg)}
.lp-tel:focus-visible,.lp-sms:focus-visible,.lp-go:focus-visible,.lp-res button:focus-visible,.lp-rc button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.lp-lv{grid-column:1/-1;background:var(--bg);border-radius:12px;padding:10px}
.lp-rc{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 8px}
.lp-rc button{border:1.5px solid var(--border);background:#fff;border-radius:999px;padding:6px 14px;font:inherit;font-size:13px;font-weight:800;color:var(--navy);cursor:pointer}
.lp-rc button.on{background:var(--navy);border-color:var(--navy);color:#fff}
.lp-out{grid-column:1/-1;font-size:13px;font-weight:800;color:var(--navy);display:flex;align-items:center;gap:8px;flex-wrap:wrap}.lp-out small{color:var(--muted);font-weight:700}
.lp-done{margin-top:12px}.lp-done summary{cursor:pointer;font-weight:800;color:var(--muted);font-size:13px;padding:4px 0}
.lp-done .lp-r{margin-top:8px}
.lp-dnav{margin-bottom:10px}
.lp-tb{width:100%;border-collapse:collapse;margin-top:12px}.lp-tb th{font-size:12px;color:var(--muted);text-align:start;padding:6px 8px;border-bottom:1px solid var(--border)}
.lp-tb td{padding:8px;border-bottom:1px solid #EEF1F5;font-size:13px;vertical-align:middle}.lp-tb td small{display:block;color:var(--muted);font-size:11.5px}
.lp-tb td.n{font-weight:800;font-variant-numeric:tabular-nums;text-align:center}.lp-tb tr.rep td:first-child b{color:#A32A1E}
.lp-lt{font-size:12px;font-weight:800;color:#0F6E4E}
.lp-cfg{flex-wrap:wrap;margin-top:14px;border-top:1px dashed var(--border);padding-top:12px}.lp-cfg label{flex:1 1 100%;font-size:13px;font-weight:700;color:var(--navy)}
.lp-cfg .ctl{flex:0 0 90px}.lp-cfg span{font-size:13px;color:var(--muted);font-weight:700}
@media (max-width:560px){ .lp-go{margin-inline-start:0} .lp-res{width:100%} .lp-res button{flex:1} }

.att-tl.att-clr{color:#A32A1E;border-color:#F5C2BC}.att-tl.att-clr:hover{background:#FFF5F4}
.ds-att{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;background:var(--bg);border-radius:12px;padding:8px 12px;margin:6px 0 10px;font-size:13px;font-weight:700;color:var(--navy)}

/* ===== الخطط الدراسية (دليل الخطط الدراسية — الإصدار السادس) ===== */
.sp-cfg{display:flex;flex-wrap:wrap;gap:12px 22px;margin-top:6px}
.sp-tw{overflow-x:auto;margin-top:4px}
.sp-t{width:100%;border-collapse:collapse;font-size:13px;font-variant-numeric:tabular-nums;min-width:520px}
.sp-t th,.sp-t td{padding:7px 8px;border-bottom:1px solid var(--border);text-align:center}
.sp-t th{font-weight:800;color:var(--muted);font-size:12px;background:var(--bg)}
.sp-t td:first-child,.sp-t th:first-child{text-align:right;font-weight:700;color:var(--navy);white-space:nowrap}
.sp-t tr.sp-a td{color:var(--muted)}.sp-t tr.sp-a small{font-weight:500}
.sp-t tr.sp-s td{font-weight:900;color:var(--navy);border-bottom:0;background:var(--bg)}
.sp-cs{display:grid;gap:8px;margin-top:8px}
.sp-c{border:1px solid var(--border);border-radius:12px;background:var(--card)}
.sp-c.bad{border-color:#F0C36D;background:#FFFBF0}
.sp-c summary{display:flex;align-items:center;gap:10px;padding:10px 12px;cursor:pointer;flex-wrap:wrap}
.sp-c summary b{font-weight:900;color:var(--navy)}.sp-c summary span{font-size:12px;font-weight:800}
.sp-c.bad summary span{color:#8A5A00}.sp-c:not(.bad) summary span{color:#0F6E4E}
.sp-c summary small{margin-inline-start:auto;color:var(--muted);font-size:12px}
.sp-rs{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:6px;padding:0 12px 12px}
.sp-r{display:flex;align-items:center;gap:8px;border-radius:9px;padding:6px 10px;font-size:12.5px;background:var(--bg)}
.sp-r span{font-weight:700;flex:1;min-width:0}.sp-r b{font-variant-numeric:tabular-nums;font-weight:900}
.sp-r em{font-style:normal;font-size:11.5px;font-weight:800;white-space:nowrap}
.sp-r.g em{color:#0F6E4E}.sp-r.y{background:#FFF6E0}.sp-r.y em{color:#8A5A00}.sp-r.r{background:#FDECEA}.sp-r.r em{color:#A32A1E}.sp-r.b em{color:#2563A8}
.sp-lt{display:inline-block;margin-top:3px;font-size:11px;font-weight:800;color:var(--muted);background:var(--bg);border-radius:6px;padding:1px 7px}
.sp-lt.r{color:#A32A1E;background:#FDECEA}
.lc-rs i.r{background:#A32A1E;color:#fff}
.sp-lost{border:1px solid #F3B8B0}
.cal-plan{font-size:13px;font-weight:700;color:#0F6E4E;background:#E6F6EE;border-radius:10px;padding:8px 12px;margin:-4px 0 12px}
.cal-plan.w{color:#8A5A00;background:#FFF6E0}
@media (max-width:560px){.sp-rs{grid-template-columns:1fr}}

/* برامج الأنشطة المعتمدة (دليل الخطط الدراسية) */
.act-prog .act-chips{margin:4px 0 10px}.act-prog .act-chips small{opacity:.7;font-weight:800;margin-inline-start:2px}
.ap-l{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:8px}
.ap-r{display:grid;grid-template-columns:1fr auto;gap:4px 10px;align-items:center;text-align:right;border:1px solid var(--border);border-radius:12px;padding:10px 12px;background:var(--card);font:inherit;cursor:pointer}
.ap-r:disabled,.ap-r:not([onclick]){cursor:default}
.ap-r b{font-weight:800;color:var(--navy);font-size:13.5px}
.ap-r span{grid-column:1/-1;font-size:12px;color:var(--muted)}
.ap-r .bar{height:6px;border-radius:6px;background:var(--bg);overflow:hidden}.ap-r .bar i{display:block;height:100%;border-radius:6px}
.ap-r em{font-style:normal;font-size:11.5px;font-weight:800;color:var(--muted);white-space:nowrap}
.ap-r.on{border-color:#BFE3D2;background:#F3FBF7}.ap-r.on em{color:#0F6E4E}
.ap-c button{font-size:12.5px}
.sp-fix{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;padding:6px 0}.sp-fix b{font-weight:900;color:var(--navy)}.sp-fix small{color:var(--muted);font-size:12px}
.sp-vw{margin:0 0 10px}
.sp-cls>summary{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;cursor:pointer;list-style:none}.sp-cls>summary::-webkit-details-marker{display:none}
.sp-cls>summary h3{margin:0;font-size:16px}.sp-cls>summary small{color:var(--muted);font-size:12.5px}
.sp-cls-l{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:8px;margin-top:10px}
.sp-cl{display:flex;align-items:center;gap:8px;padding:6px 10px;border:1px solid var(--border);border-radius:10px;background:var(--card)}
.sp-cl b{flex:0 0 auto;min-width:64px;font-size:13.5px}.sp-cl .ctl{flex:1;min-width:0;padding:6px 8px;font-size:13px}.sp-cl span{font-size:13px;color:var(--muted)}
.sp-cl.warn{border-color:#E8B54A;background:#FFF8E6}
.sp-pg{display:inline-block;margin-inline-start:6px;padding:1px 7px;border-radius:999px;background:#EAF2FB;color:#2563A8;font-size:11px;font-weight:700}
.sp-r{flex-wrap:wrap;row-gap:2px}.sp-r span{flex:1 1 130px}.sp-r b{white-space:nowrap}
/* ===== تقرير ولي الأمر برابط واطلاع (ملف الطالب + صفحة الوكيل) ===== */
.pr-f{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px}
.pr-l{min-width:52px;font-size:12px;font-weight:800;color:var(--muted)}
.pr-note{font-size:11.5px;color:var(--muted);font-weight:700}
.pr-sum{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 2px}
.pr-sum span{font-size:12.5px;font-weight:700;background:#F4F6F9;border-radius:10px;padding:5px 10px;font-variant-numeric:tabular-nums}
.pr-sum span.w{background:#FFF6E0;color:#7A5200}.pr-sum span.g{background:#E6F6EE;color:#0F5A44}
.pr-bar{display:block;height:8px;border-radius:999px;background:#EEF2F6;overflow:hidden;min-width:60px}
.pr-bar i{display:block;height:100%;border-radius:inherit;background:var(--teal);transition:width .3s}
.pr-job{margin-top:12px;border:1px solid var(--border);border-radius:12px;padding:10px 12px;display:grid;gap:6px;background:#FAFBFC}
.pr-job b{font-size:13px}.pr-job small{font-size:11.5px;color:var(--muted)}.pr-job.end{background:#F2FAF6;border-color:#CBEBDC}
.pr-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:4px 0 12px}
.pr-tiles div{border:1px solid var(--border);border-radius:12px;padding:8px 10px;text-align:center}
.pr-tiles b{display:block;font-size:20px;font-weight:900;font-variant-numeric:tabular-nums}.pr-tiles small{font-size:11.5px;color:var(--muted);font-weight:700}
.pr-tiles .ok{background:#F2FAF6;border-color:#CBEBDC}.pr-tiles .ok b{color:#0F5A44}.pr-tiles .w{background:#FFFAEE;border-color:#F3E2B3}.pr-tiles .w b{color:#7A5200}
.pr-cls{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:6px 16px;margin-bottom:12px}
.pr-cls div{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:center;font-size:12.5px;font-weight:700}
.pr-cls span:first-child{min-width:74px}.pr-cls b{font-variant-numeric:tabular-nums;font-size:12px}
.pr-lh{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px}.pr-lh .row-gap{margin-top:0}
.pr-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:6px}
.pr-row,.pr-hrow{display:flex;align-items:center;gap:8px;border:1px solid var(--border);border-radius:12px;padding:7px 10px;background:#fff;min-width:0}
.pr-row>div,.pr-hrow>div{flex:1;min-width:0}.pr-row b,.pr-hrow b{display:block;font-size:13px}.pr-row small,.pr-hrow small{display:block;color:var(--muted);font-size:11.5px}
.pr-row .st,.pr-hrow .st{font-size:11px;font-weight:800;border-radius:999px;padding:2px 8px;background:#F4F5F7;color:#475569;flex:0 1 auto;text-align:center}
.pr-row.ack .st,.pr-hrow.ack .st{background:#E6F6EE;color:#0F5A44}.pr-row.open .st,.pr-hrow.open .st{background:#E8F1FB;color:#1D4F8A}.pr-row.sent .st,.pr-hrow.sent .st{background:#FFF6E0;color:#7A5200}
.pr-hrow .no{min-width:40px;text-align:center;font-weight:900;font-size:12px;background:#EEF2F6;border-radius:8px;padding:3px 6px;font-variant-numeric:tabular-nums}
.pr-hist{display:grid;gap:6px;margin-top:10px}
.pr-sendrow{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
@media (max-width:560px){ .pr-tiles{grid-template-columns:repeat(2,minmax(0,1fr))} .pr-list{grid-template-columns:1fr} .pr-row .st,.pr-hrow .st{max-width:46%} }
.pr-done{align-self:center;font-size:13px;font-weight:800;color:#0F5A44;background:#E6F6EE;border-radius:10px;padding:8px 12px}
/* ===== ملف الطالب: الغياب والأعذار ===== */
.ab-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;border:1px solid var(--border);border-radius:12px;padding:7px 10px;margin-bottom:6px;background:#fff}
.ab-row>div:first-child{flex:1;min-width:0}.ab-row b{display:block;font-size:13px}.ab-row small{display:block;font-size:11.5px;color:var(--muted)}
.ab-row.absent{border-color:#F3C9C2;background:#FFF8F6}.ab-row.absent small{color:#A3271B;font-weight:700}
.ab-row.excused small{color:#1D4F8A;font-weight:700}
.ab-bt{display:flex;gap:2px}
.ab-form{flex-basis:100%;display:grid;gap:8px;padding-top:6px;border-top:1px dashed var(--border);margin-top:2px}
.du-unsaved{display:flex;flex-wrap:wrap;align-items:center;gap:8px;background:#FFF6E0;border:1px solid #F3E2B3;color:#7A5200;border-radius:12px;padding:10px 12px;margin-bottom:12px;font-size:13px;font-weight:800}.du-unsaved .btn{margin:0}
.du-issf{flex-basis:100%;display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:6px 0 2px}.du-issf .ctl{flex:1 1 220px;min-width:0}
.du-it{flex-wrap:wrap}
.pi-per.lock{opacity:.6;background:#F4F5F7;border-style:dashed}.pi-locked{line-height:2}
/* ===== التكليف بالمناوبة والاطلاع ===== */
.du-asg{display:flex;flex-wrap:wrap;align-items:center;gap:10px;background:#FFF6E0;border:1.5px solid #F3D58A;border-radius:16px;padding:12px 14px;margin-bottom:12px}
.du-asg>span{font-size:24px}.du-asg>div{flex:1 1 220px;min-width:0}.du-asg b{display:block;font-size:14.5px;color:#7A5200}.du-asg small{display:block;font-size:12.5px;color:#5c4a1a;line-height:1.8}
.du-ack{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:8px;margin:8px 0}
.du-ack>div{border:1px solid var(--border);border-radius:12px;padding:8px 10px;background:#fff}
.du-ack>div.wait{border-color:#F3D58A;background:#FFFBEF}.du-ack>div.ok{border-color:#CBEBDC;background:#F5FBF8}
.du-ack b{display:block;font-size:13px}.du-ack small{display:block;font-size:11.5px;color:var(--muted);line-height:1.7}.du-ack em{display:block;font-style:normal;font-size:11.5px;font-weight:800;margin-top:2px}
.du-ack .ok em{color:#0F5A44}.du-ack .wait em{color:#7A5200}
.du-smst{display:flex;gap:8px;align-items:flex-start;font-size:13px;font-weight:700;line-height:1.8}
