:root{--ink:#172033;--muted:#64748b;--line:#e5eaf1;--surface:#fff;--canvas:#f4f7fb;--navy:#10263f;--navy-2:#183b5c;--blue:#2463eb;--teal:#0f8f82;--green:#16794d;--green-bg:#eaf8f1;--red:#b42318;--red-bg:#fff0ee;--amber:#a15c07;--amber-bg:#fff7e6;--shadow:0 10px 35px #183b5c12;--ui-body-size:15px;--ui-small-size:13px;--ui-micro-size:12px}*{box-sizing:border-box}html{background:var(--canvas);font-size:16px}body{color:var(--ink);background:var(--canvas);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:var(--ui-body-size);margin:0;line-height:1.5}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.app-shell{grid-template-columns:280px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{background:linear-gradient(180deg, var(--navy), #0d1e31);color:#fff;flex-direction:column;align-self:start;min-height:100vh;padding:24px 18px;display:flex;position:sticky;top:0}.brand{border-bottom:1px solid #ffffff1c;align-items:center;gap:12px;padding:2px 8px 24px;display:flex}.brand-mark{background:#ffffff1f;border-radius:12px;place-items:center;width:48px;height:48px;font-weight:800;display:grid;box-shadow:inset 0 1px #ffffff38}.brand strong{letter-spacing:-.02em;font-size:19px;display:block}.brand span{color:#c0cedb;margin-top:2px;font-size:13px;display:block}.menu{gap:6px;margin-top:22px;display:grid}.menu-item{color:#d2dce6;border-radius:10px;align-items:center;gap:12px;padding:12px;font-size:15px;transition:all .15s;display:flex}.menu-item span{color:#8fa5ba;font-variant-numeric:tabular-nums;width:28px;font-size:13px}.menu-item:hover,.menu-item.active{color:#fff;background:#ffffff17}.menu-item.active span{color:#67e8f9}.sidebar-note{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;gap:10px;margin-top:auto;padding:13px;display:flex}.status-dot{background:#34d399;border-radius:50%;flex:none;width:9px;height:9px;margin-top:4px;box-shadow:0 0 0 4px #34d3991f}.sidebar-note strong{font-size:14px;display:block}.sidebar-note p{color:#b4c2cf;margin:3px 0 0;font-size:13px}.workspace{min-width:0}.topbar{border-bottom:1px solid var(--line);background:#fffffff0;justify-content:space-between;align-items:center;min-height:92px;padding:18px 34px;display:flex}.eyebrow{color:#66778b;letter-spacing:.08em;text-transform:uppercase;margin:0 0 5px;font-size:12px;font-weight:800}.topbar h1{letter-spacing:-.025em;margin:0;font-size:25px}.officer{align-items:center;gap:11px;display:flex}.officer-avatar{color:#fff;background:var(--navy-2);border-radius:50%;place-items:center;width:42px;height:42px;font-size:14px;font-weight:800;display:grid}.officer strong,.officer span{display:block}.officer strong{font-size:14px}.officer span{color:var(--muted);margin-top:2px;font-size:13px}.content{max-width:1480px;margin:0 auto;padding:28px 34px 50px}.notice{color:#1e3a5f;background:#eff6ff;border:1px solid #bfdbfe;border-radius:14px;align-items:center;gap:14px;padding:15px 17px;display:flex}.notice-icon{color:#1d4ed8;background:#dbeafe;border-radius:10px;flex:none;place-items:center;width:38px;height:38px;font-size:13px;font-weight:900;display:grid}.notice strong{font-size:14px;display:block}.notice p{color:#4b6685;margin:3px 0 0;font-size:13px;line-height:1.55}.notice-pill{white-space:nowrap;color:#1d4ed8;background:#dbeafe;border-radius:999px;margin-left:auto;padding:6px 9px;font-size:12px;font-weight:800}.metrics-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:18px;display:grid}.metric-card,.card{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow)}.metric-card{border-radius:14px;padding:19px}.metric-card span{color:var(--muted);font-size:13px;font-weight:700}.metric-card strong{letter-spacing:-.04em;margin:7px 0 4px;font-size:30px;display:block}.metric-card small{color:#738297;font-size:12px}.card{border-radius:16px}.case-header{margin-top:16px;padding:22px}.case-title-row{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.case-title-row h2{letter-spacing:-.02em;margin:0;font-size:22px}.case-title-row h3{color:#42526a;margin:5px 0 0;font-size:16px;font-weight:600}.stage-badge{color:#4338ca;background:#eef2ff;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:800}.case-meta{grid-template-columns:1.3fr 1fr .7fr;gap:20px;margin-top:20px;display:grid}.case-meta span,.source-list span{color:var(--muted);font-size:12px;font-weight:700;display:block}.case-meta strong{margin-top:4px;font-size:14px;line-height:1.5;display:block}.sla-row{margin-top:20px}.sla-label{color:var(--muted);justify-content:space-between;margin-bottom:7px;font-size:12px;display:flex}.sla-label strong{color:#31516d}.progress-track{background:#e9eef5;border-radius:999px;height:8px;overflow:hidden}.progress-fill{border-radius:inherit;background:linear-gradient(90deg, var(--teal), #38bdf8);height:100%}.main-grid{grid-template-columns:minmax(0,1.65fr) minmax(300px,.72fr);align-items:start;gap:16px;margin-top:16px;display:grid}.compliance-card{padding:22px}.section-heading{justify-content:space-between;align-items:center;gap:18px;display:flex}.section-heading.compact{align-items:flex-start}.section-heading h2{letter-spacing:-.02em;margin:0;font-size:19px}.status-summary{flex-wrap:wrap;gap:6px;display:flex}.mini-status,.finding-status,.draft-pill{border-radius:999px;padding:6px 9px;font-size:12px;font-weight:800}.mini-status.patuh{color:var(--green);background:var(--green-bg)}.mini-status.tidak-patuh{color:var(--red);background:var(--red-bg)}.mini-status.semakan{color:var(--amber);background:var(--amber-bg)}.findings-list{border-top:1px solid var(--line);margin-top:15px}.finding{border-bottom:1px solid var(--line);grid-template-columns:38px 1fr;gap:12px;padding:15px 0;display:grid}.finding:last-child{border-bottom:0;padding-bottom:0}.finding-icon{border-radius:9px;place-items:center;width:34px;height:34px;font-size:14px;font-weight:900;display:grid}.finding-icon.patuh{color:var(--green);background:var(--green-bg)}.finding-icon.tidak_patuh{color:var(--red);background:var(--red-bg)}.finding-icon.perlu_semakan{color:var(--amber);background:var(--amber-bg)}.finding-icon.tidak_terpakai{color:#64748b;background:#f1f5f9}.finding-title{align-items:center;gap:8px;display:flex}.finding-title strong{font-size:14px}.finding-status.patuh{color:var(--green);background:var(--green-bg)}.finding-status.tidak_patuh{color:var(--red);background:var(--red-bg)}.finding-status.perlu_semakan{color:var(--amber);background:var(--amber-bg)}.finding-status.tidak_terpakai{color:#64748b;background:#f1f5f9}.finding-body>p{color:#53657a;margin:6px 0 9px;font-size:14px;font-weight:600}.value-compare{flex-wrap:wrap;gap:8px;display:flex}.value-compare span{min-width:145px;color:var(--muted);background:#f7f9fc;border-radius:8px;padding:8px 10px;font-size:13px}.value-compare b{color:var(--ink);margin-left:4px}.finding-body small{color:#6f8095;margin-top:7px;font-size:12px;line-height:1.5;display:block}.right-column{gap:16px;display:grid}.right-column .card{padding:18px}.timeline{gap:0;margin-top:14px;display:grid}.timeline-item{color:#75859a;align-items:flex-start;gap:10px;min-height:46px;font-size:13px;display:flex;position:relative}.timeline-item:not(:last-child):after{content:"";background:#dbe3ec;width:1px;position:absolute;top:17px;bottom:-6px;left:5px}.timeline-dot{background:#fff;border:2px solid #cbd5e1;border-radius:50%;flex:none;width:11px;height:11px}.timeline-item.selesai{color:#3f5c51}.timeline-item.selesai .timeline-dot{background:#10b981;border-color:#10b981}.timeline-item.semasa{color:var(--ink)}.timeline-item.semasa .timeline-dot{border-color:#3b82f6;box-shadow:0 0 0 4px #dbeafe}.source-list{gap:12px;margin-top:12px;display:grid}.source-list div{border-bottom:1px solid var(--line);padding-bottom:10px}.source-list div:last-child{border:0;padding-bottom:0}.source-list strong{margin-top:3px;font-size:13px;line-height:1.5;display:block}.ai-card{background:linear-gradient(#fff,#f8faff);border-color:#d8e4ff}.draft-pill{color:#5b4cc4;background:#efedff}.ai-copy{color:#53657a;margin:14px 0;font-size:13px;line-height:1.7}.ai-card button{color:#fff;cursor:pointer;background:#274c77;border:0;border-radius:9px;width:100%;padding:10px 12px;font-size:13px;font-weight:800}.ai-card button:hover{background:#1d3a5a}.ai-card small{color:#75859a;margin-top:9px;font-size:12px;line-height:1.5;display:block}table{font-size:14px}th,td{line-height:1.45}input,select,textarea{min-height:40px;font-size:14px}@media (max-width:1120px){.app-shell{grid-template-columns:230px minmax(0,1fr)}.metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.main-grid{grid-template-columns:1fr}.right-column{grid-template-columns:repeat(3,minmax(0,1fr))}.brand span{display:none}}@media (max-width:820px){.app-shell{display:block}.sidebar{min-height:auto;padding:14px;position:static}.menu{margin-top:12px;padding-bottom:2px;display:flex;overflow-x:auto}.menu-item{white-space:nowrap}.sidebar-note{display:none}.topbar{padding:16px 18px}.content{padding:18px}.notice{align-items:flex-start}.notice-pill{display:none}.case-meta,.right-column{grid-template-columns:1fr}}@media (max-width:560px){.metrics-grid{grid-template-columns:1fr}.topbar .officer{display:none}.case-title-row{display:block}.stage-badge{margin-top:12px;display:inline-block}.section-heading{flex-direction:column;align-items:flex-start}.status-summary{width:100%}}
.mps-logo{object-fit:contain;background:#fff;border-radius:10px;flex:none;width:58px;height:58px;padding:4px}.brand{align-items:center}.brand strong{font-size:18px;line-height:1.25}.brand span{font-size:13px;line-height:1.35}.menu-group-label{color:#9fb2c5;letter-spacing:.07em;text-transform:uppercase;padding:18px 12px 6px;font-size:12px;font-weight:800}.menu-item{font-size:15px;line-height:1.35}.topbar h1{font-size:27px}.content,.card,.notice,.sidebar-note,table,input,select,textarea,button,table{font-size:15px}th{font-size:14px}input,select,textarea{min-height:42px;line-height:1.45}small,.muted,.helper-text{font-size:13px}.link-button{color:#64748b;cursor:pointer;text-underline-offset:2px;background:0 0;border:0;padding:0;font-size:13px;text-decoration:underline}@media (max-width:1120px){.mps-logo{width:50px;height:50px}.brand strong{font-size:16px}}
