/* LAPORAN MINGGUAN — mengikuti tema gelap portal */
.lm-wrap{ display:grid; grid-template-columns:230px minmax(0,1fr); gap:16px; align-items:start; margin-top:16px; }
.lm-side{ border:1px solid var(--line); border-radius:6px; background:rgba(10,36,64,.35); position:sticky; top:12px; }
.lm-side-h{ padding:11px 14px; border-bottom:1px solid var(--line); font-family:'Space Grotesk',sans-serif; font-weight:600; font-size:14px; }
.lm-pers{ display:flex; flex-direction:column; gap:4px; padding:8px; max-height:70vh; overflow:auto; }
.lm-per{ text-align:left; font:inherit; color:var(--foam-100); background:transparent; border:1px solid transparent; border-radius:6px; padding:8px 10px; cursor:pointer; display:flex; flex-direction:column; gap:2px; }
.lm-per b{ font-size:13px; font-weight:600; }
.lm-per small{ font-size:11px; color:var(--slate-400); }
.lm-per:hover{ background:rgba(255,255,255,.05); }
.lm-per.is-on{ background:rgba(95,163,204,.16); border-color:var(--sea-400); }
.lm-main{ min-width:0; }
.lm-bar{ display:flex; flex-wrap:wrap; align-items:flex-end; justify-content:space-between; gap:10px 16px; }
.lm-title{ font-family:'Space Grotesk',sans-serif; font-size:20px; margin:0; }
.lm-bar small{ color:var(--slate-300); font-size:12.5px; }
.lm-actions{ display:flex; flex-wrap:wrap; gap:8px; }
.lm-btn{ font:inherit; font-size:13px; color:var(--foam-100); background:rgba(255,255,255,.06); border:1px solid var(--line); border-radius:6px; padding:7px 13px; cursor:pointer; }
.lm-btn:hover{ border-color:var(--sea-400); }
.lm-btn.pri{ background:var(--orange-500); border-color:var(--orange-500); color:#fff; font-weight:600; }
.lm-btn.pri:hover{ background:var(--orange-400); }
.lm-info{ margin:10px 0 0; font-size:12.5px; color:var(--slate-400); }
.lm-info.is-edit{ color:var(--orange-400); }
.lm-msg{ margin:8px 0 0; font-size:12.5px; color:var(--sea-400); }
.lm-msg.is-bad{ color:#ff8d7a; }
.lm-kpis{ display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:10px; margin:14px 0; }
.lm-kpi{ border:1px solid var(--line); border-radius:6px; background:rgba(10,36,64,.35); padding:12px; display:flex; flex-direction:column; gap:2px; }
.lm-kpi b{ font-family:'Space Grotesk',sans-serif; font-size:24px; line-height:1.1; }
.lm-kpi span{ font-size:12px; color:var(--slate-300); }
.lm-kpi small{ font-size:11px; color:var(--orange-400); }
.lm-card{ border:1px solid var(--line); border-radius:6px; background:rgba(10,36,64,.35); padding:14px; margin-bottom:12px; }
.lm-card h2{ font-family:'Space Grotesk',sans-serif; font-size:15px; margin:0 0 10px; }
.lm-card h2 small{ font-family:'IBM Plex Sans',sans-serif; font-weight:400; font-size:12px; color:var(--slate-400); margin-left:6px; }
.lm-narasi{ font-size:14px; line-height:1.6; margin:0; }
.lm-empty{ font-size:13px; color:var(--slate-400); margin:0; }
.lm-scroll{ overflow-x:auto; }
.lm-tbl{ width:100%; border-collapse:collapse; font-size:12.5px; }
.lm-tbl th{ text-align:left; font-weight:600; color:var(--slate-300); font-size:11.5px; padding:6px 8px; border-bottom:1px solid var(--line); white-space:nowrap; }
.lm-tbl td{ padding:6px 8px; border-bottom:1px solid rgba(234,243,246,.07); vertical-align:top; }
.lm-tbl td small{ display:block; color:var(--slate-400); font-size:11px; }
.lm-tbl td:nth-child(n+2):not(:last-child){ text-align:center; }
.lm-ol{ margin:0; padding-left:20px; font-size:13px; line-height:1.55; }
.lm-t,.lm-n,.lm-ta{ font:inherit; font-size:13px; color:var(--foam-100); background:rgba(7,27,46,.7); border:1px solid var(--line); border-radius:5px; padding:5px 7px; width:100%; }
.lm-n{ width:58px; text-align:center; }
.lm-ta{ resize:vertical; line-height:1.5; }
.lm-t:focus,.lm-n:focus,.lm-ta:focus{ outline:none; border-color:var(--sea-400); }
.lm-x{ font:inherit; font-size:12px; color:#ff8d7a; background:none; border:1px solid transparent; border-radius:5px; padding:3px 7px; cursor:pointer; }
.lm-x:hover{ border-color:#ff8d7a; }
@media (max-width:1100px){ .lm-kpis{ grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (max-width:820px){
  .lm-wrap{ grid-template-columns:1fr; }
  .lm-side{ position:static; }
  .lm-pers{ flex-direction:row; max-height:none; overflow-x:auto; }
  .lm-per{ flex:0 0 auto; }
}
@media (max-width:520px){ .lm-kpis{ grid-template-columns:repeat(2,minmax(0,1fr)); } }

/* submenu LOG */
#sub-log .side-sublink span{ width:16px; text-align:center; font-size:12px; }
.lm-kind{ display:flex; gap:6px; padding:8px 8px 0; }
.lm-kind .loc-tab{ flex:1; padding:6px 8px; font-size:12.5px; }
