.bot-demo-section{ padding:100px 0; background:#F6F7FA; min-height:70vh; font-family:'Inter',sans-serif; display:flex; align-items:center; }
.bot-demo-wrap{ max-width:620px; margin:0 auto; padding:0 24px; width:100%; }
.bot-demo-head{ text-align:center; margin-bottom:36px; }
.bot-demo-head h1{ font-family:'Space Grotesk',sans-serif; font-size:34px; font-weight:700; color:#0B0D14; margin:0 0 12px; letter-spacing:-0.02em; }
.bot-demo-head p{ font-size:16px; color:#5A5F72; line-height:1.6; margin:0; }

.bot-demo-form{ background:#fff; border:1px solid #E3E6EF; border-radius:18px; padding:32px; box-shadow:0 1px 2px rgba(11,13,20,0.04), 0 12px 32px -12px rgba(11,13,20,0.10); }
.bot-demo-row{ display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-bottom:16px; }
@media (max-width:560px){ .bot-demo-row{ grid-template-columns:1fr; } }
.bot-demo-form label{ display:flex; flex-direction:column; gap:7px; font-size:13.5px; font-weight:600; color:#0B0D14; }
.bot-demo-form label span{ font-weight:400; color:#9297A8; }
.bot-demo-full{ display:flex; flex-direction:column; gap:7px; font-size:13.5px; font-weight:600; color:#0B0D14; margin-bottom:16px; }
.bot-demo-full span{ font-weight:400; color:#9297A8; }
.bot-demo-form input, .bot-demo-form textarea{
  font-family:'Inter',sans-serif; font-size:14.5px; font-weight:400; color:#0B0D14;
  border:1px solid #E3E6EF; border-radius:10px; padding:11px 13px; outline:none; background:#F6F7FA;
  transition:border-color .2s ease, background .2s ease;
}
.bot-demo-form input:focus, .bot-demo-form textarea:focus{ border-color:#2A54FF; background:#fff; }
.bot-demo-form textarea{ resize:vertical; }
.bot-demo-btn{ width:100%; margin-top:8px; background:#2A54FF; color:#fff; border:none; padding:15px; border-radius:100px; font-weight:600; font-size:15px; cursor:pointer; font-family:'Inter'; box-shadow:0 10px 24px -8px rgba(42,84,255,0.5); }
.bot-demo-btn:hover{ background:#1739B0; }
.bot-demo-error{ background:#FEECEC; color:#B4232C; border:1px solid #F6C6C9; border-radius:10px; padding:12px 16px; font-size:14px; margin-bottom:18px; }

.bot-demo-success{ text-align:center; background:#fff; border:1px solid #E3E6EF; border-radius:18px; padding:48px 32px; box-shadow:0 1px 2px rgba(11,13,20,0.04), 0 12px 32px -12px rgba(11,13,20,0.10); }
.bot-demo-check{ width:52px; height:52px; border-radius:50%; background:#25D366; display:flex; align-items:center; justify-content:center; margin:0 auto 20px; }
.bot-demo-success h2{ font-family:'Space Grotesk',sans-serif; font-size:24px; font-weight:700; color:#0B0D14; margin:0 0 10px; }
.bot-demo-success p{ font-size:15px; color:#5A5F72; line-height:1.6; margin:0; }

/* Preferred day/time calendar picker */
.bot-demo-cal-wrap{ position:relative; }
.bot-demo-date-trigger{
  width:100%; text-align:left; font-family:'Inter',sans-serif; font-size:14.5px; color:#0B0D14;
  border:1px solid #E3E6EF; border-radius:10px; padding:11px 13px; background:#F6F7FA; cursor:pointer;
  transition:border-color .2s ease, background .2s ease;
}
.bot-demo-date-trigger:hover{ border-color:#2A54FF; }
.bot-demo-date-trigger.has-value{ color:#0B0D14; font-weight:600; background:#fff; border-color:#2A54FF; }
.bot-demo-field-error{ display:none; color:#B4232C; font-size:12.5px; font-weight:500; margin:6px 0 0; }
.bot-demo-cal-wrap.invalid .bot-demo-date-trigger{ border-color:#E4585F; }
.bot-demo-cal-wrap.invalid .bot-demo-field-error{ display:block; }

.bot-demo-calendar-pop{
  display:none; position:absolute; top:calc(100% + 8px); left:0; right:0; z-index:50;
  background:#fff; border:1px solid #E3E6EF; border-radius:14px; padding:16px;
  box-shadow:0 20px 45px -12px rgba(11,13,20,0.25); box-sizing:border-box;
}
.bot-demo-calendar-pop.open{ display:block; }
.bot-demo-cal-header{ display:flex; align-items:center; justify-content:space-between; margin-bottom:12px; font-weight:600; font-size:14px; color:#0B0D14; }
.bot-demo-cal-header button{ background:#F1F2F6; border:none; width:28px; height:28px; border-radius:50%; cursor:pointer; font-size:16px; color:#5A5F72; }
.bot-demo-cal-header button:hover{ background:#EAEEFF; color:#2A54FF; }
.bot-demo-cal-header button:disabled{ opacity:.3; cursor:not-allowed; }
.bot-demo-cal-dow{ display:grid; grid-template-columns:repeat(7,1fr); text-align:center; font-size:11px; font-weight:700; color:#9297A8; margin-bottom:4px; }
.bot-demo-cal-grid{ display:grid; grid-template-columns:repeat(7,1fr); gap:2px; }
.bot-demo-cal-day{
  aspect-ratio:1; display:flex; align-items:center; justify-content:center; font-size:13px; color:#0B0D14;
  border-radius:8px; cursor:pointer; background:none; border:none; font-family:'Inter',sans-serif;
}
.bot-demo-cal-day:hover{ background:#EAEEFF; }
.bot-demo-cal-day.selected{ background:#2A54FF; color:#fff; font-weight:600; }
.bot-demo-cal-day.disabled{ color:#D7DCE8; cursor:not-allowed; pointer-events:none; }
.bot-demo-cal-day.empty{ visibility:hidden; pointer-events:none; }

.bot-demo-cal-times{ display:none; margin-top:14px; padding-top:14px; border-top:1px solid #EDEFF5; }
.bot-demo-cal-times.open{ display:block; }
.bot-demo-cal-times-label{ font-size:12.5px; font-weight:600; color:#5A5F72; margin-bottom:8px; }
.bot-demo-cal-times-btns{ display:flex; gap:8px; }
.bot-demo-time-btn{
  flex:1; padding:9px; border-radius:9px; border:1px solid #E3E6EF; background:#F6F7FA; color:#0B0D14;
  font-family:'Inter',sans-serif; font-size:13.5px; font-weight:600; cursor:pointer; transition:all .15s ease;
}
.bot-demo-time-btn:hover{ border-color:#2A54FF; }
.bot-demo-time-btn.selected{ background:#2A54FF; border-color:#2A54FF; color:#fff; }
