/* setup.css — simplified, dashboard-like, responsive, no JS required */
.setup { max-width: 100%; }
.setup b { font-weight: 800; }

.setup-head{
  display:flex;
  gap:12px;
  align-items:flex-start;
  justify-content:space-between;
  flex-wrap:wrap;
  margin-bottom:14px;
}

.setup-title{
  margin:0;
  font-size:22px;
  font-weight:800;
  line-height:1.15;
}

.setup-sub{
  margin:8px 0 0 0;
  color:#6b7280;
  font-size:14px;
  font-weight:600;
  line-height:1.45;
}

.setup-back{ white-space:nowrap; }

/* KPIs */
.setup-kpis{
  margin: 14px 0 18px;
  display:grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap:10px;
}

.kpi{
  background:#f3f4ff;
  border:1px solid rgba(15, 23, 42, 0.06);
  border-radius:18px;
  padding:14px;
  display:flex;
  gap:12px;
  align-items:center;
  min-width:0;
}

.kpi-num{
  width:38px;
  height:38px;
  border-radius:14px;
  background:#e5edff;
  display:grid;
  place-items:center;
  font-weight:800;
  flex:0 0 auto;
}

.kpi-text{
  font-weight:800;
  line-height:1.2;
}

/* Cards */
.card{
  margin-top: 14px;
  padding: 16px;
  border-radius: 20px;
  background:#ffffff;
  border:1px solid rgba(15, 23, 42, 0.06);
  box-shadow: 0 10px 26px rgba(15, 23, 42, 0.06);
}

.card-head{
  display:flex;
  gap:12px;
  align-items:flex-start;
  margin-bottom: 12px;
}

.badge{
  min-width:58px;
  text-align:center;
  font-size:12px;
  font-weight:800;
  padding:8px 12px;
  border-radius:999px;
  background:#f3f4ff;
  border:1px solid rgba(15, 23, 42, 0.06);
  flex:0 0 auto;
}

.badge-help{
  background:#fff7ed;
  border:1px solid rgba(245, 158, 11, 0.25);
}

.card-title{
  font-weight:800;
  font-size:18px;
  line-height:1.2;
}

.card-sub{
  margin-top:6px;
  color:#6b7280;
  font-size:14px;
  font-weight:600;
  line-height:1.45;
}

.h3{
  font-weight:800;
  margin: 6px 0 8px;
}

/* App buttons */
.apps-grid{
  display:grid;
  grid-template-columns: 1fr;
  gap:10px;
  margin-top:10px;
}

.app-btn{
  display:flex;
  align-items:center;
  gap:12px;
  padding:14px;
  border-radius:18px;
  background:#f3f4ff;
  border:1px solid rgba(15, 23, 42, 0.06);
  text-decoration:none;
  color:inherit;
  min-width:0;
}

.app-ico{
  width:44px;
  height:44px;
  border-radius:16px;
  background:#e5edff;
  display:grid;
  place-items:center;
  flex:0 0 auto;
}

.app-main{
  display:flex;
  flex-direction:column;
  gap:2px;
  min-width:0;
  flex:1 1 auto;
}

.app-title{ font-weight:800; }
.app-desc{ color:#6b7280; font-weight:600; font-size:13px; line-height:1.3; }
.app-go{ font-weight:900; padding-left:8px; }

/* Note */
.note{
  margin-top:12px;
  padding:12px;
  border-radius:16px;
  background:#fff7ed;
  border:1px solid rgba(245, 158, 11, 0.25);
  display:flex;
  gap:10px;
  align-items:flex-start;
  font-weight:600;
  line-height:1.4;
}

.note-ico{ flex:0 0 auto; }

/* Lists */
.ol{
  margin:0;
  padding-left:20px;
  line-height:1.5;
  font-weight:600;
}

.ol li{ margin:10px 0; }

.ul{
  margin:0;
  padding-left:18px;
  line-height:1.5;
  font-weight:600;
}

.ul li{ margin:8px 0; }

/* Two columns */
.two{
  display:grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap:12px;
  margin-top: 10px;
}

.two-col{
  background:#f3f4ff;
  border:1px solid rgba(15, 23, 42, 0.06);
  border-radius:18px;
  padding:14px;
}

.pill{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 12px;
  border-radius:999px;
  background:#ffffff;
  border:1px solid rgba(15, 23, 42, 0.06);
  font-weight:800;
}

.pill-ok{
  background:#ecfdf5;
  border:1px solid rgba(16, 185, 129, 0.25);
}

/* FAQ (native accordion) */
.faq{
  margin-top:12px;
  border-radius:18px;
  background:#f3f4ff;
  border:1px solid rgba(15, 23, 42, 0.06);
  overflow:hidden;
}

.faq summary{
  cursor:pointer;
  list-style:none;
  padding:14px;
  font-weight:800;
}

.faq summary::-webkit-details-marker{ display:none; }

.faq summary::after{
  content:"▾";
  float:right;
  font-weight:900;
  color:#6b7280;
}

.faq[open] summary::after{ content:"▴"; }

.faq-body{
  padding: 0 14px 14px;
  color:#111827;
  font-weight:600;
  line-height:1.45;
}

/* CTA */
.cta-row{
  margin-top:14px;
}

.cta-row .btn{
  width:100%;
  justify-content:center;
}

/* small phones */
@media (max-width: 420px){
  .card{ padding:14px; }
  .badge{ min-width:52px; }
  .setup-title{ font-size:20px; }
}
