/* حاسبة الغيابات */
.quick{margin-top:0;}
.subj-top{display:flex;gap:8px;margin-bottom:10px;}
.subj-top .name{font-weight:700;}
.absent-row{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin:2px 0 10px;}
.absent-row .lbl{font-size:.86rem;font-weight:700;color:var(--ink-2);}
.stepper{display:flex;align-items:center;gap:6px;}
.stepper .inp{width:70px;text-align:center;font-weight:700;font-variant-numeric:tabular-nums;}
.stepper .soft-btn{min-width:38px;}
.meter{position:relative;height:12px;border-radius:999px;background:var(--surface-2);overflow:hidden;}
.meter .fill{position:absolute;inset-block:0;inset-inline-start:0;width:0;background:var(--ok);border-radius:999px;transition:width .2s;}
.meter .mk{position:absolute;inset-block:0;width:2px;background:var(--ink-2);opacity:.7;}
.subj[data-s="near"] .fill{background:var(--warn);}
.subj[data-s="warn"] .fill{background:var(--brand);}
.subj[data-s="fail"] .fill{background:var(--danger);}
.status{margin:8px 0 0;font-size:.93rem;}
.status b{font-variant-numeric:tabular-nums;}
.subj[data-s="fail"]{border-color:var(--danger);}
.subj[data-s="warn"]{border-color:var(--brand);}
.summary ul{margin:0;padding-inline-start:18px;}
.summary li{margin-bottom:4px;}
