/* IronDomeSafe Kit Builder (kit.css)
   Dark-mode, Calm + Strength palette
   Designed to be embedded in index.html
*/

#kit-builder.ids-section {
  background: #1A1A1A;
  color: #F2F2F2;
  padding: 48px 16px;
  border-top: 1px solid #2b2b2b;
}
#kit-builder .ids-container {
  max-width: 840px;
  margin: 0 auto;
}
#kit-builder .ids-hero {
  text-align: center;
  margin-bottom: 20px;
}
#kit-builder .ids-title {
  font-size: 1.8rem;
  line-height: 1.2;
  margin: 0 0 8px;
  color: #F5F5F5;
}
#kit-builder .ids-sub {
  margin: 0;
  color: #CFCFCF;
  font-size: 1rem;
}

/* Progress */
#kit-builder .ids-progress {
  height: 6px;
  background: #2b2b2b;
  border-radius: 999px;
  overflow: hidden;
  margin: 12px 0 6px;
}
#kit-builder .ids-progress-bar {
  height: 100%;
  width: 0%;
  background: #D100FF;
  transition: width .2s ease;
}
#kit-builder .ids-progress-text {
  font-size: .9rem;
  color: #CFCFCF;
  margin-bottom: 8px;
}

/* Card */
#kit-builder .ids-card {
  background: #222;
  border: 1px solid #2f2f2f;
  border-radius: 12px;
  padding: 18px;
}
#kit-builder .ids-q {
  font-size: 1.15rem;
  margin-bottom: 12px;
}
#kit-builder .ids-a {
  display: grid;
  gap: 8px;
}

/* Options */
#kit-builder .ids-option {
  background: #2a2a2a;
  border: 1px solid #3a3a3a;
  border-radius: 10px;
  padding: 12px 14px;
  font-size: 1rem;
  cursor: pointer;
  text-align: left;
  transition: border-color .15s, box-shadow .15s, transform .02s;
}
#kit-builder .ids-option:hover {
  border-color: #555;
}
#kit-builder .ids-option:active {
  transform: translateY(1px);
}
#kit-builder .ids-option.selected {
  border-color: #D100FF;
  box-shadow: 0 0 0 1px #D100FF inset;
}

/* Inputs */
#kit-builder .ids-input,
#kit-builder input[type="number"] {
  background: #111;
  color: #fff;
  border: 1px solid #3a3a3a;
  border-radius: 10px;
  padding: 12px;
  font-size: 1rem;
}
#kit-builder .ids-inline {
  display: flex;
  gap: 8px;
  align-items: center;
}

/* Nav */
#kit-builder .ids-nav {
  display: flex;
  gap: 10px;
  margin-top: 12px;
}
#kit-builder .ids-btn {
  background: #D100FF;
  color: #fff;
  border: none;
  border-radius: 10px;
  padding: 12px 16px;
  font-size: 1rem;
  cursor: pointer;
  flex: 1;
  transition: filter .15s, transform .02s;
}
#kit-builder .ids-btn:hover { filter: brightness(1.06); }
#kit-builder .ids-btn:active { transform: translateY(1px); }

#kit-builder .ids-btn-ghost {
  background: transparent;
  border: 1px solid #4a4a4a;
  color: #F2F2F2;
}
#kit-builder .ids-btn-wide { width: 100%; margin-top: 10px; }

#kit-builder .hidden { display: none !important; }

/* Results */
#kit-builder .ids-results { margin-top: 18px; }
#kit-builder .ids-results-title { font-size: 1.4rem; margin: 0 0 6px; }
#kit-builder .ids-results-sub { color: #CFCFCF; margin-top: 0; }

#kit-builder .ids-tier-grid {
  display: grid;
  gap: 10px;
  margin: 12px 0;
}
#kit-builder .ids-tier {
  background: #2a2a2a;
  border: 1px solid #3a3a3a;
  border-radius: 12px;
  padding: 14px;
  font-size: 1.05rem;
  text-align: left;
  cursor: pointer;
  transition: border-color .15s, box-shadow .15s, transform .02s;
}
#kit-builder .ids-tier:hover { border-color: #555; }
#kit-builder .ids-tier:active { transform: translateY(1px); }

#kit-builder .ids-tier-min { border-left: 4px solid #8A4FFF; }
#kit-builder .ids-tier-std { border-left: 4px solid #D100FF; }
#kit-builder .ids-tier-max { border-left: 4px solid #FF005C; }

#kit-builder .ids-tier-note {
  display:block;
  font-size:.9rem;
  color:#CFCFCF;
  margin-top:4px;
}

#kit-builder .ids-link-btn {
  background: transparent;
  color: #F2F2F2;
  border: 1px solid #3a3a3a;
  padding: 10px 12px;
  border-radius: 10px;
  cursor: pointer;
  width: 100%;
  margin-bottom: 6px;
}

/* Customize panel */
#kit-builder .ids-customize {
  margin-top: 10px;
  background: #222;
  border: 1px solid #2f2f2f;
  border-radius: 12px;
  padding: 12px;
}
#kit-builder .ids-customize-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 8px 0;
  border-bottom: 1px solid #2f2f2f;
}
#kit-builder .ids-customize-item:last-child { border-bottom: none; }

/* Opt-in */
#kit-builder .ids-optin {
  margin-top: 16px;
  background: #222;
  border: 1px solid #2f2f2f;
  border-radius: 12px;
  padding: 12px;
}

#kit-builder .ids-checkbox {
  display:flex;
  gap:8px;
  margin:8px 0;
  font-size:.95rem;
}

#kit-builder .ids-small { font-size: .9rem; }
#kit-builder .ids-muted { color: #9a9a9a; }

/* Responsive */
@media (min-width: 600px){
  #kit-builder .ids-tier-grid { grid-template-columns: repeat(3, 1fr); }
}
