/* Layout geometry is maintained in responsive.css (v152). */
/* Unaverage / premium interface. Loaded last to consolidate legacy visual overrides.
   Calendar grid sizing, date navigation and booking rules are preserved. */
body.premium-ui {
  --gold:#bfbfbf;--gold-light:#d5d5d5;--gold-dark:#838383;
  --black:#111111;--black2:#181818;--black3:#1e1e1e;--black4:#262626;
  --white:#f2f2f2;--white2:#e1e1e1;--gray:#b7b7b7;--gray2:#949494;
  --ad-bg:#111111;--ad-surface:#181818;--ad-surface2:#1e1e1e;--ad-surface3:#262626;--ad-card:#181818;
  --ad-blue:#bfbfbf;--ad-purple:#bfbfbf;
  --ui-border:#323232;--ui-muted:#a6a6a6;--ui-accent:#bfbfbf;
  background:#111111!important;color:var(--white)!important;
  font-size:14px;line-height:1.65;-webkit-font-smoothing:antialiased;color-scheme:dark;
}
body.premium-ui button,body.premium-ui input,body.premium-ui select,body.premium-ui textarea {font:inherit;}
body.premium-ui :is(button,a,input,select,textarea,[tabindex]):focus-visible {outline:2px solid #c8c8c8!important;outline-offset:3px!important;box-shadow:none!important;}
body.premium-ui :is(.btn-primary,.btn-next,.btn-dark) {background:#bfbfbf!important;color:#171717!important;border:1px solid #bfbfbf!important;border-radius:12px!important;min-height:46px;letter-spacing:0!important;text-transform:none!important;font-weight:650!important;padding:.8rem 1.3rem!important;box-shadow:none!important;}
body.premium-ui :is(.btn-primary,.btn-next,.btn-dark):hover:not(:disabled) {background:#d5d5d5!important;border-color:#d5d5d5!important;transform:translateY(-1px);}
body.premium-ui :is(.btn-outline,.btn-back,.nav-cta,.admin-link-btn,.admin-pill,.mini-btn,.tool-launch-btn) {background:#222222!important;color:#e3e3e3!important;border:1px solid #383838!important;border-radius:10px!important;letter-spacing:0!important;text-transform:none!important;box-shadow:none!important;min-height:42px;font-weight:500!important;transition:background .18s,border-color .18s;}
body.premium-ui :is(.btn-outline,.btn-back,.nav-cta,.admin-link-btn,.admin-pill,.mini-btn,.tool-launch-btn):hover {background:#2d2d2d!important;border-color:#6c6c6c!important;color:#ffffff!important;}
body.premium-ui :is(.admin-pill.active,.admin-header-tab.active) {background:#bfbfbf!important;border-color:#bfbfbf!important;color:#171717!important;}
body.premium-ui button:disabled {opacity:.38!important;cursor:not-allowed!important;transform:none!important;}
body.premium-ui :is(.form-group input,.form-group select,.form-group textarea,.admin-search,.admin-date-input) {background:#121212!important;color:#efefef!important;border:1px solid #3c3c3c!important;border-radius:11px!important;min-height:48px!important;padding:.75rem .9rem!important;box-shadow:none!important;max-width:100%;min-width:0;}
body.premium-ui :is(input,textarea)::placeholder {color:#949494!important;opacity:1;}
body.premium-ui .form-group label {color:#c4c4c4!important;font-size:12px!important;letter-spacing:0!important;text-transform:none!important;margin-bottom:7px!important;}
body.premium-ui :is(.field-help,.step-subtitle,.tools-helper-text,.analytics-intro,.admin-tools-copy) {color:#a6a6a6!important;font-size:12px!important;line-height:1.65!important;}
body.premium-ui :is(.admin-sub,.premium-eyebrow) {color:#acacac!important;font-size:10px!important;letter-spacing:.13em!important;text-transform:uppercase;}
body.premium-ui :is(.admin-card,.admin-kpi,.admin-login-card-page,.analytics-card,.analytics-overview-card,.client-card,.admin-tools-modal-panel,.admin-drawer-panel,.slot-quick-dialog,.confirm-box,.notifications-panel,.tools-form-card,.tools-list-card,.slot-form-card) {background:#1a1a1a!important;background-image:none!important;border:1px solid var(--ui-border)!important;box-shadow:0 8px 28px #00000014!important;color:var(--white)!important;border-radius:18px!important;}
body.premium-ui :is(.records-modal-item,.agenda-item,.schedule-chip-item,.week-day-card,.booking-summary,.email-preview,.my-booking-card) {background:#222222!important;border-color:#383838!important;border-radius:12px!important;}
body.premium-ui :is(.admin-modal-backdrop,.admin-drawer-backdrop,.slot-quick-backdrop) {background:#090909bf!important;backdrop-filter:blur(6px);}
body.premium-ui :is(.admin-tools-modal-head,.admin-drawer-head,.notifications-panel-head) {background:#1a1a1a!important;border-color:#383838!important;}
body.premium-ui :is(.status-chip,.payment-chip) {letter-spacing:0!important;font-weight:550!important;border-radius:6px!important;}
body.premium-ui :is(.status-confirmed,.payment-paid,.status-completed) {background:#323232!important;color:#d1d1d1!important;border-color:#4d4d4d!important;}
body.premium-ui :is(.status-pending,.payment-pending) {background:#313131!important;color:#cecece!important;border-color:#525252!important;}
body.premium-ui :is(.status-cancelled,.admin-link-btn-danger,.mini-btn.danger) {background:#282828!important;color:#c1c1c1!important;border-color:#414141!important;}
body.premium-ui .notifications-badge {animation:none!important;background:#929292!important;color:#131313!important;}
body.premium-ui .toast {border-radius:12px!important;max-width:calc(100vw - 32px);}
/* Workspace header and navigation */
body.premium-ui.admin-page-body .admin-topbar-page {background:#161616f5!important;border-bottom:1px solid #323232!important;position:sticky!important;top:0!important;padding:16px 28px!important;backdrop-filter:blur(18px);}
body.premium-ui.admin-page-body .admin-topbar-layout {max-width:1540px!important;margin:auto!important;display:flex!important;align-items:center!important;gap:22px!important;justify-content:space-between!important;}
body.premium-ui.admin-page-body .admin-brand {order:0!important;flex:0 0 auto;position:static!important;transform:none!important;width:auto!important;}
body.premium-ui.admin-page-body .admin-brand img {height:38px!important;width:auto!important;max-width:165px!important;object-fit:contain;}
body.premium-ui.admin-page-body .admin-top-actions {order:1!important;display:flex!important;gap:16px!important;margin-left:auto!important;}
body.premium-ui.admin-page-body .admin-topbar-start {order:2!important;display:flex!important;gap:8px!important;position:static!important;}
body.premium-ui.admin-page-body .admin-header-nav {display:flex!important;padding:4px!important;background:#111111!important;border:1px solid #323232!important;border-radius:13px!important;gap:4px!important;}
body.premium-ui.admin-page-body .admin-header-tab {border-color:transparent!important;background:transparent!important;min-height:38px!important;font-size:12px!important;padding:8px 14px!important;}
body.premium-ui.admin-page-body .admin-header-tab.active {background:#bfbfbf!important;color:#171717!important;}
body.premium-ui.admin-page-body .admin-link-btn {font-size:12px!important;padding:9px 12px!important;white-space:normal!important;}


body.premium-ui.admin-page-body .premium-page-heading {display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:26px;}
body.premium-ui.admin-page-body .premium-page-heading h1 {font-size:clamp(23px,2.2vw,32px);line-height:1.25;margin:7px 0;letter-spacing:-.035em!important;font-weight:600!important;}
body.premium-ui.admin-page-body .premium-page-heading p {color:#a6a6a6;font-size:13px;}
body.premium-ui.admin-page-body .premium-workspace-label {color:#7b7b7b;letter-spacing:.15em;font-size:10px;}
body.premium-ui.admin-page-body .admin-kpis {gap:14px!important;margin-bottom:24px!important;}
body.premium-ui.admin-page-body .admin-kpi.premium-kpi {min-height:120px!important;padding:19px!important;border-radius:15px!important;transform:none!important;}
body.premium-ui.admin-page-body .admin-kpi-label {font-size:12px!important;letter-spacing:0!important;text-transform:none!important;white-space:normal!important;color:#b9b9b9!important;line-height:1.4!important;}
body.premium-ui.admin-page-body .admin-kpi-icon {width:30px!important;height:30px!important;flex-basis:30px!important;background:#bfbfbf10!important;border:0!important;border-radius:8px!important;color:#bfbfbf!important;}
body.premium-ui.admin-page-body .admin-kpi-icon svg {width:19px;height:19px;}
body.premium-ui.admin-page-body .admin-kpi-value {font-size:30px!important;font-weight:550!important;margin-top:14px!important;font-variant-numeric:tabular-nums;}
body.premium-ui.admin-page-body .admin-card {padding:22px!important;}
body.premium-ui.admin-page-body .admin-toolbar {gap:16px!important;flex-wrap:wrap!important;align-items:center!important;}
body.premium-ui.admin-page-body .admin-toolbar :is(h2,h3) {font-size:20px!important;font-weight:600!important;margin-top:4px;}
body.premium-ui.admin-page-body .admin-toolbar-group {flex-wrap:wrap!important;gap:7px!important;min-width:0;}
body.premium-ui.admin-page-body .scheduler-top-controls {justify-content:flex-end!important;}
body.premium-ui.admin-page-body .scheduler-period-label {color:#d6d6d6!important;letter-spacing:0!important;font-weight:550!important;}
body.premium-ui.admin-page-body .scheduler-legend {padding:12px 0!important;gap:16px!important;color:#a6a6a6!important;font-size:11px!important;flex-wrap:wrap!important;}
/* Calendar colours only. Existing month/week sizing and touch behaviour remain intact. */
body.premium-ui.admin-page-body :is(.scheduler-board-wrap,.scheduler-board,.scheduler-month-grid,.scheduler-grid) {background:#191919!important;border-color:#363636!important;}
body.premium-ui.admin-page-body :is(.scheduler-cell,.scheduler-month-cell) {background:#1b1b1b!important;border-color:#333333!important;}
body.premium-ui.admin-page-body :is(.scheduler-time,.scheduler-corner,.scheduler-day-head,.scheduler-month-head) {background:#242424!important;color:#b9b9b9!important;border-color:#363636!important;}
body.premium-ui.admin-page-body :is(.scheduler-month-cell.is-selected,.scheduler-cell.is-selected) {background:#2c2c2c!important;box-shadow:inset 0 0 0 1px #9c9c9c!important;}
body.premium-ui.admin-page-body .scheduler-month-cell.is-today .scheduler-month-date {background:#bfbfbf!important;color:#171717!important;}
body.premium-ui.admin-page-body :is(.scheduler-month-pill,.scheduler-item):not(.block):not(.is-blackout-pill) {background:#343434!important;color:#dddddd!important;border-color:#646464!important;}
body.premium-ui.admin-page-body :is(.scheduler-item.block,.scheduler-month-pill.is-blackout-pill) {background:#2a2a2a!important;color:#b7b7b7!important;border-color:#464646!important;}
body.premium-ui.admin-page-body :is(.scheduler-month-add,.scheduler-cell-add) {color:#bfbfbf!important;}
body.premium-ui.admin-page-body .admin-tools-grid {gap:10px!important;}
body.premium-ui.admin-page-body .tool-launch-btn {min-height:50px!important;text-align:left!important;padding:12px 14px!important;font-size:12px!important;}
body.premium-ui.admin-page-body .admin-table-wrap {overflow-x:auto!important;background:#1a1a1a!important;border-color:#323232!important;}
body.premium-ui.admin-page-body :is(.admin-data-table,.admin-data-table td) {background:#1a1a1a!important;border-color:#323232!important;}
body.premium-ui.admin-page-body .admin-data-table th {background:#242424!important;color:#b9b9b9!important;letter-spacing:0!important;}
body.premium-ui.admin-page-body .admin-footer {background:transparent!important;border-color:#323232!important;color:#949494!important;padding:22px!important;}
body.premium-ui.admin-page-body .admin-login-card-page {width:min(440px,100%)!important;margin:7vh auto!important;padding:32px!important;}
body.premium-ui .premium-login-heading {margin-bottom:28px;}
body.premium-ui .premium-login-heading h1 {font-size:29px;line-height:1.3;margin:10px 0;}
body.premium-ui .premium-login-heading p {color:#a6a6a6;}
/* Customer booking */
body.premium-ui .site-nav {background:#151515f2!important;border-color:#363636!important;}
body.premium-ui .hero-bg {background:linear-gradient(180deg,#11111160,#111111e8)!important;}
body.premium-ui footer {background:#151515!important;border-color:#323232!important;}
body.premium-ui .hero-subtitle {letter-spacing:.015em!important;text-transform:none!important;font-size:15px!important;color:#cccccc!important;}
body.premium-ui :is(#booking-overlay,#mybookings-overlay).overlay {background:#090909bd!important;backdrop-filter:blur(10px);}
body.premium-ui #booking-overlay .booking-modal,
body.premium-ui #mybookings-overlay .my-bookings-modal {background:#1a1a1a!important;border:1px solid #3a3a3a!important;border-radius:22px!important;box-shadow:0 24px 100px #00000088!important;}

body.premium-ui :is(#booking-overlay,#mybookings-overlay) .modal-header {background:#1a1a1a!important;background-image:none!important;box-shadow:none!important;border-color:#373737!important;}
body.premium-ui :is(#booking-overlay,#mybookings-overlay) .modal-logo {font-size:11px!important;letter-spacing:.08em!important;color:#bbbbbb!important;}
body.premium-ui .close-btn {background:#262626!important;color:#dedede!important;border:1px solid #3e3e3e!important;border-radius:50%!important;width:40px!important;height:40px!important;}
body.premium-ui #booking-overlay .step-title-book {font-size:clamp(22px,3vw,29px)!important;font-weight:600!important;letter-spacing:-.035em!important;line-height:1.25!important;}
body.premium-ui #booking-overlay .prog-step {background:#393939!important;height:3px!important;border-radius:4px;}
body.premium-ui #booking-overlay .prog-step:is(.active,.done) {background:#bfbfbf!important;}
body.premium-ui #booking-overlay .prog-label {font-size:11px!important;letter-spacing:0!important;color:#969696!important;}
body.premium-ui #booking-overlay .prog-label:is(.active,.done) {color:#d2d2d2!important;}
body.premium-ui #booking-overlay .options-grid {gap:12px!important;}
body.premium-ui #booking-overlay .option-card {background:#242424!important;border:1px solid #3d3d3d!important;border-radius:14px!important;padding:20px!important;box-shadow:none!important;transform:none!important;cursor:pointer;}
body.premium-ui #booking-overlay .option-card:hover {background:#2b2b2b!important;border-color:#8d8d8d!important;}
body.premium-ui #booking-overlay .option-card.selected {background:#2f2f2f!important;border-color:#bfbfbf!important;box-shadow:inset 0 0 0 1px #bfbfbf!important;}
body.premium-ui #booking-overlay .option-card.selected::after {background:#bfbfbf!important;color:#151515!important;box-shadow:none!important;}
body.premium-ui #booking-overlay .option-name {font-size:16px!important;color:#ededed!important;}
body.premium-ui #booking-overlay .option-detail {font-size:12px!important;color:#b2b2b2!important;}
body.premium-ui #booking-overlay .option-price {font-size:13px!important;color:#bfbfbf!important;}
body.premium-ui #booking-overlay .calendar-wrap {background:#222222!important;border:1px solid #3c3c3c!important;border-radius:16px!important;padding:18px!important;}
body.premium-ui #booking-overlay .cal-day {color:#ebebeb!important;border-radius:10px!important;}
body.premium-ui #booking-overlay .cal-day.selected {background:#bfbfbf!important;color:#171717!important;border-color:#bfbfbf!important;}
body.premium-ui #booking-overlay .cal-day.disabled {color:#757575!important;background:transparent!important;}
body.premium-ui #booking-overlay .cal-day.today {border-color:#aaaaaa!important;}
body.premium-ui #booking-overlay .cal-nav {background:#2e2e2e!important;color:#c7c7c7!important;border-color:#434343!important;border-radius:10px!important;}
body.premium-ui #booking-overlay .time-slot:not(.taken) {background:#242424!important;border:1px solid #464646!important;color:#e7e7e7!important;border-radius:10px!important;box-shadow:none!important;}
body.premium-ui #booking-overlay .time-slot.selected {background:#bfbfbf!important;color:#171717!important;border-color:#bfbfbf!important;}
body.premium-ui #booking-overlay .time-slot.selected :is(strong,span) {color:#171717!important;}
body.premium-ui #booking-overlay .time-slot.taken {background:#1d1d1d!important;color:#7b7b7b!important;border-color:#313131!important;}
body.premium-ui #booking-overlay .modal-nav {background:#1a1a1af5!important;background-image:none!important;border-color:#393939!important;box-shadow:none!important;gap:12px!important;}
body.premium-ui #booking-overlay :is(.booking-summary,.double-booking-box,.second-appointment-box) {background:#242424!important;border:1px solid #434343!important;border-radius:12px!important;}
body.premium-ui #booking-overlay .success-code {color:#cbcbcb!important;letter-spacing:.08em!important;}
body.premium-ui #booking-overlay .success-screen h2 {font-family:inherit!important;font-weight:600!important;}
body.premium-ui .flatpickr-calendar {background:#222222!important;border-color:#434343!important;}
body.premium-ui .flatpickr-day.selected {background:#bfbfbf!important;color:#171717!important;border-color:#bfbfbf!important;}
@media (max-width:1100px) and (min-width:769px) {
 body.premium-ui.admin-page-body .admin-topbar-layout {flex-wrap:wrap!important;gap:12px!important;}
 body.premium-ui.admin-page-body .admin-top-actions {order:3!important;width:100%!important;margin:0!important;justify-content:space-between!important;}
 body.premium-ui.admin-page-body .admin-topbar-start {margin-left:auto!important;}
}
@media (max-width:900px) {
body.premium-ui #booking-overlay .booking-modal,
body.premium-ui #mybookings-overlay .my-bookings-modal {border:0!important;border-radius:0!important;}

 body.premium-ui :is(#booking-overlay,#mybookings-overlay) .modal-header {margin:0 -20px 24px!important;padding:calc(16px + env(safe-area-inset-top)) 20px 16px!important;}
 body.premium-ui #booking-overlay .modal-nav {margin-left:-20px!important;margin-right:-20px!important;padding:16px 20px calc(16px + env(safe-area-inset-bottom))!important;}
}
@media (max-width:768px) {
 body.premium-ui.admin-page-body .admin-topbar-page {padding:12px 16px!important;max-height:100dvh;overflow-y:auto;}
 body.premium-ui.admin-page-body .admin-topbar-layout {display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:0 12px!important;}
 body.premium-ui.admin-page-body .admin-brand {grid-row:1!important;grid-column:1!important;justify-content:flex-start!important;}
 body.premium-ui.admin-page-body .admin-brand img {height:32px!important;}
 body.premium-ui.admin-page-body .admin-menu-toggle {grid-row:1!important;grid-column:2!important;background:#262626!important;border-color:#474747!important;}
 body.premium-ui.admin-page-body .admin-top-actions,body.premium-ui.admin-page-body .admin-topbar-start {display:none!important;margin:0!important;grid-column:1/-1!important;max-height:none!important;opacity:1!important;overflow:visible!important;pointer-events:auto!important;}
 body.premium-ui.admin-page-body.admin-menu-open .admin-top-actions {display:flex!important;flex-direction:column!important;grid-row:2!important;padding:18px 0 8px!important;gap:8px!important;}
 body.premium-ui.admin-page-body.admin-menu-open .admin-topbar-start {display:flex!important;grid-row:3!important;padding:8px 0!important;gap:8px!important;}
 body.premium-ui.admin-page-body .admin-header-nav {display:flex!important;flex-direction:column!important;width:100%!important;gap:5px!important;}
 body.premium-ui.admin-page-body .admin-header-tab {text-align:left!important;justify-content:flex-start!important;min-height:46px!important;padding:12px 16px!important;}
 body.premium-ui.admin-page-body .admin-topbar-start .admin-link-btn {flex:1!important;}
 body.premium-ui.admin-page-body:not(.admin-authenticated) .admin-topbar-start {display:flex!important;grid-row:1!important;grid-column:2!important;width:auto!important;}


 body.premium-ui.admin-page-body .premium-page-heading {margin-bottom:20px;}
 body.premium-ui.admin-page-body .premium-workspace-label {display:none;}
 body.premium-ui.admin-page-body .admin-kpis {grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;margin-bottom:18px!important;}
 body.premium-ui.admin-page-body .admin-kpi.premium-kpi {padding:14px!important;min-height:108px!important;}
 body.premium-ui.admin-page-body .admin-kpi-value {font-size:27px!important;}
 body.premium-ui.admin-page-body .admin-kpi-label {font-size:11px!important;}
 body.premium-ui.admin-page-body .admin-card {padding:16px!important;border-radius:15px!important;}
 body.premium-ui.admin-page-body .admin-toolbar {align-items:stretch!important;}
 body.premium-ui.admin-page-body .scheduler-top-controls {width:100%!important;justify-content:flex-start!important;gap:10px!important;}
 body.premium-ui.admin-page-body .scheduler-top-controls>.admin-toolbar-group:first-child {display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;width:100%!important;}
 body.premium-ui.admin-page-body .scheduler-top-controls>.admin-toolbar-group .admin-pill {padding:8px 10px!important;font-size:11px!important;}
 body.premium-ui.admin-page-body .scheduler-period-label {width:100%!important;text-align:left!important;}
 body.premium-ui.admin-page-body .scheduler-add-btn {margin-left:auto!important;min-width:0!important;font-size:12px!important;}
 body.premium-ui.admin-page-body .scheduler-legend {gap:8px 12px!important;font-size:10px!important;}
 body.premium-ui.admin-page-body .records-toolbar-actions {width:100%!important;}
 body.premium-ui.admin-page-body .records-toolbar-actions .admin-search {width:100%!important;flex-basis:100%!important;}
 body.premium-ui.admin-page-body :is(input,select,textarea) {font-size:16px!important;}
body.premium-ui.admin-page-body #slot-quick-panel .slot-quick-dialog {border-radius:0!important;background:#1a1a1a!important;}

 body.premium-ui.admin-page-body #slot-quick-panel .slot-quick-top {background:#1a1a1a!important;background-image:none!important;box-shadow:none!important;}
 body.premium-ui.admin-page-body #slot-quick-panel .quick-booking-form {background:#222222!important;border-color:#3a3a3a!important;}
 body.premium-ui.admin-page-body .admin-login-card-page {margin:5vh auto!important;padding:24px!important;}
 body.premium-ui #booking-overlay :is(input,select,textarea),body.premium-ui #mybookings-overlay input {font-size:16px!important;}
 body.premium-ui #booking-overlay .option-card {padding:16px!important;}
 body.premium-ui #booking-overlay .modal-nav .btn-next {white-space:normal!important;font-size:13px!important;}
 body.premium-ui :is(.admin-form-grid,.tools-modal-grid,.form-row) {grid-template-columns:minmax(0,1fr)!important;}
}
@media (max-width:380px) {
 body.premium-ui.admin-page-body .admin-kpi-icon {display:none!important;}
 body.premium-ui.admin-page-body .admin-card {padding:12px!important;}
 body.premium-ui.admin-page-body .scheduler-add-btn {width:100%!important;margin:0!important;}
 body.premium-ui #booking-overlay .modal-nav .btn-next {padding:12px!important;}
}
/* Never allow layout overrides to expose hidden auth controls or inactive panes. */
body.premium-ui .hidden,body.premium-ui.admin-page-body .hidden {display:none!important;}
@media (prefers-reduced-motion:reduce) {
 body.premium-ui *,body.premium-ui *::before,body.premium-ui *::after {animation:none!important;transition:none!important;scroll-behavior:auto!important;}
}
body.premium-ui.admin-page-body .scheduler-month-pill.is-block-pill {background:#2a2a2a!important;color:#b7b7b7!important;border-color:#464646!important;}
body.premium-ui.premium-cancel {font-family:Inter,ui-sans-serif,system-ui,sans-serif!important;overflow:auto;min-height:100dvh;}
body.premium-ui.premium-cancel .card {background:#1a1a1a;border-color:#383838;border-radius:20px;}
body.premium-ui.premium-cancel h1 {font-family:inherit;font-size:clamp(26px,6vw,40px);line-height:1.2;font-weight:600;}
body.premium-ui.premium-cancel .status-ok {color:#d1d1d1;}
body.premium-ui.premium-cancel .btn-ghost {border-radius:12px;letter-spacing:0;text-transform:none;font-family:inherit;}

/* Monochrome studio / left-hand navigation */
body.premium-ui {--gold:#f2f2f2;--gold-light:#fff;--gold-dark:#999;--ui-accent:#eee;background:#080808!important;}
body.premium-ui.admin-page-body .admin-topbar-layout {display:flex!important;flex-wrap:nowrap!important;gap:16px!important;}
body.premium-ui.admin-page-body .admin-menu-toggle {display:flex!important;order:-1!important;flex:0 0 44px!important;}
body.premium-ui.admin-page-body .admin-menu-toggle.hidden {display:none!important;}
body.premium-ui.admin-page-body .admin-brand {order:0!important;}
body.premium-ui.admin-page-body .admin-top-actions {display:flex!important;order:1!important;width:auto!important;margin-left:auto!important;opacity:1!important;max-height:none!important;pointer-events:auto!important;}
body.premium-ui.admin-page-body .admin-main-grid {display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:20px!important;margin-top:20px!important;}
body.premium-ui.admin-page-body .records-card {margin-top:20px!important;}
body.premium-ui.admin-page-body .premium-page-heading {margin-bottom:24px!important;}
body.premium-ui.admin-page-body .premium-sidebar {background:#101010!important;border-right:1px solid #303030!important;box-shadow:20px 0 80px #0006;}


body.premium-ui .premium-sidebar-backdrop {position:fixed;inset:0;z-index:2399;background:#000c;opacity:0;visibility:hidden;transition:opacity .18s ease,visibility .18s ease;will-change:opacity;}
body.premium-ui .premium-sidebar-backdrop.active {opacity:1;visibility:visible;}
body.premium-ui .premium-sidebar-head {display:flex;align-items:center;justify-content:space-between;gap:12px;}
body.premium-ui .premium-sidebar-head h2 {font-size:21px;line-height:1.4;margin-top:4px;}
body.premium-ui .premium-menu-label {font-size:11px;color:#939393;letter-spacing:.02em;margin:0 10px 10px;}
body.premium-ui.admin-page-body #admin-sidebar .admin-header-nav {display:flex!important;flex-direction:column!important;gap:5px!important;background:transparent!important;padding:0!important;border:0!important;}
body.premium-ui.admin-page-body #admin-sidebar .admin-header-tab {display:flex!important;justify-content:flex-start!important;text-align:left!important;width:100%!important;min-height:46px!important;padding:12px 14px!important;border-radius:10px!important;font-size:13px!important;}
body.premium-ui.admin-page-body #admin-sidebar .admin-header-tab.active {background:#f1f1f1!important;color:#111!important;}
body.premium-ui.admin-page-body #admin-sidebar .admin-tools-grid {display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:5px!important;}
body.premium-ui.admin-page-body #admin-sidebar .tool-launch-btn {background:transparent!important;border:1px solid transparent!important;min-height:44px!important;padding:11px 14px!important;color:#c9c9c9!important;text-align:left!important;font-size:13px!important;}
body.premium-ui.admin-page-body #admin-sidebar .tool-launch-btn:hover {background:#242424!important;color:#fff!important;border-color:#363636!important;}
body.premium-ui .premium-sidebar-account {margin-top:auto;padding-top:18px;border-top:1px solid #2b2b2b;}
body.premium-ui.admin-page-body #admin-sidebar .admin-topbar-start {display:flex!important;flex-direction:column!important;gap:8px!important;opacity:1!important;max-height:none!important;pointer-events:auto!important;width:100%!important;margin:0!important;}
body.premium-ui.admin-page-body #admin-sidebar .admin-topbar-start .admin-link-btn {width:100%!important;min-height:44px!important;font-size:12px!important;}
body.premium-ui.admin-page-body #admin-sidebar .admin-link-btn-back::before {content:none!important;}
body.premium-ui.admin-page-body #notifications-toggle {font-size:12px!important;min-height:42px!important;}
@media(max-width:768px) {
 body.premium-ui.admin-page-body .admin-topbar-page {padding:12px!important;}
 body.premium-ui.admin-page-body .admin-topbar-layout {gap:10px!important;}
 body.premium-ui.admin-page-body .admin-brand img {max-width:110px!important;height:29px!important;}
 body.premium-ui.admin-page-body #notifications-toggle {padding:8px!important;font-size:11px!important;}
 body.premium-ui.admin-page-body .admin-top-actions {padding:0!important;}


}
@media(prefers-reduced-motion:reduce) {
body.premium-ui .premium-sidebar-backdrop {transition:none!important;}
}
body.premium-ui.admin-authenticated .premium-login-back {display:none!important;}
body.premium-ui:not(.admin-authenticated) .premium-login-back {margin-left:auto;white-space:nowrap;}

/* === NEXA front booking polish v2: brighter controls, white selected text, mobile UX === */
body.premium-ui:not(.admin-page-body) :is(.btn-primary,.btn-next,.btn-dark){
  background:#f4f4f4!important;
  color:#0c0c0c!important;
  border-color:#f4f4f4!important;
  border-radius:8px!important;
  min-height:48px!important;
  padding:.82rem 1.4rem!important;
  font-weight:700!important;
}
body.premium-ui:not(.admin-page-body) :is(.btn-primary,.btn-next,.btn-dark):hover:not(:disabled){
  background:#ffffff!important;
  border-color:#ffffff!important;
  transform:translateY(-1px)!important;
}
body.premium-ui:not(.admin-page-body) :is(.btn-outline,.btn-back,.nav-cta){
  background:#202020!important;
  color:#f3f3f3!important;
  border-color:#444!important;
  border-radius:8px!important;
  min-height:46px!important;
}
body.premium-ui:not(.admin-page-body) :is(.btn-outline,.btn-back,.nav-cta):hover{
  background:#2b2b2b!important;
  color:#fff!important;
  border-color:#777!important;
}
body.premium-ui:not(.admin-page-body) button:disabled{
  opacity:.34!important;
}

/* Keep selected services dark and premium; never invert the copy to black. */
body.premium-ui #booking-overlay #service-options .option-card{
  border-radius:11px!important;
  background:#232323!important;
  border:1px solid #3c3c3c!important;
  color:#f2f2f2!important;
  box-shadow:none!important;
  transform:none!important;
}
body.premium-ui #booking-overlay #service-options .option-card:hover:not(.selected){
  background:#292929!important;
  border-color:#666!important;
  transform:none!important;
}
body.premium-ui #booking-overlay #service-options .option-card.selected{
  background:#2b2b2b!important;
  color:#fff!important;
  border-color:#eeeeee!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.16)!important;
  transform:none!important;
}
body.premium-ui #booking-overlay #service-options .option-card.selected :is(.option-name,.option-detail,.option-price){
  color:#fff!important;
}
body.premium-ui #booking-overlay #service-options .option-card.selected .option-detail{
  color:#cfcfcf!important;
}
body.premium-ui #booking-overlay #service-options .option-card.selected .option-price{
  color:#f2f2f2!important;
}
body.premium-ui #booking-overlay #service-options .option-card.selected::after{
  background:#f2f2f2!important;
  color:#111!important;
  border:0!important;
  width:24px!important;
  height:24px!important;
  border-radius:50%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
body.premium-ui #booking-overlay #service-options .option-card.selected::before{
  display:none!important;
}

body.premium-ui #booking-overlay .booking-modal{
  border-radius:18px!important;
}
body.premium-ui #booking-overlay .modal-nav{
  gap:10px!important;
}
body.premium-ui #booking-overlay :is(.double-booking-box,.second-appointment-box,.booking-summary,.calendar-wrap){
  border-radius:11px!important;
}
body.premium-ui #booking-overlay :is(.time-slot,.cal-day,.cal-nav){
  border-radius:8px!important;
}

@media (max-width:900px){
  body.premium-ui #booking-overlay,
  body.premium-ui #mybookings-overlay{
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
body.premium-ui #booking-overlay .booking-modal,
body.premium-ui #mybookings-overlay .my-bookings-modal {
    border-radius:0!important;
    overscroll-behavior-y:contain!important;
  }

  body.premium-ui #booking-overlay .booking-modal .modal-header,
  body.premium-ui #mybookings-overlay .my-bookings-modal .modal-header{
    margin-left:-16px!important;
    margin-right:-16px!important;
    padding-left:16px!important;
    padding-right:16px!important;
    box-shadow:none!important;
  }
  body.premium-ui #booking-overlay .progress-bar{
    margin-bottom:10px!important;
  }
  body.premium-ui #booking-overlay .prog-labels{
    margin-bottom:18px!important;
    gap:8px!important;
  }
  body.premium-ui #booking-overlay .prog-label{
    font-size:9px!important;
    white-space:nowrap!important;
  }
  body.premium-ui #booking-overlay .step-title-book{
    font-size:1.55rem!important;
    line-height:1.15!important;
    margin-bottom:5px!important;
  }
  body.premium-ui #booking-overlay .step-subtitle{
    margin-bottom:16px!important;
    font-size:11px!important;
    line-height:1.55!important;
  }
  body.premium-ui #booking-overlay #service-options.options-grid{
    gap:10px!important;
  }
  body.premium-ui #booking-overlay #service-options .option-card{
    min-height:0!important;
    padding:15px 46px 15px 15px!important;
    text-align:left!important;
    align-items:stretch!important;
  }
  body.premium-ui #booking-overlay #service-options .option-name{
    justify-content:flex-start!important;
    text-align:left!important;
    font-size:15px!important;
    line-height:1.35!important;
  }
  body.premium-ui #booking-overlay #service-options .option-detail{
    text-align:left!important;
    font-size:11.5px!important;
    line-height:1.55!important;
    margin-top:5px!important;
  }
  body.premium-ui #booking-overlay #service-options .option-price{
    padding-top:10px!important;
    font-size:12px!important;
  }
  body.premium-ui #booking-overlay #service-options .double-booking-box{
    border-radius:10px!important;
    padding:13px 14px!important;
  }
  body.premium-ui #booking-overlay .modal-nav{
    position:sticky!important;
    bottom:0!important;
    z-index:60!important;
    margin-left:-16px!important;
    margin-right:-16px!important;
    margin-top:18px!important;
    padding:12px 16px calc(12px + env(safe-area-inset-bottom))!important;
    background:#1a1a1a!important;
    background-image:none!important;
    border-top:1px solid #303030!important;
    box-shadow:0 -10px 28px rgba(0,0,0,.32)!important;
  }
  body.premium-ui #booking-overlay .modal-nav :is(.btn-next,.btn-back){
    min-height:48px!important;
    border-radius:8px!important;
    font-size:13px!important;
    padding:12px 14px!important;
  }
  body.premium-ui #booking-overlay .time-slots{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:9px!important;
  }
  body.premium-ui #booking-overlay .time-slot{
    min-height:50px!important;
  }
  body.premium-ui #booking-overlay :is(input,select,textarea){
    border-radius:8px!important;
  }
}

@media (max-width:430px){


  body.premium-ui #booking-overlay .booking-modal .modal-header,
  body.premium-ui #mybookings-overlay .my-bookings-modal .modal-header,
  body.premium-ui #booking-overlay .modal-nav{
    margin-left:-13px!important;
    margin-right:-13px!important;
    padding-left:13px!important;
    padding-right:13px!important;
  }
  body.premium-ui #booking-overlay .modal-nav{
    grid-template-columns:1fr!important;
  }
  body.premium-ui #booking-overlay .time-slots{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

/* === Admin Calendar V3 — stable interaction, iOS mobile calendar, semantic states === */
body.premium-ui.admin-page-body .scheduler-card,
body.premium-ui.admin-page-body .scheduler-board,
body.premium-ui.admin-page-body .scheduler-board-wrap{
  overflow-anchor:none!important;
}
body.premium-ui.admin-page-body .scheduler-month-grid.calendar-animate{
  animation:none!important;
  transform:none!important;
}

/* Clear semantic colors without turning the interface into a rainbow. */
body.premium-ui.admin-page-body .status-chip,
body.premium-ui.admin-page-body .payment-chip{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:25px!important;
  padding:4px 8px!important;
  border:1px solid transparent!important;
  border-radius:7px!important;
  font-size:10px!important;
  font-weight:700!important;
  line-height:1.15!important;
  white-space:nowrap!important;
}
body.premium-ui.admin-page-body .status-confirmed{
  background:rgba(52,199,89,.14)!important;color:#67dc84!important;border-color:rgba(52,199,89,.34)!important;
}
body.premium-ui.admin-page-body .status-completed{
  background:rgba(10,132,255,.14)!important;color:#69b6ff!important;border-color:rgba(10,132,255,.36)!important;
}
body.premium-ui.admin-page-body .status-pending{
  background:rgba(255,159,10,.14)!important;color:#ffb74d!important;border-color:rgba(255,159,10,.34)!important;
}
body.premium-ui.admin-page-body .status-rescheduled{
  background:rgba(191,90,242,.14)!important;color:#d191f7!important;border-color:rgba(191,90,242,.34)!important;
}
body.premium-ui.admin-page-body .status-cancelled{
  background:rgba(255,69,58,.13)!important;color:#ff7770!important;border-color:rgba(255,69,58,.34)!important;
}
body.premium-ui.admin-page-body .status-no_show{
  background:rgba(142,142,147,.15)!important;color:#c2c2c7!important;border-color:rgba(142,142,147,.34)!important;
}
body.premium-ui.admin-page-body .status-blocked{
  background:rgba(142,142,147,.12)!important;color:#b8b8bd!important;border-color:rgba(142,142,147,.26)!important;
}
body.premium-ui.admin-page-body .payment-paid{
  background:rgba(48,209,88,.14)!important;color:#72e28d!important;border-color:rgba(48,209,88,.36)!important;
}
body.premium-ui.admin-page-body .payment-pending{
  background:rgba(255,214,10,.12)!important;color:#ffe05c!important;border-color:rgba(255,214,10,.30)!important;
}
body.premium-ui.admin-page-body .payment-na{
  background:rgba(142,142,147,.10)!important;color:#99999e!important;border-color:rgba(142,142,147,.20)!important;
}
body.premium-ui.admin-page-body .mini-btn.success{
  background:rgba(48,209,88,.12)!important;color:#7be596!important;border-color:rgba(48,209,88,.3)!important;
}
body.premium-ui.admin-page-body .mini-btn.danger,
body.premium-ui.admin-page-body .admin-link-btn-danger{
  background:rgba(255,69,58,.10)!important;color:#ff817a!important;border-color:rgba(255,69,58,.28)!important;
}

/* Status filter buttons mirror the state they represent. */
body.premium-ui.admin-page-body .records-card [data-filter="pending"]{color:#ffb74d!important;border-color:rgba(255,159,10,.22)!important}
body.premium-ui.admin-page-body .records-card [data-filter="confirmed"]{color:#67dc84!important;border-color:rgba(52,199,89,.22)!important}
body.premium-ui.admin-page-body .records-card [data-filter="completed"]{color:#69b6ff!important;border-color:rgba(10,132,255,.22)!important}
body.premium-ui.admin-page-body .records-card [data-filter="cancelled"]{color:#ff7770!important;border-color:rgba(255,69,58,.22)!important}
body.premium-ui.admin-page-body .records-card [data-filter="pending"].active{background:rgba(255,159,10,.16)!important;border-color:rgba(255,159,10,.45)!important;color:#ffc46b!important}
body.premium-ui.admin-page-body .records-card [data-filter="confirmed"].active{background:rgba(52,199,89,.16)!important;border-color:rgba(52,199,89,.45)!important;color:#82e79a!important}
body.premium-ui.admin-page-body .records-card [data-filter="completed"].active{background:rgba(10,132,255,.16)!important;border-color:rgba(10,132,255,.45)!important;color:#82c2ff!important}
body.premium-ui.admin-page-body .records-card [data-filter="cancelled"].active{background:rgba(255,69,58,.15)!important;border-color:rgba(255,69,58,.42)!important;color:#ff918b!important}

/* Calendar appointments get a state rail + a payment dot. */
body.premium-ui.admin-page-body :is(.scheduler-item.booking,.scheduler-month-pill.is-booking-pill){
  position:relative!important;
  overflow:hidden!important;
}
body.premium-ui.admin-page-body :is(.scheduler-item.booking,.scheduler-month-pill.is-booking-pill).calendar-status-confirmed{box-shadow:inset 3px 0 0 #34c759!important}
body.premium-ui.admin-page-body :is(.scheduler-item.booking,.scheduler-month-pill.is-booking-pill).calendar-status-pending{box-shadow:inset 3px 0 0 #ff9f0a!important}
body.premium-ui.admin-page-body :is(.scheduler-item.booking,.scheduler-month-pill.is-booking-pill).calendar-status-completed{box-shadow:inset 3px 0 0 #0a84ff!important}
body.premium-ui.admin-page-body :is(.scheduler-item.booking,.scheduler-month-pill.is-booking-pill).calendar-status-rescheduled{box-shadow:inset 3px 0 0 #bf5af2!important}
body.premium-ui.admin-page-body :is(.scheduler-item.booking,.scheduler-month-pill.is-booking-pill).calendar-status-no_show{box-shadow:inset 3px 0 0 #8e8e93!important}
body.premium-ui.admin-page-body .scheduler-month-pill.is-booking-pill::after{
  content:"";width:6px;height:6px;border-radius:50%;margin-left:auto;flex:0 0 6px;background:#ffd60a;
}
body.premium-ui.admin-page-body .scheduler-month-pill.is-booking-pill.calendar-payment-paid::after{background:#30d158}
body.premium-ui.admin-page-body .scheduler-month-pill.is-booking-pill.calendar-payment-pending::after{background:#ffd60a}

/* Quick-create success: make adding a second appointment a first-class action. */
body.premium-ui.admin-page-body .quick-booking-success{
  width:min(560px,100%);
  margin:0 auto;
  padding:28px;
  display:grid;
  justify-items:center;
  text-align:center;
  gap:16px;
  background:#202020;
  border:1px solid #3c3c3c;
  border-radius:18px;
}
body.premium-ui.admin-page-body .quick-booking-success.hidden{display:none!important}
body.premium-ui.admin-page-body .quick-booking-success-icon{
  width:52px;height:52px;border-radius:50%;display:grid;place-items:center;
  background:rgba(48,209,88,.14);border:1px solid rgba(48,209,88,.32);color:#74e591;font-size:25px;font-weight:800;
}
body.premium-ui.admin-page-body .quick-booking-success-copy{display:grid;gap:5px}
body.premium-ui.admin-page-body .quick-booking-success-copy>span{font-size:10px;letter-spacing:.11em;text-transform:uppercase;color:#999}
body.premium-ui.admin-page-body .quick-booking-success-copy strong{font-size:20px;color:#fff;letter-spacing:-.02em}
body.premium-ui.admin-page-body .quick-booking-success-copy small{font-size:12px;color:#aaa;line-height:1.55}
body.premium-ui.admin-page-body .quick-booking-success-actions{display:flex;gap:9px;justify-content:center;flex-wrap:wrap;width:100%}
body.premium-ui.admin-page-body .quick-booking-success-actions .btn-primary{background:#f2f2f2!important;color:#111!important;border-color:#f2f2f2!important}

/* Analytics payment tiles are instantly readable too. */
body.premium-ui.admin-page-body #analytics-payments .analytics-mini:nth-child(1) strong,
body.premium-ui.admin-page-body #analytics-payments .analytics-mini:nth-child(3) strong{color:#72e28d!important}
body.premium-ui.admin-page-body #analytics-payments .analytics-mini:nth-child(2) strong,
body.premium-ui.admin-page-body #analytics-payments .analytics-mini:nth-child(4) strong{color:#ffe05c!important}

/* iOS Calendar-style month view on touch/mobile layouts. */
body.premium-ui.admin-page-body .ios-calendar-mobile{
  width:100%;
  background:#111;
  border:1px solid #303030;
  border-radius:18px;
  padding:12px 10px 10px;
}
body.premium-ui.admin-page-body .ios-calendar-weekdays,
body.premium-ui.admin-page-body .ios-calendar-grid{
  display:grid;
  grid-template-columns:repeat(7,minmax(0,1fr));
}
body.premium-ui.admin-page-body .ios-calendar-weekdays{padding:2px 0 7px}
body.premium-ui.admin-page-body .ios-calendar-weekdays span{
  text-align:center;color:#747474;font-size:10px;font-weight:700;line-height:1;text-transform:uppercase;
}
body.premium-ui.admin-page-body .ios-calendar-day{
  appearance:none;
  border:0!important;
  background:transparent!important;
  color:#f3f3f3!important;
  min-width:0!important;
  min-height:48px!important;
  padding:4px 1px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:3px!important;
  border-radius:10px!important;
  cursor:pointer;
}
body.premium-ui.admin-page-body .ios-calendar-day.is-outside{opacity:.25}
body.premium-ui.admin-page-body .ios-calendar-number{
  width:31px;height:31px;display:grid;place-items:center;border-radius:50%;font-size:13px;font-weight:600;color:inherit;
}
body.premium-ui.admin-page-body .ios-calendar-day.is-selected .ios-calendar-number{background:#f4f4f4;color:#111}
body.premium-ui.admin-page-body .ios-calendar-day.is-today:not(.is-selected) .ios-calendar-number{background:#ff453a;color:#fff}
body.premium-ui.admin-page-body .ios-calendar-day.is-blackout:not(.is-selected) .ios-calendar-number{color:#ff817a}
body.premium-ui.admin-page-body .ios-event-dots{height:6px;display:flex;align-items:center;justify-content:center;gap:2px}
body.premium-ui.admin-page-body .ios-event-dot{width:4px;height:4px;border-radius:50%;background:#8e8e93;display:block}
body.premium-ui.admin-page-body .ios-event-dot.dot-confirmed{background:#34c759}
body.premium-ui.admin-page-body .ios-event-dot.dot-pending{background:#ff9f0a}
body.premium-ui.admin-page-body .ios-event-dot.dot-completed{background:#0a84ff}
body.premium-ui.admin-page-body .ios-event-dot.dot-rescheduled{background:#bf5af2}
body.premium-ui.admin-page-body .ios-event-dot.dot-paid{background:#30d158}
body.premium-ui.admin-page-body .ios-event-dot.dot-blackout{background:#ff453a}
body.premium-ui.admin-page-body .ios-event-dot.dot-blocked{background:#8e8e93}

body.premium-ui.admin-page-body .ios-calendar-agenda{
  margin-top:12px;
  background:#171717;
  border:1px solid #303030;
  border-radius:18px;
  overflow:hidden;
}
body.premium-ui.admin-page-body .ios-calendar-agenda-head{
  display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 14px 12px;border-bottom:1px solid #2b2b2b;
}
body.premium-ui.admin-page-body .ios-calendar-agenda-head>div{display:grid;gap:2px;min-width:0}
body.premium-ui.admin-page-body .ios-calendar-agenda-head small{font-size:9px;letter-spacing:.12em;color:#777}
body.premium-ui.admin-page-body .ios-calendar-agenda-head strong{font-size:16px;line-height:1.25;color:#fff;text-transform:capitalize}
body.premium-ui.admin-page-body .ios-calendar-add{
  appearance:none;border:1px solid #e9e9e9;background:#ededed;color:#111;border-radius:9px;min-height:36px;padding:8px 11px;font-size:11px;font-weight:750;white-space:nowrap;
}
body.premium-ui.admin-page-body .ios-calendar-agenda-list{display:grid}
body.premium-ui.admin-page-body .ios-calendar-agenda-item{
  appearance:none;width:100%;min-width:0;border:0;border-bottom:1px solid #2b2b2b;background:transparent;color:#fff;display:grid;grid-template-columns:48px minmax(0,1fr) 16px;gap:10px;align-items:center;padding:12px 13px;text-align:left;position:relative;
}
body.premium-ui.admin-page-body .ios-calendar-agenda-item:last-child{border-bottom:0}
body.premium-ui.admin-page-body .ios-calendar-agenda-item::before{content:"";position:absolute;left:0;top:10px;bottom:10px;width:3px;border-radius:3px;background:#8e8e93}
body.premium-ui.admin-page-body .ios-calendar-agenda-item.calendar-status-confirmed::before{background:#34c759}
body.premium-ui.admin-page-body .ios-calendar-agenda-item.calendar-status-pending::before{background:#ff9f0a}
body.premium-ui.admin-page-body .ios-calendar-agenda-item.calendar-status-completed::before{background:#0a84ff}
body.premium-ui.admin-page-body .ios-calendar-agenda-item.calendar-status-rescheduled::before{background:#bf5af2}
body.premium-ui.admin-page-body .ios-calendar-agenda-time{font-size:12px;font-weight:700;color:#d7d7d7;font-variant-numeric:tabular-nums}
body.premium-ui.admin-page-body .ios-calendar-agenda-copy{display:grid;gap:3px;min-width:0}
body.premium-ui.admin-page-body .ios-calendar-agenda-copy>strong{font-size:13px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body.premium-ui.admin-page-body .ios-calendar-agenda-copy>small{font-size:10px;color:#8d8d8d;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body.premium-ui.admin-page-body .ios-calendar-agenda-chips{display:flex;flex-wrap:wrap;gap:5px;margin-top:3px}
body.premium-ui.admin-page-body .ios-calendar-agenda-chips :is(.status-chip,.payment-chip){min-height:20px!important;padding:3px 6px!important;font-size:8px!important}
body.premium-ui.admin-page-body .ios-calendar-chevron{font-size:20px;color:#555;text-align:right}
body.premium-ui.admin-page-body .ios-calendar-empty{padding:24px 16px;text-align:center;display:grid;gap:4px;color:#888}
body.premium-ui.admin-page-body .ios-calendar-empty strong{color:#d8d8d8;font-size:13px}
body.premium-ui.admin-page-body .ios-calendar-empty span{font-size:11px}
body.premium-ui.admin-page-body .ios-calendar-empty.is-blackout strong{color:#ff817a}

@media (max-width:760px), (pointer:coarse) and (max-width:1180px), (pointer:coarse) and (max-height:900px){
  body.premium-ui.admin-page-body .scheduler-card{
    padding:13px!important;
    border-radius:18px!important;
  }
  body.premium-ui.admin-page-body .scheduler-card .admin-toolbar{gap:11px!important}
  body.premium-ui.admin-page-body .scheduler-card h2{font-size:20px!important;line-height:1.2!important}
  body.premium-ui.admin-page-body .scheduler-top-controls{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
  body.premium-ui.admin-page-body .scheduler-period-label{
    order:-2!important;
    width:100%!important;
    padding:0!important;
    text-align:left!important;
    font-size:12px!important;
    font-weight:650!important;
    color:#eee!important;
    text-transform:capitalize!important;
    letter-spacing:-.01em!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls>.admin-toolbar-group:first-child{
    order:-1!important;
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    width:100%!important;
    padding:3px!important;
    border-radius:11px!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls>.admin-toolbar-group:last-child{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    width:100%!important;
    padding:3px!important;
    border-radius:11px!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls .admin-pill{
    min-height:35px!important;
    border-radius:8px!important;
    padding:6px!important;
    font-size:10px!important;
  }
  body.premium-ui.admin-page-body #scheduler-new-booking{
    width:100%!important;
    min-height:40px!important;
    border-radius:9px!important;
    margin:0!important;
    font-size:11px!important;
  }
  body.premium-ui.admin-page-body .scheduler-legend{
    display:flex!important;
    gap:6px 10px!important;
    padding:8px 1px 10px!important;
    font-size:9px!important;
  }
  body.premium-ui.admin-page-body .scheduler-board-wrap{
    width:100%!important;
    max-width:100%!important;
    overflow:visible!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
  }
  body.premium-ui.admin-page-body .scheduler-board{
    width:100%!important;
    max-width:100%!important;
    overflow:visible!important;
    border:0!important;
    background:transparent!important;
  }
  body.premium-ui.admin-page-body .scheduler-quick-actions{padding-top:10px!important}
  body.premium-ui.admin-page-body .scheduler-quick-actions .mini-btn{width:100%!important;min-height:37px!important}
  body.premium-ui.admin-page-body .quick-booking-success{padding:22px 16px;border-radius:15px}
  body.premium-ui.admin-page-body .quick-booking-success-actions{display:grid;grid-template-columns:1fr;width:100%}
  body.premium-ui.admin-page-body .quick-booking-success-actions :is(.btn-primary,.admin-link-btn){width:100%!important}
  body.premium-ui.admin-page-body .records-card .admin-table-wrap{overflow-x:hidden!important}
}

@media (max-width:390px){
  body.premium-ui.admin-page-body .ios-calendar-mobile{padding-left:6px;padding-right:6px}
  body.premium-ui.admin-page-body .ios-calendar-day{min-height:44px!important}
  body.premium-ui.admin-page-body .ios-calendar-number{width:29px;height:29px;font-size:12px}
  body.premium-ui.admin-page-body .ios-calendar-agenda-item{grid-template-columns:42px minmax(0,1fr) 14px;padding:11px 10px}
  body.premium-ui.admin-page-body .ios-calendar-agenda-head{padding:12px 11px 10px}
  body.premium-ui.admin-page-body .ios-calendar-add{padding:7px 9px;font-size:10px}
}

/* === NEXA v46: iPad / tablet responsive admin navigation === */
/* Covers iPad mini through iPad Pro in portrait + landscape without changing
   the desktop/mobile calendar behaviour. */
@media (min-width:700px) and (max-width:1366px) {
  body.premium-ui.admin-page-body.admin-authenticated .admin-topbar-page{
    padding-top:12px!important;
    padding-bottom:12px!important;
    padding-left:max(16px, env(safe-area-inset-left))!important;
    padding-right:max(16px, env(safe-area-inset-right))!important;
    min-height:72px;
    display:flex;
    align-items:center;
  }
  body.premium-ui.admin-page-body.admin-authenticated .admin-topbar-layout{
    width:100%!important;
    max-width:1540px!important;
    display:grid!important;
    grid-template-columns:48px minmax(120px,1fr) auto!important;
    align-items:center!important;
    justify-items:stretch!important;
    gap:14px!important;
    flex-wrap:nowrap!important;
  }
  body.premium-ui.admin-page-body.admin-authenticated .admin-menu-toggle{
    display:flex!important;
    grid-column:1!important;
    grid-row:1!important;
    order:0!important;
    width:48px!important;
    height:48px!important;
    min-width:48px!important;
    min-height:48px!important;
    padding:0!important;
    align-items:center!important;
    justify-content:center!important;
    flex-direction:column!important;
    gap:5px!important;
    border-radius:13px!important;
    background:#202020!important;
    border:1px solid #3b3b3b!important;
    box-shadow:none!important;
    touch-action:manipulation;
    -webkit-tap-highlight-color:transparent;
  }
  body.premium-ui.admin-page-body.admin-authenticated .admin-menu-toggle span{
    width:19px!important;
    height:1.5px!important;
    border-radius:999px!important;
    background:#f2f2f2!important;
    margin:0!important;
  }
  body.premium-ui.admin-page-body.admin-authenticated .admin-brand{
    grid-column:2!important;
    grid-row:1!important;
    order:0!important;
    min-width:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
  }
  body.premium-ui.admin-page-body.admin-authenticated .admin-brand img{
    height:34px!important;
    width:auto!important;
    max-width:145px!important;
  }
  body.premium-ui.admin-page-body.admin-authenticated .admin-top-actions{
    grid-column:3!important;
    grid-row:1!important;
    order:0!important;
    width:auto!important;
    margin:0!important;
    padding:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    opacity:1!important;
    max-height:none!important;
    pointer-events:auto!important;
  }
  body.premium-ui.admin-page-body.admin-authenticated #notifications-toggle{
    min-height:46px!important;
    padding:10px 13px!important;
    border-radius:12px!important;
    white-space:nowrap!important;
    touch-action:manipulation;
  }
body.premium-ui.admin-page-body #admin-sidebar.premium-sidebar {
    box-sizing:border-box!important;
    border-right:1px solid rgba(255,255,255,.12)!important;
    background:rgba(15,15,15,.985)!important;
    box-shadow:28px 0 90px rgba(0,0,0,.48)!important;
  }

  body.premium-ui.admin-page-body #admin-sidebar .premium-sidebar-head{
    position:sticky!important;
    top:calc(-20px - env(safe-area-inset-top))!important;
    z-index:3!important;
    margin:calc(-20px - env(safe-area-inset-top)) -18px 0 max(-18px, calc(-1 * env(safe-area-inset-left)))!important;
    padding:calc(20px + env(safe-area-inset-top)) 18px 15px max(18px, env(safe-area-inset-left))!important;
    background:linear-gradient(180deg,#0f0f0f 82%,rgba(15,15,15,.92))!important;
    border-bottom:1px solid rgba(255,255,255,.08)!important;
    backdrop-filter:blur(18px)!important;
    -webkit-backdrop-filter:blur(18px)!important;
  }
  body.premium-ui.admin-page-body #admin-sidebar .premium-sidebar-head h2{
    font-size:23px!important;
    line-height:1.2!important;
  }
  body.premium-ui.admin-page-body #premium-sidebar-close{
    width:46px!important;
    height:46px!important;
    min-width:46px!important;
    min-height:46px!important;
    padding:0!important;
    border-radius:12px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    font-size:15px!important;
    touch-action:manipulation;
  }
  body.premium-ui.admin-page-body #admin-sidebar .premium-sidebar-group{
    display:grid!important;
    gap:7px!important;
    min-width:0!important;
  }
  body.premium-ui.admin-page-body #admin-sidebar .premium-menu-label{
    margin:0 8px 7px!important;
    font-size:10px!important;
    letter-spacing:.1em!important;
    color:#8f8f8f!important;
    text-transform:uppercase!important;
  }
  body.premium-ui.admin-page-body #admin-sidebar .admin-header-nav{
    width:100%!important;
    min-width:0!important;
  }
  body.premium-ui.admin-page-body #admin-sidebar .admin-header-tab,
  body.premium-ui.admin-page-body #admin-sidebar .tool-launch-btn,
  body.premium-ui.admin-page-body #admin-sidebar .admin-topbar-start .admin-link-btn{
    min-height:50px!important;
    border-radius:12px!important;
    padding:12px 14px!important;
    font-size:13px!important;
    line-height:1.3!important;
    touch-action:manipulation;
    -webkit-tap-highlight-color:transparent;
  }
  body.premium-ui.admin-page-body #admin-sidebar .admin-tools-grid{
    width:100%!important;
    min-width:0!important;
    gap:7px!important;
  }
  body.premium-ui.admin-page-body #admin-sidebar .premium-sidebar-account{
    width:100%!important;
    padding-top:15px!important;
  }
  body.premium-ui.admin-page-body #admin-sidebar .admin-topbar-start{
    gap:8px!important;
  }
  body.premium-ui .premium-sidebar-backdrop{
    background:rgba(0,0,0,.68)!important;
    backdrop-filter:blur(7px)!important;
    -webkit-backdrop-filter:blur(7px)!important;
  }
}

/* Wider iPads in landscape: use the extra drawer width without making buttons tiny. */
@media (min-width:900px) and (max-width:1366px) and (orientation:landscape) {


  body.premium-ui.admin-page-body #admin-sidebar .admin-tools-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }
  body.premium-ui.admin-page-body #admin-sidebar .tool-launch-btn{
    min-height:58px!important;
    white-space:normal!important;
  }
}

/* iPad mini / 768-ish portrait needs a tablet drawer, not the near-full-width phone drawer. */
@media (min-width:700px) and (max-width:820px) and (orientation:portrait) {


  body.premium-ui.admin-page-body #admin-sidebar .admin-tools-grid{
    grid-template-columns:minmax(0,1fr)!important;
  }
  body.premium-ui.admin-page-body.admin-authenticated .admin-brand img{
    height:31px!important;
    max-width:128px!important;
  }
  body.premium-ui.admin-page-body.admin-authenticated #notifications-toggle{
    font-size:11px!important;
    padding:9px 11px!important;
  }
}

/* Short iPad landscape: reduce vertical padding so every tool remains reachable. */
@media (min-width:700px) and (max-width:1366px) and (max-height:820px) and (orientation:landscape) {


  body.premium-ui.admin-page-body #admin-sidebar .premium-sidebar-head{
    position:static!important;
    margin:0!important;
    padding:0 0 12px!important;
    background:transparent!important;
  }
  body.premium-ui.admin-page-body #admin-sidebar .admin-header-tab,
  body.premium-ui.admin-page-body #admin-sidebar .admin-topbar-start .admin-link-btn{
    min-height:46px!important;
  }
  body.premium-ui.admin-page-body #admin-sidebar .tool-launch-btn{
    min-height:50px!important;
  }
}
/* v46 — tighter authenticated admin vertical rhythm.
   Removes the unnecessary dead space below the top bar without affecting login. */

@media (max-width:1024px){


}
@media (max-width:768px){


}

/* ============================================================
   v9 — FAST APP MOTION / REACT-LIKE FEEL
   Short GPU-friendly micro-interactions. No smooth page scrolling.
   ============================================================ */
body.premium-ui{
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  text-rendering:optimizeLegibility;
}
body.premium-ui :is(button,a,[role="button"],.option-card,.time-slot,.cal-day){
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
}
body.premium-ui footer{
  content-visibility:auto;
  contain-intrinsic-size:520px;
}

/* Make interactions feel immediate instead of using long 300–400ms fades. */
body.premium-ui :is(.btn-primary,.btn-outline,.btn-next,.btn-back,.nav-cta,.option-card,.time-slot,.cal-day,.cal-nav,.booking-item,.admin-pill,.mini-btn,.tool-launch-btn,.scheduler-month-pill,.scheduler-month-add,.scheduler-month-more,.admin-action-btn){
  transition-duration:.14s!important;
  transition-timing-function:cubic-bezier(.2,.8,.2,1)!important;
}
body.premium-ui :is(button,a,.option-card,.time-slot,.cal-day):active{
  transform:scale(.985);
}

/* Public overlays stay mounted and animate like an app sheet instead of display:none reflow. */
body.premium-ui :is(#booking-overlay,#mybookings-overlay).overlay{
  display:flex!important;
  flex-direction:column;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .14s ease,visibility 0s linear .14s!important;
  backdrop-filter:blur(4px)!important;
  -webkit-backdrop-filter:blur(4px)!important;
}
body.premium-ui :is(#booking-overlay,#mybookings-overlay).overlay.active{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transition-delay:0s!important;
}
body.premium-ui #booking-overlay .booking-modal,
body.premium-ui #mybookings-overlay .my-bookings-modal {
  opacity:.96;
  transition:transform .16s cubic-bezier(.2,.8,.2,1),opacity .14s ease!important;
  will-change:transform,opacity;
}

body.premium-ui #booking-overlay.active .booking-modal,
body.premium-ui #mybookings-overlay.active .my-bookings-modal {
  opacity:1;
}


/* Booking steps switch with a very quick app-like enter motion. */
@media (prefers-reduced-motion:no-preference){
  html.ui-ready body.premium-ui:not(.admin-page-body) .hero-content{
    animation:uiHeroIn .32s cubic-bezier(.2,.8,.2,1) both;
  }
  body.premium-ui #booking-overlay .step-screen.active{
    animation:uiStepIn .15s cubic-bezier(.2,.8,.2,1) both;
  }
  body.premium-ui #booking-overlay .time-slot:not(.taken){
    animation:uiSlotIn .13s ease both;
  }
  body.premium-ui.admin-page-body .admin-view-pane.ui-pane-enter{
    animation:uiPaneIn .16s cubic-bezier(.2,.8,.2,1) both;
  }
}
@keyframes uiHeroIn{from{opacity:.25;transform:translate3d(0,8px,0)}to{opacity:1;transform:none}}
@keyframes uiStepIn{from{opacity:.55;transform:translate3d(8px,0,0)}to{opacity:1;transform:none}}
@keyframes uiSlotIn{from{opacity:.55;transform:translate3d(0,3px,0)}to{opacity:1;transform:none}}
@keyframes uiPaneIn{from{opacity:.7;transform:translate3d(0,5px,0)}to{opacity:1;transform:none}}

/* Instant visual response while availability is being fetched. */
body.premium-ui #booking-overlay .time-slot-skeleton{
  min-height:54px;
  pointer-events:none;
  border-color:#343434!important;
  background:linear-gradient(100deg,#202020 20%,#292929 40%,#202020 60%)!important;
  background-size:220% 100%!important;
  overflow:hidden;
}
body.premium-ui #booking-overlay .time-slot-skeleton span,
body.premium-ui #booking-overlay .time-slot-skeleton small{
  display:block;
  width:58%;
  height:8px;
  margin:4px auto;
  border-radius:999px;
  background:#383838;
}
body.premium-ui #booking-overlay .time-slot-skeleton small{width:36%;height:6px;opacity:.7}
@media (prefers-reduced-motion:no-preference){
  body.premium-ui #booking-overlay .time-slot-skeleton{animation:uiSkeleton .8s linear infinite}
}
@keyframes uiSkeleton{to{background-position:-220% 0}}

/* Admin sheets / menu respond quickly and stay GPU-friendly. */
body.premium-ui.admin-page-body .admin-drawer-panel,
body.premium-ui.admin-page-body .premium-sidebar{
  transition-duration:.17s!important;
  transition-timing-function:cubic-bezier(.2,.8,.2,1)!important;
  will-change:transform;
}
body.premium-ui :is(.admin-drawer-backdrop,.admin-modal-backdrop,.slot-quick-backdrop,.premium-sidebar-backdrop){
  transition-duration:.14s!important;
  backdrop-filter:blur(3px)!important;
  -webkit-backdrop-filter:blur(3px)!important;
}
body.premium-ui.admin-page-body :is(.admin-kpi,.analytics-card,.analytics-overview-card,.client-card){
  contain:layout paint style;
}

/* Avoid expensive blur on iPad/phones; visually almost identical on a dark UI. */
@media (pointer:coarse){
  body.premium-ui :is(#booking-overlay,#mybookings-overlay).overlay,
  body.premium-ui :is(.admin-drawer-backdrop,.admin-modal-backdrop,.slot-quick-backdrop,.premium-sidebar-backdrop){
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
}

/* Preserve prior scroll-stability work. Animations never animate scroll position. */
html,body.premium-ui{scroll-behavior:auto!important}

/* ============================================================
   v10 — PHONE STABILITY + ORIGINAL MONTH CALENDAR + MOBILE NAV
   ============================================================ */
@media (max-width:760px){
  html,body.premium-ui{
    width:100%!important;
    max-width:100%!important;
    overflow-x:clip!important;
    overscroll-behavior-x:none!important;
  }
}
@media (max-width:699px), (pointer:coarse) and (max-height:600px){
  /* The viewport itself never travels left/right on touch. */
  html{
    width:100%!important;
    max-width:100%!important;
    overflow-x:clip!important;
    overscroll-behavior-x:none!important;
  }
  body.premium-ui{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow-x:clip!important;
    overscroll-behavior-x:none!important;
    position:relative;
  }
  body.premium-ui :is(.admin-page-shell,.admin-wrap,.admin-app-layout,.admin-view-pane,.scheduler-card,.scheduler-board-wrap,.scheduler-board){
    min-width:0!important;
    max-width:100%!important;
  }
body.premium-ui.admin-page-body .admin-page-shell {
    width:100%!important;
    overscroll-behavior-x:none!important;
    touch-action:pan-y pinch-zoom;
  }


  /* ---------- Public mobile header ---------- */
  body.premium-ui:not(.admin-page-body) .site-nav{
    box-sizing:border-box!important;
    width:100%!important;
    min-height:66px!important;
    padding:calc(10px + env(safe-area-inset-top)) max(13px,env(safe-area-inset-right)) 10px max(13px,env(safe-area-inset-left))!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 44px!important;
    align-items:center!important;
    gap:10px!important;
    background:rgba(10,10,10,.97)!important;
    border-bottom:1px solid rgba(255,255,255,.09)!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
    box-shadow:0 10px 34px rgba(0,0,0,.22)!important;
    overflow:visible!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav .nav-logo{
    min-width:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav .nav-logo img{
    display:block!important;
    width:auto!important;
    height:31px!important;
    max-width:132px!important;
    object-fit:contain!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav .nav-menu-toggle{
    display:flex!important;
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    border-radius:12px!important;
    background:#181818!important;
    border:1px solid rgba(255,255,255,.12)!important;
    justify-self:end!important;
    box-shadow:none!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav .nav-menu-toggle span{
    width:18px!important;
    height:1.5px!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav .nav-links{
    grid-column:1 / -1!important;
    width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    gap:7px!important;
    max-height:0!important;
    opacity:0!important;
    overflow:hidden!important;
    pointer-events:none!important;
    transform:translate3d(0,-4px,0);
    transition:max-height .17s cubic-bezier(.2,.8,.2,1),opacity .13s ease,transform .17s cubic-bezier(.2,.8,.2,1),padding .17s ease!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.menu-open .nav-links{
    max-height:150px!important;
    opacity:1!important;
    pointer-events:auto!important;
    transform:none!important;
    padding:7px 0 2px!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav .nav-links .nav-cta{
    width:100%!important;
    min-height:45px!important;
    padding:10px 13px!important;
    border-radius:11px!important;
    background:#151515!important;
    border:1px solid rgba(255,255,255,.11)!important;
    color:#f5f5f5!important;
    font-size:10.5px!important;
    font-weight:650!important;
    letter-spacing:.025em!important;
    text-transform:none!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav .nav-links .nav-cta:active{
    background:#202020!important;
    color:#fff!important;
  }
  body.premium-ui:not(.admin-page-body) #hero{
    width:100%!important;
    max-width:100%!important;
    overflow:hidden!important;
  }

  /* ---------- Admin mobile header ---------- */
  body.premium-ui.admin-page-body.admin-authenticated .admin-topbar-page{
    box-sizing:border-box!important;
    width:100%!important;
    min-height:66px!important;
    padding:calc(9px + env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) 9px max(12px,env(safe-area-inset-left))!important;
    background:rgba(14,14,14,.98)!important;
    border-bottom:1px solid rgba(255,255,255,.09)!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
    overflow:hidden!important;
  }
  body.premium-ui.admin-page-body.admin-authenticated .admin-topbar-layout{
    width:100%!important;
    min-width:0!important;
    display:grid!important;
    grid-template-columns:44px minmax(0,1fr) auto!important;
    grid-template-rows:44px!important;
    align-items:center!important;
    gap:9px!important;
    margin:0!important;
    padding:0!important;
  }
  body.premium-ui.admin-page-body.admin-authenticated .admin-menu-toggle{
    display:flex!important;
    grid-column:1!important;
    grid-row:1!important;
    justify-self:start!important;
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    min-height:44px!important;
    padding:0!important;
    border-radius:12px!important;
    background:#1a1a1a!important;
    border:1px solid rgba(255,255,255,.13)!important;
    box-shadow:none!important;
  }
  body.premium-ui.admin-page-body.admin-authenticated .admin-menu-toggle span{
    width:18px!important;
    height:1.5px!important;
    background:#f4f4f4!important;
  }
  body.premium-ui.admin-page-body.admin-authenticated .admin-brand{
    grid-column:2!important;
    grid-row:1!important;
    width:100%!important;
    min-width:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    overflow:hidden!important;
  }
  body.premium-ui.admin-page-body.admin-authenticated .admin-brand img{
    display:block!important;
    width:auto!important;
    height:30px!important;
    max-width:118px!important;
    object-fit:contain!important;
  }
  body.premium-ui.admin-page-body.admin-authenticated .admin-top-actions{
    grid-column:3!important;
    grid-row:1!important;
    width:auto!important;
    max-width:108px!important;
    min-width:0!important;
    max-height:none!important;
    overflow:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    padding:0!important;
    margin:0!important;
  }
  body.premium-ui.admin-page-body.admin-authenticated #notifications-toggle{
    width:auto!important;
    min-width:0!important;
    min-height:42px!important;
    padding:8px 10px!important;
    border-radius:11px!important;
    background:#191919!important;
    border:1px solid rgba(255,255,255,.11)!important;
    color:#f2f2f2!important;
    font-size:9.5px!important;
    font-weight:650!important;
    letter-spacing:0!important;
    white-space:nowrap!important;
  }
/* Drawer is a real mobile navigation panel, not a stretched desktop card. */
body.premium-ui.admin-page-body #admin-sidebar.premium-sidebar {
    box-sizing:border-box!important;
    border:0!important;
    border-right:1px solid rgba(255,255,255,.11)!important;
    border-radius:0 20px 20px 0!important;
    background:#101010!important;
    box-shadow:8px 0 20px rgba(0,0,0,.45)!important;
    will-change:transform!important;
  }

  body.premium-ui.admin-page-body #admin-sidebar .premium-sidebar-head{
    position:sticky!important;
    top:calc(-15px - env(safe-area-inset-top))!important;
    z-index:5!important;
    margin:calc(-15px - env(safe-area-inset-top)) -13px 0 max(-13px,calc(-1 * env(safe-area-inset-left)))!important;
    padding:calc(15px + env(safe-area-inset-top)) 13px 12px max(13px,env(safe-area-inset-left))!important;
    background:#101010!important;
    border-bottom:1px solid rgba(255,255,255,.08)!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
  body.premium-ui.admin-page-body #admin-sidebar .premium-sidebar-head h2{
    font-size:20px!important;
    line-height:1.15!important;
  }
  body.premium-ui.admin-page-body #premium-sidebar-close{
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
    min-height:42px!important;
    padding:0!important;
    border-radius:11px!important;
  }
  body.premium-ui.admin-page-body #admin-sidebar .premium-sidebar-group{
    width:100%!important;
    min-width:0!important;
    gap:6px!important;
  }
  body.premium-ui.admin-page-body #admin-sidebar .admin-header-nav,
  body.premium-ui.admin-page-body #admin-sidebar .admin-tools-grid,
  body.premium-ui.admin-page-body #admin-sidebar .admin-topbar-start{
    width:100%!important;
    min-width:0!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:6px!important;
  }
  body.premium-ui.admin-page-body #admin-sidebar :is(.admin-header-tab,.tool-launch-btn,.admin-topbar-start .admin-link-btn){
    width:100%!important;
    min-width:0!important;
    min-height:47px!important;
    padding:10px 12px!important;
    border-radius:11px!important;
    justify-content:flex-start!important;
    text-align:left!important;
    font-size:12px!important;
    line-height:1.25!important;
  }
  body.premium-ui .premium-sidebar-backdrop{
    background:rgba(0,0,0,.7)!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }

  /* ---------- Original ZIP compact month calendar on phones ---------- */
  body.premium-ui.admin-page-body .scheduler-board-wrap,
  body.premium-ui.admin-page-body .scheduler-board{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    overflow-x:hidden!important;
  }
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    display:grid!important;
    grid-template-columns:repeat(7,minmax(0,1fr))!important;
    gap:0!important;
    border-radius:20px!important;
    overflow:hidden!important;
  }
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month .scheduler-month-head{
    min-width:0!important;
    min-height:32px!important;
    padding:.4rem .1rem!important;
    font-size:.58rem!important;
    letter-spacing:.05em!important;
    justify-content:center!important;
    text-align:center!important;
  }
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month .scheduler-month-cell{
    min-width:0!important;
    min-height:90px!important;
    padding:.34rem!important;
    overflow:hidden!important;
  }
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month .scheduler-month-top{
    min-width:0!important;
    gap:.22rem!important;
    margin-bottom:.25rem!important;
  }
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month .scheduler-month-date-btn{
    min-width:0!important;
    min-height:auto!important;
  }
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month .scheduler-month-date{
    font-size:.92rem!important;
    line-height:1!important;
  }
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month .scheduler-month-add{
    width:20px!important;
    height:20px!important;
    min-width:20px!important;
    min-height:20px!important;
    font-size:.74rem!important;
    padding:0!important;
  }
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month .scheduler-month-events{
    min-width:0!important;
    gap:.24rem!important;
    overflow:hidden!important;
  }
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month :is(.scheduler-month-pill,.scheduler-month-empty,.scheduler-month-more){
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    min-height:0!important;
    padding:.22rem .3rem!important;
    border-radius:9px!important;
    overflow:hidden!important;
  }
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month .scheduler-month-pill span{
    flex:0 0 auto!important;
    max-width:27px!important;
    font-size:.54rem!important;
    line-height:1.1!important;
  }
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month .scheduler-month-pill strong{
    min-width:0!important;
    font-size:.62rem!important;
    line-height:1.15!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    color:#fff!important;
  }
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month .scheduler-month-pill em{
    display:none!important;
  }
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month :is(.scheduler-month-empty,.scheduler-month-more){
    font-size:.56rem!important;
    line-height:1.15!important;
    color:#fff!important;
    white-space:nowrap!important;
    text-overflow:ellipsis!important;
  }
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month .scheduler-month-count-badge{
    order:2!important;
    margin-left:auto!important;
    min-width:17px!important;
    height:17px!important;
    padding:0 4px!important;
    font-size:.55rem!important;
  }
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month .scheduler-month-more:is(:hover,:focus,:active){
    color:#fff!important;
    background:rgba(255,255,255,.06)!important;
  }
}

@media (max-width:380px){
  body.premium-ui.admin-page-body.admin-authenticated .admin-topbar-layout{
    grid-template-columns:42px minmax(0,1fr) auto!important;
    gap:7px!important;
  }
  body.premium-ui.admin-page-body.admin-authenticated .admin-menu-toggle{
    width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;
  }
  body.premium-ui.admin-page-body.admin-authenticated .admin-brand img{
    height:28px!important;
    max-width:106px!important;
  }
  body.premium-ui.admin-page-body.admin-authenticated #notifications-toggle{
    min-height:40px!important;
    padding:7px 8px!important;
    font-size:8.8px!important;
  }
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month .scheduler-month-cell{
    min-height:84px!important;
    padding:.28rem!important;
  }
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month .scheduler-month-pill strong{
    font-size:.57rem!important;
  }
}


/* ============================================================
   v11 — MOBILE X-AXIS LOCK + PREMIUM APPOINTMENT RECORD CARDS
   ============================================================ */
@media (max-width:699px), (pointer:coarse) and (max-height:600px){
  /* Hard lock the document to the viewport. This prevents the tiny
     left/right drag/bounce that was still visible on phones. */
  html,
  body.premium-ui{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    overflow-x:hidden!important;
    overscroll-behavior-x:none!important;
  }
  body.premium-ui{
    position:relative!important;
    touch-action:pan-y pinch-zoom!important;
  }
  body.premium-ui > *,
  body.premium-ui :is(.page-shell,.admin-page-shell,.admin-wrap,.admin-app-layout,.admin-view-pane,.admin-card,.compact-admin-section,.scheduler-card,.records-card,.daily-agenda-card){
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }
  body.premium-ui :is(main,header,section,nav,footer){
    max-width:100%!important;
  }
body.premium-ui.admin-page-body .admin-page-shell,
body.premium-ui.admin-page-body .admin-view-pane {
    width:100%!important;
  }
body.premium-ui.admin-page-body .admin-app-layout {
    width:100%!important;
    overflow-x:hidden!important;
  }

  body.premium-ui:not(.admin-page-body) :is(.site-nav,#hero,.hero,.booking-shell,.booking-modal-overlay){
    max-width:100%!important;
    overflow-x:hidden!important;
  }
  /* Use the containing block instead of 100vw on phone overlays. */
  body.premium-ui :is(.booking-modal,.slot-quick-dialog){
    max-width:100%!important;
    box-sizing:border-box!important;
  }
  body.premium-ui.admin-page-body .records-card{
    width:100%!important;
    overflow:hidden!important;
  }
  body.premium-ui.admin-page-body .records-card .compact-toolbar,
  body.premium-ui.admin-page-body .records-card .records-toolbar-actions,
  body.premium-ui.admin-page-body .records-card .admin-table-wrap,
  body.premium-ui.admin-page-body .records-card .admin-data-table,
  body.premium-ui.admin-page-body .records-card .admin-data-table tbody{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }
  body.premium-ui.admin-page-body .records-card .admin-table-wrap{
    overflow:visible!important;
  }
  body.premium-ui.admin-page-body .records-card .admin-data-table{
    min-width:0!important;
    table-layout:fixed!important;
  }

  /* ---------- "Όλες οι εγγραφές" — proper mobile cards ---------- */
  body.premium-ui.admin-page-body .records-card .admin-data-table tr.record-row{
    --record-accent:#8e8e93;
    position:relative!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    grid-template-areas:
      "code status"
      "client client"
      "service service"
      "date time"
      "payment payment"
      "actions actions"!important;
    column-gap:.7rem!important;
    row-gap:0!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0 0 .78rem!important;
    padding:.88rem .88rem .82rem .98rem!important;
    border:1px solid rgba(255,255,255,.09)!important;
    border-radius:17px!important;
    background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.014))!important;
    box-shadow:0 8px 24px rgba(0,0,0,.16)!important;
    overflow:hidden!important;
  }
  body.premium-ui.admin-page-body .records-card .admin-data-table tr.record-row::after{
    content:"";
    position:absolute;
    left:0;
    top:12px;
    bottom:12px;
    width:3px;
    border-radius:0 3px 3px 0;
    background:var(--record-accent);
    opacity:.9;
  }
  body.premium-ui.admin-page-body .records-card .record-row.record-status-confirmed{--record-accent:#30d158}
  body.premium-ui.admin-page-body .records-card .record-row.record-status-pending{--record-accent:#ff9f0a}
  body.premium-ui.admin-page-body .records-card .record-row.record-status-completed{--record-accent:#0a84ff}
  body.premium-ui.admin-page-body .records-card .record-row.record-status-rescheduled{--record-accent:#bf5af2}
  body.premium-ui.admin-page-body .records-card .record-row.record-status-cancelled{--record-accent:#ff453a}
  body.premium-ui.admin-page-body .records-card .record-row.record-status-no_show{--record-accent:#ff375f}
  body.premium-ui.admin-page-body .records-card .record-row.record-status-blocked{--record-accent:#8e8e93}

  body.premium-ui.admin-page-body .records-card .admin-data-table tr.record-row td{
    display:block!important;
    width:auto!important;
    min-width:0!important;
    max-width:100%!important;
    padding:0!important;
    margin:0!important;
    border:0!important;
    overflow:visible!important;
    color:#f5f5f7!important;
    font-size:.78rem!important;
    line-height:1.42!important;
  }
  body.premium-ui.admin-page-body .records-card .admin-data-table tr.record-row td::before{
    display:none!important;
  }
  body.premium-ui.admin-page-body .records-card td[data-label="Κωδικός"]{grid-area:code!important;align-self:center!important}
  body.premium-ui.admin-page-body .records-card td[data-label="Πελάτης / τίτλος"]{grid-area:client!important;padding-top:.68rem!important}
  body.premium-ui.admin-page-body .records-card td[data-label="Υπηρεσία / barber"]{grid-area:service!important;padding-top:.25rem!important;padding-bottom:.68rem!important}
  body.premium-ui.admin-page-body .records-card td[data-label="Ημερομηνία"]{grid-area:date!important}
  body.premium-ui.admin-page-body .records-card td[data-label="Ώρα"]{grid-area:time!important}
  body.premium-ui.admin-page-body .records-card td[data-label="Κατάσταση"]{grid-area:status!important;justify-self:end!important;align-self:center!important;text-align:right!important}
  body.premium-ui.admin-page-body .records-card td[data-label="Πληρωμή"]{grid-area:payment!important;padding-top:.62rem!important}
  body.premium-ui.admin-page-body .records-card td[data-label="Ενέργειες"]{
    grid-area:actions!important;
    padding-top:.7rem!important;
    margin-top:.7rem!important;
    border-top:1px solid rgba(255,255,255,.075)!important;
  }

  body.premium-ui.admin-page-body .record-code{
    display:inline-flex!important;
    align-items:center!important;
    min-height:25px!important;
    max-width:100%!important;
    padding:0 .5rem!important;
    border:1px solid rgba(255,255,255,.08)!important;
    border-radius:8px!important;
    background:rgba(255,255,255,.045)!important;
    color:rgba(255,255,255,.58)!important;
    font-family:ui-monospace,SFMono-Regular,Menlo,monospace!important;
    font-size:.61rem!important;
    letter-spacing:.035em!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  body.premium-ui.admin-page-body .records-card td[data-label="Πελάτης / τίτλος"] strong{
    display:block!important;
    color:#fff!important;
    font-size:1rem!important;
    line-height:1.22!important;
    font-weight:720!important;
    letter-spacing:-.015em!important;
    overflow-wrap:anywhere!important;
  }
  body.premium-ui.admin-page-body .records-card td[data-label="Πελάτης / τίτλος"] > div{
    margin-top:.28rem!important;
    color:rgba(255,255,255,.46)!important;
    font-size:.69rem!important;
    line-height:1.45!important;
  }
  body.premium-ui.admin-page-body .records-card td[data-label="Υπηρεσία / barber"]{
    color:rgba(255,255,255,.66)!important;
    font-size:.75rem!important;
  }
  body.premium-ui.admin-page-body .records-card td[data-label="Υπηρεσία / barber"] > div{
    margin-top:.12rem!important;
    color:rgba(255,255,255,.38)!important;
    font-size:.65rem!important;
  }
  body.premium-ui.admin-page-body .records-card td[data-label="Ημερομηνία"],
  body.premium-ui.admin-page-body .records-card td[data-label="Ώρα"]{
    min-height:54px!important;
    padding:.54rem .62rem!important;
    border-radius:11px!important;
    background:rgba(255,255,255,.035)!important;
    border:1px solid rgba(255,255,255,.065)!important;
    color:#f5f5f7!important;
    font-size:.73rem!important;
    font-weight:620!important;
  }
  body.premium-ui.admin-page-body .records-card td[data-label="Ημερομηνία"]::before,
  body.premium-ui.admin-page-body .records-card td[data-label="Ώρα"]::before{
    display:block!important;
    content:attr(data-label)!important;
    width:auto!important;
    margin:0 0 .2rem!important;
    color:rgba(255,255,255,.34)!important;
    font-size:.52rem!important;
    line-height:1!important;
    font-weight:650!important;
    letter-spacing:.11em!important;
    text-transform:uppercase!important;
  }
  body.premium-ui.admin-page-body .records-card td[data-label="Ώρα"] > div{
    color:rgba(255,255,255,.38)!important;
    font-size:.61rem!important;
    margin-top:.1rem!important;
  }
  body.premium-ui.admin-page-body .records-card .status-chip,
  body.premium-ui.admin-page-body .records-card .payment-chip{
    min-height:27px!important;
    padding:.34rem .55rem!important;
    border-radius:9px!important;
    font-size:.57rem!important;
    font-weight:700!important;
    line-height:1!important;
    letter-spacing:.045em!important;
    white-space:nowrap!important;
  }
  body.premium-ui.admin-page-body .records-card td[data-label="Πληρωμή"]::before{
    display:inline-block!important;
    content:"ΠΛΗΡΩΜΗ"!important;
    width:auto!important;
    margin:0 .45rem 0 0!important;
    color:rgba(255,255,255,.34)!important;
    font-size:.52rem!important;
    font-weight:650!important;
    letter-spacing:.11em!important;
    vertical-align:middle!important;
  }
  body.premium-ui.admin-page-body .records-card td[data-label="Πληρωμή"] .payment-chip{
    vertical-align:middle!important;
  }
  body.premium-ui.admin-page-body .records-card td[data-label="Ενέργειες"] .mini-actions{
    width:100%!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:.45rem!important;
  }
  body.premium-ui.admin-page-body .records-card td[data-label="Ενέργειες"] .mini-btn,
  body.premium-ui.admin-page-body .records-card td[data-label="Ενέργειες"] button{
    width:100%!important;
    min-width:0!important;
    min-height:38px!important;
    padding:.55rem .5rem!important;
    border-radius:10px!important;
    border:1px solid rgba(255,255,255,.09)!important;
    background:rgba(255,255,255,.045)!important;
    color:#f5f5f7!important;
    font-size:.62rem!important;
    font-weight:680!important;
    letter-spacing:.015em!important;
    text-transform:none!important;
    justify-content:center!important;
  }
  body.premium-ui.admin-page-body .records-card td[data-label="Ενέργειες"] .mini-btn.danger{
    color:#ff6961!important;
    background:rgba(255,69,58,.07)!important;
    border-color:rgba(255,69,58,.16)!important;
  }
  body.premium-ui.admin-page-body .records-card td[data-label="Ενέργειες"] .mini-btn.success{
    color:#69e58c!important;
    background:rgba(48,209,88,.07)!important;
    border-color:rgba(48,209,88,.16)!important;
  }
  body.premium-ui.admin-page-body .records-card td[data-label="Ενέργειες"] .mini-btn.success:last-child:nth-child(3){
    grid-column:1 / -1!important;
  }

  /* Toolbar no longer widens the page. */
  body.premium-ui.admin-page-body .records-toolbar-actions{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:.45rem!important;
  }
  body.premium-ui.admin-page-body .records-toolbar-actions .admin-search{
    grid-column:1 / -1!important;
    width:100%!important;
    min-width:0!important;
  }
  body.premium-ui.admin-page-body .records-toolbar-actions .admin-pill{
    width:100%!important;
    min-width:0!important;
    padding:.55rem .45rem!important;
    text-align:center!important;
    justify-content:center!important;
  }

  /* ---------- Records modal gets the same visual language ---------- */
  body.premium-ui.admin-page-body .records-modal-list{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
  }
  body.premium-ui.admin-page-body .records-modal-item{
    --record-accent:#8e8e93;
    position:relative!important;
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0 0 .7rem!important;
    padding:.88rem!important;
    border-radius:16px!important;
    border:1px solid rgba(255,255,255,.085)!important;
    background:linear-gradient(180deg,rgba(255,255,255,.032),rgba(255,255,255,.014))!important;
    overflow:hidden!important;
  }
  body.premium-ui.admin-page-body .records-modal-item::before{
    content:"";
    position:absolute;
    left:0;top:12px;bottom:12px;width:3px;
    border-radius:0 3px 3px 0;
    background:var(--record-accent);
  }
  body.premium-ui.admin-page-body .records-modal-item.record-status-confirmed{--record-accent:#30d158}
  body.premium-ui.admin-page-body .records-modal-item.record-status-pending{--record-accent:#ff9f0a}
  body.premium-ui.admin-page-body .records-modal-item.record-status-completed{--record-accent:#0a84ff}
  body.premium-ui.admin-page-body .records-modal-item.record-status-rescheduled{--record-accent:#bf5af2}
  body.premium-ui.admin-page-body .records-modal-item.record-status-cancelled{--record-accent:#ff453a}
  body.premium-ui.admin-page-body .records-modal-top{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:.55rem!important;
    margin-bottom:.62rem!important;
  }
  body.premium-ui.admin-page-body .records-modal-main strong{
    display:block!important;
    color:#fff!important;
    font-size:.98rem!important;
    line-height:1.25!important;
    margin-bottom:.28rem!important;
  }
  body.premium-ui.admin-page-body .records-modal-date{
    color:rgba(255,255,255,.72)!important;
    font-size:.72rem!important;
  }
  body.premium-ui.admin-page-body .records-modal-service{
    color:rgba(255,255,255,.46)!important;
    font-size:.68rem!important;
    margin-top:.12rem!important;
  }
  body.premium-ui.admin-page-body .records-modal-payment{
    margin-top:.55rem!important;
  }
  body.premium-ui.admin-page-body .records-modal-actions{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:.42rem!important;
    width:100%!important;
    margin-top:.72rem!important;
    padding-top:.7rem!important;
    border-top:1px solid rgba(255,255,255,.07)!important;
  }
  body.premium-ui.admin-page-body .records-modal-actions .mini-btn,
  body.premium-ui.admin-page-body .records-modal-actions button{
    width:100%!important;
    min-height:38px!important;
    border-radius:10px!important;
    text-transform:none!important;
    letter-spacing:.015em!important;
  }
  body.premium-ui.admin-page-body .records-modal-actions .mini-btn.success:last-child:nth-child(3){
    grid-column:1 / -1!important;
  }
}

@media (max-width:380px){
  body.premium-ui.admin-page-body .records-card .admin-data-table tr.record-row{
    padding:.78rem .76rem .74rem .86rem!important;
    border-radius:15px!important;
    column-gap:.5rem!important;
  }
  body.premium-ui.admin-page-body .records-card td[data-label="Πελάτης / τίτλος"] strong{
    font-size:.94rem!important;
  }
  body.premium-ui.admin-page-body .records-card td[data-label="Ημερομηνία"],
  body.premium-ui.admin-page-body .records-card td[data-label="Ώρα"]{
    padding:.48rem .5rem!important;
    min-height:50px!important;
  }
}

/* v50 — tablet desktop calendar and consistent scroll containers. */
body.premium-ui.admin-scroll-locked,
body.premium-ui.page-scroll-locked {
  position:fixed!important;
  width:100%!important;
  overflow:hidden!important;
}
body.premium-ui :is(.admin-tools-modal-panel,.admin-drawer-panel,.slot-quick-dialog,.booking-modal,.my-bookings-modal) {
  box-sizing:border-box!important;
  min-height:0!important;
  max-height:calc(var(--visible-height, 100dvh) - 24px)!important;
  overflow-y:auto!important;
  overscroll-behavior-y:contain!important;
  -webkit-overflow-scrolling:touch;
  scroll-padding-block:76px 24px;
}
body.premium-ui :is(.admin-tools-modal-head,.admin-drawer-head,.slot-quick-top) {
  position:sticky!important;top:0!important;z-index:5;
  background:#1a1a1a!important; flex-shrink:0;
}
body.premium-ui :is(.close-btn,[data-close-tools-modal],[data-close-clients-modal],[data-close-client-history],[data-close-drawer],#slot-quick-close) {
  min-width:44px;min-height:44px;touch-action:manipulation;
}
body.premium-ui #time-section {scroll-margin-top:80px;outline:none;}
body.premium-ui #time-section:focus-visible {outline:1px solid #aaa;outline-offset:6px;}
body.premium-ui .slot-quick-grid {min-height:0!important;overflow:visible!important;flex-shrink:0;}
@media (min-width:700px) and (max-width:1366px) {
  body.premium-ui.admin-page-body :is(.admin-page-shell,.admin-wrap,.admin-app-layout,.admin-view-pane,.scheduler-card) {min-width:0!important;max-width:100%!important;}
  body.premium-ui.admin-page-body .scheduler-card {padding:16px!important;}
  body.premium-ui.admin-page-body .scheduler-board-wrap {max-width:100%!important;overflow:auto!important;touch-action:pan-x pan-y;}
  body.premium-ui.admin-page-body .scheduler-month-grid:not(.is-compact-touch-month) {width:100%!important;min-width:0!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;}
  body.premium-ui.admin-page-body .scheduler-month-cell {min-width:0!important;min-height:150px!important;padding:7px!important;}
  body.premium-ui.admin-page-body .scheduler-month-top {gap:3px!important;flex-wrap:wrap;}
  body.premium-ui.admin-page-body .scheduler-month-date {font-size:18px!important;}
  body.premium-ui.admin-page-body .scheduler-month-events {min-width:0;gap:5px!important;}
  body.premium-ui.admin-page-body :is(.scheduler-month-pill,.scheduler-month-more,.scheduler-month-empty) {min-width:0!important;min-height:44px!important;padding:6px!important;font-size:11px!important;}
  body.premium-ui.admin-page-body .scheduler-month-pill strong {font-size:11px!important;overflow:hidden;text-overflow:ellipsis;}
  body.premium-ui.admin-page-body .scheduler-month-add {min-width:30px!important;min-height:30px!important;}
  body.premium-ui.admin-page-body .scheduler-grid {min-width:780px!important;grid-template-columns:48px repeat(7,minmax(0,1fr))!important;}
  body.premium-ui.admin-page-body .scheduler-cell {min-width:0!important;padding:5px!important;}
  body.premium-ui.admin-page-body .scheduler-item {min-width:0!important;min-height:44px!important;font-size:11px!important;}
  body.premium-ui.admin-page-body .scheduler-item small {white-space:normal!important;font-size:10px!important;}
  body.premium-ui.admin-page-body .scheduler-top-controls {display:flex!important;flex-wrap:wrap!important;gap:10px!important;align-items:center!important;}
  body.premium-ui.admin-page-body .scheduler-period-label {width:auto!important;flex:1 1 190px;order:0!important;font-size:14px!important;}
  body.premium-ui.admin-page-body :is(.admin-pill,.tool-launch-btn,.admin-link-btn,.mini-btn) {min-height:44px!important;}
  body.premium-ui :is(.admin-tools-modal-panel,.slot-quick-dialog) {width:calc(100% - 32px)!important;max-width:960px!important;margin:auto!important;padding:20px!important;}
  body.premium-ui :is(.booking-modal,.my-bookings-modal) {width:calc(100% - 32px)!important;max-width:680px!important;height:auto!important;border-radius:18px!important;}
  body.premium-ui .tools-modal-grid {grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important;}
  body.premium-ui :is(.tools-form-card,.tools-list-card,.records-modal-main) {min-width:0;}
  body.premium-ui :is(.records-modal-actions,.drawer-actions) {flex-wrap:wrap;gap:8px;}
}
@media (pointer:coarse) {
  body.premium-ui :is(input,select,textarea) {font-size:16px!important;}
  body.premium-ui :is(.admin-modal-backdrop,.admin-drawer-backdrop,.slot-quick-backdrop,.overlay) {backdrop-filter:none!important;-webkit-backdrop-filter:none!important;}
  body.premium-ui :is(.cal-day,.time-slot) {min-height:44px;touch-action:manipulation;}
}
@media (prefers-reduced-motion:reduce) {
  body.premium-ui *,body.premium-ui *::before,body.premium-ui *::after {animation:none!important;transition:none!important;scroll-behavior:auto!important;}
}
/* Keep the dialog inside the usable viewport when Safari opens the keyboard. */
body.premium-ui :is(.overlay,.admin-modal-shell,.admin-drawer,#slot-quick-panel.active) {
  top:var(--visible-top, 0px)!important;
  bottom:auto!important;
  height:var(--visible-height, 100dvh)!important;
  min-height:0!important;
  box-sizing:border-box!important;
}
body.premium-ui .booking-modal > * {flex-shrink:0;}
@media (min-width:700px) and (max-width:1366px) {
  body.premium-ui.admin-page-body .scheduler-card #scheduler-board {width:100%!important;min-width:0!important;}
}

/* V51 — editorial product showcase, no commerce controls. */
body.premium-ui .product-showcase{padding:96px max(24px,calc((100% - 1180px)/2));background:#151515;scroll-margin-top:88px;}
body.premium-ui .showcase-intro{max-width:720px;margin-bottom:56px;}
body.premium-ui .showcase-eyebrow{font-size:11px;letter-spacing:.18em;color:#a0a0a0;}
body.premium-ui .showcase-intro h2{font-size:clamp(32px,4.5vw,58px);line-height:1.1;letter-spacing:-.045em;margin:20px 0;color:#f5f5f5;}
body.premium-ui .showcase-intro p{max-width:560px;color:#aaa;font-size:15px;line-height:1.8;}
body.premium-ui .product-category{margin-top:48px;}
body.premium-ui .product-category-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid #383838;padding-bottom:16px;margin-bottom:24px;}
body.premium-ui .product-category-heading h3{font-size:23px;letter-spacing:-.02em;}
body.premium-ui .product-category-heading>span{font-size:12px;color:#aaa;}
body.premium-ui .product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;}
body.premium-ui .product-card{min-width:0;}
body.premium-ui .product-photo{aspect-ratio:7/8;background:#e9e8e5;border-radius:12px;overflow:hidden;padding:20px;}
body.premium-ui .product-photo img{display:block;width:100%;height:100%;object-fit:contain;}
body.premium-ui .product-copy{padding:20px 0;overflow-wrap:anywhere;}
body.premium-ui .product-brand{display:block;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#aaa;margin-bottom:8px;}
body.premium-ui .product-copy h4{font-size:20px;line-height:1.3;margin:0 0 10px;color:#f4f4f4;}
body.premium-ui .product-copy p{font-size:14px;line-height:1.75;color:#aaa;}
body.premium-ui .showcase-empty{padding:30px 0;border-block:1px solid #383838;color:#eee;}
body.premium-ui .showcase-empty p{margin-top:8px;font-size:14px;color:#aaa;line-height:1.7;}
body.premium-ui .showcase-footnote{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;margin-top:48px;color:#aaa;font-size:13px;}
body.premium-ui .product-upload-preview{width:100%;max-height:190px;object-fit:contain;background:#e9e8e5;border-radius:10px;margin-top:12px;}
body.premium-ui .product-admin-card{display:grid;grid-template-columns:64px minmax(0,1fr);gap:14px;padding:16px 0;border-bottom:1px solid #383838;}
body.premium-ui .product-admin-card img{object-fit:contain;background:#e9e8e5;border-radius:6px;}
body.premium-ui .product-admin-card strong,body.premium-ui .product-admin-card small{display:block;overflow-wrap:anywhere;}
body.premium-ui .product-admin-card small{font-size:12px;color:#aaa;margin-top:6px;line-height:1.5;}
body.premium-ui .product-admin-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px;}
body.premium-ui #product-form{scroll-margin-top:90px;}
body.premium-ui #product-form-message{font-size:13px;line-height:1.6;}
body.premium-ui .payment-na{color:#bdbdbd!important;background:#303030!important;border-color:#494949!important;}
@media(max-width:900px){body.premium-ui .product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;}body.premium-ui .product-showcase{padding:64px 24px;}}
@media(max-width:540px){body.premium-ui .product-grid{grid-template-columns:minmax(0,1fr);}body.premium-ui .product-photo{aspect-ratio:1/1;}body.premium-ui .product-showcase{padding:56px 20px;}body.premium-ui .showcase-intro{margin-bottom:32px;}body.premium-ui .showcase-footnote{align-items:flex-start;flex-direction:column;}}


/* ============================================================
   V53 — refined admin + light booking flow + stable month days
   ============================================================ */
.booking-honeypot{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}

/* Admin: softer black/white surfaces, clearer spacing, less visual noise. */
body.premium-ui.admin-page-body{background:#0d0e10!important;color:#f4f4f5!important}
body.premium-ui.admin-page-body .admin-topbar-page{background:rgba(16,17,20,.90)!important;border-bottom:1px solid rgba(255,255,255,.07)!important;backdrop-filter:blur(18px) saturate(130%)!important;-webkit-backdrop-filter:blur(18px) saturate(130%)!important}
body.premium-ui.admin-page-body :is(.admin-card,.admin-kpi,.compact-admin-section){background:#15161a!important;border:1px solid rgba(255,255,255,.075)!important;box-shadow:0 16px 44px rgba(0,0,0,.16)!important}
body.premium-ui.admin-page-body .scheduler-card{border-radius:20px!important;padding:18px!important}
body.premium-ui.admin-page-body .scheduler-board-wrap{background:#111216!important;border:1px solid rgba(255,255,255,.075)!important;border-radius:16px!important;overflow:auto!important}
body.premium-ui.admin-page-body .scheduler-board{background:#111216!important}
body.premium-ui.admin-page-body .scheduler-month-grid:not(.is-compact-touch-month){grid-template-rows:36px repeat(6,clamp(132px,11.5vw,150px))!important;background:#111216!important}
body.premium-ui.admin-page-body .scheduler-month-head{height:36px!important;min-height:36px!important;background:#111216!important;color:#7f8289!important;border-color:rgba(255,255,255,.065)!important;font-size:10px!important;letter-spacing:.08em!important}
body.premium-ui.admin-page-body .scheduler-month-grid:not(.is-compact-touch-month) .scheduler-month-cell{min-height:0!important;height:auto!important;overflow:hidden!important;background:#17181c!important;border-color:rgba(255,255,255,.065)!important;padding:8px!important}
body.premium-ui.admin-page-body .scheduler-month-cell.is-outside{background:#131418!important;opacity:.48!important}
body.premium-ui.admin-page-body .scheduler-month-cell.is-selected{background:#202126!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.26)!important}
body.premium-ui.admin-page-body .scheduler-month-top{min-height:30px!important}
body.premium-ui.admin-page-body .scheduler-month-date{font-size:17px!important;font-weight:650!important;color:#e6e7e9!important}
body.premium-ui.admin-page-body .scheduler-month-cell.is-today .scheduler-month-date{width:28px!important;height:28px!important;display:grid!important;place-items:center!important;background:#f3f3f4!important;color:#111216!important;border-radius:50%!important}
body.premium-ui.admin-page-body .scheduler-month-events{gap:5px!important;overflow:hidden!important;min-height:0!important}
body.premium-ui.admin-page-body .scheduler-month-pill{min-height:38px!important;height:38px!important;padding:6px 8px!important;border-radius:9px!important;background:#24262b!important;border:1px solid rgba(255,255,255,.09)!important;color:#f0f0f1!important;display:grid!important;grid-template-columns:36px minmax(0,1fr)!important;grid-template-rows:auto auto!important;column-gap:6px!important;align-content:center!important;text-align:left!important;overflow:hidden!important}
body.premium-ui.admin-page-body .scheduler-month-pill>span{grid-row:1 / 3!important;font-size:9px!important;color:#aeb0b5!important;align-self:center!important}
body.premium-ui.admin-page-body .scheduler-month-pill strong{font-size:10.5px!important;line-height:1.15!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
body.premium-ui.admin-page-body .scheduler-month-pill em{font-size:8.5px!important;line-height:1.1!important;color:#898c92!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;font-style:normal!important}
body.premium-ui.admin-page-body .scheduler-month-more{min-height:29px!important;height:29px!important;padding:3px 7px!important;border:0!important;border-radius:8px!important;background:transparent!important;color:#d8d9dc!important;font-size:10px!important;font-weight:650!important;justify-content:flex-start!important;box-shadow:none!important}
body.premium-ui.admin-page-body .scheduler-month-more:hover{background:rgba(255,255,255,.065)!important;color:#fff!important}
body.premium-ui.admin-page-body .scheduler-month-add{width:28px!important;height:28px!important;min-width:28px!important;min-height:28px!important;border-radius:50%!important;background:rgba(255,255,255,.055)!important;color:#cfd0d3!important}
body.premium-ui.admin-page-body .scheduler-month-empty{min-height:34px!important;height:34px!important;padding:5px 7px!important;border-radius:8px!important;color:#73767d!important;font-size:9px!important;background:transparent!important}
body.premium-ui.admin-page-body .scheduler-period-label{font-weight:650!important;color:#f0f0f1!important;letter-spacing:-.01em!important}
body.premium-ui.admin-page-body :is(.admin-pill,.mini-btn,.tool-launch-btn,.admin-link-btn){border-radius:10px!important;transition:background .16s ease,border-color .16s ease,transform .16s ease!important}
body.premium-ui.admin-page-body :is(.admin-pill,.mini-btn,.tool-launch-btn,.admin-link-btn):active{transform:scale(.98)}
body.premium-ui.admin-page-body .premium-sidebar{background:#111216!important;border-color:rgba(255,255,255,.075)!important;box-shadow:28px 0 70px rgba(0,0,0,.34)!important}
body.premium-ui.admin-page-body .premium-sidebar-group{border-color:rgba(255,255,255,.06)!important}
body.premium-ui.admin-page-body .premium-page-heading h1{letter-spacing:-.045em!important}
/* Month day overflow sheet — Apple Calendar inspired. */
body.premium-ui.admin-page-body .admin-day-modal {box-sizing:border-box}


body.premium-ui.admin-page-body .admin-day-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.56);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);animation:v53Fade .16s ease both}
body.premium-ui.admin-page-body .admin-day-sheet {flex-direction:column;background:#f4f4f1!important;color:#151619!important;border:1px solid rgba(255,255,255,.28)!important;border-radius:24px;box-shadow:0 28px 90px rgba(0,0,0,.48)}

body.premium-ui.admin-page-body .admin-day-sheet-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:22px 22px 17px;border-bottom:1px solid #deded9;background:#f4f4f1!important}
body.premium-ui.admin-page-body .admin-day-sheet-head>div{min-width:0}
body.premium-ui.admin-page-body .admin-day-sheet-eyebrow{display:block;font-size:10px;font-weight:750;letter-spacing:.12em;color:#8a8a86;margin-bottom:5px}
body.premium-ui.admin-page-body .admin-day-sheet-head h3{margin:0;color:#111214;font-size:23px;line-height:1.15;letter-spacing:-.035em;text-transform:capitalize}
body.premium-ui.admin-page-body .admin-day-sheet-head p{margin:6px 0 0;color:#73736f;font-size:12px}
body.premium-ui.admin-page-body .admin-day-close{width:36px;height:36px;min-width:36px;border:0;border-radius:50%;background:#e5e5e0;color:#333;cursor:pointer;font-size:14px}
body.premium-ui.admin-page-body .admin-day-sheet-list{padding:8px 16px 10px;overflow:auto;overscroll-behavior:contain;background:#f4f4f1!important}
body.premium-ui.admin-page-body .admin-day-row{position:relative;padding:7px 0;border-bottom:1px solid #deded9;--day-accent:#8e8e93}
body.premium-ui.admin-page-body .admin-day-row:last-child{border-bottom:0}
body.premium-ui.admin-page-body .admin-day-row.calendar-status-confirmed{--day-accent:#34c759}
body.premium-ui.admin-page-body .admin-day-row.calendar-status-pending{--day-accent:#ff9f0a}
body.premium-ui.admin-page-body .admin-day-row.calendar-status-completed{--day-accent:#0a84ff}
body.premium-ui.admin-page-body .admin-day-row.calendar-status-rescheduled{--day-accent:#af52de}
body.premium-ui.admin-page-body .admin-day-row.is-blocked{--day-accent:#8e8e93}
body.premium-ui.admin-page-body .admin-day-row-main{position:relative;width:100%;display:grid;grid-template-columns:58px minmax(0,1fr) 18px;gap:10px;align-items:center;border:0;background:transparent;color:#17181a;text-align:left;padding:9px 8px 7px 13px;cursor:pointer;border-radius:12px}
body.premium-ui.admin-page-body .admin-day-row-main::before{content:"";position:absolute;left:2px;top:10px;bottom:8px;width:3px;border-radius:4px;background:var(--day-accent)}
body.premium-ui.admin-page-body .admin-day-row-main:hover{background:#e9e9e5}
body.premium-ui.admin-page-body .admin-day-row-main time{font-size:12px;font-weight:750;color:#55565a;font-variant-numeric:tabular-nums}
body.premium-ui.admin-page-body .admin-day-row-copy{display:grid;gap:3px;min-width:0}
body.premium-ui.admin-page-body .admin-day-row-copy strong{font-size:14px;line-height:1.2;color:#151619;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body.premium-ui.admin-page-body .admin-day-row-copy small{font-size:11px;color:#777873;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body.premium-ui.admin-page-body .admin-day-row-chevron{font-size:22px;color:#a0a09b}
body.premium-ui.admin-page-body .admin-day-row-chips{display:flex;flex-wrap:wrap;gap:5px;padding:0 8px 4px 81px}
body.premium-ui.admin-page-body .admin-day-row-chips :is(.status-chip,.payment-chip){min-height:20px!important;padding:3px 7px!important;font-size:8px!important;border-radius:999px!important}
body.premium-ui.admin-page-body .admin-day-empty{margin:10px 0;padding:24px 18px;border:1px dashed #d1d1cb;border-radius:16px;text-align:center;display:grid;gap:5px;background:#ecece8;color:#6f706c}
body.premium-ui.admin-page-body .admin-day-empty>span{font-size:9px;font-weight:750;letter-spacing:.1em;text-transform:uppercase}
body.premium-ui.admin-page-body .admin-day-empty strong{font-size:14px;color:#222326}
body.premium-ui.admin-page-body .admin-day-empty small{font-size:11px}
body.premium-ui.admin-page-body .admin-day-sheet-actions{display:flex;justify-content:space-between;gap:10px;padding:14px 18px 18px;border-top:1px solid #deded9;background:#f4f4f1!important}
body.premium-ui.admin-page-body .admin-day-sheet-actions .admin-link-btn{color:#444!important;border-color:#d1d1cc!important;background:#e9e9e5!important}
body.premium-ui.admin-page-body .admin-day-sheet-actions .btn-primary{background:#17181a!important;color:#fff!important;border-color:#17181a!important;border-radius:11px!important}

/* Public booking: light, calm, fast visual language. */
body.premium-ui:not(.admin-page-body) #booking-overlay{background:rgba(15,16,18,.58)!important;backdrop-filter:blur(16px) saturate(110%)!important;-webkit-backdrop-filter:blur(16px) saturate(110%)!important}
body.premium-ui:not(.admin-page-body) #booking-overlay.active{animation:v53Fade .17s ease both}
body.premium-ui:not(.admin-page-body) #booking-overlay .booking-modal {background:#f5f5f1!important;color:#17181a!important;border:1px solid rgba(255,255,255,.6)!important;border-radius:26px!important;box-shadow:0 34px 100px rgba(0,0,0,.44)!important}

body.premium-ui:not(.admin-page-body) #booking-overlay .modal-header{background:linear-gradient(180deg,rgba(245,245,241,.98) 82%,rgba(245,245,241,.90))!important;border:0!important;margin-bottom:20px!important;padding:0 0 12px!important}
body.premium-ui:not(.admin-page-body) #booking-overlay .modal-logo{color:#555650!important;font-size:10px!important;font-weight:750!important;letter-spacing:.1em!important}
body.premium-ui:not(.admin-page-body) #booking-overlay .close-btn{background:#e5e5df!important;color:#26272a!important;border:0!important;border-radius:50%!important;width:38px!important;height:38px!important;min-width:38px!important}
body.premium-ui:not(.admin-page-body) #booking-overlay .progress-bar{gap:6px!important}
body.premium-ui:not(.admin-page-body) #booking-overlay .prog-step{background:#d7d7d1!important;border-radius:999px!important;height:3px!important}
body.premium-ui:not(.admin-page-body) #booking-overlay .prog-step:is(.active,.done){background:#1c1d20!important}
body.premium-ui:not(.admin-page-body) #booking-overlay .prog-label{color:#9a9a94!important;font-size:9px!important}
body.premium-ui:not(.admin-page-body) #booking-overlay .prog-label.active{color:#202124!important}
body.premium-ui:not(.admin-page-body) #booking-overlay .step-screen.active{animation:v53StepIn .19s ease both}
body.premium-ui:not(.admin-page-body) #booking-overlay :is(.step-title-book,.step-screen h2){color:#151619!important;letter-spacing:-.035em!important}
body.premium-ui:not(.admin-page-body) #booking-overlay .step-subtitle{color:#70716d!important;line-height:1.6!important}
body.premium-ui:not(.admin-page-body) #booking-overlay :is(.option-card,.calendar-wrap,.booking-summary,.double-booking-box,.email-preview){background:#fff!important;border:1px solid #dfdfd9!important;color:#17181a!important;box-shadow:none!important}
body.premium-ui:not(.admin-page-body) #booking-overlay .option-card{border-radius:16px!important;padding:16px!important;transition:transform .16s ease,border-color .16s ease,background .16s ease!important}
body.premium-ui:not(.admin-page-body) #booking-overlay .option-card:hover{border-color:#bcbcb6!important;transform:translateY(-1px)}
body.premium-ui:not(.admin-page-body) #booking-overlay .option-card.selected{background:#1c1d20!important;color:#fff!important;border-color:#1c1d20!important;box-shadow:0 12px 30px rgba(0,0,0,.12)!important}
body.premium-ui:not(.admin-page-body) #booking-overlay .option-card.selected :is(.option-name,.option-detail,.option-price){color:#fff!important}
body.premium-ui:not(.admin-page-body) #booking-overlay .option-card.selected::after{color:#fff!important}
body.premium-ui:not(.admin-page-body) #booking-overlay :is(.option-name,.summary-title){color:#1b1c1f!important}
body.premium-ui:not(.admin-page-body) #booking-overlay :is(.option-detail,.summary-label,.booking-summary p){color:#747570!important}
body.premium-ui:not(.admin-page-body) #booking-overlay .calendar-wrap{border-radius:18px!important;padding:16px!important}
body.premium-ui:not(.admin-page-body) #booking-overlay :is(.cal-month-title,.cal-nav){color:#1b1c1f!important}
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-nav{background:#ecece7!important;border-color:#d9d9d3!important;border-radius:10px!important}
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-weekday{color:#969790!important}
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-day{background:transparent!important;color:#292a2d!important;border-color:transparent!important;border-radius:11px!important}
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-day:hover:not(.disabled):not(.empty){background:#ecece7!important}
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-day.selected{background:#1c1d20!important;color:#fff!important;border-color:#1c1d20!important}
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-day.today:not(.selected){box-shadow:inset 0 0 0 1px #8e8f89!important}
body.premium-ui:not(.admin-page-body) #booking-overlay .time-slot{background:#fff!important;color:#222326!important;border:1px solid #deded8!important;border-radius:12px!important;min-height:54px!important;transition:transform .14s ease,border-color .14s ease,background .14s ease!important}
body.premium-ui:not(.admin-page-body) #booking-overlay .time-slot:hover:not(.taken){background:#eeeeea!important;color:#17181a!important;border-color:#bcbdb7!important;transform:translateY(-1px)}
body.premium-ui:not(.admin-page-body) #booking-overlay .time-slot.selected{background:#1c1d20!important;color:#fff!important;border-color:#1c1d20!important;box-shadow:none!important}
body.premium-ui:not(.admin-page-body) #booking-overlay .time-slot.selected :is(strong,span){color:#fff!important}
body.premium-ui:not(.admin-page-body) #booking-overlay .time-slot.taken{background:#ecece8!important;color:#a5a59f!important;border-color:#e2e2dd!important}
body.premium-ui:not(.admin-page-body) #booking-overlay .form-group label{color:#555650!important}
body.premium-ui:not(.admin-page-body) #booking-overlay :is(input,textarea,select){background:#fff!important;color:#17181a!important;border:1px solid #d9d9d3!important;border-radius:12px!important;box-shadow:none!important}
body.premium-ui:not(.admin-page-body) #booking-overlay :is(input,textarea,select):focus{border-color:#777872!important;box-shadow:0 0 0 3px rgba(25,26,29,.07)!important}
body.premium-ui:not(.admin-page-body) #booking-overlay input::placeholder,body.premium-ui:not(.admin-page-body) #booking-overlay textarea::placeholder{color:#aaa9a3!important}
body.premium-ui:not(.admin-page-body) #booking-overlay .modal-nav{background:linear-gradient(180deg,rgba(245,245,241,0),#f5f5f1 32%)!important}
body.premium-ui:not(.admin-page-body) #booking-overlay :is(.btn-next,.btn-primary){background:#1c1d20!important;color:#fff!important;border-color:#1c1d20!important;border-radius:12px!important;box-shadow:none!important}
body.premium-ui:not(.admin-page-body) #booking-overlay :is(.btn-next,.btn-primary):disabled{background:#d7d7d1!important;color:#9b9b95!important;border-color:#d7d7d1!important}
body.premium-ui:not(.admin-page-body) #booking-overlay .btn-back{background:transparent!important;color:#555650!important;border-color:#cecec8!important;border-radius:12px!important}
body.premium-ui:not(.admin-page-body) #booking-overlay .success-screen{color:#17181a!important}
body.premium-ui:not(.admin-page-body) #booking-overlay .success-msg{color:#686963!important}
body.premium-ui:not(.admin-page-body) #booking-overlay .success-code{color:#17181a!important;border-color:#d2d2cc!important}
body.premium-ui:not(.admin-page-body) #booking-overlay .email-preview :is(h4,.email-subject){color:#17181a!important}
body.premium-ui:not(.admin-page-body) #booking-overlay .email-preview .email-body{color:#6d6e69!important}

/* Public burger: keep the site dark, but make the opened menu lighter and easier to scan. */
@media (max-width:900px){
  body.premium-ui:not(.admin-page-body) .site-nav .nav-links .nav-cta{background:#efefeb!important;color:#17181a!important;border-color:#dfdfda!important;box-shadow:0 8px 22px rgba(0,0,0,.14)!important}
  body.premium-ui:not(.admin-page-body) .site-nav .nav-links .nav-cta:active{background:#fff!important;color:#111!important}
  body.premium-ui:not(.admin-page-body) #booking-overlay{padding:0!important;background:#f5f5f1!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
body.premium-ui:not(.admin-page-body) #booking-overlay .booking-modal {border:0!important;border-radius:0!important;box-shadow:none!important}

  body.premium-ui:not(.admin-page-body) #booking-overlay .modal-header{top:0!important;padding-top:max(2px,env(safe-area-inset-top))!important}
  body.premium-ui:not(.admin-page-body) #booking-overlay .prog-labels{margin-bottom:18px!important}
  body.premium-ui:not(.admin-page-body) #booking-overlay .step-title-book{font-size:clamp(24px,7vw,31px)!important}
  body.premium-ui:not(.admin-page-body) #booking-overlay .options-grid{gap:9px!important}
  body.premium-ui:not(.admin-page-body) #booking-overlay .option-card{padding:14px!important;border-radius:14px!important}
  body.premium-ui:not(.admin-page-body) #booking-overlay .calendar-wrap{padding:12px!important;border-radius:15px!important}
  body.premium-ui:not(.admin-page-body) #booking-overlay .modal-nav{position:sticky!important;bottom:0!important;margin-top:12px!important;padding:16px 0 2px!important}


body.premium-ui.admin-page-body .admin-day-sheet {border-radius:24px 24px 0 0!important;border-bottom:0!important}

  body.premium-ui.admin-page-body .admin-day-sheet-head{padding:19px 18px 15px!important}
  body.premium-ui.admin-page-body .admin-day-sheet-head h3{font-size:20px!important}
  body.premium-ui.admin-page-body .admin-day-sheet-list{padding:6px 12px 8px!important}
  body.premium-ui.admin-page-body .admin-day-sheet-actions{padding:12px 14px calc(14px + env(safe-area-inset-bottom))!important}
}
@media (min-width:700px) and (max-width:1366px){
  body.premium-ui.admin-page-body .scheduler-month-grid:not(.is-compact-touch-month){grid-template-rows:34px repeat(6,132px)!important}
  body.premium-ui.admin-page-body .scheduler-month-cell{min-height:0!important;padding:6px!important}
  body.premium-ui.admin-page-body .scheduler-month-pill{height:36px!important;min-height:36px!important;padding:5px 6px!important;grid-template-columns:31px minmax(0,1fr)!important}
  body.premium-ui.admin-page-body .scheduler-month-more{height:27px!important;min-height:27px!important}
}
@media (max-width:699px){
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month .scheduler-month-cell{overflow:hidden!important}
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month .scheduler-month-more{height:auto!important;min-height:22px!important;background:transparent!important;color:#f0f0f0!important;font-weight:700!important}
}
@keyframes v53Fade{from{opacity:0}to{opacity:1}}
@keyframes v53ModalIn{from{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:none}}
@keyframes v53StepIn{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}
@keyframes v53SheetIn{from{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:none}}
@keyframes v53SheetUp{from{opacity:0;transform:translateY(32px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){
body.premium-ui #booking-overlay.active,
body.premium-ui #booking-overlay .step-screen.active,
body.premium-ui .admin-day-modal-backdrop {animation:none!important}
}

body.premium-ui .my-bookings-lookup-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:10px}
body.premium-ui .lookup-security-note{margin:0 0 18px;color:#8d8e89;font-size:11px;line-height:1.55}
@media(max-width:640px){body.premium-ui .my-bookings-lookup-grid{grid-template-columns:1fr}}


/* =========================================================
   V54 — MOBILE BOOKING REWORK
   Clear 4-step flow, high-end monochrome UI, no summary card.
   ========================================================= */
body.premium-ui:not(.admin-page-body) #booking-overlay{
  --book-bg:#f6f6f2;
  --book-surface:#ffffff;
  --book-ink:#17181a;
  --book-muted:#73746f;
  --book-line:#deded8;
  --book-soft:#ecece7;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .step-kicker{
  margin:0 0 7px;
  color:#8b8c86;
  font-size:10px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .time-section-title{
  margin:2px 0 11px;
  color:#555650!important;
  font-size:11px;
  font-weight:700;
  letter-spacing:.04em;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .option-card{
  isolation:isolate;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .option-card .option-name{
  font-family:Inter,ui-sans-serif,system-ui,sans-serif!important;
  font-weight:700!important;
  line-height:1.25!important;
  margin-bottom:6px!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .option-card .option-detail{
  line-height:1.55!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .option-card .option-price{
  display:inline-flex;
  align-items:center;
  margin-top:12px!important;
  padding:5px 8px;
  border-radius:999px;
  background:#f0f0eb;
  color:#424340!important;
  font-size:11px!important;
  font-weight:700;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .option-card.selected .option-price{
  background:rgba(255,255,255,.12)!important;
  color:#fff!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .option-card.selected::after{
  content:'✓'!important;
  display:grid!important;
  place-items:center;
  top:14px!important;
  right:14px!important;
  width:24px;
  height:24px;
  border-radius:50%;
  background:#fff!important;
  color:#17181a!important;
  font-size:12px!important;
  font-weight:800;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box{
  align-items:center!important;
  border-radius:15px!important;
  padding:14px 15px!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box strong{
  color:#222326!important;
  font-size:13px!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box span{
  color:#777873!important;
  font-size:11px!important;
  line-height:1.45!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .form-group label{
  font-size:10px!important;
  font-weight:700!important;
  letter-spacing:.04em!important;
  text-transform:none!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay :is(input,textarea,select){
  font-size:16px!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .btn-next,
body.premium-ui:not(.admin-page-body) #booking-overlay .btn-back{
  min-height:50px!important;
  font-size:12px!important;
  font-weight:700!important;
  letter-spacing:0!important;
  text-transform:none!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .btn-next:not(:disabled):active,
body.premium-ui:not(.admin-page-body) #booking-overlay .btn-back:active{
  transform:scale(.985);
}

@media (max-width:900px){
  html:has(#booking-overlay.active),
  body:has(#booking-overlay.active){overflow:hidden!important;overscroll-behavior:none}
  body.premium-ui:not(.admin-page-body) #booking-overlay{
    display:none;
    position:fixed!important;
    inset:0!important;
    width:100%!important;
    height:100dvh!important;
    min-height:100dvh!important;
    overflow:hidden!important;
    background:var(--book-bg)!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay.active{display:block!important}
body.premium-ui:not(.admin-page-body) #booking-overlay .booking-modal {
    box-sizing:border-box!important;
    flex-direction:column!important;
    background:var(--book-bg)!important;
    color:var(--book-ink)!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    scrollbar-width:none;
  }

  body.premium-ui:not(.admin-page-body) #booking-overlay .booking-modal::-webkit-scrollbar{display:none}
  body.premium-ui:not(.admin-page-body) #booking-overlay .modal-header{
    position:sticky!important;
    top:0!important;
    z-index:8!important;
    min-height:66px!important;
    margin:0 -2px 10px!important;
    padding:max(12px,env(safe-area-inset-top)) 2px 10px!important;
    background:rgba(246,246,242,.96)!important;
    backdrop-filter:blur(12px)!important;
    -webkit-backdrop-filter:blur(12px)!important;
    border-bottom:1px solid rgba(23,24,26,.06)!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .modal-logo{
    max-width:calc(100% - 52px);
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    color:#555650!important;
    font-size:10px!important;
    letter-spacing:.08em!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .close-btn{
    display:grid!important;
    place-items:center!important;
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
    padding:0!important;
    background:#e8e8e3!important;
    color:#2b2c2f!important;
    font-size:17px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .progress-bar{display:none!important}
  body.premium-ui:not(.admin-page-body) #booking-overlay .prog-labels{
    position:relative;
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:4px!important;
    margin:2px 0 24px!important;
    padding:0 2px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .prog-labels::before{
    content:'';
    position:absolute;
    top:14px;
    left:12.5%;
    right:12.5%;
    height:1px;
    background:#d6d6d0;
    z-index:0;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .prog-label{
    position:relative;
    z-index:1;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:7px!important;
    min-width:0;
    color:#969791!important;
    font-size:9px!important;
    font-weight:600!important;
    line-height:1.15!important;
    letter-spacing:0!important;
    text-align:center!important;
    text-transform:none!important;
    white-space:normal!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .prog-label::before{
    content:attr(data-step);
    display:grid;
    place-items:center;
    width:29px;
    height:29px;
    box-sizing:border-box;
    border:1px solid #d4d4ce;
    border-radius:50%;
    background:var(--book-bg);
    color:#898a84;
    font-size:10px;
    font-weight:800;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .prog-label.active{
    color:#1b1c1f!important;
    font-weight:800!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .prog-label.active::before{
    border-color:#1c1d20;
    background:#1c1d20;
    color:#fff;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .prog-label.done::before{
    content:'✓';
    border-color:#9a9b95;
    background:#f0f0eb;
    color:#303134;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .step-screen.active{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    padding:0 0 4px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .step-kicker{margin-bottom:6px!important}
  body.premium-ui:not(.admin-page-body) #booking-overlay .step-title-book{
    margin:0 0 7px!important;
    color:#17181a!important;
    font-family:Inter,ui-sans-serif,system-ui,sans-serif!important;
    font-size:clamp(25px,7vw,32px)!important;
    font-weight:750!important;
    letter-spacing:-.045em!important;
    line-height:1.08!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .step-subtitle{
    max-width:34rem;
    margin:0 0 20px!important;
    color:#747570!important;
    font-size:12px!important;
    line-height:1.55!important;
    letter-spacing:0!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .options-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    margin:0!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .option-card{
    min-height:0!important;
    margin:0!important;
    padding:16px 48px 15px 16px!important;
    overflow:hidden!important;
    background:var(--book-surface)!important;
    color:var(--book-ink)!important;
    border:1px solid var(--book-line)!important;
    border-radius:16px!important;
    box-shadow:0 1px 0 rgba(0,0,0,.02)!important;
    transform:none!important;
    -webkit-tap-highlight-color:transparent;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .option-card:active{
    background:#f0f0eb!important;
    border-color:#bfc0ba!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .option-card.selected{
    background:#1c1d20!important;
    color:#fff!important;
    border-color:#1c1d20!important;
    box-shadow:0 9px 24px rgba(0,0,0,.12)!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .option-name{
    color:#1b1c1f!important;
    font-size:15px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .option-detail{
    color:#777873!important;
    font-size:11px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .option-price{
    color:#454642!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .option-card.selected :is(.option-name,.option-detail,.option-price){color:#fff!important}
  body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box{
    margin-top:0!important;
    background:#fff!important;
    border:1px dashed #d4d4ce!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .barber-choice-card{
    display:grid!important;
    grid-template-columns:44px minmax(0,1fr) 24px!important;
    align-items:center!important;
    gap:12px!important;
    padding:12px 14px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .barber-choice-avatar{
    width:44px!important;
    height:44px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .calendar-wrap{
    margin:0 0 16px!important;
    padding:13px!important;
    background:#fff!important;
    border:1px solid var(--book-line)!important;
    border-radius:17px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .cal-header{margin-bottom:10px!important}
  body.premium-ui:not(.admin-page-body) #booking-overlay .cal-month{
    color:#1f2023!important;
    font-family:Inter,ui-sans-serif,system-ui,sans-serif!important;
    font-size:14px!important;
    font-weight:750!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .cal-nav{
    display:grid!important;
    place-items:center!important;
    width:36px!important;
    height:36px!important;
    padding:0!important;
    background:#f0f0eb!important;
    border:1px solid #e0e0da!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .cal-grid{gap:3px!important}
  body.premium-ui:not(.admin-page-body) #booking-overlay .cal-day-label{
    padding:6px 0!important;
    color:#9a9b95!important;
    font-size:9px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .cal-day{
    min-width:0!important;
    min-height:38px!important;
    display:grid!important;
    place-items:center!important;
    padding:0!important;
    font-size:12px!important;
    border-radius:10px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .time-slots{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:8px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .time-slot{
    min-width:0!important;
    min-height:46px!important;
    padding:9px 6px!important;
    background:#fff!important;
    border:1px solid var(--book-line)!important;
    border-radius:12px!important;
    font-size:12px!important;
    font-weight:700!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay #s4 .form-row{
    grid-template-columns:1fr!important;
    gap:0!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay #s4 .form-group{
    margin-bottom:12px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay :is(input,textarea,select){
    min-height:50px!important;
    padding:13px 14px!important;
    background:#fff!important;
    border:1px solid var(--book-line)!important;
    border-radius:13px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay textarea{
    min-height:92px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .modal-nav{
    position:sticky!important;
    z-index:7!important;
    bottom:calc(-1 * (14px + env(safe-area-inset-bottom)))!important;
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr)!important;
    align-items:center!important;
    gap:9px!important;
    margin:20px 0 0!important;
    padding:18px 0 calc(14px + env(safe-area-inset-bottom))!important;
    background:linear-gradient(180deg,rgba(246,246,242,0) 0%,rgba(246,246,242,.94) 22%,#f6f6f2 43%)!important;
    border:0!important;
    box-shadow:none!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .modal-nav > span:empty{display:none!important}
  body.premium-ui:not(.admin-page-body) #booking-overlay .modal-nav .btn-back{
    width:auto!important;
    min-width:96px!important;
    padding:0 15px!important;
    background:#ecece7!important;
    color:#333438!important;
    border:1px solid #deded8!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .modal-nav .btn-next{
    width:100%!important;
    padding:0 18px!important;
    background:#1c1d20!important;
    color:#fff!important;
    border:1px solid #1c1d20!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .modal-nav .btn-next:disabled{
    background:#e1e1dc!important;
    color:#a0a19b!important;
    border-color:#e1e1dc!important;
    opacity:1!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay #s1 .modal-nav{
    grid-template-columns:1fr!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay #s4 .modal-nav{
    grid-template-columns:auto minmax(0,1fr)!important;
  }
}

@media (max-width:390px){


  body.premium-ui:not(.admin-page-body) #booking-overlay .prog-label{font-size:8px!important}
  body.premium-ui:not(.admin-page-body) #booking-overlay .prog-label::before{width:27px;height:27px}
  body.premium-ui:not(.admin-page-body) #booking-overlay .time-slots{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body.premium-ui:not(.admin-page-body) #booking-overlay .step-title-book{font-size:25px!important}
}

@media (max-width:900px) and (orientation:landscape){


  body.premium-ui:not(.admin-page-body) #booking-overlay .modal-header{min-height:54px!important}
  body.premium-ui:not(.admin-page-body) #booking-overlay .prog-labels{margin-bottom:16px!important}
  body.premium-ui:not(.admin-page-body) #booking-overlay .step-title-book{font-size:24px!important}
  body.premium-ui:not(.admin-page-body) #booking-overlay .step-subtitle{margin-bottom:14px!important}
}

/* === V55 — booking/mobile contrast + compact times + stable admin overlays === */

/* Public booking: strict monochrome surfaces so legacy dark rules can never leak through. */
body.premium-ui:not(.admin-page-body) #booking-overlay .option-card:not(.selected){
  background:#ffffff!important;
  color:#17181a!important;
  border-color:#d9d9d4!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .option-card:not(.selected) :is(.option-name,.option-detail,.option-price){
  color:#17181a!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .option-card:not(.selected) .option-detail{color:#777873!important}
body.premium-ui:not(.admin-page-body) #booking-overlay .option-card:not(.selected) .option-price{color:#4d4e4a!important}
body.premium-ui:not(.admin-page-body) #booking-overlay .option-card:not(.selected):hover{
  background:#f0f0ec!important;
  color:#17181a!important;
  border-color:#bfc0ba!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .option-card.selected,
body.premium-ui:not(.admin-page-body) #booking-overlay .option-card.selected:hover,
body.premium-ui:not(.admin-page-body) #booking-overlay .option-card.selected:active{
  background:#28292c!important;
  color:#fff!important;
  border-color:#28292c!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .option-card.selected :is(.option-name,.option-detail,.option-price),
body.premium-ui:not(.admin-page-body) #booking-overlay .option-card.selected:hover :is(.option-name,.option-detail,.option-price){color:#fff!important}

/* Selected calendar day/time must stay readable even on hover/touch. */
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-day.selected,
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-day.selected:hover,
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-day.selected:active{
  background:#28292c!important;
  color:#fff!important;
  border-color:#28292c!important;
  box-shadow:none!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .time-slot.selected,
body.premium-ui:not(.admin-page-body) #booking-overlay .time-slot.selected:hover,
body.premium-ui:not(.admin-page-body) #booking-overlay .time-slot.selected:active{
  background:#28292c!important;
  color:#fff!important;
  border-color:#28292c!important;
  transform:none!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .time-slot.selected :is(strong,span),
body.premium-ui:not(.admin-page-body) #booking-overlay .time-slot.selected:hover :is(strong,span){color:#fff!important}

/* Second appointment toggle — proper compact switch instead of a raw browser checkbox. */
body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box{
  gap:14px!important;
  background:#fff!important;
  border:1px solid #d9d9d4!important;
  border-radius:16px!important;
  cursor:pointer!important;
  user-select:none;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box:hover{background:#f4f4f0!important;border-color:#c7c8c2!important}
body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box:focus-visible{outline:3px solid rgba(40,41,44,.16)!important;outline-offset:2px!important}
body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box input[type="checkbox"]{
  appearance:none!important;
  -webkit-appearance:none!important;
  position:relative!important;
  flex:0 0 44px!important;
  width:44px!important;
  height:26px!important;
  margin:0!important;
  padding:0!important;
  min-height:26px!important;
  border:1px solid #cfcfca!important;
  border-radius:999px!important;
  background:#e7e7e2!important;
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.02)!important;
  pointer-events:none!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box input[type="checkbox"]::after{
  content:"";
  position:absolute;
  top:3px;
  left:3px;
  width:18px;
  height:18px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 1px 4px rgba(0,0,0,.22);
  transition:transform .16s ease;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box input[type="checkbox"]:checked{
  background:#28292c!important;
  border-color:#28292c!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box input[type="checkbox"]:checked::after{transform:translateX(18px)}
body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box.selected{border-style:solid!important;border-color:#b7b8b2!important;background:#f7f7f3!important}

/* Time area becomes a compact card directly below the selected day. */
body.premium-ui:not(.admin-page-body) #booking-overlay #time-section{
  margin:0 0 6px!important;
  padding:14px!important;
  background:#fff!important;
  border:1px solid #deded8!important;
  border-radius:17px!important;
  scroll-margin-top:84px!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .time-section-title{
  display:flex!important;
  align-items:baseline!important;
  justify-content:space-between!important;
  gap:12px!important;
  margin:0 0 11px!important;
  color:#1c1d20!important;
  font-size:13px!important;
  font-weight:750!important;
  letter-spacing:-.01em!important;
  text-transform:none!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .time-section-title>span{color:#1c1d20!important}
body.premium-ui:not(.admin-page-body) #booking-overlay .time-section-title>small{
  color:#797a75!important;
  font-size:10px!important;
  font-weight:650!important;
  letter-spacing:0!important;
  text-transform:capitalize!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .time-slots{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:7px!important;
  margin:0!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .time-slot{
  min-height:42px!important;
  padding:7px 4px!important;
  border-radius:10px!important;
  line-height:1.05!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .time-slot strong{font-size:12px!important;line-height:1!important}
body.premium-ui:not(.admin-page-body) #booking-overlay .time-slot br{display:none!important}
body.premium-ui:not(.admin-page-body) #booking-overlay .time-slot span{display:block!important;margin-top:3px!important;font-size:8.5px!important;line-height:1!important;color:#8a8b86!important}
body.premium-ui:not(.admin-page-body) #booking-overlay #time-section .agenda-empty{
  background:#f0f0ec!important;
  color:#555650!important;
  border:1px solid #e0e0da!important;
  border-radius:12px!important;
  padding:13px!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #time-section .agenda-empty :is(strong,span){color:#41423f!important}

/* Cleaner close control. */
body.premium-ui:not(.admin-page-body) #booking-overlay .close-btn{
  display:grid!important;
  place-items:center!important;
  width:42px!important;
  height:42px!important;
  min-width:42px!important;
  min-height:42px!important;
  padding:0!important;
  background:#e9e9e4!important;
  color:#26272a!important;
  border:1px solid #deded8!important;
  border-radius:50%!important;
  font-size:17px!important;
  font-weight:500!important;
  line-height:1!important;
  box-shadow:none!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .close-btn:hover{background:#28292c!important;color:#fff!important;border-color:#28292c!important}

/* Never let the continue bar fall below/crop against the mobile viewport. */
@media (max-width:900px){


  body.premium-ui:not(.admin-page-body) #booking-overlay #s3{padding-bottom:0!important}
  body.premium-ui:not(.admin-page-body) #booking-overlay .modal-nav{
    bottom:0!important;
    margin:18px -2px 0!important;
    padding:14px 2px calc(14px + env(safe-area-inset-bottom))!important;
    background:#f6f6f2!important;
    border-top:1px solid rgba(23,24,26,.08)!important;
    box-shadow:0 -10px 24px rgba(246,246,242,.94)!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay #time-section{padding:12px!important;border-radius:15px!important}
  body.premium-ui:not(.admin-page-body) #booking-overlay .time-slots{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:6px!important}
  body.premium-ui:not(.admin-page-body) #booking-overlay .time-slot{min-height:40px!important;padding:6px 3px!important}
}
@media (max-width:390px){
  body.premium-ui:not(.admin-page-body) #booking-overlay .time-slots{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}

/* Admin day sheet: force a readable white/charcoal theme even if global admin rules win the cascade. */
body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet,
body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet-head,
body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet-list,
body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet-actions{
  background:#f7f7f4!important;
  color:#17181a!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet{border-color:#d8d8d3!important}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet-head{border-bottom-color:#ddddda!important}
body.premium-ui.admin-page-body #admin-day-modal :is(.admin-day-sheet-eyebrow,#admin-day-modal-meta){color:#73746f!important}
body.premium-ui.admin-page-body #admin-day-modal #admin-day-modal-title{color:#17181a!important}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-close{
  display:grid!important;place-items:center!important;width:38px!important;height:38px!important;min-width:38px!important;
  background:#e7e7e2!important;color:#242528!important;border:1px solid #d8d8d2!important;border-radius:50%!important;font-size:15px!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-close:hover{background:#28292c!important;color:#fff!important;border-color:#28292c!important}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-row{border-bottom-color:#e0e0dc!important}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-row-main{background:#fff!important;color:#17181a!important;border:1px solid #e2e2dd!important;border-radius:13px!important;margin:2px 0!important}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-row-main:hover{background:#ededE9!important;color:#17181a!important}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-row-main time{color:#4d4e4a!important}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-row-copy strong{color:#17181a!important}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-row-copy small{color:#747570!important}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-row-chevron{color:#898a85!important}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-row-chips{padding-top:3px!important}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-row-chips .status-chip,
body.premium-ui.admin-page-body #admin-day-modal .admin-day-row-chips .payment-chip{
  background:#ecece8!important;color:#333438!important;border-color:#d8d8d3!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-row-chips .status-confirmed,
body.premium-ui.admin-page-body #admin-day-modal .admin-day-row-chips .status-completed,
body.premium-ui.admin-page-body #admin-day-modal .admin-day-row-chips .payment-paid{
  background:#28292c!important;color:#fff!important;border-color:#28292c!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-empty{background:#fff!important;color:#686964!important;border-color:#d6d6d1!important}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-empty strong{color:#17181a!important}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-empty small{color:#747570!important}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet-actions{border-top-color:#ddddda!important}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet-actions .admin-link-btn{background:#ecece8!important;color:#333438!important;border-color:#d4d4cf!important}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet-actions .btn-primary{background:#28292c!important;color:#fff!important;border-color:#28292c!important}
/* Client -> appointment handoff: make the newly opened quick sheet unmistakably interactive. */

/* Customer search can be opened from inside quick booking, so it must sit above it. */
body.premium-ui.admin-page-body #clients-modal.active{z-index:4300!important}


/* === v56: stronger contrast, crisp booking cards, cleaner second-appointment UI === */
body.premium-ui:not(.admin-page-body) #booking-overlay .modal-logo,
body.premium-ui:not(.admin-page-body) #booking-overlay .step-kicker,
body.premium-ui:not(.admin-page-body) #booking-overlay .prog-label,
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-weekday,
body.premium-ui:not(.admin-page-body) #booking-overlay .time-section-title small,
body.premium-ui:not(.admin-page-body) #booking-overlay .form-note,
body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box span,
body.premium-ui:not(.admin-page-body) #booking-overlay .second-appointment-box .form-note{
  color:#5d5e59!important;
  opacity:1!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .prog-label.active,
body.premium-ui:not(.admin-page-body) #booking-overlay .prog-label.done,
body.premium-ui:not(.admin-page-body) #booking-overlay .step-subtitle,
body.premium-ui:not(.admin-page-body) #booking-overlay .summary-label,
body.premium-ui:not(.admin-page-body) #booking-overlay .booking-summary p{
  color:#4f504c!important;
  opacity:1!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .step-title-book,
body.premium-ui:not(.admin-page-body) #booking-overlay .step-screen h2,
body.premium-ui:not(.admin-page-body) #booking-overlay .time-section-title,
body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box strong,
body.premium-ui:not(.admin-page-body) #booking-overlay .second-appointment-head strong,
body.premium-ui:not(.admin-page-body) #booking-overlay .summary-title,
body.premium-ui:not(.admin-page-body) #booking-overlay .form-group label{
  color:#191a1d!important;
}

/* Service + barber cards: readable by default, premium when selected. */
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card,
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card{
  background:#ffffff!important;
  border:1px solid #d8d8d2!important;
  color:#17181a!important;
  box-shadow:none!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card:hover:not(.selected),
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card:hover:not(.selected){
  background:#f3f3ef!important;
  border-color:#b9bab4!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card .option-name,
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card .option-name{
  color:#17181a!important;
  font-weight:800!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card .option-detail,
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card .option-detail{
  color:#41433f!important;
  font-weight:500!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card .option-price,
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card .option-price{
  background:#efefea!important;
  color:#2d2e31!important;
  font-weight:800!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card.selected,
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card.selected:hover,
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card.selected,
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card.selected:hover{
  background:#242529!important;
  border-color:#242529!important;
  color:#ffffff!important;
  box-shadow:0 12px 28px rgba(0,0,0,.12)!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card.selected :is(.option-name,.option-detail,.option-price),
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card.selected :is(.option-name,.option-detail,.option-price){
  color:#ffffff!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card.selected .option-detail,
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card.selected .option-detail{
  color:rgba(255,255,255,.88)!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card.selected .option-price,
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card.selected .option-price{
  background:rgba(255,255,255,.14)!important;
  color:#ffffff!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card.selected::after,
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card.selected::after{
  background:#ffffff!important;
  color:#1b1c1f!important;
}

/* Calendar/times: darker labels, never washed out. */
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-day,
body.premium-ui:not(.admin-page-body) #booking-overlay .time-slot{
  color:#212225!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-day:hover:not(.disabled):not(.empty),
body.premium-ui:not(.admin-page-body) #booking-overlay .time-slot:hover:not(.taken){
  color:#17181a!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-day.selected,
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-day.selected:hover,
body.premium-ui:not(.admin-page-body) #booking-overlay .time-slot.selected,
body.premium-ui:not(.admin-page-body) #booking-overlay .time-slot.selected:hover{
  background:#242529!important;
  border-color:#242529!important;
  color:#ffffff!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .time-slot strong{
  color:#1f2023!important;
  font-weight:800!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .time-slot span{
  color:#63645f!important;
  opacity:1!important;
  font-weight:500!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .time-slot.selected :is(strong,span){
  color:#ffffff!important;
}

/* Second appointment block: make it follow the same light/charcoal language. */
body.premium-ui:not(.admin-page-body) #booking-overlay .second-appointment-box.smart-second-box,
body.premium-ui:not(.admin-page-body) #booking-overlay .second-appointment-box{
  background:#ffffff!important;
  border:1px solid #dadad4!important;
  border-radius:18px!important;
  box-shadow:none!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .second-appointment-head span,
body.premium-ui:not(.admin-page-body) #booking-overlay .second-suggestion span,
body.premium-ui:not(.admin-page-body) #booking-overlay .second-suggestion small,
body.premium-ui:not(.admin-page-body) #booking-overlay .second-loading,
body.premium-ui:not(.admin-page-body) #booking-overlay .second-empty{
  color:#595a56!important;
  opacity:1!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .smart-second-suggestions{
  gap:.7rem!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .second-suggestion{
  background:#f4f4f0!important;
  color:#17181a!important;
  border:1px solid #ddddd7!important;
  box-shadow:none!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .second-suggestion:hover{
  background:#edede8!important;
  color:#17181a!important;
  border-color:#bbbbb5!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .second-suggestion strong{
  color:#17181a!important;
  font-weight:800!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .second-suggestion.active{
  background:#242529!important;
  color:#ffffff!important;
  border-color:#242529!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .second-suggestion.active :is(span,strong,small){
  color:#ffffff!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .mini-remove-second{
  background:#f1f1ec!important;
  color:#1b1c1f!important;
  border:1px solid #d6d6d0!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .mini-remove-second:hover{
  background:#242529!important;
  color:#ffffff!important;
  border-color:#242529!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .second-appointment-box :is(select,input,.nexa-calendar-input,.flatpickr-input[readonly]){
  background:#ffffff!important;
  color:#17181a!important;
  border:1px solid #d8d8d2!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .second-appointment-box select option{
  color:#17181a!important;
  background:#ffffff!important;
}

/* Action area and close button a touch stronger. */
body.premium-ui:not(.admin-page-body) #booking-overlay .close-btn{
  font-size:18px!important;
  font-weight:700!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .modal-nav{
  background:#f6f6f2!important;
}


/* === v57: premium luxury booking polish === */
body.premium-ui:not(.admin-page-body) #booking-overlay{
  background:rgba(12,13,16,.64)!important;
  backdrop-filter:blur(18px) saturate(112%)!important;
  -webkit-backdrop-filter:blur(18px) saturate(112%)!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .booking-modal {
  background:linear-gradient(180deg,#f8f8f4 0%,#f4f4ef 100%)!important;
  border:1px solid rgba(255,255,255,.72)!important;
  border-radius:30px!important;
  box-shadow:0 34px 90px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.72)!important;
}

body.premium-ui:not(.admin-page-body) #booking-overlay .modal-header{
  margin-bottom:22px!important;
  padding-bottom:14px!important;
  background:linear-gradient(180deg,rgba(248,248,244,.98),rgba(248,248,244,.92))!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .modal-logo{
  color:#4a4b47!important;
  font-size:10.5px!important;
  font-weight:800!important;
  letter-spacing:.14em!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .progress-bar{
  gap:8px!important;
  margin-bottom:16px!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .prog-step{
  height:4px!important;
  background:#deded7!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .prog-step:is(.active,.done){
  background:#232428!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .prog-labels{
  gap:14px!important;
  margin-bottom:24px!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .prog-label{
  color:#6a6b66!important;
  font-size:10px!important;
  font-weight:700!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .prog-label.active,
body.premium-ui:not(.admin-page-body) #booking-overlay .prog-label.done{
  color:#18191c!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .step-kicker{
  color:#6a6b66!important;
  font-size:10px!important;
  font-weight:800!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
  margin-bottom:10px!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .step-title-book,
body.premium-ui:not(.admin-page-body) #booking-overlay .step-screen h2{
  font-family:'Cormorant Garamond',serif!important;
  font-size:clamp(2rem,3vw,2.75rem)!important;
  font-weight:700!important;
  letter-spacing:-.03em!important;
  line-height:1.02!important;
  color:#17181a!important;
  margin-bottom:10px!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .step-subtitle{
  color:#51524e!important;
  font-size:14px!important;
  line-height:1.65!important;
  max-width:58ch!important;
  margin-bottom:18px!important;
}

/* Primary cards */
body.premium-ui:not(.admin-page-body) #booking-overlay .options-grid{
  gap:14px!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card,
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card{
  position:relative!important;
  padding:20px!important;
  border-radius:18px!important;
  background:linear-gradient(180deg,#ffffff 0%,#f8f8f3 100%)!important;
  border:1px solid #d9d9d2!important;
  box-shadow:0 8px 20px rgba(0,0,0,.04)!important;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card:hover:not(.selected),
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card:hover:not(.selected){
  transform:translateY(-2px)!important;
  background:linear-gradient(180deg,#ffffff 0%,#f3f3ee 100%)!important;
  border-color:#bfbfb7!important;
  box-shadow:0 14px 28px rgba(0,0,0,.08)!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card .option-name,
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card .option-name{
  color:#16171a!important;
  font-size:22px!important;
  font-family:'Cormorant Garamond',serif!important;
  font-weight:700!important;
  line-height:1.05!important;
  margin-bottom:10px!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card .option-detail,
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card .option-detail{
  color:#3f413d!important;
  font-size:13px!important;
  font-weight:500!important;
  line-height:1.65!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card .option-price,
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card .option-price{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  margin-top:16px!important;
  padding:8px 12px!important;
  background:#efefe9!important;
  color:#202124!important;
  border:1px solid #e0e0d9!important;
  border-radius:999px!important;
  font-size:11.5px!important;
  font-weight:800!important;
  letter-spacing:.02em!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card.selected,
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card.selected:hover,
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card.selected,
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card.selected:hover{
  background:linear-gradient(180deg,#2a2b30 0%,#202126 100%)!important;
  border-color:#202126!important;
  color:#fff!important;
  box-shadow:0 18px 34px rgba(0,0,0,.18)!important;
  transform:translateY(-1px)!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card.selected :is(.option-name,.option-detail,.option-price),
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card.selected :is(.option-name,.option-detail,.option-price){
  color:#fff!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card.selected .option-detail,
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card.selected .option-detail{
  color:rgba(255,255,255,.88)!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card.selected .option-price,
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card.selected .option-price{
  background:rgba(255,255,255,.14)!important;
  border-color:rgba(255,255,255,.14)!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card.selected::after,
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card.selected::after{
  top:16px!important;
  right:16px!important;
  width:28px!important;
  height:28px!important;
  font-size:13px!important;
  box-shadow:0 5px 12px rgba(0,0,0,.16)!important;
}

/* calendar + time */
body.premium-ui:not(.admin-page-body) #booking-overlay .calendar-wrap,
body.premium-ui:not(.admin-page-body) #booking-overlay #time-section,
body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box,
body.premium-ui:not(.admin-page-body) #booking-overlay .second-appointment-box,
body.premium-ui:not(.admin-page-body) #booking-overlay .email-preview{
  background:linear-gradient(180deg,#ffffff 0%,#f8f8f3 100%)!important;
  border:1px solid #dfdfd8!important;
  box-shadow:0 8px 20px rgba(0,0,0,.04)!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .calendar-wrap{
  border-radius:22px!important;
  padding:18px!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-header{margin-bottom:14px!important}
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-month,
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-month-title{
  color:#1c1d20!important;
  font-family:'Cormorant Garamond',serif!important;
  font-size:28px!important;
  font-weight:700!important;
  letter-spacing:-.02em!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-weekday,
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-day-label{
  color:#6b6c67!important;
  font-size:11px!important;
  font-weight:700!important;
  letter-spacing:.06em!important;
  text-transform:uppercase!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-nav{
  width:38px!important;
  height:38px!important;
  background:#f0f0eb!important;
  border:1px solid #dddd6!important;
  border-color:#ddddd6!important;
  border-radius:12px!important;
  box-shadow:none!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-day{
  min-height:46px!important;
  border-radius:12px!important;
  font-weight:700!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-day:hover:not(.disabled):not(.empty){
  background:#efefe9!important;
  border-color:#efefe9!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .time-section-title{
  color:#18191c!important;
  font-size:15px!important;
  font-weight:800!important;
  margin-bottom:12px!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .time-section-title small{
  color:#666762!important;
  font-size:11px!important;
  font-weight:700!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .time-slots{
  gap:8px!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .time-slot{
  min-height:46px!important;
  padding:8px 5px!important;
  border-radius:12px!important;
  background:#ffffff!important;
  border:1px solid #dbdbd5!important;
  box-shadow:none!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .time-slot:hover:not(.taken){
  background:#efefe9!important;
  border-color:#c3c4bd!important;
  box-shadow:0 8px 16px rgba(0,0,0,.05)!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .time-slot strong{
  color:#18191c!important;
  font-size:13px!important;
  font-weight:800!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .time-slot span{
  color:#676862!important;
  font-size:9px!important;
  font-weight:600!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .time-slot.selected,
body.premium-ui:not(.admin-page-body) #booking-overlay .time-slot.selected:hover,
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-day.selected,
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-day.selected:hover{
  background:linear-gradient(180deg,#2a2b30 0%,#202126 100%)!important;
  border-color:#202126!important;
  color:#fff!important;
  box-shadow:0 10px 22px rgba(0,0,0,.14)!important;
}

/* second appointment */
body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box,
body.premium-ui:not(.admin-page-body) #booking-overlay .second-appointment-box{
  border-radius:20px!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box{
  padding:16px 18px!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box strong,
body.premium-ui:not(.admin-page-body) #booking-overlay .second-appointment-head strong{
  font-size:15px!important;
  font-weight:800!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box span,
body.premium-ui:not(.admin-page-body) #booking-overlay .second-appointment-head span,
body.premium-ui:not(.admin-page-body) #booking-overlay .form-note{
  color:#5b5c58!important;
  font-size:12px!important;
  line-height:1.6!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box input[type="checkbox"]{
  width:48px!important;
  height:28px!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box input[type="checkbox"]::after{
  width:20px!important;
  height:20px!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box input[type="checkbox"]:checked::after{
  transform:translateX(20px)!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .second-suggestion{
  border-radius:16px!important;
  padding:12px!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .second-suggestion strong{
  font-size:18px!important;
  font-family:'Cormorant Garamond',serif!important;
  line-height:1.05!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .mini-remove-second{
  border-radius:999px!important;
  padding:8px 12px!important;
  font-size:10px!important;
  font-weight:800!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}

/* fields + CTAs */
body.premium-ui:not(.admin-page-body) #booking-overlay .form-group label{
  color:#222326!important;
  font-size:12px!important;
  font-weight:800!important;
  letter-spacing:.04em!important;
  text-transform:uppercase!important;
  margin-bottom:8px!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay :is(input,textarea,select){
  min-height:52px!important;
  background:#ffffff!important;
  border:1px solid #dbdbd4!important;
  border-radius:14px!important;
  color:#18191c!important;
  font-size:14px!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay textarea{min-height:120px!important}
body.premium-ui:not(.admin-page-body) #booking-overlay :is(input,textarea,select):focus{
  border-color:#8c8d87!important;
  box-shadow:0 0 0 4px rgba(34,35,38,.07)!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .modal-nav{
  background:linear-gradient(180deg,rgba(244,244,239,0) 0%,rgba(244,244,239,.86) 22%,#f4f4ef 100%)!important;
  border-top:0!important;
  padding-top:18px!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay :is(.btn-next,.btn-primary,.btn-outline,.btn-back){
  min-height:50px!important;
  border-radius:14px!important;
  font-size:13px!important;
  font-weight:800!important;
  letter-spacing:.04em!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay :is(.btn-next,.btn-primary){
  background:linear-gradient(180deg,#242529 0%,#1a1b1f 100%)!important;
  border-color:#1a1b1f!important;
  box-shadow:0 14px 26px rgba(0,0,0,.15)!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .btn-back,
body.premium-ui:not(.admin-page-body) #booking-overlay .btn-outline{
  background:rgba(255,255,255,.65)!important;
  color:#242529!important;
  border:1px solid #d3d3cc!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .btn-back:hover,
body.premium-ui:not(.admin-page-body) #booking-overlay .btn-outline:hover{
  background:#ffffff!important;
  border-color:#bfbfb8!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .close-btn{
  width:44px!important;
  height:44px!important;
  min-width:44px!important;
  min-height:44px!important;
  background:#ecece6!important;
  border:1px solid #d8d8d1!important;
  font-size:19px!important;
  font-weight:700!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .close-btn:hover{
  background:#232428!important;
  border-color:#232428!important;
  color:#fff!important;
}

/* mobile luxury fit */
@media (max-width:900px){
body.premium-ui:not(.admin-page-body) #booking-overlay .booking-modal {
    border-radius:24px!important;
  }

  body.premium-ui:not(.admin-page-body) #booking-overlay .step-title-book,
  body.premium-ui:not(.admin-page-body) #booking-overlay .step-screen h2{
    font-size:42px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card,
  body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card{
    padding:18px!important;
    border-radius:16px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card .option-name,
  body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card .option-name{
    font-size:21px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .cal-month,
  body.premium-ui:not(.admin-page-body) #booking-overlay .cal-month-title{
    font-size:24px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .time-slots{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .time-slot{
    min-height:44px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .modal-nav{
    padding:14px 2px calc(14px + env(safe-area-inset-bottom))!important;
    background:linear-gradient(180deg,rgba(244,244,239,0) 0%,rgba(244,244,239,.95) 18%,#f4f4ef 100%)!important;
  }
}
@media (max-width:390px){
  body.premium-ui:not(.admin-page-body) #booking-overlay .step-title-book,
  body.premium-ui:not(.admin-page-body) #booking-overlay .step-screen h2{
    font-size:36px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .time-slots{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}


/* === v58: revert booking typography + luxury chips, leave calendar untouched === */
body.premium-ui:not(.admin-page-body) #booking-overlay .step-title-book,
body.premium-ui:not(.admin-page-body) #booking-overlay .step-screen h2{
  font-family:Inter,ui-sans-serif,system-ui,sans-serif!important;
  font-size:clamp(28px,4vw,42px)!important;
  font-weight:800!important;
  line-height:1.08!important;
  letter-spacing:-.04em!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card .option-name,
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card .option-name{
  font-family:Inter,ui-sans-serif,system-ui,sans-serif!important;
  font-size:17px!important;
  font-weight:800!important;
  line-height:1.18!important;
  letter-spacing:-.02em!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card .option-detail,
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card .option-detail{
  font-size:13px!important;
  line-height:1.6!important;
}

/* Price/duration chips on cards: warmer, more premium, more distinct. */
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card .option-price,
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card .option-price{
  background:#ece3d4!important;
  color:#3b3023!important;
  border:1px solid #e0d2bd!important;
  box-shadow:none!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card:hover:not(.selected) .option-price,
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card:hover:not(.selected) .option-price{
  background:#e8ddcc!important;
  color:#31271c!important;
  border-color:#d8c7af!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card.selected .option-price,
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card.selected:hover .option-price,
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card.selected .option-price,
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card.selected:hover .option-price{
  background:#f5ede2!important;
  color:#1f2023!important;
  border-color:#f5ede2!important;
}

/* Keep the selected cards luxury but a little cleaner/less heavy than v57. */
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card.selected,
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card.selected:hover,
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card.selected,
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card.selected:hover{
  background:linear-gradient(180deg,#292a2f 0%,#202126 100%)!important;
  box-shadow:0 14px 30px rgba(0,0,0,.15)!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card.selected .option-name,
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card.selected .option-name{
  color:#ffffff!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card.selected .option-detail,
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card.selected .option-detail{
  color:rgba(255,255,255,.84)!important;
}

@media (max-width:900px){
  body.premium-ui:not(.admin-page-body) #booking-overlay .step-title-book,
  body.premium-ui:not(.admin-page-body) #booking-overlay .step-screen h2{
    font-size:32px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card .option-name,
  body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card .option-name{
    font-size:16px!important;
  }
}


/* ============================================================
   v59 — ADMIN LUXURY POLISH
   Important: no scheduler/calendar internals are changed here.
   ============================================================ */
body.premium-ui.admin-page-body{
  background:#0d0e10!important;
  color:#f5f5f3!important;
}


body.premium-ui.admin-page-body .premium-page-heading{
  align-items:flex-end!important;
  margin-bottom:24px!important;
}
body.premium-ui.admin-page-body .premium-page-heading h1{
  color:#f7f7f4!important;
  font-size:clamp(28px,2.6vw,38px)!important;
  font-weight:750!important;
  letter-spacing:-.045em!important;
  line-height:1.05!important;
}
body.premium-ui.admin-page-body .premium-page-heading p{
  color:#b8b8b2!important;
  font-size:13px!important;
  line-height:1.55!important;
}
body.premium-ui.admin-page-body .premium-eyebrow,
body.premium-ui.admin-page-body .premium-workspace-label,
body.premium-ui.admin-page-body .admin-sub{
  color:#8e8f89!important;
  font-size:9.5px!important;
  font-weight:800!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
}
body.premium-ui.admin-page-body .premium-workspace-label{
  padding:7px 10px!important;
  border:1px solid #303136!important;
  border-radius:999px!important;
  background:#16171a!important;
  color:#c9c9c4!important;
}

/* High-end surfaces, excluding the calendar card itself. */
body.premium-ui.admin-page-body .admin-card:not(.scheduler-card),
body.premium-ui.admin-page-body .admin-kpi,
body.premium-ui.admin-page-body .analytics-card,
body.premium-ui.admin-page-body .analytics-overview-card,
body.premium-ui.admin-page-body .client-card{
  background:linear-gradient(180deg,#191a1d 0%,#151619 100%)!important;
  border:1px solid #2c2d31!important;
  box-shadow:0 16px 42px rgba(0,0,0,.18)!important;
}
body.premium-ui.admin-page-body .admin-card:not(.scheduler-card){
  border-radius:22px!important;
  padding:22px!important;
}
body.premium-ui.admin-page-body .admin-card:not(.scheduler-card) .admin-toolbar :is(h2,h3),
body.premium-ui.admin-page-body #admin-pane-clients h2{
  color:#f7f7f4!important;
  font-weight:750!important;
  letter-spacing:-.03em!important;
}

/* KPI cards */
body.premium-ui.admin-page-body .admin-kpis{
  gap:12px!important;
}
body.premium-ui.admin-page-body .admin-kpi.premium-kpi{
  position:relative!important;
  overflow:hidden!important;
  min-height:116px!important;
  padding:18px!important;
  border-radius:18px!important;
}
body.premium-ui.admin-page-body .admin-kpi.premium-kpi::after{
  content:"";
  position:absolute;
  inset:auto -28px -52px auto;
  width:110px;
  height:110px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(255,255,255,.06),transparent 68%);
  pointer-events:none;
}
body.premium-ui.admin-page-body .admin-kpi-label{
  color:#b7b8b2!important;
  font-size:11px!important;
  font-weight:650!important;
}
body.premium-ui.admin-page-body .admin-kpi-value{
  color:#ffffff!important;
  font-size:32px!important;
  font-weight:760!important;
  letter-spacing:-.045em!important;
}
body.premium-ui.admin-page-body .admin-kpi-icon{
  background:#222327!important;
  border:1px solid #34353a!important;
  color:#e7e7e2!important;
  border-radius:10px!important;
}
body.premium-ui.admin-page-body .admin-kpi-line{
  background:#303136!important;
}

/* Global admin inputs/buttons, but not calendar controls/layout. */
body.premium-ui.admin-page-body :is(.admin-search,.admin-date-input,.form-group input,.form-group select,.form-group textarea){
  background:#111215!important;
  color:#f5f5f2!important;
  border:1px solid #34353a!important;
  border-radius:12px!important;
  box-shadow:none!important;
}
body.premium-ui.admin-page-body :is(.admin-search,.admin-date-input,.form-group input,.form-group select,.form-group textarea):focus{
  border-color:#6f7075!important;
  box-shadow:0 0 0 3px rgba(255,255,255,.055)!important;
  outline:0!important;
}
body.premium-ui.admin-page-body :is(.admin-search,.form-group input,.form-group textarea)::placeholder{
  color:#777873!important;
  opacity:1!important;
}
body.premium-ui.admin-page-body :is(.admin-pill,.mini-btn,.admin-link-btn,.tool-launch-btn):not(.scheduler-top-controls *){
  background:#202125!important;
  color:#f0f0ed!important;
  border-color:#38393e!important;
  border-radius:11px!important;
  font-weight:650!important;
}
body.premium-ui.admin-page-body :is(.admin-pill,.mini-btn,.admin-link-btn,.tool-launch-btn):not(.scheduler-top-controls *):hover{
  background:#2b2c31!important;
  border-color:#5a5b61!important;
  color:#fff!important;
}
body.premium-ui.admin-page-body :is(.admin-pill.active,.admin-header-tab.active):not(.scheduler-top-controls *){
  background:#f0f0ec!important;
  color:#18191c!important;
  border-color:#f0f0ec!important;
}
body.premium-ui.admin-page-body .btn-primary:not(#admin-day-modal .btn-primary),
body.premium-ui.admin-page-body .btn-next:not(.scheduler-add-btn){
  background:#f2f2ee!important;
  color:#17181a!important;
  border-color:#f2f2ee!important;
  border-radius:12px!important;
  font-weight:800!important;
  box-shadow:none!important;
}
body.premium-ui.admin-page-body .btn-primary:not(#admin-day-modal .btn-primary):hover,
body.premium-ui.admin-page-body .btn-next:not(.scheduler-add-btn):hover{
  background:#ffffff!important;
  border-color:#ffffff!important;
}

/* Appointment list / table */
body.premium-ui.admin-page-body .records-card{
  overflow:hidden!important;
}
body.premium-ui.admin-page-body .records-toolbar{
  gap:16px!important;
  padding-bottom:16px!important;
  border-bottom:1px solid #2b2c30!important;
  margin-bottom:14px!important;
}
body.premium-ui.admin-page-body .records-toolbar-actions{
  gap:7px!important;
}
body.premium-ui.admin-page-body .records-toolbar-actions .admin-search{
  min-width:min(360px,100%)!important;
}
body.premium-ui.admin-page-body .records-card [data-filter]{
  color:#d4d4cf!important;
  border-color:#35363b!important;
  background:#1e1f23!important;
}
body.premium-ui.admin-page-body .records-card [data-filter].active{
  background:#eeeeea!important;
  color:#18191c!important;
  border-color:#eeeeea!important;
}
body.premium-ui.admin-page-body .records-card .admin-table-wrap{
  background:#121316!important;
  border:1px solid #292a2e!important;
  border-radius:16px!important;
  overflow:hidden!important;
}
body.premium-ui.admin-page-body .records-card .admin-data-table{
  background:transparent!important;
}
body.premium-ui.admin-page-body .records-card .admin-data-table th{
  background:#17181b!important;
  color:#9fa09a!important;
  border-color:#292a2e!important;
  font-size:9px!important;
  font-weight:800!important;
  letter-spacing:.1em!important;
  text-transform:uppercase!important;
}
body.premium-ui.admin-page-body .records-card .admin-data-table td{
  background:#121316!important;
  color:#ecece8!important;
  border-color:#242529!important;
}
body.premium-ui.admin-page-body .records-card .admin-data-table tr.record-row:hover td{
  background:#18191d!important;
}
body.premium-ui.admin-page-body .record-name,
body.premium-ui.admin-page-body .record-service-name,
body.premium-ui.admin-page-body .record-date-value,
body.premium-ui.admin-page-body .record-time-value{
  color:#f6f6f2!important;
  font-weight:720!important;
}
body.premium-ui.admin-page-body :is(.record-customer-meta,.record-service-meta,.record-time-end,.record-note){
  color:#9a9b95!important;
}
body.premium-ui.admin-page-body .record-code{
  background:#1b1c20!important;
  color:#b8b9b3!important;
  border:1px solid #303136!important;
  border-radius:8px!important;
}

/* Restrained status/payment chips: colour only where it helps scanning. */
body.premium-ui.admin-page-body :is(.status-chip,.payment-chip){
  border-radius:999px!important;
  font-weight:750!important;
  letter-spacing:.015em!important;
  box-shadow:none!important;
}
body.premium-ui.admin-page-body .status-confirmed{
  background:rgba(80,170,105,.10)!important;
  color:#9bd0a9!important;
  border-color:rgba(104,190,129,.20)!important;
}
body.premium-ui.admin-page-body .status-pending{
  background:rgba(190,158,91,.10)!important;
  color:#d6bd83!important;
  border-color:rgba(201,169,99,.20)!important;
}
body.premium-ui.admin-page-body .status-completed{
  background:rgba(119,140,166,.11)!important;
  color:#b9c6d5!important;
  border-color:rgba(142,163,188,.20)!important;
}
body.premium-ui.admin-page-body .status-cancelled,
body.premium-ui.admin-page-body .status-no-show{
  background:rgba(165,91,91,.10)!important;
  color:#d1a0a0!important;
  border-color:rgba(180,104,104,.18)!important;
}
body.premium-ui.admin-page-body .payment-paid{
  background:rgba(80,170,105,.10)!important;
  color:#9bd0a9!important;
  border-color:rgba(104,190,129,.20)!important;
}
body.premium-ui.admin-page-body .payment-pending{
  background:#202125!important;
  color:#bbbcb6!important;
  border-color:#38393e!important;
}

/* Daily agenda cards */
body.premium-ui.admin-page-body .daily-agenda-card .day-agenda{
  display:grid!important;
  gap:10px!important;
}
body.premium-ui.admin-page-body .daily-agenda-card .agenda-item{
  background:#121316!important;
  border:1px solid #2b2c30!important;
  border-radius:16px!important;
  padding:14px!important;
  box-shadow:none!important;
}
body.premium-ui.admin-page-body .daily-agenda-card .agenda-item:hover{
  background:#17181b!important;
  border-color:#3a3b40!important;
}
body.premium-ui.admin-page-body .daily-agenda-card .agenda-title{
  color:#f6f6f2!important;
  font-size:14px!important;
  font-weight:750!important;
}
body.premium-ui.admin-page-body .daily-agenda-card .agenda-meta{
  color:#a4a59f!important;
  font-size:11px!important;
  line-height:1.55!important;
}

/* Clients — cleaner CRM-like cards. */
body.premium-ui.admin-page-body #admin-pane-clients > .admin-card{
  min-height:420px!important;
}
body.premium-ui.admin-page-body .clients-list{
  gap:10px!important;
  margin-top:14px!important;
}
body.premium-ui.admin-page-body .client-card{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:16px!important;
  align-items:center!important;
  padding:16px 18px!important;
  border-radius:16px!important;
  box-shadow:none!important;
}
body.premium-ui.admin-page-body .client-card:hover{
  background:linear-gradient(180deg,#1d1e22 0%,#18191c 100%)!important;
  border-color:#3a3b40!important;
}
body.premium-ui.admin-page-body .client-card-main{
  gap:5px!important;
  min-width:0!important;
}
body.premium-ui.admin-page-body .client-card-main strong{
  color:#ffffff!important;
  font-size:15px!important;
  font-weight:780!important;
  letter-spacing:-.02em!important;
}
body.premium-ui.admin-page-body .client-card-main span{
  color:#c0c1bb!important;
  font-size:11.5px!important;
  overflow-wrap:anywhere!important;
}
body.premium-ui.admin-page-body .client-card-main small{
  color:#81827d!important;
  font-size:10.5px!important;
  line-height:1.5!important;
}
body.premium-ui.admin-page-body .client-card-actions{
  display:flex!important;
  gap:7px!important;
  flex-wrap:wrap!important;
  justify-content:flex-end!important;
}
body.premium-ui.admin-page-body .client-card-actions .mini-btn{
  min-height:38px!important;
  padding:8px 11px!important;
  white-space:nowrap!important;
}
body.premium-ui.admin-page-body .client-card-actions [data-use-client]{
  background:#efefeb!important;
  color:#17181a!important;
  border-color:#efefeb!important;
}
body.premium-ui.admin-page-body .client-card-actions [data-use-client]:hover{
  background:#fff!important;
  border-color:#fff!important;
  color:#111!important;
}

/* Client picker/history and general admin modals */
body.premium-ui.admin-page-body :is(#clients-modal,#client-history-modal,#admin-tools-modal) .admin-modal-backdrop{
  background:rgba(5,6,8,.72)!important;
  backdrop-filter:blur(10px)!important;
  -webkit-backdrop-filter:blur(10px)!important;
}
body.premium-ui.admin-page-body :is(#clients-modal,#client-history-modal,#admin-tools-modal) .admin-tools-modal-panel{
  background:linear-gradient(180deg,#191a1d 0%,#141518 100%)!important;
  border:1px solid #34353a!important;
  border-radius:22px!important;
  box-shadow:0 30px 90px rgba(0,0,0,.45)!important;
}
body.premium-ui.admin-page-body .admin-tools-modal-head{
  border-bottom-color:#2b2c30!important;
}
body.premium-ui.admin-page-body .admin-tools-modal-head h3{
  color:#fff!important;
  font-weight:760!important;
  letter-spacing:-.025em!important;
}
body.premium-ui.admin-page-body .records-modal-item{
  background:#121316!important;
  border:1px solid #2b2c30!important;
  border-radius:15px!important;
  color:#eeeeea!important;
}
body.premium-ui.admin-page-body .records-modal-item :is(strong,h4){color:#fff!important}
body.premium-ui.admin-page-body .records-modal-item :is(span,small,p){color:#a6a7a1!important}

/* Analytics: same monochrome luxury system. */
body.premium-ui.admin-page-body .analytics-grid,
body.premium-ui.admin-page-body .analytics-overview-grid{
  gap:12px!important;
}
body.premium-ui.admin-page-body .analytics-card{
  border-radius:17px!important;
  padding:16px!important;
}
body.premium-ui.admin-page-body .analytics-mini{
  background:#111215!important;
  border:1px solid #292a2e!important;
  border-radius:13px!important;
}
body.premium-ui.admin-page-body .analytics-mini strong{
  color:#fff!important;
  font-weight:760!important;
}
body.premium-ui.admin-page-body .analytics-mini span{
  color:#9fa09a!important;
}
body.premium-ui.admin-page-body .analytics-bar{
  background:#26272b!important;
}
body.premium-ui.admin-page-body .analytics-bar i{
  background:linear-gradient(90deg,#f0f0ec,#9d9e98)!important;
}

/* Mobile/iPad — no sideways movement, cards remain legible. */
@media (max-width:900px){


  body.premium-ui.admin-page-body .premium-page-heading{
    align-items:flex-start!important;
    gap:10px!important;
  }
  body.premium-ui.admin-page-body .premium-page-heading h1{
    font-size:29px!important;
  }
  body.premium-ui.admin-page-body .admin-card:not(.scheduler-card){
    padding:16px!important;
    border-radius:18px!important;
  }
  body.premium-ui.admin-page-body .client-card{
    grid-template-columns:1fr!important;
    gap:12px!important;
    padding:14px!important;
  }
  body.premium-ui.admin-page-body .client-card-actions{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    width:100%!important;
  }
  body.premium-ui.admin-page-body .client-card-actions .mini-btn{
    width:100%!important;
  }
  body.premium-ui.admin-page-body :is(#clients-modal,#client-history-modal,#admin-tools-modal) .admin-tools-modal-panel{
    border-radius:18px 18px 0 0!important;
  }
}

@media (max-width:699px), (pointer:coarse) and (max-height:600px){
  body.premium-ui.admin-page-body .records-card .admin-data-table tr.record-row{
    background:linear-gradient(180deg,#17181b 0%,#131417 100%)!important;
    border-color:#2d2e33!important;
    box-shadow:0 10px 26px rgba(0,0,0,.16)!important;
  }
  body.premium-ui.admin-page-body .records-card .admin-data-table tr.record-row td{
    color:#f1f1ed!important;
  }
  body.premium-ui.admin-page-body .records-card td[data-label="Πελάτης / τίτλος"] > div,
  body.premium-ui.admin-page-body .records-card td[data-label="Υπηρεσία / barber"] > div,
  body.premium-ui.admin-page-body .records-card td[data-label="Ώρα"] > div{
    color:#969792!important;
  }
  body.premium-ui.admin-page-body .records-card td[data-label="Ημερομηνία"],
  body.premium-ui.admin-page-body .records-card td[data-label="Ώρα"]{
    background:#1c1d21!important;
    border-color:#303136!important;
  }
  body.premium-ui.admin-page-body .records-card td[data-label="Ενέργειες"] .mini-btn,
  body.premium-ui.admin-page-body .records-card td[data-label="Ενέργειες"] button{
    background:#202125!important;
    border-color:#37383d!important;
    color:#f1f1ed!important;
  }
  body.premium-ui.admin-page-body .records-card td[data-label="Ενέργειες"] .mini-btn.success{
    color:#afd3b7!important;
    background:#1d2620!important;
    border-color:#304336!important;
  }
  body.premium-ui.admin-page-body .records-card td[data-label="Ενέργειες"] .mini-btn.danger{
    color:#d4a5a5!important;
    background:#261d1f!important;
    border-color:#443034!important;
  }
}


/* === v60: simpler customer header + remove colored price pills on cards === */
body.premium-ui:not(.admin-page-body) .site-nav .nav-links{
  grid-template-columns:repeat(2,minmax(0,max-content))!important;
}
@media (max-width:900px){
  body.premium-ui:not(.admin-page-body) .site-nav .nav-links{
    grid-template-columns:1fr!important;
  }
}

/* Service card footer line: keep only clean price + duration, no chip/pill styling. */
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card .option-price,
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card .option-price{
  display:block!important;
  margin-top:14px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  color:#444641!important;
  font-size:13px!important;
  font-weight:800!important;
  letter-spacing:0!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card:hover:not(.selected) .option-price,
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card:hover:not(.selected) .option-price{
  background:transparent!important;
  border:0!important;
  color:#25262a!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card.selected .option-price,
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card.selected:hover .option-price,
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card.selected .option-price,
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card.selected:hover .option-price{
  background:transparent!important;
  border:0!important;
  color:#ffffff!important;
}


/* === v61: smoother booking interactions / second appointment reveal === */
body.premium-ui:not(.admin-page-body) #booking-overlay .step-screen.active{
  animation:v61StepSoft .24s cubic-bezier(.22,.8,.24,1) both!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card,
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card,
body.premium-ui:not(.admin-page-body) #booking-overlay .time-slot,
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-day,
body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box,
body.premium-ui:not(.admin-page-body) #booking-overlay .second-suggestion,
body.premium-ui:not(.admin-page-body) #booking-overlay :is(.btn-next,.btn-back,.btn-primary,.btn-outline,.close-btn){
  transition:transform .22s cubic-bezier(.22,.8,.24,1),background .22s ease,border-color .22s ease,color .22s ease,box-shadow .22s ease,opacity .22s ease!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card:hover:not(.selected),
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card:hover:not(.selected){
  transform:translateY(-3px)!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card.selected,
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card.selected:hover,
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card.selected,
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card.selected:hover{
  transform:translateY(-2px)!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .time-slot:hover:not(.taken),
body.premium-ui:not(.admin-page-body) #booking-overlay .second-suggestion:hover,
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-day:hover:not(.disabled):not(.empty){
  transform:translateY(-1px)!important;
}

/* Smooth reveal for the second booking prompt after selecting a service. */
body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box.smooth-enter{
  opacity:0!important;
  transform:translateY(10px) scale(.985)!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box.smooth-enter.is-visible{
  opacity:1!important;
  transform:translateY(0) scale(1)!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box{
  margin-top:2px!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box strong{
  transition:color .2s ease!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box.selected{
  box-shadow:0 10px 24px rgba(0,0,0,.06)!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box input[type="checkbox"]::after{
  transition:transform .22s cubic-bezier(.22,.8,.24,1)!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box:hover{
  transform:translateY(-1px)!important;
}

/* Make the second appointment section itself arrive more softly. */
body.premium-ui:not(.admin-page-body) #booking-overlay .second-appointment-box{
  animation:v61PaneSoft .26s cubic-bezier(.22,.8,.24,1) both!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .smart-second-suggestions .second-suggestion{
  animation:v61ChipSoft .22s cubic-bezier(.22,.8,.24,1) both;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .smart-second-suggestions .second-suggestion:nth-child(2){animation-delay:.03s}
body.premium-ui:not(.admin-page-body) #booking-overlay .smart-second-suggestions .second-suggestion:nth-child(3){animation-delay:.06s}
body.premium-ui:not(.admin-page-body) #booking-overlay .smart-second-suggestions .second-suggestion:nth-child(4){animation-delay:.09s}
body.premium-ui:not(.admin-page-body) #booking-overlay .smart-second-suggestions .second-suggestion:nth-child(5){animation-delay:.12s}

@keyframes v61StepSoft{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes v61PaneSoft{from{opacity:0;transform:translateY(12px) scale(.99)}to{opacity:1;transform:none}}
@keyframes v61ChipSoft{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}


/* === v62: "Όλες οι εγγραφές" — reliable inner scrolling === */
body.premium-ui.admin-page-body .records-card .admin-table-wrap{
  max-height:min(66vh,720px)!important;
  overflow-y:auto!important;
  overflow-x:auto!important;
  overscroll-behavior:contain!important;
  -webkit-overflow-scrolling:touch!important;
  touch-action:pan-y pan-x!important;
  scrollbar-gutter:stable;
}
body.premium-ui.admin-page-body .records-card .admin-data-table thead{
  position:sticky!important;
  top:0!important;
  z-index:3!important;
}
body.premium-ui.admin-page-body .records-card .admin-data-table th{
  position:sticky!important;
  top:0!important;
  z-index:3!important;
}

/* The modal version of "Όλες οι εγγραφές" gets its own scroll area too. */
body.premium-ui.admin-page-body #tools-pane-records{
  min-height:0!important;
}
body.premium-ui.admin-page-body #tools-pane-records .tools-list-card.full{
  min-height:0!important;
  display:flex!important;
  flex-direction:column!important;
}
body.premium-ui.admin-page-body #records-modal-list{
  min-height:0!important;
  max-height:calc(var(--visible-height,100dvh) - 250px)!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  overscroll-behavior:contain!important;
  -webkit-overflow-scrolling:touch!important;
  touch-action:pan-y!important;
  padding-right:4px!important;
  scrollbar-gutter:stable;
}

/* Clear but discreet scrollbars on desktop. */
body.premium-ui.admin-page-body .records-card .admin-table-wrap::-webkit-scrollbar,
body.premium-ui.admin-page-body #records-modal-list::-webkit-scrollbar{
  width:8px;
  height:8px;
}
body.premium-ui.admin-page-body .records-card .admin-table-wrap::-webkit-scrollbar-track,
body.premium-ui.admin-page-body #records-modal-list::-webkit-scrollbar-track{
  background:transparent;
}
body.premium-ui.admin-page-body .records-card .admin-table-wrap::-webkit-scrollbar-thumb,
body.premium-ui.admin-page-body #records-modal-list::-webkit-scrollbar-thumb{
  background:#3a3b40;
  border-radius:999px;
}

@media (max-width:699px), (pointer:coarse) and (max-height:600px){
  body.premium-ui.admin-page-body .records-card{
    overflow:visible!important;
  }
  body.premium-ui.admin-page-body .records-card .admin-table-wrap{
    max-height:62dvh!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior-y:contain!important;
    touch-action:pan-y!important;
    padding-right:2px!important;
  }
  body.premium-ui.admin-page-body #records-modal-list{
    max-height:calc(var(--visible-height,100dvh) - 205px)!important;
    padding-right:2px!important;
  }
}


/* === v63: fix weird browser autofill styles in booking inputs === */
body.premium-ui:not(.admin-page-body) #booking-overlay input:-webkit-autofill,
body.premium-ui:not(.admin-page-body) #booking-overlay input:-webkit-autofill:hover,
body.premium-ui:not(.admin-page-body) #booking-overlay input:-webkit-autofill:focus,
body.premium-ui:not(.admin-page-body) #booking-overlay textarea:-webkit-autofill,
body.premium-ui:not(.admin-page-body) #booking-overlay textarea:-webkit-autofill:hover,
body.premium-ui:not(.admin-page-body) #booking-overlay textarea:-webkit-autofill:focus,
body.premium-ui:not(.admin-page-body) #booking-overlay select:-webkit-autofill,
body.premium-ui:not(.admin-page-body) #booking-overlay select:-webkit-autofill:hover,
body.premium-ui:not(.admin-page-body) #booking-overlay select:-webkit-autofill:focus{
  -webkit-text-fill-color:#18191c!important;
  caret-color:#18191c!important;
  border:1px solid #dbdbd4!important;
  -webkit-box-shadow:0 0 0 1000px #ffffff inset!important;
  box-shadow:0 0 0 1000px #ffffff inset!important;
  background-color:#ffffff!important;
  background-clip:padding-box!important;
  transition:background-color 9999s ease-out 0s!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay input:-webkit-autofill:focus,
body.premium-ui:not(.admin-page-body) #booking-overlay textarea:-webkit-autofill:focus,
body.premium-ui:not(.admin-page-body) #booking-overlay select:-webkit-autofill:focus{
  border-color:#8c8d87!important;
  -webkit-box-shadow:0 0 0 1000px #ffffff inset,0 0 0 4px rgba(34,35,38,.07)!important;
  box-shadow:0 0 0 1000px #ffffff inset,0 0 0 4px rgba(34,35,38,.07)!important;
}


/* === v64: no input zoom, lighter layout density, cleaner modal footer === */
body.premium-ui:not(.admin-page-body) #booking-overlay{
  background:rgba(10,11,14,.72)!important;
  backdrop-filter:blur(18px) saturate(108%)!important;
  -webkit-backdrop-filter:blur(18px) saturate(108%)!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .booking-modal{
  background:#efefe9!important;
}

/* Stop iOS zoom on form focus. */
body.premium-ui:not(.admin-page-body) #booking-overlay :is(input,textarea,select),
body.premium-ui:not(.admin-page-body) #mybookings-overlay :is(input,textarea,select){
  font-size:16px!important;
}
@media (max-width:900px){
  body.premium-ui:not(.admin-page-body) #booking-overlay :is(input,textarea,select),
  body.premium-ui:not(.admin-page-body) #mybookings-overlay :is(input,textarea,select){
    font-size:16px!important;
    line-height:1.35!important;
  }
}

/* Only keep the buttons, remove the visual footer slab behind them. */
body.premium-ui:not(.admin-page-body) #booking-overlay .modal-nav{
  background:transparent!important;
  box-shadow:none!important;
  border-top:0!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
@media (max-width:900px){
  body.premium-ui:not(.admin-page-body) #booking-overlay .modal-nav{
    background:transparent!important;
    box-shadow:none!important;
    padding:14px 0 calc(10px + env(safe-area-inset-bottom))!important;
  }
}

/* Step 1 breathing room. */
body.premium-ui:not(.admin-page-body) #booking-overlay #s1{
  padding-bottom:10px!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .step-subtitle{
  margin-bottom:22px!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options.options-grid{
  gap:18px!important;
  align-items:start!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card{
  min-height:188px!important;
  padding:22px!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-detail{
  max-width:32ch!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .double-booking-box{
  grid-column:1 / -1!important;
  margin-top:2px!important;
}
@media (max-width:900px){
  body.premium-ui:not(.admin-page-body) #booking-overlay #service-options.options-grid{
    gap:14px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card{
    min-height:auto!important;
    padding:18px!important;
  }
}

/* Times block feel anchored after date selection. */
body.premium-ui:not(.admin-page-body) #booking-overlay #time-section{
  scroll-margin-top:78px!important;
}


/* === v65: final mobile booking polish (calendar untouched) === */
@media (max-width:900px){
/* Modal sizing / rhythm */
body.premium-ui:not(.admin-page-body) #booking-overlay .booking-modal {
    border-radius:0!important;
  }

  body.premium-ui:not(.admin-page-body) #booking-overlay .modal-header{
    margin-bottom:14px!important;
    padding-bottom:10px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .modal-logo{
    font-size:9.5px!important;
    letter-spacing:.12em!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .close-btn{
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
    min-height:40px!important;
  }

  /* Progress: compact but readable */
  body.premium-ui:not(.admin-page-body) #booking-overlay .progress-bar{
    margin-bottom:10px!important;
    gap:6px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .prog-labels{
    margin-bottom:18px!important;
    gap:8px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .prog-label{
    font-size:8px!important;
    letter-spacing:.05em!important;
  }

  /* Step copy */
  body.premium-ui:not(.admin-page-body) #booking-overlay .step-kicker{
    margin-bottom:7px!important;
    font-size:9px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .step-title-book,
  body.premium-ui:not(.admin-page-body) #booking-overlay .step-screen h2{
    margin-bottom:8px!important;
    font-size:30px!important;
    line-height:1.08!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .step-subtitle{
    margin-bottom:16px!important;
    font-size:13px!important;
    line-height:1.55!important;
  }

  /* Service cards: less crowded, cleaner scan */
  body.premium-ui:not(.admin-page-body) #booking-overlay #service-options.options-grid,
  body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options.options-grid{
    gap:11px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card,
  body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card{
    padding:16px!important;
    border-radius:15px!important;
    box-shadow:0 5px 16px rgba(0,0,0,.035)!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card .option-name,
  body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card .option-name{
    margin-bottom:6px!important;
    font-size:16px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card .option-detail{
    margin-bottom:0!important;
    font-size:12px!important;
    line-height:1.5!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card .option-price{
    margin-top:10px!important;
    font-size:12px!important;
  }

  /* Second booking prompt sits naturally after selected service */
  body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box{
    padding:14px!important;
    border-radius:15px!important;
    gap:12px!important;
    margin-top:0!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box strong{
    font-size:13px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box span{
    font-size:11px!important;
    line-height:1.45!important;
  }

  /* Time section: denser, easier thumb scanning; calendar styles are intentionally not changed. */
  body.premium-ui:not(.admin-page-body) #booking-overlay #time-section{
    margin-top:10px!important;
    padding:12px!important;
    border-radius:15px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .time-section-title{
    margin-bottom:9px!important;
    font-size:13px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .time-slots{
    gap:6px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .time-slot{
    min-height:42px!important;
    padding:6px 4px!important;
    border-radius:10px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .time-slot strong{
    font-size:12px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .time-slot span{
    font-size:8.5px!important;
  }

  /* Second appointment options: compact and smoother */
  body.premium-ui:not(.admin-page-body) #booking-overlay .second-appointment-box{
    padding:13px!important;
    border-radius:16px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .second-appointment-head{
    gap:10px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .smart-second-suggestions{
    margin:.55rem 0 .65rem!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .second-suggestion{
    min-width:132px!important;
    padding:10px!important;
    border-radius:13px!important;
  }

  /* Footer actions: no slab, just buttons with comfortable safe-area spacing */
  body.premium-ui:not(.admin-page-body) #booking-overlay .modal-nav{
    position:sticky!important;
    bottom:0!important;
    z-index:8!important;
    margin-top:12px!important;
    padding:12px 0 calc(8px + env(safe-area-inset-bottom))!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .modal-nav :is(.btn-next,.btn-back){
    min-height:46px!important;
    padding:11px 15px!important;
    border-radius:12px!important;
    font-size:12px!important;
  }

  /* Forms: slightly tighter while retaining 16px input font to prevent iOS zoom */
  body.premium-ui:not(.admin-page-body) #booking-overlay .form-row{
    gap:10px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .form-group{
    margin-bottom:10px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .form-group label{
    margin-bottom:6px!important;
    font-size:10px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay :is(input,select,textarea){
    min-height:48px!important;
    border-radius:12px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay textarea{
    min-height:100px!important;
  }
}

@media (max-width:390px){


  body.premium-ui:not(.admin-page-body) #booking-overlay .step-title-book,
  body.premium-ui:not(.admin-page-body) #booking-overlay .step-screen h2{
    font-size:27px!important;
  }
}

/* Motion polish, no calendar selector overrides. */
body.premium-ui:not(.admin-page-body) #booking-overlay .option-card,
body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box,
body.premium-ui:not(.admin-page-body) #booking-overlay .second-appointment-box,
body.premium-ui:not(.admin-page-body) #booking-overlay .time-slot,
body.premium-ui:not(.admin-page-body) #booking-overlay .modal-nav :is(.btn-next,.btn-back){
  will-change:transform,opacity;
}


/* === v66: fix second-appointment flicker + mobile header overlap === */
@media (max-width:900px){
  /* Keep the top brand row stable so it never sits on top of step labels. */
  body.premium-ui:not(.admin-page-body) #booking-overlay .modal-header{
    position:relative!important;
    top:auto!important;
    z-index:1!important;
    margin:0 0 12px!important;
    padding:max(12px,env(safe-area-inset-top)) 0 12px!important;
    background:transparent!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
    border-bottom:1px solid rgba(23,24,26,.07)!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .progress-bar{display:none!important}
  body.premium-ui:not(.admin-page-body) #booking-overlay .prog-labels{
    margin:0 0 18px!important;
    padding:0!important;
  }

  /* Make the 2nd appointment toggle feel calm and stop flicker. */
  body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box{
    will-change:auto!important;
    transform:none!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box.smooth-enter,
  body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box.smooth-enter.is-visible{
    opacity:1!important;
    transform:none!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box,
  body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box:hover,
  body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box.selected{
    transition:background .18s ease,border-color .18s ease,box-shadow .18s ease!important;
    animation:none!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box input[type="checkbox"],
  body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box input[type="checkbox"]::after{
    transition:transform .18s ease,background .18s ease,border-color .18s ease!important;
  }

  /* Reserve space so the second area appears without jumpiness. */
  body.premium-ui:not(.admin-page-body) #booking-overlay #second-appointment-section{
    display:block!important;
    min-height:0!important;
  }
}
/* === v67: final mobile booking cleanup / polish (calendar untouched) === */
body.premium-ui:not(.admin-page-body) #booking-overlay {
  overscroll-behavior:contain!important;
}


body.premium-ui:not(.admin-page-body) #booking-overlay :is(button,.option-card,.double-booking-box,.time-slot){
  -webkit-tap-highlight-color:transparent!important;
}

@media (max-width:900px){
/* Calm, consistent mobile canvas. */
body.premium-ui:not(.admin-page-body) #booking-overlay .booking-modal {
    background:#eeeeea!important;
  }


  /* Brand row: compact and visually separate from the step navigator. */
  body.premium-ui:not(.admin-page-body) #booking-overlay .modal-header{
    min-height:56px!important;
    margin:0 0 10px!important;
    padding:max(8px,env(safe-area-inset-top)) 0 10px!important;
    align-items:center!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .modal-logo{
    max-width:calc(100% - 52px)!important;
    color:#444540!important;
    font-size:9.5px!important;
    font-weight:800!important;
    line-height:1.2!important;
    letter-spacing:.11em!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .close-btn{
    width:38px!important;
    height:38px!important;
    min-width:38px!important;
    min-height:38px!important;
    border-radius:50%!important;
    box-shadow:none!important;
  }

  /* Step navigation: readable, compact, never collides with header. */
  body.premium-ui:not(.admin-page-body) #booking-overlay .prog-labels{
    min-height:31px!important;
    margin:0 0 16px!important;
    gap:6px!important;
    border-bottom:1px solid rgba(23,24,26,.055)!important;
    padding:0 0 10px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .prog-labels::before{display:none!important}
  body.premium-ui:not(.admin-page-body) #booking-overlay .prog-label{
    display:block!important;
    padding:0!important;
    color:#777873!important;
    font-size:8px!important;
    font-weight:750!important;
    line-height:1.25!important;
    letter-spacing:.045em!important;
    text-align:center!important;
    text-transform:uppercase!important;
    white-space:nowrap!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .prog-label::before{display:none!important}
  body.premium-ui:not(.admin-page-body) #booking-overlay .prog-label.active,
  body.premium-ui:not(.admin-page-body) #booking-overlay .prog-label.done{
    color:#202124!important;
  }

  /* Better vertical rhythm across every booking step. */
  body.premium-ui:not(.admin-page-body) #booking-overlay .step-screen.active{
    padding:0 0 6px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .step-kicker{
    margin-bottom:6px!important;
    color:#656660!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .step-title-book,
  body.premium-ui:not(.admin-page-body) #booking-overlay .step-screen h2{
    margin-bottom:7px!important;
    font-size:29px!important;
    line-height:1.07!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .step-subtitle{
    margin-bottom:15px!important;
    color:#555650!important;
    font-size:12.5px!important;
    line-height:1.5!important;
  }

  /* Service / barber cards: less bulky, stronger hierarchy. */
  body.premium-ui:not(.admin-page-body) #booking-overlay #service-options.options-grid,
  body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options.options-grid{
    gap:10px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card,
  body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card{
    padding:15px!important;
    border-radius:14px!important;
    box-shadow:none!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card .option-name,
  body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card .option-name{
    font-size:15.5px!important;
    line-height:1.2!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card .option-detail{
    font-size:11.5px!important;
    line-height:1.45!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card .option-price{
    margin-top:9px!important;
    color:#353632!important;
    font-size:11.5px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card.selected .option-price{
    color:#fff!important;
  }

  /* Second appointment control: compact, stable, easy to tap. */
  body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box{
    min-height:74px!important;
    padding:13px 14px!important;
    gap:10px!important;
    border-radius:14px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box strong{
    margin-bottom:3px!important;
    font-size:12.5px!important;
    line-height:1.25!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box span{
    font-size:10.5px!important;
    line-height:1.4!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box input[type="checkbox"]{
    flex:0 0 44px!important;
    width:44px!important;
    height:26px!important;
  }

  /* Time / second-booking content: smooth without GPU flicker. Calendar itself is not touched. */
  body.premium-ui:not(.admin-page-body) #booking-overlay .option-card,
  body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box,
  body.premium-ui:not(.admin-page-body) #booking-overlay .second-appointment-box,
  body.premium-ui:not(.admin-page-body) #booking-overlay .time-slot,
  body.premium-ui:not(.admin-page-body) #booking-overlay .modal-nav :is(.btn-next,.btn-back){
    will-change:auto!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .second-appointment-box{
    animation:v67PaneIn .2s cubic-bezier(.22,.8,.24,1) both!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay #time-section{
    margin-top:8px!important;
    padding:11px!important;
    border-radius:14px!important;
  }

  /* Footer actions remain visually detached from the page background. */
  body.premium-ui:not(.admin-page-body) #booking-overlay .modal-nav{
    position:sticky!important;
    bottom:0!important;
    z-index:8!important;
    display:flex!important;
    align-items:center!important;
    gap:8px!important;
    margin-top:10px!important;
    padding:10px 0 calc(7px + env(safe-area-inset-bottom))!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .modal-nav .btn-next{
    margin-left:auto!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay #s1 .modal-nav .btn-next{
    width:100%!important;
  }

  /* Forms: iOS-safe and slightly cleaner. */
  body.premium-ui:not(.admin-page-body) #booking-overlay .form-row{
    grid-template-columns:1fr!important;
    gap:0!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .form-group{
    margin-bottom:9px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay :is(input,select,textarea){
    min-height:47px!important;
    font-size:16px!important;
    border-radius:11px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay textarea{min-height:94px!important}
}

@media (max-width:390px){


  body.premium-ui:not(.admin-page-body) #booking-overlay .step-title-book,
  body.premium-ui:not(.admin-page-body) #booking-overlay .step-screen h2{
    font-size:27px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .prog-label{font-size:7.4px!important}
}

@keyframes v67PaneIn{
  from{opacity:0;transform:translateY(7px)}
  to{opacity:1;transform:none}
}


/* === v69: softer, more elegant typography across booking + admin === */
body.premium-ui{
  -webkit-font-smoothing:antialiased!important;
  -moz-osx-font-smoothing:grayscale!important;
  text-rendering:optimizeLegibility!important;
}

/* Public booking typography */
body.premium-ui:not(.admin-page-body) #booking-overlay .modal-logo{
  font-weight:650!important;
  letter-spacing:.09em!important;
  color:#565752!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .prog-label{
  font-weight:560!important;
  color:#6f706b!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .prog-label.active,
body.premium-ui:not(.admin-page-body) #booking-overlay .prog-label.done{
  font-weight:620!important;
  color:#1d1e22!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .step-kicker{
  font-weight:620!important;
  letter-spacing:.12em!important;
  color:#6c6d68!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .step-title-book,
body.premium-ui:not(.admin-page-body) #booking-overlay .step-screen h2{
  font-family:Inter,ui-sans-serif,system-ui,sans-serif!important;
  font-weight:680!important;
  letter-spacing:-.045em!important;
  color:#191a1d!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .step-subtitle{
  font-weight:450!important;
  color:#5d5e59!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card .option-name,
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card .option-name{
  font-family:Inter,ui-sans-serif,system-ui,sans-serif!important;
  font-size:16px!important;
  font-weight:680!important;
  letter-spacing:-.028em!important;
  color:#1b1c1f!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card .option-detail,
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card .option-detail,
body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box span,
body.premium-ui:not(.admin-page-body) #booking-overlay .second-appointment-head span,
body.premium-ui:not(.admin-page-body) #booking-overlay .form-note,
body.premium-ui:not(.admin-page-body) #booking-overlay .time-slot span,
body.premium-ui:not(.admin-page-body) #booking-overlay .time-section-title small{
  font-weight:460!important;
  color:#61625d!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card .option-price,
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card .option-price,
body.premium-ui:not(.admin-page-body) #booking-overlay .time-slot strong,
body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box strong,
body.premium-ui:not(.admin-page-body) #booking-overlay .time-section-title,
body.premium-ui:not(.admin-page-body) #booking-overlay .summary-title,
body.premium-ui:not(.admin-page-body) #booking-overlay .second-appointment-head strong{
  font-weight:650!important;
  color:#202126!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .form-group label,
body.premium-ui:not(.admin-page-body) #booking-overlay .summary-label{
  font-weight:620!important;
  letter-spacing:.03em!important;
  color:#4d4e49!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay :is(input,textarea,select){
  font-weight:430!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay input::placeholder,
body.premium-ui:not(.admin-page-body) #booking-overlay textarea::placeholder{
  font-weight:430!important;
  color:#9b9b95!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay :is(.btn-next,.btn-back,.btn-primary,.btn-outline),
body.premium-ui:not(.admin-page-body) #booking-overlay .close-btn{
  font-weight:650!important;
  letter-spacing:.01em!important;
}

/* Keep selected states elegant, not overly heavy. */
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card.selected .option-name,
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card.selected .option-name,
body.premium-ui:not(.admin-page-body) #booking-overlay .time-slot.selected strong{
  font-weight:680!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card.selected .option-detail,
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card.selected .option-detail,
body.premium-ui:not(.admin-page-body) #booking-overlay .time-slot.selected span{
  font-weight:470!important;
}

/* Admin typography polish */
body.premium-ui.admin-page-body .premium-page-heading h1,
body.premium-ui.admin-page-body .admin-brand,
body.premium-ui.admin-page-body .admin-card h1,
body.premium-ui.admin-page-body .admin-card h2,
body.premium-ui.admin-page-body .admin-card h3,
body.premium-ui.admin-page-body .compact-admin-section h2,
body.premium-ui.admin-page-body .analytics-card h3,
body.premium-ui.admin-page-body .analytics-overview-card h3{
  font-weight:620!important;
  letter-spacing:-.03em!important;
}
body.premium-ui.admin-page-body .admin-kpi-value{
  font-weight:540!important;
  letter-spacing:-.025em!important;
}
body.premium-ui.admin-page-body .admin-kpi-label,
body.premium-ui.admin-page-body .admin-card p,
body.premium-ui.admin-page-body .client-card p,
body.premium-ui.admin-page-body .analytics-card p,
body.premium-ui.admin-page-body .analytics-overview-card p,
body.premium-ui.admin-page-body .admin-data-table td,
body.premium-ui.admin-page-body .records-card td,
body.premium-ui.admin-page-body .records-modal-item,
body.premium-ui.admin-page-body .admin-day-row-sub,
body.premium-ui.admin-page-body .client-meta,
body.premium-ui.admin-page-body .form-note{
  font-weight:430!important;
}
body.premium-ui.admin-page-body .admin-data-table th,
body.premium-ui.admin-page-body .records-card .admin-data-table th,
body.premium-ui.admin-page-body .section-chip,
body.premium-ui.admin-page-body .admin-topbar-link,
body.premium-ui.admin-page-body .admin-nav-link,
body.premium-ui.admin-page-body .status-chip,
body.premium-ui.admin-page-body .payment-chip,
body.premium-ui.admin-page-body .admin-card label,
body.premium-ui.admin-page-body .admin-form label{
  font-weight:580!important;
}
body.premium-ui.admin-page-body :is(.btn,.btn-primary,.btn-outline,.mini-btn,.admin-link-btn,.nav-btn,button){
  font-weight:600!important;
}


/* === v70: final luxury typography + spacing polish (calendar untouched) === */

/* Public booking: cleaner hierarchy, more breathing room, softer luxury finish */
body.premium-ui:not(.admin-page-body) #booking-overlay .booking-modal{
  background:#eeeeea!important;
  box-shadow:0 28px 80px rgba(0,0,0,.30)!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .modal-header{
  padding-bottom:14px!important;
  margin-bottom:16px!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .modal-logo{
  font-size:10px!important;
  font-weight:600!important;
  letter-spacing:.11em!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .prog-labels{
  margin-bottom:22px!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .prog-label{
  font-size:9px!important;
  font-weight:540!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .step-kicker{
  margin-bottom:8px!important;
  font-size:9.5px!important;
  font-weight:580!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .step-title-book,
body.premium-ui:not(.admin-page-body) #booking-overlay .step-screen h2{
  font-size:clamp(29px,4vw,40px)!important;
  font-weight:640!important;
  line-height:1.06!important;
  letter-spacing:-.05em!important;
  margin-bottom:10px!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .step-subtitle{
  font-size:13px!important;
  line-height:1.65!important;
  margin-bottom:20px!important;
  color:#5a5b56!important;
}

/* Cards: less bulky, more tailored */
body.premium-ui:not(.admin-page-body) #booking-overlay .options-grid{
  gap:14px!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card,
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card{
  border-radius:16px!important;
  padding:18px 19px!important;
  box-shadow:0 8px 20px rgba(0,0,0,.035)!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card:hover:not(.selected),
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card:hover:not(.selected){
  box-shadow:0 12px 24px rgba(0,0,0,.055)!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card .option-name,
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card .option-name{
  font-size:15.5px!important;
  font-weight:650!important;
  line-height:1.2!important;
  margin-bottom:8px!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card .option-detail,
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card .option-detail{
  font-size:12.5px!important;
  line-height:1.55!important;
  color:#555650!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card .option-price,
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card .option-price{
  margin-top:12px!important;
  font-size:12px!important;
  font-weight:620!important;
  color:#3d3e3a!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card.selected,
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card.selected{
  box-shadow:0 14px 26px rgba(0,0,0,.13)!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card.selected::after,
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card.selected::after{
  width:26px!important;
  height:26px!important;
  font-size:12px!important;
}

/* Second booking prompt */
body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box{
  padding:15px 16px!important;
  border-radius:16px!important;
  box-shadow:none!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box strong{
  font-size:13px!important;
  font-weight:620!important;
  letter-spacing:.01em!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box span{
  font-size:11.5px!important;
  line-height:1.5!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box input[type="checkbox"]{
  width:46px!important;
  height:27px!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box input[type="checkbox"]::after{
  width:19px!important;
  height:19px!important;
}

/* Time area: compact, calm, readable. Calendar selectors themselves untouched. */
body.premium-ui:not(.admin-page-body) #booking-overlay #time-section{
  border-radius:16px!important;
  padding:13px!important;
  box-shadow:0 8px 18px rgba(0,0,0,.03)!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .time-section-title{
  font-size:13px!important;
  font-weight:620!important;
  margin-bottom:10px!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .time-section-title small{
  font-size:10px!important;
  font-weight:480!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .time-slot{
  min-height:42px!important;
  border-radius:10px!important;
  box-shadow:none!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .time-slot strong{
  font-size:12px!important;
  font-weight:630!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .time-slot span{
  font-size:8.5px!important;
  font-weight:450!important;
}

/* Form: quieter labels, more refined fields */
body.premium-ui:not(.admin-page-body) #booking-overlay .form-row{
  gap:14px!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .form-group{
  margin-bottom:14px!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .form-group label{
  font-size:10.5px!important;
  font-weight:600!important;
  letter-spacing:.045em!important;
  margin-bottom:7px!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay :is(input,textarea,select){
  min-height:50px!important;
  border-radius:12px!important;
  font-weight:430!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay textarea{
  min-height:108px!important;
}

/* Buttons: less shouty, still premium */
body.premium-ui:not(.admin-page-body) #booking-overlay :is(.btn-next,.btn-back,.btn-primary,.btn-outline){
  min-height:48px!important;
  border-radius:12px!important;
  font-size:12.5px!important;
  font-weight:620!important;
  letter-spacing:.01em!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay :is(.btn-next,.btn-primary){
  box-shadow:0 10px 18px rgba(0,0,0,.12)!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .close-btn{
  width:40px!important;
  height:40px!important;
  min-width:40px!important;
  min-height:40px!important;
  font-size:17px!important;
  font-weight:600!important;
}

/* Admin: refine hierarchy without changing layout/calendar logic */
body.premium-ui.admin-page-body .premium-page-heading h1{
  font-size:clamp(22px,2vw,30px)!important;
  font-weight:600!important;
  letter-spacing:-.04em!important;
}
body.premium-ui.admin-page-body .premium-page-heading p,
body.premium-ui.admin-page-body .admin-subtitle,
body.premium-ui.admin-page-body .section-description{
  font-weight:420!important;
  color:#a6a6a1!important;
}
body.premium-ui.admin-page-body .admin-kpi.premium-kpi{
  padding:17px!important;
  border-radius:14px!important;
}
body.premium-ui.admin-page-body .admin-kpi-value{
  font-size:28px!important;
  font-weight:520!important;
}
body.premium-ui.admin-page-body .admin-kpi-label{
  font-size:11px!important;
  font-weight:450!important;
}
body.premium-ui.admin-page-body .admin-data-table th,
body.premium-ui.admin-page-body .records-card .admin-data-table th{
  font-size:10px!important;
  font-weight:560!important;
  letter-spacing:.04em!important;
}
body.premium-ui.admin-page-body .admin-data-table td,
body.premium-ui.admin-page-body .records-card td,
body.premium-ui.admin-page-body .client-card,
body.premium-ui.admin-page-body .records-modal-item{
  font-weight:420!important;
}
body.premium-ui.admin-page-body :is(.status-chip,.payment-chip){
  font-weight:540!important;
  font-size:9px!important;
}
body.premium-ui.admin-page-body :is(.admin-link-btn,.mini-btn,.btn-primary,.btn-outline,button){
  font-weight:580!important;
}

@media (max-width:900px){


  body.premium-ui:not(.admin-page-body) #booking-overlay .step-title-book,
  body.premium-ui:not(.admin-page-body) #booking-overlay .step-screen h2{
    font-size:28px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .step-subtitle{
    font-size:12.5px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card,
  body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .option-card{
    padding:16px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box{
    padding:14px!important;
  }
}


/* === v71: selected booking day is dark immediately === */
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-day{
  -webkit-tap-highlight-color:transparent!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-day.selected,
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-day.selected:hover,
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-day.selected:active,
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-day.selected:focus,
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-day.selected:focus-visible{
  background:#242529!important;
  background-image:none!important;
  color:#ffffff!important;
  border-color:#242529!important;
  box-shadow:0 8px 18px rgba(0,0,0,.12)!important;
  outline:none!important;
}


/* === v72: keep booking actions permanently at the bottom on mobile === */
@media (max-width:900px){


  body.premium-ui:not(.admin-page-body) #booking-overlay .step-screen.active{
    padding-bottom:18px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .modal-nav{
    position:fixed!important;
    left:15px!important;
    right:15px!important;
    bottom:calc(10px + env(safe-area-inset-bottom))!important;
    z-index:120!important;
    width:auto!important;
    min-height:52px!important;
    margin:0!important;
    padding:0!important;
    display:flex!important;
    align-items:center!important;
    gap:8px!important;
    background:transparent!important;
    background-image:none!important;
    border:0!important;
    box-shadow:none!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
    pointer-events:none!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .modal-nav :is(.btn-next,.btn-back){
    pointer-events:auto!important;
    min-height:52px!important;
    margin:0!important;
    box-shadow:0 8px 22px rgba(0,0,0,.12)!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .modal-nav .btn-back{
    flex:0 0 auto!important;
    min-width:104px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .modal-nav .btn-next{
    flex:1 1 auto!important;
    margin-left:0!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay #s1 .modal-nav .btn-next{
    width:100%!important;
    flex:1 1 100%!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay #s1 .modal-nav > span:empty{
    display:none!important;
  }
}

@media (max-width:390px){
  body.premium-ui:not(.admin-page-body) #booking-overlay .modal-nav{
    left:12px!important;
    right:12px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .modal-nav .btn-back{
    min-width:94px!important;
  }
}


/* === v73: keep fixed bottom buttons from overlapping content/cards === */
@media (max-width:900px){


  body.premium-ui:not(.admin-page-body) #booking-overlay .step-screen.active{
    padding-bottom:110px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay #service-options,
  body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options,
  body.premium-ui:not(.admin-page-body) #booking-overlay #time-section,
  body.premium-ui:not(.admin-page-body) #booking-overlay #second-appointment-section,
  body.premium-ui:not(.admin-page-body) #booking-overlay #booking-summary,
  body.premium-ui:not(.admin-page-body) #booking-overlay #booking-form{
    margin-bottom:10px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .modal-nav{
    bottom:calc(12px + env(safe-area-inset-bottom))!important;
  }
}
@media (max-width:390px){


  body.premium-ui:not(.admin-page-body) #booking-overlay .step-screen.active{
    padding-bottom:114px!important;
  }
}


/* === v74: mobile action buttons move after content, no overlay === */
@media (max-width:900px){


  body.premium-ui:not(.admin-page-body) #booking-overlay .step-screen.active{
    padding-bottom:12px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .modal-nav{
    position:static!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
    z-index:auto!important;
    width:100%!important;
    min-height:unset!important;
    margin-top:18px!important;
    padding:10px 0 calc(6px + env(safe-area-inset-bottom))!important;
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
    pointer-events:auto!important;
    background:transparent!important;
    background-image:none!important;
    border:0!important;
    box-shadow:none!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .modal-nav :is(.btn-next,.btn-back){
    pointer-events:auto!important;
    min-height:52px!important;
    margin:0!important;
    box-shadow:0 8px 22px rgba(0,0,0,.10)!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay #s1 .modal-nav{
    margin-top:16px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay #service-options,
  body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options,
  body.premium-ui:not(.admin-page-body) #booking-overlay #time-section,
  body.premium-ui:not(.admin-page-body) #booking-overlay #second-appointment-section,
  body.premium-ui:not(.admin-page-body) #booking-overlay #booking-summary,
  body.premium-ui:not(.admin-page-body) #booking-overlay #booking-form{
    margin-bottom:0!important;
  }
}
@media (max-width:390px){
  body.premium-ui:not(.admin-page-body) #booking-overlay .modal-nav{
    gap:8px!important;
  }
}


/* === v75: keep Back button beside Next on mobile === */
@media (max-width:900px){
  body.premium-ui:not(.admin-page-body) #booking-overlay .modal-nav{
    display:grid!important;
    grid-template-columns:minmax(96px,116px) minmax(0,1fr)!important;
    align-items:center!important;
    gap:10px!important;
    flex-wrap:nowrap!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .modal-nav > *{
    min-width:0!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .modal-nav .btn-back{
    width:100%!important;
    min-width:0!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .modal-nav .btn-next{
    width:100%!important;
    min-width:0!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay #s1 .modal-nav{
    grid-template-columns:1fr!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay #s1 .modal-nav > span:empty{
    display:none!important;
  }
}
@media (max-width:390px){
  body.premium-ui:not(.admin-page-body) #booking-overlay .modal-nav{
    grid-template-columns:92px minmax(0,1fr)!important;
    gap:8px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .modal-nav :is(.btn-back,.btn-next){
    min-height:50px!important;
    font-size:12.5px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay #s1 .modal-nav{
    grid-template-columns:1fr!important;
  }
}


/* === v76: exact 10-digit phone + smooth service selection === */
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card{
  transform-origin:center!important;
  transition:transform .24s cubic-bezier(.22,.8,.24,1),
             background .24s ease,
             border-color .24s ease,
             box-shadow .24s ease,
             color .24s ease!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card.selected{
  animation:v76ServiceSelect .28s cubic-bezier(.22,.8,.24,1) both!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card.selected::after{
  animation:v76CheckIn .24s .04s cubic-bezier(.22,.8,.24,1) both!important;
}
@keyframes v76ServiceSelect{
  0%{transform:scale(.985);box-shadow:0 5px 14px rgba(0,0,0,.05)}
  65%{transform:scale(1.012)}
  100%{transform:scale(1)}
}
@keyframes v76CheckIn{
  from{opacity:0;transform:scale(.72)}
  to{opacity:1;transform:scale(1)}
}
@media (prefers-reduced-motion:reduce){
  body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card.selected,
  body.premium-ui:not(.admin-page-body) #booking-overlay #service-options .option-card.selected::after{
    animation:none!important;
  }
}


/* === v77: keep second-appointment toggle from moving the scroll position === */
body.premium-ui:not(.admin-page-body) #booking-overlay #second-appointment-section,
body.premium-ui:not(.admin-page-body) #booking-overlay .second-appointment-box,
body.premium-ui:not(.admin-page-body) #booking-overlay .smart-second-suggestions{
  overflow-anchor:none!important;
}
@media (max-width:900px){
  body.premium-ui:not(.admin-page-body) #booking-overlay #second-appointment-section{
    scroll-margin:0!important;
  }
}


/* === v78: instant dark selected day + refined second appointment panel === */
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-day,
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-day[data-date],
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-day[data-date]:active,
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-day[data-date]:focus,
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-day[data-date]:focus-visible{
  -webkit-tap-highlight-color:transparent!important;
  outline:none!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-day.selected,
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-day.selected:hover,
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-day.selected:active,
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-day.selected:focus,
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-day.selected:focus-visible,
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-day.selected-pending,
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-day.selected-pending:hover,
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-day.selected-pending:active,
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-day[aria-selected="true"]{
  background:#242529!important;
  background-image:none!important;
  color:#ffffff!important;
  border-color:#242529!important;
  box-shadow:0 8px 18px rgba(0,0,0,.12)!important;
}

body.premium-ui:not(.admin-page-body) #booking-overlay #second-appointment-section{
  margin-top:14px!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .second-appointment-box{
  background:linear-gradient(180deg,#ffffff 0%,#f7f7f3 100%)!important;
  border:1px solid #dfdfd7!important;
  border-radius:22px!important;
  padding:18px!important;
  box-shadow:0 10px 28px rgba(0,0,0,.05)!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .second-appointment-head{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:14px!important;
  margin-bottom:14px!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .second-appointment-head strong{
  display:block!important;
  margin-bottom:4px!important;
  font-size:16px!important;
  font-weight:650!important;
  color:#1f2023!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .second-appointment-head span{
  display:block!important;
  color:#666762!important;
  line-height:1.58!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .mini-remove-second{
  align-self:flex-start!important;
  background:#f2f2ed!important;
  border:1px solid #dddd6!important;
  border-color:#ddddd6!important;
  color:#232428!important;
  box-shadow:none!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .smart-second-suggestions{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
  margin-bottom:14px!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .second-suggestion{
  min-height:72px!important;
  padding:12px 13px!important;
  border-radius:16px!important;
  background:#f4f4ef!important;
  border:1px solid #e0e0d8!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  text-align:left!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .second-suggestion strong{
  margin-bottom:3px!important;
  font-size:14px!important;
  font-weight:650!important;
  color:#1d1e21!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .second-suggestion span,
body.premium-ui:not(.admin-page-body) #booking-overlay .second-suggestion small{
  color:#6a6b66!important;
  line-height:1.45!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .second-suggestion.active{
  background:#242529!important;
  border-color:#242529!important;
  box-shadow:0 10px 22px rgba(0,0,0,.10)!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .second-manual-row{
  margin-top:6px!important;
  padding-top:14px!important;
  border-top:1px solid #ecece6!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .second-loading,
body.premium-ui:not(.admin-page-body) #booking-overlay .second-empty{
  grid-column:1 / -1!important;
  padding:14px!important;
  border-radius:14px!important;
  background:#f4f4ef!important;
  border:1px dashed #d9d9d1!important;
  color:#666762!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .second-appointment-box .form-note{
  margin-top:10px!important;
  padding-top:12px!important;
  border-top:1px solid #ecece6!important;
  color:#666762!important;
}
@media (max-width:900px){
  body.premium-ui:not(.admin-page-body) #booking-overlay .second-appointment-box{
    padding:16px!important;
    border-radius:20px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .second-appointment-head{
    flex-direction:column!important;
    align-items:stretch!important;
    gap:10px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .mini-remove-second{
    width:100%!important;
    justify-content:center!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .smart-second-suggestions{
    grid-template-columns:1fr!important;
  }
}


/* === v79: selected day must stay dark from the exact tap === */
body.premium-ui:not(.admin-page-body) #booking-overlay #cal-grid .cal-day.selected,
body.premium-ui:not(.admin-page-body) #booking-overlay #cal-grid .cal-day.selected-pending,
body.premium-ui:not(.admin-page-body) #booking-overlay #cal-grid .cal-day[aria-selected="true"],
body.premium-ui:not(.admin-page-body) #booking-overlay #cal-grid .cal-day.selected:hover,
body.premium-ui:not(.admin-page-body) #booking-overlay #cal-grid .cal-day.selected:active,
body.premium-ui:not(.admin-page-body) #booking-overlay #cal-grid .cal-day.selected:focus,
body.premium-ui:not(.admin-page-body) #booking-overlay #cal-grid .cal-day.selected:focus-visible{
  background:#242529!important;
  background-color:#242529!important;
  background-image:none!important;
  color:#fff!important;
  border-color:#242529!important;
  box-shadow:0 8px 18px rgba(0,0,0,.12)!important;
  -webkit-tap-highlight-color:transparent!important;
}


/* === v79: definitive selected-day state + unified second-appointment typography === */
body.premium-ui:not(.admin-page-body) #booking-overlay #cal-grid .cal-day.selected,
body.premium-ui:not(.admin-page-body) #booking-overlay #cal-grid .cal-day.selected-pending,
body.premium-ui:not(.admin-page-body) #booking-overlay #cal-grid .cal-day[aria-selected="true"],
body.premium-ui:not(.admin-page-body) #booking-overlay #cal-grid .cal-day.selected:hover,
body.premium-ui:not(.admin-page-body) #booking-overlay #cal-grid .cal-day.selected:active,
body.premium-ui:not(.admin-page-body) #booking-overlay #cal-grid .cal-day.selected:focus,
body.premium-ui:not(.admin-page-body) #booking-overlay #cal-grid .cal-day.selected:focus-visible{
  background:#242529!important;
  background-color:#242529!important;
  background-image:none!important;
  color:#fff!important;
  border-color:#242529!important;
  box-shadow:0 8px 18px rgba(0,0,0,.12)!important;
  -webkit-text-fill-color:#fff!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #cal-grid .cal-day.selected *,
body.premium-ui:not(.admin-page-body) #booking-overlay #cal-grid .cal-day.selected-pending *,
body.premium-ui:not(.admin-page-body) #booking-overlay #cal-grid .cal-day[aria-selected="true"] *{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}

/* Second appointment must use the exact same clean Inter system as the rest of booking. */
body.premium-ui:not(.admin-page-body) #booking-overlay .second-appointment-box,
body.premium-ui:not(.admin-page-body) #booking-overlay .second-appointment-box *,
body.premium-ui:not(.admin-page-body) #booking-overlay .second-appointment-box input,
body.premium-ui:not(.admin-page-body) #booking-overlay .second-appointment-box select,
body.premium-ui:not(.admin-page-body) #booking-overlay .second-appointment-box button{
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .second-appointment-head strong{
  font-size:15px!important;
  font-weight:650!important;
  letter-spacing:-.02em!important;
  line-height:1.25!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .second-appointment-head span,
body.premium-ui:not(.admin-page-body) #booking-overlay .second-appointment-box .form-note{
  font-size:12px!important;
  font-weight:450!important;
  letter-spacing:0!important;
  line-height:1.55!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .second-suggestion strong{
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-size:13px!important;
  font-weight:620!important;
  letter-spacing:-.01em!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .second-suggestion span,
body.premium-ui:not(.admin-page-body) #booking-overlay .second-suggestion small,
body.premium-ui:not(.admin-page-body) #booking-overlay .second-loading,
body.premium-ui:not(.admin-page-body) #booking-overlay .second-empty,
body.premium-ui:not(.admin-page-body) #booking-overlay .second-appointment-box label{
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-weight:460!important;
  letter-spacing:0!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .mini-remove-second{
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-size:11px!important;
  font-weight:600!important;
  letter-spacing:0!important;
  text-transform:none!important;
}


/* === v80: second appointment is a clean sequential full-screen date/time stage === */
body.premium-ui:not(.admin-page-body) #booking-overlay #second-appointment-section{
  display:none!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #s3 .step-kicker,
body.premium-ui:not(.admin-page-body) #booking-overlay #s3 .step-title-book,
body.premium-ui:not(.admin-page-body) #booking-overlay #s3 .step-subtitle,
body.premium-ui:not(.admin-page-body) #booking-overlay #s3 .calendar-wrap,
body.premium-ui:not(.admin-page-body) #booking-overlay #s3 #time-section{
  transition:opacity .2s ease, transform .2s ease!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box span{
  max-width:34rem!important;
}


/* === v81: mobile records card unified background like pc/ipad === */
@media (max-width:900px){
  body.premium-ui.admin-page-body .records-card .admin-data-table tr.record-row{
    background:#17181b!important;
    background-image:none!important;
    border:1px solid #2e3035!important;
    box-shadow:0 10px 26px rgba(0,0,0,.14)!important;
  }
  body.premium-ui.admin-page-body .records-card .admin-data-table tr.record-row td{
    background:transparent!important;
    background-image:none!important;
    box-shadow:none!important;
    border-color:transparent!important;
  }
  body.premium-ui.admin-page-body .records-card td[data-label="Ημερομηνία"],
  body.premium-ui.admin-page-body .records-card td[data-label="Ώρα"],
  body.premium-ui.admin-page-body .records-card td[data-label="Πληρωμή"],
  body.premium-ui.admin-page-body .records-card td[data-label="Κατάσταση"],
  body.premium-ui.admin-page-body .records-card td[data-label="Πελάτης / τίτλος"],
  body.premium-ui.admin-page-body .records-card td[data-label="Υπηρεσία / barber"],
  body.premium-ui.admin-page-body .records-card td[data-label="Κωδικός"]{
    background:transparent!important;
    border:none!important;
    box-shadow:none!important;
  }
  body.premium-ui.admin-page-body .records-card td[data-label="Ημερομηνία"]::before,
  body.premium-ui.admin-page-body .records-card td[data-label="Ώρα"]::before,
  body.premium-ui.admin-page-body .records-card td[data-label="Πληρωμή"]::before{
    color:#8e908a!important;
  }
  body.premium-ui.admin-page-body .records-card td[data-label="Ενέργειες"]{
    border-top:1px solid rgba(255,255,255,.08)!important;
  }
  /* keep the inside stable when tapping around the card */
  body.premium-ui.admin-page-body .records-card .admin-data-table tr.record-row,
  body.premium-ui.admin-page-body .records-card .admin-data-table tr.record-row:active,
  body.premium-ui.admin-page-body .records-card .admin-data-table tr.record-row:focus,
  body.premium-ui.admin-page-body .records-card .admin-data-table tr.record-row:focus-within{
    transform:none!important;
    filter:none!important;
  }
  body.premium-ui.admin-page-body .records-card .admin-data-table tr.record-row *{
    -webkit-tap-highlight-color:transparent!important;
  }
}


/* === v82: overview menu as pill buttons + darker day bookings modal === */
/* Sidebar overview buttons: make them pill-style and cleaner. */
body.premium-ui.admin-page-body .premium-sidebar .admin-header-nav{
  display:grid!important;
  gap:8px!important;
}
body.premium-ui.admin-page-body .premium-sidebar .admin-header-nav .admin-header-tab{
  min-height:42px!important;
  justify-content:flex-start!important;
  padding:10px 14px!important;
  border-radius:999px!important;
  background:#1e1f23!important;
  border:1px solid #31333a!important;
  color:#d9dad6!important;
  box-shadow:none!important;
  font-weight:560!important;
}
body.premium-ui.admin-page-body .premium-sidebar .admin-header-nav .admin-header-tab:hover{
  background:#25262b!important;
  border-color:#3b3d45!important;
  color:#ffffff!important;
}
body.premium-ui.admin-page-body .premium-sidebar .admin-header-nav .admin-header-tab.active{
  background:#f0f0eb!important;
  border-color:#f0f0eb!important;
  color:#17181b!important;
  box-shadow:0 10px 24px rgba(0,0,0,.12)!important;
}

/* Day modal: darker, cleaner, more premium. */
body.premium-ui.admin-page-body #admin-day-modal .admin-day-modal-backdrop{
  background:rgba(6,7,10,.72)!important;
  backdrop-filter:blur(14px) saturate(115%)!important;
  -webkit-backdrop-filter:blur(14px) saturate(115%)!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet,
body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet-head,
body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet-list,
body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet-actions{
  background:#17181b!important;
  background-image:none!important;
  color:#f4f4f1!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet{
  border:1px solid #2a2c31!important;
  box-shadow:0 28px 90px rgba(0,0,0,.48)!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet-head{
  border-bottom:1px solid #2a2c31!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet-eyebrow,
body.premium-ui.admin-page-body #admin-day-modal #admin-day-modal-meta{
  color:#9b9c96!important;
}
body.premium-ui.admin-page-body #admin-day-modal #admin-day-modal-title{
  color:#ffffff!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-close{
  background:#23252a!important;
  color:#ededea!important;
  border:1px solid #32343a!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-close:hover{
  background:#2b2d33!important;
  border-color:#3a3d46!important;
  color:#ffffff!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-row{
  border-bottom-color:#26282d!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-row-main{
  background:#1f2024!important;
  border:1px solid #2f3137!important;
  border-radius:15px!important;
  color:#f4f4f1!important;
  padding:11px 10px 9px 13px!important;
  box-shadow:none!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-row-main:hover{
  background:#24262b!important;
  color:#ffffff!important;
  border-color:#3a3c44!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-row-main time{
  color:#f0f0ec!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-row-copy strong{
  color:#ffffff!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-row-copy small{
  color:#a1a29d!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-row-chevron{
  color:#a8a9a4!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-row-chips{
  padding-top:6px!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-row-chips .status-chip,
body.premium-ui.admin-page-body #admin-day-modal .admin-day-row-chips .payment-chip{
  box-shadow:none!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-empty{
  background:#1e1f24!important;
  border:1px dashed #33353c!important;
  color:#a3a49f!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-empty strong{
  color:#ffffff!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-empty small{
  color:#999b95!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet-actions{
  border-top:1px solid #2a2c31!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet-actions .admin-link-btn{
  background:#23252a!important;
  color:#f0f0ec!important;
  border-color:#32343a!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet-actions .btn-primary{
  background:#f2f2ed!important;
  color:#17181b!important;
  border-color:#f2f2ed!important;
}
@media (max-width:900px){
  body.premium-ui.admin-page-body .premium-sidebar .admin-header-nav{
    gap:10px!important;
  }


  body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet-list{
    padding:10px 12px 10px!important;
  }
}


/* === v83: calmer admin calendar + remove wasted top heading space === */
/* Remove the dashboard heading block the user marked, and pull content higher. */
body.premium-ui.admin-page-body #admin-pane-dashboard > .premium-page-heading{
  display:none!important;
}


body.premium-ui.admin-page-body #admin-pane-dashboard > .admin-kpis{
  margin-top:0!important;
}
@media (max-width:900px){


}

/* Calendar / scheduler interactions: no flicker, no press-scale, no jitter. */
body.premium-ui.admin-page-body :is(
  .scheduler-board-wrap,
  .scheduler-board,
  .scheduler-grid,
  .scheduler-month-grid,
  .scheduler-month-cell,
  .scheduler-cell,
  .scheduler-month-date-btn,
  .scheduler-month-add,
  .scheduler-month-pill,
  .scheduler-month-empty,
  .scheduler-month-more,
  .scheduler-item,
  .mobile-day-pill,
  .mobile-agenda-card,
  .ios-calendar-agenda-item,
  .agenda-item,
  .admin-day-row-main,
  .daily-agenda-card .agenda-item,
  .scheduler-top-controls .admin-pill,
  #calendar-prev-period,
  #calendar-today,
  #calendar-next-period,
  #calendar-view-week,
  #calendar-view-month,
  #scheduler-new-booking
){
  animation:none!important;
  transition:none!important;
  transform:none!important;
  filter:none!important;
  will-change:auto!important;
  -webkit-tap-highlight-color:transparent!important;
  backface-visibility:hidden!important;
}
body.premium-ui.admin-page-body :is(
  .scheduler-month-date-btn,
  .scheduler-month-add,
  .scheduler-month-pill,
  .scheduler-month-empty,
  .scheduler-month-more,
  .scheduler-item,
  .mobile-day-pill,
  .mobile-agenda-card,
  .ios-calendar-agenda-item,
  .agenda-item,
  .admin-day-row-main,
  .scheduler-top-controls .admin-pill,
  #scheduler-new-booking
):is(:hover,:active,:focus,:focus-visible){
  animation:none!important;
  transition:none!important;
  transform:none!important;
  filter:none!important;
  outline:none!important;
}
/* Override the generic pressed scale just for calendar/admin schedule elements. */
body.premium-ui.admin-page-body :is(
  .scheduler-month-date-btn,
  .scheduler-month-add,
  .scheduler-month-pill,
  .scheduler-month-empty,
  .scheduler-month-more,
  .scheduler-item,
  .mobile-day-pill,
  .mobile-agenda-card,
  .ios-calendar-agenda-item,
  .agenda-item,
  .admin-day-row-main,
  .scheduler-top-controls .admin-pill,
  #scheduler-new-booking
):active{
  transform:none!important;
}
/* Keep hover/selected state stable without flashing. */
body.premium-ui.admin-page-body .scheduler-month-cell:hover,
body.premium-ui.admin-page-body .scheduler-cell:hover,
body.premium-ui.admin-page-body .scheduler-month-cell.is-selected,
body.premium-ui.admin-page-body .scheduler-cell.is-selected{
  transition:none!important;
}


/* === v84: stabilize scheduler top controls / remove flicker above calendar === */
body.premium-ui.admin-page-body .scheduler-card .admin-toolbar{
  display:grid!important;
  grid-template-columns:minmax(260px,1fr) auto!important;
  align-items:center!important;
  gap:14px!important;
}
body.premium-ui.admin-page-body .scheduler-card .admin-toolbar > div:first-child{
  min-width:0!important;
}
body.premium-ui.admin-page-body .scheduler-top-controls{
  display:grid!important;
  grid-template-columns:auto minmax(200px,max-content) auto auto!important;
  align-items:center!important;
  justify-content:end!important;
  gap:10px!important;
  flex-wrap:nowrap!important;
  min-width:0!important;
}
body.premium-ui.admin-page-body .scheduler-top-controls > .admin-toolbar-group{
  display:flex!important;
  flex-wrap:nowrap!important;
  gap:8px!important;
  min-width:0!important;
}
body.premium-ui.admin-page-body .scheduler-period-label{
  width:auto!important;
  min-width:210px!important;
  text-align:center!important;
  white-space:nowrap!important;
  margin:0!important;
}
body.premium-ui.admin-page-body .scheduler-add-btn,
body.premium-ui.admin-page-body .scheduler-top-controls .admin-pill,
body.premium-ui.admin-page-body .scheduler-top-controls .btn-next,
body.premium-ui.admin-page-body .scheduler-top-controls .admin-toolbar-group,
body.premium-ui.admin-page-body .scheduler-top-controls .scheduler-period-label{
  animation:none!important;
  transition:none!important;
  transform:none!important;
  filter:none!important;
  box-shadow:none!important;
}
body.premium-ui.admin-page-body .scheduler-add-btn:hover,
body.premium-ui.admin-page-body .scheduler-add-btn:active,
body.premium-ui.admin-page-body .scheduler-add-btn:focus,
body.premium-ui.admin-page-body .scheduler-top-controls .admin-pill:hover,
body.premium-ui.admin-page-body .scheduler-top-controls .admin-pill:active,
body.premium-ui.admin-page-body .scheduler-top-controls .admin-pill:focus{
  transform:none!important;
  filter:none!important;
}
body.premium-ui.admin-page-body .scheduler-card .admin-toolbar,
body.premium-ui.admin-page-body .scheduler-card .admin-toolbar *{
  backface-visibility:hidden!important;
  -webkit-tap-highlight-color:transparent!important;
}

@media (max-width:1100px){
  body.premium-ui.admin-page-body .scheduler-card .admin-toolbar{
    grid-template-columns:1fr!important;
    align-items:start!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    justify-content:stretch!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls > .admin-toolbar-group:first-child{
    grid-column:1 / -1!important;
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
  body.premium-ui.admin-page-body .scheduler-period-label{
    min-width:0!important;
    text-align:left!important;
  }
  body.premium-ui.admin-page-body .scheduler-add-btn{
    width:100%!important;
  }
}
@media (max-width:700px){
  body.premium-ui.admin-page-body .scheduler-top-controls{
    grid-template-columns:1fr!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls > .admin-toolbar-group:last-child{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
/* === v85: reduce dashboard top gap further === */

body.premium-ui.admin-page-body .admin-content-area,
body.premium-ui.admin-page-body #admin-pane-dashboard{
  margin-top:0!important;
  padding-top:0!important;
}
body.premium-ui.admin-page-body #admin-pane-dashboard > .premium-page-heading{
  display:none!important;
  margin:0!important;
  padding:0!important;
}
body.premium-ui.admin-page-body #admin-pane-dashboard > .admin-kpis{
  margin-top:0!important;
  padding-top:0!important;
}
/* pull the dashboard slightly closer to the topbar without overlapping it */

@media (max-width:900px){


}


/* === v86: smoother admin interactions / remove flicker on action buttons and cards === */
body.premium-ui.admin-page-body :is(
  .admin-card,
  .client-card,
  .records-card,
  .analytics-card,
  .analytics-overview-card,
  .scheduler-card,
  .admin-data-table tr,
  .admin-day-row,
  .admin-day-row-main,
  .ios-calendar-agenda-item,
  .mobile-agenda-card,
  .scheduler-item,
  .scheduler-month-cell,
  .scheduler-cell,
  .admin-header-tab,
  .admin-pill,
  .admin-link-btn,
  .tool-launch-btn,
  .mini-btn,
  .status-chip,
  .payment-chip,
  .admin-action-btn,
  .records-modal-item,
  .record-actions,
  .drawer-actions button,
  button,
  select,
  input,
  textarea
){
  backface-visibility:hidden!important;
  -webkit-backface-visibility:hidden!important;
  transform:translateZ(0)!important;
  will-change:auto!important;
  -webkit-tap-highlight-color:transparent!important;
}

/* Keep admin interactions calm and stable instead of flickering/scaling. */
body.premium-ui.admin-page-body :is(
  .admin-header-tab,
  .admin-pill,
  .admin-link-btn,
  .tool-launch-btn,
  .mini-btn,
  .admin-action-btn,
  .status-chip,
  .payment-chip,
  .scheduler-item,
  .ios-calendar-agenda-item,
  .mobile-agenda-card,
  .admin-day-row-main,
  .records-modal-item,
  .record-actions button,
  .drawer-actions button
){
  transition:background-color .16s ease,border-color .16s ease,color .16s ease,opacity .16s ease!important;
  animation:none!important;
  filter:none!important;
  box-shadow:none!important;
}
body.premium-ui.admin-page-body :is(
  .admin-header-tab,
  .admin-pill,
  .admin-link-btn,
  .tool-launch-btn,
  .mini-btn,
  .admin-action-btn,
  .status-chip,
  .payment-chip,
  .scheduler-item,
  .ios-calendar-agenda-item,
  .mobile-agenda-card,
  .admin-day-row-main,
  .records-modal-item,
  .record-actions button,
  .drawer-actions button
):is(:hover,:active,:focus,:focus-visible){
  transform:none!important;
  filter:none!important;
  box-shadow:none!important;
  animation:none!important;
}

/* Specific fixes for payment / cancel controls and records actions. */
body.premium-ui.admin-page-body .mini-btn,
body.premium-ui.admin-page-body .admin-link-btn,
body.premium-ui.admin-page-body .tool-launch-btn,
body.premium-ui.admin-page-body .admin-action-btn{
  min-height:40px!important;
}
body.premium-ui.admin-page-body .mini-btn:active,
body.premium-ui.admin-page-body .admin-link-btn:active,
body.premium-ui.admin-page-body .tool-launch-btn:active,
body.premium-ui.admin-page-body .admin-action-btn:active,
body.premium-ui.admin-page-body .status-chip:active,
body.premium-ui.admin-page-body .payment-chip:active{
  transform:none!important;
}
body.premium-ui.admin-page-body .records-card .admin-data-table tr.record-row,
body.premium-ui.admin-page-body .records-card .admin-data-table tr.record-row td,
body.premium-ui.admin-page-body .records-modal-item,
body.premium-ui.admin-page-body .client-card,
body.premium-ui.admin-page-body .admin-day-row,
body.premium-ui.admin-page-body .admin-day-row-main{
  transition:background-color .16s ease,border-color .16s ease,color .16s ease!important;
  animation:none!important;
}
body.premium-ui.admin-page-body .records-card .admin-data-table tr.record-row:is(:hover,:active,:focus,:focus-within),
body.premium-ui.admin-page-body .records-card .admin-data-table tr.record-row td:is(:hover,:active,:focus,:focus-within),
body.premium-ui.admin-page-body .records-modal-item:is(:hover,:active,:focus,:focus-within),
body.premium-ui.admin-page-body .client-card:is(:hover,:active,:focus,:focus-within),
body.premium-ui.admin-page-body .admin-day-row-main:is(:hover,:active,:focus,:focus-within){
  transform:none!important;
  filter:none!important;
}
/* Smooth but stable shell/sidebar/topbar. */
body.premium-ui.admin-page-body .premium-sidebar-backdrop,
body.premium-ui.admin-page-body .admin-topbar,
body.premium-ui.admin-page-body .admin-top-actions,
body.premium-ui.admin-page-body .admin-topbar-start {
  transition:opacity .18s ease, visibility .18s ease, background-color .18s ease, border-color .18s ease!important;
}


/* === v87: admin calendar toolbar polish + unified records toolbar responsive cleanup === */
/* Calendar top toolbar: remove odd backgrounds and make controls consistent. */
body.premium-ui.admin-page-body .scheduler-card .admin-toolbar{
  align-items:center!important;
}
body.premium-ui.admin-page-body .scheduler-top-controls{
  gap:12px!important;
}
body.premium-ui.admin-page-body .scheduler-top-controls > .admin-toolbar-group:first-child,
body.premium-ui.admin-page-body .scheduler-top-controls > .admin-toolbar-group:last-child{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
body.premium-ui.admin-page-body .scheduler-top-controls :is(#calendar-prev-period,#calendar-today,#calendar-next-period,#calendar-view-week,#calendar-view-month),
body.premium-ui.admin-page-body .scheduler-add-btn,
body.premium-ui.admin-page-body .scheduler-period-label{
  min-height:42px!important;
  border-radius:14px!important;
  box-shadow:none!important;
  text-shadow:none!important;
}
body.premium-ui.admin-page-body .scheduler-top-controls :is(#calendar-prev-period,#calendar-today,#calendar-next-period){
  background:#18191d!important;
  border:1px solid #31333a!important;
  color:#ecece8!important;
}
body.premium-ui.admin-page-body .scheduler-top-controls :is(#calendar-prev-period,#calendar-today,#calendar-next-period):hover,
body.premium-ui.admin-page-body .scheduler-top-controls :is(#calendar-prev-period,#calendar-today,#calendar-next-period):focus{
  background:#202228!important;
  border-color:#3a3d45!important;
  color:#ffffff!important;
}
/* Week/month both always look like proper pills, with the same family of color. */
body.premium-ui.admin-page-body .scheduler-top-controls :is(#calendar-view-week,#calendar-view-month){
  background:#212329!important;
  border:1px solid #363840!important;
  color:#dfdfda!important;
}
body.premium-ui.admin-page-body .scheduler-top-controls :is(#calendar-view-week,#calendar-view-month):hover,
body.premium-ui.admin-page-body .scheduler-top-controls :is(#calendar-view-week,#calendar-view-month):focus{
  background:#262830!important;
  border-color:#42454f!important;
  color:#ffffff!important;
}
body.premium-ui.admin-page-body .scheduler-top-controls :is(#calendar-view-week,#calendar-view-month).active{
  background:#2c2f38!important;
  border-color:#484c58!important;
  color:#ffffff!important;
}
body.premium-ui.admin-page-body .scheduler-add-btn{
  background:#f2f2ee!important;
  border:1px solid #f2f2ee!important;
  color:#17181b!important;
  box-shadow:none!important;
}
body.premium-ui.admin-page-body .scheduler-add-btn:hover,
body.premium-ui.admin-page-body .scheduler-add-btn:focus{
  background:#ffffff!important;
  border-color:#ffffff!important;
  color:#17181b!important;
}
body.premium-ui.admin-page-body .scheduler-period-label{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0 16px!important;
  background:transparent!important;
  border:0!important;
  color:#f0f0ec!important;
}

/* The calendar wrapper behind the board should not introduce a second mismatched background. */
body.premium-ui.admin-page-body .scheduler-board-wrap{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
}
body.premium-ui.admin-page-body .scheduler-board{
  background:#121316!important;
  border:1px solid #2a2c32!important;
  border-radius:18px!important;
  overflow:hidden!important;
}
body.premium-ui.admin-page-body .scheduler-month-grid,
body.premium-ui.admin-page-body .scheduler-grid{
  background:#121316!important;
}

/* Records toolbar and search/filter controls: cleaner and responsive across all sizes. */
body.premium-ui.admin-page-body .records-toolbar{
  display:grid!important;
  grid-template-columns:minmax(200px,280px) minmax(0,1fr)!important;
  align-items:start!important;
  gap:16px!important;
}
body.premium-ui.admin-page-body .records-toolbar-actions{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
  width:100%!important;
}
body.premium-ui.admin-page-body .records-toolbar-actions .admin-search{
  flex:1 1 320px!important;
  width:auto!important;
  min-width:240px!important;
  max-width:100%!important;
  min-height:46px!important;
  background:#111215!important;
  color:#f4f4f1!important;
  border:1px solid #33353c!important;
  border-radius:14px!important;
  padding:0 14px!important;
}
body.premium-ui.admin-page-body .records-toolbar-actions .admin-search::placeholder{
  color:#7b7d77!important;
}
body.premium-ui.admin-page-body .records-toolbar-actions .admin-search:focus{
  border-color:#4c4f58!important;
  box-shadow:0 0 0 3px rgba(255,255,255,.05)!important;
}
body.premium-ui.admin-page-body .records-card [data-filter]{
  min-height:42px!important;
  padding:0 14px!important;
  border-radius:999px!important;
  background:#1b1d22!important;
  border:1px solid #31343b!important;
  color:#e0e0db!important;
  font-weight:560!important;
}
body.premium-ui.admin-page-body .records-card [data-filter]:hover,
body.premium-ui.admin-page-body .records-card [data-filter]:focus{
  background:#22242b!important;
  border-color:#3c4049!important;
  color:#ffffff!important;
}
body.premium-ui.admin-page-body .records-card [data-filter].active{
  background:#efefea!important;
  border-color:#efefea!important;
  color:#18191c!important;
}

/* All-records action buttons look ordered and aligned. */
body.premium-ui.admin-page-body .records-card td[data-label="Ενέργειες"]{
  gap:8px!important;
}
body.premium-ui.admin-page-body .records-card td[data-label="Ενέργειες"] :is(.mini-btn,button){
  min-height:38px!important;
  padding:0 12px!important;
  border-radius:12px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  white-space:nowrap!important;
}
body.premium-ui.admin-page-body .records-card td[data-label="Ενέργειες"] .mini-btn.success{
  background:#1e2620!important;
  border-color:#314136!important;
  color:#cfe6d5!important;
}
body.premium-ui.admin-page-body .records-card td[data-label="Ενέργειες"] .mini-btn.danger{
  background:#261e20!important;
  border-color:#453336!important;
  color:#e0b8b8!important;
}
body.premium-ui.admin-page-body .records-card td[data-label="Ενέργειες"] .mini-btn:hover,
body.premium-ui.admin-page-body .records-card td[data-label="Ενέργειες"] button:hover{
  filter:none!important;
  transform:none!important;
}

@media (max-width:1100px){
  body.premium-ui.admin-page-body .records-toolbar{
    grid-template-columns:1fr!important;
  }
  body.premium-ui.admin-page-body .records-toolbar-actions{
    justify-content:flex-start!important;
  }
}
@media (max-width:900px){
  body.premium-ui.admin-page-body .scheduler-top-controls{
    gap:10px!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls > .admin-toolbar-group:first-child,
  body.premium-ui.admin-page-body .scheduler-top-controls > .admin-toolbar-group:last-child{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    width:100%!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls > .admin-toolbar-group:last-child{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  body.premium-ui.admin-page-body .scheduler-period-label,
  body.premium-ui.admin-page-body .scheduler-add-btn{
    width:100%!important;
    min-width:0!important;
  }
  body.premium-ui.admin-page-body .records-toolbar-actions{
    gap:10px!important;
  }
  body.premium-ui.admin-page-body .records-toolbar-actions .admin-search{
    flex:1 1 100%!important;
    min-width:0!important;
  }
  body.premium-ui.admin-page-body .records-card [data-filter]{
    flex:1 1 calc(50% - 5px)!important;
    justify-content:center!important;
  }
}
@media (max-width:560px){
  body.premium-ui.admin-page-body .records-card [data-filter]{
    flex:1 1 100%!important;
  }
}


/* === v88: tool headers no longer overlap on scroll + tighter iPad tool layouts === */
/* Tools / drawers / side panels: keep the header from sitting on top of content while scrolling. */
body.premium-ui.admin-page-body :is(
  #admin-tools-modal .admin-tools-modal-head,
  #clients-modal .admin-tools-modal-head,
  #client-history-modal .admin-tools-modal-head,
  .admin-drawer-head,
  .notifications-panel-head,
  .admin-day-sheet-head
){
  position:relative!important;
  top:auto!important;
  z-index:2!important;
  background:inherit!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
body.premium-ui.admin-page-body :is(
  .admin-tools-modal-panel,
  .clients-modal-panel,
  .admin-drawer-panel,
  .notifications-panel,
  .admin-day-sheet
){
  scroll-padding-top:20px!important;
}

/* iPad/tablet tools should feel tighter so more content fits without unnecessary scrolling. */
@media (min-width:700px) and (max-width:1180px){
body.premium-ui.admin-page-body :is(#admin-tools-modal,#clients-modal,#client-history-modal) .admin-tools-modal-panel,
body.premium-ui.admin-page-body .admin-drawer-panel {
    border-radius:18px!important;
  }

  body.premium-ui.admin-page-body :is(#admin-tools-modal,#clients-modal,#client-history-modal) .admin-tools-modal-head,
  body.premium-ui.admin-page-body .admin-drawer-head{
    padding:0 0 12px!important;
    margin-bottom:12px!important;
    border-bottom:1px solid #2b2d33!important;
  }
  body.premium-ui.admin-page-body :is(#admin-tools-modal,#clients-modal,#client-history-modal) .admin-tools-modal-head h3,
  body.premium-ui.admin-page-body .admin-drawer-head h3,
  body.premium-ui.admin-page-body .notifications-panel-head h3{
    font-size:24px!important;
    line-height:1.15!important;
  }
  body.premium-ui.admin-page-body .tools-modal-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:12px!important;
  }
  body.premium-ui.admin-page-body :is(.tools-form-card,.tools-list-card,.records-modal-main,.slot-form-card){
    padding:14px!important;
    border-radius:16px!important;
  }
  body.premium-ui.admin-page-body .tools-list-card.full{
    padding:14px!important;
  }
  body.premium-ui.admin-page-body :is(.tools-form-card h4,.tools-list-card h4,.records-modal-main h4){
    margin-bottom:8px!important;
  }
  body.premium-ui.admin-page-body .tools-helper-text,
  body.premium-ui.admin-page-body .admin-sub,
  body.premium-ui.admin-page-body .drawer-meta,
  body.premium-ui.admin-page-body .records-modal-item :is(span,small,p){
    font-size:13px!important;
    line-height:1.45!important;
  }
  body.premium-ui.admin-page-body :is(.admin-search,.admin-date-input,.form-group input,.form-group select,.form-group textarea){
    min-height:42px!important;
    padding:.65rem .8rem!important;
    border-radius:11px!important;
    font-size:14px!important;
  }
  body.premium-ui.admin-page-body textarea{
    min-height:92px!important;
  }
  body.premium-ui.admin-page-body :is(.admin-pill,.tool-launch-btn,.admin-link-btn,.mini-btn,.btn-next,.btn-primary){
    min-height:40px!important;
    padding:0 12px!important;
    border-radius:11px!important;
    font-size:13px!important;
  }
  body.premium-ui.admin-page-body :is(.drawer-actions,.records-modal-actions,.clients-modal-toolbar,.daily-agenda-actions,.records-toolbar-actions){
    gap:8px!important;
  }
  body.premium-ui.admin-page-body .admin-tools-grid.compact{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:10px!important;
  }
  body.premium-ui.admin-page-body .records-modal-list,
  body.premium-ui.admin-page-body #barbers-admin-list,
  body.premium-ui.admin-page-body #services-admin-list,
  body.premium-ui.admin-page-body #products-admin-list,
  body.premium-ui.admin-page-body #blackout-list,
  body.premium-ui.admin-page-body #recurring-break-list{
    gap:10px!important;
  }
}

/* Slightly tighter tool layout on smaller tablets/landscape mobile too. */
@media (max-width:900px){
  body.premium-ui.admin-page-body :is(#admin-tools-modal,#clients-modal,#client-history-modal) .admin-tools-modal-head,
  body.premium-ui.admin-page-body .admin-drawer-head,
  body.premium-ui.admin-page-body .notifications-panel-head{
    padding-top:0!important;
  }
  body.premium-ui.admin-page-body .tools-modal-grid{
    gap:12px!important;
  }
}


/* === v89: final tool / drawer / notifications compact polish === */
/* Keep headers in the normal flow everywhere so they never cover scrolled content. */
body.premium-ui.admin-page-body :is(
  #admin-tools-modal .admin-tools-modal-head,
  #clients-modal .admin-tools-modal-head,
  #client-history-modal .admin-tools-modal-head,
  .admin-drawer-head,
  .notifications-panel-head,
  .admin-day-sheet-head,
  .slot-quick-top
){
  position:relative!important;
  inset:auto!important;
  top:auto!important;
  z-index:1!important;
  flex-shrink:0!important;
  background:#18191d!important;
  box-shadow:none!important;
}

/* Modal panels scroll as one clean surface; no sticky-title overlap. */
body.premium-ui.admin-page-body :is(
  #admin-tools-modal .admin-tools-modal-panel,
  #clients-modal .admin-tools-modal-panel,
  #client-history-modal .admin-tools-modal-panel,
  .admin-drawer-panel
){
  overflow-y:auto!important;
  overflow-x:hidden!important;
  scroll-padding-top:12px!important;
  scrollbar-gutter:stable!important;
}

/* Notifications: compact, ordered header/actions and independent list scroll. */
body.premium-ui.admin-page-body #notifications-panel{
  background:#17181b!important;
  border-color:#303239!important;
  box-shadow:0 24px 70px rgba(0,0,0,.38)!important;
}
body.premium-ui.admin-page-body #notifications-panel .notifications-panel-head{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:12px!important;
  padding:14px!important;
  border-bottom:1px solid #2b2d33!important;
}
body.premium-ui.admin-page-body #notifications-panel .notifications-actions{
  display:flex!important;
  flex-wrap:nowrap!important;
  gap:6px!important;
}
body.premium-ui.admin-page-body #notifications-panel .notifications-actions .admin-link-btn{
  min-height:36px!important;
  padding:0 10px!important;
  border-radius:10px!important;
  font-size:11px!important;
  white-space:nowrap!important;
}
body.premium-ui.admin-page-body #notifications-panel .notifications-list{
  overflow-y:auto!important;
  min-height:0!important;
}

/* iPad/tablet: maximize useful area and compress vertical rhythm. */
@media (min-width:700px) and (max-width:1180px){
body.premium-ui.admin-page-body :is(#admin-tools-modal,#clients-modal,#client-history-modal) .admin-tools-modal-panel {
    border-radius:18px!important;
  }


  body.premium-ui.admin-page-body :is(
    #admin-tools-modal .admin-tools-modal-head,
    #clients-modal .admin-tools-modal-head,
    #client-history-modal .admin-tools-modal-head,
    .admin-drawer-head
  ){
    margin:0 0 8px!important;
    padding:0 0 9px!important;
    min-height:44px!important;
  }
  body.premium-ui.admin-page-body :is(
    #admin-tools-modal .admin-tools-modal-head h3,
    #clients-modal .admin-tools-modal-head h3,
    #client-history-modal .admin-tools-modal-head h3,
    .admin-drawer-head h3
  ){
    font-size:21px!important;
    line-height:1.1!important;
    margin:0!important;
  }
  body.premium-ui.admin-page-body .tools-modal-section{
    margin:0!important;
  }
  body.premium-ui.admin-page-body .tools-modal-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:9px!important;
  }
  body.premium-ui.admin-page-body :is(.tools-form-card,.tools-list-card,.records-modal-main,.slot-form-card){
    padding:10px!important;
    border-radius:13px!important;
  }
  body.premium-ui.admin-page-body :is(.tools-form-card,.tools-list-card) h4{
    margin:0 0 6px!important;
    font-size:15px!important;
  }
  body.premium-ui.admin-page-body .form-group{
    gap:4px!important;
    margin-bottom:7px!important;
  }
  body.premium-ui.admin-page-body .form-group label{
    font-size:11px!important;
    margin-bottom:2px!important;
  }
  body.premium-ui.admin-page-body :is(.admin-search,.admin-date-input,.form-group input,.form-group select,.form-group textarea){
    min-height:38px!important;
    padding:.52rem .68rem!important;
    border-radius:9px!important;
    font-size:13px!important;
  }
  body.premium-ui.admin-page-body .form-group textarea{
    min-height:70px!important;
    max-height:100px!important;
  }
  body.premium-ui.admin-page-body .tools-helper-text{
    margin:5px 0 8px!important;
    font-size:11.5px!important;
    line-height:1.35!important;
  }
  body.premium-ui.admin-page-body :is(.drawer-actions,.records-modal-actions){
    margin-top:8px!important;
    gap:6px!important;
  }
  body.premium-ui.admin-page-body :is(.drawer-actions,.records-modal-actions) :is(button,.admin-link-btn,.mini-btn,.btn-next,.btn-primary){
    min-height:36px!important;
    padding:0 10px!important;
    border-radius:9px!important;
    font-size:12px!important;
  }
  body.premium-ui.admin-page-body .records-modal-item{
    padding:9px 10px!important;
    border-radius:12px!important;
  }
  body.premium-ui.admin-page-body .records-modal-list{
    gap:7px!important;
  }
  body.premium-ui.admin-page-body .admin-tools-grid.compact{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:8px!important;
  }
  body.premium-ui.admin-page-body .admin-tools-grid.compact .tool-launch-btn{
    min-height:38px!important;
    padding:0 9px!important;
    font-size:11.5px!important;
  }
  /* Keep edit drawer fields in two columns on iPad instead of stacking everything. */
  body.premium-ui.admin-page-body #drawer-form .admin-form-grid,
  body.premium-ui.admin-page-body #drawer-form .form-row{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }
  body.premium-ui.admin-page-body #drawer-form{
    gap:8px!important;
  }
  body.premium-ui.admin-page-body #drawer-form .drawer-meta{
    margin-top:4px!important;
    padding:8px!important;
  }
}

/* Small tablets / landscape phones: still compact, but safe single-column where needed. */
@media (max-width:820px){
  body.premium-ui.admin-page-body #notifications-panel .notifications-panel-head{
    grid-template-columns:1fr!important;
  }
  body.premium-ui.admin-page-body #notifications-panel .notifications-actions{
    display:grid!important;
    grid-template-columns:1fr 1fr auto!important;
  }
}

@media (max-width:699px){
  body.premium-ui.admin-page-body #drawer-form .admin-form-grid,
  body.premium-ui.admin-page-body #drawer-form .form-row{
    grid-template-columns:1fr!important;
  }
}


/* === v90: refine admin day-bookings modal === */
body.premium-ui.admin-page-body #admin-day-modal .admin-day-modal-backdrop{
  background:rgba(5,6,10,.76)!important;
  backdrop-filter:blur(16px) saturate(112%)!important;
  -webkit-backdrop-filter:blur(16px) saturate(112%)!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet {
  border:1px solid #2c2f35!important;
  border-radius:28px!important;
  background:linear-gradient(180deg,#161616 0%,#121418 100%)!important;
  box-shadow:0 34px 90px rgba(0,0,0,.52)!important;
}

body.premium-ui.admin-page-body #admin-day-modal :is(.admin-day-sheet-head,.admin-day-sheet-list,.admin-day-sheet-actions){
  background:transparent!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet-head{
  padding:26px 26px 18px!important;
  border-bottom:1px solid rgba(255,255,255,.08)!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet-eyebrow{
  color:#b0a589!important;
  font-size:11px!important;
  font-weight:700!important;
  letter-spacing:.16em!important;
  margin-bottom:7px!important;
}
body.premium-ui.admin-page-body #admin-day-modal #admin-day-modal-title{
  color:#f7f5ee!important;
  font-size:21px!important;
  line-height:1.12!important;
  letter-spacing:-.03em!important;
}
body.premium-ui.admin-page-body #admin-day-modal #admin-day-modal-meta{
  margin-top:8px!important;
  color:#9d9f9a!important;
  font-size:14px!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-close{
  width:42px!important;
  height:42px!important;
  min-width:42px!important;
  border-radius:50%!important;
  background:#20232a!important;
  border:1px solid #343842!important;
  color:#efeee9!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-close:hover{
  background:#272b33!important;
  border-color:#454a56!important;
  color:#ffffff!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet-list{
  padding:14px 18px 12px!important;
  scrollbar-width:thin;
  scrollbar-color:#666b74 transparent;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet-list::-webkit-scrollbar{width:10px}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet-list::-webkit-scrollbar-track{background:transparent}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet-list::-webkit-scrollbar-thumb{background:#595e68;border-radius:999px;border:2px solid transparent;background-clip:padding-box}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-row{
  padding:0 0 14px!important;
  margin:0 0 14px!important;
  border-bottom:1px solid rgba(255,255,255,.07)!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-row:last-child{
  margin-bottom:0!important;
  padding-bottom:0!important;
  border-bottom:0!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-row-main{
  grid-template-columns:64px minmax(0,1fr) 22px!important;
  gap:14px!important;
  min-height:64px!important;
  padding:14px 14px 14px 16px!important;
  border-radius:18px!important;
  border:1px solid #30343b!important;
  background:linear-gradient(180deg,#1d2026 0%,#1a1d22 100%)!important;
  color:#f7f5ee!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-row-main::before{
  left:0!important;
  top:14px!important;
  bottom:14px!important;
  width:4px!important;
  border-radius:999px!important;
  background:linear-gradient(180deg,var(--day-accent) 0%,color-mix(in srgb,var(--day-accent) 72%, #ffffff 28%) 100%)!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-row-main:hover{
  background:linear-gradient(180deg,#232730 0%,#1f232b 100%)!important;
  border-color:#3b404b!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-row-main time{
  color:#ffffff!important;
  font-size:14px!important;
  font-weight:700!important;
  letter-spacing:-.02em!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-row-copy strong{
  display:block!important;
  color:#ffffff!important;
  font-size:16px!important;
  font-weight:680!important;
  margin-bottom:4px!important;
  line-height:1.2!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-row-copy small{
  color:#b0b3bd!important;
  font-size:13px!important;
  line-height:1.45!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-row-chevron{
  color:#b8bbc3!important;
  font-size:20px!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-row-chips{
  gap:7px!important;
  padding:9px 6px 0 84px!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-row-chips :is(.status-chip,.payment-chip){
  min-height:24px!important;
  padding:4px 9px!important;
  font-size:9px!important;
  letter-spacing:.04em!important;
  border-radius:999px!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-row-chips .status-chip{
  box-shadow:none!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-empty{
  padding:18px!important;
  border-radius:18px!important;
  background:#1b1e24!important;
  border:1px dashed #353943!important;
  color:#9a9ca4!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-empty strong{
  color:#ffffff!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet-actions{
  padding:16px 18px 18px!important;
  border-top:1px solid rgba(255,255,255,.08)!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(170px,max-content)!important;
  gap:12px!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet-actions .admin-link-btn,
body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet-actions .btn-primary{
  min-height:46px!important;
  border-radius:14px!important;
  font-weight:640!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet-actions .admin-link-btn{
  justify-content:flex-start!important;
  background:#202329!important;
  color:#f0efea!important;
  border-color:#333741!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet-actions .admin-link-btn:hover{
  background:#252932!important;
  border-color:#424753!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet-actions .btn-primary{
  justify-content:center!important;
  background:#f2f1ec!important;
  color:#17181b!important;
  border-color:#f2f1ec!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet-actions .btn-primary:hover{
  background:#ffffff!important;
  border-color:#ffffff!important;
}
@media (max-width:900px){
body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet {
    border-radius:26px 26px 0 0!important;
  }

  body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet-head{
    padding:22px 18px 16px!important;
  }
  body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet-list{
    padding:12px 12px 10px!important;
  }
  body.premium-ui.admin-page-body #admin-day-modal .admin-day-row-main{
    grid-template-columns:58px minmax(0,1fr) 18px!important;
    padding:13px 12px 12px 14px!important;
    gap:10px!important;
  }
  body.premium-ui.admin-page-body #admin-day-modal .admin-day-row-chips{
    padding:8px 4px 0 74px!important;
  }
  body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet-actions{
    grid-template-columns:1fr 1fr!important;
    padding:14px 14px calc(14px + env(safe-area-inset-bottom))!important;
  }
}
/* === v91: iPad responsive cleanup for notifications/tools + safer top spacing + unified admin forms === */
/* Pull the content close to the topbar, but stop it from touching/overlapping the header. */


body.premium-ui.admin-page-body .admin-content-area,
body.premium-ui.admin-page-body #admin-pane-dashboard{
  padding-top:0!important;
  margin-top:0!important;
}
@media (min-width:700px) and (max-width:1180px){


}

/* All admin tools/forms: same input language, same colors, same spacing. */
body.premium-ui.admin-page-body :is(
  .admin-tools-modal-panel,
  .clients-modal-panel,
  .admin-drawer-panel,
  .notifications-panel,
  .tools-form-card,
  .tools-list-card,
  .slot-form-card,
  .records-modal-main
) :is(.admin-search,.admin-date-input,.form-group input,.form-group select,.form-group textarea){
  min-height:44px!important;
  padding:.68rem .82rem!important;
  border-radius:12px!important;
  background:#121417!important;
  color:#f1f1ed!important;
  border:1px solid #343740!important;
  box-shadow:none!important;
}
body.premium-ui.admin-page-body :is(
  .admin-tools-modal-panel,
  .clients-modal-panel,
  .admin-drawer-panel,
  .notifications-panel,
  .tools-form-card,
  .tools-list-card,
  .slot-form-card,
  .records-modal-main
) :is(.admin-search,.admin-date-input,.form-group input,.form-group select,.form-group textarea)::placeholder{
  color:#848781!important;
}
body.premium-ui.admin-page-body :is(
  .admin-tools-modal-panel,
  .clients-modal-panel,
  .admin-drawer-panel,
  .notifications-panel,
  .tools-form-card,
  .tools-list-card,
  .slot-form-card,
  .records-modal-main
) :is(.admin-search,.admin-date-input,.form-group input,.form-group select,.form-group textarea):focus{
  border-color:#4a4e58!important;
  box-shadow:0 0 0 3px rgba(255,255,255,.05)!important;
  outline:none!important;
}
body.premium-ui.admin-page-body :is(.tools-form-card,.tools-list-card,.slot-form-card,.records-modal-main){
  background:#1a1c21!important;
  border:1px solid #2e3138!important;
}

/* Scheduler toolbar: stable and responsive on iPad, and month label never drops awkwardly. */
body.premium-ui.admin-page-body .scheduler-period-label{
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
/* Make week and month buttons share the exact same family of colors. */
body.premium-ui.admin-page-body .scheduler-top-controls :is(#calendar-view-week,#calendar-view-month){
  background:#212329!important;
  border:1px solid #363840!important;
  color:#dfdfda!important;
}
body.premium-ui.admin-page-body .scheduler-top-controls :is(#calendar-view-week,#calendar-view-month).active{
  background:#2c2f38!important;
  border-color:#484c58!important;
  color:#ffffff!important;
}
@media (min-width:700px) and (max-width:1180px){
  body.premium-ui.admin-page-body .scheduler-card .admin-toolbar{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:12px!important;
    align-items:start!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls{
    display:grid!important;
    grid-template-columns:minmax(160px,200px) minmax(160px,1fr) minmax(220px,280px)!important;
    grid-template-areas:
      "view add nav"
      "label label nav"!important;
    align-items:center!important;
    justify-content:stretch!important;
    gap:10px 12px!important;
    width:100%!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls > .admin-toolbar-group:first-child{
    grid-area:view!important;
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
    width:100%!important;
  }
  body.premium-ui.admin-page-body .scheduler-add-btn{
    grid-area:add!important;
    width:100%!important;
    min-width:0!important;
  }
  body.premium-ui.admin-page-body .scheduler-period-label{
    grid-area:label!important;
    width:100%!important;
    min-width:0!important;
    justify-content:flex-start!important;
    padding:0 4px!important;
    font-size:clamp(18px,2.2vw,22px)!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls > .admin-toolbar-group:last-child{
    grid-area:nav!important;
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:8px!important;
    width:100%!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls :is(#calendar-prev-period,#calendar-today,#calendar-next-period,#calendar-view-week,#calendar-view-month),
  body.premium-ui.admin-page-body .scheduler-add-btn{
    min-height:40px!important;
    padding:0 12px!important;
    font-size:13px!important;
  }
}

/* Notifications panel: responsive and compact on iPad. */
@media (min-width:700px) and (max-width:1180px){
body.premium-ui.admin-page-body #notifications-panel {
    border-radius:18px!important;
  }

  body.premium-ui.admin-page-body #notifications-panel .notifications-panel-head{
    grid-template-columns:minmax(0,1fr)!important;
    gap:10px!important;
    padding:12px!important;
  }
  body.premium-ui.admin-page-body #notifications-panel .notifications-actions{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:8px!important;
    width:100%!important;
  }
  body.premium-ui.admin-page-body #notifications-panel .notifications-actions .admin-link-btn{
    min-height:38px!important;
    padding:0 8px!important;
    font-size:12px!important;
  }
  body.premium-ui.admin-page-body #notifications-panel .notifications-list{
    max-height:calc(100dvh - 120px)!important;
    padding:4px 0 0!important;
  }
}

/* Extra compactness for all tools on iPad without breaking usability. */
@media (min-width:700px) and (max-width:1180px){
body.premium-ui.admin-page-body :is(#admin-tools-modal,#clients-modal,#client-history-modal) .admin-tools-modal-panel,
body.premium-ui.admin-page-body .admin-drawer-panel {
    border-radius:18px!important;
  }

  body.premium-ui.admin-page-body .tools-modal-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
  }
  body.premium-ui.admin-page-body .admin-tools-grid.compact{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:8px!important;
  }
  body.premium-ui.admin-page-body :is(.tools-form-card,.tools-list-card,.slot-form-card,.records-modal-main){
    padding:12px!important;
    border-radius:14px!important;
  }
  body.premium-ui.admin-page-body :is(.tools-form-card h4,.tools-list-card h4,.slot-form-card h4,.records-modal-main h4){
    margin-bottom:8px!important;
    font-size:15px!important;
  }
  body.premium-ui.admin-page-body .form-group{
    gap:4px!important;
    margin-bottom:8px!important;
  }
  body.premium-ui.admin-page-body .form-group label{
    font-size:11px!important;
    color:#c6c7c1!important;
  }
  body.premium-ui.admin-page-body .tools-helper-text,
  body.premium-ui.admin-page-body .drawer-meta,
  body.premium-ui.admin-page-body .admin-sub{
    font-size:11.5px!important;
    line-height:1.4!important;
  }
  body.premium-ui.admin-page-body :is(.tool-launch-btn,.admin-link-btn,.mini-btn,.btn-next,.btn-primary,.admin-pill){
    min-height:39px!important;
    border-radius:11px!important;
    font-size:12.5px!important;
  }
}


/* === v92: quick booking modal cleanup + remove stray input accessories === */
/* Hide browser/contact/password-manager style accessory decorations inside admin inputs where possible. */
body.premium-ui.admin-page-body :is(input,textarea,select)::-webkit-contacts-auto-fill-button,
body.premium-ui.admin-page-body :is(input,textarea,select)::-webkit-credentials-auto-fill-button,
body.premium-ui.admin-page-body :is(input,textarea,select)::-webkit-search-cancel-button,
body.premium-ui.admin-page-body :is(input,textarea,select)::-webkit-search-decoration,
body.premium-ui.admin-page-body :is(input,textarea,select)::-webkit-search-results-button,
body.premium-ui.admin-page-body :is(input,textarea,select)::-webkit-search-results-decoration,
body.premium-ui.admin-page-body :is(input,textarea,select)::-ms-clear,
body.premium-ui.admin-page-body :is(input,textarea,select)::-ms-reveal{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
  width:0!important;
  height:0!important;
}

/* Quick-booking panel: cleaner, smaller, more premium, especially on iPad. */
body.premium-ui.admin-page-body #slot-quick-panel .slot-quick-backdrop{
  background:rgba(6,7,10,.74)!important;
}
body.premium-ui.admin-page-body #slot-quick-panel .slot-quick-dialog{
  background:linear-gradient(180deg,#17191d 0%,#131519 100%)!important;
  border:1px solid #2f333b!important;
  box-shadow:0 32px 84px rgba(0,0,0,.46)!important;
}
body.premium-ui.admin-page-body #slot-quick-panel .slot-quick-top{
  position:relative!important;
  top:auto!important;
  z-index:2!important;
  background:transparent!important;
  padding:0 0 14px!important;
  margin:0 0 14px!important;
  border-bottom:1px solid rgba(255,255,255,.08)!important;
  box-shadow:none!important;
}
body.premium-ui.admin-page-body #slot-quick-panel .slot-quick-top h3{
  color:#f6f4ee!important;
  font-size:clamp(22px,2.2vw,28px)!important;
  line-height:1.1!important;
  letter-spacing:-.03em!important;
}
body.premium-ui.admin-page-body #slot-quick-panel .slot-quick-top .admin-link-btn#slot-quick-close{
  min-height:40px!important;
  padding:0 16px!important;
  border-radius:13px!important;
  background:#1f2229!important;
  border:1px solid #373b44!important;
  color:#f0efeb!important;
}
body.premium-ui.admin-page-body #slot-quick-panel .slot-quick-top .admin-link-btn#slot-quick-close:hover{
  background:#262a32!important;
  border-color:#474c57!important;
}
body.premium-ui.admin-page-body #slot-quick-panel .slot-quick-grid{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:14px!important;
}
body.premium-ui.admin-page-body #slot-quick-panel .quick-booking-form{
  width:min(760px,100%)!important;
  margin:0 auto!important;
  padding:18px!important;
  border-radius:20px!important;
  background:#1a1c20!important;
  border:1px solid #2f3239!important;
}
body.premium-ui.admin-page-body #slot-quick-panel .quick-booking-kicker{
  color:#a79f8a!important;
  font-size:10px!important;
  letter-spacing:.14em!important;
  margin-bottom:10px!important;
}
body.premium-ui.admin-page-body #slot-quick-panel .slot-form-head{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:start!important;
  gap:12px!important;
  margin-bottom:12px!important;
  padding-bottom:12px!important;
  border-bottom:1px solid rgba(255,255,255,.07)!important;
}
body.premium-ui.admin-page-body #slot-quick-panel .slot-form-head h4{
  color:#ffffff!important;
  font-size:18px!important;
  line-height:1.12!important;
  margin:0 0 4px!important;
}
body.premium-ui.admin-page-body #slot-quick-panel .quick-booking-intro{
  color:#a8aba4!important;
  font-size:13px!important;
  line-height:1.45!important;
}
body.premium-ui.admin-page-body #slot-quick-panel #quick-client-search{
  min-height:40px!important;
  padding:0 14px!important;
  border-radius:13px!important;
  white-space:nowrap!important;
}
body.premium-ui.admin-page-body #slot-quick-panel .admin-form-grid{
  gap:12px!important;
}
body.premium-ui.admin-page-body #slot-quick-panel .form-group{
  margin-bottom:10px!important;
}
body.premium-ui.admin-page-body #slot-quick-panel .field-help{
  color:#8f928d!important;
  font-size:11px!important;
  line-height:1.4!important;
  margin-top:6px!important;
}
body.premium-ui.admin-page-body #slot-quick-panel .btn-primary[type="submit"]{
  min-height:44px!important;
  border-radius:14px!important;
  margin-top:8px!important;
}
/* Remove any odd empty tinted bar/stray background feeling in the quick panel area. */
body.premium-ui.admin-page-body #slot-quick-panel .slot-quick-dialog::before,
body.premium-ui.admin-page-body #slot-quick-panel .slot-quick-dialog::after{
  content:none!important;
}

@media (min-width:700px) and (max-width:1180px){
body.premium-ui.admin-page-body #slot-quick-panel .slot-quick-dialog {
    border-radius:24px!important;
  }

  body.premium-ui.admin-page-body #slot-quick-panel .slot-quick-top{
    padding:0 0 12px!important;
    margin:0 0 12px!important;
  }
  body.premium-ui.admin-page-body #slot-quick-panel .quick-booking-form{
    width:min(720px,100%)!important;
    padding:16px!important;
    border-radius:18px!important;
  }
  body.premium-ui.admin-page-body #slot-quick-panel .admin-form-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
  }
  body.premium-ui.admin-page-body #slot-quick-panel .slot-form-head{
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:10px!important;
  }
  body.premium-ui.admin-page-body #slot-quick-panel :is(.form-group input,.form-group select,.form-group textarea){
    min-height:40px!important;
    padding:.6rem .76rem!important;
    border-radius:11px!important;
    font-size:13px!important;
  }
  body.premium-ui.admin-page-body #slot-quick-panel textarea{
    min-height:78px!important;
  }
}

@media (max-width:699px){
  body.premium-ui.admin-page-body #slot-quick-panel .slot-form-head{
    grid-template-columns:1fr!important;
  }
  body.premium-ui.admin-page-body #slot-quick-panel #quick-client-search,
  body.premium-ui.admin-page-body #slot-quick-panel .slot-quick-top .admin-link-btn#slot-quick-close{
    width:100%!important;
  }
}


/* === v93: public customer validation + remembered-profile UX === */
body.premium-ui:not(.admin-page-body) #booking-overlay .field-error{
  display:block!important;
  margin-top:6px!important;
  color:#a63a36!important;
  font-size:11px!important;
  line-height:1.4!important;
  font-weight:560!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .field-error.hidden,
body.premium-ui:not(.admin-page-body) #booking-overlay .customer-autofill-note.hidden{
  display:none!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .customer-autofill-note{
  display:block!important;
  margin-top:7px!important;
  padding:8px 10px!important;
  border-radius:10px!important;
  background:#e9eee8!important;
  border:1px solid #d5ddd3!important;
  color:#4f6351!important;
  font-size:10.5px!important;
  line-height:1.45!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay :is(#f-name,#f-lastname,#f-email,#f-phone):user-invalid{
  box-shadow:none!important;
}


/* === v94: remove white block behind public booking modal brand header === */
body.premium-ui:not(.admin-page-body) #booking-overlay .modal-header,
body.premium-ui:not(.admin-page-body) #mybookings-overlay .modal-header,
body.premium-ui:not(.admin-page-body) #mybookings-overlay .my-bookings-modal .modal-header{
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .modal-header::before,
body.premium-ui:not(.admin-page-body) #booking-overlay .modal-header::after,
body.premium-ui:not(.admin-page-body) #mybookings-overlay .modal-header::before,
body.premium-ui:not(.admin-page-body) #mybookings-overlay .modal-header::after{
  content:none!important;
  display:none!important;
}


/* === v95: remove top scheduler new-booking button above calendar === */
body.premium-ui.admin-page-body #scheduler-new-booking,
body.premium-ui.admin-page-body .scheduler-top-controls .scheduler-add-btn{
  display:none!important;
}


/* === v98: dashboard KPI cards privacy/show-hide control === */
body.premium-ui.admin-page-body .dashboard-kpi-controls{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  width:100%!important;
  margin:0 0 10px!important;
}
body.premium-ui.admin-page-body .dashboard-kpi-toggle{
  min-height:36px!important;
  padding:0 12px!important;
  border-radius:11px!important;
  background:#181a1f!important;
  border:1px solid #30333a!important;
  color:#cfd0cb!important;
  font-size:11px!important;
  font-weight:560!important;
  box-shadow:none!important;
}
body.premium-ui.admin-page-body .dashboard-kpi-toggle:hover,
body.premium-ui.admin-page-body .dashboard-kpi-toggle:focus{
  background:#202229!important;
  border-color:#3d414a!important;
  color:#ffffff!important;
  transform:none!important;
}
body.premium-ui.admin-page-body #admin-kpis.is-collapsed{
  display:none!important;
}
body.premium-ui.admin-page-body #admin-kpis.is-collapsed + .scheduler-card{
  margin-top:0!important;
}
@media (max-width:900px){
  body.premium-ui.admin-page-body .dashboard-kpi-controls{
    margin-bottom:8px!important;
  }
  body.premium-ui.admin-page-body .dashboard-kpi-toggle{
    width:auto!important;
    min-height:38px!important;
  }
}


/* === v99: customer modal tone darker + stronger autofill flow + responsive calendar top row === */
/* Public booking modal: keep it light, but a touch darker/warmer than pure white. */
body.premium-ui:not(.admin-page-body) #booking-overlay{
  --book-bg:#efeee8!important;
  --book-surface:#f7f6f1!important;
  --book-ink:#17181a!important;
  --book-muted:#666862!important;
  --book-line:#d9d7cf!important;
  --book-soft:#e7e5de!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .booking-modal,
body.premium-ui:not(.admin-page-body) #mybookings-overlay .my-bookings-modal{
  background:var(--book-bg)!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .modal-header,
body.premium-ui:not(.admin-page-body) #mybookings-overlay .modal-header{
  background:rgba(239,238,232,.96)!important;
  border-bottom:1px solid rgba(23,24,26,.08)!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .option-card,
body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box,
body.premium-ui:not(.admin-page-body) #booking-overlay .calendar-wrap,
body.premium-ui:not(.admin-page-body) #booking-overlay .time-slot,
body.premium-ui:not(.admin-page-body) #booking-overlay :is(input,textarea,select){
  background:var(--book-surface)!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box{
  border-color:#d8d5cc!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box strong{
  color:#1a1b1f!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .double-booking-box span,
body.premium-ui:not(.admin-page-body) #booking-overlay .customer-autofill-note{
  color:#5f615b!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .customer-autofill-note{
  display:block!important;
  margin-top:7px!important;
  padding:8px 10px!important;
  border-radius:12px!important;
  background:rgba(0,0,0,.04)!important;
  border:1px solid rgba(0,0,0,.06)!important;
}

/* Scheduler top controls: month/week/nav in one clean responsive row. */
body.premium-ui.admin-page-body .scheduler-card .admin-toolbar{
  display:grid!important;
  grid-template-columns:minmax(220px,1fr) auto!important;
  align-items:center!important;
  gap:12px 16px!important;
}
body.premium-ui.admin-page-body .scheduler-top-controls{
  display:grid!important;
  grid-template-columns:auto minmax(140px,1fr) auto!important;
  align-items:center!important;
  gap:10px 12px!important;
  width:100%!important;
  min-width:0!important;
}
body.premium-ui.admin-page-body .scheduler-top-controls > .admin-toolbar-group{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  min-width:0!important;
  flex-wrap:nowrap!important;
}
body.premium-ui.admin-page-body .scheduler-top-controls > .admin-toolbar-group:first-child{
  justify-content:flex-start!important;
}
body.premium-ui.admin-page-body .scheduler-top-controls > .admin-toolbar-group:last-child{
  justify-content:flex-end!important;
}
body.premium-ui.admin-page-body .scheduler-period-label{
  min-width:0!important;
  width:100%!important;
  justify-content:center!important;
  text-align:center!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  padding:0 8px!important;
}
body.premium-ui.admin-page-body .scheduler-top-controls :is(#calendar-prev-period,#calendar-today,#calendar-next-period,#calendar-view-week,#calendar-view-month){
  min-height:40px!important;
  padding:0 12px!important;
  white-space:nowrap!important;
  font-size:13px!important;
}
body.premium-ui.admin-page-body .scheduler-top-controls :is(#calendar-view-week,#calendar-view-month){
  background:#212329!important;
  border:1px solid #363840!important;
  color:#dfdfda!important;
}
body.premium-ui.admin-page-body .scheduler-top-controls :is(#calendar-view-week,#calendar-view-month).active{
  background:#2c2f38!important;
  border-color:#484c58!important;
  color:#ffffff!important;
}

/* iPad/tablet specific packing for top controls without awkward wraps. */
@media (min-width:700px) and (max-width:1180px){
  body.premium-ui.admin-page-body .scheduler-card .admin-toolbar{
    grid-template-columns:1fr!important;
    align-items:start!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls{
    grid-template-columns:auto minmax(0,1fr) auto!important;
    gap:8px 10px!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls > .admin-toolbar-group{
    gap:6px!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls :is(#calendar-prev-period,#calendar-today,#calendar-next-period,#calendar-view-week,#calendar-view-month){
    min-height:38px!important;
    padding:0 10px!important;
    font-size:12px!important;
  }
  body.premium-ui.admin-page-body .scheduler-period-label{
    font-size:clamp(16px,2vw,20px)!important;
  }
}
@media (max-width:699px){
  body.premium-ui.admin-page-body .scheduler-top-controls{
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls > .admin-toolbar-group{
    justify-content:center!important;
    flex-wrap:wrap!important;
  }
  body.premium-ui.admin-page-body .scheduler-period-label{
    order:-1!important;
  }
}

/* === v100: public header + services/products/showroom refresh === */
body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury{
  position:fixed!important;
  top:18px!important;
  left:18px!important;
  right:18px!important;
  z-index:1400!important;
  display:grid!important;
  grid-template-columns:auto 1fr!important;
  align-items:center!important;
  gap:18px!important;
  padding:12px 18px!important;
  border:1px solid rgba(201,168,76,.14)!important;
  border-radius:20px!important;
  background:linear-gradient(180deg,rgba(11,11,11,.94),rgba(14,14,14,.9))!important;
  box-shadow:0 18px 70px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.03)!important;
}
body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-logo img{height:34px!important;width:auto!important;display:block}
body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links{
  display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:10px!important;min-width:0!important;
}
body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links > a,
body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  min-height:42px!important;padding:0 12px!important;border-radius:999px!important;
  color:#b9b3a0!important;font-size:12px!important;letter-spacing:.08em!important;text-transform:uppercase!important;
  border:1px solid transparent!important;background:transparent!important;transition:all .25s ease!important;
}
body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links > a:hover,
body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button:hover{color:#f3d98e!important;background:rgba(255,255,255,.04)!important;border-color:rgba(255,255,255,.08)!important}
body.premium-ui:not(.admin-page-body) .nav-link-button{cursor:pointer;font-family:inherit}
body.premium-ui:not(.admin-page-body) .nav-link-button--muted{color:#ddd8c6!important;border-color:rgba(255,255,255,.08)!important;background:rgba(255,255,255,.03)!important}
body.premium-ui:not(.admin-page-body) .nav-lang-switch{display:inline-flex;align-items:center;gap:6px;padding:5px;border-radius:999px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08)}
body.premium-ui:not(.admin-page-body) .lang-btn{border:0;background:transparent;color:#aca58f;min-width:40px;height:34px;border-radius:999px;font-size:12px;letter-spacing:.08em;cursor:pointer}
body.premium-ui:not(.admin-page-body) .lang-btn.active{background:#d6b24b;color:#111;font-weight:700}
body.premium-ui:not(.admin-page-body) .nav-cta.nav-cta-main{min-height:44px!important;padding:0 18px!important;border-radius:14px!important;background:linear-gradient(180deg,#262116,#17140d)!important;color:#f4d77f!important;border:1px solid rgba(214,178,75,.46)!important;box-shadow:0 10px 24px rgba(0,0,0,.22)!important}
body.premium-ui:not(.admin-page-body) #hero.hero-luxury{padding-top:172px!important;min-height:90vh!important}
body.premium-ui:not(.admin-page-body) .hero-copy-wrap{max-width:920px!important;padding-inline:24px!important}
body.premium-ui:not(.admin-page-body) .hero-kicker{display:inline-flex;align-self:center;margin-bottom:18px;padding:8px 14px;border-radius:999px;border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.03);color:#c5b27a;font-size:12px;letter-spacing:.14em;text-transform:uppercase}
body.premium-ui:not(.admin-page-body) .hero-headline{max-width:920px;margin:8px auto 0;color:#f7f3e8;font-size:clamp(32px,5vw,62px);line-height:1.02;letter-spacing:-.055em;text-wrap:balance}
body.premium-ui:not(.admin-page-body) .hero-lead{max-width:740px;margin:18px auto 0;color:#b8b5ac;font-size:16px;line-height:1.8}
body.premium-ui:not(.admin-page-body) .hero-actions-lux{margin-top:28px}
body.premium-ui:not(.admin-page-body) .public-section{padding:96px max(24px,calc((100% - 1180px)/2));background:#151515;scroll-margin-top:118px}
body.premium-ui:not(.admin-page-body) .services-showcase{background:#131313}
body.premium-ui:not(.admin-page-body) .service-showcase-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
body.premium-ui:not(.admin-page-body) .service-showcase-card{padding:28px;border-radius:26px;background:linear-gradient(180deg,#1b1b1d,#141416)!important;border:1px solid rgba(255,255,255,.08)!important;box-shadow:0 16px 42px rgba(0,0,0,.2)}
body.premium-ui:not(.admin-page-body) .service-showcase-top{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px}
body.premium-ui:not(.admin-page-body) .service-showcase-top h3{margin:0;color:#f3f3ef;font-size:24px;line-height:1.1;letter-spacing:-.04em}
body.premium-ui:not(.admin-page-body) .service-showcase-meta{display:inline-flex;white-space:nowrap;padding:8px 12px;border-radius:999px;background:rgba(214,178,75,.08);border:1px solid rgba(214,178,75,.18);color:#dbc278;font-size:12px;letter-spacing:.08em}
body.premium-ui:not(.admin-page-body) .service-showcase-card p{margin:0;color:#a8a8a4;line-height:1.75;font-size:15px}
body.premium-ui:not(.admin-page-body) .section-actions{margin-top:28px;display:flex;justify-content:flex-start}
body.premium-ui:not(.admin-page-body) .showroom-section{background:#121212}
body.premium-ui:not(.admin-page-body) .showroom-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
body.premium-ui:not(.admin-page-body) .showroom-card{border-radius:28px;overflow:hidden;background:#181818;border:1px solid rgba(255,255,255,.08);box-shadow:0 18px 50px rgba(0,0,0,.22)}
body.premium-ui:not(.admin-page-body) .showroom-photo{aspect-ratio:4/5;background:#111}
body.premium-ui:not(.admin-page-body) .showroom-photo img{width:100%;height:100%;display:block;object-fit:cover}
body.premium-ui:not(.admin-page-body) .showroom-copy{padding:20px 22px 24px}
body.premium-ui:not(.admin-page-body) .showroom-copy h3{margin:0 0 10px;color:#f3f3ef;font-size:22px;letter-spacing:-.03em}
body.premium-ui:not(.admin-page-body) .showroom-copy p{margin:0;color:#aaa79f;line-height:1.75;font-size:15px}
body.premium-ui:not(.admin-page-body) .contact-cta-section{padding-top:72px!important;padding-bottom:72px!important;background:#111}
body.premium-ui:not(.admin-page-body) .contact-cta-card{display:grid;grid-template-columns:minmax(0,1.25fr) auto;align-items:center;gap:28px;padding:34px;border-radius:28px;background:linear-gradient(135deg,#1b1b1e,#111214);border:1px solid rgba(255,255,255,.08);box-shadow:0 20px 60px rgba(0,0,0,.24)}
body.premium-ui:not(.admin-page-body) .contact-cta-card h2{margin:10px 0 0;color:#f4f2eb;font-size:clamp(26px,4vw,44px);line-height:1.05;letter-spacing:-.045em}
body.premium-ui:not(.admin-page-body) .contact-cta-card p{margin:14px 0 0;color:#adaca6;max-width:640px;line-height:1.75}
body.premium-ui:not(.admin-page-body) .contact-cta-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
body.premium-ui:not(.admin-page-body) .showcase-empty{background:linear-gradient(180deg,#1a1a1c,#141416)!important;border:1px solid rgba(255,255,255,.08)!important;border-radius:24px;padding:28px;color:#f2efe6}
body.premium-ui:not(.admin-page-body) .showcase-empty p{color:#aaa79f}
@media(max-width:1180px){
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links{gap:8px!important;flex-wrap:wrap!important;justify-content:flex-end!important}
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links > a,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button{padding:0 10px!important;font-size:11px!important}
  body.premium-ui:not(.admin-page-body) .service-showcase-grid,
  body.premium-ui:not(.admin-page-body) .showroom-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:900px){
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury{left:12px!important;right:12px!important;top:12px!important;grid-template-columns:1fr auto!important}
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-menu-toggle{display:flex!important}
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links{grid-column:1/-1!important;display:grid!important;grid-template-columns:1fr!important;justify-content:stretch!important;padding-top:0!important;max-height:0;overflow:hidden;opacity:0;pointer-events:none;transition:max-height .25s ease,opacity .2s ease,padding .2s ease}
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury.menu-open .nav-links{max-height:560px;opacity:1;pointer-events:auto;padding-top:12px!important}
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links > a,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-cta.nav-cta-main{width:100%!important;justify-content:center!important}
  body.premium-ui:not(.admin-page-body) .nav-lang-switch{justify-content:center}
  body.premium-ui:not(.admin-page-body) #hero.hero-luxury{padding-top:148px!important;min-height:auto!important;padding-bottom:90px!important}
  body.premium-ui:not(.admin-page-body) .public-section,.product-showcase{padding:72px 22px!important}
  body.premium-ui:not(.admin-page-body) .service-showcase-grid,
  body.premium-ui:not(.admin-page-body) .showroom-grid{grid-template-columns:1fr}
  body.premium-ui:not(.admin-page-body) .contact-cta-card{grid-template-columns:1fr}
}

/* === v101: align week-view colors with month-view and refine main homepage === */
body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-corner,
body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-time,
body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-day-head{
  background:#111216!important;
  border-color:rgba(255,255,255,.065)!important;
}
body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-cell{
  background:#17181c!important;
  border-color:rgba(255,255,255,.065)!important;
}
body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-cell:hover,
body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-cell.is-selected-day{
  background:#202126!important;
}
body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-day-head.active{
  background:#202126!important;
}
body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-day-head.active span{
  background:#f3f3f4!important;
  color:#111216!important;
}
body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-day-head strong{color:#8b8e95!important;font-size:10px!important;letter-spacing:.08em!important;text-transform:uppercase!important}
body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-day-head span{color:#f1f1f2!important;font-size:1.15rem!important}
body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-item.booking{
  min-height:38px!important;
  padding:6px 8px!important;
  border-radius:9px!important;
  background:#24262b!important;
  border:1px solid rgba(255,255,255,.09)!important;
  color:#f0f0f1!important;
}
body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-item.booking small{color:#898c92!important}
body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-item.block{
  background:#1e2126!important;
  border:1px solid rgba(255,255,255,.08)!important;
  color:#d9dadd!important;
}
body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-cell-add.always-visible{
  background:#1d1f24!important;
  border-color:rgba(255,255,255,.08)!important;
  color:#f4f4f5!important;
}
body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-cell-add.always-visible small{color:#9ea1a8!important}

body.premium-ui:not(.admin-page-body) .hero-luxury .hero-content{
  animation:heroFadeUp .7s ease both;
}
body.premium-ui:not(.admin-page-body) .services-showcase .service-showcase-card,
body.premium-ui:not(.admin-page-body) .showroom-section .showroom-card,
body.premium-ui:not(.admin-page-body) .product-showcase .product-card,
body.premium-ui:not(.admin-page-body) .contact-cta-card{
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
body.premium-ui:not(.admin-page-body) .services-showcase .service-showcase-card:hover,
body.premium-ui:not(.admin-page-body) .showroom-section .showroom-card:hover,
body.premium-ui:not(.admin-page-body) .product-showcase .product-card:hover,
body.premium-ui:not(.admin-page-body) .contact-cta-card:hover{
  transform:translateY(-3px);
  box-shadow:0 22px 60px rgba(0,0,0,.28);
  border-color:rgba(214,178,75,.16)!important;
}
@keyframes heroFadeUp{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}

/* === v102: admin tools modal redesign + iPad/mobile landscape compactness + Greek-only public header === */
body.premium-ui:not(.admin-page-body) .nav-lang-switch{display:none!important}
body.premium-ui.admin-page-body :is(#admin-tools-modal,#clients-modal,#client-history-modal) .admin-tools-modal-panel,
body.premium-ui.admin-page-body .admin-drawer-panel,
body.premium-ui.admin-page-body #slot-quick-panel .slot-quick-dialog {
  flex-direction:column!important;
  border-radius:24px!important;
  background:linear-gradient(180deg,#17191d 0%,#121419 100%)!important;
  border:1px solid rgba(255,255,255,.09)!important;
  box-shadow:0 28px 84px rgba(0,0,0,.46)!important;
}

body.premium-ui.admin-page-body :is(#admin-tools-modal,#clients-modal,#client-history-modal) .admin-tools-modal-head,
body.premium-ui.admin-page-body .admin-drawer-head,
body.premium-ui.admin-page-body #slot-quick-panel .slot-quick-top{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:12px!important;
  padding:0 0 12px!important;
  margin:0 0 14px!important;
  border-bottom:1px solid rgba(255,255,255,.08)!important;
  background:linear-gradient(180deg,#17191d 0%,rgba(23,25,29,.98) 78%,rgba(23,25,29,0) 100%)!important;
}
body.premium-ui.admin-page-body :is(#admin-tools-modal,#clients-modal,#client-history-modal) .admin-tools-modal-head h3,
body.premium-ui.admin-page-body .admin-drawer-head h3,
body.premium-ui.admin-page-body #slot-quick-panel .slot-quick-top h3{
  margin:2px 0 0!important;
  color:#f7f6f1!important;
  font-size:clamp(20px,2vw,30px)!important;
  line-height:1.08!important;
  letter-spacing:-.03em!important;
}
body.premium-ui.admin-page-body :is(#admin-tools-modal,#clients-modal,#client-history-modal) .admin-sub,
body.premium-ui.admin-page-body .admin-drawer-head .admin-sub,
body.premium-ui.admin-page-body #slot-quick-panel .admin-sub,
body.premium-ui.admin-page-body .quick-booking-kicker{
  color:#aa9d7b!important;
  font-size:10px!important;
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
}
body.premium-ui.admin-page-body :is(.tools-form-card,.tools-list-card,.slot-form-card,.records-modal-main,.analytics-card,.client-card){
  background:linear-gradient(180deg,#1c1f25 0%,#181b21 100%)!important;
  border:1px solid rgba(255,255,255,.08)!important;
  border-radius:18px!important;
  box-shadow:none!important;
}
body.premium-ui.admin-page-body :is(.tools-form-card,.tools-list-card,.slot-form-card){padding:14px!important}
body.premium-ui.admin-page-body .tools-modal-grid{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:14px!important;
  align-items:start!important;
}
body.premium-ui.admin-page-body .products-editor-grid{
  grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr)!important;
}
body.premium-ui.admin-page-body .admin-form-grid{gap:10px!important}
body.premium-ui.admin-page-body .form-group{margin-bottom:10px!important;gap:5px!important}
body.premium-ui.admin-page-body .form-group label{font-size:11px!important;color:#c9cbc5!important;letter-spacing:.04em!important;text-transform:uppercase!important}
body.premium-ui.admin-page-body :is(input,select,textarea,.admin-search){
  min-height:42px!important;
  padding:.68rem .78rem!important;
  border-radius:12px!important;
  background:#111318!important;
  border:1px solid rgba(255,255,255,.08)!important;
  color:#f6f5f1!important;
  box-shadow:none!important;
}
body.premium-ui.admin-page-body textarea{min-height:92px!important;resize:vertical!important}
body.premium-ui.admin-page-body :is(input,select,textarea,.admin-search):focus{
  border-color:rgba(214,178,75,.4)!important;
  box-shadow:0 0 0 3px rgba(214,178,75,.08)!important;
}
body.premium-ui.admin-page-body :is(.admin-link-btn,.tool-launch-btn,.mini-btn,.btn-next,.btn-primary,.admin-pill){
  min-height:42px!important;
  padding:0 14px!important;
  border-radius:12px!important;
  font-size:12.5px!important;
  font-weight:600!important;
}
body.premium-ui.admin-page-body #clients-modal-list,
body.premium-ui.admin-page-body #client-history-list,
body.premium-ui.admin-page-body #records-modal-list,
body.premium-ui.admin-page-body #services-admin-list,
body.premium-ui.admin-page-body #barbers-admin-list,
body.premium-ui.admin-page-body #products-admin-list,
body.premium-ui.admin-page-body #showroom-admin-list,
body.premium-ui.admin-page-body #recurring-break-list,
body.premium-ui.admin-page-body #blackout-day-list{
  min-height:0!important;
  max-height:calc(100dvh - 260px)!important;
  overflow:auto!important;
  overscroll-behavior:contain!important;
  -webkit-overflow-scrolling:touch!important;
  padding-right:2px!important;
}
body.premium-ui.admin-page-body .clients-list.compact{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
body.premium-ui.admin-page-body .client-card{padding:13px 14px!important;align-items:flex-start!important}
body.premium-ui.admin-page-body .client-card-main strong{font-size:15px!important}
body.premium-ui.admin-page-body .client-card-main span{font-size:12px!important;line-height:1.45!important}
body.premium-ui.admin-page-body .client-card-main small{font-size:11px!important;line-height:1.45!important}
body.premium-ui.admin-page-body .client-card-actions{width:100%!important;display:flex!important;justify-content:flex-end!important;gap:8px!important;flex-wrap:wrap!important}
body.premium-ui.admin-page-body #slot-quick-panel .slot-quick-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:12px!important}
body.premium-ui.admin-page-body #slot-quick-panel .quick-booking-form{width:min(760px,100%)!important;margin:0 auto!important}
body.premium-ui.admin-page-body #slot-quick-panel .slot-form-head{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:10px!important}
body.premium-ui.admin-page-body #slot-quick-panel .quick-booking-form .btn-primary[type="submit"]{margin-top:8px!important}

@media (min-width:820px) and (max-width:1366px) and (orientation:landscape){
body.premium-ui.admin-page-body :is(#admin-tools-modal,#clients-modal,#client-history-modal) .admin-tools-modal-panel,
body.premium-ui.admin-page-body .admin-drawer-panel,
body.premium-ui.admin-page-body #slot-quick-panel .slot-quick-dialog {
    border-radius:20px!important;
  }

  body.premium-ui.admin-page-body :is(#admin-tools-modal,#clients-modal,#client-history-modal) .admin-tools-modal-head,
  body.premium-ui.admin-page-body .admin-drawer-head,
  body.premium-ui.admin-page-body #slot-quick-panel .slot-quick-top{
    padding:0 0 10px!important;
    margin:0 0 10px!important;
  }
  body.premium-ui.admin-page-body .tools-modal-grid,
  body.premium-ui.admin-page-body .products-editor-grid{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    gap:10px!important;
  }
  body.premium-ui.admin-page-body :is(.tools-form-card,.tools-list-card,.slot-form-card){padding:12px!important;border-radius:16px!important}
  body.premium-ui.admin-page-body .form-group{margin-bottom:8px!important}
  body.premium-ui.admin-page-body :is(input,select,textarea,.admin-search){min-height:40px!important;padding:.6rem .72rem!important;font-size:13px!important}
  body.premium-ui.admin-page-body textarea{min-height:76px!important}
  body.premium-ui.admin-page-body :is(.admin-link-btn,.tool-launch-btn,.mini-btn,.btn-next,.btn-primary,.admin-pill){min-height:40px!important;font-size:12px!important}
  body.premium-ui.admin-page-body #clients-modal-list,
  body.premium-ui.admin-page-body #client-history-list,
  body.premium-ui.admin-page-body #records-modal-list,
  body.premium-ui.admin-page-body #services-admin-list,
  body.premium-ui.admin-page-body #barbers-admin-list,
  body.premium-ui.admin-page-body #products-admin-list,
  body.premium-ui.admin-page-body #showroom-admin-list,
  body.premium-ui.admin-page-body #recurring-break-list,
  body.premium-ui.admin-page-body #blackout-day-list{max-height:calc(100dvh - 210px)!important}
  body.premium-ui.admin-page-body #slot-quick-panel .quick-booking-form{width:min(700px,100%)!important;padding:12px!important;border-radius:16px!important}
}

@media (min-width:700px) and (max-width:1024px){
  body.premium-ui.admin-page-body .client-card{flex-direction:column!important}
  body.premium-ui.admin-page-body .client-card-actions{justify-content:stretch!important}
  body.premium-ui.admin-page-body .client-card-actions .mini-btn{flex:1 1 160px!important}
}

@media (max-width:820px){
body.premium-ui.admin-page-body :is(#admin-tools-modal,#clients-modal,#client-history-modal) .admin-tools-modal-panel,
body.premium-ui.admin-page-body .admin-drawer-panel,
body.premium-ui.admin-page-body #slot-quick-panel .slot-quick-dialog {
    border-radius:18px!important;
  }

  body.premium-ui.admin-page-body .tools-modal-grid,
  body.premium-ui.admin-page-body .products-editor-grid,
  body.premium-ui.admin-page-body #slot-quick-panel .slot-form-head,
  body.premium-ui.admin-page-body #slot-quick-panel .quick-booking-form > .admin-form-grid{
    grid-template-columns:1fr!important;
  }
  body.premium-ui.admin-page-body #clients-modal-list,
  body.premium-ui.admin-page-body #client-history-list,
  body.premium-ui.admin-page-body #records-modal-list,
  body.premium-ui.admin-page-body #services-admin-list,
  body.premium-ui.admin-page-body #barbers-admin-list,
  body.premium-ui.admin-page-body #products-admin-list,
  body.premium-ui.admin-page-body #showroom-admin-list,
  body.premium-ui.admin-page-body #recurring-break-list,
  body.premium-ui.admin-page-body #blackout-day-list{max-height:none!important}
  body.premium-ui.admin-page-body .client-card-actions{justify-content:stretch!important}
  body.premium-ui.admin-page-body .client-card-actions .mini-btn,
  body.premium-ui.admin-page-body #slot-quick-panel #quick-client-search,
  body.premium-ui.admin-page-body #slot-quick-panel #slot-quick-close{width:100%!important}
}

/* === v103: glass monochrome public header + cleaner landing + stable second-booking choice === */
body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury{
  top:16px!important;
  left:16px!important;
  right:16px!important;
  padding:12px 14px!important;
  border-radius:20px!important;
  border:1px solid rgba(255,255,255,.12)!important;
  background:linear-gradient(180deg,rgba(18,19,22,.72) 0%,rgba(10,11,14,.64) 100%)!important;
  backdrop-filter:blur(18px)!important;
  -webkit-backdrop-filter:blur(18px)!important;
  box-shadow:0 16px 52px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.05)!important;
}
body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links{
  gap:8px!important;
}
body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links > a,
body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button{
  min-height:42px!important;
  padding:0 14px!important;
  border-radius:999px!important;
  color:rgba(255,255,255,.74)!important;
  font-size:11.5px!important;
  letter-spacing:.08em!important;
  border:1px solid transparent!important;
  background:transparent!important;
  transition:transform .22s ease, color .22s ease, background .22s ease, border-color .22s ease, box-shadow .22s ease!important;
}
body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links > a:hover,
body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button:hover{
  color:#fff!important;
  background:rgba(255,255,255,.05)!important;
  border-color:rgba(255,255,255,.09)!important;
  transform:translateY(-1px)!important;
}
body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button--soft{
  border-color:rgba(255,255,255,.10)!important;
  background:rgba(255,255,255,.035)!important;
}
body.premium-ui:not(.admin-page-body) .nav-cta.nav-cta-main,
body.premium-ui:not(.admin-page-body) .hero-actions-lux .btn-primary,
body.premium-ui:not(.admin-page-body) .hero-actions-lux .btn-outline{
  min-height:48px!important;
  padding:0 20px!important;
  border-radius:16px!important;
  font-size:12.5px!important;
  letter-spacing:.06em!important;
  transition:transform .24s ease, box-shadow .24s ease, background .24s ease, border-color .24s ease!important;
}
body.premium-ui:not(.admin-page-body) .nav-cta.nav-cta-main,
body.premium-ui:not(.admin-page-body) .hero-actions-lux .btn-primary{
  background:linear-gradient(180deg,#fbfbfb 0%,#e7e7e7 100%)!important;
  color:#101114!important;
  border:1px solid rgba(255,255,255,.65)!important;
  box-shadow:0 10px 24px rgba(0,0,0,.20)!important;
}
body.premium-ui:not(.admin-page-body) .hero-actions-lux .btn-outline{
  background:rgba(255,255,255,.045)!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.12)!important;
  box-shadow:none!important;
}
body.premium-ui:not(.admin-page-body) :is(.nav-cta.nav-cta-main,.hero-actions-lux .btn-primary,.hero-actions-lux .btn-outline):hover{
  transform:translateY(-2px)!important;
  box-shadow:0 16px 34px rgba(0,0,0,.24)!important;
}
body.premium-ui:not(.admin-page-body) :is(.nav-cta.nav-cta-main,.hero-actions-lux .btn-primary,.hero-actions-lux .btn-outline):active{
  transform:translateY(0)!important;
}
body.premium-ui:not(.admin-page-body) #hero.hero-luxury{
  padding-top:160px!important;
  min-height:82vh!important;
}
body.premium-ui:not(.admin-page-body) .hero-copy-wrap{max-width:860px!important}
body.premium-ui:not(.admin-page-body) .hero-kicker{
  margin-bottom:16px!important;
  padding:8px 13px!important;
  border-radius:999px!important;
  border:1px solid rgba(255,255,255,.10)!important;
  background:rgba(255,255,255,.03)!important;
  color:rgba(255,255,255,.72)!important;
}
body.premium-ui:not(.admin-page-body) .hero-headline{
  max-width:820px!important;
  margin-top:12px!important;
  color:#fafafa!important;
  font-size:clamp(34px,5vw,64px)!important;
  line-height:1.02!important;
  letter-spacing:-.06em!important;
}
body.premium-ui:not(.admin-page-body) .hero-lead{
  max-width:640px!important;
  margin-top:16px!important;
  color:rgba(255,255,255,.70)!important;
  font-size:15.5px!important;
  line-height:1.8!important;
}
body.premium-ui:not(.admin-page-body) .hero-actions-lux{
  margin-top:30px!important;
  gap:12px!important;
}
body.premium-ui:not(.admin-page-body) .showcase-intro p{max-width:760px!important;color:#aeb1b7!important}
body.premium-ui:not(.admin-page-body) #service-options .double-booking-box{
  transition:background .2s ease, border-color .2s ease, box-shadow .2s ease!important;
}
body.premium-ui:not(.admin-page-body) #service-options .double-booking-box.smooth-enter{
  animation:none!important;
  opacity:1!important;
  transform:none!important;
}
@media(max-width:900px){
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury{
    left:12px!important;right:12px!important;top:12px!important;padding:12px!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury.menu-open .nav-links{max-height:320px!important}
  body.premium-ui:not(.admin-page-body) #hero.hero-luxury{padding-top:142px!important;padding-bottom:82px!important;min-height:auto!important}
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links > a,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-cta.nav-cta-main{width:100%!important;justify-content:center!important}
}

/* === v105: flatter monochrome header, cleaner landing, product carousel, minimal showroom === */
body.premium-ui:not(.admin-page-body) .section-screen-reader{
  position:absolute!important;
  width:1px!important;height:1px!important;
  padding:0!important;margin:-1px!important;
  overflow:hidden!important;clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;border:0!important;
}
body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury{
  top:24px!important;
  left:32px!important;
  right:32px!important;
  padding:0!important;
  background:transparent!important;
  border:none!important;
  border-radius:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-logo img{
  height:30px!important;
}
body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links{
  gap:18px!important;
  align-items:center!important;
}
body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links > a,
body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button,
body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button--soft{
  min-height:auto!important;
  padding:0!important;
  background:transparent!important;
  border:none!important;
  border-radius:0!important;
  box-shadow:none!important;
  color:rgba(255,255,255,.74)!important;
  font-size:12px!important;
  font-weight:500!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
  transition:color .2s ease, opacity .2s ease, transform .2s ease!important;
}
body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links > a:hover,
body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button:hover,
body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button--soft:hover{
  color:#ffffff!important;
  background:transparent!important;
  border:none!important;
  transform:translateY(-1px)!important;
}
body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-menu-toggle{
  border:1px solid rgba(255,255,255,.10)!important;
  background:rgba(255,255,255,.03)!important;
  border-radius:10px!important;
}
body.premium-ui:not(.admin-page-body) #hero.hero-luxury{
  min-height:64vh!important;
  padding-top:142px!important;
  padding-bottom:58px!important;
}
body.premium-ui:not(.admin-page-body) .hero-copy-minimal{
  max-width:760px!important;
  margin-inline:auto!important;
  text-align:center!important;
}
body.premium-ui:not(.admin-page-body) .hero-copy-minimal .hero-logo-main{
  width:min(680px,78vw)!important;
  margin-inline:auto!important;
  filter:drop-shadow(0 18px 52px rgba(0,0,0,.26));
}
body.premium-ui:not(.admin-page-body) .hero-copy-minimal .hero-actions-simple{
  margin-top:24px!important;
  gap:12px!important;
}
body.premium-ui:not(.admin-page-body) .hero-actions-lux .btn-primary,
body.premium-ui:not(.admin-page-body) .hero-actions-lux .btn-outline{
  min-height:48px!important;
  padding:0 20px!important;
  border-radius:14px!important;
  font-size:12px!important;
  font-weight:600!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  transition:transform .22s ease, box-shadow .22s ease, background .22s ease, border-color .22s ease, color .22s ease!important;
}
body.premium-ui:not(.admin-page-body) .hero-actions-lux .btn-primary{
  background:#f5f5f3!important;
  color:#111216!important;
  border:1px solid rgba(255,255,255,.65)!important;
  box-shadow:0 14px 34px rgba(0,0,0,.18)!important;
}
body.premium-ui:not(.admin-page-body) .hero-actions-lux .btn-outline{
  background:rgba(255,255,255,.03)!important;
  color:#f7f7f7!important;
  border:1px solid rgba(255,255,255,.12)!important;
}
body.premium-ui:not(.admin-page-body) .hero-actions-lux :is(.btn-primary,.btn-outline):hover{
  transform:translateY(-2px)!important;
  box-shadow:0 18px 40px rgba(0,0,0,.24)!important;
}
body.premium-ui:not(.admin-page-body) .showcase-intro.showcase-intro-minimal{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  margin-bottom:22px!important;
}
body.premium-ui:not(.admin-page-body) .showcase-intro.showcase-intro-minimal .showcase-eyebrow{
  margin:0!important;
}
body.premium-ui:not(.admin-page-body) #products.product-showcase{
  padding-top:18px!important;
}
body.premium-ui:not(.admin-page-body) .product-category{
  margin-bottom:26px!important;
}
body.premium-ui:not(.admin-page-body) .product-category-heading{
  margin-bottom:12px!important;
}
body.premium-ui:not(.admin-page-body) .product-grid{
  display:flex!important;
  gap:16px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  padding:4px 2px 10px!important;
  scroll-snap-type:x proximity!important;
  -webkit-overflow-scrolling:touch!important;
}
body.premium-ui:not(.admin-page-body) .product-grid::-webkit-scrollbar{height:8px}
body.premium-ui:not(.admin-page-body) .product-grid::-webkit-scrollbar-thumb{background:rgba(255,255,255,.12);border-radius:999px}
body.premium-ui:not(.admin-page-body) .product-grid .product-card{
  flex:0 0 clamp(240px,28vw,290px)!important;
  min-width:240px!important;
  scroll-snap-align:start!important;
}
body.premium-ui:not(.admin-page-body) .showroom-section .showcase-intro{margin-bottom:22px!important}
body.premium-ui:not(.admin-page-body) .showroom-section .showroom-copy{
  display:none!important;
}
body.premium-ui:not(.admin-page-body) .showroom-section .showroom-card{
  overflow:hidden!important;
}
body.premium-ui:not(.admin-page-body) .showroom-section .showroom-photo img{
  aspect-ratio:4/5;
  object-fit:cover!important;
}
body.premium-ui:not(.admin-page-body) .contact-cta-section{
  display:none!important;
}
body.premium-ui:not(.admin-page-body) .showcase-empty p:empty,
body.premium-ui:not(.admin-page-body) .showcase-intro p:empty{
  display:none!important;
}
@media (max-width:900px){
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury{
    top:14px!important;left:16px!important;right:16px!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links{
    gap:10px!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury.menu-open .nav-links{
    margin-top:14px!important;
    padding:14px 0 0!important;
    border-top:1px solid rgba(255,255,255,.08)!important;
    max-height:240px!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links > a,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button--soft{
    width:100%!important;
    justify-content:flex-start!important;
    text-align:left!important;
    padding:6px 0!important;
  }
  body.premium-ui:not(.admin-page-body) #hero.hero-luxury{
    padding-top:120px!important;
    min-height:56vh!important;
  }
  body.premium-ui:not(.admin-page-body) .hero-copy-minimal .hero-logo-main{
    width:min(560px,88vw)!important;
  }
  body.premium-ui:not(.admin-page-body) .hero-copy-minimal .hero-actions-simple{
    flex-direction:column!important;
  }
  body.premium-ui:not(.admin-page-body) .hero-actions-lux .btn-primary,
  body.premium-ui:not(.admin-page-body) .hero-actions-lux .btn-outline{
    width:100%!important;
  }
  body.premium-ui:not(.admin-page-body) .showcase-intro.showcase-intro-minimal{
    display:block!important;
  }
  body.premium-ui:not(.admin-page-body) .product-grid .product-card{
    flex:0 0 78vw!important;
    min-width:78vw!important;
  }
}

/* === v106: premium products carousel polish === */
body.premium-ui:not(.admin-page-body) .product-carousel-shell{
  position:relative;
  display:flex;
  align-items:stretch;
  gap:12px;
}
body.premium-ui:not(.admin-page-body) .product-carousel-shell::before,
body.premium-ui:not(.admin-page-body) .product-carousel-shell::after{
  content:"";
  position:absolute;
  top:0;
  bottom:10px;
  width:54px;
  pointer-events:none;
  z-index:2;
}
body.premium-ui:not(.admin-page-body) .product-carousel-shell::before{
  left:42px;
  background:linear-gradient(90deg, #141416 0%, rgba(20,20,22,0) 100%);
}
body.premium-ui:not(.admin-page-body) .product-carousel-shell::after{
  right:42px;
  background:linear-gradient(270deg, #141416 0%, rgba(20,20,22,0) 100%);
}
body.premium-ui:not(.admin-page-body) .product-carousel-btn{
  flex:0 0 40px;
  align-self:center;
  width:40px;
  height:40px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.04);
  color:#f4f4f4;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:24px;
  line-height:1;
  box-shadow:0 10px 24px rgba(0,0,0,.18);
  transition:transform .22s ease, background .22s ease, border-color .22s ease, opacity .22s ease;
  position:relative;
  z-index:3;
}
body.premium-ui:not(.admin-page-body) .product-carousel-btn:hover{
  transform:translateY(-1px);
  background:rgba(255,255,255,.08);
  border-color:rgba(255,255,255,.2);
}
body.premium-ui:not(.admin-page-body) .product-carousel-btn:disabled{
  opacity:.35;
  pointer-events:none;
}
body.premium-ui:not(.admin-page-body) .product-grid{
  flex:1 1 auto;
  scroll-snap-type:x mandatory!important;
  scroll-padding-left:2px;
  scrollbar-width:thin;
}
body.premium-ui:not(.admin-page-body) .product-grid .product-card{
  border:1px solid rgba(255,255,255,.07)!important;
}
body.premium-ui:not(.admin-page-body) .product-grid .product-card:hover{
  transform:translateY(-4px)!important;
}
@media (max-width:900px){
  body.premium-ui:not(.admin-page-body) .product-carousel-shell{
    gap:0;
  }
  body.premium-ui:not(.admin-page-body) .product-carousel-shell::before,
  body.premium-ui:not(.admin-page-body) .product-carousel-shell::after,
  body.premium-ui:not(.admin-page-body) .product-carousel-btn{
    display:none;
  }
  body.premium-ui:not(.admin-page-body) .product-grid{
    padding-bottom:12px!important;
  }
}

/* === v107: slightly larger logo, richer text-link hover, remove empty products copy === */
body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-logo img{
  height:36px!important;
}
body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links > a,
body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button,
body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button--soft{
  position:relative;
  overflow:visible;
}
body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links > a::after,
body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button::after,
body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button--soft::after{
  content:"";
  position:absolute;
  left:0;
  bottom:-6px;
  width:100%;
  height:1px;
  background:linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.75) 20%, rgba(255,255,255,.75) 80%, rgba(255,255,255,0) 100%);
  transform:scaleX(.25);
  transform-origin:center;
  opacity:0;
  transition:transform .24s ease, opacity .24s ease, bottom .24s ease;
}
body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links > a:hover,
body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button:hover,
body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button--soft:hover{
  letter-spacing:.16em!important;
  text-shadow:0 0 16px rgba(255,255,255,.08);
}
body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links > a:hover::after,
body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button:hover::after,
body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button--soft:hover::after{
  opacity:1;
  transform:scaleX(1);
  bottom:-4px;
}
body.premium-ui:not(.admin-page-body) #products .showcase-empty-minimal{
  display:none!important;
}
@media (max-width:900px){
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-logo img{
    height:34px!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links > a::after,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button::after,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button--soft::after{
    left:0;
    right:auto;
    width:56px;
    transform-origin:left center;
  }
}

/* === v108: mobile-friendly landing/header + solid my-bookings modal === */
body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury{
  position:fixed!important;
  top:18px!important;
  left:20px!important;
  right:20px!important;
  z-index:1400!important;
  display:grid!important;
  grid-template-columns:auto 1fr!important;
  align-items:center!important;
  gap:18px!important;
}
body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links{
  justify-self:end!important;
  display:flex!important;
  align-items:center!important;
  gap:18px!important;
}
body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-logo{
  display:flex!important;
  align-items:center!important;
}
body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-menu-toggle{
  display:none!important;
  width:42px!important;
  height:42px!important;
  padding:0!important;
  margin:0!important;
  align-items:center!important;
  justify-content:center!important;
}
body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-menu-toggle span{
  width:18px!important;
  height:1.7px!important;
  margin:0!important;
}
body.premium-ui:not(.admin-page-body) #hero.hero-luxury{
  padding-top:150px!important;
  padding-bottom:64px!important;
}
body.premium-ui:not(.admin-page-body) .hero-copy-minimal{
  max-width:760px!important;
  padding-inline:8px!important;
}
body.premium-ui:not(.admin-page-body) .hero-actions-simple{
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:center!important;
  gap:12px!important;
}
body.premium-ui:not(.admin-page-body) .hero-actions-lux .btn-primary,
body.premium-ui:not(.admin-page-body) .hero-actions-lux .btn-outline{
  min-width:220px!important;
}
body.premium-ui:not(.admin-page-body) .public-section,
body.premium-ui:not(.admin-page-body) .product-showcase{
  padding-left:28px!important;
  padding-right:28px!important;
}
body.premium-ui:not(.admin-page-body) .showroom-grid{
  gap:16px!important;
}
body.premium-ui:not(.admin-page-body) .product-category-heading{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  flex-wrap:wrap!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay{
  background:rgba(7,8,10,.78)!important;
  backdrop-filter:blur(16px)!important;
  -webkit-backdrop-filter:blur(16px)!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .my-bookings-modal{
  background:#efeee8!important;
  opacity:1!important;
  border:1px solid rgba(17,18,22,.08)!important;
  box-shadow:0 30px 80px rgba(0,0,0,.34)!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .modal-header{
  background:#efeee8!important;
  border-bottom:1px solid rgba(17,18,22,.08)!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .modal-logo,
body.premium-ui:not(.admin-page-body) #mybookings-overlay .form-group label,
body.premium-ui:not(.admin-page-body) #mybookings-overlay .booking-detail-label,
body.premium-ui:not(.admin-page-body) #mybookings-overlay .lookup-security-note{
  color:#555851!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .my-bookings-lookup-grid,
body.premium-ui:not(.admin-page-body) #mybookings-overlay .lookup-security-note,
body.premium-ui:not(.admin-page-body) #mybookings-overlay .booking-item,
/*body.premium-ui:not(.admin-page-body) #mybookings-overlay .no-bookings{*/
/*  background:#f7f6f1!important;*/
/*  border:1px solid rgba(17,18,22,.08)!important;*/
/*  border-radius:18px!important;*/
/*}*/
body.premium-ui:not(.admin-page-body) #mybookings-overlay .my-bookings-lookup-grid{
  padding:14px!important;
  margin-bottom:12px!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .lookup-security-note{
  padding:12px 14px!important;
  margin-bottom:14px!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .booking-item{
  padding:16px!important;
  margin-bottom:12px!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .booking-item-header{
  align-items:center!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay #lookup-email,
body.premium-ui:not(.admin-page-body) #mybookings-overlay #lookup-code{
  background:#ffffff!important;
  border:1px solid rgba(17,18,22,.12)!important;
  color:#16181b!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .no-bookings{
  text-align:center!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .no-bookings p,
body.premium-ui:not(.admin-page-body) #mybookings-overlay .booking-item,
body.premium-ui:not(.admin-page-body) #mybookings-overlay .booking-code{
  color:#17181a!important;
}
@media (max-width:900px){
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury{
    top:12px!important;
    left:14px!important;
    right:14px!important;
    grid-template-columns:1fr auto!important;
    gap:12px!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-menu-toggle{
    display:flex!important;
    border:1px solid rgba(255,255,255,.10)!important;
    background:rgba(255,255,255,.04)!important;
    border-radius:12px!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links{
    grid-column:1 / -1!important;
    justify-self:stretch!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    max-height:0!important;
    overflow:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
    margin:0!important;
    padding:0!important;
    transform:translateY(-6px)!important;
    transition:max-height .24s ease, opacity .2s ease, transform .24s ease, padding .24s ease!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury.menu-open .nav-links{
    max-height:260px!important;
    opacity:1!important;
    pointer-events:auto!important;
    transform:translateY(0)!important;
    margin-top:10px!important;
    padding:14px!important;
    background:rgba(12,13,16,.94)!important;
    border:1px solid rgba(255,255,255,.08)!important;
    border-radius:16px!important;
    box-shadow:0 16px 42px rgba(0,0,0,.22)!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links > a,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button--soft{
    width:100%!important;
    justify-content:flex-start!important;
    text-align:left!important;
    padding:6px 0!important;
  }
  body.premium-ui:not(.admin-page-body) #hero.hero-luxury{
    padding-top:118px!important;
    padding-bottom:48px!important;
    min-height:auto!important;
  }
  body.premium-ui:not(.admin-page-body) .hero-copy-minimal .hero-logo-main{
    width:min(560px,92vw)!important;
  }
  body.premium-ui:not(.admin-page-body) .hero-actions-simple{
    flex-direction:column!important;
  }
  body.premium-ui:not(.admin-page-body) .hero-actions-lux .btn-primary,
  body.premium-ui:not(.admin-page-body) .hero-actions-lux .btn-outline{
    width:100%!important;
    min-width:0!important;
  }
  body.premium-ui:not(.admin-page-body) .public-section,
  body.premium-ui:not(.admin-page-body) .product-showcase{
    padding-left:18px!important;
    padding-right:18px!important;
    padding-top:56px!important;
    padding-bottom:56px!important;
  }
  body.premium-ui:not(.admin-page-body) .showroom-grid{
    grid-template-columns:1fr!important;
  }
  body.premium-ui:not(.admin-page-body) #mybookings-overlay .my-bookings-modal{
    background:#efeee8!important;
  }
  body.premium-ui:not(.admin-page-body) #mybookings-overlay .my-bookings-lookup-grid{
    grid-template-columns:1fr!important;
    padding:12px!important;
  }
}

/* === v109: iPad landscape scheduler row + calmer week colors + better day modal anchoring === */
body.premium-ui.admin-page-body .scheduler-day-head .scheduler-day-count{
  display:block!important;
  margin-top:4px!important;
  font-size:9px!important;
  color:#9ea1a8!important;
  letter-spacing:.02em!important;
}
body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-day-head{
  background:#242424!important;
  border-color:#363636!important;
}
body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-day-head.active{
  background:#202126!important;
}
body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-day-head.active span{
  background:#f3f3f4!important;
  color:#111216!important;
  border-radius:999px!important;
  padding:4px 10px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:66px!important;
}
body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-day-head.is-today:not(.active) span{
  background:#bfbfbf!important;
  color:#171717!important;
  border-radius:999px!important;
  padding:4px 10px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:66px!important;
}
body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-day-head.is-today:not(.active) strong{
  color:#8b8e95!important;
}
body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-day-head small{
  color:#9ea1a8!important;
}
@media (min-width:768px) and (max-width:1180px) and (orientation:landscape){
  body.premium-ui.admin-page-body .scheduler-card .admin-toolbar{
    grid-template-columns:minmax(0,1fr)!important;
    gap:12px!important;
    align-items:start!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls{
    display:grid!important;
    grid-template-columns:auto minmax(170px,1fr) auto!important;
    align-items:center!important;
    width:100%!important;
    gap:10px!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls > .admin-toolbar-group:first-child,
  body.premium-ui.admin-page-body .scheduler-top-controls > .admin-toolbar-group:last-child{
    display:grid!important;
    grid-auto-flow:column!important;
    grid-auto-columns:max-content!important;
    align-items:center!important;
    gap:8px!important;
    flex-wrap:nowrap!important;
    white-space:nowrap!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls > .admin-toolbar-group:last-child{
    justify-content:end!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls .scheduler-period-label{
    min-width:0!important;
    text-align:center!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls .admin-pill{
    min-height:38px!important;
    padding:0 12px!important;
    font-size:11px!important;
  }


body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet {
    border-radius:22px!important;
  }

  body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet-head{
    position:sticky!important;
    top:0!important;
    z-index:2!important;
  }
  body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet-list{
    max-height:calc(var(--visible-height,100dvh) - 240px)!important;
    overflow:auto!important;
  }
}
@media (max-width:900px){
  body.premium-ui.admin-page-body .scheduler-top-controls{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls > .admin-toolbar-group:first-child,
  body.premium-ui.admin-page-body .scheduler-top-controls > .admin-toolbar-group:last-child{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:8px!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls > .admin-toolbar-group:last-child{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls .scheduler-period-label{
    text-align:center!important;
  }
}

/* === v110: mobile header + burger cleanup, fixed top, no rounded/bg look === */
@media (max-width:900px){
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury{
    position:fixed!important;
    top:0!important;
    left:0!important;
    right:0!important;
    z-index:1500!important;
    display:grid!important;
    grid-template-columns:1fr auto!important;
    align-items:center!important;
    gap:10px!important;
    padding:14px 16px 10px!important;
    margin:0!important;
    background:transparent!important;
    border:none!important;
    border-radius:0!important;
    box-shadow:none!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
    transform:none!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury::after{
    content:"";
    position:absolute;
    left:16px;
    right:16px;
    bottom:0;
    height:1px;
    background:linear-gradient(90deg,rgba(255,255,255,0) 0%, rgba(255,255,255,.14) 18%, rgba(255,255,255,.14) 82%, rgba(255,255,255,0) 100%);
    pointer-events:none;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-logo img{
    height:32px!important;
    width:auto!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-menu-toggle{
    display:flex!important;
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
    padding:0!important;
    margin:0!important;
    border:none!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    color:#fff!important;
    align-items:center!important;
    justify-content:center!important;
    place-self:center end!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-menu-toggle:hover,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-menu-toggle:focus-visible{
    background:transparent!important;
    border:none!important;
    box-shadow:none!important;
    opacity:.86!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-menu-toggle span{
    display:block!important;
    width:18px!important;
    height:1.5px!important;
    margin:2.6px 0!important;
    border-radius:999px!important;
    background:#f4f4f4!important;
    transform-origin:center!important;
    transition:transform .22s ease, opacity .18s ease!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury.menu-open .nav-menu-toggle span:nth-child(1){transform:translateY(4.1px) rotate(45deg)!important}
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury.menu-open .nav-menu-toggle span:nth-child(2){opacity:0!important}
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury.menu-open .nav-menu-toggle span:nth-child(3){transform:translateY(-4.1px) rotate(-45deg)!important}
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links{
    position:fixed!important;
    top:58px!important;
    left:0!important;
    right:0!important;
    z-index:1499!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:0!important;
    margin:0!important;
    padding:0 16px!important;
    max-height:0!important;
    overflow:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
    background:rgba(10,11,14,.96)!important;
    border:none!important;
    border-radius:0!important;
    box-shadow:none!important;
    transform:none!important;
    transition:max-height .24s ease, opacity .2s ease, padding .2s ease!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury.menu-open .nav-links{
    max-height:220px!important;
    opacity:1!important;
    pointer-events:auto!important;
    padding:8px 16px 14px!important;
    border-bottom:1px solid rgba(255,255,255,.08)!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links > a,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button--soft{
    width:100%!important;
    padding:13px 0!important;
    margin:0!important;
    border:none!important;
    border-bottom:1px solid rgba(255,255,255,.06)!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    color:rgba(255,255,255,.84)!important;
    font-size:12px!important;
    font-weight:500!important;
    letter-spacing:.14em!important;
    text-transform:uppercase!important;
    justify-content:flex-start!important;
    text-align:left!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links > *:last-child{
    border-bottom:none!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links > a::after,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button::after,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button--soft::after{
    display:none!important;
  }
  body.premium-ui:not(.admin-page-body) #hero.hero-luxury{
    padding-top:116px!important;
  }
}

/* === v111: admin sidebar text-nav, desktop calendar scroll, larger day modal === */
@media (min-width:901px){
  body.premium-ui.admin-page-body .scheduler-board-wrap{
    overflow:auto!important;
    max-height:calc(100vh - 280px)!important;
    padding-right:2px!important;
    scrollbar-width:thin!important;
    scrollbar-color:#555b66 transparent!important;
    -webkit-overflow-scrolling:touch!important;
  }
  body.premium-ui.admin-page-body .scheduler-board-wrap::-webkit-scrollbar{
    width:11px!important;
    height:11px!important;
  }
  body.premium-ui.admin-page-body .scheduler-board-wrap::-webkit-scrollbar-track{
    background:transparent!important;
  }
  body.premium-ui.admin-page-body .scheduler-board-wrap::-webkit-scrollbar-thumb{
    background:#515762!important;
    border-radius:999px!important;
    border:2px solid transparent!important;
    background-clip:padding-box!important;
  }
}

body.premium-ui.admin-page-body #admin-sidebar .admin-header-nav{
  gap:0!important;
}
body.premium-ui.admin-page-body #admin-sidebar .admin-header-tab{
  min-height:40px!important;
  padding:10px 0!important;
  border:none!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#d4d4d4!important;
  font-size:14px!important;
  font-weight:600!important;
  letter-spacing:0!important;
  position:relative!important;
}
body.premium-ui.admin-page-body #admin-sidebar .admin-header-tab::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:1px;
  background:rgba(255,255,255,.06);
}
body.premium-ui.admin-page-body #admin-sidebar .admin-header-tab:hover{
  background:transparent!important;
  border:none!important;
  color:#ffffff!important;
}
body.premium-ui.admin-page-body #admin-sidebar .admin-header-tab.active{
  background:transparent!important;
  color:#ffffff!important;
}
body.premium-ui.admin-page-body #admin-sidebar .admin-header-tab.active::after{
  content:"";
  position:absolute;
  left:0;
  bottom:-1px;
  width:44px;
  height:2px;
  border-radius:999px;
  background:#f0f0f0;
}
body.premium-ui.admin-page-body #admin-sidebar .admin-topbar-start .admin-link-btn{
  justify-content:center!important;
  text-align:center!important;
}
body.premium-ui.admin-page-body #admin-sidebar .admin-link-btn-back{
  padding-left:12px!important;
  padding-right:12px!important;
}


body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet-head{
  padding:18px 26px 16px!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet-list{
  min-height:340px!important;
  max-height:calc(min(86dvh,860px) - 176px)!important;
  padding:16px 18px 14px!important;
}
body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet-actions{
  padding:14px 18px 18px!important;
}
@media (max-width:900px){
  body.premium-ui.admin-page-body #admin-sidebar .admin-header-tab{
    min-height:42px!important;
    padding:11px 0!important;
    border-radius:0!important;
  }


body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet {
    border-radius:24px 24px 0 0!important;
  }

  body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet-head{
    padding:18px 16px 14px!important;
  }
  body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet-list{
    min-height:260px!important;
    max-height:calc(min(88dvh,820px) - 168px)!important;
    padding:12px 12px 12px!important;
  }
}
/* === v112: compact booking edit drawer, less gold, smaller notes area === */
body.premium-ui.admin-page-body #booking-drawer .admin-drawer-panel {
  border-radius:22px!important;
}

body.premium-ui.admin-page-body #booking-drawer .admin-drawer-head{
  align-items:flex-start!important;
  padding:0 0 10px!important;
  margin:0 0 10px!important;
}
body.premium-ui.admin-page-body #booking-drawer .admin-drawer-head h3{
  font-size:clamp(22px,2vw,28px)!important;
  line-height:1.06!important;
  margin:0!important;
}
body.premium-ui.admin-page-body #booking-drawer .admin-drawer-head .admin-sub{
  color:#8d9199!important;
  font-size:10px!important;
  letter-spacing:.14em!important;
}
body.premium-ui.admin-page-body #booking-drawer .admin-drawer-head .admin-link-btn{
  min-height:40px!important;
  padding:0 14px!important;
}
body.premium-ui.admin-page-body #drawer-form{
  display:grid!important;
  gap:8px!important;
  overflow:visible!important;
}
body.premium-ui.admin-page-body #drawer-form .admin-form-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
}
body.premium-ui.admin-page-body #drawer-form .form-group{
  margin-bottom:0!important;
  gap:4px!important;
}
body.premium-ui.admin-page-body #drawer-form .form-group label{
  color:#a7abb3!important;
  font-size:10px!important;
  letter-spacing:.08em!important;
}
body.premium-ui.admin-page-body #drawer-form :is(input,select,textarea){
  min-height:40px!important;
  padding:.62rem .76rem!important;
  font-size:14px!important;
}
body.premium-ui.admin-page-body #drawer-form .field-help{
  margin-top:3px!important;
  font-size:11px!important;
  color:#8d9198!important;
  line-height:1.35!important;
}
body.premium-ui.admin-page-body #drawer-form textarea[name="notes"]{
  min-height:58px!important;
  height:58px!important;
  resize:vertical!important;
  line-height:1.42!important;
}
body.premium-ui.admin-page-body #drawer-form .drawer-meta{
  margin-top:2px!important;
  padding:10px 12px!important;
  border-radius:14px!important;
  font-size:12px!important;
  line-height:1.5!important;
}
body.premium-ui.admin-page-body #drawer-form .drawer-actions{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(220px,max-content)!important;
  gap:12px!important;
  align-items:center!important;
  margin-top:2px!important;
}
body.premium-ui.admin-page-body #drawer-form .drawer-actions :is(.admin-link-btn,.btn-primary){
  min-height:44px!important;
}
@media (min-width:821px){
  body.premium-ui.admin-page-body #booking-drawer{
    align-items:center!important;
    justify-content:center!important;
  }
}
@media (max-width:1024px){


}
@media (max-width:820px){
body.premium-ui.admin-page-body #booking-drawer .admin-drawer-panel {
    border-radius:18px!important;
  }

  body.premium-ui.admin-page-body #booking-drawer .admin-drawer-head{
    padding:0 0 8px!important;
    margin:0 0 8px!important;
  }
  body.premium-ui.admin-page-body #booking-drawer .admin-drawer-head h3{
    font-size:28px!important;
  }
  body.premium-ui.admin-page-body #drawer-form .admin-form-grid{
    gap:8px!important;
  }
  body.premium-ui.admin-page-body #drawer-form :is(input,select,textarea){
    min-height:38px!important;
    font-size:13px!important;
  }
  body.premium-ui.admin-page-body #drawer-form textarea[name="notes"]{
    min-height:54px!important;
    height:54px!important;
  }
  body.premium-ui.admin-page-body #drawer-form .drawer-actions{
    grid-template-columns:1fr 1fr!important;
    gap:10px!important;
  }
}
@media (max-width:699px){
body.premium-ui.admin-page-body #booking-drawer .admin-drawer-panel {
    border-radius:16px!important;
  }

  body.premium-ui.admin-page-body #booking-drawer .admin-drawer-head h3{
    font-size:20px!important;
  }
  body.premium-ui.admin-page-body #drawer-form .admin-form-grid{
    grid-template-columns:1fr!important;
  }
  body.premium-ui.admin-page-body #drawer-form .drawer-actions{
    grid-template-columns:1fr!important;
  }
}

/* === v113: iPad landscape scheduler row fix + clearer legend semantics === */
body.premium-ui.admin-page-body .ios-event-dot.dot-booking{background:#34c759!important}
body.premium-ui.admin-page-body .ios-event-dot.dot-block{background:#c8a55b!important}
body.premium-ui.admin-page-body .ios-event-dot.dot-blackout{background:#ff453a!important}
body.premium-ui.admin-page-body .scheduler-month-pill.is-booking-pill::after{
  content:none!important;
  display:none!important;
}

/* Make week-view colors follow month-view logic more closely. */
body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-day-head.is-today:not(.active) span{
  display:grid!important;
  place-items:center!important;
  min-width:31px!important;
  height:31px!important;
  padding:0 9px!important;
  border-radius:999px!important;
  background:#f4f4f4!important;
  color:#111216!important;
}
body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-day-head.is-today:not(.active) strong{
  color:#a6a9b0!important;
}
body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-day-head.active span{
  background:#23262d!important;
  color:#ffffff!important;
}
body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-day-head.active strong{
  color:#cfd2d9!important;
}

/* iPad landscape: keep all calendar controls in one clean row. */
@media (min-width:820px) and (max-width:1366px) and (orientation:landscape){
  body.premium-ui.admin-page-body .scheduler-card .admin-toolbar{
    display:block!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls{
    display:grid!important;
    grid-template-columns:auto minmax(220px,1fr) auto!important;
    align-items:center!important;
    gap:12px!important;
    width:100%!important;
    flex-wrap:nowrap!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls > .admin-toolbar-group:first-child,
  body.premium-ui.admin-page-body .scheduler-top-controls > .admin-toolbar-group:last-child{
    display:flex!important;
    flex-wrap:nowrap!important;
    white-space:nowrap!important;
    width:auto!important;
    min-width:0!important;
    justify-content:flex-start!important;
    gap:8px!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls > .admin-toolbar-group:last-child{
    justify-content:flex-end!important;
  }
  body.premium-ui.admin-page-body .scheduler-period-label{
    width:100%!important;
    min-width:0!important;
    margin:0!important;
    text-align:center!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    font-size:clamp(18px,2.2vw,22px)!important;
    line-height:1.15!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls :is(#calendar-prev-period,#calendar-today,#calendar-next-period,#calendar-view-week,#calendar-view-month){
    min-height:40px!important;
    padding:0 14px!important;
    font-size:13px!important;
    white-space:nowrap!important;
  }
  body.premium-ui.admin-page-body .scheduler-legend{
    padding-top:10px!important;
  }
}

/* === v114: mobile hero as full first screen + showroom csrf stability === */
@media (max-width:900px){
  body.premium-ui:not(.admin-page-body) #hero.hero-luxury{
    box-sizing:border-box!important;
    width:100%!important;
    height:100svh!important;
    min-height:100svh!important;
    max-height:100svh!important;
    padding:76px 18px 22px!important;
    margin:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    overflow:hidden!important;
  }
  body.premium-ui:not(.admin-page-body) #hero .hero-content{
    width:100%!important;
    max-width:680px!important;
    margin:auto!important;
    padding:0!important;
  }
  body.premium-ui:not(.admin-page-body) #hero .hero-logo-main{
    width:min(560px,88vw)!important;
    max-height:34svh!important;
    object-fit:contain!important;
  }
  body.premium-ui:not(.admin-page-body) #hero .hero-actions-simple{
    margin-top:20px!important;
    gap:10px!important;
  }
  body.premium-ui:not(.admin-page-body) #hero .hero-actions-lux .btn-primary,
  body.premium-ui:not(.admin-page-body) #hero .hero-actions-lux .btn-outline{
    min-height:46px!important;
  }
  body.premium-ui:not(.admin-page-body) #products.product-showcase{
    margin-top:0!important;
  }
}
@media (max-width:900px) and (orientation:landscape){
  body.premium-ui:not(.admin-page-body) #hero.hero-luxury{
    height:100svh!important;
    min-height:100svh!important;
    padding-top:62px!important;
    padding-bottom:12px!important;
  }
  body.premium-ui:not(.admin-page-body) #hero .hero-logo-main{
    width:min(460px,62vw)!important;
    max-height:34svh!important;
  }
  body.premium-ui:not(.admin-page-body) #hero .hero-actions-simple{
    flex-direction:row!important;
    margin-top:12px!important;
  }
  body.premium-ui:not(.admin-page-body) #hero .hero-actions-lux .btn-primary,
  body.premium-ui:not(.admin-page-body) #hero .hero-actions-lux .btn-outline{
    width:auto!important;
    min-width:190px!important;
    min-height:42px!important;
  }
}

/* === v115: remove internal calendar scroll + iPad landscape top controls layout === */
body.premium-ui.admin-page-body .scheduler-board-wrap{
  max-height:none!important;
  overflow:visible!important;
}
body.premium-ui.admin-page-body .scheduler-board-wrap::-webkit-scrollbar{
  width:0!important;
  height:0!important;
}

@media (min-width:820px) and (max-width:1366px) and (orientation:landscape){
  body.premium-ui.admin-page-body .scheduler-card .admin-toolbar{
    display:block!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls{
    display:grid!important;
    grid-template-columns:auto minmax(220px,1fr) auto!important;
    align-items:center!important;
    gap:14px!important;
    width:100%!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls > .admin-toolbar-group:first-child{
    display:flex!important;
    flex-wrap:nowrap!important;
    gap:8px!important;
    justify-content:flex-start!important;
    align-items:center!important;
    white-space:nowrap!important;
    min-width:0!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls > .admin-toolbar-group:last-child{
    display:flex!important;
    flex-wrap:nowrap!important;
    gap:8px!important;
    justify-content:flex-end!important;
    align-items:center!important;
    white-space:nowrap!important;
    min-width:0!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls .scheduler-period-label{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    margin:0!important;
    text-align:center!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    order:0!important;
    font-size:clamp(18px,2.1vw,22px)!important;
    line-height:1.1!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls :is(#calendar-prev-period,#calendar-today,#calendar-next-period,#calendar-view-week,#calendar-view-month){
    min-height:40px!important;
    padding:0 14px!important;
    white-space:nowrap!important;
  }
}

/* === v116: iPad landscape modal/drawer scroll normalization, especially booking drawer === */
@media (min-width:820px) and (max-width:1366px) and (orientation:landscape){
  body.premium-ui.admin-page-body :is(#admin-tools-modal,#clients-modal,#client-history-modal,#booking-drawer,#slot-quick-panel,#admin-day-modal){
    align-items:flex-start!important;
    justify-content:center!important;
    padding:14px!important;
  }


body.premium-ui.admin-page-body #booking-drawer .admin-drawer-panel {
    scrollbar-width:thin!important;
  }

  body.premium-ui.admin-page-body #booking-drawer .admin-drawer-head{
    background:#1a1a1a!important;
    padding:0 0 10px!important;
    margin:0 0 10px!important;
  }
  body.premium-ui.admin-page-body #booking-drawer .admin-drawer-head h3{
    font-size:24px!important;
    line-height:1.08!important;
  }
  body.premium-ui.admin-page-body #drawer-form{
    gap:8px!important;
  }
  body.premium-ui.admin-page-body #drawer-form .admin-form-grid{
    gap:8px!important;
  }
  body.premium-ui.admin-page-body #drawer-form .form-group{
    gap:4px!important;
  }
  body.premium-ui.admin-page-body #drawer-form :is(input,select,textarea){
    min-height:38px!important;
    padding:.58rem .72rem!important;
    font-size:13px!important;
  }
  body.premium-ui.admin-page-body #drawer-form textarea[name="notes"]{
    min-height:54px!important;
    height:54px!important;
    resize:vertical!important;
  }
  body.premium-ui.admin-page-body #drawer-form .drawer-meta{
    padding:9px 12px!important;
    font-size:12px!important;
  }
  body.premium-ui.admin-page-body #drawer-form .drawer-actions{
    grid-template-columns:minmax(0,1fr) minmax(220px,max-content)!important;
    gap:10px!important;
    position:sticky!important;
    bottom:0!important;
    background:#1a1a1a!important;
    padding-top:10px!important;
  }
}

/* === v117: faster mobile burger menu + flat menu items === */
@media (max-width:900px){
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-menu-toggle{
    transition:opacity .12s ease!important;
    will-change:opacity,transform!important;
    -webkit-tap-highlight-color:transparent!important;
    touch-action:manipulation!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-menu-toggle span{
    transition:transform .16s ease, opacity .12s ease!important;
    will-change:transform,opacity!important;
  }

  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links{
    top:56px!important;
    left:0!important;
    right:0!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:0!important;
    margin:0!important;
    padding:8px 16px 14px!important;
    max-height:none!important;
    overflow:hidden!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translateY(-8px)!important;
    transform-origin:top center!important;
    background:rgba(10,11,14,.98)!important;
    border:none!important;
    border-radius:0!important;
    box-shadow:none!important;
    transition:opacity .14s ease, transform .14s ease, visibility 0s linear .14s!important;
    will-change:opacity,transform!important;
    contain:layout paint!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury.menu-open .nav-links{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translateY(0)!important;
    border-bottom:1px solid rgba(255,255,255,.08)!important;
    transition:opacity .14s ease, transform .14s ease, visibility 0s!important;
  }

  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links > a,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button--soft,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-cta.nav-cta-main{
    width:100%!important;
    min-height:44px!important;
    padding:12px 0!important;
    margin:0!important;
    border:none!important;
    border-bottom:1px solid rgba(255,255,255,.06)!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    outline:none!important;
    color:rgba(255,255,255,.86)!important;
    font-size:12px!important;
    font-weight:500!important;
    letter-spacing:.14em!important;
    text-transform:uppercase!important;
    justify-content:flex-start!important;
    text-align:left!important;
    transition:color .12s ease, opacity .12s ease!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links > a:hover,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button:hover,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button--soft:hover,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-cta.nav-cta-main:hover,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links > a:focus-visible,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button:focus-visible,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button--soft:focus-visible,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-cta.nav-cta-main:focus-visible,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links > a:active,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button:active,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button--soft:active,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-cta.nav-cta-main:active{
    background:transparent!important;
    box-shadow:none!important;
    border-radius:0!important;
    color:#ffffff!important;
    opacity:.95!important;
  }
}

/* === v118: iPad landscape anti-flicker / anti-shake for admin interactions === */
@media (min-width:820px) and (max-width:1366px) and (orientation:landscape){
  html.admin-page-root,
  html.admin-page-root body.premium-ui.admin-page-body{
    scroll-behavior:auto!important;
    overscroll-behavior:none!important;
    -webkit-font-smoothing:antialiased!important;
  }

  body.premium-ui.admin-page-body :is(
    .admin-pill,
    .mini-btn,
    .admin-link-btn,
    .tool-launch-btn,
    .admin-action-btn,
    .status-chip,
    .payment-chip,
    .scheduler-month-pill,
    .scheduler-month-more,
    .scheduler-month-add,
    .records-modal-item,
    .record-row,
    .client-card,
    .admin-day-row,
    .admin-day-row-main
  ){
    animation:none!important;
    transform:none!important;
    transition:background-color .14s ease,border-color .14s ease,color .14s ease,opacity .14s ease!important;
    -webkit-tap-highlight-color:transparent!important;
    touch-action:manipulation!important;
    backface-visibility:hidden!important;
    -webkit-backface-visibility:hidden!important;
  }

  body.premium-ui.admin-page-body :is(
    .admin-pill,
    .mini-btn,
    .admin-link-btn,
    .tool-launch-btn,
    .admin-action-btn,
    .status-chip,
    .payment-chip,
    .scheduler-month-pill,
    .scheduler-month-more,
    .scheduler-month-add
  ):is(:hover,:focus,:focus-visible,:active){
    transform:none!important;
    filter:none!important;
    box-shadow:none!important;
  }

  body.premium-ui.admin-page-body :is(
    .records-card .admin-data-table tr.record-row,
    .records-card .admin-data-table tr.record-row td,
    .records-modal-item,
    .client-card,
    .admin-day-row-main
  ):is(:hover,:focus,:focus-within,:active){
    transform:none!important;
    filter:none!important;
    box-shadow:none!important;
  }

  body.premium-ui.admin-page-body :is(
    .admin-modal-shell,
    .admin-drawer,
    #notifications-panel,
    #admin-sidebar,
    .scheduler-card,
    .records-card,
    .clients-list,
    .admin-data-table
  ){
    backface-visibility:hidden!important;
    -webkit-backface-visibility:hidden!important;
    transform:translateZ(0)!important;
  }
}

/* === v119: sharper premium controls + centered product carousel + smaller showroom === */
/* Global UI direction: less pill/AI-rounded, sharper premium geometry. */
body.premium-ui :is(
  button,
  .btn-primary,.btn-next,.btn-outline,.btn-back,.btn-dark,
  .admin-link-btn,.admin-pill,.mini-btn,.tool-launch-btn,.admin-action-btn,
  .nav-cta,.nav-link-button,.status-chip,.payment-chip,
  .product-carousel-btn,.admin-day-close
){
  border-radius:5px!important;
}
body.premium-ui :is(input,select,textarea,.admin-search){
  border-radius:6px!important;
}
body.premium-ui :is(
  .admin-card,.client-card,.records-card,.analytics-card,.analytics-overview-card,
  .tools-form-card,.tools-list-card,.slot-form-card,.confirm-box,.notifications-panel,
  .admin-tools-modal-panel,.admin-drawer-panel,.slot-quick-dialog,.admin-day-sheet
){
  border-radius:10px!important;
}
body.premium-ui.admin-page-body #admin-sidebar :is(.admin-header-tab,.tool-launch-btn,.admin-link-btn-back){
  border-radius:0!important;
}
body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury :is(.nav-menu-toggle,.nav-links > a,.nav-link-button){
  border-radius:0!important;
}

/* Products: more compact editorial cards. */
body.premium-ui:not(.admin-page-body) .product-carousel-shell{
  max-width:1180px!important;
  margin-inline:auto!important;
  gap:10px!important;
}
body.premium-ui:not(.admin-page-body) .product-grid{
  gap:14px!important;
  padding:6px 2px 12px!important;
  scroll-snap-type:x mandatory!important;
}
body.premium-ui:not(.admin-page-body) .product-grid .product-card{
  flex:0 0 clamp(205px,22vw,248px)!important;
  min-width:205px!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  scroll-snap-align:center!important;
}
body.premium-ui:not(.admin-page-body) .product-photo{
  aspect-ratio:4/5!important;
  padding:16px!important;
  border-radius:8px!important;
  background:linear-gradient(180deg,#f1f0ec 0%,#e4e3df 100%)!important;
  border:1px solid rgba(255,255,255,.08)!important;
  overflow:hidden!important;
}
body.premium-ui:not(.admin-page-body) .product-photo img{
  object-fit:contain!important;
  transform:scale(.94)!important;
  transition:transform .22s ease!important;
}
body.premium-ui:not(.admin-page-body) .product-card:hover .product-photo img{
  transform:scale(.98)!important;
}
body.premium-ui:not(.admin-page-body) .product-copy{
  padding:12px 2px 0!important;
}
body.premium-ui:not(.admin-page-body) .product-brand{
  margin-bottom:5px!important;
  color:#85888f!important;
  font-size:9px!important;
  letter-spacing:.14em!important;
}
body.premium-ui:not(.admin-page-body) .product-copy h4{
  margin:0!important;
  font-size:16px!important;
  line-height:1.25!important;
  font-weight:600!important;
  letter-spacing:-.02em!important;
  color:#f4f4f2!important;
}
body.premium-ui:not(.admin-page-body) .product-copy p{
  margin:7px 0 0!important;
  font-size:12px!important;
  line-height:1.5!important;
  color:#91949a!important;
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
}
body.premium-ui:not(.admin-page-body) .product-carousel-btn{
  width:36px!important;
  height:36px!important;
  flex-basis:36px!important;
  border-radius:4px!important;
  background:transparent!important;
  border:1px solid rgba(255,255,255,.10)!important;
  box-shadow:none!important;
  font-size:20px!important;
}
body.premium-ui:not(.admin-page-body) .product-carousel-shell::before,
body.premium-ui:not(.admin-page-body) .product-carousel-shell::after{
  width:34px!important;
}
body.premium-ui:not(.admin-page-body) .product-carousel-shell::before{left:36px!important}
body.premium-ui:not(.admin-page-body) .product-carousel-shell::after{right:36px!important}

/* Showroom: smaller, cleaner image-first gallery. */
body.premium-ui:not(.admin-page-body) .showroom-grid{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(150px,210px))!important;
  justify-content:center!important;
  gap:12px!important;
  max-width:1040px!important;
  margin-inline:auto!important;
}
body.premium-ui:not(.admin-page-body) .showroom-card{
  border-radius:7px!important;
  background:#151619!important;
  border:1px solid rgba(255,255,255,.07)!important;
  box-shadow:none!important;
}
body.premium-ui:not(.admin-page-body) .showroom-photo{
  aspect-ratio:4/5!important;
  overflow:hidden!important;
}
body.premium-ui:not(.admin-page-body) .showroom-photo img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  transition:transform .24s ease, filter .24s ease!important;
}
body.premium-ui:not(.admin-page-body) .showroom-card:hover .showroom-photo img{
  transform:scale(1.025)!important;
  filter:contrast(1.03)!important;
}

/* Admin product/showroom tools: smaller previews and thumbnails. */
body.premium-ui.admin-page-body .product-upload-preview{
  width:min(180px,100%)!important;
  max-height:150px!important;
  margin-top:8px!important;
  border-radius:6px!important;
}
body.premium-ui.admin-page-body .product-admin-card{
  grid-template-columns:52px minmax(0,1fr)!important;
  gap:10px!important;
  padding:10px 0!important;
}
body.premium-ui.admin-page-body .product-admin-card img{
  width:52px!important;
  height:62px!important;
  border-radius:5px!important;
}
body.premium-ui.admin-page-body .showroom-admin-item img{
  width:58px!important;
  height:68px!important;
  border-radius:5px!important;
}
body.premium-ui.admin-page-body #showroom-admin-list .records-modal-item{
  padding:10px!important;
}

@media (max-width:900px){
  body.premium-ui:not(.admin-page-body) .product-grid .product-card{
    flex:0 0 min(66vw,230px)!important;
    min-width:min(66vw,230px)!important;
  }
  body.premium-ui:not(.admin-page-body) .showroom-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:9px!important;
  }
  body.premium-ui:not(.admin-page-body) .showroom-card{
    border-radius:5px!important;
  }
}

/* === v120: mobile header must not follow scroll + no burger background + monochrome sharp UI === */

/* Remove blue semantic surfaces/accents and keep them neutral monochrome. */
body.premium-ui.admin-page-body .status-completed{
  background:#232323!important;
  color:#f2f2f2!important;
  border-color:#424242!important;
}
body.premium-ui.admin-page-body :is(.scheduler-item.booking,.scheduler-month-pill.is-booking-pill).calendar-status-completed{
  box-shadow:inset 3px 0 0 #bfc1c5!important;
}
body.premium-ui.admin-page-body .ios-event-dot.dot-completed,
body.premium-ui.admin-page-body .ios-calendar-agenda-item.calendar-status-completed::before,
body.premium-ui.admin-page-body .mobile-agenda-card.mobile-status-completed::before{
  background:#bfc1c5!important;
}
body.premium-ui.admin-page-body .records-card .record-row.record-status-completed,
body.premium-ui.admin-page-body .records-modal-item.record-status-completed{
  --record-accent:#bfc1c5!important;
}
body.premium-ui.admin-page-body .admin-day-row.calendar-status-completed{
  --day-accent:#bfc1c5!important;
}

/* Any old gold/beige text accents become white. */
body.premium-ui :is(
  .premium-eyebrow,
  .admin-sub,
  .admin-subtitle,
  .showcase-eyebrow,
  .quick-booking-kicker,
  .admin-day-sheet-eyebrow,
  .product-brand
){
  color:#f2f2f2!important;
}
body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury :is(.nav-links > a,.nav-link-button,.nav-link-button--soft):is(:hover,:focus-visible,:active){
  color:#ffffff!important;
}
body.premium-ui.admin-page-body #booking-drawer .admin-drawer-head .admin-sub,
body.premium-ui.admin-page-body :is(#admin-tools-modal,#clients-modal,#client-history-modal) .admin-sub,
body.premium-ui.admin-page-body #slot-quick-panel .admin-sub,
body.premium-ui.admin-page-body #slot-quick-panel .quick-booking-kicker,
body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet-eyebrow{
  color:#ffffff!important;
}

/* Sharper controls everywhere: no pill/round button language. */
body.premium-ui button,
body.premium-ui :is(
  .btn-primary,.btn-next,.btn-outline,.btn-back,.btn-dark,
  .admin-link-btn,.admin-pill,.mini-btn,.tool-launch-btn,.admin-action-btn,
  .nav-cta,.nav-link-button,.nav-link-button--soft,
  .close-btn,.admin-day-close,.product-carousel-btn,
  .scheduler-month-add,.scheduler-month-more,.week-head-add,.mobile-add-main,
  .mini-remove-second,.scheduler-cell-add
){
  border-radius:0!important;
}
body.premium-ui :is(input,select,textarea,.admin-search){
  border-radius:2px!important;
}
body.premium-ui :is(.status-chip,.payment-chip,.notifications-badge){
  border-radius:2px!important;
}
body.premium-ui :is(
  .admin-card,.client-card,.records-card,.analytics-card,.analytics-overview-card,
  .tools-form-card,.tools-list-card,.slot-form-card,.confirm-box,.notifications-panel,
  .admin-tools-modal-panel,.admin-drawer-panel,.slot-quick-dialog,.admin-day-sheet,
  .showroom-card,.product-photo
){
  border-radius:4px!important;
}

/* Mobile public header: belongs to the top of the page and scrolls away with it. */
@media (max-width:900px){
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury{
    position:absolute!important;
    top:0!important;
    left:0!important;
    right:0!important;
    bottom:auto!important;
    margin:0!important;
    padding:14px 16px 10px!important;
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
    transform:none!important;
  }

  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury::after{
    display:none!important;
    content:none!important;
  }

  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-menu-toggle{
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
  }

  /* The burger dropdown itself is intentionally transparent: no panel/card background. */
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links{
    position:absolute!important;
    top:100%!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    margin:0!important;
    padding:4px 16px 10px!important;
    background:transparent!important;
    background-image:none!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury.menu-open .nav-links{
    background:transparent!important;
    background-image:none!important;
    border:0!important;
    box-shadow:none!important;
  }

  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links > a,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button--soft,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-cta.nav-cta-main{
    background:transparent!important;
    background-image:none!important;
    border-radius:0!important;
    box-shadow:none!important;
    color:#ffffff!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links > a:hover,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button:hover,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button--soft:hover,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-cta.nav-cta-main:hover,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links > a:active,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button:active,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button--soft:active,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-cta.nav-cta-main:active{
    background:transparent!important;
    border-radius:0!important;
    color:#ffffff!important;
  }
}

/* === v121: reliable mobile burger + unified admin sidebar typography === */
@media (max-width:900px){
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury{
    overflow:visible!important;
    z-index:1600!important;
  }

  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-menu-toggle{
    position:relative!important;
    z-index:1602!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:0!important;
    width:38px!important;
    height:38px!important;
    padding:0!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
    overflow:visible!important;
    -webkit-tap-highlight-color:transparent!important;
    touch-action:manipulation!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-menu-toggle span{
    position:absolute!important;
    left:9px!important;
    width:20px!important;
    height:1.5px!important;
    margin:0!important;
    background:#fff!important;
    border-radius:0!important;
    transform-origin:center!important;
    transition:transform .18s cubic-bezier(.2,.8,.2,1),opacity .12s ease,width .18s ease!important;
    will-change:transform,opacity,width!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-menu-toggle span:nth-child(1){transform:translateY(-6px)!important}
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-menu-toggle span:nth-child(2){transform:translateY(0)!important;width:15px!important;left:14px!important}
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-menu-toggle span:nth-child(3){transform:translateY(6px)!important}
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury.menu-open .nav-menu-toggle span:nth-child(1){transform:rotate(45deg)!important}
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury.menu-open .nav-menu-toggle span:nth-child(2){opacity:0!important;width:0!important}
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury.menu-open .nav-menu-toggle span:nth-child(3){transform:rotate(-45deg)!important}

  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links{
    position:absolute!important;
    top:100%!important;
    left:0!important;
    right:0!important;
    z-index:1601!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:0!important;
    width:100%!important;
    max-height:0!important;
    margin:0!important;
    padding:0 16px!important;
    overflow:hidden!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translateY(-10px)!important;
    background:transparent!important;
    background-image:none!important;
    border:0!important;
    box-shadow:none!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
    contain:none!important;
    transition:max-height .18s cubic-bezier(.2,.8,.2,1),opacity .14s ease,transform .18s cubic-bezier(.2,.8,.2,1),visibility 0s linear .18s!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury.menu-open .nav-links{
    max-height:220px!important;
    padding:6px 16px 10px!important;
    overflow:visible!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translateY(0)!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
    transition:max-height .18s cubic-bezier(.2,.8,.2,1),opacity .12s ease,transform .18s cubic-bezier(.2,.8,.2,1),visibility 0s!important;
  }

  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links > a,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button--soft{
    display:flex!important;
    align-items:center!important;
    width:100%!important;
    min-height:42px!important;
    padding:10px 0!important;
    margin:0!important;
    background:transparent!important;
    border:0!important;
    border-bottom:1px solid rgba(255,255,255,.12)!important;
    box-shadow:none!important;
    color:#fff!important;
    font-size:12px!important;
    font-weight:500!important;
    letter-spacing:.12em!important;
    line-height:1.2!important;
    text-transform:uppercase!important;
    text-align:left!important;
    justify-content:flex-start!important;
    opacity:0!important;
    transform:translateY(-5px)!important;
    transition:opacity .14s ease,transform .18s cubic-bezier(.2,.8,.2,1),color .12s ease!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury.menu-open .nav-links > a,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury.menu-open .nav-link-button,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury.menu-open .nav-link-button--soft{
    opacity:1!important;
    transform:translateY(0)!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury.menu-open .nav-links > :nth-child(1){transition-delay:.02s!important}
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury.menu-open .nav-links > :nth-child(2){transition-delay:.045s!important}
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury.menu-open .nav-links > :nth-child(3){transition-delay:.07s!important}
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links > *:last-child{border-bottom:0!important}
}

/* Sidebar: Overview and Tools now use the exact same text system. */
body.premium-ui.admin-page-body #admin-sidebar .premium-menu-label{
  margin:0 0 8px!important;
  padding:0!important;
  color:#8f939a!important;
  font-size:10px!important;
  font-weight:600!important;
  letter-spacing:.12em!important;
  line-height:1.2!important;
  text-transform:uppercase!important;
}
body.premium-ui.admin-page-body #admin-sidebar :is(.admin-header-tab,.tool-launch-btn){
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  width:100%!important;
  min-height:40px!important;
  padding:9px 0!important;
  margin:0!important;
  background:transparent!important;
  border:0!important;
  border-bottom:1px solid rgba(255,255,255,.06)!important;
  border-radius:0!important;
  box-shadow:none!important;
  color:#d8dade!important;
  font-size:13px!important;
  font-weight:500!important;
  letter-spacing:0!important;
  line-height:1.3!important;
  text-transform:none!important;
  text-align:left!important;
  transition:color .12s ease,opacity .12s ease!important;
}
body.premium-ui.admin-page-body #admin-sidebar :is(.admin-header-tab,.tool-launch-btn):hover{
  background:transparent!important;
  border-color:rgba(255,255,255,.10)!important;
  color:#fff!important;
}
body.premium-ui.admin-page-body #admin-sidebar .admin-header-tab.active{
  background:transparent!important;
  border-color:rgba(255,255,255,.16)!important;
  color:#fff!important;
  font-weight:600!important;
}
body.premium-ui.admin-page-body #admin-sidebar .admin-header-tab.active::after{
  width:30px!important;
  height:1px!important;
  bottom:-1px!important;
  background:#fff!important;
}
body.premium-ui.admin-page-body #admin-sidebar .admin-tools-grid,
body.premium-ui.admin-page-body #admin-sidebar .admin-header-nav{
  gap:0!important;
}

/* === v122: centered desktop modals + flatter premium tools cleanup === */
body.premium-ui :is(.admin-link-btn,.mini-btn,.tool-launch-btn,.btn-next,.btn-primary,.admin-pill,.nav-link-button,.nav-menu-toggle,.btn-back,.nav-cta){
  border-radius:6px!important;
}
body.premium-ui :is(
  .admin-card,.client-card,.records-card,.analytics-card,.analytics-overview-card,
  .tools-form-card,.tools-list-card,.slot-form-card,.confirm-box,.notifications-panel,
  .admin-tools-modal-panel,.admin-drawer-panel,.slot-quick-dialog,.admin-day-sheet,
  .records-modal-item,.my-booking-card,.showroom-card,.product-card
){
  border-radius:8px!important;
}

/* Sidebar back button: keep the label optically centered and slightly lower. */
body.premium-ui.admin-page-body #admin-sidebar .admin-topbar-start .admin-link-btn,
body.premium-ui.admin-page-body #admin-sidebar .admin-link-btn-back{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  line-height:1.18!important;
  padding-top:13px!important;
  padding-bottom:11px!important;
}

/* Desktop / large-screen admin modals should open visually centered, not glued to the top. */
@media (min-width:1025px){
  body.premium-ui.admin-page-body :is(.admin-modal-shell,.admin-drawer,#slot-quick-panel.active,#admin-day-modal){
    align-items:center!important;
    justify-content:center!important;
    padding:24px!important;
  }


  body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet-head{
    padding:20px 24px 14px!important;
  }
  body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet-list{
    padding:16px 22px 18px!important;
    max-height:min(62dvh,580px)!important;
  }
}

/* Tool lists: remove the double rounded inner card and keep a cleaner flat structure. */
body.premium-ui.admin-page-body :is(#records-modal-list,#showroom-admin-list,#barbers-admin-list,#products-admin-list,#services-admin-list) .records-modal-item{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:14px!important;
  padding:14px 16px 14px 18px!important;
  margin:0 0 10px!important;
  background:#17191d!important;
  border:1px solid rgba(255,255,255,.08)!important;
  box-shadow:none!important;
}
body.premium-ui.admin-page-body :is(#records-modal-list,#showroom-admin-list,#barbers-admin-list,#products-admin-list,#services-admin-list) .records-modal-item::before{
  top:10px!important;
  bottom:10px!important;
}
body.premium-ui.admin-page-body :is(#records-modal-list,#showroom-admin-list,#barbers-admin-list,#products-admin-list,#services-admin-list) .records-modal-main{
  min-width:0!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
body.premium-ui.admin-page-body :is(#records-modal-list,#showroom-admin-list,#barbers-admin-list,#products-admin-list,#services-admin-list) .records-modal-main > div[style]{
  display:flex!important;
  align-items:flex-start!important;
  gap:12px!important;
}
body.premium-ui.admin-page-body :is(#records-modal-list,#showroom-admin-list,#barbers-admin-list,#products-admin-list,#services-admin-list) .records-modal-main :is(strong,h4){
  margin-bottom:4px!important;
}
body.premium-ui.admin-page-body :is(#records-modal-list,#showroom-admin-list,#barbers-admin-list,#products-admin-list,#services-admin-list) .records-modal-main :is(span,small,p){
  color:#b8bbb2!important;
}
body.premium-ui.admin-page-body :is(#records-modal-list,#showroom-admin-list,#barbers-admin-list,#products-admin-list,#services-admin-list) .records-modal-actions{
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:flex-end!important;
  align-items:center!important;
  gap:10px!important;
  width:auto!important;
  min-width:max-content!important;
  margin-top:0!important;
  padding-top:0!important;
  border-top:0!important;
}
body.premium-ui.admin-page-body :is(#records-modal-list,#showroom-admin-list,#barbers-admin-list,#products-admin-list,#services-admin-list) .records-modal-actions :is(button,.mini-btn,.admin-link-btn,.btn-primary,.btn-next){
  width:auto!important;
  min-width:112px!important;
  min-height:38px!important;
  border-radius:6px!important;
}

/* Smaller, sharper media previews in tools. */
body.premium-ui.admin-page-body .showroom-admin-item img,
body.premium-ui.admin-page-body .product-admin-card img{
  border-radius:4px!important;
}
body.premium-ui.admin-page-body .showroom-admin-item img{
  width:62px!important;
  height:72px!important;
}
body.premium-ui.admin-page-body #showroom-admin-list .records-modal-item,
body.premium-ui.admin-page-body #barbers-admin-list .records-modal-item{
  padding:12px 14px 12px 18px!important;
}

/* Make records tool / showroom / barbers feel less cramped on mobile too. */
@media (max-width:900px){
  body.premium-ui.admin-page-body :is(#records-modal-list,#showroom-admin-list,#barbers-admin-list,#products-admin-list,#services-admin-list) .records-modal-item{
    grid-template-columns:1fr!important;
    align-items:stretch!important;
    gap:10px!important;
  }
  body.premium-ui.admin-page-body :is(#records-modal-list,#showroom-admin-list,#barbers-admin-list,#products-admin-list,#services-admin-list) .records-modal-actions{
    width:100%!important;
    min-width:0!important;
    justify-content:flex-start!important;
  }
  body.premium-ui.admin-page-body :is(#records-modal-list,#showroom-admin-list,#barbers-admin-list,#products-admin-list,#services-admin-list) .records-modal-actions :is(button,.mini-btn,.admin-link-btn,.btn-primary,.btn-next){
    flex:1 1 calc(50% - 6px)!important;
    min-width:0!important;
  }
}

/* === v123: dedicated iPad landscape admin modal pass === */
@media (min-width:820px) and (max-width:1366px) and (orientation:landscape){
  /* Every admin modal/drawer opens centered with safe viewport breathing room. */
  body.premium-ui.admin-page-body :is(
    #admin-tools-modal,
    #clients-modal,
    #client-history-modal,
    #booking-drawer,
    #slot-quick-panel,
    #admin-day-modal
  ){
    align-items:center!important;
    justify-content:center!important;
    padding:12px 16px!important;
  }

  body.premium-ui.admin-page-body :is(
    #admin-tools-modal .admin-tools-modal-panel,
    #clients-modal .admin-tools-modal-panel,
    #client-history-modal .admin-tools-modal-panel,
    #booking-drawer .admin-drawer-panel,
    #slot-quick-panel .slot-quick-dialog,
    #admin-day-modal .admin-day-sheet
  ){
    width:min(1040px,calc(100vw - 32px))!important;
    max-width:1040px!important;
    max-height:calc(100dvh - 24px)!important;
    min-height:0!important;
    margin:auto!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior:contain!important;
    scrollbar-gutter:stable!important;
    border-radius:8px!important;
  }

  /* Compact headers so actual tool content gets more room. */
  body.premium-ui.admin-page-body :is(
    #admin-tools-modal .admin-tools-modal-head,
    #clients-modal .admin-tools-modal-head,
    #client-history-modal .admin-tools-modal-head,
    #slot-quick-panel .slot-quick-top,
    #admin-day-modal .admin-day-sheet-head
  ){
    position:relative!important;
    top:auto!important;
    padding:0 0 10px!important;
    margin:0 0 10px!important;
    background:#18191d!important;
    border-bottom:1px solid rgba(255,255,255,.08)!important;
    box-shadow:none!important;
  }

  body.premium-ui.admin-page-body :is(
    #admin-tools-modal .admin-tools-modal-head h3,
    #clients-modal .admin-tools-modal-head h3,
    #client-history-modal .admin-tools-modal-head h3,
    #booking-drawer .admin-drawer-head h3,
    #slot-quick-panel .slot-quick-top h3,
    #admin-day-modal .admin-day-sheet-head h3
  ){
    font-size:22px!important;
    line-height:1.08!important;
  }

  /* Tool modal two-column editor remains usable without becoming oversized. */
  body.premium-ui.admin-page-body #admin-tools-modal .tools-modal-grid,
  body.premium-ui.admin-page-body #admin-tools-modal .products-editor-grid{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    gap:10px!important;
    align-items:start!important;
  }
  body.premium-ui.admin-page-body #admin-tools-modal :is(.tools-form-card,.tools-list-card,.slot-form-card){
    padding:12px!important;
    border-radius:7px!important;
  }
  body.premium-ui.admin-page-body #admin-tools-modal :is(input,select,textarea,.admin-search){
    min-height:38px!important;
    padding:.58rem .7rem!important;
    font-size:13px!important;
    border-radius:5px!important;
  }
  body.premium-ui.admin-page-body #admin-tools-modal textarea{
    min-height:72px!important;
  }

  /* Lists use the available landscape height instead of expanding the whole modal. */
  body.premium-ui.admin-page-body :is(
    #records-modal-list,
    #showroom-admin-list,
    #barbers-admin-list,
    #products-admin-list,
    #services-admin-list,
    #recurring-break-list,
    #blackout-day-list,
    #clients-modal-list,
    #client-history-list
  ){
    max-height:calc(100dvh - 220px)!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior:contain!important;
    padding-right:2px!important;
  }
/* Booking/customer editor: compact, centered and fully scrollable. */

  body.premium-ui.admin-page-body #drawer-form{
    gap:7px!important;
  }
  body.premium-ui.admin-page-body #drawer-form .admin-form-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }
  body.premium-ui.admin-page-body #drawer-form .form-group{
    margin-bottom:0!important;
    gap:4px!important;
  }
  body.premium-ui.admin-page-body #drawer-form :is(input,select,textarea){
    min-height:37px!important;
    padding:.54rem .68rem!important;
    font-size:13px!important;
    border-radius:5px!important;
  }
  body.premium-ui.admin-page-body #drawer-form textarea[name="notes"]{
    height:50px!important;
    min-height:50px!important;
    resize:vertical!important;
  }
  body.premium-ui.admin-page-body #drawer-form .drawer-meta{
    padding:8px 10px!important;
    border-radius:6px!important;
  }
  body.premium-ui.admin-page-body #drawer-form .drawer-actions{
    position:relative!important;
    bottom:auto!important;
    padding-top:8px!important;
    background:transparent!important;
  }
/* Day modal: centered and with a larger usable appointment list. */

  body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet-head{
    padding:16px 18px 12px!important;
    margin:0!important;
  }
  body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet-list{
    min-height:260px!important;
    max-height:calc(100dvh - 190px)!important;
    padding:12px 14px!important;
    overflow-y:auto!important;
  }
  body.premium-ui.admin-page-body #admin-day-modal .admin-day-sheet-actions{
    padding:10px 14px 12px!important;
  }
/* Quick booking follows the same compact language. */

  body.premium-ui.admin-page-body #slot-quick-panel .quick-booking-form{
    width:100%!important;
    max-width:none!important;
  }

  /* No press/scale effects in landscape; avoids iPad repaint jitter. */
  body.premium-ui.admin-page-body :is(
    #admin-tools-modal,
    #clients-modal,
    #client-history-modal,
    #booking-drawer,
    #slot-quick-panel,
    #admin-day-modal
  ) :is(button,.admin-link-btn,.mini-btn,.btn-primary,.btn-next,.admin-pill):is(:hover,:active,:focus,:focus-visible){
    transform:none!important;
    filter:none!important;
  }
}

/* === v124: iPad landscape scheduler header layout cleanup === */
@media (min-width:820px) and (max-width:1366px) and (orientation:landscape){
  body.premium-ui.admin-page-body .scheduler-card .admin-toolbar{
    display:block!important;
    width:100%!important;
  }

  body.premium-ui.admin-page-body .scheduler-top-controls{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto auto!important;
    align-items:center!important;
    column-gap:10px!important;
    row-gap:0!important;
    width:100%!important;
    flex-wrap:nowrap!important;
  }

  body.premium-ui.admin-page-body .scheduler-top-controls > .admin-toolbar-group:first-child{
    grid-column:2!important;
    display:flex!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:8px!important;
    white-space:nowrap!important;
    min-width:0!important;
    margin:0!important;
  }

  body.premium-ui.admin-page-body .scheduler-top-controls > .admin-toolbar-group:last-child{
    grid-column:3!important;
    display:flex!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:8px!important;
    white-space:nowrap!important;
    min-width:0!important;
    margin:0!important;
  }

  body.premium-ui.admin-page-body .scheduler-top-controls .scheduler-period-label{
    grid-column:1!important;
    display:block!important;
    width:100%!important;
    min-width:0!important;
    margin:0!important;
    text-align:center!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    font-size:clamp(18px,2.2vw,22px)!important;
    line-height:1.1!important;
    font-weight:650!important;
    color:#f2f2f2!important;
  }

  body.premium-ui.admin-page-body .scheduler-top-controls :is(#calendar-prev-period,#calendar-today,#calendar-next-period,#calendar-view-week,#calendar-view-month){
    min-height:40px!important;
    height:40px!important;
    padding:0 14px!important;
    border-radius:6px!important;
    white-space:nowrap!important;
    font-size:13px!important;
    line-height:1!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
  }

  body.premium-ui.admin-page-body .scheduler-top-controls > .admin-toolbar-group:first-child .admin-pill,
  body.premium-ui.admin-page-body .scheduler-top-controls > .admin-toolbar-group:last-child .admin-pill{
    margin:0!important;
  }
}

/* === v125: TRUE iPad-landscape scheduler header alignment === */
@media (min-width:820px) and (max-width:1366px) and (orientation:landscape){
  body.premium-ui.admin-page-body .scheduler-card .admin-toolbar{
    position:relative!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    flex-wrap:nowrap!important;
    gap:12px!important;
    width:100%!important;
    min-height:48px!important;
    margin-bottom:12px!important;
  }

  body.premium-ui.admin-page-body .scheduler-card .admin-toolbar > div:first-child{
    flex:0 0 auto!important;
    width:auto!important;
    min-width:180px!important;
    max-width:225px!important;
    margin:0!important;
    padding:0!important;
  }

  body.premium-ui.admin-page-body .scheduler-card .admin-toolbar > div:first-child .admin-sub{
    display:none!important;
  }

  body.premium-ui.admin-page-body .scheduler-card .admin-toolbar > div:first-child h2{
    margin:0!important;
    font-size:clamp(18px,1.8vw,21px)!important;
    line-height:1.1!important;
    white-space:nowrap!important;
  }

  body.premium-ui.admin-page-body .scheduler-top-controls{
    position:static!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    flex:0 0 auto!important;
    width:auto!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    gap:8px!important;
  }

  body.premium-ui.admin-page-body .scheduler-top-controls > .admin-toolbar-group:first-child,
  body.premium-ui.admin-page-body .scheduler-top-controls > .admin-toolbar-group:last-child{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    flex-wrap:nowrap!important;
    width:auto!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    gap:6px!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
  }

  body.premium-ui.admin-page-body .scheduler-top-controls .scheduler-period-label{
    position:absolute!important;
    left:50%!important;
    top:50%!important;
    transform:translate(-50%,-50%)!important;
    z-index:1!important;
    display:block!important;
    width:auto!important;
    min-width:0!important;
    max-width:240px!important;
    margin:0!important;
    padding:0 8px!important;
    border:0!important;
    background:transparent!important;
    color:#f2f2f2!important;
    font-size:clamp(18px,2vw,22px)!important;
    font-weight:700!important;
    line-height:1!important;
    letter-spacing:-.02em!important;
    text-align:center!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    pointer-events:none!important;
  }

  body.premium-ui.admin-page-body .scheduler-top-controls :is(#calendar-prev-period,#calendar-today,#calendar-next-period){
    min-width:66px!important;
    height:38px!important;
    min-height:38px!important;
    padding:0 10px!important;
    font-size:12px!important;
    line-height:1!important;
    white-space:nowrap!important;
  }

  body.premium-ui.admin-page-body .scheduler-top-controls :is(#calendar-view-week,#calendar-view-month){
    min-width:0!important;
    height:38px!important;
    min-height:38px!important;
    padding:0 11px!important;
    font-size:12px!important;
    line-height:1!important;
    white-space:nowrap!important;
  }
}

/* Slightly tighter only on the narrower iPad landscape widths. */
@media (min-width:820px) and (max-width:1100px) and (orientation:landscape){
  body.premium-ui.admin-page-body .scheduler-card .admin-toolbar > div:first-child{
    min-width:160px!important;
    max-width:190px!important;
  }
  body.premium-ui.admin-page-body .scheduler-card .admin-toolbar > div:first-child h2{
    font-size:17px!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls{
    gap:6px!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls > .admin-toolbar-group:first-child,
  body.premium-ui.admin-page-body .scheduler-top-controls > .admin-toolbar-group:last-child{
    gap:5px!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls .scheduler-period-label{
    max-width:190px!important;
    font-size:18px!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls :is(#calendar-prev-period,#calendar-today,#calendar-next-period){
    min-width:58px!important;
    padding:0 8px!important;
    font-size:11px!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls :is(#calendar-view-week,#calendar-view-month){
    padding:0 9px!important;
    font-size:11px!important;
  }
}

/* === v126: tools are real admin pages, not modals === */
body.premium-ui.admin-page-body .admin-tools-page{
  width:100%!important;
  min-width:0!important;
}
body.premium-ui.admin-page-body .admin-tools-page-host {
  width:100%!important;
  margin:0!important;
  padding:0!important;
}

body.premium-ui.admin-page-body .admin-tools-page-panel {
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}

body.premium-ui.admin-page-body .admin-tools-page-panel .admin-tools-modal-head{
  position:static!important;
  display:flex!important;
  align-items:flex-end!important;
  justify-content:space-between!important;
  gap:18px!important;
  width:100%!important;
  margin:0 0 18px!important;
  padding:0 0 14px!important;
  background:transparent!important;
  border:0!important;
  border-bottom:1px solid rgba(255,255,255,.08)!important;
  box-shadow:none!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .admin-tools-modal-head h3{
  margin:3px 0 0!important;
  color:#f5f5f2!important;
  font-size:clamp(24px,3vw,34px)!important;
  line-height:1.05!important;
  letter-spacing:-.035em!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .admin-tools-modal-head .admin-sub{
  color:#b4b5b1!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .tools-modal-section{
  width:100%!important;
  min-width:0!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .tools-modal-grid,
body.premium-ui.admin-page-body .admin-tools-page-panel .products-editor-grid{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:16px!important;
  align-items:start!important;
  width:100%!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel :is(.tools-form-card,.tools-list-card){
  width:100%!important;
  min-width:0!important;
  max-height:none!important;
  overflow:visible!important;
  margin:0!important;
  padding:18px!important;
  background:#17191d!important;
  border:1px solid rgba(255,255,255,.08)!important;
  border-radius:8px!important;
  box-shadow:none!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel :is(
  #recurring-break-list,#blackout-day-list,#products-admin-list,#showroom-admin-list,
  #services-admin-list,#barbers-admin-list,#records-modal-list
){
  max-height:none!important;
  overflow:visible!important;
  padding-right:0!important;
}

/* Flatpickr: force a stable custom calendar on iPad/mobile and remove old gold treatment. */
body.premium-ui.admin-page-body .flatpickr-calendar{
  width:310px!important;
  max-width:calc(100vw - 24px)!important;
  background:#15171b!important;
  border:1px solid rgba(255,255,255,.12)!important;
  border-radius:8px!important;
  box-shadow:0 18px 46px rgba(0,0,0,.48)!important;
  overflow:hidden!important;
}
body.premium-ui.admin-page-body .flatpickr-day{
  border-radius:4px!important;
  color:#e8e8e5!important;
}
body.premium-ui.admin-page-body .flatpickr-day.selected,
body.premium-ui.admin-page-body .flatpickr-day.selected:hover{
  background:#f1f1ee!important;
  border-color:#f1f1ee!important;
  color:#111216!important;
}
body.premium-ui.admin-page-body .flatpickr-day.today{
  border-color:#f1f1ee!important;
}
body.premium-ui.admin-page-body .flatpickr-prev-month svg,
body.premium-ui.admin-page-body .flatpickr-next-month svg{
  fill:#f1f1ee!important;
}

/* Active tool indication is flat, not pill/card-like. */
body.premium-ui.admin-page-body #admin-sidebar .tool-launch-btn.active{
  color:#fff!important;
  background:transparent!important;
  border-color:transparent!important;
  box-shadow:inset 2px 0 0 #fff!important;
}

@media (max-width:900px){
  body.premium-ui.admin-page-body .admin-tools-page-panel .admin-tools-modal-head{
    align-items:center!important;
    margin-bottom:14px!important;
    padding-bottom:12px!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel .admin-tools-modal-head h3{
    font-size:24px!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel .tools-modal-grid,
  body.premium-ui.admin-page-body .admin-tools-page-panel .products-editor-grid{
    grid-template-columns:1fr!important;
    gap:12px!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel :is(.tools-form-card,.tools-list-card){
    padding:14px!important;
  }
}

@media (min-width:820px) and (max-width:1366px) and (orientation:landscape){


  body.premium-ui.admin-page-body .admin-tools-page-panel .admin-tools-modal-head{
    margin-bottom:14px!important;
    padding-bottom:12px!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel .tools-modal-grid,
  body.premium-ui.admin-page-body .admin-tools-page-panel .products-editor-grid{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    gap:12px!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel :is(.tools-form-card,.tools-list-card){
    padding:14px!important;
  }
}
/* === v127: complete admin tools page rework / responsive all orientations === */
body.premium-ui.admin-page-body #admin-pane-tools {
  width:100%!important;
}

body.premium-ui.admin-page-body #admin-tools-page-host {
  width:min(100%,1380px)!important;
  margin:0 auto!important;
  padding:0!important;
}


/* Page header: one consistent structure for every tool. */
body.premium-ui.admin-page-body .admin-tools-page-panel .admin-tools-modal-head{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:end!important;
  gap:18px!important;
  margin:0 0 20px!important;
  padding:0 0 14px!important;
  border-bottom:1px solid rgba(255,255,255,.09)!important;
  background:transparent!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .admin-tools-modal-head > div{
  min-width:0!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .admin-tools-modal-head .admin-sub{
  margin:0 0 5px!important;
  color:#aeb0b5!important;
  font-size:10px!important;
  font-weight:650!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .admin-tools-modal-head h3{
  margin:0!important;
  color:#f7f7f5!important;
  font-size:clamp(25px,2.8vw,36px)!important;
  line-height:1.04!important;
  letter-spacing:-.04em!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .admin-tools-modal-head [data-close-tools-modal]{
  align-self:center!important;
  min-width:118px!important;
  min-height:40px!important;
  padding:0 14px!important;
  border-radius:5px!important;
}

/* Core tool layout: editor/form first, saved data second. */
body.premium-ui.admin-page-body .admin-tools-page-panel .tools-modal-section{
  width:100%!important;
  min-width:0!important;
  overflow:visible!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .tools-modal-section > .field-help:first-child{
  display:block!important;
  margin:0 0 12px!important;
  color:#9da0a6!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .tools-modal-grid,
body.premium-ui.admin-page-body .admin-tools-page-panel .products-editor-grid{
  display:grid!important;
  grid-template-columns:minmax(320px,.82fr) minmax(0,1.18fr)!important;
  gap:18px!important;
  align-items:start!important;
  width:100%!important;
  min-width:0!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel[data-tool-pane="booking-window"] .tools-modal-grid{
  grid-template-columns:minmax(330px,.78fr) minmax(0,1.22fr)!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel[data-tool-pane="records"] .tools-list-card.full{
  width:100%!important;
}

/* Tool surfaces: same hierarchy everywhere, no bulky nested bubbles. */
body.premium-ui.admin-page-body .admin-tools-page-panel :is(.tools-form-card,.tools-list-card){
  display:block!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:18px!important;
  border:1px solid rgba(255,255,255,.085)!important;
  border-radius:6px!important;
  background:#161616!important;
  box-shadow:none!important;
  overflow:visible!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .tools-list-card.full{
  grid-column:1/-1!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel :is(.tools-form-card,.tools-list-card) > .admin-sub{
  margin:0 0 5px!important;
  color:#9699a0!important;
  font-size:10px!important;
  font-weight:650!important;
  letter-spacing:.1em!important;
  text-transform:uppercase!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel :is(.tools-form-card,.tools-list-card) > h4,
body.premium-ui.admin-page-body .admin-tools-page-panel :is(.tools-form-card,.tools-list-card) h4{
  margin:0 0 14px!important;
  color:#f2f2f0!important;
  font-size:17px!important;
  line-height:1.2!important;
  font-weight:650!important;
  letter-spacing:-.015em!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .tools-helper-text{
  margin:0 0 14px!important;
  color:#9fa2a8!important;
  font-size:12.5px!important;
  line-height:1.55!important;
}

/* Forms: predictable spacing and field order. */
body.premium-ui.admin-page-body .admin-tools-page-panel .admin-form-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
  width:100%!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .form-group{
  min-width:0!important;
  margin:0 0 11px!important;
  gap:5px!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .form-group label{
  color:#b6b8bd!important;
  font-size:10px!important;
  font-weight:650!important;
  letter-spacing:.065em!important;
  text-transform:uppercase!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel :is(input,select,textarea){
  width:100%!important;
  max-width:100%!important;
  min-height:42px!important;
  box-sizing:border-box!important;
  padding:.67rem .76rem!important;
  border:1px solid rgba(255,255,255,.11)!important;
  border-radius:5px!important;
  background:#101216!important;
  color:#f5f5f2!important;
  box-shadow:none!important;
  font-size:13px!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel textarea{
  min-height:76px!important;
  resize:vertical!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel :is(input,select,textarea):focus{
  outline:none!important;
  border-color:rgba(255,255,255,.32)!important;
  box-shadow:0 0 0 2px rgba(255,255,255,.04)!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .field-help{
  margin-top:5px!important;
  color:#888c93!important;
  font-size:11px!important;
  line-height:1.45!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .product-upload-preview{
  display:block!important;
  width:72px!important;
  height:78px!important;
  margin:9px 0 0!important;
  object-fit:cover!important;
  border:1px solid rgba(255,255,255,.1)!important;
  border-radius:4px!important;
  background:#0f1115!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .product-upload-preview.hidden{
  display:none!important;
}

/* Actions: always in a clean order, primary action on the right. */
body.premium-ui.admin-page-body .admin-tools-page-panel .drawer-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  width:100%!important;
  margin:4px 0 0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .drawer-actions :is(button,.admin-link-btn,.btn-next,.btn-primary,.tool-launch-btn){
  min-height:40px!important;
  padding:0 14px!important;
  border-radius:5px!important;
  font-size:12px!important;
  line-height:1!important;
  white-space:nowrap!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .drawer-actions .btn-next,
body.premium-ui.admin-page-body .admin-tools-page-panel .drawer-actions .btn-primary{
  order:2!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .drawer-actions .admin-link-btn{
  order:1!important;
}

/* Saved items: flat, aligned, readable and never squeezed into a tiny bubble. */
body.premium-ui.admin-page-body .admin-tools-page-panel :is(
  #recurring-break-list,#blackout-day-list,#products-admin-list,#showroom-admin-list,
  #services-admin-list,#barbers-admin-list,#records-modal-list
){
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:8px!important;
  width:100%!important;
  min-width:0!important;
  max-height:none!important;
  overflow:visible!important;
  padding:0!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel :is(.records-modal-item,.schedule-chip-item,.product-admin-card){
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:11px 12px!important;
  border:0!important;
  border-bottom:1px solid rgba(255,255,255,.075)!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel :is(.records-modal-item,.schedule-chip-item,.product-admin-card):last-child{
  border-bottom:0!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .records-modal-item{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:14px!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .records-modal-item::before{
  display:none!important;
  content:none!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .records-modal-main{
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .records-modal-main :is(strong,h4){
  color:#f1f1ef!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .records-modal-main :is(span,small,p){
  color:#a5a8ae!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .records-modal-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  flex-wrap:wrap!important;
  gap:7px!important;
  width:auto!important;
  min-width:max-content!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .records-modal-actions :is(button,.mini-btn){
  width:auto!important;
  min-width:92px!important;
  min-height:36px!important;
  padding:0 11px!important;
  border-radius:5px!important;
  font-size:11.5px!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .schedule-chip-item{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:12px!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .schedule-chip-item > div{
  min-width:0!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .schedule-chip-item :is(strong,span,small){
  display:block!important;
  min-width:0!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .schedule-chip-item span{
  margin-top:3px!important;
  color:#a4a7ad!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .schedule-chip-item small{
  margin-top:3px!important;
  color:#858990!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .schedule-empty{
  min-height:72px!important;
  display:grid!important;
  place-items:center!important;
  padding:16px!important;
  border:1px dashed rgba(255,255,255,.1)!important;
  border-radius:5px!important;
  background:transparent!important;
  color:#858990!important;
  text-align:center!important;
}

/* Products / showroom media rows. */
body.premium-ui.admin-page-body .admin-tools-page-panel :is(.showroom-admin-item,.product-admin-card) img{
  flex:0 0 auto!important;
  width:56px!important;
  height:64px!important;
  object-fit:cover!important;
  border:1px solid rgba(255,255,255,.09)!important;
  border-radius:4px!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .showroom-admin-item .records-modal-main > div{
  gap:11px!important;
}

/* Barbers: booking selection setting first, then editor/list in one logical flow. */
body.premium-ui.admin-page-body .admin-tools-page-panel #tools-pane-barbers > .tools-list-card.full{
  margin:0 0 14px!important;
  padding:15px 18px!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel #tools-pane-barbers > .tools-list-card.full .drawer-actions{
  justify-content:flex-start!important;
}

/* Booking-window inline blocks lose old pill/card styling. */
body.premium-ui.admin-page-body .admin-tools-page-panel .booking-window-preview{
  margin:10px 0 14px!important;
  padding:10px 12px!important;
  border:1px solid rgba(255,255,255,.08)!important;
  border-radius:5px!important;
  background:#111318!important;
  color:#aeb1b7!important;
}

/* Desktop: wide, balanced. */
@media (min-width:1181px){
  body.premium-ui.admin-page-body .admin-tools-page-panel .tools-form-card{
    position:sticky!important;
    top:18px!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel[data-tool-pane="records"] .tools-list-card{
    position:static!important;
  }
}

/* iPad / tablet portrait and smaller laptops: stack for guaranteed readability. */
@media (min-width:700px) and (max-width:1180px) and (orientation:portrait){
  body.premium-ui.admin-page-body #admin-tools-page-host{
    width:100%!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel .tools-modal-grid,
  body.premium-ui.admin-page-body .admin-tools-page-panel .products-editor-grid,
  body.premium-ui.admin-page-body .admin-tools-page-panel[data-tool-pane="booking-window"] .tools-modal-grid{
    grid-template-columns:1fr!important;
    gap:12px!important;
  }
}

/* iPad/tablet landscape: dedicated two-column layout with no horizontal drift. */
@media (min-width:820px) and (max-width:1366px) and (orientation:landscape){
  html,body.premium-ui.admin-page-body{
    overflow-x:hidden!important;
  }
body.premium-ui.admin-page-body .admin-tools-page-panel .tools-modal-section {
    max-width:100%!important;
    overflow-x:hidden!important;
  }

  body.premium-ui.admin-page-body #admin-tools-page-host{
    width:100%!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel .admin-tools-modal-head{
    margin-bottom:14px!important;
    padding-bottom:11px!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel .admin-tools-modal-head h3{
    font-size:27px!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel .tools-modal-grid,
  body.premium-ui.admin-page-body .admin-tools-page-panel .products-editor-grid,
  body.premium-ui.admin-page-body .admin-tools-page-panel[data-tool-pane="booking-window"] .tools-modal-grid{
    grid-template-columns:minmax(290px,.82fr) minmax(0,1.18fr)!important;
    gap:12px!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel :is(.tools-form-card,.tools-list-card){
    padding:14px!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel .admin-form-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel :is(input,select,textarea){
    min-height:39px!important;
    padding:.58rem .68rem!important;
    font-size:12.5px!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel textarea{
    min-height:64px!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel .records-modal-item{
    gap:10px!important;
    padding:10px!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel .records-modal-actions :is(button,.mini-btn){
    min-width:82px!important;
    min-height:34px!important;
    padding:0 9px!important;
    font-size:11px!important;
  }
}

/* Narrow iPad landscape / smaller landscape tablets: stack where 2 columns become cramped. */
@media (min-width:700px) and (max-width:1024px) and (orientation:landscape){
  body.premium-ui.admin-page-body .admin-tools-page-panel .tools-modal-grid,
  body.premium-ui.admin-page-body .admin-tools-page-panel .products-editor-grid,
  body.premium-ui.admin-page-body .admin-tools-page-panel[data-tool-pane="booking-window"] .tools-modal-grid{
    grid-template-columns:minmax(270px,.9fr) minmax(0,1.1fr)!important;
    gap:10px!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel :is(.tools-form-card,.tools-list-card){
    padding:12px!important;
  }
}

/* Mobile: strict one-column, primary action full width, lists stay flat. */
@media (max-width:699px){
  body.premium-ui.admin-page-body #admin-tools-page-host{
    width:100%!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel .admin-tools-modal-head{
    grid-template-columns:1fr!important;
    align-items:start!important;
    gap:10px!important;
    margin-bottom:12px!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel .admin-tools-modal-head h3{
    font-size:23px!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel .admin-tools-modal-head [data-close-tools-modal]{
    width:100%!important;
    min-width:0!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel .tools-modal-grid,
  body.premium-ui.admin-page-body .admin-tools-page-panel .products-editor-grid,
  body.premium-ui.admin-page-body .admin-tools-page-panel[data-tool-pane="booking-window"] .tools-modal-grid{
    grid-template-columns:1fr!important;
    gap:10px!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel :is(.tools-form-card,.tools-list-card){
    padding:12px!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel .admin-form-grid{
    grid-template-columns:1fr!important;
    gap:0!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel .drawer-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:7px!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel .drawer-actions :is(button,.admin-link-btn,.btn-next,.btn-primary,.tool-launch-btn){
    width:100%!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel .records-modal-item,
  body.premium-ui.admin-page-body .admin-tools-page-panel .schedule-chip-item{
    grid-template-columns:1fr!important;
    align-items:start!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel .records-modal-actions{
    width:100%!important;
    min-width:0!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel .records-modal-actions :is(button,.mini-btn){
    width:100%!important;
    min-width:0!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel .schedule-chip-item > .mini-btn{
    width:100%!important;
  }
}

/* === v129: flatter client/showroom/barber tools + sidebar account button polish === */

/* Clients tool rows: flatter, cleaner, buttons vertically centered. */
body.premium-ui.admin-page-body .clients-list{
  gap:12px!important;
}
body.premium-ui.admin-page-body .client-card{
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:18px!important;
  padding:18px 18px!important;
  border-radius:8px!important;
  background:#141518!important;
  border:1px solid rgba(255,255,255,.08)!important;
  box-shadow:none!important;
}
body.premium-ui.admin-page-body .client-card:hover{
  background:#17191d!important;
  border-color:rgba(255,255,255,.12)!important;
}
body.premium-ui.admin-page-body .client-card-main{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  min-height:72px!important;
}
body.premium-ui.admin-page-body .client-card-actions{
  display:flex!important;
  align-items:center!important;
  align-self:center!important;
  justify-content:flex-end!important;
  gap:10px!important;
  margin:0!important;
}
body.premium-ui.admin-page-body .client-card-actions .mini-btn{
  min-height:40px!important;
  padding:0 16px!important;
  border-radius:6px!important;
  align-self:center!important;
}
@media (min-width:901px){
  body.premium-ui.admin-page-body .client-card-actions{
    position:relative!important;
    top:2px!important;
  }
}

/* Remove the extra rounded/nested feel from showroom + barbers/admin tool items. */
body.premium-ui.admin-page-body :is(#showroom-admin-list,#barbers-admin-list,#products-admin-list,#services-admin-list) .records-modal-item,
body.premium-ui.admin-page-body .showroom-admin-item,
body.premium-ui.admin-page-body .product-admin-card,
body.premium-ui.admin-page-body .barber-admin-card{
  border-radius:8px!important;
  background:#15171b!important;
  box-shadow:none!important;
}
body.premium-ui.admin-page-body :is(#showroom-admin-list,#barbers-admin-list,#products-admin-list,#services-admin-list) .records-modal-main,
body.premium-ui.admin-page-body .showroom-admin-item .records-modal-main{
  background:transparent!important;
  border-radius:0!important;
  box-shadow:none!important;
}
body.premium-ui.admin-page-body :is(#showroom-admin-list,#barbers-admin-list,#products-admin-list,#services-admin-list) .records-modal-actions :is(button,.mini-btn,.admin-link-btn),
body.premium-ui.admin-page-body .showroom-admin-item :is(button,.mini-btn,.admin-link-btn){
  border-radius:6px!important;
}

/* Sidebar account buttons. */
body.premium-ui.admin-page-body #admin-sidebar .admin-topbar-start .admin-link-btn,
body.premium-ui.admin-page-body #admin-sidebar .admin-link-btn-back,
body.premium-ui.admin-page-body #admin-sidebar #admin-logout-top{
  min-height:46px!important;
  border-radius:6px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  line-height:1.15!important;
  padding:14px 12px 10px!important;
}
body.premium-ui.admin-page-body #admin-sidebar .admin-link-btn-back{
  background:transparent!important;
  border:1px solid rgba(255,255,255,.14)!important;
  color:#f1f1f1!important;
}
body.premium-ui.admin-page-body #admin-sidebar .admin-link-btn-back:hover{
  background:#17191d!important;
  border-color:rgba(255,255,255,.18)!important;
}
body.premium-ui.admin-page-body .admin-link-btn-danger,
body.premium-ui.admin-page-body #admin-sidebar #admin-logout-top,
body.premium-ui.admin-page-body #logout-confirm-accept{
  background:#8f2323!important;
  border-color:#b33b3b!important;
  color:#fff!important;
}
body.premium-ui.admin-page-body .admin-link-btn-danger:hover,
body.premium-ui.admin-page-body #admin-sidebar #admin-logout-top:hover,
body.premium-ui.admin-page-body #logout-confirm-accept:hover{
  background:#a92c2c!important;
  border-color:#c54a4a!important;
  color:#fff!important;
}

/* Mobile/tablet stacking still tidy. */
@media (max-width:900px){
  body.premium-ui.admin-page-body .client-card{
    grid-template-columns:1fr!important;
    gap:12px!important;
    padding:15px 14px!important;
  }
  body.premium-ui.admin-page-body .client-card-actions{
    width:100%!important;
    justify-content:flex-start!important;
    top:0!important;
  }
}

/* === v131: full mobile UX pass — public + admin + tools === */

/* Mobile foundation: no horizontal drift, predictable sizing, comfortable taps. */
@media (max-width:699px){
  html, body.premium-ui{
    width:100%!important;
    max-width:100%!important;
    overflow-x:hidden!important;
  }
  body.premium-ui *, body.premium-ui *::before, body.premium-ui *::after{
    box-sizing:border-box!important;
  }
  body.premium-ui :is(button,a,input,select,textarea){
    max-width:100%!important;
  }
  body.premium-ui :is(button,.admin-link-btn,.admin-pill,.mini-btn,.tool-launch-btn,.btn-primary,.btn-next,.btn-back,.nav-link-button){
    min-height:44px!important;
    touch-action:manipulation!important;
    -webkit-tap-highlight-color:transparent!important;
  }
  body.premium-ui :is(input,select,textarea,.admin-search){
    font-size:16px!important;
    line-height:1.35!important;
  }

  /* ---------- Public site mobile ---------- */
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury{
    width:100%!important;
    padding:12px 14px!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-logo img{
    height:30px!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-menu-toggle{
    width:40px!important;
    height:40px!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links{
    padding-left:14px!important;
    padding-right:14px!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links > a,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button--soft{
    min-height:46px!important;
    padding:12px 0!important;
    font-size:12px!important;
    line-height:1.2!important;
  }

  body.premium-ui:not(.admin-page-body) #hero.hero-luxury{
    min-height:100svh!important;
    min-height:100dvh!important;
    padding:88px 18px 36px!important;
    display:grid!important;
    place-items:center!important;
  }
  body.premium-ui:not(.admin-page-body) #hero.hero-luxury .hero-content{
    width:min(100%,520px)!important;
    margin:auto!important;
    text-align:center!important;
  }
  body.premium-ui:not(.admin-page-body) .hero-actions-lux{
    width:100%!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:9px!important;
    margin-top:22px!important;
  }
  body.premium-ui:not(.admin-page-body) .hero-actions-lux :is(.btn-primary,.btn-outline){
    width:100%!important;
    min-height:48px!important;
  }

  body.premium-ui:not(.admin-page-body) :is(.product-showcase,.showroom-section){
    padding-left:16px!important;
    padding-right:16px!important;
  }
  body.premium-ui:not(.admin-page-body) .showcase-intro{
    margin-bottom:22px!important;
  }
  body.premium-ui:not(.admin-page-body) .product-carousel-shell{
    width:100%!important;
    overflow:hidden!important;
  }
  body.premium-ui:not(.admin-page-body) .product-grid{
    display:flex!important;
    gap:10px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    scroll-snap-type:x mandatory!important;
    padding:2px 16vw 12px!important;
    margin:0 -16px!important;
    scrollbar-width:none!important;
    -webkit-overflow-scrolling:touch!important;
  }
  body.premium-ui:not(.admin-page-body) .product-grid::-webkit-scrollbar{display:none!important}
  body.premium-ui:not(.admin-page-body) .product-grid .product-card{
    flex:0 0 min(68vw,230px)!important;
    min-width:min(68vw,230px)!important;
    scroll-snap-align:center!important;
    border-radius:5px!important;
  }
  body.premium-ui:not(.admin-page-body) .product-grid .product-photo{
    aspect-ratio:4/5!important;
  }
  body.premium-ui:not(.admin-page-body) .showroom-grid{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }
  body.premium-ui:not(.admin-page-body) .showroom-card{
    min-width:0!important;
    border-radius:5px!important;
  }
  body.premium-ui:not(.admin-page-body) footer{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:26px!important;
    padding:42px 18px calc(28px + env(safe-area-inset-bottom))!important;
  }
  body.premium-ui:not(.admin-page-body) .footer-bottom{
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:8px!important;
  }
/* Public booking: strict top-to-bottom flow. */
body.premium-ui:not(.admin-page-body) #booking-overlay .booking-modal,
body.premium-ui:not(.admin-page-body) #mybookings-overlay .my-bookings-modal {
    border:0!important;
    border-radius:0!important;
  }

  body.premium-ui:not(.admin-page-body) #booking-overlay .modal-header,
  body.premium-ui:not(.admin-page-body) #mybookings-overlay .modal-header{
    position:relative!important;
    top:auto!important;
    min-height:46px!important;
    margin:0 0 10px!important;
    padding:0 0 9px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .step-screen{
    width:100%!important;
    padding:0!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .step-title-book{
    font-size:clamp(25px,8vw,34px)!important;
    line-height:1.05!important;
    margin-bottom:8px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .step-subtitle{
    font-size:13px!important;
    line-height:1.45!important;
    margin-bottom:16px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay :is(.options-grid,.time-slots){
    gap:8px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .form-row{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:0!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .form-group{
    width:100%!important;
    margin-bottom:12px!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .modal-nav{
    position:static!important;
    display:grid!important;
    grid-template-columns:1fr 1.25fr!important;
    gap:8px!important;
    width:100%!important;
    margin-top:16px!important;
    padding:0!important;
    background:transparent!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .modal-nav > span:only-child,
  body.premium-ui:not(.admin-page-body) #booking-overlay .modal-nav > span:first-child{
    display:none!important;
  }
  body.premium-ui:not(.admin-page-body) #booking-overlay .modal-nav .btn-next:only-child{
    grid-column:1/-1!important;
  }
/* ---------- Admin mobile shell ---------- */
body.premium-ui.admin-page-body .admin-page-shell,
body.premium-ui.admin-page-body .admin-content-area,
body.premium-ui.admin-page-body .admin-view-pane {
    width:100%!important;
  }

  body.premium-ui.admin-page-body .admin-topbar-page{
    padding:10px 12px!important;
    min-height:58px!important;
  }
  body.premium-ui.admin-page-body .admin-topbar-inner.admin-topbar-layout{
    display:grid!important;
    grid-template-columns:1fr auto auto!important;
    align-items:center!important;
    gap:8px!important;
    width:100%!important;
  }
  body.premium-ui.admin-page-body .admin-brand{
    min-width:0!important;
  }
  body.premium-ui.admin-page-body .admin-brand img{
    width:auto!important;
    max-width:112px!important;
    height:28px!important;
  }
  body.premium-ui.admin-page-body .admin-menu-toggle{
    grid-column:2!important;
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
    padding:0!important;
    background:transparent!important;
    border:1px solid rgba(255,255,255,.12)!important;
    border-radius:4px!important;
  }
  body.premium-ui.admin-page-body .admin-top-actions{
    grid-column:3!important;
    width:auto!important;
    margin:0!important;
  }
  body.premium-ui.admin-page-body #notifications-toggle{
    min-width:44px!important;
    width:44px!important;
    padding:0!important;
    overflow:hidden!important;
    color:transparent!important;
    position:relative!important;
  }
  body.premium-ui.admin-page-body #notifications-toggle::before{
    content:"!"!important;
    color:#fff!important;
    font-size:14px!important;
    font-weight:700!important;
    position:absolute!important;
    inset:0!important;
    display:grid!important;
    place-items:center!important;
  }
  body.premium-ui.admin-page-body #notifications-toggle .notifications-badge{
    position:absolute!important;
    top:3px!important;
    right:3px!important;
    z-index:2!important;
  }


  body.premium-ui.admin-page-body .premium-page-heading{
    display:block!important;
    margin:2px 0 16px!important;
  }
  body.premium-ui.admin-page-body .premium-page-heading h1{
    font-size:clamp(28px,9vw,38px)!important;
    line-height:1!important;
    margin:4px 0 8px!important;
  }
  body.premium-ui.admin-page-body .premium-page-heading p{
    margin:0!important;
    font-size:13px!important;
    line-height:1.45!important;
  }
  body.premium-ui.admin-page-body .premium-workspace-label{
    display:none!important;
  }
  body.premium-ui.admin-page-body .dashboard-kpi-controls{
    display:flex!important;
    justify-content:flex-start!important;
    margin:0 0 10px!important;
  }
  body.premium-ui.admin-page-body #toggle-dashboard-kpis{
    width:100%!important;
  }
  body.premium-ui.admin-page-body .admin-kpis{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
    margin-bottom:12px!important;
  }
  body.premium-ui.admin-page-body .admin-kpi{
    min-width:0!important;
    padding:12px!important;
    border-radius:5px!important;
  }

  /* Calendar: title first, month/view next, nav next. */
  body.premium-ui.admin-page-body .scheduler-card{
    padding:14px!important;
    overflow:hidden!important;
  }
  body.premium-ui.admin-page-body .scheduler-card .admin-toolbar{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:12px!important;
    align-items:start!important;
  }
  body.premium-ui.admin-page-body .scheduler-card .admin-toolbar > div:first-child{
    width:100%!important;
  }
  body.premium-ui.admin-page-body .scheduler-card h2{
    font-size:20px!important;
    margin-top:3px!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
    width:100%!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls .scheduler-period-label{
    order:1!important;
    width:100%!important;
    text-align:center!important;
    font-size:17px!important;
    line-height:1.2!important;
    padding:2px 0!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls > .admin-toolbar-group:last-child{
    order:2!important;
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:7px!important;
    width:100%!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls > .admin-toolbar-group:first-child{
    order:3!important;
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:7px!important;
    width:100%!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls .admin-pill{
    width:100%!important;
    min-width:0!important;
    padding:0 8px!important;
    font-size:11px!important;
  }
  body.premium-ui.admin-page-body .scheduler-legend{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px 10px!important;
    margin:12px 0 10px!important;
    font-size:9px!important;
  }
  body.premium-ui.admin-page-body .scheduler-board-wrap{
    width:100%!important;
    max-width:100%!important;
    overflow:visible!important;
  }
  body.premium-ui.admin-page-body .ios-calendar-mobile{
    width:100%!important;
    min-width:0!important;
  }
  body.premium-ui.admin-page-body .ios-calendar-grid{
    width:100%!important;
  }
  body.premium-ui.admin-page-body .ios-calendar-agenda-head{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
  body.premium-ui.admin-page-body .ios-calendar-add{
    width:100%!important;
  }
  body.premium-ui.admin-page-body .scheduler-quick-actions{
    margin-top:10px!important;
  }
  body.premium-ui.admin-page-body #scheduler-focus-records{
    width:100%!important;
  }

  /* Daily agenda: heading -> nav -> date -> agenda. */
  body.premium-ui.admin-page-body .daily-agenda-card,
  body.premium-ui.admin-page-body .records-card,
  body.premium-ui.admin-page-body #admin-pane-clients > .admin-card,
  body.premium-ui.admin-page-body .analytics-shell{
    padding:14px!important;
    border-radius:5px!important;
  }
  body.premium-ui.admin-page-body .daily-agenda-toolbar,
  body.premium-ui.admin-page-body .records-toolbar,
  body.premium-ui.admin-page-body #admin-pane-clients .admin-toolbar{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    align-items:start!important;
  }
  body.premium-ui.admin-page-body .daily-agenda-actions{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:7px!important;
    width:100%!important;
  }
  body.premium-ui.admin-page-body .daily-agenda-actions .admin-date-input{
    grid-column:1/-1!important;
    width:100%!important;
  }
  body.premium-ui.admin-page-body .daily-agenda-actions .admin-pill{
    width:100%!important;
    padding:0 6px!important;
    font-size:11px!important;
  }

  /* Records: search first; filters as one horizontal row, then cards. */
  body.premium-ui.admin-page-body .records-toolbar-actions{
    display:flex!important;
    flex-wrap:nowrap!important;
    gap:7px!important;
    width:100%!important;
    overflow-x:auto!important;
    padding:0 0 6px!important;
    scrollbar-width:none!important;
    -webkit-overflow-scrolling:touch!important;
  }
  body.premium-ui.admin-page-body .records-toolbar-actions::-webkit-scrollbar{display:none!important}
  body.premium-ui.admin-page-body .records-toolbar-actions .admin-search{
    flex:0 0 100%!important;
    order:-1!important;
  }
  body.premium-ui.admin-page-body .records-toolbar-actions .admin-pill{
    flex:0 0 auto!important;
    min-width:max-content!important;
    padding:0 13px!important;
  }
  body.premium-ui.admin-page-body .records-card .admin-table-wrap{
    width:100%!important;
    overflow:visible!important;
  }
  body.premium-ui.admin-page-body .records-card .admin-data-table{
    width:100%!important;
  }
  body.premium-ui.admin-page-body .records-card .admin-data-table tr.record-row{
    width:100%!important;
    margin-bottom:9px!important;
    padding:12px!important;
    border-radius:5px!important;
    background:#161616!important;
  }

  /* Clients: simple vertical info, actions below. */
  body.premium-ui.admin-page-body #admin-pane-clients .admin-toolbar-group{
    width:100%!important;
  }
  body.premium-ui.admin-page-body #client-search{
    width:100%!important;
  }
  body.premium-ui.admin-page-body .clients-list{
    margin-top:10px!important;
    gap:8px!important;
  }
  body.premium-ui.admin-page-body .client-card{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    padding:13px!important;
    border-radius:5px!important;
    background:#161616!important;
  }
  body.premium-ui.admin-page-body .client-card-main{
    min-height:0!important;
  }
  body.premium-ui.admin-page-body .client-card-actions{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:7px!important;
    width:100%!important;
  }
  body.premium-ui.admin-page-body .client-card-actions .mini-btn{
    width:100%!important;
    min-width:0!important;
    padding:0 8px!important;
  }

  /* Analytics: one clear column. */
  body.premium-ui.admin-page-body :is(.analytics-overview-grid,.analytics-grid,.analytics-grid-enhanced){
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:9px!important;
  }
  body.premium-ui.admin-page-body .analytics-card,
  body.premium-ui.admin-page-body .analytics-overview-card{
    width:100%!important;
    padding:13px!important;
    border-radius:5px!important;
  }
/* ---------- Tools pages mobile ---------- */
body.premium-ui.admin-page-body #admin-pane-tools,
body.premium-ui.admin-page-body #admin-tools-page-host {
    width:100%!important;
  }
body.premium-ui.admin-page-body .admin-tools-page-panel .tools-modal-section {
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:visible!important;
  }

body.premium-ui.admin-page-body .admin-tools-page-panel {
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
  }

  body.premium-ui.admin-page-body .admin-tools-page-panel .admin-tools-modal-head{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:center!important;
    gap:10px!important;
    margin:0 0 12px!important;
    padding:12px 0!important;
    border-bottom:1px solid rgba(255,255,255,.08)!important;
    background:transparent!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel .admin-tools-modal-head h3{
    font-size:24px!important;
    line-height:1.08!important;
    margin-top:3px!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel .admin-tools-modal-head [data-close-tools-modal]{
    width:auto!important;
    min-width:92px!important;
    padding:0 10px!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel > .field-help,
  body.premium-ui.admin-page-body .admin-tools-page-panel .tools-modal-section > .field-help{
    display:block!important;
    margin:0 0 10px!important;
    line-height:1.45!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel :is(.tools-modal-grid,.products-editor-grid){
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel :is(.tools-form-card,.tools-list-card){
    width:100%!important;
    min-width:0!important;
    padding:13px!important;
    border-radius:5px!important;
    background:#161616!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel .tools-form-card{
    order:1!important;
    position:static!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel .tools-list-card{
    order:2!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel .admin-form-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:0!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel .form-group{
    width:100%!important;
    margin-bottom:11px!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel :is(input,select,textarea){
    width:100%!important;
    min-height:44px!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel textarea{
    min-height:74px!important;
    resize:vertical!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel .drawer-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:7px!important;
    width:100%!important;
    margin-top:10px!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel .drawer-actions :is(button,.admin-link-btn,.btn-next,.btn-primary,.tool-launch-btn){
    width:100%!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel :is(.records-modal-list,.schedule-chip-list,#showroom-admin-list,#products-admin-list,#barbers-admin-list,#services-admin-list){
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:7px!important;
    width:100%!important;
    max-height:none!important;
    overflow:visible!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel :is(.records-modal-item,.schedule-chip-item,.product-admin-card,.showroom-admin-item){
    width:100%!important;
    min-width:0!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:9px!important;
    padding:11px!important;
    border-radius:5px!important;
    background:#141414!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel .records-modal-actions{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important;
    width:100%!important;
    min-width:0!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel .records-modal-actions :is(button,.mini-btn){
    width:100%!important;
    min-width:0!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel .schedule-chip-item > .mini-btn{
    width:100%!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel :is(.showroom-admin-item,.product-admin-card) img{
    width:54px!important;
    height:62px!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel #tools-pane-barbers > .tools-list-card.full{
    order:0!important;
    margin:0 0 10px!important;
  }
/* Sidebar mobile: menu in a predictable top-to-bottom order. */

  body.premium-ui.admin-page-body .premium-sidebar-head{
    flex:0 0 auto!important;
  }
  body.premium-ui.admin-page-body .premium-sidebar-group{
    padding:0!important;
    margin:0!important;
  }
  body.premium-ui.admin-page-body #admin-sidebar :is(.admin-header-tab,.tool-launch-btn){
    min-height:43px!important;
    padding:10px 2px!important;
    font-size:13px!important;
  }
  body.premium-ui.admin-page-body .premium-sidebar-account{
    margin-top:auto!important;
    padding-top:12px!important;
  }
  body.premium-ui.admin-page-body #admin-sidebar .admin-topbar-start{
    gap:7px!important;
  }

  /* Admin drawers/modals that remain: full usable mobile sheets. */
  body.premium-ui.admin-page-body :is(#booking-drawer,.admin-modal-shell,#slot-quick-panel.active,#admin-day-modal){
    padding:0!important;
    align-items:stretch!important;
    justify-content:stretch!important;
  }
body.premium-ui.admin-page-body :is(#booking-drawer .admin-drawer-panel,.admin-modal-shell .admin-tools-modal-panel,#slot-quick-panel .slot-quick-dialog,#admin-day-modal .admin-day-sheet) {
    border-radius:0!important;
  }

}

/* Short landscape phones: keep everything usable without giant headers. */
@media (orientation:landscape) and (max-height:560px) and (max-width:1000px){
  body.premium-ui:not(.admin-page-body) #hero.hero-luxury{
    min-height:100dvh!important;
    padding-top:66px!important;
    padding-bottom:18px!important;
  }
  body.premium-ui:not(.admin-page-body) .hero-actions-lux{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    max-width:520px!important;
    margin-inline:auto!important;
  }


  body.premium-ui.admin-page-body .premium-page-heading{
    margin-bottom:10px!important;
  }
  body.premium-ui.admin-page-body .premium-page-heading h1{
    font-size:28px!important;
  }
  body.premium-ui.admin-page-body .admin-kpis{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel .admin-tools-modal-head{
    padding:8px 0!important;
    margin-bottom:8px!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel .admin-tools-modal-head h3{
    font-size:21px!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel .tools-modal-grid,
  body.premium-ui.admin-page-body .admin-tools-page-panel .products-editor-grid{
    grid-template-columns:minmax(260px,.9fr) minmax(0,1.1fr)!important;
    gap:9px!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel :is(.tools-form-card,.tools-list-card){
    padding:10px!important;
  }
}
/* === v132: admin mobile + iPad cleanup / flat sidebar / safe scrolling === */
/* Base admin safety: never allow sideways drift; let pages scroll naturally. */
body.premium-ui.admin-page-body,
body.premium-ui.admin-page-body .admin-main-grid,
body.premium-ui.admin-page-body .admin-card {
  min-width:0!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
body.premium-ui.admin-page-body .admin-page-shell,
body.premium-ui.admin-page-body .admin-wrap,
body.premium-ui.admin-page-body .admin-content-area,
body.premium-ui.admin-page-body .admin-view-pane,
body.premium-ui.admin-page-body .admin-tools-page-panel {
  box-sizing:border-box!important;
}

@media (max-width:1180px){
html,
body.premium-ui.admin-page-body {
    width:100%!important;
    max-width:100%!important;
    overflow-x:hidden!important;
    overscroll-behavior-x:none!important;
  }
body.premium-ui.admin-page-body .admin-page-shell {
    width:100%!important;
    overscroll-behavior-x:none!important;
  }

  body.premium-ui.admin-page-body *{
    min-width:0;
  }
}

/* The header itself should stay clean; page scroll belongs to the page, not the topbar. */
body.premium-ui.admin-page-body .admin-topbar-page{
  max-height:none!important;
  overflow:visible!important;
}

/* Daily agenda / quick lists: keep content inside the card and allow proper scrolling. */
body.premium-ui.admin-page-body .daily-agenda-card{
  overflow:hidden!important;
}
body.premium-ui.admin-page-body .daily-agenda-card .day-agenda{
  display:grid!important;
  gap:10px!important;
  min-width:0!important;
}
body.premium-ui.admin-page-body .daily-agenda-card .agenda-item{
  display:grid!important;
  gap:12px!important;
  overflow:hidden!important;
}
body.premium-ui.admin-page-body .daily-agenda-card .agenda-top{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:10px!important;
  align-items:flex-start!important;
}
body.premium-ui.admin-page-body .daily-agenda-card .agenda-title,
body.premium-ui.admin-page-body .daily-agenda-card .agenda-meta{
  word-break:break-word!important;
  overflow-wrap:anywhere!important;
}
body.premium-ui.admin-page-body .daily-agenda-card .mini-actions{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  align-items:center!important;
}
body.premium-ui.admin-page-body .daily-agenda-card .mini-actions .mini-btn{
  min-width:0!important;
}

/* Flat, clean mobile/tablet sidebar items: text-first, no nested rounded blocks. */
body.premium-ui.admin-page-body #admin-sidebar :is(.admin-header-nav,.admin-tools-grid){
  gap:2px!important;
}
body.premium-ui.admin-page-body #admin-sidebar :is(.admin-header-tab,.tool-launch-btn){
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  min-height:40px!important;
  padding:10px 6px 10px 12px!important;
  color:#d0d0d0!important;
  font-size:13px!important;
  line-height:1.3!important;
}
body.premium-ui.admin-page-body #admin-sidebar :is(.admin-header-tab,.tool-launch-btn):hover{
  background:transparent!important;
  color:#ffffff!important;
  border-color:transparent!important;
}
body.premium-ui.admin-page-body #admin-sidebar .admin-header-tab.active{
  background:transparent!important;
  color:#ffffff!important;
  border-left:2px solid #ffffff!important;
  padding-left:10px!important;
}
body.premium-ui.admin-page-body #admin-sidebar .premium-menu-label{
  margin:0 0 8px!important;
}
body.premium-ui.admin-page-body #admin-sidebar .admin-topbar-start .admin-link-btn{
  align-items:center!important;
  justify-content:center!important;
  line-height:1.2!important;
}
body.premium-ui.admin-page-body #admin-sidebar .admin-link-btn-back{
  padding-top:12px!important;
  padding-bottom:12px!important;
}
body.premium-ui.admin-page-body #admin-sidebar #admin-logout-top{
  background:#8f2323!important;
  border-color:#b33b3b!important;
  color:#ffffff!important;
}

/* Tool pages: page scroll instead of awkward inner clipping on touch devices. */
@media (max-width:1180px){
body.premium-ui.admin-page-body .admin-card,
body.premium-ui.admin-page-body .tools-form-card,
body.premium-ui.admin-page-body .tools-list-card,
body.premium-ui.admin-page-body .admin-table-wrap {
    overflow:visible!important;
  }

  body.premium-ui.admin-page-body :is(
    #recurring-break-list,#blackout-day-list,#products-admin-list,#showroom-admin-list,
    #services-admin-list,#barbers-admin-list,#records-modal-list,.clients-list,.notifications-list
  ){
    max-height:none!important;
    overflow:visible!important;
    padding-right:0!important;
  }
}

/* Tablet/mobile topbar alignment: menu left, logo centered, notifications right. */
@media (max-width:1024px){
  body.premium-ui.admin-page-body .admin-topbar-page{
    padding:10px 12px!important;
  }
  body.premium-ui.admin-page-body .admin-topbar-inner.admin-topbar-layout{
    display:grid!important;
    grid-template-columns:44px minmax(0,1fr) auto!important;
    align-items:center!important;
    gap:8px!important;
    width:100%!important;
  }
  body.premium-ui.admin-page-body .admin-menu-toggle{
    grid-column:1!important;
    order:0!important;
    justify-self:start!important;
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    border-radius:4px!important;
    background:transparent!important;
    border:1px solid rgba(255,255,255,.12)!important;
  }
  body.premium-ui.admin-page-body .admin-brand{
    grid-column:2!important;
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    justify-self:center!important;
    width:100%!important;
    min-width:0!important;
    margin:0!important;
  }
  body.premium-ui.admin-page-body .admin-brand img{
    max-width:132px!important;
    height:30px!important;
    margin:0 auto!important;
  }
  body.premium-ui.admin-page-body .admin-top-actions{
    grid-column:3!important;
    order:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    justify-self:end!important;
    margin:0!important;
    padding:0!important;
  }
  body.premium-ui.admin-page-body #notifications-toggle{
    position:relative!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-width:44px!important;
    width:44px!important;
    height:44px!important;
    padding:0!important;
    border-radius:4px!important;
    overflow:visible!important;
    color:transparent!important;
  }
  body.premium-ui.admin-page-body #notifications-toggle::before{
    content:"🔔"!important;
    color:#ffffff!important;
    font-size:16px!important;
    line-height:1!important;
    position:absolute!important;
    inset:0!important;
    display:grid!important;
    place-items:center!important;
  }
  body.premium-ui.admin-page-body #notifications-toggle .notifications-badge{
    position:absolute!important;
    top:-4px!important;
    right:-4px!important;
    min-width:18px!important;
    height:18px!important;
    padding:0 5px!important;
    display:grid!important;
    place-items:center!important;
    font-size:10px!important;
    line-height:1!important;
    border-radius:999px!important;
    background:#efefef!important;
    color:#111!important;
    border:1px solid #111!important;
    z-index:2!important;
    transform:none!important;
  }
}

/* Phone-specific stacking and scroll comfort. */
@media (max-width:699px){


  body.premium-ui.admin-page-body .admin-brand img{
    max-width:120px!important;
    height:28px!important;
  }
  body.premium-ui.admin-page-body .daily-agenda-card .day-agenda{
    max-height:calc(var(--visible-height,100dvh) - 300px)!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    padding-right:3px!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
  }
  body.premium-ui.admin-page-body .daily-agenda-card .agenda-top{
    grid-template-columns:minmax(0,1fr)!important;
  }
  body.premium-ui.admin-page-body .daily-agenda-card .mini-actions{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  body.premium-ui.admin-page-body .daily-agenda-card .mini-actions .mini-btn:last-child:nth-child(odd){
    grid-column:1/-1!important;
  }


}

/* iPad / tablet, including landscape: dense but clean layouts with working scroll. */
@media (min-width:700px) and (max-width:1180px){


  body.premium-ui.admin-page-body .daily-agenda-card .day-agenda{
    max-height:calc(var(--visible-height,100dvh) - 345px)!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    padding-right:4px!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
  }
  body.premium-ui.admin-page-body .daily-agenda-card .mini-actions{
    justify-content:flex-start!important;
  }
  body.premium-ui.admin-page-body .client-card{
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:center!important;
  }
  body.premium-ui.admin-page-body .client-card-actions{
    justify-content:flex-end!important;
    align-self:center!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel .form-row,
  body.premium-ui.admin-page-body .admin-tools-page-panel .admin-form-grid,
  body.premium-ui.admin-page-body .admin-tools-page-panel .tools-modal-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

/* Short landscape devices: reduce height pressure and keep lists usable. */
@media (max-width:1024px) and (orientation:landscape){
  body.premium-ui.admin-page-body .admin-topbar-page{
    padding:8px 12px!important;
  }


  body.premium-ui.admin-page-body .daily-agenda-card .day-agenda{
    max-height:calc(var(--visible-height,100dvh) - 255px)!important;
  }
}

/* Generic scrollbars for touch-scrolling lists created above. */
body.premium-ui.admin-page-body .daily-agenda-card .day-agenda::-webkit-scrollbar{width:8px}
body.premium-ui.admin-page-body .daily-agenda-card .day-agenda::-webkit-scrollbar-track{background:transparent}
body.premium-ui.admin-page-body .daily-agenda-card .day-agenda::-webkit-scrollbar-thumb{background:#3a3a3a;border-radius:999px}

/* === v133: showroom seeded with real photos + public/admin visual polish === */

/* Public sections: a bit cleaner, more premium, more minimal. */
body.premium-ui:not(.admin-page-body) .product-showcase,
body.premium-ui:not(.admin-page-body) .showroom-section{
  padding-top:68px!important;
  padding-bottom:68px!important;
}
body.premium-ui:not(.admin-page-body) .showcase-intro.showcase-intro-minimal{
  max-width:980px!important;
  margin:0 auto 24px!important;
}
body.premium-ui:not(.admin-page-body) .showcase-intro.showcase-intro-minimal .showcase-eyebrow{
  font-size:11px!important;
  letter-spacing:.18em!important;
  opacity:.92!important;
}
body.premium-ui:not(.admin-page-body) .showcase-footnote{
  max-width:1040px!important;
  margin:24px auto 0!important;
  padding-top:12px!important;
  border-top:1px solid rgba(255,255,255,.07)!important;
}

/* Products: cleaner carousel/cards, still works when admin uploads only image + name. */
body.premium-ui:not(.admin-page-body) .product-category{
  max-width:1120px!important;
  margin:0 auto 30px!important;
}
body.premium-ui:not(.admin-page-body) .product-category-heading{
  display:flex!important;
  align-items:flex-end!important;
  justify-content:space-between!important;
  gap:14px!important;
  margin:0 0 12px!important;
}
body.premium-ui:not(.admin-page-body) .product-category-heading h3{
  margin:0!important;
  font-size:20px!important;
  color:#f6f6f6!important;
}
body.premium-ui:not(.admin-page-body) .product-category-heading span{
  color:#a8adb6!important;
  font-size:12px!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
body.premium-ui:not(.admin-page-body) .product-grid{
  align-items:stretch!important;
}
body.premium-ui:not(.admin-page-body) .product-grid .product-card{
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
}
body.premium-ui:not(.admin-page-body) .product-copy{
  min-height:62px!important;
}
body.premium-ui:not(.admin-page-body) .product-copy p{
  display:none!important;
}
body.premium-ui:not(.admin-page-body) .product-brand:empty,
body.premium-ui:not(.admin-page-body) .product-copy p:empty{
  display:none!important;
}
body.premium-ui:not(.admin-page-body) .showcase-empty.showcase-empty-minimal{
  max-width:1120px!important;
  margin:0 auto 8px!important;
  min-height:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
}

/* Showroom: real-photo gallery, image first, small clean captions. */
body.premium-ui:not(.admin-page-body) .showroom-grid{
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr))!important;
  gap:16px!important;
  max-width:1120px!important;
}
body.premium-ui:not(.admin-page-body) .showroom-card{
  overflow:hidden!important;
  background:#161616!important;
  border:1px solid rgba(255,255,255,.07)!important;
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease!important;
}
body.premium-ui:not(.admin-page-body) .showroom-card:hover{
  transform:translateY(-2px)!important;
  border-color:rgba(255,255,255,.14)!important;
  box-shadow:0 18px 40px rgba(0,0,0,.18)!important;
}
body.premium-ui:not(.admin-page-body) .showroom-photo{
  aspect-ratio:4 / 5!important;
  background:#101010!important;
}
body.premium-ui:not(.admin-page-body) .showroom-copy{
  padding:12px 12px 14px!important;
  display:flex!important;
  flex-direction:column!important;
  gap:4px!important;
}
body.premium-ui:not(.admin-page-body) .showroom-copy h3{
  margin:0!important;
  font-size:15px!important;
  line-height:1.25!important;
  color:#f5f5f5!important;
  letter-spacing:-.015em!important;
}
body.premium-ui:not(.admin-page-body) .showroom-copy p{
  margin:0!important;
  color:#969ba3!important;
  font-size:12px!important;
  line-height:1.55!important;
}
body.premium-ui:not(.admin-page-body) .showroom-copy p:empty{
  display:none!important;
}

/* Admin visual polish pass: cleaner lists/cards for products and showroom. */
body.premium-ui.admin-page-body .tools-form-card,
body.premium-ui.admin-page-body .tools-list-card,
body.premium-ui.admin-page-body .admin-card,
body.premium-ui.admin-page-body .records-card,
body.premium-ui.admin-page-body .client-card{
  background:#161616!important;
  border-color:rgba(255,255,255,.08)!important;
  box-shadow:none!important;
}
body.premium-ui.admin-page-body .tools-form-card,
body.premium-ui.admin-page-body .tools-list-card{
  padding:18px!important;
}
body.premium-ui.admin-page-body .product-admin-card,
body.premium-ui.admin-page-body .showroom-admin-item{
  border:1px solid rgba(255,255,255,.07)!important;
  background:#111214!important;
  border-radius:4px!important;
  padding:12px!important;
  margin-bottom:10px!important;
}
body.premium-ui.admin-page-body .product-admin-card img,
body.premium-ui.admin-page-body .showroom-admin-item img{
  width:60px!important;
  height:74px!important;
  object-fit:cover!important;
  border-radius:4px!important;
}
body.premium-ui.admin-page-body .product-admin-card strong,
body.premium-ui.admin-page-body .showroom-admin-item strong{
  display:block!important;
  color:#fff!important;
  margin-bottom:3px!important;
  line-height:1.25!important;
}
body.premium-ui.admin-page-body .product-admin-card small,
body.premium-ui.admin-page-body .showroom-admin-item small,
body.premium-ui.admin-page-body .showroom-admin-item span{
  display:block!important;
  color:#a7adb7!important;
  line-height:1.5!important;
}
body.premium-ui.admin-page-body .product-admin-actions,
body.premium-ui.admin-page-body .records-modal-actions{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  align-items:center!important;
}
body.premium-ui.admin-page-body .product-admin-actions .mini-btn,
body.premium-ui.admin-page-body .records-modal-actions .mini-btn{
  min-width:0!important;
}

/* Showroom & barber list rows: flatten any leftover rounded nested backgrounds. */
body.premium-ui.admin-page-body :is(#showroom-admin-list,#barbers-admin-list) .records-modal-item,
body.premium-ui.admin-page-body :is(#showroom-admin-list,#barbers-admin-list) .product-admin-card{
  border-radius:4px!important;
  background:#111214!important;
}

@media (max-width:900px){
  body.premium-ui:not(.admin-page-body) .product-showcase,
  body.premium-ui:not(.admin-page-body) .showroom-section{
    padding-top:54px!important;
    padding-bottom:54px!important;
  }
  body.premium-ui:not(.admin-page-body) .showroom-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:12px!important;
  }
  body.premium-ui:not(.admin-page-body) .showroom-copy{
    padding:10px 10px 12px!important;
  }
}
@media (max-width:560px){
  body.premium-ui:not(.admin-page-body) .showroom-grid{
    grid-template-columns:1fr 1fr!important;
  }
  body.premium-ui:not(.admin-page-body) .showroom-copy h3{
    font-size:14px!important;
  }
  body.premium-ui:not(.admin-page-body) .product-category-heading{
    flex-direction:column!important;
    align-items:flex-start!important;
  }
}


/* === v134 public final pass: barber step, calendar availability, mobile burger === */
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options.options-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .barber-choice-card{
  display:grid!important;
  grid-template-columns:48px 1fr 18px!important;
  align-items:center!important;
  gap:12px!important;
  min-height:84px!important;
  padding:16px!important;
  border-radius:10px!important;
  background:#161616!important;
  border:1px solid rgba(255,255,255,.08)!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .barber-choice-card:hover{
  border-color:rgba(255,255,255,.16)!important;
  background:#1a1a1a!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .barber-choice-card.selected{
  background:#1d1e22!important;
  border-color:#ffffff!important;
  box-shadow:none!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .barber-choice-card::after{display:none!important}
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .barber-choice-avatar{
  width:48px!important;height:48px!important;border-radius:50%!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  background:#0f0f10!important;border:1px solid rgba(255,255,255,.08)!important;
  color:#fff!important;font-size:18px!important;font-weight:700!important;letter-spacing:-.02em!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .barber-choice-name{
  color:#f4f4f4!important;font-size:16px!important;font-weight:650!important;letter-spacing:-.02em!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .barber-choice-info::after{
  content:'Επίλεξε barber';display:block;margin-top:4px;color:#9a9da5!important;font-size:11px!important;letter-spacing:.08em!important;text-transform:uppercase!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .barber-choice-card.selected .barber-choice-info::after{
  content:'Επιλεγμένος barber';color:#d8dbe3!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .barber-choice-check{
  width:16px!important;height:16px!important;border-radius:50%!important;border:1px solid rgba(255,255,255,.25)!important;justify-self:end!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .barber-choice-card.selected .barber-choice-check{
  background:#fff!important;border-color:#fff!important;box-shadow:inset 0 0 0 4px #1d1e22!important;
}


@media (max-width:900px){
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury{
    position:absolute!important;
    top:0!important;
    left:0!important;
    right:0!important;
    z-index:1200!important;
    padding:14px 16px 10px!important;
    margin:0!important;
    background:transparent!important;
    border:none!important;
    border-radius:0!important;
    box-shadow:none!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury::after{
    content:'';position:absolute;left:16px;right:16px;bottom:0;height:1px;background:rgba(255,255,255,.08)!important;pointer-events:none;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-logo{display:flex!important;justify-content:center!important;align-items:center!important}
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-logo img{height:30px!important;width:auto!important}
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-menu-toggle{
    display:flex!important;align-items:center!important;justify-content:center!important;
    width:34px!important;height:34px!important;min-width:34px!important;padding:0!important;margin:0!important;
    border:none!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;
    position:relative!important;z-index:2!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-menu-toggle span{
    width:18px!important;height:1.5px!important;margin:2.5px 0!important;background:#fff!important;border-radius:99px!important;transition:transform .22s ease,opacity .18s ease!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury.menu-open .nav-menu-toggle span:nth-child(1){transform:translateY(4px) rotate(45deg)!important}
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury.menu-open .nav-menu-toggle span:nth-child(2){opacity:0!important}
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury.menu-open .nav-menu-toggle span:nth-child(3){transform:translateY(-4px) rotate(-45deg)!important}
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links{
    position:absolute!important;top:100%!important;left:0!important;right:0!important;z-index:1!important;
    display:grid!important;grid-template-columns:1fr!important;gap:0!important;
    margin:0!important;padding:0 16px!important;
    opacity:0!important;visibility:hidden!important;pointer-events:none!important;
    transform:translateY(-8px)!important;
    background:rgba(10,10,10,.98)!important;border:none!important;border-radius:0!important;box-shadow:none!important;max-height:none!important;overflow:hidden!important;
    transition:opacity .18s ease, transform .22s ease, visibility .18s ease, padding .18s ease!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury.menu-open .nav-links{
    opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:translateY(0)!important;padding:8px 16px 12px!important;border-bottom:1px solid rgba(255,255,255,.08)!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links > a,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button--soft{
    width:100%!important;display:block!important;padding:12px 0!important;margin:0!important;
    border:none!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;
    color:#fff!important;font-size:12px!important;font-weight:600!important;letter-spacing:.14em!important;text-transform:uppercase!important;text-align:left!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links > * + *{border-top:1px solid rgba(255,255,255,.06)!important}
  body.premium-ui:not(.admin-page-body) #hero.hero-luxury{padding-top:98px!important}
  body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options.options-grid{grid-template-columns:1fr!important}
}

/* === v135: public products/showroom/footer refinement === */
body.premium-ui:not(.admin-page-body) .product-showcase,
body.premium-ui:not(.admin-page-body) .showroom-section{
  padding-top:82px!important;
  padding-bottom:66px!important;
}
body.premium-ui:not(.admin-page-body) .product-showcase .showcase-intro.showcase-intro-minimal,
body.premium-ui:not(.admin-page-body) .showroom-section .showcase-intro.showcase-intro-minimal{
  max-width:1280px!important;
  margin:16px auto 28px!important;
  padding-left:10px!important;
}
body.premium-ui:not(.admin-page-body) .product-showcase .showcase-intro.showcase-intro-minimal .showcase-eyebrow,
body.premium-ui:not(.admin-page-body) .showroom-section .showcase-intro.showcase-intro-minimal .showcase-eyebrow{
  display:block!important;
  transform:translateY(6px)!important;
}
body.premium-ui:not(.admin-page-body) .product-category-heading{
  display:none!important;
}
body.premium-ui:not(.admin-page-body) .product-category{
  max-width:1280px!important;
  margin:0 auto 24px!important;
}
body.premium-ui:not(.admin-page-body) .product-carousel-shell{
  max-width:1280px!important;
  margin-inline:auto!important;
  gap:14px!important;
  align-items:center!important;
}
body.premium-ui:not(.admin-page-body) .product-grid{
  gap:16px!important;
  padding:6px 2px 12px!important;
  scroll-padding-inline:calc(50% - 115px)!important;
}
body.premium-ui:not(.admin-page-body) .product-grid .product-card{
  flex:0 0 clamp(190px,18vw,228px)!important;
  min-width:190px!important;
}
body.premium-ui:not(.admin-page-body) .product-photo{
  padding:14px!important;
}
body.premium-ui:not(.admin-page-body) .product-brand,
body.premium-ui:not(.admin-page-body) .product-copy p{
  display:none!important;
}
body.premium-ui:not(.admin-page-body) .product-copy{
  min-height:auto!important;
  padding:10px 2px 0!important;
}
body.premium-ui:not(.admin-page-body) .product-copy h4{
  font-size:15px!important;
}
body.premium-ui:not(.admin-page-body) .showcase-footnote{
  max-width:1280px!important;
  margin:20px auto 0!important;
  padding-left:10px!important;
}

body.premium-ui:not(.admin-page-body) .showroom-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  max-width:1280px!important;
  gap:16px!important;
  align-items:start!important;
}
body.premium-ui:not(.admin-page-body) .showroom-card{
  min-width:0!important;
}
body.premium-ui:not(.admin-page-body) .showroom-photo{
  aspect-ratio:4 / 4.9!important;
}
body.premium-ui:not(.admin-page-body) .showroom-copy{
  padding:10px 10px 12px!important;
}
body.premium-ui:not(.admin-page-body) .showroom-copy h3{
  font-size:14px!important;
}
body.premium-ui:not(.admin-page-body) .showroom-copy p{
  display:none!important;
}

body.premium-ui:not(.admin-page-body) footer{
  padding-bottom:22px!important;
}
body.premium-ui:not(.admin-page-body) .footer-bottom{
  margin-top:10px!important;
  padding-top:14px!important;
  border-top:1px solid rgba(255,255,255,.08)!important;
}
body.premium-ui:not(.admin-page-body) .footer-bottom-credit{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  color:#d0d0d0!important;
}
body.premium-ui:not(.admin-page-body) .footer-nexa-link{
  color:#cf3f3f!important;
  font-weight:700!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  text-decoration:none!important;
}
body.premium-ui:not(.admin-page-body) .footer-nexa-link:hover{
  color:#e25757!important;
}

@media (max-width:1180px){
  body.premium-ui:not(.admin-page-body) .showroom-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}
@media (max-width:900px){
  body.premium-ui:not(.admin-page-body) .product-showcase,
  body.premium-ui:not(.admin-page-body) .showroom-section{
    padding-top:58px!important;
    padding-bottom:54px!important;
  }
  body.premium-ui:not(.admin-page-body) .product-showcase .showcase-intro.showcase-intro-minimal,
  body.premium-ui:not(.admin-page-body) .showroom-section .showcase-intro.showcase-intro-minimal{
    margin:8px auto 22px!important;
    padding-left:4px!important;
  }
  body.premium-ui:not(.admin-page-body) .showroom-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
  }
}
@media (max-width:560px){
  body.premium-ui:not(.admin-page-body) .showroom-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}


/* === v136: restore booking calendar visuals + reliable mobile text-only burger === */
@media (max-width:900px){
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury{
    position:absolute!important;
    top:0!important;left:0!important;right:0!important;
    z-index:2200!important;
    overflow:visible!important;
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-menu-toggle{
    display:flex!important;
    position:relative!important;
    z-index:2202!important;
    cursor:pointer!important;
    pointer-events:auto!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links{
    position:absolute!important;
    top:100%!important;
    left:0!important;right:0!important;
    z-index:2201!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:0!important;
    width:100%!important;
    max-height:none!important;
    margin:0!important;
    padding:6px 16px 10px!important;
    overflow:visible!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translateY(-10px)!important;
    background:transparent!important;
    background-image:none!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
    transition:opacity .16s ease,transform .2s cubic-bezier(.2,.8,.2,1),visibility 0s linear .2s!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury.menu-open .nav-links{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translateY(0)!important;
    transition:opacity .16s ease,transform .2s cubic-bezier(.2,.8,.2,1),visibility 0s!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links > a,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button--soft{
    display:block!important;
    width:100%!important;
    padding:11px 0!important;
    margin:0!important;
    background:transparent!important;
    background-image:none!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    color:#fff!important;
    text-align:left!important;
    opacity:0!important;
    transform:translateY(-6px)!important;
    transition:opacity .16s ease,transform .2s ease,color .12s ease!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury.menu-open .nav-links > *{
    opacity:1!important;
    transform:translateY(0)!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury.menu-open .nav-links > *:nth-child(1){transition-delay:.02s!important}
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury.menu-open .nav-links > *:nth-child(2){transition-delay:.05s!important}
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury.menu-open .nav-links > *:nth-child(3){transition-delay:.08s!important}
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links > * + *{border-top:0!important}
}


/* === v137: public mobile header + my bookings modal polish === */
body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury{
  position:absolute!important;
}
@media (max-width:900px){
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury{
    top:0!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    margin:0!important;
    border-radius:0!important;
    grid-template-columns:minmax(0,1fr) 44px!important;
    align-items:center!important;
    padding:calc(12px + env(safe-area-inset-top)) 16px 12px 16px!important;
    background:#111!important;
    border:0!important;
    border-bottom:1px solid rgba(255,255,255,.08)!important;
    box-shadow:none!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury::after{display:none!important}
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-logo{
    justify-content:flex-start!important;
    align-items:center!important;
    width:100%!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-logo img{
    height:32px!important;
    max-width:156px!important;
    margin:0!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-menu-toggle{
    justify-self:end!important;
    align-self:center!important;
    margin:0!important;
    border-radius:10px!important;
    background:transparent!important;
    border:1px solid rgba(255,255,255,.14)!important;
    box-shadow:none!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links{
    grid-column:1 / -1!important;
    margin:0!important;
    padding-top:0!important;
    background:transparent!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury.menu-open .nav-links{
    padding:10px 0 4px!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links > a,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button--soft{
    min-height:42px!important;
    padding:10px 0!important;
    justify-content:flex-start!important;
    text-align:left!important;
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    color:#f5f5f5!important;
    font-size:14px!important;
    font-weight:560!important;
    letter-spacing:.01em!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links > * + *{
    border-top:1px solid rgba(255,255,255,.08)!important;
  }
  body.premium-ui:not(.admin-page-body) .hero-luxury{
    padding-top:88px!important;
  }
}

body.premium-ui.page-scroll-locked,
html.page-scroll-locked{
  overscroll-behavior:none!important;
}
body.premium-ui.page-scroll-locked .site-nav.site-nav-luxury{
  pointer-events:none!important;
}
body.premium-ui.page-scroll-locked .overlay.active .booking-modal,
body.premium-ui.page-scroll-locked .overlay.active .my-bookings-modal{
  pointer-events:auto!important;
}

body.premium-ui:not(.admin-page-body) #mybookings-overlay{
  align-items:center!important;
  justify-content:center!important;
  padding:20px!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .my-bookings-modal {
  border-radius:24px!important;
}

body.premium-ui:not(.admin-page-body) #mybookings-overlay .modal-header{
  position:sticky!important;
  top:0!important;
  z-index:3!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  margin:0 0 16px!important;
  padding:0 0 14px!important;
  background:linear-gradient(180deg,rgba(239,238,232,.98) 82%,rgba(239,238,232,.88))!important;
  backdrop-filter:blur(10px)!important;
  -webkit-backdrop-filter:blur(10px)!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .modal-logo{
  color:#2a2c2f!important;
  font-size:11px!important;
  font-weight:800!important;
  letter-spacing:.14em!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .close-btn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:40px!important;
  height:40px!important;
  min-width:40px!important;
  padding:0!important;
  background:#e4e1d8!important;
  color:#1b1c1e!important;
  border:1px solid rgba(23,24,26,.10)!important;
  border-radius:12px!important;
  font-size:24px!important;
  line-height:1!important;
  font-weight:400!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .close-btn:hover,
body.premium-ui:not(.admin-page-body) #mybookings-overlay .close-btn:focus-visible{
  background:#ddd9cf!important;
  color:#111!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .my-bookings-lookup-grid{
  padding:14px!important;
  gap:14px!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .lookup-security-note{
  font-size:12px!important;
  line-height:1.6!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay #lookup-btn{
  min-width:170px!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .no-bookings--lookup{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  text-align:left!important;
  gap:6px!important;
  padding:18px!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .no-bookings--lookup p{
  margin:0!important;
  font-size:20px!important;
  font-weight:750!important;
  line-height:1.18!important;
  color:#17181a!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .no-bookings--lookup span{
  display:block!important;
  font-size:12px!important;
  line-height:1.6!important;
  color:#656862!important;
}
@media (max-width:900px){
  body.premium-ui:not(.admin-page-body) #mybookings-overlay{
    padding:0!important;
  }
body.premium-ui:not(.admin-page-body) #mybookings-overlay .my-bookings-modal {
    border-radius:0!important;
  }

  body.premium-ui:not(.admin-page-body) #mybookings-overlay .modal-header{
    padding-top:calc(2px + env(safe-area-inset-top))!important;
  }
  body.premium-ui:not(.admin-page-body) #mybookings-overlay .my-bookings-lookup-grid{
    grid-template-columns:1fr!important;
  }
}


/* === v138: guaranteed public burger + flat admin menu + records moved to menu + my bookings cleanup === */

/* The dashboard no longer shows the full records list; it remains mounted only for legacy JS rendering. */
body.premium-ui.admin-page-body .dashboard-records-legacy{
  display:none!important;
}

/* Admin sidebar: text-only navigation. No cards, no pills, no active rounded backgrounds. */
body.premium-ui.admin-page-body #admin-sidebar .premium-sidebar-group,
body.premium-ui.admin-page-body #admin-sidebar .admin-header-nav,
body.premium-ui.admin-page-body #admin-sidebar .admin-tools-grid,
body.premium-ui.admin-page-body #admin-sidebar .admin-tools-grid.compact{
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
body.premium-ui.admin-page-body #admin-sidebar .admin-header-nav,
body.premium-ui.admin-page-body #admin-sidebar .admin-tools-grid.compact{
  display:flex!important;
  flex-direction:column!important;
  gap:0!important;
  padding:0!important;
}
body.premium-ui.admin-page-body #admin-sidebar :is(.admin-header-tab,.tool-launch-btn){
  display:block!important;
  width:100%!important;
  min-height:0!important;
  padding:10px 0!important;
  margin:0!important;
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  outline:0!important;
  color:#bfc1c5!important;
  text-align:left!important;
  font-size:13px!important;
  font-weight:560!important;
  line-height:1.35!important;
  letter-spacing:0!important;
  transform:none!important;
}
body.premium-ui.admin-page-body #admin-sidebar :is(.admin-header-tab,.tool-launch-btn)::before,
body.premium-ui.admin-page-body #admin-sidebar :is(.admin-header-tab,.tool-launch-btn)::after{
  content:none!important;
  display:none!important;
}
body.premium-ui.admin-page-body #admin-sidebar :is(.admin-header-tab,.tool-launch-btn):is(:hover,:focus-visible,:active),
body.premium-ui.admin-page-body #admin-sidebar :is(.admin-header-tab,.tool-launch-btn).active{
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  color:#ffffff!important;
  transform:none!important;
}
body.premium-ui.admin-page-body #admin-sidebar .admin-header-tab.active{
  padding-left:0!important;
  font-weight:720!important;
}
body.premium-ui.admin-page-body #admin-sidebar .premium-menu-label{
  margin:0 0 7px!important;
  color:#777b82!important;
}
body.premium-ui.admin-page-body #admin-sidebar .premium-sidebar-group + .premium-sidebar-group{
  margin-top:18px!important;
  padding-top:18px!important;
  border-top:1px solid rgba(255,255,255,.07)!important;
}

/* Notifications: remove the emoji completely. Keep text + numeric badge only. */
@media (max-width:1024px){
  body.premium-ui.admin-page-body .admin-topbar-inner.admin-topbar-layout{
    grid-template-columns:1fr auto 1fr!important;
  }
  body.premium-ui.admin-page-body .admin-menu-toggle{
    grid-column:1!important;
    justify-self:start!important;
  }
  body.premium-ui.admin-page-body .admin-brand{
    grid-column:2!important;
    justify-self:center!important;
  }
  body.premium-ui.admin-page-body .admin-top-actions{
    grid-column:3!important;
    justify-self:end!important;
  }
  body.premium-ui.admin-page-body #notifications-toggle{
    width:auto!important;
    min-width:0!important;
    height:40px!important;
    min-height:40px!important;
    padding:0 7px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    color:#f2f2f2!important;
    font-size:11px!important;
    font-weight:650!important;
    line-height:1!important;
    overflow:visible!important;
  }
  body.premium-ui.admin-page-body #notifications-toggle::before{
    content:none!important;
    display:none!important;
  }
  body.premium-ui.admin-page-body #notifications-toggle .notifications-badge{
    top:-2px!important;
    right:-8px!important;
  }
}

/* Public mobile burger: no JS dependency for opening, and final CSS wins over all older rules. */
@media (max-width:900px){
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury{
    overflow:visible!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-menu-toggle{
    pointer-events:auto!important;
    cursor:pointer!important;
    z-index:3002!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links{
    position:absolute!important;
    top:100%!important;
    left:0!important;
    right:0!important;
    z-index:3001!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    width:100%!important;
    height:auto!important;
    max-height:none!important;
    overflow:visible!important;
    margin:0!important;
    padding:7px 16px 10px!important;
    background:transparent!important;
    background-image:none!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    clip-path:inset(0 0 100% 0)!important;
    transform:translateY(-8px)!important;
    transition:opacity .16s ease,transform .2s cubic-bezier(.2,.8,.2,1),clip-path .2s cubic-bezier(.2,.8,.2,1),visibility 0s linear .2s!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury.menu-open .nav-links{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    clip-path:inset(0 0 0 0)!important;
    transform:translateY(0)!important;
    transition:opacity .16s ease,transform .2s cubic-bezier(.2,.8,.2,1),clip-path .2s cubic-bezier(.2,.8,.2,1),visibility 0s!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links > a,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-link-button--soft{
    display:block!important;
    width:100%!important;
    min-height:0!important;
    padding:11px 0!important;
    margin:0!important;
    background:transparent!important;
    background-image:none!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    color:#ffffff!important;
    text-align:left!important;
    opacity:0!important;
    transform:translateY(-5px)!important;
    transition:opacity .15s ease,transform .19s ease,color .12s ease!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury.menu-open .nav-links > *{
    opacity:1!important;
    transform:translateY(0)!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury.menu-open .nav-links > *:nth-child(1){transition-delay:.02s!important}
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury.menu-open .nav-links > *:nth-child(2){transition-delay:.05s!important}
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury.menu-open .nav-links > *:nth-child(3){transition-delay:.08s!important}
}

/* My bookings: remove intro/security blocks and center a clean primary action. */
body.premium-ui:not(.admin-page-body) #mybookings-overlay .lookup-security-note{
  display:none!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .my-bookings-actions{
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  width:100%!important;
  margin:18px 0 10px!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay #lookup-btn{
  width:min(100%,230px)!important;
  min-width:0!important;
  min-height:46px!important;
  padding:0 18px!important;
  border-radius:7px!important;
  background:#18191b!important;
  color:#ffffff!important;
  border:1px solid #18191b!important;
  box-shadow:none!important;
  font-size:13px!important;
  font-weight:700!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay #lookup-btn:hover,
body.premium-ui:not(.admin-page-body) #mybookings-overlay #lookup-btn:focus-visible{
  background:#0f1011!important;
  border-color:#0f1011!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay #my-bookings-list:empty{
  display:none!important;
}

/* === v139: tablet portrait scheduler controls + cleaner mobile week + week/month palette sync === */

/* WEEK VIEW — use exactly the same neutral palette as MONTH on desktop + iPad. */
body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-corner,
body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-time,
body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-day-head{
  background:#111216!important;
  border-color:rgba(255,255,255,.065)!important;
  color:#f1f1f2!important;
}
body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-cell{
  background:#17181c!important;
  border-color:rgba(255,255,255,.065)!important;
}
body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-cell:hover,
body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-cell.is-selected-day{
  background:#202126!important;
}
body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-day-head.active{
  background:#202126!important;
}
body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-day-head strong{
  color:#8b8e95!important;
}
body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-day-head span,
body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-day-head.active span{
  background:transparent!important;
  color:#f1f1f2!important;
  box-shadow:none!important;
  border-radius:0!important;
}
body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-day-head.is-today:not(.active) span{
  display:grid!important;
  place-items:center!important;
  min-width:28px!important;
  width:max-content!important;
  height:28px!important;
  padding:0 7px!important;
  background:#f3f3f4!important;
  color:#111216!important;
  border-radius:50%!important;
}
body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-item.booking{
  background:#24262b!important;
  border:1px solid rgba(255,255,255,.09)!important;
  color:#f0f0f1!important;
  box-shadow:none;
}
body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-item.booking small{
  color:#898c92!important;
}
body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-item.block{
  background:#1e2126!important;
  border-color:rgba(255,255,255,.08)!important;
  color:#d9dadd!important;
}

/* Keep the status rail consistent between month and week. */
body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-item.booking.calendar-status-confirmed{
  box-shadow:inset 3px 0 0 #34c759!important;
}
body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-item.booking.calendar-status-pending{
  box-shadow:inset 3px 0 0 #ff9f0a!important;
}
body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-item.booking.calendar-status-completed{
  box-shadow:inset 3px 0 0 #bfc1c5!important;
}
body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-item.booking.calendar-status-rescheduled{
  box-shadow:inset 3px 0 0 #bf5af2!important;
}
body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-item.booking.calendar-status-no_show{
  box-shadow:inset 3px 0 0 #8e8e93!important;
}

/* iPad / tablet PORTRAIT: month title above, navigation + Week/Month together on the next row.
   This moves Week/Month up beside “Επόμ. →” instead of leaving them on a separate low row. */
@media (min-width:700px) and (max-width:1180px) and (orientation:portrait){
  body.premium-ui.admin-page-body .scheduler-card .admin-toolbar{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    align-items:start!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-rows:auto auto!important;
    align-items:center!important;
    gap:8px 10px!important;
    width:100%!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls .scheduler-period-label{
    grid-column:1 / -1!important;
    grid-row:1!important;
    order:0!important;
    width:100%!important;
    min-width:0!important;
    padding:2px 0 4px!important;
    margin:0!important;
    text-align:center!important;
    font-size:19px!important;
    font-weight:700!important;
    line-height:1.1!important;
    white-space:nowrap!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls > .admin-toolbar-group:first-child{
    grid-column:1!important;
    grid-row:2!important;
    order:0!important;
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:7px!important;
    width:100%!important;
    min-width:0!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls > .admin-toolbar-group:last-child{
    grid-column:2!important;
    grid-row:2!important;
    order:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:7px!important;
    width:auto!important;
    min-width:max-content!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls :is(#calendar-prev-period,#calendar-today,#calendar-next-period){
    width:100%!important;
    min-width:0!important;
    height:40px!important;
    min-height:40px!important;
    padding:0 10px!important;
    font-size:11px!important;
    white-space:nowrap!important;
  }
  body.premium-ui.admin-page-body .scheduler-top-controls :is(#calendar-view-week,#calendar-view-month){
    width:auto!important;
    min-width:76px!important;
    height:40px!important;
    min-height:40px!important;
    padding:0 11px!important;
    font-size:11px!important;
    white-space:nowrap!important;
  }
}

/* PHONE WEEK VIEW — flatter, easier to scan, and visually consistent with month. */
@media (max-width:699px), (max-width:1000px) and (max-height:699px){
  body.premium-ui.admin-page-body .mobile-week-scheduler{
    display:grid!important;
    gap:12px!important;
    width:100%!important;
    min-width:0!important;
  }
  body.premium-ui.admin-page-body .mobile-week-days{
    display:grid!important;
    grid-template-columns:repeat(7,minmax(0,1fr))!important;
    gap:4px!important;
    width:100%!important;
    padding:0 0 10px!important;
    margin:0!important;
    overflow:visible!important;
    background:transparent!important;
    border:0!important;
    border-bottom:1px solid rgba(255,255,255,.08)!important;
    border-radius:0!important;
    box-shadow:none!important;
  }
  body.premium-ui.admin-page-body .mobile-day-pill{
    position:relative!important;
    display:grid!important;
    place-items:center!important;
    align-content:center!important;
    gap:4px!important;
    width:100%!important;
    min-width:0!important;
    min-height:54px!important;
    padding:6px 2px!important;
    margin:0!important;
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    color:#dadce1!important;
    overflow:visible!important;
  }
  body.premium-ui.admin-page-body .mobile-day-pill::after{
    content:''!important;
    position:absolute!important;
    left:22%!important;
    right:22%!important;
    bottom:-11px!important;
    height:2px!important;
    background:transparent!important;
    border-radius:0!important;
  }
  body.premium-ui.admin-page-body .mobile-day-pill span{
    color:#858991!important;
    font-size:9px!important;
    font-weight:650!important;
    letter-spacing:.06em!important;
    line-height:1!important;
  }
  body.premium-ui.admin-page-body .mobile-day-pill strong{
    color:#e9e9eb!important;
    font-size:15px!important;
    font-weight:700!important;
    line-height:1!important;
  }
  body.premium-ui.admin-page-body .mobile-day-pill em{
    position:static!important;
    min-width:0!important;
    height:auto!important;
    padding:0!important;
    margin:0!important;
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    color:#8f939b!important;
    font-size:8px!important;
    font-weight:600!important;
    font-style:normal!important;
    line-height:1!important;
  }
  body.premium-ui.admin-page-body .mobile-day-pill.active{
    background:#202126!important;
    color:#fff!important;
    border:0!important;
    border-radius:6px!important;
    transform:none!important;
    box-shadow:none!important;
  }
  body.premium-ui.admin-page-body .mobile-day-pill.active::after{
    background:#f3f3f4!important;
  }
  body.premium-ui.admin-page-body .mobile-day-pill.active :is(span,strong,em){
    color:#fff!important;
  }
  body.premium-ui.admin-page-body .mobile-day-pill.blackout{
    opacity:.45!important;
    background:transparent!important;
  }

  body.premium-ui.admin-page-body .mobile-day-panel{
    display:grid!important;
    gap:10px!important;
    padding:0!important;
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
  }
  body.premium-ui.admin-page-body .mobile-day-panel-head{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:center!important;
    gap:10px!important;
    padding:4px 0 12px!important;
    margin:0!important;
    border-bottom:1px solid rgba(255,255,255,.08)!important;
  }
  body.premium-ui.admin-page-body .mobile-day-panel-head::after{display:none!important}
  body.premium-ui.admin-page-body .mobile-day-panel-head small{
    margin:0 0 4px!important;
    color:#858991!important;
    font-size:9px!important;
    letter-spacing:.12em!important;
  }
  body.premium-ui.admin-page-body .mobile-day-panel-head strong{
    color:#f0f0f1!important;
    font-size:15px!important;
    line-height:1.25!important;
  }
  body.premium-ui.admin-page-body .mobile-add-main{
    min-height:38px!important;
    height:38px!important;
    padding:0 12px!important;
    border-radius:6px!important;
    background:#f2f2f2!important;
    border:1px solid #f2f2f2!important;
    color:#141518!important;
    box-shadow:none!important;
    font-size:11px!important;
    font-weight:700!important;
    white-space:nowrap!important;
  }

  body.premium-ui.admin-page-body .mobile-agenda-card{
    position:relative!important;
    display:grid!important;
    gap:5px!important;
    width:100%!important;
    min-width:0!important;
    padding:12px 12px 12px 15px!important;
    background:#24262b!important;
    border:1px solid rgba(255,255,255,.09)!important;
    border-radius:6px!important;
    box-shadow:none!important;
    text-align:left!important;
    overflow:hidden!important;
  }
  body.premium-ui.admin-page-body .mobile-agenda-card::before{
    width:3px!important;
  }
  body.premium-ui.admin-page-body .mobile-agenda-card.block{
    background:#1e2126!important;
  }
  body.premium-ui.admin-page-body .mobile-agenda-meta{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:8px!important;
    min-width:0!important;
  }
  body.premium-ui.admin-page-body .mobile-agenda-time{
    color:#aeb0b5!important;
    font-size:10px!important;
  }
  body.premium-ui.admin-page-body .mobile-agenda-card strong{
    color:#f0f0f1!important;
    font-size:13px!important;
    line-height:1.25!important;
    overflow-wrap:anywhere!important;
  }
  body.premium-ui.admin-page-body .mobile-agenda-card small{
    color:#898c92!important;
    font-size:10px!important;
    line-height:1.35!important;
    overflow-wrap:anywhere!important;
  }
  body.premium-ui.admin-page-body .mobile-agenda-card .status-chip{
    padding:3px 6px!important;
    border-radius:4px!important;
    font-size:8px!important;
  }
  body.premium-ui.admin-page-body .mobile-empty-state{
    padding:14px 0!important;
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    color:#c4c6cb!important;
  }
  body.premium-ui.admin-page-body .mobile-empty-state span{
    color:#7f838b!important;
  }
  body.premium-ui.admin-page-body .mobile-quick-slots-title{
    margin:6px 0 0!important;
    color:#858991!important;
    font-size:9px!important;
    letter-spacing:.12em!important;
  }
  body.premium-ui.admin-page-body .mobile-quick-slots{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:6px!important;
  }
  body.premium-ui.admin-page-body .mobile-slot-plus{
    min-height:38px!important;
    padding:0 10px!important;
    background:#17181c!important;
    border:1px solid rgba(255,255,255,.08)!important;
    border-radius:6px!important;
    color:#e6e6e8!important;
    box-shadow:none!important;
    font-size:11px!important;
  }
  body.premium-ui.admin-page-body .mobile-slot-plus b{
    width:22px!important;
    height:22px!important;
    border-radius:4px!important;
    background:#2a2c31!important;
    color:#fff!important;
  }
}


/* === v140: no public burger, booking hides header, week-view tablet fixes === */

/* Hide the public header completely while customer booking is open. */
body.premium-ui.public-booking-open .site-nav.site-nav-luxury{
  display:none!important;
}

/* Mobile public header is logo-only now; no burger/menu. */
@media (max-width:900px){
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    min-height:58px!important;
    padding:calc(12px + env(safe-area-inset-top)) 16px 11px!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-logo{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    margin:0!important;
    width:auto!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-logo img{
    height:31px!important;
    width:auto!important;
    margin:0!important;
  }
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-menu-toggle,
  body.premium-ui:not(.admin-page-body) .site-nav.site-nav-luxury .nav-links{
    display:none!important;
  }
}

/* WEEK VIEW — remove old white circle on today and use a red text + underline marker. */
body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-day-head.is-today:not(.active){
  position:relative!important;
}
body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-day-head.is-today:not(.active) span{
  display:block!important;
  width:auto!important;
  min-width:0!important;
  height:auto!important;
  padding:0!important;
  margin-top:.2rem!important;
  background:transparent!important;
  color:#ff4d4f!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-day-head.is-today:not(.active) strong{
  color:#ff7a7c!important;
}
body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-day-head.is-today:not(.active)::after{
  content:''!important;
  position:absolute!important;
  left:12px!important;
  bottom:7px!important;
  width:24px!important;
  height:2px!important;
  background:#ff4d4f!important;
  border-radius:0!important;
}

/* iPad/tablet week: widen the left time rail so values never get cut off. */
@media (min-width:700px) and (max-width:1366px){
  body.premium-ui.admin-page-body .scheduler-board-wrap{
    overflow-x:auto!important;
    overflow-y:visible!important;
    -webkit-overflow-scrolling:touch!important;
    scroll-padding-left:0!important;
  }
  body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid){
    min-width:840px!important;
    grid-template-columns:64px repeat(7,minmax(96px,1fr))!important;
  }
  body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-corner{
    width:64px!important;
    min-width:64px!important;
  }
  body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-time{
    box-sizing:border-box!important;
    width:64px!important;
    min-width:64px!important;
    padding:.7rem .2rem!important;
    text-align:center!important;
    white-space:nowrap!important;
    overflow:visible!important;
    text-overflow:clip!important;
    letter-spacing:.02em!important;
    font-size:10px!important;
  }
}

/* Compact/mobile week: same clean red today marker, no circular badge. */
@media (max-width:699px), (max-width:1000px) and (max-height:699px){
  body.premium-ui.admin-page-body .mobile-day-pill.is-today:not(.active){
    position:relative!important;
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
  }
  body.premium-ui.admin-page-body .mobile-day-pill.is-today:not(.active) strong{
    color:#ff4d4f!important;
  }
  body.premium-ui.admin-page-body .mobile-day-pill.is-today:not(.active) span{
    color:#ff7a7c!important;
  }
  body.premium-ui.admin-page-body .mobile-day-pill.is-today:not(.active)::after{
    background:#ff4d4f!important;
    left:28%!important;
    right:28%!important;
    bottom:-11px!important;
    height:2px!important;
    border-radius:0!important;
  }
}

/* === v141: customer barber rework + schedule rules + iPad keyboard scroll === */

/* Customer barber step: simple, light, minimal, stable. */
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options.options-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .barber-choice-card{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 18px!important;
  align-items:center!important;
  gap:12px!important;
  min-height:64px!important;
  padding:15px 16px!important;
  background:var(--book-surface,#f7f6f1)!important;
  color:var(--book-ink,#17181a)!important;
  border:1px solid var(--book-line,#d9d7cf)!important;
  border-radius:8px!important;
  box-shadow:none!important;
  transform:none!important;
  transition:background .14s ease,border-color .14s ease,color .14s ease!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .barber-choice-card:hover{
  background:#f1f0ea!important;
  border-color:#bfc0ba!important;
  transform:none!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .barber-choice-card.selected{
  background:#1d1e21!important;
  color:#fff!important;
  border-color:#1d1e21!important;
  box-shadow:none!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .barber-choice-avatar{
  display:none!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .barber-choice-info{
  min-width:0!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .barber-choice-info::after{
  display:none!important;
  content:none!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .barber-choice-name{
  margin:0!important;
  color:#1c1d20!important;
  font-size:15px!important;
  font-weight:650!important;
  line-height:1.25!important;
  letter-spacing:-.015em!important;
  overflow-wrap:anywhere!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .barber-choice-card.selected .barber-choice-name{
  color:#fff!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .barber-choice-check{
  display:block!important;
  width:14px!important;
  height:14px!important;
  justify-self:end!important;
  border:1px solid #aeb0aa!important;
  border-radius:50%!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options .barber-choice-card.selected .barber-choice-check{
  border-color:#fff!important;
  background:#fff!important;
  box-shadow:inset 0 0 0 4px #1d1e21!important;
}
@media (max-width:700px){
  body.premium-ui:not(.admin-page-body) #booking-overlay #barber-options.options-grid{
    grid-template-columns:1fr!important;
  }
}

/* Closed-days tool: one coherent responsive schedule editor. */
body.premium-ui.admin-page-body .schedule-rules-stack{
  display:grid!important;
  gap:16px!important;
}
body.premium-ui.admin-page-body .schedule-rule-grid{
  align-items:start!important;
}
body.premium-ui.admin-page-body .weekday-toggle-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:0!important;
  margin:14px 0 18px!important;
  border-top:1px solid rgba(255,255,255,.07)!important;
}
body.premium-ui.admin-page-body .weekday-toggle-grid label{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  min-height:42px!important;
  padding:9px 4px!important;
  color:#dedede!important;
  border-bottom:1px solid rgba(255,255,255,.07)!important;
  cursor:pointer!important;
  background:transparent!important;
  border-radius:0!important;
}
body.premium-ui.admin-page-body .weekday-toggle-grid label:nth-child(odd){
  padding-right:12px!important;
}
body.premium-ui.admin-page-body .weekday-toggle-grid label:nth-child(even){
  padding-left:12px!important;
  border-left:1px solid rgba(255,255,255,.07)!important;
}
body.premium-ui.admin-page-body .weekday-toggle-grid input{
  appearance:none!important;
  -webkit-appearance:none!important;
  width:17px!important;
  height:17px!important;
  min-width:17px!important;
  min-height:17px!important;
  padding:0!important;
  margin:0!important;
  border:1px solid #606060!important;
  border-radius:3px!important;
  background:#121212!important;
  display:grid!important;
  place-items:center!important;
}
body.premium-ui.admin-page-body .weekday-toggle-grid input:checked{
  background:#f2f2f2!important;
  border-color:#f2f2f2!important;
}
body.premium-ui.admin-page-body .weekday-toggle-grid input:checked::after{
  content:'✓'!important;
  color:#111!important;
  font-size:12px!important;
  font-weight:800!important;
  line-height:1!important;
}
body.premium-ui.admin-page-body .weekday-toggle-grid span{
  font-size:13px!important;
  font-weight:560!important;
}
body.premium-ui.admin-page-body .schedule-rules-summary{
  display:grid!important;
  gap:16px!important;
}
body.premium-ui.admin-page-body .schedule-rule-group{
  display:grid!important;
  gap:8px!important;
  padding-top:12px!important;
  border-top:1px solid rgba(255,255,255,.07)!important;
}
body.premium-ui.admin-page-body .schedule-rule-group > strong{
  color:#f1f1f1!important;
  font-size:12px!important;
  font-weight:650!important;
}
body.premium-ui.admin-page-body .schedule-rule-line{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  min-height:38px!important;
  padding:7px 0!important;
  border-bottom:1px solid rgba(255,255,255,.06)!important;
}
body.premium-ui.admin-page-body .schedule-rule-line span{
  color:#f1f1f1!important;
  font-size:13px!important;
}
body.premium-ui.admin-page-body .schedule-rule-line strong{
  color:#8f939a!important;
  font-size:10px!important;
  font-weight:550!important;
  text-transform:uppercase!important;
  letter-spacing:.07em!important;
}
body.premium-ui.admin-page-body .schedule-open-item > div > strong{
  color:#f4f4f4!important;
}

/* iPad/tablet landscape: keyboard shrinks visual viewport; the actual form panel scrolls. */
@media (min-width:700px) and (max-width:1366px) and (orientation:landscape){
body.premium-ui.admin-page-body #booking-drawer.active {
    position:fixed!important;
    top:var(--visible-top,0px)!important;
    left:0!important;
    right:0!important;
    bottom:auto!important;
    width:100%!important;
    height:var(--visible-height,100dvh)!important;
    min-height:0!important;
    padding:8px!important;
    align-items:flex-start!important;
    justify-content:center!important;
    overflow:hidden!important;
  }


  body.premium-ui.admin-page-body #slot-quick-panel .slot-quick-top,
  body.premium-ui.admin-page-body #booking-drawer .admin-drawer-head{
    margin:0 0 10px!important;
    padding:4px 0 10px!important;
    /*background:#161616!important;*/
  }
  body.premium-ui.admin-page-body #slot-quick-panel .quick-booking-form,
  body.premium-ui.admin-page-body #booking-drawer #drawer-form{
    overflow:visible!important;
    padding-bottom:72px!important;
  }
  body.premium-ui.admin-page-body #slot-quick-panel :is(input,select,textarea),
  body.premium-ui.admin-page-body #booking-drawer :is(input,select,textarea){
    scroll-margin-top:82px!important;
    scroll-margin-bottom:150px!important;
  }
}

@media (max-width:760px){
  body.premium-ui.admin-page-body .weekday-toggle-grid{
    grid-template-columns:1fr!important;
  }
  body.premium-ui.admin-page-body .weekday-toggle-grid label:nth-child(n){
    padding-left:4px!important;
    padding-right:4px!important;
    border-left:0!important;
  }
  body.premium-ui.admin-page-body .schedule-rule-line{
    align-items:flex-start!important;
    flex-direction:column!important;
    gap:4px!important;
  }
}

/* === v142: public calendar closed-day visual state === */
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-day.disabled{
  opacity:.46!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-day.disabled.is-closed-day{
  color:#c85a5a!important;
  opacity:.72!important;
  background:transparent!important;
  border-color:transparent!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-day.disabled.is-full-day{
  color:#8b8d91!important;
  opacity:.5!important;
  background:transparent!important;
}
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-day.disabled.is-closed-day:hover,
body.premium-ui:not(.admin-page-body) #booking-overlay .cal-day.disabled.is-full-day:hover{
  background:transparent!important;
  transform:none!important;
}

/* === v143: booking modal must hide public header, no exceptions === */
html body.premium-ui.public-booking-open:not(.admin-page-body) .site-nav.site-nav-luxury,
html body.premium-ui.public-booking-open:not(.admin-page-body) #top.site-nav.site-nav-luxury{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}

/* === v144: tablet portrait mobile-week fit + compact non-growing agenda === */
@media (max-width:699px), (max-width:1000px) and (max-height:699px){
  /* The mobile week renderer must use the full card width; old max-content rules could clip Saturday. */
  body.premium-ui.admin-page-body .scheduler-card .scheduler-board-wrap{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow-x:hidden!important;
    overflow-y:visible!important;
    padding-left:0!important;
    padding-right:0!important;
  }
  body.premium-ui.admin-page-body .scheduler-card #scheduler-board{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:visible!important;
  }
  body.premium-ui.admin-page-body .mobile-week-scheduler{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
    gap:9px!important;
  }
  body.premium-ui.admin-page-body .mobile-week-days{
    box-sizing:border-box!important;
    grid-template-columns:repeat(7,minmax(0,1fr))!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    gap:2px!important;
    padding:0 1px 9px!important;
    overflow:visible!important;
  }
  body.premium-ui.admin-page-body .mobile-day-pill{
    box-sizing:border-box!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    min-height:50px!important;
    padding:5px 1px!important;
    overflow:hidden!important;
  }
  body.premium-ui.admin-page-body .mobile-day-pill span{
    max-width:100%!important;
    font-size:8px!important;
    letter-spacing:.035em!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:clip!important;
  }
  body.premium-ui.admin-page-body .mobile-day-pill strong{
    font-size:14px!important;
  }
  body.premium-ui.admin-page-body .mobile-day-pill em{
    font-size:7.5px!important;
  }

  /* Appointments get their own compact scroll area so one more booking never stretches the whole week page. */
  body.premium-ui.admin-page-body .mobile-agenda-list{
    display:grid!important;
    gap:6px!important;
    width:100%!important;
    min-width:0!important;
    max-height:190px!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
    padding:0 3px 0 0!important;
    scrollbar-width:thin!important;
    scrollbar-color:#3a3a3a transparent!important;
  }
  body.premium-ui.admin-page-body .mobile-agenda-list::-webkit-scrollbar{width:6px!important}
  body.premium-ui.admin-page-body .mobile-agenda-list::-webkit-scrollbar-track{background:transparent!important}
  body.premium-ui.admin-page-body .mobile-agenda-list::-webkit-scrollbar-thumb{background:#3a3a3a!important;border-radius:99px!important}
  body.premium-ui.admin-page-body .mobile-agenda-card{
    min-height:0!important;
    padding:9px 10px 9px 13px!important;
    gap:3px!important;
    flex:none!important;
  }
  body.premium-ui.admin-page-body .mobile-agenda-card strong{
    font-size:12px!important;
    line-height:1.2!important;
  }
  body.premium-ui.admin-page-body .mobile-agenda-card small{
    font-size:9px!important;
    line-height:1.25!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }

  /* Quick add times stay in one horizontal row instead of making the page very tall. */
  body.premium-ui.admin-page-body .mobile-quick-slots-title{
    margin:4px 0 1px!important;
  }
  body.premium-ui.admin-page-body .mobile-quick-slots{
    display:flex!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    gap:6px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    padding:2px 0 5px!important;
    scroll-snap-type:x proximity!important;
    -webkit-overflow-scrolling:touch!important;
    scrollbar-width:none!important;
  }
  body.premium-ui.admin-page-body .mobile-quick-slots::-webkit-scrollbar{display:none!important}
  body.premium-ui.admin-page-body .mobile-slot-plus{
    flex:0 0 92px!important;
    width:92px!important;
    min-width:92px!important;
    min-height:36px!important;
    height:36px!important;
    padding:0 8px!important;
    scroll-snap-align:start!important;
  }
}

/* Tablet portrait/mobile-mode gets a little more breathing room without ever cutting the last day. */
@media (min-width:600px) and (max-width:1000px) and (orientation:portrait){
  body.premium-ui.admin-page-body .mobile-week-days{gap:5px!important;padding-inline:2px!important}
  body.premium-ui.admin-page-body .mobile-day-pill{min-height:54px!important;padding:6px 2px!important}
  body.premium-ui.admin-page-body .mobile-day-pill span{font-size:9px!important}
  body.premium-ui.admin-page-body .mobile-day-pill strong{font-size:15px!important}
  body.premium-ui.admin-page-body .mobile-agenda-list{max-height:220px!important}
  body.premium-ui.admin-page-body .mobile-slot-plus{flex-basis:100px!important;width:100px!important;min-width:100px!important}
}


/* === v145: mobile notifications position + login topbar cleanup === */
html, body.premium-ui.admin-page-body{
  max-width:100%!important;
  overflow-x:hidden!important;
}
/* Login state: no notification UI at all. */
body.premium-ui.admin-page-body:not(.admin-authenticated) #notifications-toggle,
body.premium-ui.admin-page-body:not(.admin-authenticated) .admin-top-actions {
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
body.premium-ui.admin-page-body:not(.admin-authenticated) #notifications-panel {
  visibility:hidden!important;
  pointer-events:none!important;
}


/* Login header: true centered logo + clean return text on the right. */
body.premium-ui.admin-page-body:not(.admin-authenticated) .admin-topbar-inner.admin-topbar-layout{
  display:grid!important;
  grid-template-columns:1fr auto 1fr!important;
  align-items:center!important;
  width:100%!important;
  max-width:1180px!important;
  margin:0 auto!important;
  gap:12px!important;
}
body.premium-ui.admin-page-body:not(.admin-authenticated) .admin-brand{
  grid-column:2!important;
  grid-row:1!important;
  justify-self:center!important;
  align-self:center!important;
  width:auto!important;
  margin:0!important;
}
body.premium-ui.admin-page-body:not(.admin-authenticated) .admin-brand img{
  display:block!important;
  height:34px!important;
  width:auto!important;
  max-width:150px!important;
  margin:0 auto!important;
}
body.premium-ui.admin-page-body:not(.admin-authenticated) .premium-login-back{
  grid-column:3!important;
  grid-row:1!important;
  justify-self:end!important;
  align-self:center!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:36px!important;
  padding:7px 0 7px 12px!important;
  margin:0!important;
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  color:#b9bcc2!important;
  font-size:11px!important;
  font-weight:600!important;
  line-height:1.2!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}
body.premium-ui.admin-page-body:not(.admin-authenticated) .premium-login-back:hover,
body.premium-ui.admin-page-body:not(.admin-authenticated) .premium-login-back:focus-visible{
  color:#fff!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}

/* Authenticated mobile topbar: keep Notifications safely inside viewport and slightly left. */
@media (max-width:1024px){
  body.premium-ui.admin-page-body.admin-authenticated .admin-topbar-page{
    overflow-x:hidden!important;
  }
  body.premium-ui.admin-page-body.admin-authenticated .admin-topbar-inner.admin-topbar-layout{
    box-sizing:border-box!important;
    width:100%!important;
    max-width:100%!important;
    grid-template-columns:44px minmax(0,1fr) minmax(88px,auto)!important;
    padding-left:2px!important;
    padding-right:8px!important;
    gap:8px!important;
    overflow:visible!important;
  }
  body.premium-ui.admin-page-body.admin-authenticated .admin-top-actions{
    grid-column:3!important;
    justify-self:end!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0 8px 0 0!important;
    transform:none!important;
  }
  body.premium-ui.admin-page-body.admin-authenticated #notifications-toggle{
    position:relative!important;
    box-sizing:border-box!important;
    max-width:100%!important;
    margin:0!important;
    padding:0 5px!important;
    overflow:visible!important;
    transform:none!important;
  }
  body.premium-ui.admin-page-body.admin-authenticated #notifications-toggle .notifications-badge{
    top:-5px!important;
    right:0!important;
    transform:translateX(35%)!important;
  }
}

@media (max-width:640px){
  body.premium-ui.admin-page-body.admin-authenticated .admin-topbar-inner.admin-topbar-layout{
    grid-template-columns:42px minmax(0,1fr) minmax(78px,auto)!important;
    padding-right:6px!important;
    gap:6px!important;
  }
  body.premium-ui.admin-page-body.admin-authenticated .admin-top-actions{
    margin-right:10px!important;
  }
  body.premium-ui.admin-page-body.admin-authenticated #notifications-toggle{
    font-size:10.5px!important;
    padding-inline:3px!important;
  }

  body.premium-ui.admin-page-body:not(.admin-authenticated) .admin-topbar-page{
    padding:12px 14px!important;
  }
  body.premium-ui.admin-page-body:not(.admin-authenticated) .admin-topbar-inner.admin-topbar-layout{
    grid-template-columns:1fr auto 1fr!important;
    gap:8px!important;
  }
  body.premium-ui.admin-page-body:not(.admin-authenticated) .admin-brand img{
    height:31px!important;
    max-width:132px!important;
  }
  body.premium-ui.admin-page-body:not(.admin-authenticated) .premium-login-back{
    padding-left:8px!important;
    font-size:10px!important;
  }
}

@media (max-width:390px){
  body.premium-ui.admin-page-body:not(.admin-authenticated) .premium-login-back{
    font-size:0!important;
    width:38px!important;
    min-width:38px!important;
    padding:0!important;
  }
  body.premium-ui.admin-page-body:not(.admin-authenticated) .premium-login-back::before{
    content:'←'!important;
    display:block!important;
    font-size:18px!important;
    color:#d5d7dc!important;
  }
}
/* === v146: mobile admin width lock, centered notifications, tool scrolling + neutral tools === */
html.admin-page-root,
body.premium-ui.admin-page-body {
  width:100%!important;
  max-width:100%!important;
  overflow-x:hidden!important;
  overscroll-behavior-x:none!important;
}
body.premium-ui.admin-page-body .admin-page-shell {
  width:100%!important;
  overscroll-behavior-x:none!important;
}

body.premium-ui.admin-page-body .admin-page-shell{
  position:relative!important;
}

/* Sidebar must never enlarge the layout or create the Safari/Chrome "auto zoom" feeling. */
@media (max-width:1024px){
  html.admin-page-root,
  body.premium-ui.admin-page-body{
    min-width:0!important;
    max-width:100vw!important;
  }
body.premium-ui.admin-page-body .admin-page-shell,
body.premium-ui.admin-page-body .admin-content-area {
    width:100%!important;
  }

body.premium-ui.admin-page-body #admin-sidebar.premium-sidebar {
    box-sizing:border-box!important;
    transform-origin:left top!important;
  }


  body.premium-ui.admin-page-body #admin-sidebar *,
  body.premium-ui.admin-page-body #admin-sidebar *::before,
  body.premium-ui.admin-page-body #admin-sidebar *::after{
    box-sizing:border-box!important;
    max-width:100%!important;
  }
  body.premium-ui.admin-page-body #admin-sidebar :is(
    .premium-sidebar-group,.admin-header-nav,.admin-tools-grid,.admin-tools-grid.compact,
    .premium-sidebar-account,.admin-topbar-start
  ){
    background:transparent!important;
    background-image:none!important;
    border-radius:0!important;
    box-shadow:none!important;
  }
  body.premium-ui.admin-page-body #admin-sidebar :is(.admin-header-tab,.tool-launch-btn,.admin-link-btn){
    transform:none!important;
  }
  body.premium-ui.admin-page-body #admin-sidebar :is(.admin-header-tab,.tool-launch-btn){
    width:100%!important;
    margin:0!important;
    padding:10px 0!important;
    background:transparent!important;
    background-image:none!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    outline:0!important;
  }
  body.premium-ui.admin-page-body #admin-sidebar :is(.admin-header-tab,.tool-launch-btn):is(.active,:hover,:focus,:focus-visible,:active){
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
  }
  body.premium-ui.admin-page-body #premium-sidebar-close{
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
  }
  body.premium-ui .premium-sidebar-backdrop{
    inset:0!important;
    width:100vw!important;
    max-width:100vw!important;
    overflow:hidden!important;
  }
}

/* Mobile notifications: true centered sheet, never positioned beyond the right viewport edge. */
@media (max-width:699px){
body.premium-ui.admin-page-body #notifications-panel {
    border-radius:14px!important;
    box-sizing:border-box!important;
    flex-direction:column!important;
  }


  body.premium-ui.admin-page-body #notifications-panel .notifications-panel-head{
    flex:0 0 auto!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    width:100%!important;
    min-width:0!important;
    gap:10px!important;
    padding:12px!important;
    box-sizing:border-box!important;
  }
  body.premium-ui.admin-page-body #notifications-panel .notifications-actions{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) 40px!important;
    width:100%!important;
    min-width:0!important;
    gap:6px!important;
  }
  body.premium-ui.admin-page-body #notifications-panel .notifications-actions .admin-link-btn{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
    padding:0 7px!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
  body.premium-ui.admin-page-body #notifications-panel .notifications-list{
    flex:1 1 auto!important;
    min-height:0!important;
    width:100%!important;
    max-width:100%!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    padding:8px!important;
    box-sizing:border-box!important;
    -webkit-overflow-scrolling:touch!important;
  }
  body.premium-ui.admin-page-body #notifications-panel :is(.notification-item,.notification-empty){
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0 0 8px!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
    overflow-wrap:anywhere!important;
    word-break:break-word!important;
  }
  body.premium-ui.admin-page-body #notifications-panel .notification-item:last-child{margin-bottom:0!important}
  body.premium-ui.admin-page-body #notifications-panel .notification-item :is(strong,span,small){
    max-width:100%!important;
    overflow-wrap:anywhere!important;
  }
}

/* Tool pages use normal page scrolling on phone/tablet; no hidden bottom content. */
@media (max-width:1180px){
body.premium-ui.admin-page-body #admin-pane-tools,
body.premium-ui.admin-page-body #admin-tools-page-host {
    width:100%!important;
  }
body.premium-ui.admin-page-body .admin-tools-page-panel .tools-modal-section {
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
    contain:none!important;
  }

  body.premium-ui.admin-page-body #admin-pane-tools{
    padding-bottom:calc(100px + env(safe-area-inset-bottom))!important;
  }
  body.premium-ui.admin-page-body #admin-tools-page-host{
    padding-bottom:20px!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel :is(
    .tools-modal-grid,.products-editor-grid,.tools-form-card,.tools-list-card,
    .records-modal-list,.schedule-chip-list,#showroom-admin-list,#products-admin-list,
    #barbers-admin-list,#services-admin-list
  ){
    max-height:none!important;
    overflow:visible!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel .tools-list-card{
    margin-bottom:18px!important;
  }
}

/* One neutral input language across every admin tool. No browser-blue focus or accents. */
body.premium-ui.admin-page-body .admin-tools-page-panel{
  color-scheme:dark!important;
  accent-color:#bfc1c5!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel :is(input,select,textarea,.admin-search,.admin-date-input){
  background:#111214!important;
  background-image:none!important;
  border:1px solid #34363a!important;
  color:#f3f3f3!important;
  caret-color:#ffffff!important;
  box-shadow:none!important;
  outline:none!important;
  accent-color:#bfc1c5!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel :is(input,select,textarea,.admin-search,.admin-date-input):is(:focus,:focus-visible){
  background:#141518!important;
  border-color:#74777d!important;
  box-shadow:0 0 0 2px rgba(255,255,255,.07)!important;
  outline:none!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel :is(input,textarea)::placeholder{
  color:#777b82!important;
  opacity:1!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel select option{
  background:#111214!important;
  color:#f3f3f3!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel input[type="file"]::file-selector-button{
  background:#25272b!important;
  color:#f3f3f3!important;
  border:1px solid #3b3e43!important;
  border-radius:4px!important;
}

/* Same back button on Analytics, Clients and every tool page. */
body.premium-ui.admin-page-body :is(.admin-view-back,.admin-tools-page-panel .admin-tools-modal-head [data-close-tools-modal]){
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:38px!important;
  padding:0 12px!important;
  background:#f0f0ee!important;
  background-image:none!important;
  border:1px solid #f0f0ee!important;
  border-radius:4px!important;
  box-shadow:none!important;
  color:#141414!important;
  font-size:12px!important;
  font-weight:700!important;
  white-space:nowrap!important;
}
body.premium-ui.admin-page-body :is(.admin-view-back,.admin-tools-page-panel .admin-tools-modal-head [data-close-tools-modal]):is(:hover,:focus-visible,:active){
  background:#ffffff!important;
  border-color:#ffffff!important;
  color:#111!important;
  transform:none!important;
}
body.premium-ui.admin-page-body .admin-view-toolbar{
  align-items:flex-start!important;
}
body.premium-ui.admin-page-body .admin-view-toolbar-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:10px!important;
}
@media (max-width:699px){
  body.premium-ui.admin-page-body .admin-view-toolbar{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:12px!important;
  }
  body.premium-ui.admin-page-body .admin-view-toolbar-actions{
    width:100%!important;
    justify-content:flex-start!important;
    flex-wrap:wrap!important;
  }
  body.premium-ui.admin-page-body .admin-view-toolbar-actions .admin-search{
    width:100%!important;
    flex-basis:100%!important;
  }
  body.premium-ui.admin-page-body .admin-view-back{
    order:-1!important;
  }
}
/* === v147: quick booking = one single modal surface === */

body.premium-ui.admin-page-body #slot-quick-panel .slot-quick-dialog {
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}

body.premium-ui.admin-page-body #slot-quick-panel .slot-quick-dialog::before,
body.premium-ui.admin-page-body #slot-quick-panel .slot-quick-dialog::after{
  display:none!important;
  content:none!important;
}
body.premium-ui.admin-page-body #slot-quick-panel .slot-quick-top{
  display:none!important;
}
body.premium-ui.admin-page-body #slot-quick-panel .slot-quick-grid{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
}
body.premium-ui.admin-page-body #slot-quick-panel .quick-booking-form,
body.premium-ui.admin-page-body #slot-quick-panel .quick-booking-success{
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:18px!important;
  background:#161616!important;
  background-image:none!important;
  border:1px solid rgba(255,255,255,.10)!important;
  border-radius:14px!important;
  box-shadow:0 22px 70px rgba(0,0,0,.34)!important;
  box-sizing:border-box!important;
}
body.premium-ui.admin-page-body #slot-quick-panel .quick-booking-topline{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:14px!important;
  margin:0 0 12px!important;
  padding:0 0 12px!important;
  border-bottom:1px solid rgba(255,255,255,.08)!important;
}
body.premium-ui.admin-page-body #slot-quick-panel .quick-booking-date{
  margin-top:5px!important;
  color:#f4f4f4!important;
  font-size:18px!important;
  font-weight:700!important;
  line-height:1.2!important;
  letter-spacing:-.02em!important;
}
body.premium-ui.admin-page-body #slot-quick-panel .quick-booking-inline-close{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  padding:0!important;
  margin:0!important;
  background:#202124!important;
  color:#f1f1f1!important;
  border:1px solid rgba(255,255,255,.10)!important;
  border-radius:8px!important;
  box-shadow:none!important;
  font-size:22px!important;
  line-height:1!important;
  cursor:pointer!important;
}
body.premium-ui.admin-page-body #slot-quick-panel .quick-booking-inline-close:is(:hover,:focus-visible,:active){
  background:#292b2f!important;
  border-color:rgba(255,255,255,.18)!important;
  transform:none!important;
}
body.premium-ui.admin-page-body #slot-quick-panel .quick-booking-form .slot-form-head{
  margin-top:0!important;
}

@media (min-width:700px) and (max-width:1366px) and (orientation:landscape){


  body.premium-ui.admin-page-body #slot-quick-panel .quick-booking-form,
  body.premium-ui.admin-page-body #slot-quick-panel .quick-booking-success{
    padding:16px!important;
  }
  body.premium-ui.admin-page-body #slot-quick-panel .quick-booking-topline{
    position:static!important;
    top:auto!important;
    z-index:auto!important;
    background:transparent!important;
    padding-top:2px!important;
  }
}

@media (max-width:699px){


  body.premium-ui.admin-page-body #slot-quick-panel .quick-booking-form,
  body.premium-ui.admin-page-body #slot-quick-panel .quick-booking-success{
    padding:14px!important;
    border-radius:10px!important;
  }
  body.premium-ui.admin-page-body #slot-quick-panel .quick-booking-date{
    font-size:16px!important;
  }
}


/* === Nexa v164: stable software calendars inside Admin Tools === */
body.premium-ui.admin-page-body .admin-tools-page-panel .flatpickr-wrapper{
  position:relative!important;
  display:block!important;
  width:100%!important;
  min-width:0!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .software-date-input.flatpickr-input{
  width:100%!important;
  min-height:48px!important;
  padding-right:42px!important;
  cursor:pointer!important;
  -webkit-appearance:none!important;
  appearance:none!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .flatpickr-wrapper::after{
  content:"";
  position:absolute;
  right:14px;
  top:50%;
  width:16px;
  height:16px;
  transform:translateY(-50%);
  pointer-events:none;
  opacity:.72;
  background:center/16px 16px no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23d7d7d7' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M16 3v4M8 3v4M3 10h18'/%3E%3C/svg%3E");
}
body.premium-ui.admin-page-body .admin-tools-page-panel .flatpickr-calendar.static{
  position:absolute!important;
  top:calc(100% + 8px)!important;
  left:0!important;
  right:auto!important;
  width:320px!important;
  max-width:min(320px,calc(100vw - 32px))!important;
  z-index:5000!important;
  margin:0!important;
  transform:none!important;
  background:#151619!important;
  border:1px solid #34363a!important;
  border-radius:8px!important;
  box-shadow:0 20px 48px rgba(0,0,0,.58)!important;
  overflow:hidden!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .flatpickr-calendar.static.open{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .flatpickr-calendar.static::before,
body.premium-ui.admin-page-body .admin-tools-page-panel .flatpickr-calendar.static::after{
  display:none!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .flatpickr-calendar .flatpickr-months{
  display:flex!important;
  align-items:center!important;
  min-height:48px!important;
  padding:6px 8px 0!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .flatpickr-calendar .flatpickr-month{
  height:42px!important;
  min-height:42px!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .flatpickr-calendar .flatpickr-current-month{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  width:calc(100% - 68px)!important;
  height:38px!important;
  left:34px!important;
  padding:0!important;
  font-size:14px!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .flatpickr-calendar .flatpickr-current-month .flatpickr-monthDropdown-months{
  width:auto!important;
  max-width:154px!important;
  height:32px!important;
  padding:0 8px!important;
  margin:0!important;
  background:#111214!important;
  border:1px solid #2d3034!important;
  border-radius:5px!important;
  color:#f1f1ee!important;
  font-size:14px!important;
  font-weight:700!important;
  line-height:30px!important;
  box-shadow:none!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .flatpickr-calendar .flatpickr-current-month .numInputWrapper{
  width:72px!important;
  height:32px!important;
  margin:0!important;
  background:#111214!important;
  border:1px solid #2d3034!important;
  border-radius:5px!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .flatpickr-calendar .flatpickr-current-month input.cur-year{
  height:30px!important;
  padding:0 18px 0 8px!important;
  color:#f1f1ee!important;
  font-size:14px!important;
  font-weight:700!important;
  line-height:30px!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .flatpickr-calendar .flatpickr-prev-month,
body.premium-ui.admin-page-body .admin-tools-page-panel .flatpickr-calendar .flatpickr-next-month{
  display:grid!important;
  place-items:center!important;
  width:36px!important;
  height:42px!important;
  top:6px!important;
  padding:0!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .flatpickr-calendar .flatpickr-prev-month svg,
body.premium-ui.admin-page-body .admin-tools-page-panel .flatpickr-calendar .flatpickr-next-month svg{
  width:13px!important;
  height:13px!important;
  fill:#d9d9d7!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .flatpickr-calendar :is(.flatpickr-innerContainer,.flatpickr-rContainer,.flatpickr-weekdays,.flatpickr-days,.dayContainer){
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .flatpickr-calendar .flatpickr-weekdays{
  height:30px!important;
  padding:0 8px!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .flatpickr-calendar .flatpickr-weekday{
  height:30px!important;
  line-height:30px!important;
  color:#9ea0a4!important;
  font-size:12px!important;
  font-weight:700!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .flatpickr-calendar .dayContainer{
  display:grid!important;
  grid-template-columns:repeat(7,minmax(0,1fr))!important;
  gap:2px 0!important;
  padding:4px 8px 10px!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .flatpickr-calendar .flatpickr-day{
  width:100%!important;
  max-width:none!important;
  height:38px!important;
  min-height:38px!important;
  line-height:38px!important;
  margin:0!important;
  border-radius:5px!important;
  font-size:13px!important;
  font-weight:650!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .flatpickr-calendar .flatpickr-day:hover{
  background:#24262a!important;
  border-color:#24262a!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .flatpickr-calendar .flatpickr-day.selected,
body.premium-ui.admin-page-body .admin-tools-page-panel .flatpickr-calendar .flatpickr-day.selected:hover{
  background:#f1f1ee!important;
  border-color:#f1f1ee!important;
  color:#111214!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .flatpickr-calendar .flatpickr-day.today:not(.selected){
  border-color:#777b82!important;
  color:#fff!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .flatpickr-calendar .flatpickr-day:is(.prevMonthDay,.nextMonthDay){
  color:#5f6267!important;
}
@media (max-width:520px){
  body.premium-ui.admin-page-body .admin-tools-page-panel .flatpickr-calendar.static{
    width:min(310px,calc(100vw - 36px))!important;
    max-width:calc(100vw - 36px)!important;
  }
  body.premium-ui.admin-page-body .admin-tools-page-panel .flatpickr-calendar .flatpickr-day{
    height:36px!important;
    min-height:36px!important;
    line-height:36px!important;
  }
}

/* v18 — recurring-break editor + explicit appointment reschedule control */
body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-weekdays{margin-top:.45rem}
body.premium-ui.admin-page-body .recurring-break-group strong{text-transform:none;letter-spacing:0}
body.premium-ui.admin-page-body .drawer-reschedule-card{
  border:1px solid rgba(255,255,255,.12);
  background:#0b0b0b;
  border-radius:14px;
  padding:14px;
  display:grid;
  gap:12px;
}
body.premium-ui.admin-page-body .drawer-reschedule-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
body.premium-ui.admin-page-body .drawer-reschedule-head > div{min-width:0;display:grid;gap:4px}
body.premium-ui.admin-page-body .drawer-reschedule-label{color:rgba(255,255,255,.5);font-size:11px;text-transform:uppercase;letter-spacing:.08em}
body.premium-ui.admin-page-body #drawer-reschedule-current{color:#fff;font-size:14px;line-height:1.35;overflow-wrap:anywhere}
body.premium-ui.admin-page-body .drawer-reschedule-toggle{flex:0 0 auto;min-width:92px}
body.premium-ui.admin-page-body .drawer-reschedule-fields{border-top:1px solid rgba(255,255,255,.08);padding-top:12px}
body.premium-ui.admin-page-body .drawer-reschedule-fields.hidden{display:none!important}
@media (max-width:699px){
  body.premium-ui.admin-page-body .drawer-reschedule-head{align-items:flex-start}
  body.premium-ui.admin-page-body .drawer-reschedule-toggle{min-width:auto}
}


/* v19 — barber quick booking + persistent day notes */
body.premium-ui.admin-page-body .day-note-card{
  margin:0 0 14px; padding:14px; border:1px solid rgba(255,255,255,.10);
  background:#0b0b0b; border-radius:12px; display:grid; gap:10px;
}
body.premium-ui.admin-page-body .day-note-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
body.premium-ui.admin-page-body .day-note-head>div{display:grid;gap:3px}
body.premium-ui.admin-page-body #day-note-date{font-size:14px;color:#f3f3f3}
body.premium-ui.admin-page-body .day-note-save-state{font-size:11px;color:rgba(255,255,255,.52);white-space:nowrap}
body.premium-ui.admin-page-body #day-note-input{
  width:100%; min-height:76px; resize:vertical; box-sizing:border-box; border:1px solid rgba(255,255,255,.12);
  background:#121212; color:#fff; border-radius:8px; padding:11px 12px; font:inherit; line-height:1.45;
}
body.premium-ui.admin-page-body #day-note-input:focus{outline:none;border-color:rgba(255,255,255,.34)}
body.premium-ui.admin-page-body .day-note-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}
body.premium-ui.admin-page-body .admin-day-note-preview{margin:0 18px 12px;padding:12px 14px;border:1px solid rgba(255,255,255,.10);background:#101010;border-radius:10px}
body.premium-ui.admin-page-body .admin-day-note-preview.hidden{display:none!important}
body.premium-ui.admin-page-body .admin-day-note-preview span{display:block;color:rgba(255,255,255,.50);font-size:10px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:5px}
body.premium-ui.admin-page-body .admin-day-note-preview p{margin:0;color:#fff;font-size:13px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}
@media (max-width:699px){
  body.premium-ui.admin-page-body .day-note-card{border-radius:8px;padding:12px}
  body.premium-ui.admin-page-body .day-note-actions{display:grid;grid-template-columns:1fr 1fr}
  body.premium-ui.admin-page-body .day-note-actions>*{width:100%}
}

/* v22 — persistent weekly opening-hours editor */
body.premium-ui.admin-page-body .weekly-hours-grid{
  display:grid!important;
  gap:0!important;
  margin:14px 0 18px!important;
  border-top:1px solid rgba(255,255,255,.08)!important;
}
body.premium-ui.admin-page-body .weekly-hours-row{
  display:grid!important;
  grid-template-columns:minmax(120px,.8fr) minmax(300px,1.5fr)!important;
  align-items:center!important;
  gap:18px!important;
  min-height:72px!important;
  padding:10px 0!important;
  border-bottom:1px solid rgba(255,255,255,.08)!important;
}
body.premium-ui.admin-page-body .weekly-hours-day{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  color:#f2f2f2!important;
  font-size:13px!important;
  font-weight:620!important;
  cursor:pointer!important;
}
body.premium-ui.admin-page-body .weekly-hours-day input{
  appearance:none!important;
  -webkit-appearance:none!important;
  width:34px!important;
  height:20px!important;
  min-width:34px!important;
  margin:0!important;
  border:1px solid #505050!important;
  border-radius:999px!important;
  background:#111!important;
  position:relative!important;
  transition:.18s ease!important;
}
body.premium-ui.admin-page-body .weekly-hours-day input::after{
  content:''!important;
  position:absolute!important;
  top:3px!important;
  left:3px!important;
  width:12px!important;
  height:12px!important;
  border-radius:50%!important;
  background:#777!important;
  transition:.18s ease!important;
}
body.premium-ui.admin-page-body .weekly-hours-day input:checked{
  background:#f1f1f1!important;
  border-color:#f1f1f1!important;
}
body.premium-ui.admin-page-body .weekly-hours-day input:checked::after{
  left:17px!important;
  background:#111!important;
}
body.premium-ui.admin-page-body .weekly-hours-time{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
}
body.premium-ui.admin-page-body .weekly-hours-time label{
  display:grid!important;
  gap:6px!important;
  color:#91949a!important;
  font-size:10px!important;
  font-weight:650!important;
  text-transform:uppercase!important;
  letter-spacing:.06em!important;
}
body.premium-ui.admin-page-body .weekly-hours-time input[type="time"]{
  width:100%!important;
  min-height:42px!important;
}
body.premium-ui.admin-page-body .weekly-hours-row.is-closed .weekly-hours-time{
  opacity:.38!important;
}
body.premium-ui.admin-page-body .weekly-hours-row.is-closed .weekly-hours-day span::after{
  content:' · Κλειστά'!important;
  color:#7f8288!important;
  font-size:10px!important;
  font-weight:560!important;
}
@media (max-width:760px){
  body.premium-ui.admin-page-body .weekly-hours-row{
    grid-template-columns:1fr!important;
    gap:10px!important;
    padding:12px 0!important;
  }
  body.premium-ui.admin-page-body .weekly-hours-time{
    grid-template-columns:1fr 1fr!important;
  }
}
@media (max-width:420px){
  body.premium-ui.admin-page-body .weekly-hours-time{
    grid-template-columns:1fr!important;
  }
}


/* v23 — recurring break day buttons + fixed 30-minute time selectors */
body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-weekdays{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:8px!important;
  margin:12px 0 18px!important;
  border-top:0!important;
}
body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-weekdays label,
body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-weekdays label:nth-child(n){
  position:relative!important;
  min-height:46px!important;
  padding:10px 42px 10px 13px!important;
  border:1px solid rgba(255,255,255,.11)!important;
  border-radius:9px!important;
  background:#111!important;
  color:#e9e9e9!important;
  transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease!important;
  overflow:hidden!important;
}
body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-weekdays label:hover{
  background:#161616!important;
  border-color:rgba(255,255,255,.24)!important;
}
body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-weekdays label:active{
  transform:scale(.99)!important;
}
body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-weekdays input{
  position:absolute!important;
  right:12px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  width:21px!important;
  height:21px!important;
  min-width:21px!important;
  min-height:21px!important;
  border:1px solid #555!important;
  border-radius:6px!important;
  background:#080808!important;
  transition:background .16s ease,border-color .16s ease,box-shadow .16s ease!important;
}
body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-weekdays input:checked{
  background:#f3f3f1!important;
  border-color:#f3f3f1!important;
  box-shadow:0 0 0 3px rgba(255,255,255,.08)!important;
}
body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-weekdays input:checked::after{
  content:'✓'!important;
  color:#101010!important;
  font-size:13px!important;
  font-weight:900!important;
}
body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-weekdays label:has(input:checked){
  background:#f1f1ef!important;
  border-color:#f1f1ef!important;
  color:#111!important;
}
body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-weekdays label:has(input:checked) span{
  color:#111!important;
  font-weight:700!important;
}
body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-weekdays label:has(input:checked) input{
  background:#111!important;
  border-color:#111!important;
  box-shadow:none!important;
}
body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-weekdays label:has(input:checked) input:checked::after{
  color:#fff!important;
}
body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-time-grid{
  gap:10px!important;
}
body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-time-field{
  min-width:0!important;
}
body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-select-wrap{
  position:relative!important;
}
body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-select-wrap::after{
  content:'⌄'!important;
  position:absolute!important;
  right:14px!important;
  top:50%!important;
  transform:translateY(-56%)!important;
  color:rgba(255,255,255,.72)!important;
  font-size:18px!important;
  line-height:1!important;
  pointer-events:none!important;
}
body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-time-select{
  width:100%!important;
  height:50px!important;
  min-height:50px!important;
  padding:0 42px 0 14px!important;
  border:1px solid rgba(255,255,255,.14)!important;
  border-radius:9px!important;
  background:#111!important;
  color:#fff!important;
  font-size:15px!important;
  font-weight:700!important;
  font-variant-numeric:tabular-nums!important;
  letter-spacing:.01em!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  cursor:pointer!important;
  outline:none!important;
}
body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-time-select:hover{
  border-color:rgba(255,255,255,.28)!important;
  background:#151515!important;
}
body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-time-select:focus{
  border-color:#f0f0ee!important;
  box-shadow:0 0 0 3px rgba(255,255,255,.08)!important;
}
body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-time-select option{
  background:#111!important;
  color:#fff!important;
}
@media (max-width:760px){
  body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-weekdays{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-weekdays label,
  body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-weekdays label:nth-child(n){
    min-height:44px!important;
    padding:9px 38px 9px 11px!important;
  }
}
@media (max-width:430px){
  body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-weekdays{
    grid-template-columns:1fr!important;
    gap:7px!important;
  }
  body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-time-grid{
    grid-template-columns:1fr 1fr!important;
  }
  body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-time-select{
    height:48px!important;
    min-height:48px!important;
    padding-left:12px!important;
    font-size:14px!important;
  }
}

/* v24 — minimal recurring-break weekday checkboxes */
body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-weekdays{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:0 22px!important;
  margin:10px 0 20px!important;
  padding:2px 0!important;
  background:transparent!important;
}
body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-weekdays label,
body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-weekdays label:nth-child(n){
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:10px!important;
  min-height:40px!important;
  padding:7px 2px!important;
  border:0!important;
  border-bottom:1px solid rgba(255,255,255,.075)!important;
  border-radius:0!important;
  background:transparent!important;
  color:#bcbcbc!important;
  cursor:pointer!important;
  overflow:visible!important;
  transform:none!important;
  transition:color .15s ease,border-color .15s ease!important;
}
body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-weekdays label:hover{
  background:transparent!important;
  border-color:rgba(255,255,255,.16)!important;
  color:#fff!important;
}
body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-weekdays label:active{
  transform:none!important;
}
body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-weekdays input{
  -webkit-appearance:none!important;
  appearance:none!important;
  position:relative!important;
  inset:auto!important;
  flex:0 0 17px!important;
  width:17px!important;
  height:17px!important;
  min-width:17px!important;
  min-height:17px!important;
  margin:0!important;
  padding:0!important;
  transform:none!important;
  border:1px solid #555!important;
  border-radius:4px!important;
  background:#0b0b0b!important;
  box-shadow:none!important;
  cursor:pointer!important;
  transition:border-color .15s ease,background .15s ease!important;
}
body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-weekdays input::after{
  content:''!important;
  position:absolute!important;
  left:5px!important;
  top:2px!important;
  width:4px!important;
  height:8px!important;
  border:solid #111!important;
  border-width:0 1.7px 1.7px 0!important;
  transform:rotate(45deg) scale(0)!important;
  transform-origin:center!important;
  transition:transform .12s ease!important;
}
body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-weekdays input:checked{
  background:#f2f2f0!important;
  border-color:#f2f2f0!important;
  box-shadow:none!important;
}
body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-weekdays input:checked::after{
  color:initial!important;
  transform:rotate(45deg) scale(1)!important;
}
body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-weekdays input:focus-visible{
  outline:2px solid rgba(255,255,255,.28)!important;
  outline-offset:3px!important;
}
body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-weekdays label:has(input:checked){
  background:transparent!important;
  border-color:rgba(255,255,255,.16)!important;
  color:#fff!important;
}
body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-weekdays label:has(input:checked) span{
  color:#fff!important;
  font-weight:600!important;
}
body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-weekdays label:has(input:checked) input{
  background:#f2f2f0!important;
  border-color:#f2f2f0!important;
  box-shadow:none!important;
}
body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-weekdays label:has(input:checked) input::after{
  border-color:#111!important;
}
@media (max-width:520px){
  body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-weekdays{
    grid-template-columns:1fr!important;
    gap:0!important;
  }
}

/* V25 — iOS-style phone week calendar for admin */
@media (max-width:699px), (pointer:coarse) and (max-width:1000px) and (max-height:560px){
  body.premium-ui.admin-page-body .ios-week-mobile{
    display:grid!important;
    gap:12px!important;
    width:100%!important;
    min-width:0!important;
  }
  body.premium-ui.admin-page-body .ios-week-strip-wrap{
    width:100%!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    scrollbar-width:none!important;
    padding-bottom:2px!important;
  }
  body.premium-ui.admin-page-body .ios-week-strip-wrap::-webkit-scrollbar{display:none!important}
  body.premium-ui.admin-page-body .ios-week-strip{
    display:grid!important;
    grid-auto-flow:column!important;
    grid-auto-columns:minmax(72px,1fr)!important;
    gap:8px!important;
    width:max-content!important;
    min-width:100%!important;
  }
  body.premium-ui.admin-page-body .ios-week-day-chip{
    position:relative!important;
    display:grid!important;
    gap:4px!important;
    justify-items:center!important;
    align-content:center!important;
    min-height:76px!important;
    padding:10px 8px!important;
    background:#15171c!important;
    border:1px solid rgba(255,255,255,.08)!important;
    border-radius:18px!important;
    color:#f3f4f6!important;
    box-shadow:none!important;
    overflow:hidden!important;
  }
  body.premium-ui.admin-page-body .ios-week-day-chip.active{
    background:linear-gradient(180deg,#2a2d35 0%,#202329 100%)!important;
    border-color:rgba(255,255,255,.16)!important;
    box-shadow:0 10px 24px rgba(0,0,0,.24)!important;
  }
  body.premium-ui.admin-page-body .ios-week-day-chip.is-today:not(.active){
    border-color:rgba(10,132,255,.48)!important;
    background:rgba(10,132,255,.08)!important;
  }
  body.premium-ui.admin-page-body .ios-week-day-chip.is-blackout{opacity:.72!important}
  body.premium-ui.admin-page-body .ios-week-day-label{
    font-size:10px!important;
    letter-spacing:.12em!important;
    font-weight:700!important;
    color:#8f96a3!important;
    line-height:1!important;
  }
  body.premium-ui.admin-page-body .ios-week-day-number{
    font-size:22px!important;
    line-height:1!important;
    font-weight:800!important;
    color:#f5f7fa!important;
    font-variant-numeric:tabular-nums!important;
  }
  body.premium-ui.admin-page-body .ios-week-day-meta{
    font-size:10px!important;
    line-height:1.15!important;
    color:#8e95a1!important;
    white-space:nowrap!important;
  }
  body.premium-ui.admin-page-body .ios-week-day-chip.active :is(.ios-week-day-label,.ios-week-day-meta){color:#cbd2dc!important}
  body.premium-ui.admin-page-body .ios-week-day-dot{
    position:absolute!important;
    top:8px!important;
    right:8px!important;
    width:7px!important;
    height:7px!important;
    border-radius:999px!important;
    background:#8e8e93!important;
  }
  body.premium-ui.admin-page-body .ios-week-day-dot.has-bookings{background:#34c759!important}
  body.premium-ui.admin-page-body .ios-week-day-dot.has-blocks{background:#ff9f0a!important}
  body.premium-ui.admin-page-body .ios-week-day-dot.is-blackout{background:#ff453a!important}

  body.premium-ui.admin-page-body .ios-week-day-sheet{
    display:grid!important;
    gap:10px!important;
    padding:12px!important;
    background:#111317!important;
    border:1px solid rgba(255,255,255,.08)!important;
    border-radius:20px!important;
    box-shadow:0 14px 32px rgba(0,0,0,.18)!important;
  }
  body.premium-ui.admin-page-body .ios-week-day-head{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:10px!important;
    align-items:center!important;
    padding-bottom:10px!important;
    border-bottom:1px solid rgba(255,255,255,.08)!important;
  }
  body.premium-ui.admin-page-body .ios-week-day-copy{display:grid!important;gap:3px!important;min-width:0!important}
  body.premium-ui.admin-page-body .ios-week-day-copy small{
    margin:0!important;
    font-size:10px!important;
    font-weight:700!important;
    letter-spacing:.14em!important;
    color:#8c93a0!important;
    text-transform:uppercase!important;
  }
  body.premium-ui.admin-page-body .ios-week-day-copy strong{
    margin:0!important;
    font-size:20px!important;
    line-height:1.1!important;
    color:#f6f7f9!important;
  }
  body.premium-ui.admin-page-body .ios-week-day-summary{
    font-size:11px!important;
    color:#9ba2ad!important;
  }
  body.premium-ui.admin-page-body .ios-week-day-summary.is-blackout{color:#ff8b84!important}
  body.premium-ui.admin-page-body .ios-week-add{
    min-height:40px!important;
    height:40px!important;
    padding:0 14px!important;
    border-radius:12px!important;
    background:#f4f5f7!important;
    border:1px solid #f4f5f7!important;
    color:#14171d!important;
    font-size:12px!important;
    font-weight:800!important;
    box-shadow:none!important;
    white-space:nowrap!important;
  }

  body.premium-ui.admin-page-body .ios-week-empty{
    display:grid!important;
    gap:4px!important;
    padding:18px 12px!important;
    text-align:center!important;
    border:1px dashed rgba(255,255,255,.08)!important;
    border-radius:14px!important;
    background:#15171c!important;
    color:#adb3bc!important;
  }
  body.premium-ui.admin-page-body .ios-week-empty strong{font-size:13px!important;color:#f0f1f3!important}
  body.premium-ui.admin-page-body .ios-week-empty span{font-size:11px!important;color:#8d95a1!important;line-height:1.4!important}
  body.premium-ui.admin-page-body .ios-week-empty.is-blackout strong{color:#ff8c84!important}

  body.premium-ui.admin-page-body .ios-week-agenda{display:grid!important;gap:8px!important}
  body.premium-ui.admin-page-body .ios-week-agenda-item{
    position:relative!important;
    display:grid!important;
    grid-template-columns:62px minmax(0,1fr) 14px!important;
    gap:10px!important;
    align-items:center!important;
    width:100%!important;
    padding:12px 12px 12px 14px!important;
    border:1px solid rgba(255,255,255,.08)!important;
    border-radius:14px!important;
    background:#1a1d23!important;
    color:#fff!important;
    text-align:left!important;
    overflow:hidden!important;
  }
  body.premium-ui.admin-page-body .ios-week-agenda-item::before{
    content:''!important;
    position:absolute!important;
    left:0!important;
    top:10px!important;
    bottom:10px!important;
    width:3px!important;
    border-radius:3px!important;
    background:#8e8e93!important;
  }
  body.premium-ui.admin-page-body .ios-week-agenda-item.calendar-status-confirmed::before{background:#34c759!important}
  body.premium-ui.admin-page-body .ios-week-agenda-item.calendar-status-pending::before{background:#ff9f0a!important}
  body.premium-ui.admin-page-body .ios-week-agenda-item.calendar-status-completed::before{background:#0a84ff!important}
  body.premium-ui.admin-page-body .ios-week-agenda-item.calendar-status-rescheduled::before{background:#bf5af2!important}
  body.premium-ui.admin-page-body .ios-week-agenda-item.is-break::before,
  body.premium-ui.admin-page-body .ios-week-agenda-item.is-blocked::before{background:#8e8e93!important}
  body.premium-ui.admin-page-body :is(.ios-week-agenda-item)[class*="booking-color-"]::before{background:var(--manual-booking-color)!important}
  body.premium-ui.admin-page-body .ios-week-agenda-time{
    font-size:12px!important;
    font-weight:800!important;
    color:#d7dde5!important;
    font-variant-numeric:tabular-nums!important;
  }
  body.premium-ui.admin-page-body .ios-week-agenda-copy{display:grid!important;gap:3px!important;min-width:0!important}
  body.premium-ui.admin-page-body .ios-week-agenda-copy>strong{
    font-size:14px!important;
    color:#f4f5f7!important;
    line-height:1.2!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  body.premium-ui.admin-page-body .ios-week-agenda-copy>small{
    font-size:11px!important;
    color:#8c93a0!important;
    line-height:1.3!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  body.premium-ui.admin-page-body .ios-week-agenda-chips{display:flex!important;flex-wrap:wrap!important;gap:5px!important;margin-top:3px!important}
  body.premium-ui.admin-page-body .ios-week-agenda-chips :is(.status-chip,.payment-chip){min-height:20px!important;padding:3px 6px!important;font-size:8px!important}
  body.premium-ui.admin-page-body .ios-week-chevron{font-size:20px!important;color:#555e69!important;text-align:right!important}

  body.premium-ui.admin-page-body .ios-week-quick{display:grid!important;gap:8px!important;padding-top:2px!important}
  body.premium-ui.admin-page-body .ios-week-quick-title{
    font-size:10px!important;
    font-weight:700!important;
    letter-spacing:.14em!important;
    color:#8c93a0!important;
    text-transform:uppercase!important;
  }
  body.premium-ui.admin-page-body .ios-week-quick-slots{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:8px!important;
    max-height:172px!important;
    overflow:auto!important;
    padding-right:2px!important;
    scrollbar-width:none!important;
  }
  body.premium-ui.admin-page-body .ios-week-quick-slots::-webkit-scrollbar{display:none!important}
  body.premium-ui.admin-page-body .ios-week-slot{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    min-height:40px!important;
    padding:0 10px!important;
    background:#17191f!important;
    border:1px solid rgba(255,255,255,.08)!important;
    border-radius:12px!important;
    color:#eef0f3!important;
    font-size:11px!important;
    font-weight:700!important;
    box-shadow:none!important;
  }
  body.premium-ui.admin-page-body .ios-week-slot span{font-variant-numeric:tabular-nums!important}
  body.premium-ui.admin-page-body .ios-week-slot b{
    width:22px!important;
    height:22px!important;
    border-radius:7px!important;
    display:grid!important;
    place-items:center!important;
    background:#272b33!important;
    color:#fff!important;
    font-size:14px!important;
    line-height:1!important;
  }
}

@media (pointer:coarse) and (max-width:1000px) and (max-height:560px){
  body.premium-ui.admin-page-body .ios-week-mobile{
    grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)!important;
    align-items:start!important;
  }
  body.premium-ui.admin-page-body .ios-week-strip-wrap{grid-column:1 / -1!important}
  body.premium-ui.admin-page-body .ios-week-day-sheet{grid-column:1 / -1!important}
  body.premium-ui.admin-page-body .ios-week-day-head{
    grid-template-columns:minmax(0,1fr) auto!important;
  }
  body.premium-ui.admin-page-body .ios-week-quick-slots{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    max-height:124px!important;
  }
}

/* V26 — flatter premium admin tools UI: better buttons, toggles, checkbox groups, and time controls */
body.premium-ui.admin-page-body .admin-tools-page-panel :is(.tools-form-card,.tools-list-card){
  background:#111317!important;
  border:1px solid rgba(255,255,255,.08)!important;
  border-radius:20px!important;
  box-shadow:none!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel :is(.tools-form-card,.tools-list-card) :is(h4,.tools-section-title){
  color:#f6f7f9!important;
  letter-spacing:-.01em!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel :is(.tools-form-card,.tools-list-card) p,
body.premium-ui.admin-page-body .admin-tools-page-panel :is(.tools-form-card,.tools-list-card) .admin-sub{
  color:#a0a7b2!important;
}

/* Tool-page buttons */
body.premium-ui.admin-page-body .admin-tools-page-panel :is(.btn-next,.btn-primary){
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:46px!important;
  padding:0 16px!important;
  border:1px solid #f4f5f7!important;
  border-radius:12px!important;
  background:#f4f5f7!important;
  color:#15171c!important;
  font-size:13px!important;
  font-weight:800!important;
  line-height:1!important;
  letter-spacing:-.01em!important;
  box-shadow:none!important;
  text-decoration:none!important;
  transition:transform .15s ease,background .15s ease,border-color .15s ease,opacity .15s ease!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel :is(.btn-next,.btn-primary):hover{
  background:#fff!important;
  border-color:#fff!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel :is(.btn-next,.btn-primary):active{
  transform:translateY(1px)!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .admin-link-btn,
body.premium-ui.admin-page-body .admin-tools-page-panel .admin-pill,
body.premium-ui.admin-page-body .admin-tools-page-panel .mini-btn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:42px!important;
  padding:0 14px!important;
  border:1px solid rgba(255,255,255,.10)!important;
  border-radius:12px!important;
  background:#181b21!important;
  color:#edf0f4!important;
  font-size:12px!important;
  font-weight:700!important;
  line-height:1!important;
  box-shadow:none!important;
  text-decoration:none!important;
  transition:background .15s ease,border-color .15s ease,color .15s ease,transform .15s ease!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel :is(.admin-link-btn,.admin-pill,.mini-btn):hover{
  background:#1d2128!important;
  border-color:rgba(255,255,255,.16)!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel :is(.admin-link-btn,.admin-pill,.mini-btn):active{
  transform:translateY(1px)!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel .admin-pill.active{
  background:#242932!important;
  border-color:rgba(255,255,255,.20)!important;
  color:#fff!important;
}

/* Consistent form controls */
body.premium-ui.admin-page-body .admin-tools-page-panel :is(input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),select,textarea){
  background:#15181d!important;
  border:1px solid rgba(255,255,255,.10)!important;
  color:#f6f7f9!important;
  border-radius:14px!important;
  box-shadow:none!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel :is(input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),select,textarea):hover{
  border-color:rgba(255,255,255,.16)!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel :is(input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),select,textarea):focus{
  border-color:rgba(255,255,255,.28)!important;
  box-shadow:0 0 0 3px rgba(255,255,255,.06)!important;
  outline:none!important;
}
body.premium-ui.admin-page-body .admin-tools-page-panel label{
  color:#c5cbd4!important;
}

/* Weekly opening-hours editor */
body.premium-ui.admin-page-body .weekly-hours-grid{
  gap:12px!important;
  margin:14px 0 18px!important;
  border-top:0!important;
}
body.premium-ui.admin-page-body .weekly-hours-row{
  grid-template-columns:minmax(155px,.85fr) minmax(0,1.15fr)!important;
  gap:14px!important;
  min-height:0!important;
  padding:14px!important;
  border:1px solid rgba(255,255,255,.08)!important;
  border-radius:16px!important;
  background:#13161b!important;
}
body.premium-ui.admin-page-body .weekly-hours-row:focus-within{
  border-color:rgba(255,255,255,.16)!important;
  background:#161a20!important;
}
body.premium-ui.admin-page-body .weekly-hours-day{
  gap:12px!important;
  min-height:42px!important;
  font-size:14px!important;
  font-weight:700!important;
  color:#f5f6f8!important;
}
body.premium-ui.admin-page-body .weekly-hours-day span{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important}
body.premium-ui.admin-page-body .weekly-hours-day input{
  width:38px!important;
  height:22px!important;
  min-width:38px!important;
  border:1px solid rgba(255,255,255,.14)!important;
  background:#0f1115!important;
}
body.premium-ui.admin-page-body .weekly-hours-day input::after{
  top:3px!important;
  left:3px!important;
  width:14px!important;
  height:14px!important;
  background:#7d838d!important;
}
body.premium-ui.admin-page-body .weekly-hours-day input:checked{
  background:#f3f4f6!important;
  border-color:#f3f4f6!important;
}
body.premium-ui.admin-page-body .weekly-hours-day input:checked::after{
  left:19px!important;
  background:#15171c!important;
}
body.premium-ui.admin-page-body .weekly-hours-time{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;
}
body.premium-ui.admin-page-body .weekly-hours-time label{
  gap:7px!important;
  color:#99a1ad!important;
  font-size:10px!important;
  font-weight:750!important;
  letter-spacing:.11em!important;
}
body.premium-ui.admin-page-body .weekly-hours-time input[type="time"]{
  width:100%!important;
  min-height:48px!important;
  padding:0 14px!important;
  border-radius:14px!important;
  background:#171a20!important;
  border:1px solid rgba(255,255,255,.10)!important;
  color:#f8f9fb!important;
  font-size:18px!important;
  font-weight:800!important;
  font-variant-numeric:tabular-nums!important;
}
body.premium-ui.admin-page-body .weekly-hours-row.is-closed{
  opacity:1!important;
  background:#101317!important;
  border-color:rgba(255,255,255,.06)!important;
}
body.premium-ui.admin-page-body .weekly-hours-row.is-closed .weekly-hours-time{
  opacity:.42!important;
}
body.premium-ui.admin-page-body .weekly-hours-row.is-closed .weekly-hours-day span::after{
  content:'Κλειστά'!important;
  display:inline-flex!important;
  align-items:center!important;
  min-height:20px!important;
  padding:0 8px!important;
  border:1px solid rgba(255,255,255,.08)!important;
  border-radius:999px!important;
  background:#171a1f!important;
  color:#8f96a1!important;
  font-size:10px!important;
  font-weight:700!important;
  letter-spacing:.04em!important;
}

/* Recurring break weekdays and time fields */
body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-weekdays{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
  margin:12px 0 18px!important;
  padding:0!important;
  background:transparent!important;
}
body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-weekdays label,
body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-weekdays label:nth-child(n){
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  min-height:48px!important;
  padding:0 14px!important;
  border:1px solid rgba(255,255,255,.08)!important;
  border-radius:14px!important;
  background:#14171c!important;
  color:#e7eaef!important;
}
body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-weekdays label:hover{
  background:#181c22!important;
  border-color:rgba(255,255,255,.14)!important;
}
body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-weekdays input{
  position:relative!important;
  inset:auto!important;
  transform:none!important;
  flex:0 0 18px!important;
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  min-height:18px!important;
  border:1px solid rgba(255,255,255,.20)!important;
  border-radius:5px!important;
  background:#0e1014!important;
}
body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-weekdays input::after{
  left:5px!important;
  top:2px!important;
}
body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-weekdays label:has(input:checked){
  background:#1d2128!important;
  border-color:rgba(255,255,255,.18)!important;
  color:#fff!important;
}
body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-weekdays label:has(input:checked) span{
  color:#fff!important;
  font-weight:700!important;
}
body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-select-wrap{
  position:relative!important;
}
body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-time-select{
  height:48px!important;
  min-height:48px!important;
  padding:0 42px 0 14px!important;
  border-radius:14px!important;
  background:#171a20!important;
  border:1px solid rgba(255,255,255,.10)!important;
  color:#f8f9fb!important;
  font-size:16px!important;
  font-weight:800!important;
  box-shadow:none!important;
}
body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-select-wrap::after{
  right:14px!important;
  color:#9ca3ad!important;
  font-size:16px!important;
}

/* Better schedule chips / summaries */
body.premium-ui.admin-page-body .schedule-chip-list{
  display:grid!important;
  gap:10px!important;
}
body.premium-ui.admin-page-body .schedule-chip-list > *{
  padding:12px 14px!important;
  border:1px solid rgba(255,255,255,.08)!important;
  border-radius:14px!important;
  background:#14171c!important;
}
body.premium-ui.admin-page-body .schedule-rule-line{
  min-height:40px!important;
  padding:9px 0!important;
}
body.premium-ui.admin-page-body .schedule-rule-line strong{
  color:#b8bec7!important;
  font-size:11px!important;
}

/* Mobile tightening for tool pages */
@media (max-width:760px){
  body.premium-ui.admin-page-body .admin-tools-page-panel :is(.btn-next,.btn-primary,.admin-link-btn,.admin-pill,.mini-btn){
    min-height:44px!important;
    padding:0 13px!important;
    border-radius:12px!important;
    font-size:12px!important;
  }
  body.premium-ui.admin-page-body .weekly-hours-row{
    grid-template-columns:1fr!important;
    gap:12px!important;
    padding:13px!important;
  }
  body.premium-ui.admin-page-body .weekly-hours-time{
    grid-template-columns:1fr 1fr!important;
  }
  body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-weekdays{
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
}
@media (max-width:430px){
  body.premium-ui.admin-page-body .weekly-hours-time,
  body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-time-grid{
    grid-template-columns:1fr!important;
  }
  body.premium-ui.admin-page-body .weekly-hours-time input[type="time"],
  body.premium-ui.admin-page-body .recurring-break-editor .recurring-break-time-select{
    min-height:46px!important;
    font-size:16px!important;
  }
}

/* V27 — iPhone-style mobile week timeline + drag & drop move */
@media (max-width:699px), (pointer:coarse) and (max-width:1000px) and (max-height:560px){
  body.premium-ui.admin-page-body .scheduler-card .scheduler-board-wrap,
  body.premium-ui.admin-page-body .scheduler-card #scheduler-board{
    overflow:visible!important;
  }
  body.premium-ui.admin-page-body .ios-week-timeline-mobile{
    display:grid!important;
    gap:12px!important;
    width:100%!important;
    min-width:0!important;
  }
  body.premium-ui.admin-page-body .ios-week-strip-wrap{
    overflow-x:auto!important;
    overflow-y:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    scrollbar-width:none!important;
    padding-bottom:2px!important;
  }
  body.premium-ui.admin-page-body .ios-week-strip-wrap::-webkit-scrollbar{display:none!important}
  body.premium-ui.admin-page-body .ios-week-strip{
    display:grid!important;
    grid-auto-flow:column!important;
    grid-auto-columns:minmax(62px,1fr)!important;
    gap:8px!important;
    width:max-content!important;
    min-width:100%!important;
  }
  body.premium-ui.admin-page-body .ios-week-day-chip{
    display:grid!important;
    place-items:center!important;
    gap:3px!important;
    min-height:84px!important;
    padding:10px 8px!important;
    border:1px solid rgba(255,255,255,.10)!important;
    border-radius:22px!important;
    background:#111317!important;
    color:#fff!important;
    box-shadow:none!important;
    transition:background .16s ease,border-color .16s ease,transform .16s ease!important;
  }
  body.premium-ui.admin-page-body .ios-week-day-chip.active{
    background:#1b1d22!important;
    border-color:rgba(255,255,255,.18)!important;
  }
  body.premium-ui.admin-page-body .ios-week-day-chip.is-drop-hover{
    border-color:#ff4d57!important;
    box-shadow:0 0 0 2px rgba(255,77,87,.16)!important;
  }
  body.premium-ui.admin-page-body .ios-week-day-chip.is-today:not(.active) .ios-week-day-number{
    color:#ff4d57!important;
  }
  body.premium-ui.admin-page-body .ios-week-day-chip.is-blackout{opacity:.56!important}
  body.premium-ui.admin-page-body .ios-week-day-label{
    font-size:11px!important;
    font-weight:800!important;
    letter-spacing:.08em!important;
    color:#9aa1ab!important;
    text-transform:uppercase!important;
  }
  body.premium-ui.admin-page-body .ios-week-day-number{
    width:38px!important;
    height:38px!important;
    display:grid!important;
    place-items:center!important;
    border-radius:999px!important;
    font-size:19px!important;
    font-weight:800!important;
    color:#f4f6f9!important;
    font-variant-numeric:tabular-nums!important;
  }
  body.premium-ui.admin-page-body .ios-week-day-chip.active .ios-week-day-number{
    background:#ff4d57!important;
    color:#fff!important;
  }
  body.premium-ui.admin-page-body .ios-week-day-meta{
    font-size:9px!important;
    color:#7f8792!important;
    white-space:nowrap!important;
  }

  body.premium-ui.admin-page-body .ios-week-title-row{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:center!important;
    gap:10px!important;
    padding:0 2px!important;
  }
  body.premium-ui.admin-page-body .ios-week-title-row strong{
    color:#f7f8fa!important;
    font-size:17px!important;
    line-height:1.2!important;
    letter-spacing:-.02em!important;
  }
  body.premium-ui.admin-page-body .ios-week-add-btn{
    min-height:38px!important;
    height:38px!important;
    padding:0 12px!important;
    border-radius:999px!important;
    background:#111317!important;
    border:1px solid rgba(255,255,255,.10)!important;
    color:#eef1f5!important;
    font-size:11px!important;
    font-weight:800!important;
    box-shadow:none!important;
  }

  body.premium-ui.admin-page-body .ios-week-timeline-shell{
    border-top:1px solid rgba(255,255,255,.08)!important;
    padding-top:10px!important;
  }
  body.premium-ui.admin-page-body .ios-week-timeline{
    position:relative!important;
    padding-left:68px!important;
  }
  body.premium-ui.admin-page-body .ios-hour-row{
    position:absolute!important;
    left:0!important;
    right:0!important;
  }
  body.premium-ui.admin-page-body .ios-hour-label{
    position:absolute!important;
    left:0!important;
    top:-9px!important;
    width:60px!important;
    text-align:left!important;
    color:#848b96!important;
    font-size:11px!important;
    font-weight:700!important;
    letter-spacing:.01em!important;
  }
  body.premium-ui.admin-page-body .ios-hour-line{
    position:absolute!important;
    left:68px!important;
    right:0!important;
    top:0!important;
    height:1px!important;
    background:rgba(255,255,255,.08)!important;
  }
  body.premium-ui.admin-page-body .ios-week-drop-slot{
    position:absolute!important;
    left:68px!important;
    right:0!important;
    padding:0!important;
    margin:0!important;
    border:0!important;
    background:transparent!important;
    border-radius:10px!important;
    z-index:1!important;
  }
  body.premium-ui.admin-page-body .ios-week-drop-slot.is-drop-hover{
    background:rgba(255,77,87,.10)!important;
    outline:1px dashed rgba(255,77,87,.55)!important;
    outline-offset:-2px!important;
  }
  body.premium-ui.admin-page-body .ios-current-line{
    position:absolute!important;
    left:68px!important;
    right:0!important;
    height:0!important;
    z-index:4!important;
  }
  body.premium-ui.admin-page-body .ios-current-line i{
    position:absolute!important;
    left:0!important;
    right:0!important;
    top:0!important;
    height:2px!important;
    background:#ff4d57!important;
  }
  body.premium-ui.admin-page-body .ios-current-line span{
    position:absolute!important;
    left:-58px!important;
    top:-11px!important;
    min-height:22px!important;
    padding:0 8px!important;
    border-radius:999px!important;
    background:#ff4d57!important;
    color:#fff!important;
    font-size:11px!important;
    font-weight:800!important;
    display:inline-flex!important;
    align-items:center!important;
  }

  body.premium-ui.admin-page-body .ios-timeline-event{
    position:absolute!important;
    left:74px!important;
    right:8px!important;
    display:grid!important;
    gap:3px!important;
    align-content:start!important;
    padding:9px 10px!important;
    border-radius:14px!important;
    border:1px solid rgba(255,255,255,.08)!important;
    background:#1d2128!important;
    color:#fff!important;
    text-align:left!important;
    z-index:3!important;
    overflow:hidden!important;
    box-shadow:none!important;
  }
  body.premium-ui.admin-page-body .ios-timeline-event::before{
    content:''!important;
    position:absolute!important;
    left:0!important;
    top:0!important;
    bottom:0!important;
    width:4px!important;
    background:#8e8e93!important;
  }
  body.premium-ui.admin-page-body .ios-timeline-event.calendar-status-confirmed::before{background:#34c759!important}
  body.premium-ui.admin-page-body .ios-timeline-event.calendar-status-pending::before{background:#ff9f0a!important}
  body.premium-ui.admin-page-body .ios-timeline-event.calendar-status-completed::before{background:#0a84ff!important}
  body.premium-ui.admin-page-body .ios-timeline-event.calendar-status-rescheduled::before{background:#bf5af2!important}
  body.premium-ui.admin-page-body .ios-timeline-event.is-break::before,
  body.premium-ui.admin-page-body .ios-timeline-event.is-blocked::before{background:#8e8e93!important}
  body.premium-ui.admin-page-body :is(.ios-timeline-event)[class*="booking-color-"]::before{background:var(--manual-booking-color)!important}
  body.premium-ui.admin-page-body .ios-timeline-event.is-drag-source{opacity:.30!important}
  body.premium-ui.admin-page-body .ios-timeline-event.is-drag-ghost{
    position:fixed!important;
    left:0!important;
    top:0!important;
    right:auto!important;
    margin:0!important;
    z-index:9999!important;
    pointer-events:none!important;
    opacity:.96!important;
    box-shadow:0 18px 40px rgba(0,0,0,.30)!important;
    transform:rotate(-1deg)!important;
  }
  body.premium-ui.admin-page-body .ios-timeline-time{
    color:#d0d5dc!important;
    font-size:11px!important;
    font-weight:800!important;
    font-variant-numeric:tabular-nums!important;
  }
  body.premium-ui.admin-page-body .ios-timeline-event strong{
    color:#fff!important;
    font-size:13px!important;
    line-height:1.2!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  body.premium-ui.admin-page-body .ios-timeline-event small{
    color:#9ca4af!important;
    font-size:10px!important;
    line-height:1.25!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  body.premium-ui.admin-page-body .ios-timeline-hint{
    color:#ffb2b6!important;
    font-size:9px!important;
    font-style:normal!important;
    font-weight:700!important;
    line-height:1.2!important;
  }
  body.premium-ui.admin-page-body .ios-week-empty-state{
    display:grid!important;
    gap:4px!important;
    padding:18px 12px!important;
    border:1px dashed rgba(255,255,255,.10)!important;
    border-radius:16px!important;
    text-align:center!important;
    background:#111317!important;
    color:#c4cad3!important;
  }
  body.premium-ui.admin-page-body .ios-week-empty-state strong{color:#fff!important;font-size:14px!important}
  body.premium-ui.admin-page-body .ios-week-empty-state span{color:#929aa6!important;font-size:11px!important;line-height:1.4!important}
}

body.admin-mobile-dragging,
body.admin-mobile-dragging *{
  user-select:none!important;
  -webkit-user-select:none!important;
}
body.premium-ui.admin-page-body .sr-only{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}

/* V28 — mobile month calendar fix + richer day previews */
body.premium-ui.admin-page-body .premium-month-mobile{
  background:#111317!important;
  border:1px solid rgba(255,255,255,.08)!important;
  border-radius:20px!important;
  padding:12px 10px 10px!important;
}
body.premium-ui.admin-page-body .premium-month-mobile .ios-calendar-grid{
  gap:5px!important;
}
body.premium-ui.admin-page-body .premium-month-mobile .ios-calendar-day{
  min-height:84px!important;
  padding:6px 4px 5px!important;
  align-items:stretch!important;
  justify-content:flex-start!important;
  gap:4px!important;
  border:1px solid rgba(255,255,255,.06)!important;
  border-radius:14px!important;
  background:#14171c!important;
  text-align:left!important;
}
body.premium-ui.admin-page-body .premium-month-mobile .ios-calendar-day.is-selected{
  background:#1b1f26!important;
  border-color:rgba(255,255,255,.18)!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)!important;
}
body.premium-ui.admin-page-body .premium-month-mobile .ios-calendar-day.is-outside{
  opacity:.42!important;
  background:#101216!important;
}
body.premium-ui.admin-page-body .premium-month-mobile .ios-calendar-topline{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:4px!important;
}
body.premium-ui.admin-page-body .premium-month-mobile .ios-calendar-number{
  width:26px!important;
  height:26px!important;
  margin-left:0!important;
  font-size:12px!important;
  font-weight:800!important;
}
body.premium-ui.admin-page-body .premium-month-mobile .ios-day-count{
  min-width:18px!important;
  height:18px!important;
  padding:0 5px!important;
  border-radius:999px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:#262b33!important;
  color:#fff!important;
  font-size:9px!important;
  font-weight:800!important;
  line-height:1!important;
}
body.premium-ui.admin-page-body .premium-month-mobile .ios-event-dots{
  justify-content:flex-start!important;
  min-height:6px!important;
}
body.premium-ui.admin-page-body .premium-month-mobile .ios-month-preview{
  display:grid!important;
  gap:4px!important;
  min-width:0!important;
  margin-top:auto!important;
}
body.premium-ui.admin-page-body .premium-month-mobile .ios-month-chip{
  position:relative!important;
  display:grid!important;
  grid-template-columns:30px minmax(0,1fr)!important;
  align-items:center!important;
  gap:4px!important;
  min-height:22px!important;
  padding:4px 5px 4px 8px!important;
  border-radius:8px!important;
  background:#1f232b!important;
  border:1px solid rgba(255,255,255,.07)!important;
  color:#f5f7fa!important;
  overflow:hidden!important;
}
body.premium-ui.admin-page-body .premium-month-mobile .ios-month-chip::before{
  content:''!important;
  position:absolute!important;
  left:0!important;
  top:0!important;
  bottom:0!important;
  width:3px!important;
  background:#8e8e93!important;
}
body.premium-ui.admin-page-body .premium-month-mobile .ios-month-chip.calendar-status-confirmed::before{background:#34c759!important}
body.premium-ui.admin-page-body .premium-month-mobile .ios-month-chip.calendar-status-pending::before{background:#ff9f0a!important}
body.premium-ui.admin-page-body .premium-month-mobile .ios-month-chip.calendar-status-completed::before{background:#0a84ff!important}
body.premium-ui.admin-page-body .premium-month-mobile .ios-month-chip.calendar-status-rescheduled::before{background:#bf5af2!important}
body.premium-ui.admin-page-body .premium-month-mobile .ios-month-chip.is-blocked::before,
body.premium-ui.admin-page-body .premium-month-mobile .ios-month-chip.is-blackout::before{background:#8e8e93!important}
body.premium-ui.admin-page-body .premium-month-mobile .ios-month-chip[class*="booking-color-"]::before{background:var(--manual-booking-color)!important}
body.premium-ui.admin-page-body .premium-month-mobile .ios-month-chip b{
  font-size:8px!important;
  font-weight:800!important;
  color:#c7ced7!important;
  font-variant-numeric:tabular-nums!important;
}
body.premium-ui.admin-page-body .premium-month-mobile .ios-month-chip i{
  min-width:0!important;
  font-style:normal!important;
  font-size:9px!important;
  font-weight:700!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  color:#f4f6f8!important;
}
body.premium-ui.admin-page-body .premium-month-mobile .ios-month-chip.is-blackout{
  grid-template-columns:1fr!important;
  padding-left:9px!important;
}
body.premium-ui.admin-page-body .premium-month-mobile .ios-month-more,
body.premium-ui.admin-page-body .premium-month-mobile .ios-month-empty-label{
  display:inline-flex!important;
  align-items:center!important;
  min-height:18px!important;
  color:#8f97a2!important;
  font-size:9px!important;
  font-weight:700!important;
  line-height:1!important;
}
body.premium-ui.admin-page-body .premium-month-mobile .ios-month-more{color:#d0d5dc!important}

@media (max-width:430px){
  body.premium-ui.admin-page-body .premium-month-mobile{padding:10px 8px 8px!important}
  body.premium-ui.admin-page-body .premium-month-mobile .ios-calendar-grid{gap:4px!important}
  body.premium-ui.admin-page-body .premium-month-mobile .ios-calendar-day{min-height:78px!important;padding:5px 3px 4px!important;border-radius:12px!important}
  body.premium-ui.admin-page-body .premium-month-mobile .ios-calendar-number{width:24px!important;height:24px!important;font-size:11px!important}
  body.premium-ui.admin-page-body .premium-month-mobile .ios-day-count{min-width:16px!important;height:16px!important;font-size:8px!important;padding:0 4px!important}
  body.premium-ui.admin-page-body .premium-month-mobile .ios-month-chip{grid-template-columns:27px minmax(0,1fr)!important;min-height:20px!important;padding:3px 4px 3px 7px!important}
  body.premium-ui.admin-page-body .premium-month-mobile .ios-month-chip b{font-size:7px!important}
  body.premium-ui.admin-page-body .premium-month-mobile .ios-month-chip i{font-size:8px!important}
  body.premium-ui.admin-page-body .premium-month-mobile .ios-month-more,
  body.premium-ui.admin-page-body .premium-month-mobile .ios-month-empty-label{font-size:8px!important}
}

/* V29 — mobile month preview chips are tappable */
body.premium-ui.admin-page-body .premium-month-mobile .ios-month-chip,
body.premium-ui.admin-page-body .premium-month-mobile .ios-month-more,
body.premium-ui.admin-page-body .premium-month-mobile .ios-month-empty-label{
  cursor:pointer!important;
  pointer-events:auto!important;
}
body.premium-ui.admin-page-body .premium-month-mobile .ios-month-chip:active,
body.premium-ui.admin-page-body .premium-month-mobile .ios-month-more:active,
body.premium-ui.admin-page-body .premium-month-mobile .ios-month-empty-label:active{
  transform:scale(.985)!important;
  opacity:.92!important;
}

/* V30 — remove mobile drag + restore old month logic with cleaner UI */
@media (max-width:760px), (pointer:coarse) and (max-width:1180px), (pointer:coarse) and (max-height:900px){
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month{
    width:100%!important;
    min-width:0!important;
    grid-template-columns:repeat(7,minmax(0,1fr))!important;
    grid-template-rows:30px repeat(6,minmax(86px,auto))!important;
    gap:4px!important;
    background:transparent!important;
    border:0!important;
    padding:0!important;
  }
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month .scheduler-month-head{
    display:grid!important;
    place-items:center!important;
    min-height:26px!important;
    background:transparent!important;
    border:0!important;
    color:#8f96a1!important;
    font-size:9px!important;
    font-weight:800!important;
    letter-spacing:.11em!important;
    text-transform:uppercase!important;
  }
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month .scheduler-month-cell{
    min-width:0!important;
    min-height:88px!important;
    padding:5px!important;
    border:1px solid rgba(255,255,255,.07)!important;
    border-radius:14px!important;
    background:#14171c!important;
    overflow:hidden!important;
    display:grid!important;
    grid-template-rows:auto 1fr!important;
    gap:5px!important;
  }
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month .scheduler-month-cell.is-outside{
    opacity:.42!important;
    background:#101216!important;
  }
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month .scheduler-month-cell.is-selected{
    background:#1b1f26!important;
    border-color:rgba(255,255,255,.18)!important;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)!important;
  }
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month .scheduler-month-cell.is-today .scheduler-month-date{
    background:#f4f5f7!important;
    color:#111317!important;
  }
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month .scheduler-month-top{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:4px!important;
    min-height:24px!important;
  }
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month .scheduler-month-date-btn{
    min-width:0!important;
    padding:0!important;
    background:transparent!important;
    border:0!important;
  }
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month .scheduler-month-date{
    width:24px!important;
    height:24px!important;
    display:grid!important;
    place-items:center!important;
    border-radius:999px!important;
    font-size:11px!important;
    font-weight:800!important;
    color:#f5f7fa!important;
  }
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month .scheduler-month-count-badge{
    min-width:16px!important;
    height:16px!important;
    padding:0 4px!important;
    border-radius:999px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    background:#272c34!important;
    color:#fff!important;
    font-size:8px!important;
    font-weight:800!important;
  }
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month .scheduler-month-add{
    width:22px!important;
    height:22px!important;
    min-height:22px!important;
    padding:0!important;
    border-radius:7px!important;
    background:#232830!important;
    border:1px solid rgba(255,255,255,.09)!important;
    color:#f6f7f9!important;
    font-size:14px!important;
    font-weight:800!important;
  }
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month .scheduler-month-events{
    display:grid!important;
    gap:4px!important;
    align-content:start!important;
    min-height:0!important;
  }
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month :is(.scheduler-month-pill,.scheduler-month-empty,.scheduler-month-more){
    width:100%!important;
    min-width:0!important;
    margin:0!important;
  }
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month .scheduler-month-pill{
    position:relative!important;
    min-height:24px!important;
    height:auto!important;
    padding:4px 5px 4px 8px!important;
    border-radius:8px!important;
    border:1px solid rgba(255,255,255,.07)!important;
    background:#1f232b!important;
    color:#f5f7fa!important;
    display:grid!important;
    grid-template-columns:27px minmax(0,1fr)!important;
    grid-template-rows:auto auto!important;
    column-gap:4px!important;
    text-align:left!important;
    overflow:hidden!important;
    box-shadow:none!important;
  }
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month .scheduler-month-pill::before{
    content:''!important;
    position:absolute!important;
    left:0!important;
    top:0!important;
    bottom:0!important;
    width:3px!important;
    background:#8e8e93!important;
  }
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month .scheduler-month-pill.is-booking-pill.calendar-status-confirmed::before{background:#34c759!important}
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month .scheduler-month-pill.is-booking-pill.calendar-status-pending::before{background:#ff9f0a!important}
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month .scheduler-month-pill.is-booking-pill.calendar-status-completed::before{background:#0a84ff!important}
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month .scheduler-month-pill.is-booking-pill.calendar-status-rescheduled::before{background:#bf5af2!important}
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month .scheduler-month-pill.is-booking-pill.calendar-status-no_show::before{background:#8e8e93!important}
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month .scheduler-month-pill.is-block-pill::before,
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month .scheduler-month-pill.is-blackout-pill::before{background:#8e8e93!important}
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month .scheduler-month-pill[class*="booking-color-"]::before{background:var(--manual-booking-color)!important}
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month .scheduler-month-pill>span{
    grid-row:1 / 3!important;
    align-self:center!important;
    font-size:7px!important;
    font-weight:800!important;
    color:#c2c9d2!important;
    font-variant-numeric:tabular-nums!important;
  }
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month .scheduler-month-pill strong{
    font-size:8.5px!important;
    line-height:1.15!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    color:#f5f7fa!important;
  }
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month .scheduler-month-pill em{
    font-size:7.5px!important;
    line-height:1.1!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    color:#9098a4!important;
    font-style:normal!important;
  }
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month .scheduler-month-more,
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month .scheduler-month-empty{
    min-height:18px!important;
    height:auto!important;
    padding:2px 0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    color:#8d95a0!important;
    font-size:8px!important;
    font-weight:800!important;
    justify-content:flex-start!important;
    text-align:left!important;
  }
}

@media (max-width:430px){
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month{
    grid-template-rows:28px repeat(6,minmax(80px,auto))!important;
    gap:3px!important;
  }
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month .scheduler-month-cell{
    min-height:82px!important;
    padding:4px!important;
    border-radius:12px!important;
  }
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month .scheduler-month-date{
    width:22px!important;
    height:22px!important;
    font-size:10px!important;
  }
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month .scheduler-month-pill{
    grid-template-columns:24px minmax(0,1fr)!important;
    padding:3px 4px 3px 7px!important;
    min-height:22px!important;
  }
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month .scheduler-month-pill>span{font-size:6.5px!important}
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month .scheduler-month-pill strong{font-size:8px!important}
  body.premium-ui.admin-page-body .scheduler-month-grid.is-compact-touch-month .scheduler-month-pill em{font-size:7px!important}
}

/* V31 — booking drawer clearer and prettier on mobile */
body.premium-ui.admin-page-body #drawer-form .drawer-section-title{
  margin:6px 0 2px!important;
  color:#959daa!important;
  font-size:10px!important;
  font-weight:800!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
}
body.premium-ui.admin-page-body #booking-drawer .admin-drawer-panel{
  background:#101317!important;
  border:1px solid rgba(255,255,255,.08)!important;
}
body.premium-ui.admin-page-body #drawer-form{
  gap:10px!important;
}
body.premium-ui.admin-page-body #drawer-form .admin-form-grid,
body.premium-ui.admin-page-body #drawer-form .form-group,
body.premium-ui.admin-page-body #drawer-form .booking-color-field,
body.premium-ui.admin-page-body #drawer-form .drawer-reschedule-card,
body.premium-ui.admin-page-body #drawer-form .drawer-meta{
  background:#14181e!important;
  border:1px solid rgba(255,255,255,.07)!important;
  border-radius:16px!important;
}
body.premium-ui.admin-page-body #drawer-form .admin-form-grid{
  padding:10px!important;
}
body.premium-ui.admin-page-body #drawer-form .form-group{
  padding:10px!important;
}
body.premium-ui.admin-page-body #drawer-form .admin-form-grid .form-group{
  background:#161a20!important;
  padding:10px!important;
  border-radius:14px!important;
  border:1px solid rgba(255,255,255,.06)!important;
}
body.premium-ui.admin-page-body #drawer-form .booking-color-field,
body.premium-ui.admin-page-body #drawer-form .drawer-reschedule-card,
body.premium-ui.admin-page-body #drawer-form .drawer-meta{
  padding:12px!important;
}
body.premium-ui.admin-page-body #drawer-form .form-group label{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:8px!important;
  margin-bottom:6px!important;
  color:#b0b7c2!important;
  font-size:10px!important;
  font-weight:800!important;
  letter-spacing:.11em!important;
  text-transform:uppercase!important;
}
body.premium-ui.admin-page-body #drawer-form :is(input,select,textarea){
  min-height:44px!important;
  border-radius:12px!important;
  background:#0f1217!important;
  border:1px solid rgba(255,255,255,.10)!important;
  color:#f6f7f9!important;
  box-shadow:none!important;
}
body.premium-ui.admin-page-body #drawer-form textarea[name="notes"]{
  min-height:88px!important;
  height:88px!important;
}
body.premium-ui.admin-page-body #drawer-form :is(input,select,textarea):focus{
  border-color:rgba(255,255,255,.22)!important;
  box-shadow:0 0 0 3px rgba(255,255,255,.05)!important;
}
body.premium-ui.admin-page-body #drawer-form .field-optional{
  color:#8b93a0!important;
  font-size:9px!important;
  font-weight:700!important;
  letter-spacing:.04em!important;
}
body.premium-ui.admin-page-body #drawer-form .field-help{
  margin-top:6px!important;
  color:#8d95a1!important;
  font-size:11px!important;
  line-height:1.45!important;
}
body.premium-ui.admin-page-body #drawer-form .booking-color-picker{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:8px!important;
  margin-top:8px!important;
}
body.premium-ui.admin-page-body #drawer-form .booking-color-option{
  min-height:58px!important;
  padding:8px 6px!important;
  border-radius:14px!important;
  border:1px solid rgba(255,255,255,.08)!important;
  background:#171b21!important;
  display:grid!important;
  justify-items:center!important;
  align-content:center!important;
  gap:5px!important;
}
body.premium-ui.admin-page-body #drawer-form .booking-color-option span{
  width:18px!important;
  height:18px!important;
}
body.premium-ui.admin-page-body #drawer-form .booking-color-option small{
  font-size:10px!important;
  font-weight:700!important;
  color:#d7dbe2!important;
}
body.premium-ui.admin-page-body #drawer-form .booking-color-option.active{
  border-color:rgba(255,255,255,.18)!important;
  background:#20252d!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.07)!important;
}
body.premium-ui.admin-page-body .drawer-reschedule-card{
  display:grid!important;
  gap:12px!important;
}
body.premium-ui.admin-page-body .drawer-reschedule-head{
  align-items:center!important;
}
body.premium-ui.admin-page-body .drawer-reschedule-label{
  color:#8f97a2!important;
  font-size:10px!important;
  font-weight:800!important;
  letter-spacing:.13em!important;
}
body.premium-ui.admin-page-body #drawer-reschedule-current{
  color:#fff!important;
  font-size:15px!important;
  font-weight:800!important;
}
body.premium-ui.admin-page-body .drawer-reschedule-toggle{
  min-height:40px!important;
  padding:0 14px!important;
  border-radius:12px!important;
}
body.premium-ui.admin-page-body #drawer-form .drawer-meta{
  color:#c3c9d1!important;
  background:#151920!important!important;
}
body.premium-ui.admin-page-body #drawer-form .drawer-actions{
  position:sticky!important;
  bottom:0!important;
  z-index:8!important;
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:10px!important;
  margin-top:6px!important;
  padding:12px!important;
  border-radius:18px 18px 0 0!important;
  background:linear-gradient(180deg,rgba(16,19,23,.82) 0%, rgba(16,19,23,.97) 28%, #101317 100%)!important;
  border-top:1px solid rgba(255,255,255,.08)!important;
  backdrop-filter:blur(10px)!important;
  -webkit-backdrop-filter:blur(10px)!important;
}
body.premium-ui.admin-page-body #drawer-form .drawer-actions :is(.admin-link-btn,.btn-primary){
  min-height:48px!important;
  border-radius:14px!important;
  font-size:13px!important;
  font-weight:800!important;
}
body.premium-ui.admin-page-body #drawer-form .drawer-actions .admin-link-btn{
  background:#191d24!important;
  border:1px solid rgba(255,255,255,.10)!important;
  color:#eef1f5!important;
}
body.premium-ui.admin-page-body #drawer-form .drawer-actions .btn-primary{
  background:#f3f4f6!important;
  border:1px solid #f3f4f6!important;
  color:#111317!important;
}

@media (max-width:699px){
  body.premium-ui.admin-page-body #booking-drawer{
    align-items:flex-end!important;
  }
  body.premium-ui.admin-page-body #booking-drawer .admin-drawer-panel{
    width:100%!important;
    max-width:none!important;
    max-height:92dvh!important;
    border-radius:24px 24px 0 0!important;
    padding:12px 12px calc(12px + env(safe-area-inset-bottom))!important;
    overflow:auto!important;
  }
  body.premium-ui.admin-page-body #booking-drawer .admin-drawer-head{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:10px!important;
    align-items:start!important;
    padding:4px 2px 12px!important;
    margin:0 0 10px!important;
    background:linear-gradient(180deg,#101317 0%, #101317 75%, rgba(16,19,23,.88) 100%)!important;
    backdrop-filter:blur(10px)!important;
    -webkit-backdrop-filter:blur(10px)!important;
  }
  body.premium-ui.admin-page-body #booking-drawer .admin-drawer-head h3{
    font-size:21px!important;
    line-height:1.08!important;
  }
  body.premium-ui.admin-page-body #booking-drawer .admin-drawer-head .admin-sub{
    font-size:9px!important;
  }
  body.premium-ui.admin-page-body #booking-drawer .admin-drawer-head .admin-link-btn{
    min-height:38px!important;
    padding:0 12px!important;
    border-radius:12px!important;
  }
  body.premium-ui.admin-page-body #drawer-form{
    gap:12px!important;
  }
  body.premium-ui.admin-page-body #drawer-form .admin-form-grid{
    grid-template-columns:1fr!important;
    gap:8px!important;
    padding:8px!important;
  }
  body.premium-ui.admin-page-body #drawer-form .form-group,
  body.premium-ui.admin-page-body #drawer-form .admin-form-grid .form-group{
    padding:10px!important;
    border-radius:14px!important;
  }
  body.premium-ui.admin-page-body #drawer-form .booking-color-picker{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:7px!important;
  }
  body.premium-ui.admin-page-body #drawer-form .booking-color-option{
    min-height:56px!important;
    padding:8px 4px!important;
  }
  body.premium-ui.admin-page-body #drawer-form .booking-color-option small{
    font-size:9px!important;
  }
  body.premium-ui.admin-page-body #drawer-form .drawer-actions{
    grid-template-columns:1fr!important;
    gap:8px!important;
    padding:10px 0 calc(10px + env(safe-area-inset-bottom))!important;
    border-radius:0!important;
    background:linear-gradient(180deg,rgba(16,19,23,.2) 0%, rgba(16,19,23,.95) 22%, #101317 100%)!important;
  }
}

@media (max-width:390px){
  body.premium-ui.admin-page-body #drawer-form .booking-color-picker{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
  body.premium-ui.admin-page-body #drawer-form :is(input,select,textarea){
    min-height:42px!important;
    font-size:13px!important;
  }
}

/* V32 — keep booking drawer header pinned while scrolling */
body.premium-ui.admin-page-body #booking-drawer .admin-drawer-panel{
  position:relative!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  overscroll-behavior:contain!important;
  -webkit-overflow-scrolling:touch!important;
}
body.premium-ui.admin-page-body #booking-drawer .admin-drawer-head{
  margin:0!important;
  padding:12px 2px 12px!important;
  background:#101317!important;
  border-
  box-shadow:0 8px 18px rgba(0,0,0,.14)!important;
}
@media (max-width:699px){
  body.premium-ui.admin-page-body #booking-drawer .admin-drawer-panel{
    height:min(92dvh,920px)!important;
    max-height:92dvh!important;
    overflow-y:auto!important;
  }
  body.premium-ui.admin-page-body #booking-drawer .admin-drawer-head{
    margin:0 -2px 10px!important;
    padding:8px 2px 12px!important;
    background:#101317!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
}

/* V33 — booking drawer header scrolls normally (not sticky) */
body.premium-ui.admin-page-body #booking-drawer .admin-drawer-head{
  margin:0 0 10px!important;
  padding:4px 2px 12px!important;
  background:transparent!important;
  border-
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
@media (max-width:699px){
  body.premium-ui.admin-page-body #booking-drawer .admin-drawer-head{
    margin:0 0 10px!important;
    padding:4px 2px 12px!important;
    background:transparent!important;
  }
}

/* V34 — tablet week appointment cards: slightly more compact + reliable tap target */
@media (pointer:coarse) and (min-width:700px) and (max-width:1366px){
  body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-item.booking{
    position:relative!important;
    z-index:4!important;
    min-height:34px!important;
    padding:4px 7px!important;
    border-radius:8px!important;
    font-size:9.5px!important;
    line-height:1.25!important;
    touch-action:manipulation!important;
    -webkit-tap-highlight-color:transparent!important;
    cursor:pointer!important;
  }
  body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-item.booking small{
    margin-top:2px!important;
    font-size:8px!important;
    line-height:1.2!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-item.booking:active{
    transform:scale(.985)!important;
    filter:brightness(1.05)!important;
  }
}

/* V36 — tablet week booking cards: show time clearly + reliable tap */
@media (pointer:coarse) and (min-width:700px) and (max-width:1366px){
  body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-cell{
    overflow:visible!important;
  }
  body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-item.booking{
    position:relative!important;
    z-index:6!important;
    min-height:36px!important;
    padding:5px 8px!important;
    border-radius:9px!important;
    align-items:flex-start!important;
    justify-content:flex-start!important;
  }
  body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-item.booking .scheduler-item-title{
    display:block!important;
    width:100%!important;
    font-size:10px!important;
    font-weight:800!important;
    line-height:1.2!important;
    color:#f3f4f6!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-item.booking small{
    display:grid!important;
    gap:1px!important;
    width:100%!important;
    margin-top:2px!important;
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
  }
  body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-item.booking .scheduler-booking-time{
    display:block!important;
    font-size:8px!important;
    font-weight:800!important;
    line-height:1.15!important;
    color:#d7dbe2!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-item.booking .scheduler-booking-service{
    display:block!important;
    font-size:7.5px!important;
    line-height:1.15!important;
    color:#9199a4!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  body.premium-ui.admin-page-body .scheduler-grid:not(.scheduler-month-grid) .scheduler-item.booking:active{
    transform:scale(.985)!important;
    filter:brightness(1.06)!important;
  }
}

/* =========================================================
   V41 — CUSTOMER PORTAL / "MY BOOKINGS"
   Phone login + fast rebooking + session-protected cancellation.
   ========================================================= */
body.premium-ui:not(.admin-page-body) #mybookings-overlay{
  --cp-bg:#f2f1ec;
  --cp-surface:#ffffff;
  --cp-ink:#18191b;
  --cp-muted:#6d706b;
  --cp-line:#d9d9d3;
  --cp-soft:#e9e8e2;
  --cp-danger:#9f2f2f;
  --cp-danger-bg:#f7eaea;
  background:rgba(9,10,11,.66)!important;
  backdrop-filter:blur(8px)!important;
  -webkit-backdrop-filter:blur(8px)!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-portal-modal{
  width:min(100%,780px)!important;
  max-width:780px!important;
  height:min(88vh,820px)!important;
  max-height:820px!important;
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden!important;
  padding:0!important;
  background:var(--cp-bg)!important;
  border:1px solid rgba(255,255,255,.18)!important;
  border-radius:20px!important;
  box-shadow:0 30px 90px rgba(0,0,0,.32)!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-portal-modal-header{
  position:relative!important;
  inset:auto!important;
  flex:0 0 auto!important;
  min-height:78px!important;
  margin:0!important;
  padding:20px 22px!important;
  background:var(--cp-bg)!important;
  border-bottom:1px solid var(--cp-line)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-portal-header-kicker{
  margin:0 0 5px!important;
  color:#8a8c86!important;
  font-size:9px!important;
  line-height:1!important;
  font-weight:760!important;
  letter-spacing:.15em!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-portal-modal-header .modal-logo{
  color:var(--cp-ink)!important;
  font-size:13px!important;
  line-height:1.15!important;
  font-weight:800!important;
  letter-spacing:.075em!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-portal-modal-header .close-btn{
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  background:transparent!important;
  border:1px solid var(--cp-line)!important;
  border-radius:8px!important;
  color:var(--cp-ink)!important;
  font-size:22px!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-portal-scroll{
  flex:1 1 auto!important;
  min-height:0!important;
  overflow-y:auto!important;
  overscroll-behavior:contain!important;
  padding:0!important;
  background:var(--cp-bg)!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-portal-view.hidden,
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-portal-loading.hidden,
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-cancel-confirm.hidden{
  display:none!important;
}

/* Login */
body.premium-ui:not(.admin-page-body) #mybookings-overlay #customer-login-view{
  width:100%!important;
  min-height:100%!important;
  display:grid!important;
  align-content:center!important;
  grid-template-columns:minmax(0,420px)!important;
  justify-content:center!important;
  padding:48px 28px 58px!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-login-copy{
  margin:0 0 28px!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-portal-eyebrow{
  display:block!important;
  margin:0 0 11px!important;
  color:#858781!important;
  font-size:10px!important;
  line-height:1!important;
  font-weight:760!important;
  letter-spacing:.13em!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-login-copy h2{
  margin:0 0 10px!important;
  color:var(--cp-ink)!important;
  font-family:Inter,ui-sans-serif,system-ui,sans-serif!important;
  font-size:clamp(27px,4vw,38px)!important;
  font-weight:780!important;
  line-height:1.05!important;
  letter-spacing:-.035em!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-login-copy p{
  max-width:360px!important;
  margin:0!important;
  color:var(--cp-muted)!important;
  font-size:13px!important;
  line-height:1.6!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-login-form{
  display:grid!important;
  gap:16px!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-login-field{
  margin:0!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-login-field label,
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-field-label-row{
  color:#4d504b!important;
  font-size:11px!important;
  font-weight:720!important;
  letter-spacing:.01em!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-field-label-row{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  margin:0 0 7px!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-field-label-row label{
  margin:0!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-field-label-row span{
  color:#92948e!important;
  font-size:10px!important;
  font-weight:560!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay :is(#customer-login-phone,#customer-login-password){
  width:100%!important;
  height:50px!important;
  margin:7px 0 0!important;
  padding:0 14px!important;
  background:var(--cp-surface)!important;
  border:1px solid var(--cp-line)!important;
  border-radius:8px!important;
  box-shadow:none!important;
  color:var(--cp-ink)!important;
  font-family:Inter,ui-sans-serif,system-ui,sans-serif!important;
  font-size:15px!important;
  outline:none!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay :is(#customer-login-phone,#customer-login-password):focus{
  border-color:#8d8e89!important;
  box-shadow:0 0 0 3px rgba(24,25,27,.06)!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-portal-primary{
  width:100%!important;
  min-height:50px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:12px!important;
  padding:0 18px!important;
  background:var(--cp-ink)!important;
  border:1px solid var(--cp-ink)!important;
  border-radius:8px!important;
  box-shadow:none!important;
  color:#fff!important;
  font-family:Inter,ui-sans-serif,system-ui,sans-serif!important;
  font-size:13px!important;
  font-weight:740!important;
  cursor:pointer!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-portal-primary:is(:hover,:focus-visible){
  background:#090a0b!important;
  border-color:#090a0b!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-portal-primary:disabled{
  opacity:.55!important;
  cursor:wait!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-login-error{
  margin:-3px 0 0!important;
  padding:10px 12px!important;
  background:var(--cp-danger-bg)!important;
  border:1px solid #eccaca!important;
  border-radius:7px!important;
  color:var(--cp-danger)!important;
  font-size:11px!important;
  line-height:1.45!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-login-footnote{
  margin:15px 0 0!important;
  color:#93958f!important;
  font-size:10px!important;
  line-height:1.55!important;
  text-align:center!important;
}

/* Dashboard */
body.premium-ui:not(.admin-page-body) #mybookings-overlay #customer-dashboard-view{
  width:100%!important;
  padding:0 22px 34px!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-dashboard-hero{
  padding:26px 0 24px!important;
  border-bottom:1px solid var(--cp-line)!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-profile-row{
  display:grid!important;
  grid-template-columns:48px minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:13px!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-avatar{
  width:48px!important;
  height:48px!important;
  display:grid!important;
  place-items:center!important;
  background:#deddd7!important;
  border:1px solid #d2d1cb!important;
  border-radius:50%!important;
  color:#30322f!important;
  font-size:13px!important;
  font-weight:820!important;
  letter-spacing:.03em!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-profile-overline{
  display:block!important;
  margin:0 0 2px!important;
  color:#8b8d87!important;
  font-size:9px!important;
  line-height:1.2!important;
  font-weight:720!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-profile-copy h2{
  margin:0!important;
  color:var(--cp-ink)!important;
  font-family:Inter,ui-sans-serif,system-ui,sans-serif!important;
  font-size:20px!important;
  font-weight:780!important;
  line-height:1.2!important;
  letter-spacing:-.02em!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-profile-copy p{
  margin:4px 0 0!important;
  color:var(--cp-muted)!important;
  font-size:10px!important;
  line-height:1.4!important;
  overflow-wrap:anywhere!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-logout-btn{
  padding:7px 0!important;
  background:transparent!important;
  border:0!important;
  border-bottom:1px solid #b6b7b1!important;
  border-radius:0!important;
  color:#656862!important;
  font-size:10px!important;
  font-weight:680!important;
  cursor:pointer!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-new-booking-btn{
  max-width:250px!important;
  margin-top:24px!important;
  justify-content:space-between!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-dashboard-note{
  max-width:390px!important;
  margin:9px 0 0!important;
  color:#888a84!important;
  font-size:10px!important;
  line-height:1.5!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-bookings-shell{
  padding:26px 0 0!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-booking-section + .customer-booking-section{
  margin-top:34px!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-booking-section-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  margin:0 0 12px!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-booking-section-head h3{
  margin:0!important;
  color:#30322f!important;
  font-family:Inter,ui-sans-serif,system-ui,sans-serif!important;
  font-size:12px!important;
  font-weight:780!important;
  letter-spacing:.01em!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-booking-section-head > span{
  color:#969892!important;
  font-size:10px!important;
  font-weight:700!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-booking-stack{
  background:var(--cp-surface)!important;
  border:1px solid var(--cp-line)!important;
  border-radius:10px!important;
  overflow:hidden!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-booking-card{
  display:grid!important;
  grid-template-columns:60px minmax(0,1fr)!important;
  gap:15px!important;
  padding:16px!important;
  margin:0!important;
  background:var(--cp-surface)!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-booking-card + .customer-booking-card{
  border-top:1px solid #e7e6e1!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-booking-date{
  width:56px!important;
  min-height:60px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  align-self:start!important;
  background:#f0efea!important;
  border:1px solid #e3e2dd!important;
  border-radius:8px!important;
  color:var(--cp-ink)!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-booking-date strong{
  font-size:19px!important;
  line-height:1!important;
  font-weight:800!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-booking-date span{
  margin-top:5px!important;
  color:#747670!important;
  font-size:8px!important;
  line-height:1!important;
  font-weight:760!important;
  letter-spacing:.07em!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-booking-main{
  min-width:0!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-booking-head{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:14px!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-booking-head h4{
  margin:1px 0 4px!important;
  color:var(--cp-ink)!important;
  font-family:Inter,ui-sans-serif,system-ui,sans-serif!important;
  font-size:14px!important;
  line-height:1.3!important;
  font-weight:760!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-booking-time{
  color:#555853!important;
  font-size:12px!important;
  font-weight:660!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-booking-status{
  flex:0 0 auto!important;
  padding:4px 6px!important;
  border:1px solid #deded8!important;
  border-radius:5px!important;
  background:#f5f5f1!important;
  color:#666963!important;
  font-size:8px!important;
  line-height:1!important;
  font-weight:760!important;
  letter-spacing:.035em!important;
  text-transform:uppercase!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-booking-status.status-cancelled{
  background:#f8eded!important;
  border-color:#ecd1d1!important;
  color:#9c3d3d!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-booking-status.status-completed{
  background:#eceeea!important;
  border-color:#dde0da!important;
  color:#5d625b!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-booking-meta{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:5px 14px!important;
  margin-top:11px!important;
  color:#858781!important;
  font-size:9px!important;
  line-height:1.45!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-booking-meta strong{
  color:#60635e!important;
  font-weight:650!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-booking-actions{
  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:16px!important;
  margin-top:14px!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-card-action{
  min-height:0!important;
  padding:0 0 3px!important;
  background:transparent!important;
  border:0!important;
  border-bottom:1px solid #a6a8a2!important;
  border-radius:0!important;
  box-shadow:none!important;
  color:#454844!important;
  font-size:10px!important;
  line-height:1.25!important;
  font-weight:720!important;
  cursor:pointer!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-card-action--danger{
  color:#9b4444!important;
  border-bottom-color:#d3a7a7!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-card-action:disabled{
  opacity:.45!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-cancel-confirm{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  margin-top:14px!important;
  padding:11px 12px!important;
  background:#faf2f2!important;
  border:1px solid #ead3d3!important;
  border-radius:7px!important;
  color:#743b3b!important;
  font-size:10px!important;
  line-height:1.4!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-cancel-confirm > div{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  flex:0 0 auto!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-cancel-confirm button{
  min-height:32px!important;
  padding:0 9px!important;
  border:1px solid #d8bbbb!important;
  border-radius:6px!important;
  background:#fff!important;
  color:#7d3f3f!important;
  font-size:9px!important;
  font-weight:720!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-cancel-confirm button:first-child{
  background:#8f3434!important;
  border-color:#8f3434!important;
  color:#fff!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-booking-empty{
  padding:20px 16px!important;
  background:transparent!important;
  border:1px dashed #d3d3cd!important;
  border-radius:8px!important;
  color:#868983!important;
  font-size:11px!important;
  line-height:1.5!important;
  text-align:left!important;
}

/* Loading */
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-portal-loading{
  min-height:100%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-portal-loading span{
  width:6px!important;
  height:6px!important;
  background:#8c8e88!important;
  border-radius:50%!important;
  animation:customerPortalPulse .8s ease-in-out infinite alternate!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-portal-loading span:nth-child(2){animation-delay:.12s!important}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-portal-loading span:nth-child(3){animation-delay:.24s!important}
@keyframes customerPortalPulse{from{opacity:.25;transform:translateY(2px)}to{opacity:1;transform:translateY(-2px)}}

@media (max-width:900px){
  body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-portal-modal{
    width:100%!important;
    max-width:none!important;
    height:100dvh!important;
    max-height:none!important;
    border:0!important;
    border-radius:0!important;
  }
  body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-portal-modal-header{
    min-height:72px!important;
    padding:calc(14px + env(safe-area-inset-top)) 16px 14px!important;
  }
  body.premium-ui:not(.admin-page-body) #mybookings-overlay #customer-login-view{
    min-height:calc(100dvh - 72px - env(safe-area-inset-top))!important;
    align-content:center!important;
    padding:30px 18px calc(34px + env(safe-area-inset-bottom))!important;
  }
  body.premium-ui:not(.admin-page-body) #mybookings-overlay #customer-dashboard-view{
    padding:0 14px calc(30px + env(safe-area-inset-bottom))!important;
  }
  body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-dashboard-hero{
    padding:20px 0 21px!important;
  }
  body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-profile-row{
    grid-template-columns:42px minmax(0,1fr) auto!important;
    gap:10px!important;
  }
  body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-avatar{
    width:42px!important;
    height:42px!important;
  }
  body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-profile-copy h2{
    font-size:17px!important;
  }
  body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-profile-copy p{
    max-width:190px!important;
  }
  body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-logout-btn{
    font-size:9px!important;
  }
  body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-new-booking-btn{
    width:100%!important;
    max-width:none!important;
    margin-top:20px!important;
  }
  body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-bookings-shell{
    padding-top:22px!important;
  }
  body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-booking-card{
    grid-template-columns:52px minmax(0,1fr)!important;
    gap:12px!important;
    padding:14px 12px!important;
  }
  body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-booking-date{
    width:50px!important;
    min-height:56px!important;
  }
  body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-booking-head{
    display:block!important;
  }
  body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-booking-status{
    display:inline-flex!important;
    margin-top:8px!important;
  }
  body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-booking-meta{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:3px!important;
  }
  body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-cancel-confirm{
    align-items:flex-start!important;
    flex-direction:column!important;
  }
  body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-cancel-confirm > div{
    width:100%!important;
  }
  body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-cancel-confirm button{
    flex:1 1 0!important;
  }
}

@media (max-width:380px){
  body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-profile-row{
    grid-template-columns:40px minmax(0,1fr)!important;
  }
  body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-logout-btn{
    grid-column:2!important;
    justify-self:start!important;
    margin-top:4px!important;
  }
}

@media (prefers-reduced-motion:reduce){
  body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-portal-loading span{animation:none!important}
}

/* Customer appointments refinement: tighter editorial cards, minimal corners */
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-portal-back-home{
  display:flex!important;justify-content:center!important;align-items:center!important;
  width:100%!important;min-height:42px!important;margin:14px 0 0!important;
  padding:9px 12px!important;color:#444743!important;background:transparent!important;
  border:1px solid #d9d9d3!important;border-radius:4px!important;
  font-size:12px!important;font-weight:650!important;cursor:pointer!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-portal-back-home:hover,
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-portal-back-home:focus-visible{
  background:#ecebe6!important;border-color:#777a74!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-dashboard-hero{
  padding:16px 0 15px!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-profile-row{gap:10px!important;}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-avatar{
  width:40px!important;height:40px!important;border-radius:4px!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-profile-copy h2{font-size:17px!important;}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-new-booking-btn{
  max-width:none!important;margin-top:14px!important;border-radius:4px!important;min-height:42px!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-dashboard-note{margin-top:7px!important;}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-bookings-shell{padding-top:17px!important;}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-booking-section + .customer-booking-section{margin-top:23px!important;}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-booking-section-head{margin-bottom:9px!important;}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-booking-stack{border-radius:4px!important;}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-booking-card{
  grid-template-columns:49px minmax(0,1fr)!important;gap:12px!important;padding:12px!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-booking-date{
  width:48px!important;min-height:51px!important;border-radius:4px!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-booking-date strong{font-size:18px!important;}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-booking-head h4{font-size:13px!important;margin:0 0 3px!important;}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-booking-time{font-size:11px!important;}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-booking-status{border-radius:3px!important;}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-booking-meta{
  margin-top:7px!important;gap:3px 10px!important;font-size:9px!important;
}
body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-booking-actions{margin-top:9px!important;gap:13px!important;}
@media (max-width:900px){
 body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-booking-card{
  grid-template-columns:44px minmax(0,1fr)!important;gap:10px!important;padding:11px 10px!important;
 }
 body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-booking-date{width:43px!important;min-height:48px!important;}
 body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-booking-status{margin-top:5px!important;}
 body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-dashboard-hero{padding:15px 0!important;}
 body.premium-ui:not(.admin-page-body) #mybookings-overlay .customer-new-booking-btn{margin-top:13px!important;}
}
