/* ReserveKit frontend styles */
.reservekit-booking-form-wrap,
.reservekit-public-calendar,
.reservekit-customer-bookings{
	max-width:var(--rk-width,860px);
	margin:28px auto;
	padding:0 12px;
	color:var(--rk-text,#111827);
}
.reservekit-booking-form{
	background:var(--rk-bg,#fff);
	border:1px solid rgba(17,24,39,.08);
	border-radius:24px;
	padding:28px;
	position:relative;
	overflow:hidden;
}
.reservekit-shadow-none .reservekit-booking-form{box-shadow:none}
.reservekit-shadow-soft .reservekit-booking-form{box-shadow:0 16px 45px rgba(17,24,39,.08)}
.reservekit-shadow-medium .reservekit-booking-form{box-shadow:0 24px 70px rgba(17,24,39,.13)}
.reservekit-shadow-strong .reservekit-booking-form{box-shadow:0 30px 90px rgba(17,24,39,.2)}
.reservekit-form-header{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;margin-bottom:22px;padding:18px;border-radius:20px;background:linear-gradient(135deg,var(--rk-accent,#eff6ff),rgba(255,255,255,.7))}
.reservekit-form-header h3{margin:0 0 6px;font-size:28px;line-height:1.18;color:var(--rk-text,#111827)}
.reservekit-form-header p{margin:0;color:color-mix(in srgb,var(--rk-text,#111827) 70%,#fff);font-size:15px}
.reservekit-progress{display:flex;gap:7px;align-items:center;flex-shrink:0}.reservekit-progress span{width:30px;height:30px;border-radius:999px;background:#fff;color:var(--rk-primary,#2563eb);display:grid;place-items:center;font-weight:800;border:1px solid rgba(37,99,235,.15)}
.reservekit-form-body{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:22px;align-items:start}.reservekit-main-fields{min-width:0}.reservekit-layout-single_column .reservekit-form-body,.reservekit-layout-compact .reservekit-form-body{display:block}.reservekit-layout-single_column .reservekit-summary,.reservekit-layout-compact .reservekit-summary{margin-top:18px}.reservekit-layout-single_column .reservekit-grid,.reservekit-layout-compact .reservekit-grid{grid-template-columns:1fr}
.reservekit-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.reservekit-section-title{grid-column:1/-1;display:flex;align-items:center;gap:12px;margin:18px 0 12px;font-weight:800;color:var(--rk-primary,#2563eb)}.reservekit-section-title:after{content:"";height:1px;background:rgba(17,24,39,.1);flex:1}.reservekit-section-title:first-child{margin-top:0}.reservekit-field{display:flex;flex-direction:column;gap:7px}.reservekit-field-full{grid-column:1/-1}.reservekit-field label,.reservekit-lookup-form label{font-weight:750;color:var(--rk-text,#111827);font-size:14px}.reservekit-field input,.reservekit-field select,.reservekit-field textarea,.reservekit-lookup-form input{width:100%;border:1px solid rgba(17,24,39,.14);border-radius:var(--rk-field-radius,12px);padding:12px 13px;background:#fff;min-height:46px;color:#111827;box-shadow:0 1px 0 rgba(17,24,39,.03);transition:border-color .18s,box-shadow .18s}.reservekit-field input:focus,.reservekit-field select:focus,.reservekit-field textarea:focus{outline:none;border-color:var(--rk-primary,#2563eb);box-shadow:0 0 0 4px color-mix(in srgb,var(--rk-primary,#2563eb) 14%,transparent)}
.reservekit-checkbox label,.reservekit-inline-check{font-weight:600;display:flex;gap:8px;align-items:center}.reservekit-inline-check input{width:auto;min-height:0}.reservekit-button{appearance:none;border:0;border-radius:var(--rk-button-radius,999px);background:var(--rk-primary,#111827);color:#fff;padding:13px 24px;font-weight:800;cursor:pointer;margin-top:20px;box-shadow:0 10px 24px color-mix(in srgb,var(--rk-primary,#111827) 28%,transparent);transition:transform .18s,filter .18s,box-shadow .18s}.reservekit-button-small{padding:10px 18px;font-size:14px}.reservekit-button-large{padding:16px 30px;font-size:17px}.reservekit-button:hover{filter:brightness(.96);transform:translateY(-1px)}.reservekit-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.reservekit-message{display:none;border-radius:14px;padding:13px 15px;margin-bottom:18px;font-weight:650}.reservekit-message.is-success{display:block;background:#ecfdf5;color:#065f46}.reservekit-message.is-error{display:block;background:#fef2f2;color:#991b1b}.reservekit-message.is-info{display:block;background:#eff6ff;color:#1d4ed8}
.reservekit-summary{position:sticky;top:24px;border:1px solid rgba(17,24,39,.08);border-radius:20px;padding:18px;background:rgba(255,255,255,.72);backdrop-filter:blur(10px)}.reservekit-summary h4{font-size:18px;margin:0 0 14px}.reservekit-summary-row{display:flex;justify-content:space-between;gap:10px;padding:11px 0;border-bottom:1px dashed rgba(17,24,39,.12)}.reservekit-summary-row span{color:#6b7280}.reservekit-summary-row strong{text-align:right}.reservekit-price-box{margin-top:14px;padding:14px;border-radius:16px;background:var(--rk-accent,#eff6ff);display:flex;justify-content:space-between;gap:10px}.reservekit-price-box strong{font-size:22px;color:var(--rk-primary,#2563eb)}
.reservekit-template-step-wizard .reservekit-section-title span{padding:8px 12px;border-radius:999px;background:var(--rk-primary,#7c3aed);color:#fff}.reservekit-template-restaurant .reservekit-button,.reservekit-template-salon-spa .reservekit-button,.reservekit-template-event .reservekit-button{width:100%}.reservekit-template-compact .reservekit-booking-form{padding:20px}.reservekit-template-compact .reservekit-form-header{padding:14px}.reservekit-template-compact .reservekit-form-header h3{font-size:22px}
.reservekit-calendar-day,.reservekit-booking-list li{border:1px solid #e5e7eb;border-radius:14px;padding:15px;margin:10px 0;background:#fff}.reservekit-lookup-form{display:grid;gap:10px;background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:20px}
@media(max-width:860px){.reservekit-form-body{grid-template-columns:1fr}.reservekit-summary{position:static}.reservekit-form-header{display:block}.reservekit-progress{margin-top:14px}.reservekit-grid{grid-template-columns:1fr}.reservekit-booking-form{padding:20px}.reservekit-form-header h3{font-size:24px}}

/* ReserveKit advanced style builder output */
.reservekit-booking-form-wrap{font-family:var(--rk-font-family,inherit)}
.reservekit-booking-form{
	background:var(--rk-bg,#fff);
	border:var(--rk-form-border-width,1px) solid var(--rk-form-border,#e5e7eb);
	border-radius:var(--rk-form-radius,24px);
	padding:var(--rk-form-padding,28px);
}
.reservekit-grid{gap:var(--rk-field-gap,16px)}
.reservekit-field label,.reservekit-lookup-form label{color:var(--rk-label,#111827);font-size:var(--rk-label-size,14px)}
.reservekit-field input,.reservekit-field select,.reservekit-field textarea,.reservekit-lookup-form input{
	background:var(--rk-field-bg,#fff);
	border-color:var(--rk-field-border,#d1d5db);
	color:var(--rk-field-text,#111827);
	font-size:var(--rk-field-font-size,15px);
	min-height:var(--rk-input-height,46px);
}
.reservekit-field input:focus,.reservekit-field select:focus,.reservekit-field textarea:focus{border-color:var(--rk-field-focus,#2563eb);box-shadow:0 0 0 4px color-mix(in srgb,var(--rk-field-focus,#2563eb) 14%,transparent)}
.reservekit-button{background:var(--rk-button-bg,var(--rk-primary,#2563eb));color:var(--rk-button-text,#fff)}
.reservekit-button:hover{background:var(--rk-button-hover-bg,var(--rk-button-bg,#1d4ed8));color:var(--rk-button-hover-text,#fff)}
.reservekit-button-wrap{display:flex;justify-content:flex-start;margin-top:20px}
.reservekit-button-align-center .reservekit-button-wrap{justify-content:center}
.reservekit-button-align-right .reservekit-button-wrap{justify-content:flex-end}
.reservekit-button-width-full .reservekit-button{width:100%}
.reservekit-summary{background:var(--rk-summary-bg,#fff)}
.reservekit-message.is-success{background:var(--rk-success-bg,#ecfdf5);color:var(--rk-success-color,#065f46)}
.reservekit-message.is-error{background:var(--rk-error-bg,#fef2f2);color:var(--rk-error-color,#991b1b)}
