.atcb-booking {
  --atcb-purple:#511568;
  --atcb-purple-dark:#351044;
  --atcb-purple-soft:#f5effa;
  --atcb-gold:#d5a749;
  --atcb-gold-soft:#ead6a0;
  --atcb-ink:#241d28;
  --atcb-muted:#6f6872;
  --atcb-border:#e5dfe7;
  --atcb-card:#fffefd;
  --atcb-available:#dfe6cf;
  --atcb-selected:#59633f;
  --atcb-unavailable:#ece9e7;
  --atcb-active:#511568;
  --atcb-active-dark:#351044;
  --atcb-active-soft:#f5effa;
  color:var(--atcb-ink);
  font-family:inherit;
  width:100%;
}
.atcb-booking *{box-sizing:border-box}
.atcb-booking.atcb-active-analysis{--atcb-active:#511568;--atcb-active-dark:#351044;--atcb-active-soft:#f5effa}
.atcb-booking.atcb-active-healing{--atcb-active:#68795a;--atcb-active-dark:#4d5c42;--atcb-active-soft:#f1f5ed}
.atcb-booking.atcb-active-tarot{--atcb-active:#b48736;--atcb-active-dark:#8c6726;--atcb-active-soft:#fbf5e8}
.atcb-form{margin:0}
.atcb-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:20px;align-items:start}
.atcb-panel{background:rgba(255,255,255,.94);border:1px solid var(--atcb-border);border-radius:11px;padding:18px}
.atcb-step-heading{margin-bottom:14px}
.atcb-step-heading h2{margin:0;color:var(--atcb-ink);font-family:Georgia,"Times New Roman",serif;font-size:20px;line-height:1.15;font-weight:600;letter-spacing:.02em}
.atcb-step-heading h2 span{margin-right:7px}
.atcb-step-heading p{margin:6px 0 0 26px;color:var(--atcb-muted);font-size:13px;line-height:1.4}
.atcb-services-list{display:flex;flex-direction:column;gap:10px}
.atcb-service-card{border:1px solid var(--atcb-border);border-radius:9px;background:var(--atcb-card);transition:border-color .2s,box-shadow .2s,background .2s}
.atcb-service-card.is-selected{border-color:var(--atcb-active);background:var(--atcb-active-soft);box-shadow:0 0 0 2px rgba(81,21,104,.08)}
.atcb-service-card.atcb-group-analysis.is-selected{border-color:#511568;background:#faf5fd}
.atcb-service-card.atcb-group-healing.is-selected{border-color:#68795a;background:#f4f8f1}
.atcb-service-card.atcb-group-tarot.is-selected{border-color:#b48736;background:#fffaf0}
.atcb-service-main{display:grid;grid-template-columns:68px 1fr 22px;gap:13px;align-items:center;padding:11px 13px;cursor:pointer}
.atcb-service-main>input,.atcb-option-row>input{position:absolute;opacity:0;pointer-events:none}
.atcb-service-icon{width:60px;height:60px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#faf5fd,#eee5f3);color:var(--atcb-purple);border:1px solid #eee2f1}
.atcb-service-icon svg{width:47px;height:47px}
.atcb-service-copy{display:flex;flex-direction:column;gap:5px;min-width:0}
.atcb-service-copy strong{font-family:Georgia,"Times New Roman",serif;font-size:18px;line-height:1.15;font-weight:500;letter-spacing:.01em}
.atcb-service-price{font-family:Georgia,"Times New Roman",serif;font-size:17px;color:var(--atcb-purple)}
.atcb-radio-ui,.atcb-mini-radio{display:inline-block;border:1.5px solid #9b8f7a;border-radius:50%;background:#fff;position:relative}
.atcb-radio-ui{width:18px;height:18px}
.atcb-mini-radio{width:13px;height:13px}
.atcb-service-card.is-selected .atcb-radio-ui:after,.atcb-option-row.is-selected .atcb-mini-radio:after{content:"";position:absolute;border-radius:50%;background:var(--atcb-active);inset:4px}
.atcb-option-row.is-selected .atcb-mini-radio:after{inset:3px}
.atcb-service-options{padding:0 13px 11px 94px;display:flex;flex-direction:column;gap:6px}
.atcb-service-note{display:none;margin:0 13px 11px 94px;padding:7px 9px;border-left:3px solid #511568;background:#faf7fc;border-radius:0 6px 6px 0;color:#5b5060;font-size:10.5px;line-height:1.45}
.atcb-service-card.atcb-group-analysis.is-selected .atcb-service-note{display:block}
.atcb-option-row{display:grid;grid-template-columns:1fr 15px;align-items:center;gap:7px;color:#433b45;font-size:13px;cursor:pointer}
.atcb-option-row:hover{color:var(--atcb-active)}
.atcb-calendar{border:1px solid var(--atcb-border);border-radius:9px;padding:13px;background:#fff}
.atcb-calendar-head{display:grid;grid-template-columns:30px 1fr 30px;align-items:center;text-align:center;margin-bottom:9px}
.atcb-calendar-head strong{font-family:Georgia,"Times New Roman",serif;font-size:17px;font-weight:500}
.atcb-cal-nav{width:30px;height:30px;border:0;background:transparent;border-radius:50%;font-size:24px;line-height:1;color:var(--atcb-ink);cursor:pointer}
.atcb-cal-nav:hover{background:var(--atcb-purple-soft)}
.atcb-weekdays,.atcb-days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;text-align:center}
.atcb-weekdays{margin-bottom:4px;color:#4c464e;font-size:11px}
.atcb-day{appearance:none;border:0;background:transparent;width:36px;height:36px;justify-self:center;border-radius:50%;display:grid;place-items:center;font-size:11px;color:var(--atcb-ink);cursor:default;padding:0}
.atcb-day.atcb-day-available{background:var(--atcb-available);cursor:pointer}
.atcb-day.atcb-day-available:hover{box-shadow:inset 0 0 0 1px var(--atcb-selected)}
.atcb-day.atcb-day-selected{background:var(--atcb-active);color:#fff;font-weight:700}
.atcb-day.atcb-day-outside,.atcb-day.atcb-day-unavailable{color:#b7b2af;background:transparent}
.atcb-day.atcb-day-outside{opacity:.55}
.atcb-legend{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:11px;font-size:10px;color:#5d575e}
.atcb-legend span{display:inline-flex;align-items:center;gap:5px}
.atcb-dot{width:9px;height:9px;border-radius:50%;display:inline-block}
.atcb-dot-available{background:var(--atcb-available)}
.atcb-dot-selected{background:var(--atcb-active)}
.atcb-dot-unavailable{background:#d9d5d2}
.atcb-next-available{margin:10px 0 15px;padding:10px 12px;border-radius:7px;background:linear-gradient(90deg,#f4f0f7,#f8f6f1);display:flex;gap:10px;align-items:center;color:#4a444c}
.atcb-next-icon{font-size:20px;color:var(--atcb-active)}
.atcb-next-available strong,.atcb-next-available span{display:block}
.atcb-next-available strong{font-size:12px;margin-bottom:2px}
.atcb-next-available span{font-size:12px}
.atcb-details-heading{margin:0 0 9px}
.atcb-input-wrap{position:relative;display:block;margin-bottom:8px}
.atcb-input-wrap input,.atcb-input-wrap textarea{width:100%;border:1px solid var(--atcb-border);background:#fff;border-radius:7px;color:var(--atcb-ink);font:inherit;font-size:12px;outline:none;transition:border-color .2s,box-shadow .2s}
.atcb-input-wrap input{height:39px;padding:0 11px 0 37px}
.atcb-input-wrap textarea{min-height:54px;resize:vertical;padding:10px 11px 8px 37px}
.atcb-input-wrap input:focus,.atcb-input-wrap textarea:focus{border-color:var(--atcb-active);box-shadow:0 0 0 3px rgba(81,21,104,.06)}
.atcb-input-icon{position:absolute;left:11px;top:10px;width:16px;height:16px;color:#9c9587;z-index:1}
.atcb-input-icon svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.atcb-submit{width:100%;height:44px;border:0;border-radius:22px;background:linear-gradient(90deg,var(--atcb-active-dark),var(--atcb-active));color:#fff;font-size:13px;font-weight:700;letter-spacing:.02em;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;margin-top:9px;transition:transform .2s,box-shadow .2s,opacity .2s}
.atcb-submit:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(81,21,104,.16)}
.atcb-submit:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}
.atcb-confirm-note{margin:7px auto 0;max-width:390px;text-align:center;color:var(--atcb-muted);font-size:10px;line-height:1.4}
.atcb-form-message{display:none;margin-top:9px;padding:9px 11px;border-radius:7px;font-size:12px;line-height:1.4}
.atcb-form-message.is-error{display:block;color:#792321;background:#fff2f0;border:1px solid #f0c7c2}
.atcb-form-message.is-success{display:block;color:#294b30;background:#edf7ef;border:1px solid #bfdbc4}
.atcb-times-panel{margin-top:16px;border:1px solid var(--atcb-border);border-radius:9px;background:rgba(255,255,255,.96);padding:12px 15px}
.atcb-times-title{display:flex;align-items:flex-start;gap:8px;margin-bottom:9px}
.atcb-times-title strong,.atcb-times-title small{display:block}
.atcb-times-title strong{font-family:Georgia,"Times New Roman",serif;font-size:14px;letter-spacing:.03em;font-weight:600}
.atcb-times-title small{font-size:9px;margin-top:1px;color:var(--atcb-muted)}
.atcb-clock{font-size:19px;color:var(--atcb-purple)}
.atcb-time-slots{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:9px}
.atcb-time-slot{height:32px;border:1px solid #bdb6bd;background:#fff;border-radius:6px;color:#383238;font-size:10px;cursor:pointer;transition:background .2s,color .2s,border .2s}
.atcb-time-slot:hover:not(:disabled){border-color:var(--atcb-active)}
.atcb-time-slot.is-selected{background:var(--atcb-active);border-color:var(--atcb-active);color:#fff;font-weight:700}
.atcb-time-slot:disabled{cursor:not-allowed;opacity:.45;background:#f3f1f1}
.atcb-has-error{border-color:#bd4d4d!important;box-shadow:0 0 0 2px rgba(189,77,77,.08)!important}

@media (max-width: 980px){
  .atcb-grid{grid-template-columns:1fr;gap:16px}
  .atcb-time-slots{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media (max-width: 640px){
  .atcb-panel{padding:15px;border-radius:9px}
  .atcb-step-heading h2{font-size:18px}
  .atcb-step-heading p{margin-left:0;font-size:12px}
  .atcb-service-main{grid-template-columns:60px 1fr 20px;gap:10px;padding:10px}
  .atcb-service-icon{width:54px;height:54px}
  .atcb-service-icon svg{width:43px;height:43px}
  .atcb-service-copy strong{font-size:16px}
  .atcb-service-price{font-size:15px}
  .atcb-service-options{padding:0 10px 10px 80px}
  .atcb-service-note{margin:0 10px 10px 80px;font-size:10px}
  .atcb-calendar{padding:11px}
  .atcb-day{width:34px;height:34px}
  .atcb-time-slots{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
  .atcb-times-panel{padding:12px}
}
@media (max-width: 420px){
  .atcb-day{width:31px;height:31px}
}
