:root{
  --bg-main:#0b1020;
  --bg-card:#111827;
  --bg-input:#141b2b;
  --border:#1f2937;
  --primary:#0ea5e9;
  --primary-hover:#0284c7;
  --text-main:#e5e7eb;
  --text-muted:#9ca3af;
}

.inf-cotizador-wrap{
  font-family:'Arial Narrow', Arial, sans-serif;
  background: radial-gradient(circle at top, #0f172a 0%, #05060f 70%);
  padding:40px 20px;
  color:var(--text-main);
  border-radius:16px;
}

.inf-title-container{ text-align:center; margin-bottom:12px; }
.inf-logo{ width:80px; height:auto; margin-bottom:8px; }
.inf-subrayado{
  color:#fff;
  font-size:26px;
  margin:15px 0 25px;
  letter-spacing:.4px;
  text-decoration:none;
  border-bottom:2px solid var(--primary);
  display:inline-block;
  padding-bottom:4px;
}

.inf-form-container{
  max-width:520px;
  margin:0 auto;
  padding:28px;
  background:var(--bg-card);
  border-radius:16px;
  box-shadow:0 10px 30px rgba(0,0,0,.35);
  border:1px solid var(--border);
}

.inf-form-group{ margin-bottom:18px; }
.inf-form-group label{
  font-weight:600;
  font-size:14px;
  color:#e5e7eb;
  display:block;
  margin-bottom:6px;
}
.inf-form-group input,
.inf-form-group select{
  width:100%;
  padding:12px;
  font-size:14px;
  border-radius:10px;
  border:1px solid var(--border);
  box-sizing:border-box;
  background:var(--bg-input);
  color:#fff;
  transition:all .2s ease;
}
.inf-form-group input::placeholder{ color:#6b7280; }
.inf-form-group input:focus,
.inf-form-group select:focus{
  border-color:var(--primary);
  outline:none;
  box-shadow:0 0 0 2px rgba(14,165,233,.25);
  background:#0f172a;
}

.inf-submit{
  display:block;
  width:100%;
  padding:14px;
  background:linear-gradient(135deg,#0ea5e9,#0284c7);
  color:#fff;
  font-size:16px;
  font-weight:700;
  border:none;
  border-radius:12px;
  cursor:pointer;
  transition:all .25s ease;
  margin-top:10px;
}
.inf-submit:hover{
  transform:translateY(-1px);
  box-shadow:0 6px 15px rgba(14,165,233,.35);
}
.inf-submit[disabled]{
  background:#334155;
  cursor:not-allowed;
  transform:none;
  box-shadow:none;
}

.inf-status{
  margin-top:12px;
  font-size:13px;
  color:var(--text-muted);
  min-height:18px;
  text-align:center;
}

.inf-form-footer{
  text-align:center;
  margin-top:20px;
  color:var(--text-muted);
  font-size:13px;
}
.inf-unit-card{
  margin-top:12px;
  padding:12px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:12px;
  background:rgba(255,255,255,.04);
}
.inf-unit-head{display:flex;justify-content:space-between;gap:10px;align-items:baseline;margin-bottom:10px}
.inf-unit-sub{opacity:.75;font-size:.9em}
.inf-unit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.inf-unit-item span{display:block;opacity:.75;font-size:.85em}
.inf-unit-item b{display:block;font-size:.95em}
.inf-unit-img img{margin-top:12px;max-width:100%;border-radius:10px;display:block}
.inf-unit-error{color:#ffb4b4}

/* Inputs y select más visibles */
.inf-cotizador .inf-form-group input,
.inf-cotizador .inf-form-group select{
  border: 1px solid rgba(255,255,255,.22);
  border-radius: 14px;
  padding: 14px 14px;
  background: rgba(17,24,39,.55);
}

/* Hover suave */
.inf-cotizador .inf-form-group input:hover,
.inf-cotizador .inf-form-group select:hover{
  border-color: rgba(14,165,233,.55);
}

/* Focus más marcado */
.inf-cotizador .inf-form-group input:focus,
.inf-cotizador .inf-form-group select:focus{
  outline: none;
  border-color: rgba(14,165,233,.9);
  box-shadow: 0 0 0 3px rgba(14,165,233,.25);
}

/* Labels con mejor separación */
.inf-cotizador .inf-form-group label{
  display:block;
  margin-bottom: 8px;
  font-weight: 700;
  letter-spacing: .2px;
}

/* Separación vertical entre campos */
.inf-cotizador .inf-form-group{
  margin-bottom: 22px;
}

