:root{
  --brand-emerald:#10b981;
  --brand-sky:#0ea5e9;
  --text:#0f172a;
}

/* Utility components */
.input{
  width:100%;
  padding:0.75rem 1rem;
  border:1px solid #e2e8f0;
  border-radius:0.75rem;
  background:#fff;
  outline:none;
  transition:.2s border-color, .2s box-shadow;
}
.input:focus{ border-color:#a7f3d0; box-shadow:0 0 0 4px rgba(16,185,129,.15); }

.btn-primary{
  display:inline-flex; align-items:center; justify-content:center;
  padding:0.75rem 1rem; border-radius:9999px;
  background:var(--brand-emerald); color:#fff; transition:.2s transform, .2s box-shadow, .2s background;
  box-shadow:0 6px 20px rgba(16,185,129,.25);
}
.btn-primary:hover{ transform:translateY(-1px); background:#34d399; box-shadow:0 10px 22px rgba(16,185,129,.35); }

/* Landing cards */
.feature-card{
  background:#fff; border:1px solid #e2e8f0; border-radius:1rem; padding:1.25rem; box-shadow:0 10px 30px rgba(2,6,23,.04);
}
.icon-badge{ display:inline-flex; align-items:center; justify-content:center; width:2.25rem; height:2.25rem; border-radius:9999px; }
.feature-title{ margin-top:.75rem; font-weight:600; }
.feature-text{ color:#64748b; font-size:.95rem; margin-top:.25rem; }

.step-card{ background:#fff; border:1px solid #e2e8f0; border-radius:1rem; padding:1.25rem; }
.step-index{ display:inline-flex; align-items:center; justify-content:center; width:2rem; height:2rem; border-radius:9999px; background:#ecfeff; color:#0369a1; font-weight:700; }
.step-title{ font-weight:600; margin-top:.5rem; }
.step-text{ color:#64748b; }

/* Messages */
.message{ padding:.5rem .75rem; border-radius:.75rem; background:#f8fafc; }
.message.user{ background:#ecfeff; }
.message.bot{ background:#ecfdf5; }

/* Custom Scrollbar for Agent Results */
#result-outliner::-webkit-scrollbar,
#result-objectives::-webkit-scrollbar,
#result-outcomes::-webkit-scrollbar {
  width: 8px;
}

#result-outliner::-webkit-scrollbar-track,
#result-objectives::-webkit-scrollbar-track,
#result-outcomes::-webkit-scrollbar-track {
  background: #f1f5f9;
  border-radius: 10px;
}

#result-outliner::-webkit-scrollbar-thumb,
#result-objectives::-webkit-scrollbar-thumb,
#result-outcomes::-webkit-scrollbar-thumb {
  background: #cbd5e1;
  border-radius: 10px;
  transition: background 0.2s;
}

#result-outliner::-webkit-scrollbar-thumb:hover,
#result-objectives::-webkit-scrollbar-thumb:hover,
#result-outcomes::-webkit-scrollbar-thumb:hover {
  background: #94a3b8;
}

/* Firefox scrollbar */
#result-outliner,
#result-objectives,
#result-outcomes {
  scrollbar-width: thin;
  scrollbar-color: #cbd5e1 #f1f5f9;
  padding-right: 4px;
}


