:root{
    --teal-900:#0F3538;
    --teal-700:#1B4E4F;
    --teal-500:#2C6E67;
    --teal-100:#E4EFEC;
    --sand-100:#F7F3EA;
    --paper:#FFFDF8;
    --gold-500:#B9873A;
    --gold-100:#F1E4C8;
    --ink-900:#1B211F;
    --ink-500:#5B655F;
    --line:#DDD6C4;
    --danger:#B4463F;
    --ok:#3E7A5C;
    --dent:#2C6E67;
    --pt:#8A6A2F;
    --ins:#6E4A9E;
  }
  *{box-sizing:border-box;}
  html,body{margin:0;padding:0;}
  body{
    font-family:'Tajawal',sans-serif;
    background:var(--sand-100);
    color:var(--ink-900);
    display:flex;
    min-height:100vh;
  }
  h1,h2,h3,.brand{font-family:'Cairo',sans-serif;}
  ::selection{background:var(--gold-100);}

  #sidebar{
    width:310px;
    flex-shrink:0;
    background:var(--teal-900);
    color:#EFF5F3;
    padding:24px 0 24px 0;
    position:sticky;
    top:0;
    height:100vh;
    overflow-y:auto;
  }
  .brand-block{padding:0 22px 20px 22px; border-bottom:1px solid rgba(255,255,255,.12); margin-bottom:8px;}
  .brand{font-size:19px; font-weight:800; letter-spacing:.3px;}
  .brand-sub{font-size:12px; color:#B7CFC9; margin-top:4px; line-height:1.6;}
  .progress-wrap{padding:12px 22px 4px 22px;}
  .progress-label{font-size:12px; color:#B7CFC9; margin-bottom:6px; display:flex; justify-content:space-between;}
  .progress-bar{height:8px; background:rgba(255,255,255,.15); border-radius:6px; overflow:hidden;}
  .progress-fill{height:100%; background:var(--gold-500); width:0%; transition:width .4s ease;}

  .group-label{font-size:10.5px; text-transform:uppercase; letter-spacing:1px; color:#7FA69E; padding:14px 22px 6px 22px;}

  nav{margin-top:4px;}
  .tab{
    display:flex;
    align-items:center;
    gap:11px;
    padding:11px 22px;
    cursor:pointer;
    border-right:4px solid transparent;
    position:relative;
    transition:background .15s ease, border-color .15s ease;
    font-size:13.8px;
  }
  .tab:hover{background:rgba(255,255,255,.06);}
  .tab.active{background:var(--paper); color:var(--teal-900); border-right:4px solid var(--gold-500); font-weight:700;}
  .tab .num{
    font-family:'Cairo',sans-serif;
    font-weight:800;
    font-size:11px;
    width:24px;height:24px;
    border-radius:7px;
    display:flex;align-items:center;justify-content:center;
    background:rgba(255,255,255,.12);
    color:#EFF5F3;
    flex-shrink:0;
  }
  .tab.active .num{background:var(--gold-500); color:#2B1E0C;}
  .tab .check{margin-right:auto; font-size:12px; color:var(--gold-500); opacity:0;}
  .tab.done .check{opacity:1;}
  .tab.done .num{background:var(--ok); color:#fff;}

  #main{flex:1; padding:44px 56px; max-width:920px; margin:0 auto;}
  .section{display:none; animation:fade .35s ease;}
  .section.active{display:block;}
  @keyframes fade{from{opacity:0; transform:translateY(6px);} to{opacity:1; transform:translateY(0);}}

  .eyebrow{
    font-size:12.5px; font-weight:700; color:var(--gold-500);
    text-transform:uppercase; letter-spacing:1px; margin-bottom:8px;
  }
  h1.title{font-size:27px; font-weight:800; color:var(--teal-900); margin:0 0 22px 0; line-height:1.35;}

  .card{
    background:var(--paper);
    border:1px solid var(--line);
    border-radius:14px;
    padding:24px 26px;
    margin-bottom:22px;
  }
  .card h3{font-size:16.5px; color:var(--teal-900); margin:0 0 12px 0; display:flex; align-items:center; gap:8px;}
  .card h3 .dot{width:8px;height:8px;border-radius:50%;background:var(--gold-500);display:inline-block;flex-shrink:0;}
  .card p{line-height:2; font-size:14.8px; color:#333; margin:0 0 12px 0;}
  .card p:last-child{margin-bottom:0;}
  .card ul{margin:0; padding-inline-start:20px; line-height:2;}
  .card li{margin-bottom:4px; font-size:14.6px;}

  .checklist{background:var(--teal-100); border:1px solid #C9DDD6;}
  .checklist h3{color:var(--teal-700);}
  .check-item{display:flex; align-items:flex-start; gap:10px; padding:7px 0; font-size:14.3px; border-bottom:1px dashed #C9DDD6;}
  .check-item:last-child{border-bottom:none;}
  .check-item input{margin-top:4px; width:16px;height:16px; accent-color:var(--teal-700); flex-shrink:0;}

  .callout{
    background:var(--gold-100);
    border-right:4px solid var(--gold-500);
    border-radius:8px;
    padding:14px 18px;
    font-size:14.3px;
    line-height:1.9;
    margin-bottom:20px;
  }
  .callout b{color:#7A551E;}
  .callout.dentflag{background:#E4EFEC; border-right-color:var(--dent);}
  .callout.dentflag b{color:var(--dent);}
  .callout.ptflag{background:#F3EBD8; border-right-color:var(--pt);}
  .callout.ptflag b{color:var(--pt);}
  .regnum{display:inline-block; width:22px; height:22px; line-height:22px; text-align:center; border-radius:50%; background:var(--pt); color:#fff; font-size:12px; font-weight:700; margin-left:8px; vertical-align:middle;}
  .ban-card{border:1px solid #E5C9C0; background:#FBF1EE;}
  .ban-card h3{color:#B23A2E;}
  .ban-card h3 .dot{background:#B23A2E;}
  .banlist{list-style:none; padding:0; margin:6px 0 0;}
  .banlist li{position:relative; padding:8px 28px 8px 0; border-bottom:1px dashed #E5C9C0; font-size:14.3px; line-height:1.7;}
  .banlist li:last-child{border-bottom:none;}
  .banlist li::before{content:"\2717"; position:absolute; right:2px; top:8px; color:#B23A2E; font-weight:800; font-size:15px;}
  .callout.insflag{background:#EDE7F5; border-right-color:var(--ins);}
  .callout.insflag b{color:var(--ins);}
  .callout.warn{background:#F7E7E5; border-right-color:var(--danger);}
  .callout.warn b{color:var(--danger);}

  .badge{
    display:inline-block; font-size:11.5px; font-weight:700; padding:3px 10px;
    border-radius:20px; margin-inline-end:6px; margin-bottom:6px;
  }
  .badge.dent{background:#E4EFEC; color:var(--dent);}
  .badge.pt{background:#F3EBD8; color:var(--pt);}
  .badge.both{background:var(--teal-100); color:var(--teal-900);}

  table{width:100%; border-collapse:collapse; font-size:13.8px; margin-top:6px;}
  th,td{padding:9px 10px; border:1px solid var(--line); text-align:right;}
  th{background:var(--teal-100); color:var(--teal-900); font-weight:700;}
  tr:nth-child(even) td{background:#FCFAF3;}

  .steps{list-style:none; margin:0; padding:0; counter-reset:step;}
  .steps li{
    counter-increment:step; position:relative; padding:10px 0 10px 0; padding-inline-start:44px;
    font-size:14.6px; line-height:1.9; border-bottom:1px dashed var(--line);
  }
  .steps li:last-child{border-bottom:none;}
  .steps li::before{
    content:counter(step); position:absolute; inset-inline-start:0; top:9px;
    width:28px; height:28px; border-radius:8px; background:var(--teal-700); color:#fff;
    font-family:'Cairo',sans-serif; font-weight:800; font-size:12.5px;
    display:flex; align-items:center; justify-content:center;
  }

  .quiz{background:#fff; border:1px solid var(--line); border-radius:14px; padding:24px 26px; margin-top:26px;}
  .quiz h3{font-size:16px; color:var(--teal-900); margin:0 0 4px 0;}
  .quiz .quiz-sub{color:var(--ink-500); font-size:13px; margin-bottom:18px;}
  .q-block{margin-bottom:20px; padding-bottom:16px; border-bottom:1px solid #EEE9DA;}
  .q-block:last-of-type{border-bottom:none;}
  .q-text{font-weight:700; font-size:14.3px; margin-bottom:10px;}
  .opt{
    display:flex; align-items:center; gap:9px;
    padding:9px 12px; border-radius:8px; border:1px solid var(--line);
    margin-bottom:7px; cursor:pointer; font-size:13.8px; transition:.15s;
  }
  .opt:hover{background:#FBF8EF;}
  .opt input{accent-color:var(--teal-700);}
  .opt.correct{background:#E4F2E9; border-color:var(--ok); font-weight:700;}
  .opt.wrong{background:#F7E7E5; border-color:var(--danger);}

  .btn{
    background:var(--teal-700); color:#fff; border:none; padding:12px 22px;
    border-radius:9px; font-family:'Tajawal',sans-serif; font-weight:700; font-size:14.3px;
    cursor:pointer; transition:.15s; display:inline-flex; align-items:center; gap:8px;
  }
  .btn:hover{background:var(--teal-900);}
  .btn.secondary{background:transparent; border:1.5px solid var(--teal-700); color:var(--teal-700);}
  .btn.secondary:hover{background:var(--teal-100);}
  .btn[disabled]{opacity:.4; cursor:default;}

  .quiz-result{margin-top:14px; font-weight:700; font-size:14.3px; padding:10px 14px; border-radius:8px; display:none;}
  .quiz-result.show{display:block;}
  .quiz-result.good{background:#E4F2E9; color:var(--ok);}
  .quiz-result.mid{background:var(--gold-100); color:#7A551E;}

  .nav-buttons{display:flex; justify-content:space-between; margin-top:34px;}

  .tooth-cusp{fill:rgba(255,255,255,.45);}

  .menu-btn{display:none;}
  @media(max-width:880px){
    body{flex-direction:column;}
    #sidebar{width:100%; height:auto; position:relative; padding:16px 0; display:none;}
    #sidebar.open{display:block;}
    .menu-btn{
      display:flex; align-items:center; justify-content:space-between;
      background:var(--teal-900); color:#fff; padding:16px 20px;
      font-family:'Cairo',sans-serif; font-weight:700; position:sticky; top:0; z-index:5;
    }
    #main{padding:24px 20px;}
    h1.title{font-size:22px;}
  }

  /* ===== صفحة الامتحان (exam.html) ===== */
  .exam-body{display:block; background:var(--sand-100);}
  .exam-main{max-width:860px; margin:0 auto; padding:28px 18px 80px;}
  .exam-card{
    background:var(--paper); border:1px solid var(--line); border-radius:16px;
    padding:26px 28px; margin-bottom:18px; box-shadow:0 1px 2px rgba(0,0,0,.03);
  }
  .exam-topbar{position:sticky; top:0; z-index:20; background:var(--teal-900); color:#EFF5F3;}
  .exam-topbar-inner{
    max-width:860px; margin:0 auto; display:flex; justify-content:space-between;
    align-items:center; padding:12px 18px; gap:12px;
  }
  .exam-title{font-family:'Cairo',sans-serif; font-weight:700; font-size:14.5px; line-height:1.4;}
  .exam-progress{font-size:13px; color:#B7CFC9; white-space:nowrap;}
  .exam-timer{
    font-family:'Cairo',sans-serif; font-weight:800; font-size:22px;
    background:rgba(255,255,255,.12); padding:4px 14px; border-radius:10px; letter-spacing:1px;
  }
  .exam-timer.danger{background:var(--danger); animation:pulse 1s infinite;}
  @keyframes pulse{0%,100%{opacity:1;} 50%{opacity:.55;}}

  .exam-h{font-size:21px; color:var(--teal-900); margin:0 0 6px 0;}
  .exam-sub{color:var(--ink-500); font-size:13.5px; line-height:1.8; margin:0 0 8px 0;}
  .exam-facts{display:flex; gap:14px; flex-wrap:wrap; margin:14px 0;}
  .exam-fact{background:var(--teal-100); padding:8px 14px; border-radius:10px; font-weight:700; font-size:13.5px;}
  .exam-instructions{margin:8px 0 0 0; padding-inline-start:20px; line-height:1.9;}
  .exam-instructions li{margin-bottom:4px;}
  .exam-actions{display:flex; gap:10px; flex-wrap:wrap; align-items:center; margin-top:18px;}
  .exam-form label{display:block; font-weight:700; margin:12px 0 6px;}
  .exam-form input,.exam-form select{
    width:100%; padding:11px 12px; border:1px solid var(--line);
    border-radius:10px; font:inherit; background:#fff;
  }
  .exam-form input:focus,.exam-form select:focus{outline:2px solid var(--teal-500); outline-offset:1px;}
  .q-num{font-family:'Cairo',sans-serif; font-weight:800; color:var(--gold-500); margin-inline-end:2px;}
  .opt.picked{background:var(--gold-100); border-color:var(--gold-500);}
  .exam-submit-row{display:flex; align-items:center; gap:14px; flex-wrap:wrap; margin-top:22px; padding-top:18px; border-top:1px solid var(--line);}
  .exam-hint{font-size:13px; color:var(--ink-500);}

  .exam-banner{
    position:fixed; bottom:16px; left:16px; right:16px; max-width:860px; margin:0 auto;
    background:#3b2f13; color:#fff; padding:12px 16px; border-radius:12px; z-index:30;
    font-size:13.5px; line-height:1.7; box-shadow:0 6px 18px rgba(0,0,0,.18);
  }

  .result-score{font-family:'Cairo',sans-serif; font-size:56px; font-weight:800; color:var(--teal-700); line-height:1.1;}
  .result-pct{font-family:'Cairo',sans-serif; font-size:24px; font-weight:700; color:var(--ink-500); margin-bottom:12px;}
  .result-badge{display:inline-block; padding:8px 18px; border-radius:999px; font-weight:800; font-size:18px;}
  .result-badge.good{background:#DFF1E7; color:var(--ok);}
  .result-badge.bad{background:#F8E0DE; color:var(--danger);}
  .result-line{font-size:13.8px; color:var(--ink-500); margin:12px 0 0 0;}
  .result-line.late{color:var(--danger); font-weight:700;}
  .result-note{font-size:14px; font-weight:700; margin:10px 0 0 0;}

  @media(max-width:880px){
    .exam-card{padding:20px 18px;}
    .exam-topbar-inner{flex-wrap:wrap; gap:8px 12px;}
    .exam-title{width:100%; font-size:13.5px;}
    .result-score{font-size:44px;}
  }

  /* روابط بشكل زرار في صفحة الامتحان — بدون خط تحت النص */
  .exam-main a.btn{text-decoration:none;}

  /* ===== دليل المقابلة وكارت التقييم (interview.html) ===== */
  .iv-body{display:block; background:var(--sand-100);}
  .iv-header{background:var(--teal-900); color:#EFF5F3; position:sticky; top:0; z-index:20;}
  .iv-header-inner{
    max-width:900px; margin:0 auto; padding:14px 18px; display:flex;
    align-items:center; justify-content:space-between; gap:14px; flex-wrap:wrap;
  }
  .iv-brand{font-family:'Cairo',sans-serif; font-weight:800; font-size:18px;}
  .iv-brand-sub{font-size:12px; color:#B7CFC9; margin-top:4px; line-height:1.7;}
  .iv-header-actions{display:flex; gap:8px; flex-wrap:wrap;}
  .iv-header-actions .btn.secondary{border-color:#7FA69E; color:#EFF5F3; padding:8px 14px; font-size:13px; text-decoration:none;}
  .iv-header-actions .btn.secondary:hover{background:rgba(255,255,255,.1);}
  .iv-main{max-width:900px; margin:0 auto; padding:26px 18px 90px;}
  .iv-main .card, .iv-main .callout{margin-bottom:20px;}

  .pin-gate{max-width:460px; margin:40px auto;}
  .pin-gate .exam-form input{max-width:220px; letter-spacing:4px; text-align:center; font-size:18px;}
  .pin-msg{
    margin-top:14px; background:#F7E7E5; color:var(--danger); border-right:4px solid var(--danger);
    border-radius:8px; padding:10px 14px; font-size:13.5px; font-weight:700; line-height:1.7;
  }

  .iv-h2{
    font-family:'Cairo',sans-serif; font-size:20px; color:var(--teal-900);
    margin:34px 0 16px; padding-bottom:10px; border-bottom:2px solid var(--gold-500);
  }
  .iv-h2-sub{display:block; font-family:'Tajawal',sans-serif; font-size:13px; font-weight:400; color:var(--ink-500); margin-top:6px; line-height:1.7;}

  .iv-q, .iv-s{
    background:var(--paper); border:1px solid var(--line); border-radius:14px;
    padding:20px 22px; margin-bottom:16px;
  }
  .iv-q h3, .iv-s h3{font-size:16px; color:var(--teal-900); margin:0 0 14px 0; line-height:1.85;}
  .iv-q-num{
    font-family:'Cairo',sans-serif; font-weight:800; font-size:13px;
    display:inline-flex; align-items:center; justify-content:center;
    width:28px; height:28px; border-radius:9px; background:var(--teal-700); color:#fff;
    margin-inline-end:9px; vertical-align:middle;
  }
  .iv-s-num{
    display:inline-block; font-family:'Cairo',sans-serif; font-weight:800; font-size:12.5px;
    background:var(--gold-100); color:#7A551E; border-radius:20px;
    padding:4px 12px; margin-inline-end:9px; white-space:nowrap;
  }
  .iv-look, .iv-red, .iv-exp{border-radius:10px; padding:12px 16px; margin-top:10px;}
  .iv-look h4, .iv-red h4, .iv-exp h4{
    margin:0 0 6px 0; font-family:'Cairo',sans-serif; font-size:13.5px; font-weight:700;
  }
  .iv-look ul, .iv-red ul, .iv-exp ul{margin:0; padding-inline-start:20px; line-height:1.95;}
  .iv-look li, .iv-red li, .iv-exp li{margin-bottom:3px; font-size:14.2px;}
  .iv-look{background:var(--teal-100); border-right:4px solid var(--teal-500);}
  .iv-look h4{color:var(--teal-700);}
  .iv-red{background:#FBF1EE; border-right:4px solid #B23A2E;}
  .iv-red h4{color:#B23A2E;}
  .iv-exp{background:#EDE7F5; border-right:4px solid var(--ins);}
  .iv-exp h4{color:var(--ins);}
  .iv-en{
    direction:ltr; text-align:left; background:#fff; border:1px dashed var(--line);
    border-radius:10px; padding:12px 14px; font-size:14.5px; line-height:1.8; color:#2B2B2B;
  }

  .iv-card-h{font-family:'Cairo',sans-serif; font-size:16.5px; color:var(--teal-900); margin:0 0 8px 0;}
  .iv-grid2{display:grid; grid-template-columns:1fr 1fr; gap:0 18px;}
  .exam-form textarea{
    width:100%; padding:11px 12px; border:1px solid var(--line); border-radius:10px;
    font:inherit; background:#fff; line-height:1.8; resize:vertical;
  }
  .exam-form textarea:focus{outline:2px solid var(--teal-500); outline-offset:1px;}
  .req{color:var(--danger);}
  .iv-hint{font-weight:400; font-size:12.5px; color:var(--ink-500);}
  .iv-group-label{display:block; font-weight:700; margin:20px 0 6px;}
  .iv-group-label.iv-avg-label{margin-top:12px; color:var(--ink-500);}

  .rating-row{
    display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap;
    padding:10px 12px; border:1px solid var(--line); border-radius:10px;
    background:#fff; margin-bottom:8px;
  }
  .rating-row.missing{border-color:var(--danger); background:#FDF4F3;}
  .rating-label{font-weight:700; font-size:14.2px;}
  .rating-hint{display:block; font-weight:400; font-size:12.3px; color:var(--ink-500); margin-top:2px;}
  .rating{display:flex; align-items:center; gap:2px;}
  .rating .star{
    background:none; border:none; cursor:pointer; padding:2px 3px; line-height:1;
    font-size:25px; color:#CFC6AE; border-radius:6px; transition:color .12s ease, transform .12s ease;
  }
  .rating .star:hover{color:var(--gold-500); transform:scale(1.12);}
  .rating .star.on{color:var(--gold-500);}
  .rating .star:focus-visible{outline:2px solid var(--teal-500); outline-offset:1px;}
  .rating-val{
    font-family:'Cairo',sans-serif; font-weight:700; font-size:12.5px; color:var(--ink-500);
    min-width:52px; text-align:center; background:var(--sand-100); border-radius:20px; padding:3px 8px;
    margin-inline-start:8px;
  }
  .rating-val.set{background:var(--gold-100); color:#7A551E;}

  .iv-avg{
    font-family:'Cairo',sans-serif; font-weight:800; font-size:20px; color:var(--teal-700);
    background:var(--teal-100); border-radius:10px; padding:9px 14px; text-align:center;
  }
  .iv-recs{display:flex; gap:10px; flex-wrap:wrap;}
  .iv-recs .opt{margin-bottom:0; min-width:120px;}
  .iv-recs.missing .opt{border-color:var(--danger);}
  .iv-ok{
    margin-top:14px; background:#E4F2E9; color:var(--ok); border-right:4px solid var(--ok);
    border-radius:8px; padding:10px 14px; font-size:13.8px; font-weight:700;
  }

  .iv-table-wrap{overflow-x:auto;}
  .rec-chip{
    display:inline-block; padding:3px 11px; border-radius:20px; font-size:12.3px; font-weight:700;
    background:var(--sand-100); color:var(--ink-500);
  }
  .rec-chip.hire{background:#E4F2E9; color:var(--ok);}
  .rec-chip.maybe{background:var(--gold-100); color:#7A551E;}
  .rec-chip.reject{background:#F7E7E5; color:var(--danger);}
  .btn-del{
    background:none; border:1px solid #E5C9C0; color:#B23A2E; border-radius:7px;
    padding:5px 12px; font:inherit; font-size:12.5px; font-weight:700; cursor:pointer;
  }
  .btn-del:hover{background:#FBF1EE;}
  .btn-del[disabled]{opacity:.5; cursor:default;}

  .iv-launch{border:1px solid var(--gold-500); background:#FFFCF4;}
  .iv-big{
    width:100%; justify-content:center; font-size:16px; padding:16px 22px;
    margin:6px 0 16px; text-decoration:none;
  }

  @media(max-width:880px){
    .iv-grid2{grid-template-columns:1fr;}
    .iv-q, .iv-s{padding:16px 15px;}
    .iv-h2{font-size:18px;}
    .rating-row{justify-content:flex-start;}
    .rating .star{font-size:28px; padding:2px 5px;}
  }

  /* ===== لوحة الإدارة (admin.html) ===== */
  .adm-body{display:block; background:var(--sand-100);}
  .adm-wide{max-width:1240px;}
  .adm-main{max-width:1240px; margin:0 auto; padding:22px 18px 90px;}
  body.modal-open{overflow:hidden;}

  .adm-sum{display:flex; flex-wrap:wrap; gap:8px; margin:0 0 16px;}
  .adm-sum-item{
    background:var(--paper); border:1px solid var(--line); border-radius:10px;
    padding:7px 13px; font-size:13px; color:var(--ink-500);
  }
  .adm-sum-item b{font-family:'Cairo',sans-serif; font-size:15px; color:var(--teal-700); margin-inline-end:4px;}

  .tabs{
    display:flex; flex-wrap:wrap; gap:6px; margin:0 0 16px;
    border-bottom:2px solid var(--line); padding-bottom:0;
  }
  .tabs .tab-btn{
    background:transparent; border:1px solid transparent; border-bottom:none; color:var(--ink-500);
    font-family:'Cairo',sans-serif; font-weight:700; font-size:14px; cursor:pointer;
    padding:10px 20px; border-radius:10px 10px 0 0; margin-bottom:-2px; transition:.15s;
  }
  .tabs .tab-btn:hover{background:var(--teal-100); color:var(--teal-900);}
  .tabs .tab-btn.active{
    background:var(--paper); border-color:var(--line); border-bottom:2px solid var(--paper);
    color:var(--teal-900);
  }
  .tabs .tab-btn:focus-visible{outline:2px solid var(--teal-500); outline-offset:1px;}

  .adm-panel{
    background:var(--paper); border:1px solid var(--line); border-radius:0 0 14px 14px;
    border-top:none; padding:18px 20px 22px;
  }
  .adm-note{font-size:13px; color:var(--ink-500); line-height:1.9; margin:0 0 14px;}
  .adm-legend{display:block; margin-top:6px;}
  .adm-legend .pct-chip{margin-inline-end:3px;}
  .adm-msg{
    background:var(--teal-100); border-right:4px solid var(--teal-500); border-radius:8px;
    padding:11px 14px; font-size:13.5px; line-height:1.8; color:var(--teal-900);
  }

  .adm-table-wrap{overflow-x:auto; -webkit-overflow-scrolling:touch;}
  .adm-table{width:100%; border-collapse:collapse; font-size:13.2px; margin-top:4px;}
  .adm-table th,.adm-table td{padding:8px 10px; border:1px solid var(--line); text-align:right; vertical-align:middle;}
  .adm-table th{background:var(--teal-100); color:var(--teal-900); font-weight:700; font-size:12.6px; white-space:nowrap;}
  .adm-table .adm-th-exam{text-align:center;}
  .adm-table .adm-cell{text-align:center; white-space:nowrap;}
  .adm-table .adm-name{font-weight:700; min-width:150px;}
  .adm-table .adm-acts{white-space:nowrap;}
  .adm-table .adm-acts>*{margin-inline-end:5px;}
  .adm-dim{color:var(--ink-500); font-size:12.4px; white-space:nowrap;}
  .adm-ltr{direction:ltr; text-align:left; font-variant-numeric:tabular-nums;}
  .adm-count{font-size:12.6px; color:var(--ink-500); margin-inline-start:auto;}
  .adm-avg{font-family:'Cairo',sans-serif; font-weight:700; font-size:13px; color:var(--teal-700); margin-inline-end:5px;}

  .adm-filters{display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin-bottom:14px;}
  .adm-filters label{font-weight:700; font-size:13px;}
  .adm-filters select{
    padding:8px 10px; border:1px solid var(--line); border-radius:9px; font:inherit;
    font-size:13px; background:#fff; max-width:260px;
  }
  .adm-filters select:focus{outline:2px solid var(--teal-500); outline-offset:1px;}

  .pct-chip{
    display:inline-block; font-family:'Cairo',sans-serif; font-weight:700; font-size:12.4px;
    padding:4px 11px; border-radius:20px; border:1px solid transparent;
    background:var(--sand-100); color:var(--ink-500); white-space:nowrap;
  }
  button.pct-chip{cursor:pointer; font-family:'Cairo',sans-serif;}
  button.pct-chip:hover{filter:brightness(.95);}
  button.pct-chip:focus-visible{outline:2px solid var(--teal-500); outline-offset:1px;}
  .pct-chip.good{background:#DFF1E7; color:var(--ok); border-color:#BEDFCD;}
  .pct-chip.bad{background:#F8E0DE; color:var(--danger); border-color:#EBC5C1;}
  .pct-chip.pending{background:var(--gold-100); color:#7A551E; border-color:#E2CDA0;}
  .pct-chip.none{background:transparent; color:#A79E8A; border-color:transparent;}
  .pct-chip.late{border-color:var(--gold-500); border-style:dashed;}
  .pct-chip.late-flag{background:#FBF1EE; color:#B23A2E; border-color:#E5C9C0;}

  .btn-mini{
    background:transparent; border:1px solid var(--teal-700); color:var(--teal-700);
    border-radius:7px; padding:5px 11px; font:inherit; font-size:12.5px; font-weight:700; cursor:pointer;
  }
  .btn-mini:hover{background:var(--teal-100);}
  .btn-mini[disabled]{opacity:.5; cursor:default;}

  /* --- مودال التفاصيل --- */
  .modal{position:fixed; inset:0; z-index:60; display:flex; align-items:center; justify-content:center; padding:18px;}
  .modal[hidden]{display:none;}
  .modal-backdrop{position:absolute; inset:0; background:rgba(15,53,56,.55);}
  .modal-box{
    position:relative; background:var(--paper); border:1px solid var(--line); border-radius:16px;
    width:100%; max-width:820px; max-height:90vh; display:flex; flex-direction:column;
    box-shadow:0 18px 50px rgba(0,0,0,.28); overflow:hidden;
  }
  .modal-head{
    display:flex; align-items:flex-start; justify-content:space-between; gap:12px;
    padding:14px 18px; background:var(--teal-900); color:#EFF5F3; flex-shrink:0;
  }
  .modal-title{font-family:'Cairo',sans-serif; font-size:16px; margin:0; line-height:1.6; color:#EFF5F3;}
  .modal-head-actions{display:flex; align-items:center; gap:8px; flex-shrink:0;}
  .modal-head .btn-del{background:transparent; border-color:#D89A92; color:#F6D5D1;}
  .modal-head .btn-del:hover{background:rgba(255,255,255,.1);}
  .modal-x{
    background:rgba(255,255,255,.12); border:none; color:#EFF5F3; border-radius:8px;
    width:30px; height:30px; font-size:14px; cursor:pointer; line-height:1;
  }
  .modal-x:hover{background:rgba(255,255,255,.22);}
  .modal-x:focus-visible{outline:2px solid #fff; outline-offset:1px;}
  .modal-body{padding:18px 20px 24px; overflow-y:auto;}

  .adm-facts{margin:0 0 16px;}
  .adm-facts .exam-fact{font-size:12.8px; font-weight:400;}
  .adm-fact-k{color:var(--ink-500); font-size:11.8px; margin-inline-end:4px;}

  .adm-h3{font-family:'Cairo',sans-serif; font-size:15.5px; color:var(--teal-900); margin:22px 0 10px;}
  .adm-subsum{display:flex; gap:8px; flex-wrap:wrap; margin:0 0 14px;}
  .adm-pill{
    font-family:'Cairo',sans-serif; font-weight:700; font-size:12.4px;
    padding:4px 12px; border-radius:20px; background:var(--sand-100); color:var(--ink-500);
  }
  .adm-pill.ok{background:#DFF1E7; color:var(--ok);}
  .adm-pill.no{background:#F8E0DE; color:var(--danger);}
  .adm-pill.blank{background:var(--gold-100); color:#7A551E;}

  /* --- تفاصيل الـ MCQ --- */
  .adm-q{border:1px solid var(--line); border-radius:12px; padding:12px 14px; margin-bottom:10px; background:#fff;}
  .adm-q.ok{border-inline-start:4px solid var(--ok);}
  .adm-q.no{border-inline-start:4px solid var(--danger);}
  .adm-q.blank{border-inline-start:4px solid var(--gold-500);}
  .adm-q-h{font-weight:700; font-size:13.8px; line-height:1.9; margin-bottom:8px;}
  .adm-topic{
    display:inline-block; font-size:11.4px; font-weight:400; background:var(--teal-100);
    color:var(--teal-700); border-radius:20px; padding:2px 9px; margin-inline-start:4px;
  }
  .adm-flag{font-size:11.6px; font-weight:700; border-radius:20px; padding:2px 9px; white-space:nowrap;}
  .adm-flag.ok{background:#DFF1E7; color:var(--ok);}
  .adm-flag.no{background:#F8E0DE; color:var(--danger);}
  .adm-flag.blank{background:var(--gold-100); color:#7A551E;}
  .adm-opts .opt{cursor:default; margin-bottom:5px; font-size:13.2px; gap:8px;}
  .adm-opts .opt:hover{background:inherit;}
  .adm-opts .opt.correct:hover{background:#E4F2E9;}
  .adm-opts .opt.wrong:hover{background:#F7E7E5;}
  .adm-opt-txt{flex:1;}
  .adm-tag{font-size:11.2px; font-weight:700; border-radius:20px; padding:2px 8px; white-space:nowrap;}
  .adm-tag.pick{background:var(--gold-100); color:#7A551E;}
  .adm-tag.ok{background:#DFF1E7; color:var(--ok);}

  /* --- تفاصيل العملي --- */
  .adm-task{border:1px solid var(--line); border-radius:12px; padding:13px 15px; margin-bottom:12px; background:#fff;}
  .adm-task-h{display:flex; align-items:center; justify-content:space-between; gap:10px; flex-wrap:wrap; margin-bottom:8px;}
  .adm-task-num{
    font-family:'Cairo',sans-serif; font-weight:800; font-size:12.6px;
    background:var(--teal-700); color:#fff; border-radius:20px; padding:4px 13px;
  }
  .adm-task-score{font-family:'Cairo',sans-serif; font-weight:800; font-size:13px; border-radius:20px; padding:4px 12px;}
  .adm-task-score.good{background:#DFF1E7; color:var(--ok);}
  .adm-task-score.part{background:var(--gold-100); color:#7A551E;}
  .adm-task-score.bad{background:#F8E0DE; color:var(--danger);}
  .adm-task-text{
    white-space:pre-line; font-size:13.4px; line-height:1.95; color:#333;
    background:var(--sand-100); border-radius:9px; padding:10px 13px; margin-bottom:10px;
  }
  .adm-checks{list-style:none; margin:0; padding:0;}
  .adm-checks li{
    display:flex; flex-wrap:wrap; align-items:flex-start; gap:8px;
    padding:8px 0; border-bottom:1px dashed var(--line); font-size:13.2px; line-height:1.8;
  }
  .adm-checks li:last-child{border-bottom:none;}
  .adm-ck{font-weight:800; font-size:14px; flex-shrink:0; width:18px; text-align:center;}
  .adm-checks li.ok .adm-ck{color:var(--ok);}
  .adm-checks li.no .adm-ck{color:var(--danger);}
  .adm-ck-label{flex:1; min-width:160px;}
  .adm-ck-pts{font-size:11.8px; color:var(--ink-500); white-space:nowrap;}
  .adm-ck-why{
    flex-basis:100%; background:#FBF1EE; border-right:3px solid #B23A2E; border-radius:7px;
    padding:7px 11px; font-size:12.6px; line-height:1.8; color:#8C2E24;
  }
  .adm-log{font-size:12.8px;}
  .adm-log th{font-size:12.2px;}

  @media(max-width:880px){
    .adm-main{padding:16px 12px 90px;}
    .adm-panel{padding:14px 12px 18px; border-radius:0 0 12px 12px;}
    .tabs .tab-btn{padding:9px 14px; font-size:13px;}
    .adm-table{font-size:12.6px;}
    .adm-table th,.adm-table td{padding:7px 7px;}
    .modal{padding:8px;}
    .modal-box{max-height:94vh;}
    .modal-body{padding:14px 13px 20px;}
  }

  /* ===== Task 11: روابط الامتحانات في الفهرس + كارت دعوة امتحان الأسبوع ===== */
  .tab.exam-link{color:var(--gold-100); text-decoration:none;}
  .week-cta{border:2px dashed var(--gold-500);}
  .week-cta .cta-actions{display:flex; flex-wrap:wrap; gap:10px; margin-top:6px;}
  #sectionsContainer a.btn{text-decoration:none;}
