:root{--bmp-blue:#2563eb;--bmp-dark:#0f172a;--bmp-muted:#64748b;--bmp-border:#e5eaf1;--bmp-bg:#f6f8fc;--bmp-green:#198754;--bmp-orange:#f59e0b;--bmp-red:#dc3545}
.bmp-appbar{width:100%;background:#fff;border-bottom:1px solid var(--bmp-border);box-shadow:0 2px 14px rgba(15,23,42,.05);position:relative;z-index:20}.bmp-appbar-inner{max-width:1280px;margin:auto;padding:14px 22px;display:flex;align-items:center;justify-content:space-between;gap:20px}.bmp-brand{display:flex;align-items:center;gap:10px;text-decoration:none!important;color:var(--bmp-dark)!important}.bmp-brand-mark,.bmp-auth-logo,.bmp-avatar{display:grid;place-items:center;background:linear-gradient(135deg,#2563eb,#7c3aed);color:#fff;font-weight:800;border-radius:50%}.bmp-brand-mark{width:42px;height:42px;font-size:12px}.bmp-brand strong{display:block;font-size:15px}.bmp-brand small{display:block;color:var(--bmp-muted);font-size:11px}.bmp-nav{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.bmp-nav a{display:inline-flex;align-items:center;justify-content:center;padding:9px 13px;border-radius:9px;text-decoration:none!important;color:#334155!important;font-size:13px;font-weight:700;background:#f8fafc;border:1px solid var(--bmp-border);box-shadow:0 2px 6px rgba(15,23,42,.03)}.bmp-nav a:hover,.bmp-nav a.is-active{background:#eef4ff;color:var(--bmp-blue)!important;border-color:#cbdafe;box-shadow:0 4px 10px rgba(37,99,235,.08)}.bmp-nav .bmp-nav-logout{color:#dc3545!important;background:#fff5f5;border-color:#ffd8dc}.bmp-page-wrap,.bmp-dashboard-shell{max-width:1200px;margin:0 auto;padding:36px 20px 55px}.bmp-page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:25px}.bmp-page-head h1{font-size:38px;margin:5px 0 8px;color:var(--bmp-dark)}.bmp-page-head p,.bmp-welcome-card p{color:var(--bmp-muted);margin:0}.bmp-eyebrow{font-size:11px;letter-spacing:.13em;font-weight:800;color:var(--bmp-blue)}.bmp-card{background:#fff;border:1px solid var(--bmp-border);border-radius:18px;box-shadow:0 10px 30px rgba(15,23,42,.05)}.bmp-outline-btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid #cfd7e5;border-radius:9px;padding:11px 16px;text-decoration:none!important;color:#334155!important;background:#fff;font-weight:700;font-size:13px}.bmp-outline-btn:hover{border-color:#9db7ff;color:var(--bmp-blue)!important}.bmp-primary-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:linear-gradient(135deg,#2563eb,#4f46e5);color:#fff!important;border:0;border-radius:10px;padding:13px 18px;font-size:14px;font-weight:800;text-decoration:none!important;cursor:pointer;box-shadow:0 8px 18px rgba(37,99,235,.2)}.bmp-primary-btn:disabled{opacity:.7;cursor:wait}.bmp-btn-inline{width:auto}.bmp-alert{padding:14px 16px;border-radius:10px;margin:0 0 20px;font-size:14px}.bmp-alert-error{background:#fff0f1;border:1px solid #ffc8ce;color:#a61b29}.bmp-booking-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.75fr);gap:22px}.bmp-form-card{padding:28px}.bmp-field{margin-bottom:19px}.bmp-field label,.bmp-auth-form label{display:block;font-size:13px;font-weight:800;color:#334155;margin-bottom:8px}.bmp-field label span{color:#dc3545}.bmp-field input,.bmp-field select,.bmp-auth-form input{width:100%;box-sizing:border-box;border:1px solid #d9e0ea;border-radius:10px;padding:13px 14px;font-size:14px;background:#fff;outline:none}.bmp-field input:focus,.bmp-field select:focus,.bmp-auth-form input:focus{border-color:#7aa2ff;box-shadow:0 0 0 3px #eaf0ff}.bmp-guide-card{padding:26px}.bmp-guide-card h3{margin-top:0;color:var(--bmp-dark)}.bmp-guide-card hr{border:0;border-top:1px solid var(--bmp-border);margin:20px 0}.bmp-guide-card h4{margin-bottom:6px}.bmp-guide-card p{color:var(--bmp-muted);font-size:13px;line-height:1.6}.bmp-note{background:#fff8df;padding:12px;border-radius:9px}.bmp-legend{display:flex;align-items:center;gap:10px;padding:10px 0;font-size:13px;color:#475569}.bmp-legend i{width:14px;height:14px;border-radius:50%;display:block}.bmp-legend i.green{background:#22c55e}.bmp-legend i.red{background:#ef4444}.bmp-legend i.blue{background:#fff;border:3px solid #3b82f6;box-sizing:border-box}.bmp-calendar-green{background:#22c55e!important;color:#fff!important;border-radius:50%!important}.bmp-calendar-red{background:#ef4444!important;color:#fff!important;border-radius:50%!important}.bmp-dashboard-shell{padding-top:30px}.bmp-welcome-card{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:30px;border-radius:20px;background:linear-gradient(135deg,#eef4ff,#f8f7ff);border:1px solid #dce5ff;margin-bottom:22px}.bmp-welcome-card h1{margin:7px 0 8px;font-size:34px;color:var(--bmp-dark)}.bmp-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:22px}.bmp-stat{background:#fff;border:1px solid var(--bmp-border);border-radius:16px;padding:18px;display:flex;gap:14px;align-items:center;box-shadow:0 8px 25px rgba(15,23,42,.04)}.bmp-stat>span{font-size:25px}.bmp-stat strong{display:block;font-size:26px;color:var(--bmp-dark)}.bmp-stat small{color:var(--bmp-muted)}.bmp-quick-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:22px}.bmp-quick-card{padding:22px;background:#fff;border:1px solid var(--bmp-border);border-radius:16px;text-decoration:none!important;color:var(--bmp-dark)!important;transition:.2s}.bmp-quick-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(15,23,42,.08)}.bmp-quick-card span{font-size:26px;display:block;margin-bottom:10px}.bmp-quick-card strong,.bmp-quick-card small{display:block}.bmp-quick-card small{color:var(--bmp-muted);margin-top:5px}.bmp-recent-card{padding:22px}.bmp-section-head{display:flex;justify-content:space-between;align-items:center}.bmp-section-head h2{margin:0}.bmp-section-head a{color:var(--bmp-blue);font-weight:700;text-decoration:none}.bmp-recent-row{display:flex;justify-content:space-between;align-items:center;padding:16px 0;border-bottom:1px solid var(--bmp-border);gap:15px}.bmp-recent-row:last-child{border-bottom:0}.bmp-recent-row strong,.bmp-recent-row span{display:block}.bmp-recent-row span{color:var(--bmp-muted);font-size:12px;margin-top:3px}.bmp-row-right{text-align:right}.bmp-status{display:inline-block!important;margin-top:6px!important;padding:4px 8px;border-radius:999px;font-size:10px!important;font-weight:800}.bmp-status.paid,.bmp-status.fully_paid{background:#eaf8ef;color:#198754}.bmp-status.pending{background:#fff8df;color:#9a6700}.bmp-table-card{padding:8px}.bmp-responsive-table{overflow-x:auto}.bmp-table{width:100%;border-collapse:separate;border-spacing:0;min-width:980px}.bmp-table th{background:#f7f9fc;color:#475569;font-size:11px;text-transform:uppercase;letter-spacing:.04em}.bmp-table th,.bmp-table td{padding:14px 13px;border-bottom:1px solid var(--bmp-border);text-align:left;vertical-align:middle}.bmp-table td small{display:block;color:var(--bmp-muted);font-size:11px;margin-top:3px}.bmp-badge{display:inline-block;padding:5px 9px;border-radius:999px;font-size:10px;font-weight:800;white-space:nowrap}.bmp-badge.fully,.bmp-badge.paid,.bmp-badge.approved{background:#eaf8ef;color:#198754}.bmp-badge.pending{background:#fff8df;color:#9a6700}.bmp-badge.rejected{background:#fff0f1;color:#c92a3a}.bmp-actions{max-width:250px}.bmp-mini-btn{display:inline-flex;align-items:center;justify-content:center;padding:7px 9px;border-radius:7px;color:#fff!important;text-decoration:none!important;font-size:11px;font-weight:800;margin:2px}.bmp-mini-btn.pay{background:#f59e0b}.bmp-mini-btn.green{background:#198754}.bmp-mini-btn.blue{background:#2563eb}.bmp-actions>small{display:block;color:var(--bmp-muted);font-size:10px}.bmp-payment-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:22px}.bmp-payment-summary,.bmp-checkout-card{padding:28px}.bmp-payment-badge{display:inline-block;background:#eaf2ff;color:#2563eb;padding:7px 10px;border-radius:999px;font-size:11px;font-weight:800}.bmp-payment-summary h2{margin:20px 0 4px}.bmp-amount{font-size:42px;font-weight:900;color:var(--bmp-dark);margin-bottom:18px}.bmp-test-note{background:#fff8df;color:#8a5b00;border:1px solid #f0d68a;padding:10px;border-radius:8px;font-size:12px;margin-bottom:18px}.bmp-summary-row{display:flex;justify-content:space-between;gap:10px;padding:12px 0;border-bottom:1px solid var(--bmp-border);font-size:13px}.bmp-summary-row span{color:var(--bmp-muted)}.bmp-checkout-card{display:flex;flex-direction:column;justify-content:center;min-height:380px}.bmp-checkout-card h3{font-size:22px}.bmp-checkout-loading{text-align:center;padding:25px}.bmp-spinner{width:35px;height:35px;border:4px solid #e8eefb;border-top-color:#2563eb;border-radius:50%;margin:0 auto 15px;animation:bmpSpin .8s linear infinite}@keyframes bmpSpin{to{transform:rotate(360deg)}}.bmp-secure-list{display:flex;gap:12px;justify-content:center;color:#64748b;font-size:11px;margin-top:20px}.bmp-result-card{max-width:900px;margin:10px auto;padding:32px;background:#fff;border:1px solid #cce8d7;border-radius:20px;box-shadow:0 12px 35px rgba(15,23,42,.06)}.bmp-result-icon{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;font-size:30px;font-weight:900;margin-bottom:18px}.bmp-result-icon.success{background:#dff7e7;color:#198754}.bmp-result-icon.error{background:#ffe3e6;color:#dc3545}.bmp-result-card h1{margin:0 0 8px}.bmp-result-subtitle{color:var(--bmp-muted);margin-bottom:24px}.bmp-result-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--bmp-border);border:1px solid var(--bmp-border);border-radius:12px;overflow:hidden}.bmp-result-grid>div{background:#fff;padding:14px}.bmp-result-grid span,.bmp-result-grid strong{display:block}.bmp-result-grid span{font-size:11px;color:var(--bmp-muted);margin-bottom:5px}.bmp-result-grid strong{font-size:14px;color:var(--bmp-dark);word-break:break-word}.bmp-result-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:22px}.bmp-notify-note{margin-top:20px;padding:12px;background:#f7f9fc;color:#64748b;border-radius:9px;font-size:12px}.bmp-profile-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:22px}.bmp-profile-hero{padding:30px;text-align:center}.bmp-avatar{width:80px;height:80px;margin:0 auto 15px;font-size:30px}.bmp-profile-hero p{color:var(--bmp-muted)}.bmp-profile-details{padding:8px}.bmp-profile-details>div{display:flex;justify-content:space-between;gap:20px;padding:18px;border-bottom:1px solid var(--bmp-border)}.bmp-profile-details>div:last-child{border-bottom:0}.bmp-profile-details span{color:var(--bmp-muted);font-size:13px}.bmp-profile-details strong{text-align:right}.bmp-auth-page{min-height:600px;display:grid;place-items:center;padding:50px 20px;background:linear-gradient(135deg,#f7f9ff,#fff)}.bmp-auth-card{width:min(430px,100%);background:#fff;border:1px solid var(--bmp-border);border-radius:22px;padding:34px;box-shadow:0 20px 50px rgba(15,23,42,.09)}.bmp-auth-logo{width:60px;height:60px;margin-bottom:18px}.bmp-auth-card h1{margin:8px 0}.bmp-auth-subtitle{color:var(--bmp-muted);font-size:14px;margin-bottom:22px}.bmp-auth-form label{margin-top:15px}.bmp-auth-form .bmp-primary-btn{width:100%;margin-top:22px}.bmp-auth-bottom{text-align:center;color:var(--bmp-muted);font-size:13px;margin:20px 0 0}.bmp-auth-bottom a{color:var(--bmp-blue);font-weight:800}.bmp-empty{padding:30px;text-align:center;color:var(--bmp-muted)}
@media(max-width:980px){.bmp-booking-layout,.bmp-payment-layout,.bmp-profile-grid{grid-template-columns:1fr}.bmp-stat-grid{grid-template-columns:repeat(2,1fr)}.bmp-quick-grid{grid-template-columns:1fr 1fr}.bmp-appbar-inner{align-items:flex-start;flex-direction:column}.bmp-nav{width:100%;overflow:auto;flex-wrap:nowrap}.bmp-nav a{white-space:nowrap}.bmp-welcome-card{align-items:flex-start;flex-direction:column}}
@media(max-width:620px){.bmp-page-wrap,.bmp-dashboard-shell{padding:24px 14px 40px}.bmp-page-head{align-items:flex-start;flex-direction:column}.bmp-page-head h1{font-size:30px}.bmp-stat-grid,.bmp-quick-grid{grid-template-columns:1fr}.bmp-result-grid{grid-template-columns:1fr}.bmp-result-card{padding:22px}.bmp-auth-card{padding:25px}.bmp-appbar-inner{padding:11px 14px}}

.bmp-alert-success{background:#eaf8ef;border:1px solid #bfe7cb;color:#176b3a}.bmp-auth-card-wide{width:min(470px,100%)}
.bmp-otp-modal-shell{margin:10px -5px 0;padding:2px;background:rgba(37,99,235,.05);border-radius:18px}
.bmp-otp-box{padding:24px 20px;text-align:center;background:#fff;border:1px solid #dbe5ff;border-radius:16px;box-shadow:0 12px 30px rgba(37,99,235,.08)}
.bmp-otp-box h3{margin:6px 0 5px;font-size:22px;color:var(--bmp-dark)}
.bmp-otp-box p{margin:0 0 18px;color:var(--bmp-muted);font-size:13px}
.bmp-otp-icon{width:44px;height:44px;margin:0 auto 8px;display:grid;place-items:center;border-radius:50%;background:#eaf8ef;color:#198754;font-weight:900;font-size:20px}
.bmp-otp-input{text-align:center!important;letter-spacing:8px!important;font-size:22px!important;font-weight:800!important;padding:15px!important}
.bmp-resend-form{text-align:center;margin-top:12px}
.bmp-link-btn{border:0;background:none;color:var(--bmp-blue);font-weight:800;cursor:pointer;padding:8px}
.bmp-alert-success{background:#eaf8ef;border:1px solid #bfe7cb;color:#176b3a}

.bmp-contact-anchor{scroll-margin-top:20px}.bmp-contact-us{margin:22px auto 0;max-width:1200px;padding:16px 18px;border:1px solid var(--bmp-border);border-radius:14px;background:#fff;display:flex;justify-content:space-between;align-items:center;gap:15px;box-shadow:0 8px 24px rgba(15,23,42,.04)}.bmp-contact-title strong,.bmp-contact-title span{display:block}.bmp-contact-title strong{color:var(--bmp-dark);font-size:14px}.bmp-contact-title span{color:var(--bmp-muted);font-size:12px;margin-top:3px}.bmp-contact-actions{display:flex;gap:8px;flex-wrap:wrap}.bmp-contact-actions a{padding:8px 10px;border-radius:8px;background:#f7f9fc;color:#334155!important;text-decoration:none!important;font-size:12px;font-weight:700}.bmp-contact-actions a:hover{background:#eff4ff;color:var(--bmp-blue)!important}.bmp-wp-auth-help{margin-top:16px;padding:12px 14px;border-radius:10px;background:#f7f9fc;color:#64748b;font-size:13px;text-align:center}@media(max-width:700px){.bmp-contact-us{margin:16px 14px 0;align-items:flex-start;flex-direction:column}.bmp-contact-actions{width:100%}.bmp-contact-actions a{flex:1;text-align:center}}

/* BMP 1.6 authentication error visibility */
.bmp-auth-page .bmp-alert-error{display:block!important;visibility:visible!important;opacity:1!important;border:1px solid #dc2626!important;background:#fff1f2!important;color:#b91c1c!important;padding:12px 14px!important;border-radius:10px!important;font-weight:700!important;margin:0 0 16px!important}
.bmp-auth-page .bmp-alert-success{display:block!important;visibility:visible!important;opacity:1!important}

/* Booking calendar status colors */
.flatpickr-calendar .bmp-calendar-green { background:#22c55e !important; color:#fff !important; border-radius:50%; }
.flatpickr-calendar .bmp-calendar-red { background:#ef4444 !important; color:#fff !important; border-radius:50%; }
.flatpickr-calendar .bmp-calendar-yellow { background:#facc15 !important; color:#713f12 !important; border-radius:50%; }
.flatpickr-calendar .bmp-calendar-past { background:#cbd5e1 !important; color:#64748b !important; border-radius:50%; opacity:.75; }
.flatpickr-calendar .flatpickr-day.bmp-calendar-red.flatpickr-disabled, .flatpickr-calendar .flatpickr-day.bmp-calendar-yellow.flatpickr-disabled { opacity:1 !important; }

/* BMP 2.8.0 customer booking ownership colors */
.flatpickr-calendar .bmp-calendar-blue { background:#3b82f6 !important; color:#fff !important; border-radius:50%; }
.flatpickr-calendar .bmp-calendar-orange { background:#f97316 !important; color:#fff !important; border-radius:50%; cursor:pointer !important; }
.flatpickr-calendar .bmp-calendar-blue.flatpickr-disabled { opacity:1 !important; }
.flatpickr-calendar .bmp-calendar-orange.flatpickr-disabled { opacity:1 !important; }

/* BMP 2.8.0 employee portal fallback styles */
.bmp-employee-login-wrap{min-height:560px;background:linear-gradient(135deg,#f7f9ff,#fff);display:grid;place-items:center;padding:40px 18px}
.bmp-employee-card{width:min(520px,100%);box-sizing:border-box;background:#fff;border:1px solid #e2e8f0;border-radius:22px;padding:30px;box-shadow:0 18px 50px rgba(15,23,42,.09)}
.bmp-employee-brand{display:flex;align-items:center;gap:10px;margin-bottom:18px}.bmp-employee-brand span{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:#2563eb;color:#fff;font-weight:900}.bmp-employee-brand small{display:block;color:#64748b}

/* Booking Master Pro 4.1 ULTRA visual layer — functionality unchanged */
body{background:linear-gradient(180deg,#f8fbff 0%,#f5f7fb 100%)}
.bmp-appbar{background:rgba(255,255,255,.94);backdrop-filter:blur(14px);box-shadow:0 8px 28px rgba(15,23,42,.06)}
.bmp-appbar-inner{max-width:1320px;padding-top:16px;padding-bottom:16px}.bmp-brand-mark{width:46px;height:46px;border-radius:14px;box-shadow:0 8px 20px rgba(37,99,235,.18)}
.bmp-nav a{border-color:#e1e8f2;background:#fff;border-radius:11px}.bmp-nav a:hover,.bmp-nav a.is-active{transform:translateY(-1px)}
.bmp-dashboard-shell,.bmp-page-wrap{max-width:1320px}.bmp-welcome-card{background:linear-gradient(135deg,#0f172a 0%,#1d4ed8 58%,#6d28d9 100%)!important;border:0!important;border-radius:24px!important;box-shadow:0 20px 50px rgba(15,23,42,.16)!important;color:#fff}.bmp-welcome-card h1,.bmp-welcome-card p{color:#fff}.bmp-welcome-card p{opacity:.82}.bmp-account-chip{background:rgba(255,255,255,.12)!important;color:#fff!important;border:1px solid rgba(255,255,255,.18)}.bmp-account-chip span{background:#fef3c7!important;color:#92400e!important}
.bmp-stat-grid{gap:16px}.bmp-stat-link-card{background:linear-gradient(180deg,#fff,#f8fbff)!important;border:1px solid #e2e8f0!important;border-radius:18px!important;box-shadow:0 9px 25px rgba(15,23,42,.055)!important;min-height:105px}.bmp-stat-link-card:hover{border-color:#cbdafe!important}.bmp-quick-grid{gap:16px}.bmp-quick-card{border-radius:18px!important;border:1px solid #e2e8f0!important;box-shadow:0 9px 25px rgba(15,23,42,.05)!important;transition:.18s}.bmp-quick-card:hover{transform:translateY(-3px);box-shadow:0 15px 34px rgba(15,23,42,.09)!important}
.bmp-card,.bmp-form-card,.bmp-guide-card{border-radius:20px!important;box-shadow:0 12px 34px rgba(15,23,42,.055)!important}.bmp-primary-btn{border-radius:12px!important;background:linear-gradient(135deg,#2563eb,#7c3aed)!important;box-shadow:0 10px 24px rgba(37,99,235,.22)!important}.bmp-outline-btn{border-radius:11px!important}.bmp-contact-us{border-radius:18px!important;background:linear-gradient(135deg,#eef4ff,#f5f3ff)!important;border-color:#dbe7ff!important;box-shadow:0 10px 28px rgba(37,99,235,.06)}
.bmp-section-head h2,.bmp-page-head h1{letter-spacing:-.02em}.bmp-status{border-radius:999px!important;font-weight:900!important}
@media(max-width:700px){.bmp-appbar-inner{align-items:flex-start;flex-direction:column}.bmp-nav{width:100%;overflow:auto;flex-wrap:nowrap}.bmp-nav a{white-space:nowrap}.bmp-welcome-card{padding:22px!important;border-radius:20px!important}}

/* v4.1.49 responsive colorful calendars */
.bmp-calendar-hint{display:block;margin:-2px 0 10px;color:#64748b;font-size:11px;line-height:1.5}.bmp-customer-booking-calendar{margin-top:10px;padding:12px;border:1px solid #e2e8f0;border-radius:18px;background:linear-gradient(180deg,#fff,#f8fbff);display:flex;justify-content:center;overflow:hidden}.bmp-customer-booking-calendar .flatpickr-calendar{position:relative!important;top:auto!important;left:auto!important;box-shadow:none!important;border:0!important;width:min(100%,390px)!important}.bmp-customer-booking-calendar .flatpickr-day{height:40px;line-height:40px;max-width:44px}.bmp-customer-booking-calendar .bmp-calendar-green{background:#22c55e!important;color:#fff!important;border-radius:50%!important}.bmp-customer-booking-calendar .bmp-calendar-red{background:#ef4444!important;color:#fff!important;border-radius:50%!important;opacity:1!important}.bmp-customer-booking-calendar .bmp-calendar-yellow{background:#facc15!important;color:#713f12!important;border-radius:50%!important;opacity:1!important;cursor:not-allowed!important}.bmp-customer-booking-calendar .bmp-calendar-blue{background:#3b82f6!important;color:#fff!important;border-radius:50%!important}.bmp-customer-booking-calendar .bmp-calendar-orange{background:#f97316!important;color:#fff!important;border-radius:50%!important;cursor:pointer!important}.bmp-customer-booking-calendar .bmp-calendar-past{background:#cbd5e1!important;color:#64748b!important;border-radius:50%!important;opacity:.75}.bmp-customer-booking-calendar .flatpickr-day.bmp-calendar-red.flatpickr-disabled,.bmp-customer-booking-calendar .flatpickr-day.bmp-calendar-yellow.flatpickr-disabled{opacity:1!important}.bmp-customer-calendar-card{margin:22px 0;padding:22px;border-radius:20px;background:linear-gradient(135deg,#f8fbff,#fff);border:1px solid #dbe7ff;box-shadow:0 12px 30px rgba(37,99,235,.06)}.bmp-customer-calendar-head{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;flex-wrap:wrap}.bmp-customer-calendar-head h2{margin:5px 0}.bmp-customer-calendar-head p{margin:0;color:#64748b;font-size:12px}.bmp-dashboard-calendar{margin-top:16px;padding:12px;border:1px solid #e2e8f0;border-radius:18px;background:#fff;display:flex;justify-content:center;overflow:hidden}.bmp-dashboard-calendar .flatpickr-calendar{position:relative!important;top:auto!important;left:auto!important;box-shadow:none!important;border:0!important;width:min(100%,390px)!important}.bmp-dashboard-calendar .flatpickr-day{height:40px;line-height:40px;max-width:44px}.bmp-dashboard-calendar .bmp-calendar-green{background:#22c55e!important;color:#fff!important;border-radius:50%!important}.bmp-dashboard-calendar .bmp-calendar-red{background:#ef4444!important;color:#fff!important;border-radius:50%!important;opacity:1!important}.bmp-dashboard-calendar .bmp-calendar-yellow{background:#facc15!important;color:#713f12!important;border-radius:50%!important;opacity:1!important}.bmp-dashboard-calendar .bmp-calendar-past{background:#cbd5e1!important;color:#64748b!important;border-radius:50%!important;opacity:.75}.bmp-dashboard-calendar .flatpickr-day.bmp-calendar-red.flatpickr-disabled,.bmp-dashboard-calendar .flatpickr-day.bmp-calendar-yellow.flatpickr-disabled{opacity:1!important}.bmp-customer-calendar-legend{display:flex;gap:12px;flex-wrap:wrap;margin-top:12px;font-size:11px;font-weight:800;color:#475569}.bmp-customer-calendar-legend i{display:inline-block;width:11px;height:11px;border-radius:50%;margin-right:5px}.bmp-customer-calendar-legend .g{background:#22c55e}.bmp-customer-calendar-legend .r{background:#ef4444}.bmp-customer-calendar-legend .y{background:#facc15}.bmp-customer-calendar-legend .gr{background:#cbd5e1}@media(max-width:620px){.bmp-customer-booking-calendar,.bmp-dashboard-calendar{padding:5px}.bmp-customer-booking-calendar .flatpickr-calendar,.bmp-dashboard-calendar .flatpickr-calendar{width:100%!important}.bmp-customer-booking-calendar .flatpickr-day,.bmp-dashboard-calendar .flatpickr-day{height:36px;line-height:36px;max-width:39px}.bmp-customer-calendar-head{align-items:flex-start}.bmp-customer-calendar-head .bmp-outline-btn{width:100%;box-sizing:border-box;text-align:center}}


/* v4.1.50 local customer booking calendar: no external CDN dependency */
.bmp-local-calendar{width:100%;background:linear-gradient(145deg,#ffffff,#f8fbff);border:1px solid #dbe4f0;border-radius:20px;padding:16px;box-shadow:0 12px 30px rgba(15,23,42,.08)}
.bmp-local-calendar-head{display:grid;grid-template-columns:42px 1fr 42px;align-items:center;gap:8px;margin-bottom:14px}.bmp-local-calendar-head strong{text-align:center;font-size:18px;color:#0f172a}.bmp-cal-nav{height:38px;border:1px solid #dbe4f0;border-radius:12px;background:#fff;color:#1d4ed8;font-size:25px;line-height:1;cursor:pointer}.bmp-cal-nav:disabled{opacity:.35;cursor:not-allowed}
.bmp-local-weekdays,.bmp-local-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}.bmp-local-weekdays{margin-bottom:7px}.bmp-local-weekdays span{text-align:center;font-size:11px;font-weight:800;color:#64748b;text-transform:uppercase}.bmp-cal-empty{min-height:42px}
.bmp-cal-day{min-height:42px;border:0;border-radius:12px;font-weight:800;font-size:14px;cursor:pointer;transition:transform .12s,filter .12s,box-shadow .12s}.bmp-cal-day:not(:disabled):hover{transform:translateY(-2px);filter:brightness(.96);box-shadow:0 5px 12px rgba(15,23,42,.14)}.bmp-cal-day:disabled{cursor:not-allowed}.bmp-cal-green{background:#22c55e;color:#fff}.bmp-cal-red{background:#ef4444;color:#fff}.bmp-cal-yellow{background:#facc15;color:#713f12}.bmp-cal-blue{background:#3b82f6;color:#fff}.bmp-cal-orange{background:#f97316;color:#fff}.bmp-cal-past{background:#cbd5e1;color:#64748b}.bmp-cal-day.is-today{outline:3px solid rgba(37,99,235,.25);outline-offset:2px}.bmp-cal-day.is-selected{box-shadow:0 0 0 3px #111827 inset}
.bmp-local-legend{display:flex;flex-wrap:wrap;gap:10px 16px;margin-top:15px;padding-top:13px;border-top:1px solid #e5e7eb}.bmp-local-legend span{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:700;color:#475569}.bmp-cal-dot{width:11px;height:11px;border-radius:50%;display:inline-block}.bmp-local-legend .bmp-cal-green{background:#22c55e}.bmp-local-legend .bmp-cal-red{background:#ef4444}.bmp-local-legend .bmp-cal-yellow{background:#facc15}.bmp-local-legend .bmp-cal-blue{background:#3b82f6}.bmp-local-legend .bmp-cal-orange{background:#f97316}.bmp-local-legend .bmp-cal-past{background:#cbd5e1}
@media(max-width:600px){.bmp-local-calendar{padding:10px;border-radius:16px}.bmp-local-weekdays,.bmp-local-grid{gap:4px}.bmp-cal-day{min-height:38px;border-radius:9px;font-size:13px}.bmp-cal-empty{min-height:38px}.bmp-local-calendar-head strong{font-size:16px}.bmp-local-legend{gap:8px 11px}}

/* 4.1.60 Ultra Pro Max customer portal glass navigation */
.bmp-appbar{background:transparent!important;border-bottom:0!important;box-shadow:none!important;padding:12px 14px 0!important;backdrop-filter:none!important}
.bmp-appbar-inner{max-width:1320px!important;margin:0 auto!important;padding:12px 16px!important;border:1px solid rgba(255,255,255,.72)!important;border-radius:20px!important;background:rgba(255,255,255,.68)!important;backdrop-filter:blur(18px) saturate(150%)!important;-webkit-backdrop-filter:blur(18px) saturate(150%)!important;box-shadow:0 16px 40px rgba(15,23,42,.08)!important}
.bmp-brand{min-width:180px!important}
.bmp-nav{flex:1!important;justify-content:flex-end!important;gap:7px!important;flex-wrap:nowrap!important;overflow:visible!important}
.bmp-nav a{background:rgba(255,255,255,.58)!important;border:1px solid rgba(203,213,225,.75)!important;border-radius:11px!important;box-shadow:0 5px 14px rgba(15,23,42,.035)!important;white-space:nowrap!important}
.bmp-nav a:hover,.bmp-nav a.is-active{background:rgba(238,244,255,.92)!important;border-color:#b9cdfc!important;box-shadow:0 7px 18px rgba(37,99,235,.10)!important}
.bmp-nav .bmp-nav-logout{background:rgba(255,245,245,.78)!important}
.bmp-page-head{padding:18px 20px!important;border:1px solid rgba(203,213,225,.68)!important;border-radius:18px!important;background:rgba(255,255,255,.62)!important;backdrop-filter:blur(16px) saturate(145%)!important;-webkit-backdrop-filter:blur(16px) saturate(145%)!important;box-shadow:0 14px 35px rgba(15,23,42,.055)!important}
.bmp-page-head h1{margin-top:3px!important}
@media(max-width:980px){.bmp-appbar-inner{align-items:center!important;flex-direction:column!important}.bmp-brand{width:100%!important}.bmp-nav{width:100%!important;justify-content:flex-start!important;overflow-x:auto!important;flex-wrap:nowrap!important;padding-bottom:2px!important}.bmp-page-head{align-items:flex-start!important}}
@media(max-width:620px){.bmp-appbar{padding:8px 8px 0!important}.bmp-appbar-inner{padding:10px!important;border-radius:16px!important}.bmp-brand{min-width:0!important}.bmp-page-head{padding:15px!important;border-radius:15px!important}}

/* v4.1.67 CUSTOMER PANEL compact top spacing */
.bmp-customer-glassbar{margin-bottom:0!important}
.bmp-customer-glassbar + .bmp-dashboard-shell{padding-top:8px!important}
@media(max-width:620px){.bmp-customer-glassbar + .bmp-dashboard-shell{padding-top:4px!important}}


/* v4.1.68 — Customer Panel: sticky compact navigation + remove top gap */
.bmp-customer-glassbar{
    position:sticky!important;
    top:0!important;
    z-index:99999!important;
    margin-bottom:0!important;
}
.bmp-customer-glassbar + .bmp-dashboard-shell{
    margin-top:-68px!important;
    padding-top:8px!important;
    position:relative!important;
    z-index:1!important;
}
body.admin-bar .bmp-customer-glassbar{top:32px!important}
body.admin-bar .bmp-customer-glassbar + .bmp-dashboard-shell{margin-top:-68px!important}

@media(max-width:782px){
    .bmp-customer-glassbar{top:0!important}
    body.admin-bar .bmp-customer-glassbar{top:46px!important}
    .bmp-customer-glassbar + .bmp-dashboard-shell{margin-top:-34px!important;padding-top:6px!important}
}
@media(max-width:620px){
    .bmp-customer-glassbar + .bmp-dashboard-shell{margin-top:-28px!important;padding-top:4px!important}
}

/* v4.2.30: customer booking calendar opens only when Booking Date & Time is clicked. */
#bmp-customer-booking-calendar[hidden]{display:none!important;}
.bmp-customer-booking-calendar.is-open{display:block;position:relative;z-index:20;margin-top:10px;padding:10px;border:1px solid #c7d2fe;border-radius:18px;background:#fff;box-shadow:0 20px 50px rgba(30,41,59,.18);}
.bmp-booking-time-wrap{margin-top:12px;padding:12px;border-radius:14px;background:linear-gradient(135deg,#eff6ff,#f5f3ff);border:1px solid #dbeafe;display:flex;align-items:center;justify-content:space-between;gap:12px;}
.bmp-booking-time-wrap label{font-weight:800;color:#1e3a8a;}
.bmp-booking-time-select{min-width:150px;padding:10px 12px;border:1px solid #c7d2fe;border-radius:10px;background:#fff;font-weight:700;}
.bmp-booking-calendar-done{width:100%;margin-top:10px;border:0;border-radius:11px;padding:11px 14px;background:linear-gradient(135deg,#2563eb,#7c3aed);color:#fff;font-weight:800;cursor:pointer;}


/* v4.2.34 — compact customer booking calendar */
.bmp-customer-booking-calendar.is-open{max-width:520px;margin:10px auto!important;padding:8px!important;border-radius:16px!important}
.bmp-customer-booking-calendar .bmp-local-calendar{max-width:390px!important;width:100%!important;box-sizing:border-box!important;padding:10px!important;border-radius:14px!important;box-shadow:none!important;border:0!important}.bmp-customer-booking-calendar .bmp-local-weekdays,.bmp-customer-booking-calendar .bmp-local-grid{gap:5px!important}.bmp-customer-booking-calendar .bmp-cal-empty{min-height:34px!important}.bmp-customer-booking-calendar .bmp-cal-day{min-height:34px!important;border-radius:9px!important;font-size:12px!important}.bmp-customer-booking-calendar .bmp-cal-nav{height:32px!important;border-radius:9px!important;background:linear-gradient(135deg,#2563eb,#7c3aed)!important;color:#fff!important;font-size:21px!important}.bmp-customer-booking-calendar .bmp-booking-time-wrap{margin-top:9px!important;padding:9px!important;border-radius:11px!important}.bmp-customer-booking-calendar .bmp-booking-time-select{min-width:130px!important;padding:8px 10px!important;border-radius:9px!important;font-size:12px!important}
.bmp-customer-booking-calendar .bmp-local-calendar-head{grid-template-columns:34px 1fr 34px!important;gap:6px!important;margin-bottom:9px!important}
.bmp-customer-booking-calendar .bmp-local-calendar-head strong{font-size:16px!important}
.bmp-customer-booking-calendar .bmp-cal-nav{height:32px!important;font-size:21px!important;border-radius:9px!important}
.bmp-customer-booking-calendar .bmp-local-weekdays,.bmp-customer-booking-calendar .bmp-local-grid{gap:5px!important}
.bmp-customer-booking-calendar .bmp-cal-empty,.bmp-customer-booking-calendar .bmp-cal-day{min-height:34px!important}
.bmp-customer-booking-calendar .bmp-cal-day{font-size:12px!important;border-radius:9px!important}
.bmp-customer-booking-calendar .bmp-local-legend{gap:7px 11px!important;margin-top:10px!important;padding-top:9px!important}
.bmp-customer-booking-calendar .bmp-local-legend span{font-size:10px!important}
.bmp-customer-booking-calendar .bmp-booking-time-wrap{margin-top:9px!important;padding:9px!important;border-radius:11px!important}
.bmp-customer-booking-calendar .bmp-booking-time-select{min-width:130px!important;padding:8px 10px!important;font-size:12px!important}
.bmp-customer-booking-calendar .bmp-booking-calendar-done{margin-top:9px!important;padding:9px 12px!important;border-radius:10px!important}
@media(max-width:600px){
 .bmp-customer-booking-calendar.is-open{max-width:100%!important;padding:5px!important}
 .bmp-customer-booking-calendar .bmp-local-calendar{padding:8px!important}
 .bmp-customer-booking-calendar .bmp-local-weekdays,.bmp-customer-booking-calendar .bmp-local-grid{gap:3px!important}
 .bmp-customer-booking-calendar .bmp-cal-empty,.bmp-customer-booking-calendar .bmp-cal-day{min-height:32px!important}
}

/* v4.4.0 Professional customer calendar */
.bmp-customer-calendar-card{border:1px solid #dbeafe!important;border-radius:26px!important;overflow:hidden;background:linear-gradient(180deg,#fff,#f8fbff)!important;box-shadow:0 18px 45px rgba(15,23,42,.08)!important}
.bmp-customer-calendar-head{padding:22px 22px 14px;background:linear-gradient(135deg,#eff6ff,#fff)!important;border-bottom:1px solid #e2e8f0}
.bmp-customer-calendar-head h2{font-size:28px!important;letter-spacing:-.02em}.bmp-customer-calendar-head p{max-width:620px}
.bmp-dashboard-calendar{padding:20px!important;background:#fff;border-radius:22px;margin:14px!important;box-shadow:inset 0 0 0 1px #e2e8f0}
.bmp-dashboard-calendar .flatpickr-calendar{width:100%!important;box-shadow:none!important;background:transparent!important}.bmp-dashboard-calendar .flatpickr-months{background:#f8fafc;border-radius:18px;margin-bottom:10px;padding:4px 8px}.bmp-dashboard-calendar .flatpickr-current-month{font-weight:800!important;color:#0f172a!important}.bmp-dashboard-calendar .flatpickr-weekday{font-weight:800!important;color:#64748b!important}.bmp-dashboard-calendar .flatpickr-day{max-width:none!important;height:46px!important;line-height:46px!important;margin:3px 0;border-radius:14px!important;font-weight:800!important;border:1px solid #e2e8f0!important}.bmp-dashboard-calendar .bmp-calendar-green{background:#ecfdf5!important;color:#047857!important;border-color:#a7f3d0!important}.bmp-dashboard-calendar .bmp-calendar-red{background:#fff1f2!important;color:#be123c!important;border-color:#fecdd3!important}.bmp-dashboard-calendar .bmp-calendar-yellow{background:#fffbeb!important;color:#a16207!important;border-color:#fde68a!important}.bmp-dashboard-calendar .bmp-calendar-past{background:#f1f5f9!important;color:#94a3b8!important;border-color:#e2e8f0!important}.bmp-customer-calendar-legend{padding:0 22px 20px!important;gap:16px!important}.bmp-customer-calendar-legend span{display:inline-flex;align-items:center;padding:7px 10px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px}.bmp-live-new-tag{display:inline-block;margin-top:6px;padding:4px 9px;border-radius:999px;background:#dcfce7;color:#166534;font-size:10px;letter-spacing:.08em}
@media(max-width:620px){.bmp-customer-calendar-head{padding:18px}.bmp-customer-calendar-head h2{font-size:24px!important}.bmp-dashboard-calendar{margin:8px!important;padding:10px!important}.bmp-dashboard-calendar .flatpickr-day{height:40px!important;line-height:40px!important;border-radius:12px!important}.bmp-customer-calendar-legend{padding:0 14px 16px!important;gap:8px!important}.bmp-customer-calendar-legend span{font-size:10px;padding:6px 8px}}
