/* ══════════════════════════════════════════════════════════
   SEKOLAH PRO — MODUL LAPORAN
   Diekstrak dari index.html <style> — selektor tidak diubah.
   ══════════════════════════════════════════════════════════ */
/* ══ LAPORAN & CETAK ══ */
.lap-card{background:var(--s1);border:1px solid var(--bdr);border-radius:var(--r2);padding:14px;display:flex;align-items:center;gap:14px;cursor:pointer;transition:all .15s}
.lap-card:active{border-color:var(--grn);transform:scale(.98)}
.lap-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:24px;flex-shrink:0}
.lap-info{flex:1}
.lap-title{font-weight:800;font-size:13px}
.lap-desc{font-size:11px;color:var(--t3);margin-top:2px}
.lap-arrow{font-size:18px;color:var(--t3)}

/* Print preview */
@media print {
  #hdr,#ticker-bar,#bottom-nav,#sidebar-wrap,.modal-bg,#notif{display:none!important}
  body,html{overflow:auto!important;height:auto!important}
  .page{position:static!important;display:block!important;padding:0!important}
  #print-area{display:block!important}
  .no-print{display:none!important}
}
#print-area{display:none;background:#fff;color:#000;font-family:'Courier New',monospace;padding:20px;font-size:11px}
.print-header{text-align:center;margin-bottom:14px;border-bottom:2px solid #000;padding-bottom:10px}
.print-title{font-size:16px;font-weight:900;letter-spacing:1px}
.print-sub{font-size:11px;color:#555;margin-top:3px}
.print-table{width:100%;border-collapse:collapse;margin-top:10px}
.print-table th,.print-table td{border:1px solid #ccc;padding:5px 8px;font-size:10px;text-align:left}
.print-table th{background:#f0f0f0;font-weight:900}
.print-footer{margin-top:14px;text-align:center;font-size:10px;color:#888;border-top:1px solid #ccc;padding-top:6px}


/* ══ REMINDER / ALERT PANEL ══ */
.reminder-item{display:flex;align-items:start;gap:10px;padding:10px 0;border-bottom:1px solid var(--bdr)}
.reminder-item:last-child{border-bottom:none}
.reminder-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0;margin-top:3px}
.reminder-info{flex:1}
.reminder-title{font-size:12px;font-weight:700}
.reminder-sub{font-size:10px;color:var(--t3);margin-top:2px}
.reminder-action{flex-shrink:0}
.alert-banner{background:var(--red-bg);border:1px solid rgba(255,82,82,.3);border-radius:var(--r);padding:10px 14px;display:flex;align-items:center;gap:10px;margin-bottom:8px}
.alert-banner-warn{background:var(--yel-bg);border-color:rgba(255,202,40,.3)}
.alert-banner-info{background:var(--blu-bg);border-color:rgba(68,138,255,.3)}


/* ══ CHART MINI ══ */
.mini-chart{display:flex;align-items:flex-end;gap:3px;height:60px;padding-top:4px}
.mini-bar{flex:1;border-radius:2px 2px 0 0;min-width:4px;transition:height .6s cubic-bezier(.4,0,.2,1);position:relative;cursor:pointer}
.mini-bar-lbl{position:absolute;bottom:-16px;left:50%;transform:translateX(-50%);font-size:7px;color:var(--t3);white-space:nowrap}
.mini-chart-wrap{overflow-x:auto}


/* ══ REKAP TABLE ══ */
.rekap-tbl{width:100%;border-collapse:collapse;font-size:12px}
.rekap-tbl th{background:var(--s2);padding:8px 10px;text-align:left;font-size:10px;font-weight:700;color:var(--t3);text-transform:uppercase;letter-spacing:.4px;border-bottom:1px solid var(--bdr);position:sticky;top:0}
.rekap-tbl td{padding:8px 10px;border-bottom:1px solid var(--bdr);color:var(--t2)}
.rekap-tbl tr:last-child td{border-bottom:none}
.rekap-tbl tr:hover td{background:rgba(255,255,255,.015)}
