:root{--g1:#1e7b34;--g2:#79c34b;--d:#0b2e13;--txt:#0b1d14}
body{color:var(--txt)}
.cm-navbar{background:rgba(14,26,18,.9)}
.feature-icon{width:48px;height:48px;border-radius:.75rem;display:flex;align-items:center;justify-content:center;background:#e9f7ef;color:var(--g1);font-weight:700}
.cta-btn{box-shadow:0 10px 20px rgba(0,0,0,.15)}
.section-title{font-weight:800}
.badge-soft{background:#f1fff3;color:#1e7b34;border:1px solid #bde8c3;border-radius:2rem;padding:.35rem .75rem}
.card-adv{border:0;box-shadow:0 6px 20px rgba(0,0,0,.06);border-radius:1rem}
.footer{background:#0e1a12;color:#cfe8d6}
body.cm-page{background:linear-gradient(180deg,#f7fcf8 0%,#ffffff 40%);min-height:100vh}
.kpi{background:linear-gradient(135deg,rgba(30,123,52,.12),rgba(121,195,75,.12));border:1px solid rgba(30,123,52,.25)}
.kpi h2{color:#0b2e13}
.kpi .label{font-size:.9rem;color:#0b2e13;opacity:.8}
.kpi .icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:.75rem;background:#e9f7ef;color:#1e7b34;margin-bottom:.35rem}
.kpi .sub{max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kpi.sev-0{background:linear-gradient(135deg,rgba(30,123,52,.12),rgba(121,195,75,.12));border-color:rgba(30,123,52,.25)}
.kpi.sev-1{background:linear-gradient(135deg,rgba(255,211,107,.18),rgba(255,239,200,.18));border-color:rgba(240,162,2,.35)}
.kpi.sev-2{background:linear-gradient(135deg,rgba(255,170,80,.18),rgba(255,220,190,.18));border-color:rgba(230,120,30,.35)}
.kpi.sev-3{background:linear-gradient(135deg,rgba(255,138,122,.2),rgba(233,73,61,.15));border-color:rgba(233,73,61,.4)}
.cm-card-header{background:linear-gradient(180deg,#ffffff 0%,#f6fbf7 100%);border-bottom:1px solid #e6f2ea}
.btn-soft{background:#f1fff3;border:1px solid #bde8c3;color:#1e7b34}
.btn-soft:hover{background:#e1f6e6;color:#0b2e13}
/* Typography */
.cm-font{font-family:"Inter","Poppins",system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}
/* Badges */
.badge-processing{background:#ffe9a6;color:#7a5d00}
.badge-idle{background:#e9f7ef;color:#1e7b34}
.badge-risk-low{background:#e9f7ef;color:#1e7b34}
.badge-risk-med{background:#fff3cd;color:#7a5d00}
.badge-risk-high{background:#fde2e1;color:#b42318}
/* Risk circle */
.risk-circle{width:16px;height:16px;border-radius:50%}
.risk-circle.low{background:linear-gradient(135deg,#66d17a,#2db352)}
.risk-circle.med{background:linear-gradient(135deg,#ffd36b,#f0a202)}
.risk-circle.high{background:linear-gradient(135deg,#ff8a7a,#e9493d)}
/* Hover lift */
.hover-lift{transition:transform .2s ease, box-shadow .2s ease}
.hover-lift:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(0,0,0,.08)}
/* Skeleton */
.skeleton{position:relative;overflow:hidden;background:#eef4ee;border-radius:.5rem}
.skeleton::after{content:"";position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,rgba(255,255,255,0) 0%,rgba(255,255,255,.6) 50%,rgba(255,255,255,0) 100%);animation:shimmer 1.2s infinite}
@keyframes shimmer{100%{transform:translateX(100%)}}
/* Dark mode */
.cm-dark{--txt:#eaf3ed}
.cm-dark body{color:var(--txt)}
.cm-dark .cm-navbar{background:rgba(8,14,10,.9)}
.cm-dark .kpi{background:linear-gradient(135deg,rgba(30,123,52,.18),rgba(121,195,75,.18));border-color:rgba(30,123,52,.35)}
.cm-dark .card-adv{box-shadow:0 6px 24px rgba(0,0,0,.25)}
