.ikt-wrap{
  border:1px solid #e6e6e6;
  border-radius:14px;
  padding:18px;
  background:#fff;
}

.ikt-header h2{
  margin:0 0 6px 0;
  font-size:22px;
  letter-spacing:.2px;
}
.ikt-sub{ margin:0 0 14px 0; color:#666; }

.ikt-grid{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:14px;
  align-items:start;
}

.ikt-card{
  border:1px solid #ededed;
  border-radius:14px;
  padding:16px;
  background:#fff;
}

.ikt-card h3{ margin:0 0 10px 0; font-size:16px; }
.ikt-card h4{ margin:10px 0 8px 0; font-size:14px; color:#222; }

.ikt-row{ display:flex; flex-direction:column; gap:6px; margin-bottom:10px; }
.ikt-row label{ font-weight:600; font-size:13px; color:#222; }

.ikt-input{
  height:40px;
  border:1px solid #ddd;
  border-radius:12px;
  padding:0 12px;
  background:#fff;
}

.ikt-hint{ color:#777; font-size:12px; }

.ikt-check{ margin-top:4px; }
.ikt-check label{ font-weight:500; }

.ikt-btn{
  width:100%;
  height:46px;
  border-radius:12px;
  border:0;
  background:#213D90;
  color:#fff;
  font-weight:800;
  cursor:pointer;
  margin-top:6px;
}
.ikt-btn:hover{ filter:brightness(1.05); }

.ikt-results{
  display:flex;
  flex-direction:column;
  gap:10px;
}

.ikt-metric{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.ikt-metric span{ color:#333; font-size:13px; }
.ikt-metric strong{ font-size:14px; }

.ikt-metric.big strong{ font-size:16px; }
.ikt-metric.total{ padding-top:6px; }
.ikt-metric.total strong{ font-size:18px; color:#111; }

.ikt-sep{
  border:0;
  border-top:1px solid #eee;
  margin:6px 0;
}

.ikt-error{
  margin-top:10px;
  padding:10px 12px;
  border-radius:12px;
  background:#fff3f3;
  border:1px solid #ffd0d0;
  color:#a20000;
  font-weight:650;
  display:none;
}

.ikt-footnote{
  margin-top:12px;
  color:#777;
  font-size:12px;
}

@media (max-width: 900px){
  .ikt-grid{ grid-template-columns: 1fr; }
}
