/* ==========================================================================
   بنك المنافسات والمسابقات — يعتمد على ألوان المنصة وسلّم خطوطها (--fs-*)
   ========================================================================== */
.cp{
  --cp-good:#0E9F6E; --cp-good-soft:rgba(14,159,110,.12);
  --cp-warn:#B7791F; --cp-warn-soft:rgba(183,121,31,.14);
  --cp-bad:#D9364F; --cp-bad-soft:rgba(217,54,79,.11);
  --cp-acc-soft:rgba(46,111,208,.10);
}
@media (prefers-color-scheme: dark){ :root:not([data-theme="light"]) .cp{ --cp-good:#4CC795; --cp-warn:#E3B04B; --cp-bad:#F27387; --cp-acc-soft:rgba(143,179,234,.16); } }
:root[data-theme="dark"] .cp{ --cp-good:#4CC795; --cp-warn:#E3B04B; --cp-bad:#F27387; --cp-acc-soft:rgba(143,179,234,.16); }

.cp .m{direction:ltr; unicode-bidi:isolate; font-family:"Segoe UI",Arial,sans-serif; white-space:nowrap}
.cp .cp-sol .m{white-space:normal}
.cp .cp-code{display:block; direction:ltr; text-align:left; unicode-bidi:isolate; white-space:pre; overflow-x:auto; font-family:Consolas,"Courier New",monospace; font-size:var(--fs-sm); line-height:1.6; background:var(--surface-2); border:1px solid var(--border); border-radius:8px; padding:10px 12px; margin:10px 0 4px}
.cp .muted{color:var(--muted); font-size:var(--fs-sm)}
.cp .num{font-variant-numeric:tabular-nums}

/* القوائم المتسلسلة */
.cp-pick{padding:18px 22px}
.cp-pick-grid{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px}
.cp-pick-grid .field{min-width:0}
@media (max-width: 760px){ .cp-pick-grid{grid-template-columns:1fr} }

/* بطاقات النماذج */
.cp-about{display:flex; flex-direction:column; gap:6px; margin-bottom:14px}
.cp-about h2{margin:0; font-size:var(--fs-xl); color:var(--navy)}
.cp-about p{margin:0; font-size:var(--fs-base); color:var(--muted); line-height:1.75}
.cp-chips{display:flex; flex-wrap:wrap; gap:6px}
.cp-topics{margin-top:4px}
.cp-topics summary{cursor:pointer; list-style:none; display:inline-flex; align-items:center; gap:6px; color:var(--muted,#64748b); font-size:13px; padding:4px 0; user-select:none}
.cp-topics summary::-webkit-details-marker{display:none}
.cp-topics summary::before{content:""; width:7px; height:7px; border-left:2px solid currentColor; border-bottom:2px solid currentColor; transform:rotate(45deg); transition:transform .2s; margin-inline-end:2px}
.cp-topics[open] summary::before{transform:rotate(-45deg)}
.cp-topics[open] .cp-chips{margin-top:8px}
.cp-chip{display:inline-flex; align-items:center; gap:4px; font-size:var(--fs-xs); font-weight:700; padding:3px 10px; border-radius:999px; background:var(--surface-2); border:1px solid var(--border); color:var(--muted); white-space:nowrap}
.cp-chip.acc{background:var(--cp-acc-soft); border-color:transparent; color:var(--navy)}
.cp-chip.gold{background:var(--accent-soft, rgba(240,138,36,.14)); border-color:transparent; color:var(--gold)}
.cp-forms{display:grid; grid-template-columns:repeat(auto-fill,minmax(250px,1fr)); gap:14px}
.cp-form{display:flex; flex-direction:column; gap:10px; background:var(--surface); border:1px solid var(--border); border-radius:16px; padding:16px 18px; box-shadow:var(--shadow)}
.cp-form .hd{display:flex; align-items:center; justify-content:space-between; gap:8px}
.cp-form .hd b{font-size:var(--fs-md)}
.cp-form p{margin:0; font-size:var(--fs-sm); color:var(--muted); line-height:1.7}
.cp-form .acts{display:flex; gap:8px; flex-wrap:wrap; margin-top:auto}
.cp .btn{padding:9px 16px; font-size:var(--fs-ctl); text-decoration:none}
.cp-login{text-align:center; padding:28px 20px}
.cp-login h2{font-size:var(--fs-xl); color:var(--navy); margin:0 0 6px}
.cp-login p{font-size:var(--fs-base); color:var(--muted); margin:0 0 16px; line-height:1.75}
.cp-login .btn-row{display:flex; gap:10px; justify-content:center; flex-wrap:wrap}
.cp-resume{display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; border:1px solid var(--cp-warn); background:var(--cp-warn-soft); border-radius:14px; padding:12px 16px; margin-bottom:14px; font-size:var(--fs-base)}

/* الاختبار */
.cp-bar{position:sticky; top:64px; z-index:30; display:flex; align-items:center; justify-content:space-between; gap:10px; flex-wrap:wrap; background:var(--surface); border:1px solid var(--border); border-radius:14px; padding:10px 16px; margin-bottom:14px; box-shadow:var(--shadow)}
.cp-bar b{font-size:var(--fs-md)}
.cp-bar .end{display:flex; align-items:center; gap:8px}
.cp-timer{font-family:"Segoe UI",Arial,sans-serif; font-size:var(--fs-md); font-weight:700; padding:4px 12px; border-radius:10px; background:var(--surface-2); direction:ltr; font-variant-numeric:tabular-nums}
.cp-timer.low{background:var(--cp-bad-soft); color:var(--cp-bad)}
.cp-prog{flex-basis:100%; height:4px; border-radius:4px; background:var(--surface-2); overflow:hidden}
.cp-prog i{display:block; height:100%; background:var(--navy); transition:width .2s}
.cp-exam{display:grid; grid-template-columns:minmax(0,1fr) 230px; gap:16px; align-items:start}
.cp-q{background:var(--surface); border:1px solid var(--border); border-radius:16px; padding:20px 22px}
.cp-qhead{display:flex; justify-content:space-between; align-items:center; gap:8px; flex-wrap:wrap; margin-bottom:10px}
.cp-qtext{font-size:var(--fs-base); line-height:1.85; margin:0 0 14px}
.cp-opts{display:flex; flex-direction:column; gap:8px}
.cp-opt{display:flex; gap:12px; align-items:flex-start; width:100%; text-align:start; padding:10px 14px; border:1.5px solid var(--border); border-radius:12px; background:var(--surface); color:var(--text); font-family:inherit; font-size:var(--fs-base); line-height:1.75; cursor:pointer}
.cp-opt:hover{border-color:var(--navy)}
.cp-opt .let{flex:none; width:28px; height:28px; border-radius:50%; display:grid; place-items:center; background:var(--surface-2); font-weight:800; font-size:var(--fs-ctl); margin-top:1px}
.cp-opt .ot{min-width:0}
.cp-opt.sel{border-color:var(--navy); background:var(--cp-acc-soft)}
.cp-opt.sel .let{background:var(--navy); color:#fff}
.cp-opt:focus-visible, .cp-cell:focus-visible{outline:2px solid var(--navy); outline-offset:2px}
.cp-nav{display:flex; justify-content:space-between; gap:8px; flex-wrap:wrap; margin-top:16px}
.cp-nav > div{display:flex; gap:8px}
.cp-side{position:sticky; top:136px; background:var(--surface); border:1px solid var(--border); border-radius:16px; padding:16px; display:flex; flex-direction:column; gap:12px}
.cp-side b{font-size:var(--fs-md)}
.cp-cells{display:grid; grid-template-columns:repeat(5,1fr); gap:6px}
.cp-cell{aspect-ratio:1; max-width:100%; border:1px solid var(--border); border-radius:8px; background:var(--surface); color:var(--text); font-family:inherit; font-size:var(--fs-xs); font-weight:800; cursor:pointer; position:relative; padding:0}
.cp-cell.done{background:var(--cp-acc-soft); border-color:var(--navy); color:var(--navy)}
.cp-cell.cur{box-shadow:0 0 0 2px var(--text)}
.cp-cell.flag::after{content:""; position:absolute; top:3px; inset-inline-start:3px; width:6px; height:6px; border-radius:50%; background:var(--accent)}
.cp-legend{display:flex; flex-direction:column; gap:2px; font-size:var(--fs-xs); color:var(--muted)}
.cp-legend span{display:flex; align-items:center; gap:6px}
.cp-legend i{width:10px; height:10px; border-radius:3px; display:inline-block}
.cp-confirm{border:1px solid var(--cp-warn); background:var(--cp-warn-soft); border-radius:14px; padding:16px 18px; margin-bottom:14px; display:flex; flex-direction:column; gap:10px}
.cp-confirm b{font-size:var(--fs-md)}
.cp-confirm p{margin:0; font-size:var(--fs-base); line-height:1.75}
.cp-confirm .row{display:flex; gap:8px; flex-wrap:wrap}
.cp-err{border:1px solid var(--cp-bad); background:var(--cp-bad-soft); color:var(--text); border-radius:12px; padding:10px 14px; margin-bottom:12px; font-size:var(--fs-base)}
@media (max-width: 860px){
  .cp-exam{grid-template-columns:minmax(0,1fr)}
  .cp-side{position:static; order:-1}
  .cp-cells{grid-template-columns:repeat(10,1fr)}
  .cp-bar{top:0}
}

/* التقرير */
.cp-rhead{display:flex; align-items:flex-end; justify-content:space-between; gap:10px; flex-wrap:wrap; margin-bottom:14px}
.cp-rhead .ey{font-size:var(--fs-xs); font-weight:800; color:var(--gold)}
.cp-rhead h2{margin:0; font-size:var(--fs-xl); color:var(--navy)}
.cp-rhead .acts{display:flex; gap:8px; flex-wrap:wrap}
.cp-score{display:grid; grid-template-columns:auto minmax(0,1fr); gap:22px; align-items:center}
.cp-ring{width:132px; height:132px; max-width:100%}
.cp-ring text{fill:var(--text); font-family:"Segoe UI",Arial,sans-serif}
.cp-lv{display:inline-block; font-weight:800; font-size:var(--fs-md); padding:2px 12px; border-radius:999px}
.cp .cp-lv.g{background:var(--cp-good-soft); color:var(--cp-good)} .cp .cp-lv.w{background:var(--cp-warn-soft); color:var(--cp-warn)} .cp .cp-lv.b{background:var(--cp-bad-soft); color:var(--cp-bad)}
.cp-facts{display:flex; gap:20px; flex-wrap:wrap; margin-top:8px; font-size:var(--fs-sm); color:var(--muted)}
.cp-facts div{display:flex; flex-direction:column}
.cp-facts b{font-size:var(--fs-md); font-variant-numeric:tabular-nums; color:var(--text)}
.cp .card h3{margin:0 0 4px; font-size:var(--fs-xl); color:var(--navy)}
.cp-bars{display:flex; flex-direction:column; gap:12px; margin-top:14px}
.cp-brow{display:grid; grid-template-columns:minmax(0,1fr) auto; gap:4px 12px; align-items:center}
.cp-brow .lb{font-size:var(--fs-base); min-width:0}
.cp-brow .vl{font-size:var(--fs-sm); color:var(--muted); font-variant-numeric:tabular-nums; direction:ltr}
.cp-track{grid-column:1/-1; height:10px; background:var(--surface-2); border-radius:5px; overflow:hidden; position:relative}
.cp-track i{display:block; height:100%; border-radius:5px}
.cp-track .mk{position:absolute; top:0; bottom:0; width:2px; background:var(--muted); opacity:.45}
.cp .g{background:var(--cp-good)} .cp .w{background:var(--cp-warn)} .cp .b{background:var(--cp-bad)}
.cp-two{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px}
.cp-two .card{margin-bottom:0}
.cp-list{list-style:none; margin:12px 0 0; padding:0; display:flex; flex-direction:column; gap:8px; font-size:var(--fs-base)}
.cp-list li{display:flex; gap:8px; align-items:flex-start}
.cp-tag{flex:none; font-size:var(--fs-xs); font-weight:800; padding:1px 8px; border-radius:6px; margin-top:4px}
.cp-tag.g{background:var(--cp-good-soft); color:var(--cp-good)} .cp-tag.w{background:var(--cp-warn-soft); color:var(--cp-warn)} .cp-tag.b{background:var(--cp-bad-soft); color:var(--cp-bad)}
.cp-recs{display:flex; flex-direction:column; gap:14px; margin-top:14px}
.cp-rec{border-inline-start:3px solid var(--accent); padding-inline-start:12px}
.cp-rec b{font-size:var(--fs-md)}
.cp-rec p{margin:4px 0 0; font-size:var(--fs-base); line-height:1.75}
.cp-rec p.muted{font-size:var(--fs-sm)}
.cp-hist{width:100%; border-collapse:collapse; font-size:var(--fs-sm); margin-top:10px}
.cp-hist th, .cp-hist td{padding:7px 8px; border-bottom:1px solid var(--border); text-align:start; font-variant-numeric:tabular-nums}
.cp-tw{overflow-x:auto}
.cp-rv-h{display:flex; justify-content:space-between; align-items:center; gap:8px; flex-wrap:wrap; margin:6px 0 12px}
.cp-rv-h h3{margin:0; font-size:var(--fs-xl); color:var(--navy)}
.cp-filters{display:flex; gap:6px; flex-wrap:wrap}
.cp-filters button{font-family:inherit; font-size:var(--fs-ctl); font-weight:700; padding:6px 14px; border-radius:999px; border:1px solid var(--border); background:var(--surface); color:var(--text); cursor:pointer}
.cp-filters button.on{background:var(--navy); border-color:var(--navy); color:#fff}
.cp-rq{background:var(--surface); border:1px solid var(--border); border-radius:14px; padding:16px 18px; margin-bottom:12px}
.cp-rq.ok{border-inline-start:4px solid var(--cp-good)} .cp-rq.no{border-inline-start:4px solid var(--cp-bad)} .cp-rq.skip{border-inline-start:4px solid var(--cp-warn)}
.cp-rq > p{margin:0; font-size:var(--fs-base); line-height:1.85}
.cp-ro{display:flex; flex-direction:column; gap:4px; margin:10px 0}
.cp-ro div{padding:4px 10px; border-radius:8px; font-size:var(--fs-base)}
.cp-ro .right{background:var(--cp-good-soft)}
.cp-ro .wrong{background:var(--cp-bad-soft)}
.cp-ro small{font-size:var(--fs-xs); font-weight:800}
.cp-sol{background:var(--surface-2); border-radius:10px; padding:10px 14px; font-size:var(--fs-base); line-height:1.85}
@media (max-width: 760px){
  .cp-two{grid-template-columns:minmax(0,1fr)}
  .cp-score{grid-template-columns:minmax(0,1fr); justify-items:start}
}
@media (prefers-reduced-motion: reduce){ .cp *{transition:none !important} }

/* تبويبا «النماذج» و«سجلّي ومستواي» */
.cp-tabs{display:inline-flex; gap:4px; padding:4px; margin-bottom:16px; background:var(--surface); border:1px solid var(--border); border-radius:14px}
.cp-tabs button{font-family:inherit; font-size:var(--fs-ctl); font-weight:700; padding:8px 18px; border:0; border-radius:10px; background:transparent; color:var(--muted); cursor:pointer}
.cp-tabs button.on{background:var(--navy); color:#fff}
.cp-tabs button:focus-visible{outline:2px solid var(--navy); outline-offset:2px}

/* سجلّي ومستواي */
.cp-stagecards{display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:16px; margin-bottom:22px}
.cp-stagecards .card{margin-bottom:0}
.cp-stagecard .hd{display:flex; align-items:center; justify-content:space-between; gap:8px; margin-bottom:8px}
.cp-stagecard .hd b{font-size:var(--fs-md)}
.cp-stagecard .hd .cp-tag{margin-top:0}
.cp-stagecard .big{font-size:var(--fs-2xl); font-weight:800; color:var(--navy); line-height:1.2}
.cp-stagecard .big small{font-size:var(--fs-md); font-weight:700; color:var(--muted)}
.cp-trend{width:100%; min-width:420px; height:auto; display:block; margin-top:12px}
.cp-legend-h{display:flex; gap:16px; flex-wrap:wrap; margin-top:6px; font-size:var(--fs-sm); color:var(--muted)}
.cp-legend-h span{display:flex; align-items:center; gap:6px}
.cp-legend-h i{width:10px; height:10px; border-radius:50%; display:inline-block}
.cp-nexts{display:flex; gap:8px; flex-wrap:wrap; margin-top:12px}
.cp .btn.cp-sm{padding:5px 12px; font-size:var(--fs-sm)}
.cp-rec .cp-tag{margin-inline-start:6px}
.cp .cp-print-row{display:flex; flex-wrap:wrap; gap:8px; margin-top:14px; padding-top:12px; border-top:1px solid var(--border)}
/* أسئلة البنك: القطعة والصورة والنص */
.cp .cp-passage{display:block; background:var(--surface-2); border:1px solid var(--border); border-inline-start:4px solid var(--navy); border-radius:10px; padding:12px 14px; margin-bottom:12px; font-weight:500; line-height:1.9; max-height:340px; overflow:auto}
.cp .cp-stem{display:block}
.cp .cp-qimg{display:block; max-width:100%; height:auto; max-height:320px; margin:10px auto 0; border:1px solid var(--border); border-radius:8px; background:#fff}
/* قبل البدء: تشغيل التوقيت */
.cp .cp-pre h2{margin:0 0 12px}
.cp .cp-switch{display:flex; align-items:center; gap:10px; margin:16px 0 6px; cursor:pointer; font-size:var(--fs-md)}
.cp .cp-switch input{position:absolute; opacity:0; width:1px; height:1px}
.cp .cp-switch .sw{flex:0 0 46px; height:26px; border-radius:13px; background:var(--border); position:relative; transition:background .2s}
.cp .cp-switch .sw::after{content:""; position:absolute; top:3px; inset-inline-start:3px; width:20px; height:20px; border-radius:50%; background:#fff; box-shadow:0 1px 3px rgba(0,0,0,.25); transition:inset-inline-start .2s}
.cp .cp-switch input:checked + .sw{background:var(--navy)}
.cp .cp-switch input:checked + .sw::after{inset-inline-start:23px}
.cp .cp-switch input:focus-visible + .sw{outline:2px solid var(--gold-bright, #B08D57); outline-offset:2px}
.cp .cp-pre-note{color:var(--muted); font-size:var(--fs-sm); margin:0 0 14px}
.cp .cp-secname{font-size:var(--fs-sm); font-weight:700; color:var(--muted); margin:10px 0 6px}
.cp .cp-timer.free{background:var(--surface-2); color:var(--muted)}
.cp .cp-note{background:var(--surface-2); color:var(--text); border-color:var(--border)}


/* ==========================================================================
   صفحتا «اختبارات قياس» و«المسابقات»: رأس الصفحة، الاختيار بالبطاقات، شبكة النماذج المختصرة
   ========================================================================== */
.cp-page{max-width:1080px}
.cp-hero{display:grid; grid-template-columns:minmax(0,1.5fr) minmax(0,1fr); gap:22px; align-items:center; margin-bottom:22px; padding:30px 32px; border-radius:22px; color:#fff;
  background-color:#14315F; background-image:radial-gradient(rgba(255,255,255,.07) 1px, transparent 1px); background-size:18px 18px; box-shadow:var(--shadow-lg)}
.cp-hero .cp-ey{display:inline-block; font-size:var(--fs-sm); font-weight:800; color:#F08A24; background:rgba(240,138,36,.16); padding:3px 12px; border-radius:999px; margin-bottom:10px}
.cp-hero h1{margin:0 0 8px; font-size:clamp(26px, 3.6vw, 36px); line-height:1.35; color:#fff}
.cp-hero p{margin:0; font-size:var(--fs-base); line-height:1.8; color:#C9D4E5}
.cp-stats{display:grid; grid-template-columns:repeat(auto-fit, minmax(92px, 1fr)); gap:10px}
.cp-stats > div{background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.14); border-radius:14px; padding:12px 14px}
.cp-stats b{display:block; font-size:var(--fs-xl); font-weight:900; color:#fff; line-height:1.3}
.cp-stats span{font-size:var(--fs-sm); color:#C9D4E5}
@media (max-width: 760px){ .cp-hero{grid-template-columns:1fr; padding:22px 18px; border-radius:18px} }
.cp-focus .cp-hero, .cp-focus .cp-how{display:none}

.cp-pick2{display:flex; flex-direction:column; gap:16px; margin-bottom:20px}
.cp-step-t{margin:0 0 10px; font-size:var(--fs-md); font-weight:800; color:var(--navy)}
.cp-cards{display:grid; grid-template-columns:repeat(auto-fill, minmax(220px, 1fr)); gap:12px}
.cp-pcard{display:flex; flex-direction:column; align-items:flex-start; gap:4px; text-align:start; font-family:inherit; cursor:pointer; color:var(--text);
  background:var(--surface); border:1.5px solid var(--border); border-radius:16px; padding:14px 16px; box-shadow:var(--shadow); transition:border-color .15s, transform .12s}
.cp-pcard:hover{border-color:var(--navy); transform:translateY(-1px)}
.cp-pcard b{font-size:var(--fs-md); font-weight:800; color:var(--navy)}
.cp-pcard span{font-size:var(--fs-sm); color:var(--muted)}
.cp-pcard.on{background:var(--grad); border-color:transparent}
.cp-pcard.on b, .cp-pcard.on span{color:#fff}
.cp-pills{display:flex; flex-wrap:wrap; gap:8px}
.cp-pill{font-family:inherit; font-size:var(--fs-ctl); font-weight:700; cursor:pointer; padding:8px 16px; border-radius:999px; background:var(--surface); color:var(--text); border:1.5px solid var(--border)}
.cp-pill .num{font-size:var(--fs-xs); color:var(--muted); margin-inline-start:4px}
.cp-pill.on{background:var(--navy); border-color:var(--navy); color:#fff}
.cp-pill.on .num{color:#C9D4E5}

.cp-forms.dense{grid-template-columns:repeat(auto-fill, minmax(178px, 1fr)); gap:10px}
.cp-forms.dense .cp-form{padding:12px 14px; gap:8px; border-radius:14px}
.cp-forms.dense .cp-form .hd{flex-wrap:wrap; gap:6px}
.cp-forms.dense .cp-form .hd b{font-size:var(--fs-base)}
.cp-forms.dense .acts{gap:6px}
.cp-forms.dense .acts .btn{padding:7px 10px; flex:1 1 auto; text-align:center}
.cp-lock{display:inline-flex; color:var(--muted)}
.cp-form .btn .cp-lk{vertical-align:-2px; margin-inline-end:5px}
.cp-form.locked{background:var(--surface-2); box-shadow:none}
.cp-form.locked .hd b{color:var(--muted)}

.cp-how{margin-top:30px}
.cp-how h2{margin:0 0 12px; font-size:var(--fs-xl); color:var(--navy)}
.cp-how-g{display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:12px}
.cp-how-i{background:var(--surface); border:1px solid var(--border); border-radius:16px; padding:16px 18px; box-shadow:var(--shadow)}
.cp-how-i .n{display:inline-flex; align-items:center; justify-content:center; width:30px; height:30px; border-radius:50%; background:var(--accent, #F08A24); color:#fff; font-weight:800; font-size:var(--fs-sm); margin-bottom:8px}
.cp-how-i b{display:block; font-size:var(--fs-md); margin-bottom:4px}
.cp-how-i p{margin:0; font-size:var(--fs-sm); color:var(--muted); line-height:1.75}
@media (max-width: 760px){ .cp-how-g{grid-template-columns:1fr} }

/* المستوى المتوقع (الرخصة المهنية) */
.cp-level{display:flex; flex-wrap:wrap; align-items:baseline; gap:4px 10px; margin-top:10px; padding:10px 14px; border-radius:12px; background:var(--cp-acc-soft)}
.cp-level span{font-size:var(--fs-sm); color:var(--muted)}
.cp-level b{font-size:var(--fs-md); color:var(--navy)}
.cp-level small{flex-basis:100%; font-size:var(--fs-xs); color:var(--muted); line-height:1.6}

/* ============ أرشيف اختباراتي (my_tests.php) ومؤشرات التحسّن ============ */
.ma-h{margin:0; font-size:var(--fs-xl); color:var(--navy)}
.ma-s{margin:2px 0 6px; font-size:var(--fs-sm)}
.ma-lv{display:grid; grid-template-columns:minmax(0,1fr) auto; gap:6px 12px; align-items:center; padding:14px 0; border-top:1px solid var(--border)}
.ma-lv:first-of-type{border-top:0}
.ma-lv-t{display:flex; flex-direction:column; min-width:0}
.ma-lv-t b{font-size:var(--fs-md)}
.ma-lv-t .muted{font-size:var(--fs-sm)}
.ma-lv-v{display:flex; align-items:center; gap:8px}
.ma-lv-v b{font-size:var(--fs-md); font-variant-numeric:tabular-nums}
.ma-lv-v .cp-tag{margin-top:0}
.ma-lv-bar{grid-column:1/-1}
.ma-lv-b{grid-column:1/-1; display:flex; flex-wrap:wrap; gap:8px}
.ma-head{display:flex; flex-wrap:wrap; align-items:flex-end; justify-content:space-between; gap:10px 16px}
.ma-f{display:flex; flex-wrap:wrap; gap:10px}
.ma-f label{display:flex; flex-direction:column; gap:2px; font-size:var(--fs-sm); color:var(--muted)}
.ma-f select{font-family:inherit; font-size:var(--fs-ctl); min-width:160px; padding:7px 10px; border:1px solid var(--border); border-radius:10px; background:var(--surface); color:var(--text)}
.ma-tbl td{vertical-align:top}
.ma-tbl td .muted{font-size:var(--fs-xs)}
.ma-tags{display:flex; flex-wrap:wrap; gap:4px}
.ma-tags .cp-tag{margin-top:3px}
.cp-tag.ma-free{background:var(--surface-2); color:var(--muted)}
.ma-d{font-weight:800; font-size:var(--fs-sm); white-space:nowrap; font-variant-numeric:tabular-nums}
.ma-d.up{color:var(--cp-good)} .ma-d.dn{color:var(--cp-bad)} .ma-d.eq{color:var(--muted)}
.ma-more{display:flex; align-items:center; justify-content:space-between; gap:10px; margin-top:12px; font-size:var(--fs-sm)}
.ma-none{text-align:center; padding:18px 8px}
/* أدوات أرشيف التخصص داخل «سجلّي ومستواي» */
.cp-arch-h{display:flex; flex-wrap:wrap; align-items:flex-end; justify-content:space-between; gap:10px 16px}
.cp-logbar{display:flex; flex-wrap:wrap; gap:8px; margin:-6px 0 16px}
@media (max-width:560px){ .ma-f, .ma-f label, .ma-f select{width:100%} }
/* الجوال: صفوف الأرشيف بطاقات مكدسة بدل جدول ضيق */
@media (max-width:640px){
  .ma-tbl thead{display:none}
  .ma-tbl, .ma-tbl tbody{display:block}
  .ma-tbl tr{display:grid; grid-template-columns:minmax(0,1fr) auto auto; gap:4px 12px; align-items:center; padding:12px 0; border-bottom:1px solid var(--border);
    grid-template-areas:"test score score" "date ch ch" "ok time btn"}
  .ma-tbl-s tr{grid-template-areas:"test score score" "stage ch ch" "date date date" "ok time btn"}
  .ma-tbl td{border:0; padding:0}
  .ma-tbl .c-test{grid-area:test} .ma-tbl .c-score{grid-area:score; text-align:end} .ma-tbl .c-date{grid-area:date; font-size:var(--fs-xs); color:var(--muted)}
  .ma-tbl .c-stage{grid-area:stage; font-size:var(--fs-xs); color:var(--muted)} .ma-tbl .c-ch{grid-area:ch; text-align:end}
  .ma-tbl .c-ok{grid-area:ok; font-size:var(--fs-sm)} .ma-tbl .c-time{grid-area:time; font-size:var(--fs-sm)} .ma-tbl .c-btn{grid-area:btn}
  .ma-tbl .c-ok::before, .ma-tbl .c-time::before{content:attr(data-l) ": "; color:var(--muted)}
  .ma-tbl .ma-tags{justify-content:flex-end}
  .ma-tbl td.ma-none{display:block; grid-column:1/-1}
  .ma-tbl tr:has(.ma-none){display:block}
}

/* بطاقة الشهادة في التقرير */
.cp .cp-cert{display:flex; align-items:center; gap:14px; flex-wrap:wrap; border-inline-start:4px solid var(--ct)}
.cp .cp-cert-ic{font-size:28px; line-height:1}
.cp .cp-cert-b{flex:1; min-width:220px; display:flex; flex-direction:column; gap:4px}
.cp .cp-cert-b b{font-size:16px; color:var(--ct)}
.cp .cp-cert-b span{font-size:13px}

/* شهاداتي (أرشيف الطالب) */
.ma .ma-certs{display:grid; grid-template-columns:repeat(auto-fill, minmax(300px, 1fr)); gap:12px; margin-top:12px}
.ma .ma-cert{display:flex; align-items:center; gap:12px; padding:12px 14px; border-radius:14px; background:var(--cs); border-inline-start:4px solid var(--ct)}
.ma .ma-cert-ic{font-size:24px; line-height:1}
.ma .ma-cert-b{flex:1; min-width:0; display:flex; flex-direction:column; gap:2px}
.ma .ma-cert-b b{font-size:14px}
.ma .ma-cert-t{font-size:16px; font-weight:800; color:var(--ct)}
.ma .ma-cert-b small{font-size:12px}

/* ===== القدرات – النسخة الإنجليزية (GAT English) — عرض الأسئلة الإنجليزية داخل الصفحة العربية ===== */
.cp .gx-en{display:block; direction:ltr; text-align:left; unicode-bidi:isolate}
.cp .cp-passage.gx-en{border-inline-start:4px solid var(--navy)}
.cp .gx-ins{display:block; font-size:var(--fs-sm, 13px); color:var(--muted); font-style:italic; margin-bottom:6px}
.cp .gx-pt{display:block; margin-bottom:6px; color:var(--navy)}
.cp .gx-p{display:block; margin:0 0 8px}
.cp .gx-p:last-child{margin-bottom:0}
.cp .gx-fig{display:block; direction:ltr; text-align:center; margin:12px 0 4px; color:var(--text)}
.cp .gx-fig svg{max-width:100%; height:auto; overflow:visible}
.cp .gx-cmp, .cp .gx-tbl{display:grid; grid-template-columns:1fr 1fr; margin:10px 0 2px; border:1px solid var(--border); border-radius:8px; overflow:hidden; text-align:center}
.cp .gx-tbl{width:max-content; max-width:100%; margin-inline:auto}
.cp .gx-cmp .gx-h, .cp .gx-tbl .gx-h{background:var(--navy); color:#fff; font-weight:700; padding:6px 10px}
.cp .gx-cmp .gx-c, .cp .gx-tbl .gx-c{padding:8px 10px; border-top:1px solid var(--border)}
.cp .gx-cmp .gx-c + .gx-c{border-inline-start:1px solid var(--border)}
.cp .cp-q:has(.gx-en) .cp-opt{direction:ltr; text-align:left}
.cp article:has(.gx-en) .cp-ro > div{direction:ltr; text-align:left}
.cp .gx-sol-en{display:block; direction:ltr; text-align:left; unicode-bidi:isolate}
.cp .gx-sol-ar{display:block; direction:rtl; text-align:right; margin-top:6px; padding-top:6px; border-top:1px dashed var(--border); color:var(--muted)}
.cp mark{background:none; color:var(--orange, #e8792b); font-weight:700; text-decoration:underline; text-underline-offset:3px}
