/* ============================================================
   thaeven-portal — Domain-Schritt (geteilt: Kauf-Strecke + Portal)
   Verzweigung ja/nein + Wunschdomain-Verfügbarkeit + Umzug.
   Nutzt die vorhandenen Portal-Tokens (--accent, --line, --danger …).
   ============================================================ */

.dom-block { margin: 6px 0 4px; }

.dom-q-label {
  display: block;
  font-weight: 650;
  font-size: 14.5px;
  margin: 0 0 10px;
  color: var(--ink, #f2f2f4);
}
.dom-q-hint {
  display: block;
  font-size: 12.5px;
  line-height: 1.5;
  color: var(--muted);
  margin: -4px 0 12px;
}

/* --- Zwei-Wege-Auswahl (ja / nein) --- */
.dom-choice {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-bottom: 6px;
}
.dom-opt {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 14px 16px;
  border: 1.5px solid var(--line, rgba(255, 255, 255, 0.14));
  border-radius: 14px;
  cursor: pointer;
  background: var(--surface-2, rgba(255, 255, 255, 0.03));
  transition: border-color 0.18s ease, background 0.18s ease, box-shadow 0.18s ease;
}
.dom-opt:hover { border-color: color-mix(in srgb, var(--accent, #2fd4d0) 45%, var(--line, #444)); }
.dom-opt input { margin-top: 2px; accent-color: var(--accent, #2fd4d0); flex: 0 0 auto; }
.dom-opt.is-on {
  border-color: var(--accent, #2fd4d0);
  background: color-mix(in srgb, var(--accent, #2fd4d0) 12%, transparent);
  box-shadow: 0 0 0 1px color-mix(in srgb, var(--accent, #2fd4d0) 40%, transparent);
}
.dom-opt-txt { display: flex; flex-direction: column; gap: 2px; }
.dom-opt-t { font-weight: 650; font-size: 14px; color: var(--ink, #f2f2f4); }
.dom-opt-s { font-size: 12px; color: var(--muted); line-height: 1.4; }

/* --- Aufklappender Zweig --- */
.dom-branch {
  margin-top: 14px;
  padding: 16px;
  border: 1px solid var(--line, rgba(255, 255, 255, 0.12));
  border-radius: 14px;
  background: var(--surface-2, rgba(255, 255, 255, 0.025));
  animation: domIn 0.22s ease;
}
.dom-branch[hidden] { display: none; }
@keyframes domIn { from { opacity: 0; transform: translateY(-4px); } to { opacity: 1; transform: none; } }

/* --- Wunschdomain-Suche (Input + Prüfen-Button) --- */
.dom-search { display: flex; gap: 8px; align-items: stretch; }
.dom-search .input, .dom-search input[type="text"] { flex: 1 1 auto; min-width: 0; }
.dom-check-btn {
  flex: 0 0 auto;
  padding: 0 18px;
  border-radius: 12px;
  border: 1px solid var(--accent, #2fd4d0);
  background: color-mix(in srgb, var(--accent, #2fd4d0) 16%, transparent);
  color: var(--accent, #2fd4d0);
  font-weight: 650;
  font-size: 14px;
  cursor: pointer;
  white-space: nowrap;
  transition: background 0.15s ease;
}
.dom-check-btn:hover { background: color-mix(in srgb, var(--accent, #2fd4d0) 26%, transparent); }

/* --- Ergebnis-Zeile --- */
.dom-result {
  margin-top: 10px;
  padding: 10px 13px;
  border-radius: 11px;
  font-size: 13.5px;
  font-weight: 550;
  line-height: 1.45;
  border: 1px solid transparent;
}
.dom-result--lade {
  color: var(--muted);
  background: var(--surface-2, rgba(255, 255, 255, 0.04));
  border-color: var(--line, rgba(255, 255, 255, 0.1));
}
.dom-result--frei {
  color: #34d399;
  background: color-mix(in srgb, #34d399 12%, transparent);
  border-color: color-mix(in srgb, #34d399 35%, transparent);
}
.dom-result--vergeben {
  color: #fb7185;
  background: color-mix(in srgb, #fb7185 12%, transparent);
  border-color: color-mix(in srgb, #fb7185 35%, transparent);
}
.dom-result--warn {
  color: #fbbf24;
  background: color-mix(in srgb, #fbbf24 11%, transparent);
  border-color: color-mix(in srgb, #fbbf24 32%, transparent);
}

/* --- Auth-Code-Hilfe im Umzug-Zweig --- */
.dom-help {
  margin-top: 12px;
  padding: 12px 14px;
  border-radius: 11px;
  background: var(--surface-2, rgba(255, 255, 255, 0.03));
  border: 1px dashed var(--line, rgba(255, 255, 255, 0.16));
  font-size: 12.5px;
  line-height: 1.55;
  color: var(--muted);
}
.dom-help strong { color: var(--ink, #f2f2f4); font-weight: 600; }

@media (max-width: 560px) {
  .dom-choice { grid-template-columns: 1fr; }
}
