/* STARS RCM PRO v4.1.0-uat2 — PPM Program */
.ppm-shell{display:grid;gap:12px}
.ppm-hero{padding:16px;border:1px solid rgba(245,183,0,.45);border-radius:18px;
  background:linear-gradient(135deg,rgba(245,183,0,.12),rgba(66,164,255,.06))}
.ppm-hero h3{margin:0 0 5px}.ppm-hero p{margin:0;color:var(--muted);font-size:12px;line-height:1.5}
.ppm-live{display:inline-flex;align-items:center;gap:6px;margin-top:10px;padding:6px 9px;
  border:1px solid rgba(39,194,129,.4);border-radius:999px;color:#59dba5;font-size:10px;font-weight:900}
.ppm-live:before{content:"";width:7px;height:7px;border-radius:50%;background:#39d18e;box-shadow:0 0 9px #39d18e}
.ppm-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}
.ppm-kpis div{padding:10px 7px;border:1px solid var(--border);border-radius:12px;text-align:center;background:rgba(255,255,255,.025)}
.ppm-kpis b{display:block;font-size:20px;color:var(--text)}.ppm-kpis small{font-size:9px;color:var(--muted);font-weight:800}
.ppm-actions{display:flex;gap:8px;flex-wrap:wrap}.ppm-actions button{flex:1;min-width:135px;padding:11px;border:1px solid var(--border);border-radius:11px;font-size:10px;font-weight:900}
.ppm-actions .primary{background:var(--accent);color:#111;border-color:var(--accent)}
.ppm-no-master{padding:15px;border:1px solid rgba(255,171,46,.45);border-radius:14px;background:rgba(255,171,46,.08)}
.ppm-card{padding:13px;border:1px solid var(--border);border-radius:14px;background:rgba(255,255,255,.025)}
.ppm-card.clickable{cursor:pointer}.ppm-card-head{display:flex;align-items:flex-start;gap:8px}
.ppm-card-head>div{flex:1}.ppm-card h4{margin:0 0 4px;font-size:13px}.ppm-card p{margin:4px 0;color:var(--muted);font-size:11px;line-height:1.45}
.ppm-card small{color:var(--muted);font-size:10px}.ppm-badge{padding:5px 7px;border-radius:8px;font-size:9px;font-weight:900;white-space:nowrap}
.ppm-badge.PENDING_APPROVAL,.ppm-badge.PENDING{color:#f6c34d;background:rgba(246,195,77,.12)}
.ppm-badge.APPROVED,.ppm-result.PASS{color:#51d49b;background:rgba(81,212,155,.12)}
.ppm-badge.REJECTED,.ppm-result.FAILED{color:#ff7380;background:rgba(255,115,128,.12)}
.ppm-result.CAUTION{color:#f6c34d;background:rgba(246,195,77,.12)}
.ppm-result.N-A{color:#9ba8b8;background:rgba(155,168,184,.12)}
.ppm-section{margin:15px 0 7px;color:var(--accent);font-size:10px;font-weight:900;letter-spacing:.7px;text-transform:uppercase}
.ppm-check{padding:12px;border:1px solid var(--border);border-radius:13px;margin:8px 0;background:rgba(255,255,255,.018)}
.ppm-check.abnormal{border-color:rgba(255,115,128,.42);background:rgba(255,115,128,.035)}
.ppm-check-head{display:flex;gap:8px;align-items:flex-start}.ppm-check-head>div{flex:1}
.ppm-check-code{font-family:monospace;color:var(--accent);font-size:10px;font-weight:900}
.ppm-check h4{margin:3px 0;font-size:12px}.ppm-check p{margin:3px 0;color:var(--muted);font-size:10px;line-height:1.45}
.ppm-standard{padding:8px;margin:8px 0;border-radius:9px;background:rgba(66,164,255,.08);color:#a9d5ff;font-size:10px;line-height:1.45}
.ppm-result-picker{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin:8px 0}
.ppm-result-picker button{padding:8px 3px;border:1px solid var(--border);border-radius:8px;font-size:9px;font-weight:900}
.ppm-result-picker button.on[data-value="PASS"]{border-color:#35bd80;color:#52dca1;background:rgba(53,189,128,.12)}
.ppm-result-picker button.on[data-value="CAUTION"]{border-color:#e4ad31;color:#f6c34d;background:rgba(228,173,49,.12)}
.ppm-result-picker button.on[data-value="FAILED"]{border-color:#d54b5b;color:#ff7785;background:rgba(213,75,91,.12)}
.ppm-result-picker button.on[data-value="N/A"]{border-color:#8894a4;color:#b6c0cd;background:rgba(136,148,164,.12)}
.ppm-item-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.ppm-item-grid .wide{grid-column:1/-1}.ppm-item-grid label,.ppm-member label{display:block;font-size:9px;font-weight:800;color:var(--muted);margin-bottom:4px}
.ppm-item-grid input,.ppm-item-grid textarea,.ppm-item-grid select{font-size:11px}
.ppm-file{display:flex;align-items:center;gap:8px;padding:9px;border:1px dashed var(--border);border-radius:9px;color:var(--muted);font-size:10px;cursor:pointer}
.ppm-file input{display:none}.ppm-file.ready{border-color:#35bd80;color:#52dca1}
.ppm-members{display:grid;grid-template-columns:1fr 1fr;gap:7px;max-height:240px;overflow:auto}
.ppm-member{display:flex;align-items:center;gap:7px;padding:8px;border:1px solid var(--border);border-radius:9px}
.ppm-member input{width:auto}.ppm-member span{font-size:10px}.ppm-member small{display:block;color:var(--muted);font-size:8px}
.ppm-flow{display:grid;gap:7px}.ppm-flow-row{display:flex;gap:8px;padding:9px;border:1px solid var(--border);border-radius:9px}
.ppm-flow-row i{display:grid;place-items:center;width:23px;height:23px;border-radius:50%;font-style:normal;font-size:10px;background:#29313b}
.ppm-flow-row.APPROVED i{background:#208c62}.ppm-flow-row.PENDING i{background:var(--accent);color:#111}.ppm-flow-row.REJECTED i{background:#af3543}
.ppm-flow-row div{flex:1}.ppm-flow-row b{font-size:10px}.ppm-flow-row small{display:block;color:var(--muted);font-size:9px}
.ppm-evidence{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:8px}
.ppm-evidence a{aspect-ratio:1;border:1px solid var(--border);border-radius:9px;overflow:hidden;background:#111}
.ppm-evidence img{width:100%;height:100%;object-fit:cover}
.ppm-config-tabs{display:flex;gap:6px;overflow:auto;margin:10px 0}.ppm-config-tabs button{padding:9px 10px;border:1px solid var(--border);border-radius:9px;font-size:9px;font-weight:900;white-space:nowrap}
.ppm-config-tabs button.active{background:var(--accent);color:#111;border-color:var(--accent)}
.ppm-model-list{display:grid;gap:7px}.ppm-model{display:flex;align-items:center;gap:8px;padding:11px;border:1px solid var(--border);border-radius:11px;cursor:pointer}
.ppm-model div{flex:1}.ppm-model b{display:block;font-size:11px}.ppm-model small{font-size:9px;color:var(--muted)}
.ppm-model em{font-style:normal;font-size:9px;color:var(--accent)}
.ppm-import-result{margin-top:10px;padding:11px;border:1px solid var(--border);border-radius:11px;font-size:10px}
.ppm-error{color:#ff7d89}.ppm-note{padding:10px;border:1px solid rgba(66,164,255,.35);border-radius:10px;background:rgba(66,164,255,.07);font-size:10px;color:#b9d9fa;line-height:1.5}
@media(max-width:560px){
  .ppm-kpis{grid-template-columns:repeat(2,1fr)}
  .ppm-item-grid,.ppm-members{grid-template-columns:1fr}
  .ppm-result-picker{grid-template-columns:repeat(2,1fr)}
}
