:root{--bg:#F7F5F0;--card:#fff;--ink:#1B2333;--muted:#5B6474;--line:#E2DED5;--org:#C2410C;--brand:#1D4E9E;--ok:#1E7B3A;--bad:#B42318}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:"Readex Pro",system-ui,sans-serif;line-height:1.75}
.wrap{max-width:900px;margin:0 auto;padding:0 16px}
.bar{background:#1B2333;color:#fff}.bar .wrap{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap;min-height:58px}
.brand{color:#fff;text-decoration:none;font-weight:700;font-size:1.2rem}.sub{opacity:.8;font-size:.9rem}
.bar nav{margin-inline-start:auto;display:flex;gap:.4rem;flex-wrap:wrap}.bar nav a{color:#fff;text-decoration:none;border:1px solid #ffffff44;border-radius:999px;padding:.15rem .8rem;font-size:.9rem}
main{padding:1.4rem 16px 2rem}h1{font-size:1.6rem;margin:.2rem 0 .4rem}h2{margin:0;font-size:1.3rem}
.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:1.2rem 1.3rem;margin:1rem 0}
.narrow{max-width:460px;margin:1.5rem auto}
label{display:block;margin:.7rem 0;font-weight:600}input{display:block;width:100%;margin-top:.25rem;font:inherit;padding:.55rem .7rem;border:1.5px solid var(--line);border-radius:9px;background:#fff}
input:focus{outline:2px solid var(--brand);border-color:var(--brand)}
.btn{font:inherit;font-weight:700;background:var(--brand);color:#fff;border:0;border-radius:9px;padding:.55rem 1.2rem;cursor:pointer;margin-top:.4rem}
.btn.sm{padding:.2rem .7rem;font-size:.85rem;margin:.1rem}.btn.ghost{background:#fff;color:var(--ink);border:1px solid var(--line)}
.muted{color:var(--muted)}.small{font-size:.85rem}a{color:var(--brand)}
.alert{background:#FFF7E6;border:1px solid #F5D08A;border-radius:9px;padding:.5rem .8rem}.alert.ok{background:#EAF6EE;border-color:#A6D8B5}.alert.bad{background:#FDECEA;border-color:#F3B4AD}
.chead{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.chead .small{margin-inline-start:auto}
.code{background:var(--org);color:#fff;border-radius:7px;padding:0 .5rem;font-weight:700}
.stats{display:flex;flex-wrap:wrap;gap:.5rem;margin:.6rem 0}.stats span{background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:.15rem .6rem;font-size:.9rem}
.dl.main{display:flex;flex-direction:column;background:var(--ok);color:#fff;text-decoration:none;border-radius:12px;padding:.8rem 1rem;font-weight:700;font-size:1.1rem;margin:.8rem 0}
.dl.main small{font-weight:400;opacity:.9;font-size:.85rem}
details{border-top:1px solid var(--line);padding:.5rem 0}summary{cursor:pointer;font-weight:700}
.files{padding-inline-start:1.2rem}.files li{margin:.2rem 0}
.tablewrap{overflow-x:auto}table{border-collapse:collapse;width:100%;background:#fff;font-size:.9rem}th,td{border:1px solid var(--line);padding:.4rem .5rem;text-align:start;vertical-align:top}th{background:var(--bg)}
.st-pending{background:#FFFBF0}.st-rejected,.st-disabled{opacity:.6}.acts form{display:flex;flex-wrap:wrap;gap:.2rem}
.tag{background:var(--brand);color:#fff;border-radius:5px;padding:0 .35rem;font-size:.75rem}
code{background:#EEF1F6;border-radius:4px;padding:0 .3rem;unicode-bidi:isolate;font-family:Consolas,"DejaVu Sans Mono",monospace;font-size:.92em}
.foot{color:var(--muted);font-size:.85rem;padding-bottom:2rem}
.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:0 1rem}
h3{margin:1rem 0 .3rem}.taskpick{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:.4rem}
.tp{display:flex;gap:.5rem;align-items:flex-start;font-weight:400;margin:0;border:1px solid var(--line);border-radius:9px;padding:.4rem .6rem;background:#fff;cursor:pointer}
.tp input{width:auto;margin-top:.45rem}.tp span{display:flex;flex-direction:column;line-height:1.5}
.pill{border-radius:999px;padding:0 .6rem;font-size:.85rem;background:var(--bg);border:1px solid var(--line)}.pill.ok{background:#EAF6EE;color:var(--ok);border-color:#A6D8B5}
.linkbox{display:flex;gap:.4rem;align-items:center}.linkbox input{margin:0}.linkbox .btn{margin:0;white-space:nowrap}
form.inline{display:flex;gap:.4rem;flex-wrap:wrap}
table.res td{text-align:center}table.res td:first-child{text-align:start}
td.pass{background:#EAF6EE}td.fail{background:#FDECEA}td.none{color:var(--muted)}
td details summary{list-style:none;cursor:pointer}td .sub{text-align:start;min-width:260px}
td pre{background:#F4F1EA;padding:.4rem;border-radius:6px;white-space:pre-wrap;text-align:left;font-size:.8rem;max-height:240px;overflow:auto}
.dash-tasks{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}
td .sub{max-width:380px}

td.pend{background:#FFF7E0}.dsub{background:#F6F8FB;border-radius:6px;padding:.4rem .6rem;margin:.2rem 0 .4rem;white-space:normal}

/* الفهارس */
.ixgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.5rem}
.ix{display:flex;flex-direction:column;gap:.15rem;border:1px solid var(--line);border-radius:12px;padding:.6rem .8rem;background:var(--bg);color:var(--ink);text-decoration:none}
.ix:hover{border-color:var(--brand)}.ix.on{border:2px solid var(--brand);background:#EEF3FB}
.ix .code{align-self:flex-start}.ix small{color:var(--muted);font-size:.82rem}
.totop{display:inline-block;margin-top:.5rem;font-size:.85rem;text-decoration:none}
html{scroll-behavior:smooth}

/* ملاحظات المعلمين */
select,textarea{display:block;width:100%;margin-top:.25rem;font:inherit;padding:.5rem .7rem;border:1.5px solid var(--line);border-radius:9px;background:#fff;color:inherit}
textarea{resize:vertical;line-height:1.8}
.fbitem{border:1px solid var(--line);border-radius:12px;padding:.7rem .9rem;margin:.6rem 0;background:#fff}
.fbh{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}
.fbb{margin:.4rem 0;white-space:normal}
.fbr{background:#EEF3FB;border-radius:8px;padding:.4rem .7rem;margin-top:.4rem}
.fbf textarea{margin:.3rem 0}.fbf .inline{display:flex;gap:.4rem;align-items:center}.fbf select{width:auto;margin:0}
.pill.fb-new{background:#FFF1E6;color:#B54708;border-color:#F7C59F}.pill.fb-progress{background:#EEF3FB;color:var(--brand)}
.pill.fb-done{background:#EAF6EE;color:var(--ok);border-color:#A6D8B5}.pill.fb-closed{opacity:.7}
.fbtabs{grid-template-columns:repeat(auto-fit,minmax(110px,1fr))}
.note .ntw{overflow-x:auto;margin:.4rem 0}
.ntbl{border-collapse:collapse;font-size:.85rem;width:100%}
.ntbl th,.ntbl td{border:1px solid var(--line,#ddd);padding:.35rem .5rem;text-align:start;vertical-align:top}
.ntbl th{background:var(--soft,#f3f6f8)}
.ntbl td code{white-space:normal;overflow-wrap:anywhere;font-size:.8rem}
.ntbl td[dir=ltr]{text-align:left}
@media (max-width:640px){.ntbl thead{display:none}.ntbl tr{display:block;border:1px solid var(--line,#ddd);border-radius:8px;margin:.5rem 0;padding:.3rem .5rem}
.ntbl td{display:block;border:0;padding:.15rem 0}.ntbl td:first-child{font-weight:700}
.ntbl td[data-l]::before{content:attr(data-l) ": ";font:600 .75rem system-ui;color:var(--muted,#667);margin-inline-end:.3rem}}
