.mvkum-wrap{
  font: inherit;
  max-width: 780px;
  margin: 10px 0;
  padding: 14px;
  border-radius: 16px;
  border: 1px solid rgba(0,0,0,.08);
  background: rgba(60, 179, 113, .10);
}

.mvkum-row{ margin-bottom: 12px; }
.mvkum-row label{ display:block; font-weight:700; margin-bottom:6px; }

.mvkum-input{
  width: 95%;
  padding: 10px 12px;
  border-radius: 12px;
  border: 1px solid rgba(0,0,0,.15);
  background: rgba(255,255,255,.92);
}

.mvkum-help{ display:block; opacity:.8; margin-top:6px; }

.mvkum-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:100%;
  padding: 12px 16px;
  border: 0;
  border-radius: 12px;
  cursor: pointer;
  font-weight: 800;
  font-size: 16px;
  line-height: 1;
  background: #1f8a4c;
  color: #fff;
  box-shadow: 0 6px 18px rgba(0,0,0,.12);
  transition: transform .06s ease, box-shadow .12s ease, opacity .12s ease;
}
.mvkum-btn:hover{ opacity:.95; box-shadow: 0 8px 22px rgba(0,0,0,.14); }
.mvkum-btn:active{ transform: translateY(1px); }
@media (min-width:640px){
  .mvkum-btn{ width:auto; min-width: 180px; }
}

.mvkum-result{ margin-top: 12px; }
.mvkum-error{
  padding: 10px 12px;
  border-radius: 12px;
  border: 1px solid rgba(255,0,0,.20);
  background: rgba(255,0,0,.06);
  font-weight: 700;
}

.mvkum-autocomplete{ position: relative; }
.mvkum-list{
  position:absolute;
  top: calc(100% + 6px);
  left: 0;
  right: 0;
  z-index: 10;
  background: #fff;
  border: 1px solid rgba(0,0,0,.15);
  border-radius: 12px;
  overflow:hidden;
  max-height: 320px;
  overflow-y: auto;
}

.mvkum-item{ padding: 10px 12px; cursor:pointer; }
.mvkum-item:hover{ background: rgba(0,0,0,.05); }
.mvkum-item-empty{ cursor: default; opacity:.75; }

.mvkum-summary{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
  margin: 12px 0 10px;
}
@media (min-width:640px){
  .mvkum-summary{ grid-template-columns:repeat(3, 1fr); }
}

.mvkum-kpi{
  box-shadow: 0 6px 18px rgba(0,0,0,.06);
  padding:10px 12px;
  border-radius:14px;
  background:rgba(255,255,255,.70);
  border:1px solid rgba(0,0,0,.06);
}
.mvkum-kpi-label{ font-size:13px; opacity:.8; margin-bottom:4px; }
.mvkum-kpi-value{ font-size:18px; font-weight:800; }
.mvkum-kpi-strong{ font-size:20px; }
.mvkum-kpi-sub{ font-size:14px; opacity:.8; font-weight:700; }

.mvkum-meta{ margin-top:6px; }
.mvkum-meta-line{ font-size:14px; opacity:.9; margin-bottom:6px; }

.mvkum-badges{ display:flex; gap:8px; flex-wrap:wrap; }
.mvkum-badge{
  display:inline-block;
  font-size:12px;
  padding:4px 8px;
  border-radius:999px;
  border:1px solid rgba(0,0,0,.08);
  background:rgba(0,0,0,.03);
}
.mvkum-badge-ok{ background:rgba(0,128,0,.10); }
.mvkum-badge-warn{ background:rgba(255,165,0,.15); }
.mvkum-badge-info{ background:rgba(0,0,255,.10); }

.mvkum-details{
  margin-top:10px;
  padding:10px 12px;
  border-radius:14px;
  border:1px solid rgba(0,0,0,.08);
  background:rgba(255,255,255,.65);
}
.mvkum-details summary{
  cursor:pointer;
  font-weight:800;
  margin:2px 0 8px 0;
}

.mvkum-table{ width:100%; border-collapse:collapse; }
.mvkum-table td{ padding:6px 4px; vertical-align:top; }
.mvkum-table td:first-child{ font-weight:700; width:58%; }

.mvkum-explain{ margin-top:10px; opacity:.85; line-height:1.35; }

.mvkum-disclaimer{
  margin-top:12px;
  opacity:.85;
  line-height:1.35;
}
.mvkum-title{
  margin: 0 0 14px 0;
  font-size: 1.4em;
  font-weight: 800;
  line-height: 1.2;
}
