@font-face{font-family:'Vazirmatn';src:url('../fonts/Vazirmatn-Regular.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Vazirmatn';src:url('../fonts/Vazirmatn-Bold.woff2') format('woff2');font-weight:700 900;font-style:normal;font-display:swap}

.pbc-wrap{font-family:'Vazirmatn',Tahoma,sans-serif;max-width:860px;margin:20px auto;direction:rtl;color:#1f2937}
.pbc-wrap.pbc-calendar-wrap{max-width:100%;width:100%}
.pbc-wrap[data-theme='aurora']{--pb-bg:linear-gradient(120deg,#e8f2ff,#f6e8ff);--pb-accent:#4f46e5;--pb-accent-soft:rgba(79,70,229,.14);--pb-card:rgba(255,255,255,.42);--pb-border:rgba(255,255,255,.55)}
.pbc-wrap[data-theme='sunset']{--pb-bg:linear-gradient(120deg,#ffe7d0,#ffe8f0);--pb-accent:#c2410c;--pb-accent-soft:rgba(194,65,12,.14);--pb-card:rgba(255,255,255,.45);--pb-border:rgba(255,255,255,.5)}
.pbc-wrap[data-theme='ocean']{--pb-bg:linear-gradient(120deg,#dff7ff,#e8efff);--pb-accent:#0369a1;--pb-accent-soft:rgba(3,105,161,.14);--pb-card:rgba(255,255,255,.46);--pb-border:rgba(255,255,255,.58)}

.pbc-card{background:var(--pb-bg);border-radius:26px;padding:22px;border:1px solid var(--pb-border);box-shadow:0 16px 44px rgba(15,23,42,.12);position:relative;overflow:hidden}
.pbc-card::before{content:'';position:absolute;inset:0;background:var(--pb-card);backdrop-filter:blur(20px) saturate(1.25);-webkit-backdrop-filter:blur(20px) saturate(1.25)}
.pbc-card>*{position:relative;z-index:2}

.pbc-title{margin:2px 0 14px;font-size:24px;font-weight:800;color:#111827;text-align:center}

.pbc-theme-switcher{display:flex;justify-content:center;gap:8px;margin-bottom:14px}
.pbc-theme-switcher button{border:1px solid #d1d5db;background:#fff;padding:7px 12px;border-radius:999px;cursor:pointer;font-size:12px;font-family:inherit}
.pbc-theme-switcher button:hover,.pbc-theme-switcher button.is-active{border-color:var(--pb-accent);color:var(--pb-accent)}

.pbc-form{display:flex;flex-direction:column;gap:14px}
.pbc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.pbc-field{display:flex;flex-direction:column;gap:6px}
.pbc-field-full{grid-column:1/-1}
.pbc-field label{font-size:12px;color:#374151;font-weight:700}
.pbc-field input,.pbc-field select{height:42px;border:1px solid rgba(148,163,184,.5);background:rgba(255,255,255,.8);border-radius:12px;padding:0 12px;font-family:inherit;font-size:14px}
.pbc-field input:focus,.pbc-field select:focus{outline:none;border-color:var(--pb-accent);box-shadow:0 0 0 3px var(--pb-accent-soft)}
.pbc-checkboxes{display:flex;flex-wrap:wrap;gap:8px}
.pbc-check{display:flex;align-items:center;gap:4px;font-size:13px;cursor:pointer}
.pbc-check input{width:auto;height:auto}

.pbc-section{border:1px solid rgba(148,163,184,.35);background:rgba(255,255,255,.58);border-radius:14px;padding:12px}
.pbc-section h4{margin:0 0 8px;font-size:14px;color:#111827}

/* Date list */
.pbc-date-list{display:flex;gap:8px;flex-wrap:wrap}
.pbc-date-scroll{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:6px;scroll-snap-type:x mandatory}
.pbc-date-scroll::-webkit-scrollbar{height:4px}
.pbc-date-scroll::-webkit-scrollbar-thumb{background:var(--pb-accent);border-radius:4px}
.pbc-date-chip{border:1px solid rgba(148,163,184,.45);background:#fff;color:#1f2937;padding:8px 11px;border-radius:999px;cursor:pointer;font-family:inherit;font-size:12px;line-height:1.2;white-space:nowrap;scroll-snap-align:start;flex-shrink:0}
.pbc-date-chip.is-active,.pbc-date-chip:hover{border-color:var(--pb-accent);color:var(--pb-accent);background:var(--pb-accent-soft)}
.pbc-date-chip-mobile{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:56px;padding:8px 6px}
.pbc-date-wd{font-size:10px;opacity:.7}
.pbc-date-num{font-size:13px;font-weight:700}

/* Slots */
.pbc-slot-list{display:flex;flex-direction:column;gap:7px}
.pbc-slot{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:8px;border:1px solid rgba(148,163,184,.35);background:#fff;border-radius:12px;padding:10px 12px;cursor:pointer;font-family:inherit;text-align:right}
.pbc-slot:hover{border-color:var(--pb-accent);background:var(--pb-accent-soft)}
.pbc-slot.is-active{border-color:var(--pb-accent);background:var(--pb-accent-soft)}
.pbc-slot[disabled]{cursor:not-allowed}
.pbc-slot.is-booked{background:repeating-linear-gradient(135deg,#f9fafb,#f9fafb 4px,#f3f4f6 4px,#f3f4f6 8px);opacity:.7}
.pbc-slot-time{font-weight:700;color:#111827}
.pbc-strike{text-decoration:line-through;color:#9ca3af}
.pbc-slot-price{font-size:12px;color:#374151;background:rgba(16,185,129,.12);padding:4px 8px;border-radius:999px}
.pbc-slot-full{font-size:11px;color:#b91c1c;background:rgba(239,68,68,.14);padding:3px 8px;border-radius:999px}

/* Submit */
.pbc-submit{height:46px;border:none;border-radius:14px;background:var(--pb-accent);color:#fff;font-weight:800;font-family:inherit;font-size:14px;cursor:pointer;box-shadow:0 10px 28px rgba(15,23,42,.2)}
.pbc-submit:hover{filter:brightness(1.05)}
.pbc-submit[disabled]{opacity:.6;cursor:not-allowed}

/* Messages */
.pbc-message{min-height:20px;font-size:13px;color:#1f2937}
.pbc-message.is-error{color:#b91c1c}
.pbc-message.is-success{color:#166534}
.pbc-message.is-loading{color:#1d4ed8}
.pbc-empty{text-align:center;color:#6b7280;padding:20px 8px}

/* Coupon */
.pbc-coupon-section{background:rgba(255,255,255,.65)}
.pbc-coupon-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.pbc-coupon-row input{flex:1;min-width:140px;height:38px;border:1px solid rgba(148,163,184,.5);background:rgba(255,255,255,.9);border-radius:10px;padding:0 12px;font-family:inherit;font-size:13px;text-transform:uppercase}
.pbc-coupon-row input:focus{outline:none;border-color:var(--pb-accent);box-shadow:0 0 0 3px var(--pb-accent-soft)}
.pbc-coupon-btn{height:38px;border:none;border-radius:10px;background:var(--pb-accent);color:#fff;font-family:inherit;font-size:13px;font-weight:700;padding:0 18px;cursor:pointer}
.pbc-coupon-btn:hover{filter:brightness(1.08)}
.pbc-coupon-skip{height:38px;border:1px solid #d1d5db;border-radius:10px;background:#f9fafb;color:#6b7280;font-family:inherit;font-size:12px;padding:0 14px;cursor:pointer}
.pbc-coupon-skip:hover{border-color:#9ca3af}
.pbc-coupon-result{min-height:20px;font-size:12px;margin-top:6px}
.pbc-coupon-result.success{color:#166534}
.pbc-coupon-result.error{color:#b91c1c}
.pbc-coupon-result.loading{color:#1d4ed8}

/* Consultation mode */
.pbc-mode-list{display:flex;flex-direction:column;gap:8px}
.pbc-mode{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid rgba(148,163,184,.45);background:#fff;border-radius:12px;padding:10px 12px;cursor:pointer;font-family:inherit;text-align:right}
.pbc-mode:hover,.pbc-mode.is-active{border-color:var(--pb-accent);background:var(--pb-accent-soft)}
.pbc-mode-label{font-weight:700;color:#111827}
.pbc-mode-price{font-size:12px;color:#374151;background:rgba(16,185,129,.12);padding:4px 8px;border-radius:999px}
.pbc-mode-single{margin:0;font-size:14px;color:#374151}
.pbc-field input.is-over-limit{border-color:#dc2626;box-shadow:0 0 0 3px rgba(220,38,38,.12)}

/* Responsive */
@media (max-width:639px){
	.pbc-wrap{margin:8px}
	.pbc-card{padding:14px;border-radius:18px}
	.pbc-grid{grid-template-columns:1fr}
	.pbc-slot{grid-template-columns:1fr auto}
	.pbc-slot-full{grid-column:1/-1;justify-self:flex-start}
	.pbc-title{font-size:20px}
}
