/* [F2] المالية والمعقبين والتقارير والأسعار — يُربط من js/views/fin-common.js. يستعمل رموز app.css فقط (فاتح وداكن). */

/* ---------- عامة ---------- */
.plus{color:var(--faint);font-weight:400}
.fm-empty{padding:12px 18px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.fm-empty svg.i{width:15px;height:15px;flex:none}
.list-empty{padding:8px 0 4px}
.tbl td.wrap{white-space:normal;min-width:150px}
.fft tr.off td,.rp-t tr.off td{opacity:.62}
.fft td .lnk,.rp-t td .lnk{font-weight:600}
.m3.m4{grid-template-columns:repeat(4,minmax(0,1fr))}
.m3 b .muted-t{font-weight:500}

/* ---------- مالية ملف الطالب ---------- */
.fm-cur{display:grid;gap:6px}
.fm-sub{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:12px;color:var(--muted);padding-inline:2px}
.fm-sub span{display:inline-flex;align-items:center;gap:5px}
.fm-sub svg.i{width:13px;height:13px}
.fm-warn{display:flex;align-items:center;gap:8px;padding:9px 12px;border-radius:10px;background:var(--warn-soft);color:var(--warn);font-size:12.5px;font-weight:500}
.fm-warn svg.i{width:15px;height:15px;flex:none}
.fm-acts{display:inline-flex;align-items:center;gap:4px;flex:none}
.plist .pi.ch{background:var(--sky-soft);color:var(--sky-text)}
.plist .pill{height:20px;font-size:11.5px;vertical-align:1px}
.plist .pd .fm-del{margin-top:4px;color:var(--muted)}
.plist .pd .fm-del:hover{color:var(--bad)}
.grp .grp-act{margin-inline-start:auto;height:26px;font-size:12px}
.fm-add{border-radius:0}

/* ---------- صفحة المالية ---------- */
.fin-strip .metric{min-width:0}
.m-val.fin-mv{font-size:22px;white-space:normal;line-height:1.35;display:flex;flex-wrap:wrap;gap:0 6px;align-items:baseline}
.m-val.fin-mv .plus{font-size:16px}
.fin-h{flex-wrap:wrap;gap:10px}
.fin-h .actions{margin-inline-start:auto}
.fin-tot{display:flex;flex-wrap:wrap;gap:6px 18px;padding:10px 18px;font-size:12.5px;color:var(--muted);border-bottom:1px solid var(--line);background:var(--surface-2)}
.fin-tot span:first-child{color:var(--ink);font-weight:600}
.fft td{vertical-align:middle}
.fft td.c-main{white-space:normal;min-width:220px}
.fft td small{display:block;color:var(--muted);font-size:11.5px}
.fin-who{display:block;white-space:nowrap}
.fin-rc{display:flex;align-items:center;gap:6px;justify-content:flex-end}
.fin-rc .up-inline,.fin-rc label{margin:0}
.fin-m{font:600 15px/1.35 var(--f-disp);font-variant-numeric:tabular-nums}
.stc-b .fin-m{display:block;white-space:normal}

/* منتقي الشهر */
.mnav{display:inline-flex;align-items:center;gap:2px;height:36px;padding:0 3px;border:1px solid var(--line-2);border-radius:var(--r-ctl);background:var(--surface);box-shadow:var(--sh-xs)}
.mnav-l{position:relative;display:inline-flex;align-items:center;padding:0 8px;font-size:13px;font-weight:600;min-width:112px;justify-content:center;cursor:pointer;white-space:nowrap}
.mnav-l input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%;border:0}
.mnav .icon-btn[disabled]{opacity:.35;pointer-events:none}

/* ---------- المعقبين ---------- */
.ag-stc{grid-template-columns:repeat(4,minmax(0,1fr))}
.ag-grp{display:inline-flex;align-items:center;gap:5px;color:var(--ink-2)}
.ag-grp svg.i{width:14px;height:14px;color:var(--ok)}
.ag-t td small{display:block;color:var(--muted);font-size:11.5px}
.ag-head{padding:0}
.ag-top{display:flex;align-items:flex-start;gap:16px;padding:20px 22px 14px;flex-wrap:wrap}
.ag-ttl{flex:1;min-width:0}
.ag-ttl h1{font-size:24px;line-height:1.3;margin-top:2px}
.ag-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;align-items:center}
.ag-acts{display:flex;gap:6px;flex-wrap:wrap}
.ag-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line)}
.ag-facts>div{display:grid;gap:3px;padding:12px 22px;min-width:0}
.ag-facts>div+div{border-inline-start:1px solid var(--line)}
.ag-facts small{font-size:11.5px;color:var(--muted)}
.ag-facts span{display:flex;align-items:center;gap:6px;font-size:13.5px;min-width:0;flex-wrap:wrap}
.ag-facts .icon-btn{width:28px;height:28px}
.ag-notes{display:flex;gap:8px;align-items:flex-start;padding:12px 22px;border-top:1px solid var(--line);font-size:13px;color:var(--ink-2);white-space:pre-line}
.ag-notes svg.i{width:15px;height:15px;color:var(--muted);flex:none;margin-top:3px}
.ag-tabs{margin:18px 0 16px}
.ag-stmt tr.nd td{color:var(--muted)}
.ag-stmt td small{display:block;color:var(--muted);font-size:11.5px}

/* التوزيع على الطلاب */
.alloc{display:grid;gap:8px;border:1px solid var(--line);border-radius:12px;padding:12px;background:var(--surface-2)}
.alloc-h{display:flex;align-items:center;justify-content:space-between;gap:8px}
.alloc-list{display:grid}
.alloc-r{display:grid;grid-template-columns:minmax(0,1fr) 150px 130px;gap:8px;align-items:center;padding:8px 0;border-top:1px solid var(--line)}
.alloc-r:first-child{border-top:0}
.alloc-n{min-width:0}
.alloc-n b{display:block;font-weight:500;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.alloc-n small{display:block;color:var(--muted);font-size:11.5px}
.alloc-r .sel{width:100%}
.alloc-in{height:32px;text-align:left}
.alloc-sum{font-size:12.5px;color:var(--muted)}
.alloc-sum.bad-t{color:var(--bad);font-weight:600}

/* ---------- قائمة الأسعار ---------- */
.pr-list{display:grid;padding:0 18px 6px}
.pr-row{display:grid;grid-template-columns:minmax(120px,1fr) minmax(0,1.3fr) minmax(0,1.3fr);gap:10px 16px;align-items:end;padding:12px 0;border-top:1px solid var(--line)}
.pr-row:first-child{border-top:0}
.pr-row.pr-2{grid-template-columns:minmax(120px,1fr) minmax(0,1.6fr)}
.pr-t{display:grid;gap:2px;align-self:center;min-width:0}
.pr-t b{font-weight:600;font-size:13.5px}
.pr-t small{color:var(--muted);font-size:11.5px}
.pr-g{display:grid;gap:5px;min-width:0}
.pr-l{font-size:11.5px;color:var(--muted);font-weight:500}
.pr-in{display:flex;gap:6px}
.pr-in .inp{flex:1;min-width:0;height:38px;text-align:left}
.pr-in .sel{flex:none;width:92px;height:38px}
.pr-warn{grid-column:1/-1;display:flex;align-items:center;gap:6px;font-size:12px;color:var(--warn);font-weight:500}
.pr-warn svg.i{width:14px;height:14px}
.pr-types{padding:0 18px 12px}
.pr-types .lockcell svg.i{width:12px;height:12px}

/* ---------- التقارير ---------- */
.rp-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start}
.rp-t td{white-space:nowrap}
.rp-t tr.rp-tot td{background:var(--surface-2)}
.rp-rows li.sub{padding-inline-start:14px;color:var(--muted);font-size:12.5px;border-top-style:dashed}
.rp-rows li.rp-sum{font-weight:600}
.rp-sec{border:0;background:none;padding:6px 2px 0;font-size:13px}
.rp-net .money{padding-top:2px}

/* ---------- الشاشات الصغيرة ---------- */
@media (max-width:1100px){
  .ag-stc{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rp-grid{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:760px){
  .ag-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ag-facts>div:nth-child(3){border-inline-start:0}
  .ag-facts>div:nth-child(n+3){border-top:1px solid var(--line)}
  .pr-row,.pr-row.pr-2{grid-template-columns:minmax(0,1fr)}
  .m3.m4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .m3.m4>div:nth-child(3){border-inline-start:0}
  .m3.m4>div:nth-child(n+3){border-top:1px solid var(--line)}
  .fin-h .actions{margin-inline-start:0;width:100%}
}
@media (max-width:680px){
  /* الجداول تصير بطاقات: الاسم والإجراء بالسطر الأول، والمبالغ تحتها بعناوينها */
  .tbl-wrap:has(>.fft){padding:0}
  .fft thead{display:none}
  .fft,.fft tbody{display:block}
  .fft tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 10px;padding:12px 14px;border-bottom:1px solid var(--line)}
  .fft tbody tr:last-child{border-bottom:0}
  .fft td{display:block;padding:0;border:0!important;white-space:normal;min-width:0;text-align:start}
  .fft td.c-main{grid-column:1;grid-row:1;min-width:0}
  .fft td.c-act,.fft td.c-date{grid-column:2;grid-row:1;align-self:start;text-align:end}
  .fft td:not(.c-main):not(.c-act):not(.c-date){grid-column:1/-1}
  .fft td.c-pad{padding-inline-start:38px}
  .fft td[data-l]::before{content:attr(data-l);color:var(--muted);font-size:12px;font-weight:400;margin-inline-end:8px}
  .fft td.c-hide{display:none}
  .fft td.num b,.fft td.num small{display:inline}
  .fft td.num small{margin-inline-start:4px}
  .fft td.c-date small{display:block}
  .fft.pays td.c-amt{grid-column:2;grid-row:1;text-align:end}
  .fft.pays td.c-date{grid-column:1;grid-row:2;text-align:start;font-size:12px;color:var(--muted)}
  .fft.pays td.c-date small{display:inline;margin-inline-start:6px}
  .fft.pays td.c-type{grid-column:2;grid-row:2;text-align:end;font-size:12px;color:var(--muted)}
  .fft .fin-rc{justify-content:flex-start;flex-wrap:wrap}
  .fft .fin-who{display:inline-block;margin-inline-end:10px}
  .ag-top{padding:16px 16px 12px;gap:12px}
  .ag-ttl h1{font-size:20px}
  .ag-facts>div{padding:10px 16px}
  .ag-notes{padding:10px 16px}
  .ag-acts{width:100%}
  .ag-acts .btn{flex:1}
  .ag-stc .stc-b{padding:10px 12px}
  .m-val.fin-mv{font-size:18px;flex-direction:column;align-items:flex-start;gap:2px}
  .m-val.fin-mv .plus{display:none}
  .alloc-r{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .alloc-n{grid-column:1/-1}
  .fin-tot{padding:10px 14px}
  .pr-list{padding:0 14px 6px}
  .mnav-l{min-width:96px}
  /* المبالغ الكبيرة بثلاث خانات ما تنقرأ على الموبايل: كل خانة سطر (العنوان يمين والمبلغ يسار) */
  .rp-net .m3,.rp-ag .m3,.fm-cur .m3:not(.m4){grid-template-columns:minmax(0,1fr)}
  .rp-net .m3>div,.rp-ag .m3>div,.fm-cur .m3:not(.m4)>div{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding:8px 12px}
  .rp-net .m3>div+div,.rp-ag .m3>div+div,.fm-cur .m3:not(.m4)>div+div{border-inline-start:0;border-top:1px solid var(--line)}
  .m3.m4 b{font-size:14px}
}
