body{margin:0;background:#fff;color:#111;font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'PingFang SC',sans-serif}
.wrap{max-width:1180px;margin:16px auto;padding:0 16px}
.top{display:flex;justify-content:space-between;align-items:flex-end}
h1{margin:0 0 6px;font-size:24px;font-weight:700} p{margin:0;color:#666}
button{background:#111;color:#fff;border:none;border-radius:10px;padding:8px 12px;cursor:pointer}
.kpis,.risk-cards{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-top:12px}
.card,.kpi,.risk{background:#fff;border:1px solid #e8e8e8;border-radius:12px;padding:12px;box-shadow:0 1px 2px rgba(0,0,0,.03)}
.kpi .l,.risk .l{font-size:12px;color:#777}.kpi .v{font-size:22px;font-weight:700;margin-top:4px}.risk .v{font-size:18px;font-weight:700;margin-top:4px}
.warn{color:#000;background:#f2f2f2;border-radius:6px;padding:2px 6px;display:inline-block}.ok{color:#111}
.up{color:#d70000 !important;font-weight:700}
.down{color:#00a000 !important;font-weight:700}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}
.chart{height:320px} #bench{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.bench{border:1px solid #ededed;border-radius:10px;padding:10px}
.table-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.table-head input{padding:8px 10px;border-radius:10px;border:1px solid #ddd;background:#fff;color:#111}
table{width:100%;border-collapse:collapse} th,td{padding:9px;border-bottom:1px solid #f0f0f0;white-space:nowrap} th{color:#666;font-weight:600}.right{text-align:right}
.klink a{color:#111;text-decoration:none;margin-right:8px;padding:2px 6px;border:1px solid #ddd;border-radius:6px}.klink a:hover{background:#111;color:#fff}
.modal{position:fixed;inset:0;background:rgba(0,0,0,.45);display:flex;align-items:center;justify-content:center;padding:20px;z-index:50}.hidden{display:none}
.modal-card{width:min(1020px,96vw);background:#fff;border:1px solid #e5e5e5;border-radius:12px;padding:10px}
.modal-head{display:flex;gap:12px;align-items:center;justify-content:space-between;margin-bottom:8px}
.tabs{display:flex;gap:6px}.kbtn{background:#fff;border:1px solid #d9d9d9;color:#111;padding:5px 10px;border-radius:8px;cursor:pointer}.kbtn.on{background:#111;border-color:#111;color:#fff}
.kchart{height:520px}
@media (max-width:980px){.kpis,.risk-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-2{grid-template-columns:1fr}.kchart{height:360px}.card{overflow:auto}}
@media (max-width:640px){
  .wrap{padding:0 10px}
  .top{flex-direction:column;align-items:flex-start;gap:8px}
  h1{font-size:20px}
  .kpis,.risk-cards{grid-template-columns:1fr 1fr;gap:8px}
  th,td{padding:7px;font-size:12px}
  button{padding:7px 10px}
}
