:root{
  --bap-container-bg:#f5f3f2;
  --bap-heading-color:#14213c;
  --bap-label-color:#161616;
  --bap-accent-color:#b62418;
  --bap-button-bg:#f0d1cf;
  --bap-button-text:#8c1515;
  --bap-field-bg:#f7f5f4;
  --bap-field-text:#363130;
  --bap-placeholder-color:#b4abab;
  --bap-field-border:#d8d3d0;
  --bap-focus-border:#cba6a4;
  --bap-divider-color:#d6d1cf;
  --bap-title-font:Georgia,"Times New Roman",serif;
  --bap-body-font:inherit;
  --bap-title-weight:400;
  --bap-label-weight:600;
  --bap-button-radius:999px;
  --bap-field-radius:999px;
  --bap-container-radius:0px;
}
.bap-wrap{max-width:920px;margin:0 auto;padding:34px;background:var(--bap-container-bg);box-sizing:border-box;border-radius:var(--bap-container-radius);font-family:var(--bap-body-font)}
.bap-kicker{color:var(--bap-accent-color);font-size:14px;letter-spacing:1.6px;font-weight:700;text-transform:uppercase;margin-bottom:24px}
.bap-title{margin:0 0 28px;color:var(--bap-heading-color);font-size:clamp(36px,5vw,58px);line-height:1.08;font-weight:var(--bap-title-weight);max-width:620px;font-family:var(--bap-title-font)}
.bap-divider{height:1px;background:var(--bap-divider-color);margin-bottom:28px}
.bap-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px}
.bap-field{display:flex;flex-direction:column}.bap-full{margin-top:12px}
.bap-field label{color:var(--bap-label-color);font-size:16px;font-weight:var(--bap-label-weight);margin-bottom:10px}
.bap-field input,.bap-field select,.bap-field textarea{width:100%;border:1px solid var(--bap-field-border);background:var(--bap-field-bg);border-radius:var(--bap-field-radius);padding:15px 18px;min-height:56px;box-sizing:border-box;font-size:16px;color:var(--bap-field-text);outline:none;box-shadow:none;font-family:inherit}
.bap-field textarea{min-height:120px;resize:vertical;padding-top:16px}
.bap-field input:focus,.bap-field select:focus,.bap-field textarea:focus{border-color:var(--bap-focus-border);background:#fff}
.bap-field input::placeholder,.bap-field textarea::placeholder{color:var(--bap-placeholder-color)}
.bap-status{margin:14px 0 6px;font-size:15px;font-weight:500}.bap-status.success{color:#0b7a35}.bap-status.error{color:#b91c1c}.bap-status.info{color:#555}
.bap-submit{display:inline-flex;align-items:center;justify-content:center;margin-top:10px;background:var(--bap-button-bg);color:var(--bap-button-text);border:none;border-radius:var(--bap-button-radius);padding:18px 30px;font-size:18px;font-weight:700;cursor:pointer;min-width:172px;transition:.2s ease;font-family:inherit}
.bap-submit:hover{transform:translateY(-1px);opacity:.95}.bap-submit:disabled{opacity:.6;cursor:not-allowed}
.bap-whatsapp{margin:8px 0 4px}.bap-wa-btn{display:inline-flex;padding:14px 22px;border-radius:999px;background:#25D366;color:#fff;text-decoration:none;font-weight:700}
.ui-datepicker{z-index:99999 !important}.ui-datepicker .ui-state-disabled span{opacity:.4}.bap-off-day a,.bap-off-day span{text-decoration:line-through !important;opacity:.35 !important}
@media (max-width:767px){.bap-wrap{padding:22px}.bap-grid{grid-template-columns:1fr}.bap-title{max-width:100%}}


.bap-title-sm{font-size:clamp(30px,4vw,46px);max-width:none;margin-bottom:14px;letter-spacing:-0.02em}
.bap-doctor-auth{max-width:720px;margin:56px auto;padding:0 20px}
.bap-doctor-card{position:relative;background:linear-gradient(180deg,#ffffff 0%,#fbfaf9 100%);border-radius:28px;padding:36px;border:1px solid rgba(216,211,208,.9);box-shadow:0 20px 60px rgba(20,33,60,.08),0 8px 24px rgba(20,33,60,.05);overflow:hidden}
.bap-doctor-card:before{content:"";position:absolute;inset:0 0 auto 0;height:5px;background:linear-gradient(90deg,var(--bap-accent-color,#b62418),#e7b8b3 70%,transparent)}
.bap-doctor-card:after{content:"";position:absolute;right:-80px;top:-80px;width:220px;height:220px;border-radius:999px;background:radial-gradient(circle at center,rgba(182,36,24,.09),rgba(182,36,24,0));pointer-events:none}
.bap-doctor-lead{margin:0 0 18px;color:#605a57;line-height:1.7;font-size:15px;max-width:60ch}
.bap-doctor-form #loginform{display:grid;gap:18px}
.bap-doctor-form p{margin:0}
.bap-doctor-form label{display:block;font-weight:700;margin-bottom:8px;color:var(--bap-label-color,#161616);font-size:14px;letter-spacing:.01em}
.bap-doctor-form input[type="text"],.bap-doctor-form input[type="password"]{width:100%;border:1px solid var(--bap-field-border);background:#fff;border-radius:18px;padding:16px 18px;min-height:58px;box-sizing:border-box;font-size:16px;color:var(--bap-field-text);box-shadow:inset 0 1px 2px rgba(0,0,0,.02)}
.bap-doctor-form input[type="text"]:focus,.bap-doctor-form input[type="password"]:focus{border-color:var(--bap-focus-border);box-shadow:0 0 0 4px rgba(203,166,164,.18)}
.bap-doctor-form .login-remember{display:flex;align-items:center;gap:8px;margin:2px 0 4px;color:#5f5a58;font-size:14px}
.bap-doctor-form .button-primary,.bap-doctor-form input[type="submit"]{display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--bap-button-bg),#f8e7e5);color:var(--bap-button-text);border:1px solid rgba(0,0,0,.04);border-radius:16px;padding:16px 24px;font-size:16px;font-weight:800;cursor:pointer;min-height:56px;box-shadow:0 10px 25px rgba(182,36,24,.12)}
.bap-doctor-dashboard{max-width:1280px;margin:36px auto;padding:0 20px 48px}
.bap-doctor-topbar{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:26px;background:linear-gradient(135deg,#14213c 0%,#1f3158 55%,#29406b 100%);padding:28px;border-radius:28px;color:#fff;box-shadow:0 20px 60px rgba(20,33,60,.18)}
.bap-doctor-topbar .bap-kicker{color:#d6dde9;margin-bottom:12px}
.bap-doctor-topbar .bap-title{color:#fff;margin-bottom:10px}
.bap-doctor-topbar .bap-doctor-lead{color:#dfe7f4;margin-bottom:0;max-width:65ch}
.bap-doctor-logout,.bap-doctor-reset{display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;border:1px solid rgba(255,255,255,.14);border-radius:14px;text-decoration:none;color:#14213c;background:#fff;font-weight:700;box-shadow:0 8px 22px rgba(0,0,0,.08)}
.bap-doctor-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:-8px 0 24px}
.bap-doctor-stat{position:relative;background:linear-gradient(180deg,#ffffff 0%,#fbfaf9 100%);border:1px solid rgba(216,211,208,.9);border-radius:24px;padding:22px 22px 20px;box-shadow:0 14px 36px rgba(20,33,60,.06)}
.bap-doctor-stat:before{content:"";position:absolute;left:20px;top:0;width:44px;height:4px;border-radius:999px;background:var(--bap-accent-color,#b62418)}
.bap-doctor-stat span{display:block;color:#6f6764;font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;margin-bottom:10px}
.bap-doctor-stat strong{font-size:34px;line-height:1;color:var(--bap-heading-color,#14213c)}
.bap-doctor-filters{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:14px;align-items:end;background:linear-gradient(180deg,#ffffff 0%,#fbfaf9 100%);border:1px solid rgba(216,211,208,.9);border-radius:24px;padding:20px;box-shadow:0 12px 30px rgba(20,33,60,.05);margin-bottom:22px}
.bap-doctor-filter-actions{display:flex;gap:10px;align-items:center}.bap-doctor-list{display:grid;gap:18px}
.bap-doctor-booking{position:relative;background:linear-gradient(180deg,#ffffff 0%,#fcfbfa 100%);border:1px solid rgba(216,211,208,.9);border-radius:24px;padding:22px;box-shadow:0 16px 40px rgba(20,33,60,.06)}
.bap-doctor-booking:before{content:"";position:absolute;left:0;top:18px;bottom:18px;width:4px;border-radius:999px;background:#e9e3e0}
.bap-doctor-booking-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:14px;padding-left:8px}.bap-doctor-booking-head h3{margin:0 0 6px;font-size:24px;color:var(--bap-heading-color,#14213c);letter-spacing:-.02em}
.bap-doctor-meta{color:#6b6461;font-size:15px}.bap-doctor-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:14px}.bap-doctor-grid div{background:#f8f7f6;border:1px solid #efebe8;border-radius:18px;padding:14px 15px}.bap-doctor-grid strong{display:block;font-size:12px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:#7b7471;margin-bottom:8px}.bap-doctor-grid span{display:block;color:#2d2927;word-break:break-word;font-weight:600}
.bap-doctor-note{padding:14px 16px;border-radius:16px;background:#fff8ec;border:1px solid #f4dfb0;margin-bottom:14px}
.bap-doctor-actions{display:flex;flex-wrap:wrap;gap:10px;padding-left:8px}.bap-doctor-actions form{margin:0}.bap-status-btn{border:1px solid #e5e1de;background:#fff;border-radius:14px;padding:11px 16px;font-weight:700;cursor:pointer;transition:.18s ease;box-shadow:0 3px 10px rgba(20,33,60,.03)}.bap-status-btn:hover{transform:translateY(-1px)}.bap-status-btn.is-active{background:linear-gradient(135deg,var(--bap-button-bg,#f0d1cf),#f8e7e5);color:var(--bap-button-text,#8c1515);border-color:transparent;box-shadow:0 10px 22px rgba(182,36,24,.12)}
.bap-pill{display:inline-flex;align-items:center;justify-content:center;padding:9px 13px;border-radius:999px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;background:#eee;color:#333}.bap-pill.bap-approved{background:#dcfce7;color:#166534}.bap-pill.bap-pending{background:#fef3c7;color:#92400e}.bap-pill.bap-cancelled{background:#fee2e2;color:#b91c1c}
.bap-pill.bap-no_show{background:#ede9fe;color:#5b21b6}
.bap-empty-state{background:linear-gradient(180deg,#ffffff 0%,#fbfaf9 100%);border:1px dashed #d8d3d0;border-radius:24px;padding:32px;text-align:center;color:#6b6461;box-shadow:0 10px 26px rgba(20,33,60,.04)}
@media (max-width:991px){.bap-doctor-stats,.bap-doctor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bap-doctor-filters{grid-template-columns:1fr 1fr}.bap-doctor-filter-actions{grid-column:1/-1}}
@media (max-width:767px){.bap-doctor-auth{margin:28px auto}.bap-doctor-card{padding:24px;border-radius:22px}.bap-doctor-dashboard{padding:0 14px 34px}.bap-doctor-topbar{flex-direction:column;padding:22px;border-radius:22px}.bap-doctor-stats,.bap-doctor-grid,.bap-doctor-filters{grid-template-columns:1fr}.bap-doctor-filter-actions{flex-direction:column;align-items:stretch}.bap-doctor-filter-actions .bap-submit,.bap-doctor-reset,.bap-doctor-logout{width:100%}.bap-doctor-booking{padding:18px}.bap-doctor-booking:before{display:none}.bap-doctor-booking-head{flex-direction:column;padding-left:0}.bap-doctor-actions{padding-left:0}}
.bap-doctor-live{position:relative}
.bap-doctor-live-indicator{display:inline-flex;align-items:center;gap:8px;margin:0 0 14px 4px;color:#5f5a58;font-size:13px;font-weight:700;letter-spacing:.02em}
.bap-live-dot{width:10px;height:10px;border-radius:999px;background:#16a34a;box-shadow:0 0 0 0 rgba(22,163,74,.45);animation:bapPulse 1.8s infinite}
@keyframes bapPulse{0%{box-shadow:0 0 0 0 rgba(22,163,74,.45)}70%{box-shadow:0 0 0 10px rgba(22,163,74,0)}100%{box-shadow:0 0 0 0 rgba(22,163,74,0)}}
.bap-doctor-toast{position:sticky;top:18px;z-index:20;opacity:0;transform:translateY(-8px);pointer-events:none;transition:.2s ease;margin-bottom:10px;padding:12px 14px;border-radius:14px;font-weight:700;box-shadow:0 10px 28px rgba(20,33,60,.08)}
.bap-doctor-toast.is-visible{opacity:1;transform:translateY(0)}
.bap-doctor-toast.success{background:#dcfce7;color:#166534;border:1px solid #bbf7d0}
.bap-doctor-toast.error{background:#fee2e2;color:#b91c1c;border:1px solid #fecaca}
.bap-doctor-toast.info{background:#e0f2fe;color:#075985;border:1px solid #bae6fd}
.bap-status-btn.is-loading{opacity:.7;cursor:wait}
.bap-status-btn.is-loading:after{content:'...';margin-left:6px}


/* Staff dashboard SaaS cards */
.bap-saas-topbar{align-items:flex-start;gap:20px;flex-wrap:wrap}
.bap-topbar-actions{display:flex;gap:10px;flex-wrap:wrap}
.bap-saas-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-bottom:22px}
.bap-doctor-stat{background:#fff;border:1px solid #ece7e4;border-radius:18px;padding:18px;box-shadow:0 10px 30px rgba(20,33,60,.05)}
.bap-doctor-stat span{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#7a716e;margin-bottom:8px}
.bap-doctor-stat strong{display:block;font-size:28px;line-height:1.1;color:#14213c}
.bap-doctor-stat small{display:block;margin-top:8px;color:#7a716e}
.bap-stat-primary{background:linear-gradient(135deg,#14213c,#23395d);border-color:#14213c}
.bap-stat-primary span,.bap-stat-primary strong,.bap-stat-primary small{color:#fff}
.bap-doctor-head-side{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.bap-price-pill{display:inline-flex;align-items:center;justify-content:center;padding:8px 12px;border-radius:999px;background:#f0f4ff;color:#14213c;font-weight:700;font-size:12px}
.bap-saas-filters{background:#fff;border:1px solid #ece7e4;border-radius:18px;padding:16px;box-shadow:0 10px 30px rgba(20,33,60,.04);margin-bottom:18px}
.bap-doctor-booking{background:#fff;border:1px solid #ece7e4;border-radius:20px;padding:18px;box-shadow:0 10px 28px rgba(20,33,60,.05);margin-bottom:14px}
.bap-doctor-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.bap-status-btn{border:1px solid #e2dbd7;background:#fff;border-radius:999px;padding:10px 14px;cursor:pointer;font-weight:600}
.bap-status-btn.is-active{background:#14213c;color:#fff;border-color:#14213c}
.bap-pill.bap-archived{background:#e6f7ee;color:#0b7a43}
@media (max-width: 782px){.bap-doctor-head-side{justify-content:flex-start}}

/* SaaS staff dashboard revamp */
.bap-staff-dashboard,.bap-staff-dashboard .bap-doctor-live,.bap-staff-dashboard .bap-doctor-content-wrap{width:100%}
.bap-staff-shell{display:grid;grid-template-columns:280px minmax(0,1fr);gap:24px;align-items:start;max-width:100%;padding:24px 12px 40px}
.bap-staff-sidebar{position:sticky;top:20px;background:linear-gradient(180deg,#14213c 0%,#1d2e52 100%);border-radius:28px;padding:24px;color:#fff;box-shadow:0 22px 50px rgba(20,33,60,.18)}
.bap-staff-brand-kicker{font-size:12px;text-transform:uppercase;letter-spacing:.14em;color:#d8e1f0;margin-bottom:10px}.bap-staff-brand h2{color:#fff;margin:0 0 10px}.bap-staff-brand p{color:#dce5f4;margin:0 0 18px;line-height:1.6}
.bap-staff-nav{display:grid;gap:10px;margin:18px 0 20px}.bap-staff-nav-link{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:14px 16px;border-radius:18px;background:rgba(255,255,255,.06);color:#fff;text-decoration:none;border:1px solid rgba(255,255,255,.08)}.bap-staff-nav-link strong{font-size:13px;color:#f7d9d4}.bap-staff-nav-link.is-active{background:#fff;color:#14213c;border-color:#fff;box-shadow:0 12px 28px rgba(0,0,0,.12)}.bap-staff-nav-link.is-active strong{color:#b62418}
.bap-staff-logout{display:inline-flex;justify-content:center;align-items:center;padding:12px 16px;border-radius:16px;background:#fff;color:#14213c;font-weight:700;text-decoration:none;width:100%}
.bap-staff-main{min-width:0}.bap-staff-topbar{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;background:#fff;border:1px solid #ebe5e2;border-radius:28px;padding:24px 26px;box-shadow:0 14px 34px rgba(20,33,60,.05);margin-bottom:18px}
.bap-staff-filterbar{display:grid;grid-template-columns:2fr 1fr 1fr 1fr auto;gap:14px;align-items:end;background:#fff;border:1px solid #ebe5e2;border-radius:24px;padding:18px;box-shadow:0 10px 28px rgba(20,33,60,.04);margin-bottom:18px}.bap-staff-filter-actions{display:flex;gap:10px;align-items:center}
.bap-staff-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;margin-bottom:18px}.bap-staff-kpi{background:#fff;border:1px solid #ebe5e2;border-radius:22px;padding:18px;box-shadow:0 12px 28px rgba(20,33,60,.04)}.bap-staff-kpi span{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#7b7471;margin-bottom:8px}.bap-staff-kpi strong{display:block;font-size:30px;line-height:1.05;color:#14213c}.bap-staff-kpi small{display:block;color:#7b7471;margin-top:8px}.bap-staff-kpi.is-accent{background:linear-gradient(135deg,#14213c,#29406b);border-color:#14213c}.bap-staff-kpi.is-accent span,.bap-staff-kpi.is-accent strong,.bap-staff-kpi.is-accent small{color:#fff}
.bap-staff-grid-2{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:18px}.bap-staff-panel{background:#fff;border:1px solid #ebe5e2;border-radius:26px;padding:18px;box-shadow:0 12px 28px rgba(20,33,60,.04);min-width:0}.bap-staff-panel-head{margin-bottom:12px}.bap-staff-panel-head h3{margin:0 0 6px;color:#14213c}.bap-staff-panel-head p{margin:0;color:#756d6a}
.bap-staff-table-card{background:#fff;border:1px solid #ebe5e2;border-radius:24px;overflow:hidden}.bap-staff-table-scroll{overflow:auto}.bap-staff-table{width:100%;border-collapse:separate;border-spacing:0;min-width:980px}.bap-staff-table th,.bap-staff-table td{padding:14px 16px;border-bottom:1px solid #f0ece9;text-align:left;vertical-align:top}.bap-staff-table th{position:sticky;top:0;background:#fcfaf9;z-index:2;font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#7b7471}.bap-staff-table td strong{color:#14213c}.bap-staff-subnote,.bap-staff-muted{font-size:12px;color:#7b7471;margin-top:4px}.bap-staff-empty{text-align:center;color:#7b7471;padding:28px !important}.bap-staff-actions-inline{display:flex;flex-wrap:wrap;gap:8px;min-width:240px}.bap-staff-compact-table{min-width:0}.bap-staff-compact-table th,.bap-staff-compact-table td{padding:12px 14px}
.bap-doctor-toast{position:sticky;top:10px;z-index:30}
@media (max-width:1200px){.bap-staff-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.bap-staff-grid-2{grid-template-columns:1fr}.bap-staff-filterbar{grid-template-columns:1.4fr 1fr 1fr 1fr}.bap-staff-filter-actions{grid-column:1/-1}}
@media (max-width:900px){.bap-staff-shell{grid-template-columns:1fr}.bap-staff-sidebar{position:static}.bap-staff-topbar{flex-direction:column}.bap-staff-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.bap-staff-filterbar{grid-template-columns:1fr 1fr}.bap-staff-filter-actions{grid-column:1/-1}}
@media (max-width:640px){.bap-staff-kpis{grid-template-columns:1fr}.bap-staff-filterbar{grid-template-columns:1fr}.bap-staff-shell{padding:14px 0 28px}.bap-staff-topbar,.bap-staff-sidebar,.bap-staff-panel,.bap-staff-table-card{border-radius:20px}}

/* Staff dashboard refinements */
.bap-staff-kpis-dashboard{grid-template-columns:repeat(5,minmax(0,1fr))}
.bap-client-kpis{grid-template-columns:repeat(4,minmax(0,1fr)) !important}
.bap-client-filterbar{grid-template-columns:minmax(0,1fr) auto !important}
.bap-client-table{min-width:1040px}
.bap-mobile-appointment-bar,.bap-mobile-bottom-bar{display:none}
.bap-staff-panel-table-main{padding:18px}
.bap-staff-settings-form .bap-panel{margin-bottom:18px}
.bap-staff-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.bap-staff-settings-grid-wide{grid-template-columns:1fr;gap:18px}
.bap-staff-settings-grid .bap-panel{min-width:0}
.bap-staff-settings-form .bap-save-bar{margin-top:18px}
.bap-staff-sidebar{min-width:0}
.bap-staff-main>.bap-status{margin-bottom:16px}
.bap-staff-topbar{padding:22px 24px}
.bap-staff-nav-link{min-width:0}
.bap-staff-nav-link span,.bap-staff-nav-link strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bap-staff-table-card{min-width:0}
@media (max-width:1200px){.bap-staff-kpis-dashboard{grid-template-columns:repeat(2,minmax(0,1fr))}.bap-staff-settings-grid{grid-template-columns:1fr}}
@media (max-width:900px){.bap-staff-shell{gap:16px;padding:16px 0 30px}.bap-staff-sidebar{padding:18px}.bap-staff-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.bap-staff-nav-link{padding:12px}.bap-staff-topbar{padding:18px 18px}.bap-staff-filterbar{grid-template-columns:1fr}.bap-staff-kpis-dashboard{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.bap-staff-nav{grid-template-columns:1fr}.bap-staff-kpis-dashboard{grid-template-columns:1fr}.bap-staff-table{min-width:860px}.bap-staff-settings-grid{grid-template-columns:1fr}.bap-staff-sidebar,.bap-staff-topbar,.bap-panel,.bap-staff-table-card{border-radius:18px}}


/* Responsive polish for staff dashboard */
.bap-staff-shell{align-items:start}
.bap-staff-dashboard{max-width:100%}
.bap-staff-main,.bap-staff-sidebar,.bap-staff-panel,.bap-staff-table-card,.bap-staff-topbar,.bap-staff-filterbar{box-sizing:border-box}
.bap-staff-table-scroll{-webkit-overflow-scrolling:touch}
.bap-staff-filterbar .bap-field,.bap-staff-filterbar .bap-field input,.bap-staff-filterbar .bap-field select{min-width:0}
.bap-staff-settings-form input[type="text"],
.bap-staff-settings-form input[type="email"],
.bap-staff-settings-form input[type="number"],
.bap-staff-settings-form input[type="time"],
.bap-staff-settings-form input[type="url"],
.bap-staff-settings-form textarea,
.bap-staff-settings-form select{width:100%;max-width:100%}
@media (max-width:1024px){
  .bap-staff-shell{grid-template-columns:1fr;gap:16px}
  .bap-staff-sidebar{position:static;padding:18px}
  .bap-staff-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .bap-staff-topbar{padding:18px;gap:12px;flex-direction:column;align-items:flex-start}
  .bap-staff-filterbar{grid-template-columns:1fr 1fr;gap:12px}
  .bap-staff-filter-actions{grid-column:1/-1;justify-content:flex-start;flex-wrap:wrap}
  .bap-staff-kpis,.bap-staff-kpis-dashboard,.bap-staff-kpis-revenue{grid-template-columns:repeat(2,minmax(0,1fr))}
  .bap-staff-grid-2{grid-template-columns:1fr}
}
@media (max-width:767px){
  .bap-staff-shell{padding:12px 0 24px}
  .bap-staff-sidebar,.bap-staff-topbar,.bap-staff-panel,.bap-staff-table-card{border-radius:18px}
  .bap-staff-brand p{font-size:14px}
  .bap-staff-nav{grid-template-columns:1fr}
  .bap-staff-nav-link{padding:12px 14px}
  .bap-staff-filterbar{grid-template-columns:1fr}
  .bap-staff-kpis,.bap-staff-kpis-dashboard,.bap-staff-kpis-revenue{grid-template-columns:1fr}
  .bap-staff-actions-inline{min-width:0}
  .bap-staff-table{min-width:0;border-spacing:0}
  .bap-staff-table thead{display:none}
  .bap-staff-table tbody{display:block}
  .bap-staff-table tr{display:block;background:#fff;border:1px solid #eee7e4;border-radius:18px;margin:0 0 12px;padding:10px 12px;box-shadow:0 8px 18px rgba(20,33,60,.04)}
  .bap-staff-table td{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;border-bottom:1px solid #f2eeeb;padding:10px 0;text-align:right}
  .bap-staff-table td:last-child{border-bottom:none;padding-bottom:0}
  .bap-staff-table td::before{content:attr(data-label);display:block;flex:0 0 110px;max-width:45%;text-align:left;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#7b7471}
  .bap-staff-table td>*{max-width:100%}
  .bap-staff-table td strong{display:block;text-align:right}
  .bap-staff-table td .bap-staff-subnote,
  .bap-staff-table td .bap-staff-muted{max-width:100%;text-align:right}
  .bap-staff-empty{display:block !important;text-align:center !important;padding:20px 0 !important}
  .bap-staff-empty::before{display:none !important}
  .bap-staff-actions-inline{width:100%;justify-content:flex-end}
  .bap-staff-actions-inline .bap-status-btn{flex:1 1 calc(50% - 6px);justify-content:center}
  .bap-staff-panel-head h3{font-size:20px}
}
@media (max-width:480px){
  .bap-staff-table td{flex-direction:column;align-items:flex-start;text-align:left}
  .bap-staff-table td::before{flex:0 0 auto;max-width:none}
  .bap-staff-table td strong,
  .bap-staff-table td .bap-staff-subnote,
  .bap-staff-table td .bap-staff-muted{text-align:left}
  .bap-staff-actions-inline{justify-content:stretch}
  .bap-staff-actions-inline .bap-status-btn{flex:1 1 100%}
}

/* Premium staff table polish */
.bap-staff-table-card-premium{border:1px solid #e8e2de;background:linear-gradient(180deg,#fff 0%,#fdfaf8 100%);box-shadow:0 22px 45px rgba(20,33,60,.05)}
.bap-staff-table-premium{min-width:1080px}
.bap-staff-table-premium tbody tr{transition:background .18s ease, transform .18s ease}
.bap-staff-table-premium tbody tr:hover{background:#fcf7f5}
.bap-staff-table-premium td{padding:18px 16px}
.bap-client-cell{display:flex;align-items:flex-start;gap:14px;min-width:0}
.bap-client-avatar{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:14px;background:linear-gradient(135deg,#14213c,#2f4c7d);color:#fff;font-weight:800;letter-spacing:.04em;flex:0 0 42px;box-shadow:0 10px 20px rgba(20,33,60,.18)}
.bap-client-meta,.bap-contact-stack,.bap-schedule-stack,.bap-service-meta{min-width:0}
.bap-soft-badge{display:inline-flex;align-items:center;justify-content:center;padding:8px 12px;border-radius:999px;background:#f4efec;color:#413633;font-weight:700;font-size:12px;line-height:1.2;border:1px solid #e7dfdb}
.bap-revenue-chip{display:inline-flex;align-items:center;padding:9px 12px;border-radius:999px;background:#eef8f0;color:#0b7a43;font-weight:800;border:1px solid #d6eddc}
.bap-contact-line{font-weight:700;color:#14213c}
.bap-contact-line a,.bap-contact-stack a{color:#14213c !important;text-decoration:none !important;font-weight:800 !important}
.bap-contact-line a:hover,.bap-contact-stack a:hover{text-decoration:underline !important}
.bap-row-finished-note{display:inline-flex;align-items:center;padding:9px 12px;border-radius:999px;background:#f1f5f9;color:#334155;font-weight:700;font-size:12px}
.bap-staff-actions-premium{min-width:280px;gap:10px}
.bap-status-btn-pending{border-color:#f6d884;color:#8a5a00;background:#fffaf0}
.bap-status-btn-approved{border-color:#b9ebc7;color:#106534;background:#f3fff6}
.bap-status-btn-cancelled{border-color:#f4c3c3;color:#a91f1f;background:#fff6f6}
.bap-status-btn-archived{border-color:#cfe6db;color:#0b7a43;background:#f4fbf7}
.bap-status-btn-no_show{border-color:#ddd6fe;color:#5b21b6;background:#f5f3ff}
.bap-staff-table-premium th:first-child,.bap-staff-table-premium td:first-child{padding-left:22px}
.bap-staff-table-premium th:last-child,.bap-staff-table-premium td:last-child{padding-right:22px}
@media (max-width:1024px){.bap-staff-table-premium{min-width:960px}.bap-staff-actions-premium{min-width:240px}}
@media (max-width:767px){
  .bap-staff-table-premium{min-width:0}
  .bap-staff-table-premium tr{padding:14px}
  .bap-client-cell{gap:12px}
  .bap-client-avatar{width:38px;height:38px;border-radius:12px;flex-basis:38px}
  .bap-row-finished-note,.bap-soft-badge,.bap-revenue-chip{font-size:11px}
}


/* Staff status tabs + premium table enhancements */
.bap-staff-status-tabs{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 14px}
.bap-staff-status-tab{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:999px;border:1px solid #e7dfdb;background:#fff;color:#4d403c;font-weight:700;text-decoration:none;transition:all .18s ease;box-shadow:0 8px 16px rgba(20,33,60,.03)}
.bap-staff-status-tab:hover{background:#f9f4f1;border-color:#d8cdc7;color:#14213c;transform:translateY(-1px)}
.bap-staff-status-tab.is-active{background:linear-gradient(135deg,#14213c,#29406b);border-color:#14213c;color:#fff;box-shadow:0 16px 28px rgba(20,33,60,.16)}
.bap-staff-table-card-premium .bap-staff-table-scroll{padding:6px}
.bap-staff-table-premium tbody tr{border-radius:18px}
.bap-staff-table-premium tbody tr:hover td{background:#fffaf8}
.bap-staff-table-premium tbody tr td{background:transparent;transition:background .18s ease}
.bap-client-meta strong,.bap-service-meta strong,.bap-schedule-stack strong{font-size:15px}
.bap-contact-stack,.bap-service-meta,.bap-schedule-stack{display:grid;gap:4px}
.bap-soft-badge{background:#f7f1ee;border-color:#ece2dd;color:#3f3531}
.bap-revenue-chip{background:linear-gradient(180deg,#effaf2,#e6f7eb);border-color:#cfe8d6;box-shadow:inset 0 1px 0 rgba(255,255,255,.7)}
.bap-staff-actions-premium .bap-status-btn{border-radius:12px;padding:10px 12px;font-weight:700;box-shadow:0 6px 14px rgba(20,33,60,.04)}
.bap-staff-actions-premium .bap-status-btn:hover{transform:translateY(-1px)}
.bap-status-btn.is-loading{opacity:.7;pointer-events:none}
@media (max-width:767px){.bap-staff-status-tabs{overflow:auto;flex-wrap:nowrap;padding-bottom:2px}.bap-staff-status-tab{white-space:nowrap}.bap-staff-table-card-premium .bap-staff-table-scroll{padding:0}.bap-staff-table-premium tr{box-shadow:0 12px 24px rgba(20,33,60,.05)} }

.bap-workflow-switcher{display:grid !important;grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:12px !important;margin:0 0 18px !important}
.bap-workflow-link{display:grid !important;grid-template-columns:1fr auto !important;gap:3px 10px !important;align-items:center !important;padding:14px 16px !important;border:1px solid #e8e2de !important;border-radius:18px !important;background:#fff !important;color:#14213c !important;text-decoration:none !important;box-shadow:0 10px 24px rgba(20,33,60,.04) !important}
.bap-workflow-link span{font-weight:800 !important}
.bap-workflow-link strong{font-size:20px !important}
.bap-workflow-link small{grid-column:1/-1 !important;color:#7b7471 !important;font-weight:700 !important}
.bap-workflow-link.is-active{background:linear-gradient(135deg,#14213c,#29406b) !important;border-color:#14213c !important;color:#fff !important;box-shadow:0 16px 30px rgba(20,33,60,.14) !important}
.bap-workflow-link.is-active small{color:#dce5f4 !important}
@media (max-width:900px){.bap-workflow-switcher{grid-template-columns:repeat(2,minmax(0,1fr)) !important}}
@media (max-width:480px){.bap-workflow-switcher{grid-template-columns:1fr !important}.bap-workflow-link{border-radius:16px !important}}

.bap-revenue-hero{display:grid !important;grid-template-columns:minmax(0,1fr) 280px !important;gap:18px !important;margin:0 0 18px !important;padding:24px !important;border-radius:24px !important;background:linear-gradient(135deg,#14213c,#29406b) !important;color:#fff !important;box-shadow:0 18px 38px rgba(20,33,60,.16) !important}
.bap-revenue-eyebrow{display:block !important;margin:0 0 10px !important;color:#dce5f4 !important;font-size:12px !important;font-weight:800 !important;letter-spacing:.1em !important;text-transform:uppercase !important}
.bap-revenue-hero h3{margin:0 0 8px !important;color:#fff !important;font-size:42px !important;line-height:1.05 !important;letter-spacing:0 !important}
.bap-revenue-hero p{max-width:760px !important;margin:0 !important;color:#e9eef7 !important;line-height:1.65 !important}
.bap-revenue-hero-side{display:grid !important;align-content:center !important;gap:6px !important;padding:18px !important;border:1px solid rgba(255,255,255,.16) !important;border-radius:18px !important;background:rgba(255,255,255,.08) !important}
.bap-revenue-hero-side span{color:#dce5f4 !important;font-size:12px !important;font-weight:800 !important;text-transform:uppercase !important;letter-spacing:.08em !important}
.bap-revenue-hero-side strong{color:#fff !important;font-size:26px !important;line-height:1.1 !important}
.bap-revenue-hero-side small{color:#e9eef7 !important}
.bap-revenue-kpis{grid-template-columns:repeat(4,minmax(0,1fr)) !important}
.bap-revenue-spotlight{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:14px !important;margin:0 0 18px !important}
.bap-revenue-spotlight-card{display:grid !important;gap:6px !important;padding:16px !important;border:1px solid #e8e2de !important;border-radius:18px !important;background:#fff !important;box-shadow:0 10px 24px rgba(20,33,60,.04) !important}
.bap-revenue-spotlight-card span{color:#7b7471 !important;font-size:12px !important;font-weight:800 !important;text-transform:uppercase !important;letter-spacing:.08em !important}
.bap-revenue-spotlight-card strong{color:#14213c !important;font-size:18px !important;line-height:1.2 !important}
.bap-revenue-spotlight-card small{color:#756d6a !important;line-height:1.45 !important}
.bap-revenue-bar{height:7px !important;margin-top:8px !important;border-radius:999px !important;background:#eef2f6 !important;overflow:hidden !important}
.bap-revenue-bar span{display:block !important;height:100% !important;border-radius:999px !important;background:linear-gradient(90deg,#16a34a,#0ea5e9) !important}
.bap-revenue-recent{margin-top:18px !important}
@media (max-width:1100px){.bap-revenue-hero{grid-template-columns:1fr !important}.bap-revenue-kpis,.bap-revenue-spotlight{grid-template-columns:repeat(2,minmax(0,1fr)) !important}}
@media (max-width:640px){.bap-revenue-hero{padding:18px !important;border-radius:18px !important}.bap-revenue-hero h3{font-size:32px !important}.bap-revenue-kpis,.bap-revenue-spotlight{grid-template-columns:1fr !important}}

.bap-report-kpis{grid-template-columns:repeat(4,minmax(0,1fr)) !important}
.bap-report-grid{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:18px !important}
.bap-report-panel{min-width:0 !important}
.bap-report-table{min-width:0 !important}
.bap-report-table td strong{font-size:14px !important}
@media (max-width:1100px){.bap-report-grid{grid-template-columns:1fr !important}.bap-report-kpis{grid-template-columns:repeat(2,minmax(0,1fr)) !important}}
@media (max-width:640px){.bap-report-kpis{grid-template-columns:1fr !important}}

/* Branded dashboard styling from Appearance settings */
.bap-staff-dashboard,.bap-doctor-auth{
  font-family:var(--bap-body-font) !important;
  color:var(--bap-field-text) !important;
}
.bap-staff-dashboard .bap-staff-sidebar,
.bap-staff-dashboard .bap-staff-kpi.is-accent,
.bap-staff-dashboard .bap-staff-status-tab.is-active,
.bap-staff-dashboard .bap-workflow-link.is-active,
.bap-staff-dashboard .bap-revenue-hero{
  background:linear-gradient(135deg,var(--bap-heading-color),var(--bap-accent-color)) !important;
  border-color:var(--bap-heading-color) !important;
}
.bap-staff-dashboard .bap-staff-topbar,
.bap-staff-dashboard .bap-staff-filterbar,
.bap-staff-dashboard .bap-staff-panel,
.bap-staff-dashboard .bap-staff-table-card,
.bap-staff-dashboard .bap-staff-kpi,
.bap-staff-dashboard .bap-workflow-link,
.bap-staff-dashboard .bap-revenue-spotlight-card,
.bap-doctor-card{
  background:var(--bap-container-bg) !important;
  border-color:var(--bap-divider-color) !important;
  border-radius:var(--bap-container-radius) !important;
}
.bap-staff-dashboard .bap-title,
.bap-staff-dashboard h2,
.bap-staff-dashboard h3,
.bap-staff-dashboard .bap-staff-kpi strong,
.bap-staff-dashboard .bap-workflow-link,
.bap-staff-dashboard .bap-revenue-spotlight-card strong,
.bap-staff-dashboard .bap-staff-table td strong,
.bap-doctor-auth .bap-title{
  color:var(--bap-heading-color) !important;
  font-family:var(--bap-title-font) !important;
  font-weight:var(--bap-title-weight) !important;
}
.bap-staff-dashboard .bap-kicker,
.bap-staff-dashboard .bap-revenue-eyebrow,
.bap-staff-dashboard .bap-staff-kpi span,
.bap-staff-dashboard .bap-workflow-link span,
.bap-staff-dashboard .bap-staff-table th,
.bap-doctor-auth .bap-kicker{
  color:var(--bap-accent-color) !important;
}
.bap-staff-dashboard .bap-doctor-lead,
.bap-staff-dashboard .bap-staff-panel-head p,
.bap-staff-dashboard .bap-staff-subnote,
.bap-staff-dashboard .bap-staff-muted,
.bap-staff-dashboard .bap-workflow-link small,
.bap-staff-dashboard .bap-revenue-spotlight-card small{
  color:var(--bap-label-color) !important;
}
.bap-staff-dashboard input,
.bap-staff-dashboard select,
.bap-staff-dashboard textarea,
.bap-doctor-auth input[type="text"],
.bap-doctor-auth input[type="password"]{
  background:var(--bap-field-bg) !important;
  color:var(--bap-field-text) !important;
  border-color:var(--bap-field-border) !important;
  border-radius:var(--bap-field-radius) !important;
}
.bap-staff-dashboard input:focus,
.bap-staff-dashboard select:focus,
.bap-staff-dashboard textarea:focus,
.bap-doctor-auth input[type="text"]:focus,
.bap-doctor-auth input[type="password"]:focus{
  border-color:var(--bap-focus-border) !important;
  box-shadow:0 0 0 3px color-mix(in srgb,var(--bap-focus-border) 25%,transparent) !important;
}
.bap-staff-dashboard .bap-submit,
.bap-staff-dashboard .button-primary,
.bap-staff-dashboard .bap-status-btn.is-active,
.bap-doctor-auth .button-primary,
.bap-doctor-auth input[type="submit"]{
  background:var(--bap-button-bg) !important;
  color:var(--bap-button-text) !important;
  border-color:var(--bap-button-bg) !important;
  border-radius:var(--bap-button-radius) !important;
}
.bap-staff-dashboard .bap-status-btn,
.bap-staff-dashboard .bap-doctor-reset,
.bap-staff-dashboard .bap-staff-status-tab,
.bap-staff-dashboard .bap-soft-badge,
.bap-staff-dashboard .bap-row-finished-note,
.bap-staff-dashboard .bap-customer-links a{
  border-color:var(--bap-field-border) !important;
  border-radius:var(--bap-button-radius) !important;
}
.bap-staff-dashboard .bap-revenue-chip,
.bap-staff-dashboard .bap-price-pill{
  background:var(--bap-button-bg) !important;
  color:var(--bap-button-text) !important;
  border-color:var(--bap-button-bg) !important;
}
.bap-staff-dashboard .bap-revenue-bar span,
.bap-staff-dashboard .bap-live-dot{
  background:var(--bap-accent-color) !important;
}
.bap-staff-dashboard .bap-staff-sidebar,
.bap-staff-dashboard .bap-staff-sidebar h2,
.bap-staff-dashboard .bap-staff-sidebar p,
.bap-staff-dashboard .bap-staff-sidebar .bap-staff-brand-kicker,
.bap-staff-dashboard .bap-staff-kpi.is-accent,
.bap-staff-dashboard .bap-staff-kpi.is-accent span,
.bap-staff-dashboard .bap-staff-kpi.is-accent strong,
.bap-staff-dashboard .bap-staff-kpi.is-accent small,
.bap-staff-dashboard .bap-staff-status-tab.is-active,
.bap-staff-dashboard .bap-workflow-link.is-active,
.bap-staff-dashboard .bap-workflow-link.is-active span,
.bap-staff-dashboard .bap-workflow-link.is-active strong,
.bap-staff-dashboard .bap-workflow-link.is-active small,
.bap-staff-dashboard .bap-revenue-hero,
.bap-staff-dashboard .bap-revenue-hero h3,
.bap-staff-dashboard .bap-revenue-hero p,
.bap-staff-dashboard .bap-revenue-hero span,
.bap-staff-dashboard .bap-revenue-hero strong,
.bap-staff-dashboard .bap-revenue-hero small{
  color:var(--bap-button-bg) !important;
}
.bap-staff-dashboard.bap-use-global,
.bap-staff-dashboard.bap-use-global *,
.bap-doctor-auth.bap-use-global,
.bap-doctor-auth.bap-use-global *{
  font-family:inherit !important;
}

.bap-calendar-panel{padding:18px}
.bap-calendar-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}
.bap-calendar-head h3{margin:0;color:#14213c;font-size:22px}
.bap-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}
.bap-calendar-weekdays{margin-bottom:8px}
.bap-calendar-weekdays div{padding:8px 10px;color:#7b7471;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.bap-calendar-day{min-height:132px;border:1px solid #ebe5e2;border-radius:16px;background:#fff;padding:10px;box-shadow:0 8px 18px rgba(20,33,60,.03);overflow:hidden}
.bap-calendar-day.is-empty{background:#f8fafc;border-style:dashed;box-shadow:none}
.bap-calendar-day.is-today{border-color:#14213c;box-shadow:0 12px 24px rgba(20,33,60,.08)}
.bap-calendar-date{font-weight:800;color:#14213c;margin-bottom:8px}
.bap-calendar-event{display:grid;gap:2px;margin-bottom:6px;padding:7px 8px;border-radius:10px;background:#f4efec;border-left:3px solid #94a3b8}
.bap-calendar-event strong{font-size:12px;color:#14213c}
.bap-calendar-event span{font-size:12px;color:#3f3531;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bap-calendar-event small{font-size:11px;color:#7b7471;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bap-calendar-event.bap-approved{border-left-color:#16a34a;background:#effaf2}
.bap-calendar-event.bap-pending{border-left-color:#f59e0b;background:#fff7e6}
.bap-calendar-event.bap-cancelled{border-left-color:#dc2626;background:#fff1f1}
.bap-calendar-event.bap-archived{border-left-color:#0ea5e9;background:#eef8ff}
.bap-calendar-event.bap-no_show{border-left-color:#7c3aed;background:#f5f3ff}
.bap-calendar-more{font-size:11px;color:#14213c;font-weight:800}
.bap-customer-links{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.bap-customer-links a{display:inline-flex;padding:7px 9px;border-radius:999px;background:#f1f5f9;color:#14213c;font-size:11px;font-weight:800;text-decoration:none}
.bap-customer-links a:hover{background:#e2e8f0;color:#14213c}
@media (max-width:900px){
  .bap-calendar-grid{grid-template-columns:1fr}
  .bap-calendar-weekdays{display:none}
  .bap-calendar-day.is-empty{display:none}
  .bap-calendar-day{min-height:auto}
  .bap-calendar-date:before{content:"Day ";font-weight:600;color:#7b7471}
}
@media (max-width:767px){
  .bap-staff-topbar{position:sticky;top:0;z-index:10;background:#fff}
  .bap-staff-nav-link{min-height:48px}
  .bap-staff-filter-actions .bap-submit,
  .bap-staff-actions-inline .bap-status-btn{min-height:44px}
  .bap-doctor-dashboard{padding-left:8px !important;padding-right:8px !important;padding-bottom:96px !important;margin-top:10px !important}
  .bap-staff-shell{padding-left:0 !important;padding-right:0 !important}
  .bap-staff-topbar{gap:10px !important;margin-bottom:12px !important}
  .bap-staff-topbar .bap-title{font-size:28px !important;margin-bottom:8px !important}
  .bap-doctor-live-indicator{display:none !important}
  .bap-workflow-switcher{display:flex !important;overflow-x:auto !important;scroll-snap-type:x proximity !important;padding-bottom:4px !important}
  .bap-workflow-link{min-width:150px !important;scroll-snap-align:start !important}
  .bap-agenda-card-list{border:0 !important;background:transparent !important;box-shadow:none !important}
  .bap-agenda-card-list .bap-staff-table-scroll{padding:0 !important;overflow:visible !important}
  .bap-agenda-card-list .bap-staff-table tr{position:relative !important;padding-bottom:74px !important}
  .bap-agenda-card-list .bap-staff-table td[data-label="Contact"],
  .bap-agenda-card-list .bap-staff-table td[data-label="Revenue"]{display:none !important}
  .bap-agenda-card-list .bap-staff-table td[data-label="Actions"]{position:static !important;padding-top:8px !important}
  .bap-mobile-appointment-bar{display:flex !important;position:absolute !important;left:12px !important;right:12px !important;bottom:12px !important;gap:8px !important;padding:8px !important;border:1px solid #e8e2de !important;border-radius:16px !important;background:#fff !important;box-shadow:0 10px 24px rgba(20,33,60,.08) !important}
  .bap-mobile-appointment-bar a,
  .bap-mobile-appointment-bar button{flex:1 1 0 !important;display:inline-flex !important;align-items:center !important;justify-content:center !important;min-height:42px !important;padding:9px 10px !important;border:1px solid var(--bap-field-border,#e2dbd7) !important;border-radius:12px !important;background:var(--bap-button-bg,#f0d1cf) !important;color:var(--bap-button-text,#8c1515) !important;font-size:12px !important;font-weight:800 !important;text-decoration:none !important}
  .bap-swipe-actions{display:flex !important;flex-wrap:nowrap !important;overflow-x:auto !important;gap:8px !important;width:100% !important;padding-bottom:4px !important;-webkit-overflow-scrolling:touch !important}
  .bap-swipe-actions .bap-status-btn{flex:0 0 auto !important;min-width:116px !important}
  .bap-mobile-bottom-bar{display:grid !important;grid-template-columns:repeat(4,minmax(0,1fr)) !important;position:fixed !important;left:10px !important;right:10px !important;bottom:10px !important;z-index:80 !important;gap:6px !important;padding:8px !important;border:1px solid var(--bap-divider-color,#d6d1cf) !important;border-radius:18px !important;background:var(--bap-container-bg,#fff) !important;box-shadow:0 18px 40px rgba(20,33,60,.22) !important}
  .bap-mobile-bottom-bar a{display:grid !important;place-items:center !important;gap:2px !important;min-height:48px !important;border-radius:13px !important;color:var(--bap-heading-color,#14213c) !important;text-decoration:none !important;font-size:11px !important;font-weight:800 !important}
  .bap-mobile-bottom-bar a strong{font-size:11px !important;color:var(--bap-accent-color,#b62418) !important}
  .bap-mobile-bottom-bar a.is-active{background:var(--bap-button-bg,#f0d1cf) !important;color:var(--bap-button-text,#8c1515) !important}
  .bap-mobile-bottom-bar a.is-active strong{color:var(--bap-button-text,#8c1515) !important}
  .bap-calendar-head{align-items:stretch}
  .bap-calendar-head .bap-staff-status-tab{flex:1}
  .bap-calendar-head h3{align-self:center;font-size:18px;text-align:center}
}

/* Operational action column: compact SaaS controls */
.bap-agenda-card-list .bap-staff-table th:last-child,
.bap-agenda-card-list .bap-staff-table td[data-label="Actions"]{
  width:210px !important;
}
.bap-staff-actions-inline,
.bap-staff-actions-premium{
  min-width:0 !important;
  width:100% !important;
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:6px !important;
}
.bap-staff-actions-premium .bap-status-btn,
.bap-staff-dashboard .bap-status-btn{
  min-height:32px !important;
  padding:6px 8px !important;
  border-radius:8px !important;
  font-size:11px !important;
  line-height:1.15 !important;
  font-weight:800 !important;
  box-shadow:none !important;
  white-space:nowrap !important;
}
.bap-staff-actions-premium .bap-status-btn:hover{
  transform:none !important;
  border-color:var(--bap-focus-border,#cba6a4) !important;
}
.bap-row-finished-note{
  padding:7px 9px !important;
  border-radius:8px !important;
  font-size:11px !important;
}
.bap-inline-edit-btn{
  display:none !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:32px !important;
  padding:6px 9px !important;
  border:1px solid #d8dee8 !important;
  border-radius:8px !important;
  background:#fff !important;
  color:#14213c !important;
  font-size:11px !important;
  font-weight:800 !important;
  line-height:1.15 !important;
  cursor:pointer !important;
  box-shadow:none !important;
}
.bap-inline-edit-desktop{
  width:100% !important;
  margin-bottom:6px !important;
}
.bap-customer-links{
  margin-top:8px !important;
  gap:5px !important;
}
.bap-customer-links a{
  padding:5px 7px !important;
  border-radius:8px !important;
  font-size:10px !important;
}
@media (max-width:767px){
  .bap-staff-table td[data-label="Actions"]{
    width:auto !important;
  }
  .bap-agenda-card-list .bap-staff-table tr{
    padding:12px 12px 58px !important;
  }
  .bap-mobile-appointment-bar{
    left:10px !important;
    right:10px !important;
    bottom:10px !important;
    gap:6px !important;
    padding:6px !important;
    border-radius:12px !important;
    box-shadow:0 8px 18px rgba(20,33,60,.08) !important;
  }
  .bap-mobile-appointment-bar a,
  .bap-mobile-appointment-bar button{
    min-height:34px !important;
    padding:7px 8px !important;
    border-radius:8px !important;
    font-size:11px !important;
  }
  .bap-inline-edit-desktop{display:none !important}
  .bap-swipe-actions{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    overflow:visible !important;
    padding-bottom:0 !important;
  }
  .bap-swipe-actions .bap-status-btn{
    min-width:0 !important;
    width:100% !important;
    min-height:34px !important;
  }
}

.bap-empty-state-card{
  display:flex !important;
  align-items:flex-start !important;
  justify-content:center !important;
  gap:12px !important;
  max-width:520px !important;
  margin:0 auto !important;
  padding:18px !important;
  border:1px dashed #d8dee8 !important;
  border-radius:12px !important;
  background:#f8fafc !important;
  text-align:left !important;
}
.bap-empty-state-icon{
  flex:0 0 34px !important;
  width:34px !important;
  height:34px !important;
  border-radius:10px !important;
  background:linear-gradient(135deg,#e8edf5,#fff) !important;
  border:1px solid #dbe3ee !important;
}
.bap-empty-state-card strong{
  display:block !important;
  margin:0 0 4px !important;
  color:#14213c !important;
  font-size:14px !important;
}
.bap-empty-state-card p{
  margin:0 !important;
  color:#64748b !important;
  font-size:12px !important;
  line-height:1.45 !important;
}
.bap-empty-state-action{
  display:inline-flex !important;
  margin-top:10px !important;
  color:var(--bap-accent-color,#b62418) !important;
  font-weight:800 !important;
  text-decoration:none !important;
}
.bap-appointment-drawer{
  position:fixed !important;
  inset:0 !important;
  z-index:120 !important;
  display:none !important;
  align-items:flex-end !important;
  justify-content:flex-end !important;
  background:rgba(15,23,42,.36) !important;
}
.bap-appointment-drawer.is-open{display:flex !important}
.bap-appointment-drawer-panel{
  width:min(480px,100%) !important;
  max-height:92vh !important;
  overflow:auto !important;
  padding:18px !important;
  border-radius:16px 0 0 16px !important;
  background:#fff !important;
  box-shadow:0 24px 70px rgba(15,23,42,.28) !important;
}
.bap-appointment-drawer-head{
  display:flex !important;
  justify-content:space-between !important;
  gap:12px !important;
  margin-bottom:14px !important;
}
.bap-drawer-kicker{
  display:block !important;
  margin-bottom:4px !important;
  color:#64748b !important;
  font-size:10px !important;
  font-weight:800 !important;
  text-transform:uppercase !important;
}
.bap-drawer-title{
  margin:0 !important;
  color:#14213c !important;
  font-size:20px !important;
  line-height:1.2 !important;
}
.bap-drawer-subtitle{
  margin:5px 0 0 !important;
  color:#64748b !important;
  font-size:12px !important;
}
.bap-drawer-close{
  width:34px !important;
  height:34px !important;
  border:1px solid #d8dee8 !important;
  border-radius:9px !important;
  background:#fff !important;
  color:#14213c !important;
  font-size:22px !important;
  line-height:1 !important;
  cursor:pointer !important;
}
.bap-drawer-actions{
  display:flex !important;
  gap:8px !important;
  margin-top:14px !important;
}
.bap-drawer-actions .bap-submit,
.bap-drawer-actions .bap-doctor-reset{
  min-height:38px !important;
  padding:9px 12px !important;
  border-radius:8px !important;
  font-size:12px !important;
}
.bap-doctor-dashboard.is-refreshing .bap-doctor-content-wrap{
  opacity:.72 !important;
}
.bap-quick-hours-panel{
  margin-bottom:12px !important;
}
.bap-quick-hours-list{
  display:grid !important;
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr)) !important;
  gap:8px !important;
}
.bap-quick-hours-row{
  display:grid !important;
  gap:3px !important;
  padding:10px !important;
  border:1px solid #e5e7eb !important;
  border-radius:10px !important;
  background:#f8fafc !important;
}
.bap-quick-hours-row strong{color:#14213c !important;font-size:13px !important}
.bap-quick-hours-row span{font-weight:800 !important;color:#334155 !important;font-size:12px !important}
.bap-quick-hours-row small{color:#64748b !important;font-size:11px !important}
.bap-location-repeater{
  padding:12px !important;
  border:1px solid #e5e7eb !important;
  border-radius:12px !important;
  background:#f8fafc !important;
}
.bap-team-location-repeater{
  padding:12px !important;
  border:1px solid #e5e7eb !important;
  border-radius:12px !important;
  background:#f8fafc !important;
}
.bap-repeater-grid-team-location{
  display:grid !important;
  grid-template-columns:minmax(160px,1fr) minmax(160px,1fr) 120px 120px !important;
  gap:12px !important;
}
.bap-overview-command{
  display:grid !important;
  grid-template-columns:minmax(260px,1.3fr) repeat(4,minmax(150px,1fr)) !important;
  gap:10px !important;
}
.bap-overview-primary,
.bap-overview-tile{
  min-height:112px !important;
  padding:16px !important;
  border:1px solid #e5e7eb !important;
  border-radius:12px !important;
  background:#fff !important;
  box-shadow:0 8px 20px rgba(15,23,42,.04) !important;
  text-decoration:none !important;
}
.bap-overview-primary{
  background:#0f172a !important;
  color:#fff !important;
}
.bap-overview-primary span,
.bap-overview-tile span{
  display:block !important;
  color:#64748b !important;
  font-size:11px !important;
  font-weight:900 !important;
  text-transform:uppercase !important;
}
.bap-overview-primary span{color:#cbd5e1 !important}
.bap-overview-primary strong,
.bap-overview-tile strong{
  display:block !important;
  margin-top:6px !important;
  color:#14213c !important;
  font-size:28px !important;
  line-height:1 !important;
}
.bap-overview-primary strong{color:#fff !important;font-size:40px !important}
.bap-overview-primary p,
.bap-overview-tile small{
  display:block !important;
  margin-top:10px !important;
  color:#64748b !important;
  font-size:12px !important;
}
.bap-overview-primary p{color:#e2e8f0 !important}
.bap-location-head{
  margin-bottom:10px !important;
}
.bap-location-card{
  border-color:#d8dee8 !important;
  background:#fff !important;
}
.bap-repeater-grid-location{
  display:grid !important;
  grid-template-columns:minmax(220px,1fr) 140px 140px !important;
  gap:12px !important;
}
@media (max-width:767px){
  .bap-repeater-grid-location{
    grid-template-columns:1fr !important;
  }
  .bap-repeater-grid-team-location,
  .bap-overview-command{
    grid-template-columns:1fr !important;
  }
}
.bap-mobile-calendar-agenda{
  display:none !important;
  margin-top:14px !important;
}
.bap-mobile-calendar-item{
  display:flex !important;
  justify-content:space-between !important;
  gap:10px !important;
  padding:10px 0 !important;
  border-top:1px solid #edf2f7 !important;
}
.bap-mobile-calendar-item strong,
.bap-mobile-calendar-item span{
  display:block !important;
}
.bap-mobile-calendar-item span{
  color:#64748b !important;
  font-size:12px !important;
}
.bap-calendar-empty{
  margin-top:14px !important;
}
@media (max-width:767px){
  .bap-appointment-drawer-panel{
    width:100% !important;
    max-height:88vh !important;
    border-radius:18px 18px 0 0 !important;
    padding:16px !important;
  }
  .bap-drawer-actions{
    position:sticky !important;
    bottom:0 !important;
    padding-top:10px !important;
    background:#fff !important;
  }
  .bap-drawer-actions .bap-submit,
  .bap-drawer-actions .bap-doctor-reset{
    flex:1 1 0 !important;
  }
  .bap-empty-state-card{
    display:grid !important;
    grid-template-columns:34px minmax(0,1fr) !important;
    padding:14px !important;
  }
  .bap-mobile-calendar-agenda{display:block !important}
}

/* Public shortcode hardening: keep theme styles from overriding the booking form. */
.bap-staff-dashboard{
  background:#f6f7f9 !important;
}
.bap-staff-shell{
  grid-template-columns:240px minmax(0,1fr) !important;
  gap:18px !important;
  padding:18px 10px 34px !important;
}
.bap-staff-sidebar{
  border-radius:14px !important;
  padding:16px !important;
  box-shadow:0 12px 28px rgba(15,23,42,.12) !important;
}
.bap-staff-brand h2{
  font-size:18px !important;
  line-height:1.2 !important;
}
.bap-staff-brand p{
  display:none !important;
}
.bap-staff-nav{
  gap:6px !important;
  margin:14px 0 !important;
}
.bap-staff-nav-link{
  min-height:38px !important;
  padding:9px 10px !important;
  border-radius:9px !important;
  font-size:12px !important;
}
.bap-staff-nav-link strong{
  font-size:11px !important;
  max-width:86px !important;
}
.bap-staff-main{
  display:grid !important;
  gap:12px !important;
}
.bap-staff-topbar,
.bap-staff-filterbar,
.bap-staff-panel,
.bap-staff-table-card,
.bap-staff-kpi,
.bap-workflow-link,
.bap-revenue-spotlight-card{
  border-radius:12px !important;
  box-shadow:0 8px 20px rgba(15,23,42,.04) !important;
}
.bap-staff-topbar{
  margin-bottom:0 !important;
  padding:16px 18px !important;
  align-items:center !important;
}
.bap-staff-topbar .bap-kicker{
  margin-bottom:5px !important;
  font-size:10px !important;
}
.bap-staff-topbar .bap-title{
  font-size:26px !important;
  line-height:1.1 !important;
  margin-bottom:4px !important;
}
.bap-doctor-lead{
  font-size:13px !important;
  line-height:1.45 !important;
  margin:0 !important;
}
.bap-workflow-switcher{
  margin:0 !important;
  gap:8px !important;
}
.bap-workflow-link{
  min-height:58px !important;
  padding:10px 12px !important;
  border-radius:10px !important;
}
.bap-workflow-link strong{
  font-size:17px !important;
}
.bap-workflow-link small{
  font-size:11px !important;
}
.bap-staff-filterbar{
  margin-bottom:0 !important;
  padding:12px !important;
  gap:10px !important;
}
.bap-staff-filterbar label{
  font-size:11px !important;
}
.bap-staff-filterbar input,
.bap-staff-filterbar select{
  min-height:38px !important;
  border-radius:8px !important;
  font-size:13px !important;
}
.bap-staff-kpis{
  gap:10px !important;
  margin-bottom:0 !important;
}
.bap-staff-kpi{
  padding:13px !important;
  border-radius:10px !important;
}
.bap-staff-kpi span{
  font-size:10px !important;
  margin-bottom:5px !important;
}
.bap-staff-kpi strong{
  font-size:24px !important;
}
.bap-staff-kpi small{
  font-size:11px !important;
  margin-top:5px !important;
}
.bap-staff-panel{
  padding:14px !important;
}
.bap-staff-panel-head{
  margin-bottom:10px !important;
}
.bap-staff-panel-head h3,
.bap-panel-head h2{
  font-size:16px !important;
  margin-bottom:3px !important;
}
.bap-staff-panel-head p,
.bap-panel-head p{
  font-size:12px !important;
}
.bap-staff-table-premium td{
  padding:11px 12px !important;
}
.bap-staff-table th{
  padding:10px 12px !important;
  font-size:10px !important;
}
@media (max-width:1024px){
  .bap-staff-shell{grid-template-columns:1fr !important}
  .bap-staff-nav{grid-template-columns:repeat(3,minmax(0,1fr)) !important}
}
@media (max-width:767px){
  .bap-staff-dashboard{background:#f7f8fa !important}
  .bap-staff-shell{padding:8px 0 86px !important;gap:10px !important}
  .bap-staff-sidebar{display:none !important}
  .bap-staff-topbar{position:static !important;padding:12px !important}
  .bap-staff-topbar .bap-title{font-size:22px !important}
  .bap-doctor-lead{display:none !important}
  .bap-workflow-link{min-width:128px !important;min-height:50px !important}
  .bap-staff-filterbar{padding:10px !important}
  .bap-agenda-card-list .bap-staff-table tr{
    border-radius:12px !important;
    box-shadow:0 6px 16px rgba(15,23,42,.05) !important;
  }
}

.bap-wrap{
  width:100% !important;
  max-width:920px !important;
  margin:0 auto !important;
  padding:34px !important;
  background:var(--bap-container-bg) !important;
  border-radius:var(--bap-container-radius) !important;
  box-sizing:border-box !important;
  font-family:var(--bap-body-font) !important;
  color:var(--bap-field-text) !important;
}
.bap-wrap *,
.bap-wrap *::before,
.bap-wrap *::after{
  box-sizing:border-box !important;
}
.bap-wrap .bap-kicker{
  display:block !important;
  margin:0 0 24px !important;
  color:var(--bap-accent-color) !important;
  font-size:14px !important;
  font-weight:700 !important;
  line-height:1.3 !important;
  letter-spacing:1.6px !important;
  text-transform:uppercase !important;
}
.bap-wrap .bap-title{
  display:block !important;
  max-width:620px !important;
  margin:0 0 28px !important;
  padding:0 !important;
  color:var(--bap-heading-color) !important;
  font-family:var(--bap-title-font) !important;
  font-size:46px !important;
  font-weight:var(--bap-title-weight) !important;
  line-height:1.08 !important;
  letter-spacing:0 !important;
}
.bap-wrap .bap-divider{
  display:block !important;
  width:100% !important;
  height:1px !important;
  margin:0 0 28px !important;
  padding:0 !important;
  background:var(--bap-divider-color) !important;
  border:0 !important;
}
.bap-wrap .bap-form{
  display:block !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
}
.bap-wrap .bap-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:14px 18px !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
}
.bap-wrap .bap-field{
  display:flex !important;
  flex-direction:column !important;
  width:100% !important;
  min-width:0 !important;
  margin:0 !important;
  padding:0 !important;
}
.bap-wrap .bap-field.bap-full{
  grid-column:1 / -1 !important;
  margin-top:12px !important;
}
.bap-wrap .bap-field label{
  display:block !important;
  margin:0 0 10px !important;
  padding:0 !important;
  color:var(--bap-label-color) !important;
  font-size:16px !important;
  font-weight:var(--bap-label-weight) !important;
  line-height:1.35 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
}
.bap-wrap .bap-field input,
.bap-wrap .bap-field select,
.bap-wrap .bap-field textarea{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  min-height:56px !important;
  margin:0 !important;
  padding:15px 18px !important;
  border:1px solid var(--bap-field-border) !important;
  border-radius:var(--bap-field-radius) !important;
  background:var(--bap-field-bg) !important;
  color:var(--bap-field-text) !important;
  box-shadow:none !important;
  outline:none !important;
  font:400 16px/1.35 var(--bap-body-font) !important;
  letter-spacing:0 !important;
  text-transform:none !important;
  appearance:auto !important;
}
.bap-wrap .bap-field textarea{
  min-height:120px !important;
  padding-top:16px !important;
  resize:vertical !important;
}
.bap-wrap .bap-field input:focus,
.bap-wrap .bap-field select:focus,
.bap-wrap .bap-field textarea:focus{
  border-color:var(--bap-focus-border) !important;
  background:#fff !important;
  box-shadow:0 0 0 3px rgba(203,166,164,.2) !important;
}
.bap-wrap .bap-field input::placeholder,
.bap-wrap .bap-field textarea::placeholder{
  color:var(--bap-placeholder-color) !important;
  opacity:1 !important;
}
.bap-wrap .bap-status{
  display:block !important;
  min-height:1.2em !important;
  margin:14px 0 6px !important;
  padding:0 !important;
  font-size:15px !important;
  font-weight:500 !important;
  line-height:1.4 !important;
}
.bap-wrap .bap-status.success{color:#0b7a35 !important}
.bap-wrap .bap-status.error{color:#b91c1c !important}
.bap-wrap .bap-status.info{color:#555 !important}
.bap-wrap .bap-submit{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:172px !important;
  min-height:56px !important;
  margin:10px 0 0 !important;
  padding:18px 30px !important;
  border:0 !important;
  border-radius:var(--bap-button-radius) !important;
  background:var(--bap-button-bg) !important;
  color:var(--bap-button-text) !important;
  box-shadow:none !important;
  cursor:pointer !important;
  font:700 18px/1.1 var(--bap-body-font) !important;
  letter-spacing:0 !important;
  text-align:center !important;
  text-decoration:none !important;
  text-transform:none !important;
  transition:transform .2s ease,opacity .2s ease !important;
}
.bap-wrap .bap-submit:hover{
  color:var(--bap-button-text) !important;
  opacity:.95 !important;
  transform:translateY(-1px) !important;
}
.bap-wrap .bap-submit:disabled{
  opacity:.6 !important;
  cursor:not-allowed !important;
  transform:none !important;
}
.bap-wrap .bap-whatsapp{
  display:block !important;
  margin:8px 0 4px !important;
}
.bap-wrap .bap-wa-btn{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:14px 22px !important;
  border:0 !important;
  border-radius:999px !important;
  background:#25D366 !important;
  color:#fff !important;
  font-weight:700 !important;
  line-height:1.2 !important;
  text-decoration:none !important;
}
.bap-wrap.bap-use-global,
.bap-wrap.bap-use-global *{
  font-family:inherit !important;
}
.bap-wrap.bap-use-global .bap-title{
  font-family:inherit !important;
}
@media (max-width:767px){
  .bap-wrap{padding:22px !important}
  .bap-wrap .bap-grid{grid-template-columns:1fr !important}
  .bap-wrap .bap-title{max-width:100% !important;font-size:36px !important}
  .bap-wrap .bap-submit{width:100% !important}
}
