/* Прайс послуг: «Консультації лікарів», «Краса та тіло» (inc/services-booking.php). */
.svc-tools{display:grid; grid-template-columns:2fr 1fr; gap:24px 40px; margin-bottom:34px;}
.svc-tools label span{display:block; font-size:13px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; color:var(--pink); margin-bottom:6px;}
.svc-tools input, .svc-tools select{width:100%; border:none; border-bottom:2px solid var(--pink); background:transparent; padding:8px 2px; font:inherit; font-size:16px; color:var(--ink); border-radius:0;}
.svc-tools input:focus, .svc-tools select:focus{outline:none; border-bottom-color:var(--violet);}
.svc-tools .svc-search:only-child{grid-column:1 / -1; max-width:640px;}
.svc-nothing{color:var(--ink-soft); margin:0 0 24px;}
.svc-empty{padding:40px; text-align:center; color:var(--ink-soft); background:var(--pink-tint); border-radius:var(--radius);}
.svc-flash{background:var(--teal-tint); color:var(--ink); border-radius:var(--radius-sm); padding:14px 18px; margin-bottom:24px; font-size:15px;}

.svc-group, section.svc-group{margin-bottom:26px; padding:0;}
.svc-group-head{width:100%; display:flex; align-items:center; justify-content:space-between; gap:16px; background:var(--pink); color:#fff; border:none; border-radius:var(--radius-sm); padding:16px 24px; font:inherit; font-size:19px; font-weight:800; text-align:left; cursor:pointer;}
.svc-group-head i{flex:0 0 32px; height:32px; border:2px solid rgba(255,255,255,.85); border-radius:50%; position:relative;}
.svc-group-head i::after{content:""; position:absolute; left:50%; top:50%; width:8px; height:8px; border-left:2px solid #fff; border-top:2px solid #fff; transform:translate(-50%,-25%) rotate(45deg);}
.svc-group-head[aria-expanded="false"] i::after{transform:translate(-50%,-75%) rotate(225deg);}
.svc-group-body{padding:6px 0 0;}
.svc-group-head[aria-expanded="false"] + .svc-group-body{display:none;}
.svc-sub{padding:20px 24px 4px;}
.svc-sub h3{font-size:16.5px; color:var(--violet);}
.svc-sub p{font-size:13.5px; color:var(--ink-soft); margin-top:4px; line-height:1.5;}

.svc-row{display:grid; grid-template-columns:minmax(0,1fr) 130px 80px 210px; gap:16px; align-items:center; padding:14px 24px; border-bottom:1px solid var(--line);}
.svc-c-name b{display:block; font-size:15.5px; font-weight:600; color:var(--ink);}
.svc-c-name small{display:block; font-size:12.5px; color:var(--ink-soft); margin-top:3px; line-height:1.45;}
.svc-c-name .svc-format{color:var(--teal); font-weight:600;}
.svc-more{display:inline-block; font-size:12.5px; color:var(--pink); margin-top:4px; text-decoration:underline; text-underline-offset:2px;}
.svc-c-price{font-weight:800; color:var(--violet); white-space:nowrap; text-align:right;}
.svc-price-note{display:block; font-size:13px; font-weight:600; color:var(--ink-soft); white-space:normal; line-height:1.4;}
.svc-c-len{color:var(--ink-soft); font-size:14px; text-align:right; white-space:nowrap;}
.svc-c-btn{text-align:right;}
.svc-c-btn .btn{white-space:nowrap;}
.svc-note{padding:14px 24px 0; font-size:13.5px; color:var(--ink-soft); line-height:1.6;}

/* Вікно запису */
.svc-popup [hidden], .svc-group[hidden], .svc-row[hidden], .svc-sub[hidden]{display:none !important;}
.svc-popup{max-width:480px; text-align:left; max-height:calc(100vh - 40px); overflow-y:auto;}
.svc-popup h3{font-size:21px;}
.svc-popup .svc-spec{margin-top:4px; color:var(--teal); font-weight:600;}
.svc-popup form .field{margin-top:14px; margin-bottom:0;}
.svc-popup select{width:100%; padding:12px 14px; border-radius:10px; border:1.5px solid var(--line); font:inherit; font-size:14px; background:#fff;}
.svc-noslots{background:var(--pink-tint); border-radius:12px; padding:12px 14px; font-size:13.5px; margin-top:14px; color:var(--ink);}
.svc-sum{margin-top:18px; border-top:1px solid var(--line); padding-top:12px;}
.svc-sum > div{display:flex; justify-content:space-between; gap:12px; font-size:14.5px; padding:4px 0;}
.svc-sum .svc-total{font-size:16.5px; color:var(--violet); border-top:1px dashed var(--line); margin-top:6px; padding-top:10px;}
.svc-popup .svc-sum-note{font-size:12.5px; color:var(--teal); margin:0;}
.svc-consent{display:flex; gap:10px; align-items:flex-start; font-size:12.5px; color:var(--ink-soft); margin-top:16px; line-height:1.5;}
.svc-consent input{margin-top:3px; flex:0 0 auto;}
.svc-consent a{color:var(--pink);}
.svc-popup .svc-error{color:#b32d2e; font-size:13.5px; margin-top:12px;}
.svc-popup #svcSubmit{width:100%; margin-top:18px;}
.svc-done{text-align:center; padding:20px 0 6px;}
.svc-done-icon{width:56px; height:56px; border-radius:50%; background:var(--teal); color:#fff; font-size:28px; line-height:56px; margin:0 auto 12px;}
.svc-popup .svc-done p{font-size:15px; color:var(--ink);}

@media (max-width:900px){
  .svc-row{grid-template-columns:minmax(0,1fr) auto; grid-template-areas:"name price" "len btn"; row-gap:8px;}
  .svc-c-name{grid-area:name;} .svc-c-price{grid-area:price;} .svc-c-len{grid-area:len; text-align:left;} .svc-c-btn{grid-area:btn;}
}
@media (max-width:640px){
  .svc-tools{grid-template-columns:1fr; gap:18px;}
  .svc-group-head{padding:14px 16px; font-size:17px;}
  .svc-row{padding:14px 12px; grid-template-columns:minmax(0,1fr) auto; grid-template-areas:"name name" "price btn" "len len"; row-gap:10px;}
  .svc-c-price{text-align:left;}
  .svc-c-len:empty{display:none;}
  .svc-c-btn .btn{padding:9px 14px;}
  .svc-sub, .svc-note{padding-left:12px; padding-right:12px;}
}
