/* /Components/Layout/BackofficeLayout.razor.rz.scp.css */
.backoffice-brand[b-k75twejzf9] {
  display: flex;
  align-items: baseline;
  gap: 0.6rem;
}

.topbar-actions[b-k75twejzf9] {
  display: flex;
  align-items: center;
  gap: 1.2rem;
}

/* ---------- left-hand navigation (moved off the topbar: it had grown too wide) ---------- */
.backoffice-shell[b-k75twejzf9] {
  display: flex;
  align-items: flex-start;
}

.backoffice-sidenav[b-k75twejzf9] {
  flex: none;
  width: 220px;
  border-right: 1px solid var(--line);
  padding: 1.8rem 1rem;
}

.backoffice-sidenav .nav-links[b-k75twejzf9] {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.15rem;
}

.backoffice-sidenav .nav-links a[b-k75twejzf9] {
  display: block;
  padding: 0.65rem 0.9rem;
  border-radius: var(--radius-s);
  font-size: 0.85rem;
  letter-spacing: 0.02em;
  color: var(--ink-soft);
  text-decoration: none;
}

.backoffice-sidenav .nav-links a[b-k75twejzf9]::after {
  content: none;
}

.backoffice-sidenav .nav-links a:hover[b-k75twejzf9] {
  background: var(--surface-2);
  color: var(--ink);
}

.backoffice-sidenav .nav-links a[aria-current="page"][b-k75twejzf9] {
  background: var(--taupe-pale);
  color: var(--ink);
  font-weight: 600;
}

.backoffice-sidenav .nav-links-sub[b-k75twejzf9] {
  margin-top: 0.15rem;
  padding-left: 0.9rem;
}

.backoffice-sidenav .nav-links-sub a[b-k75twejzf9] {
  font-size: 0.8rem;
}

.nav-item-parent-row[b-k75twejzf9] {
  display: flex;
  align-items: center;
}

.nav-item-parent-row a[b-k75twejzf9] {
  flex: 1;
  min-width: 0;
}

.nav-item-toggle[b-k75twejzf9] {
  flex: none;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.8rem;
  height: 1.8rem;
  border: none;
  background: none;
  color: var(--ink-soft);
  cursor: pointer;
  border-radius: var(--radius-s);
}

.nav-item-toggle:hover[b-k75twejzf9] {
  background: var(--surface-2);
  color: var(--ink);
}

.nav-item-toggle svg[b-k75twejzf9] {
  transition: transform 0.15s ease;
}

.nav-item-toggle svg.is-expanded[b-k75twejzf9] {
  transform: rotate(180deg);
}

.backoffice-main[b-k75twejzf9] {
  flex: 1;
  min-width: 0;
}

@media (max-width: 860px) {
  .backoffice-sidenav[b-k75twejzf9] {
    display: none;
    position: fixed;
    top: 92px;
    left: 0;
    bottom: 0;
    width: 240px;
    z-index: 39;
    background: var(--bg);
    box-shadow: var(--shadow);
    overflow-y: auto;
  }

  .backoffice-sidenav.is-open[b-k75twejzf9] {
    display: block;
  }
}

.backoffice-tag[b-k75twejzf9] {
  font-size: 0.62rem;
}

.backoffice-footer[b-k75twejzf9] {
  border-top: 1px solid var(--line);
  padding-block: 1.4rem;
  margin-top: 2rem;
}

.backoffice-footer .container[b-k75twejzf9] {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  flex-wrap: wrap;
  font-size: 0.76rem;
  color: var(--ink-soft);
}

/* ---------- account management ---------- */
.account-layout[b-k75twejzf9] { display: grid; grid-template-columns: 220px 1fr; gap: clamp(2rem, 4vw, 3.5rem); align-items: start; }

.account-nav[b-k75twejzf9] { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 0.2rem; }
.account-nav a[b-k75twejzf9] {
  display: block; padding: 0.6rem 0.9rem; border-radius: var(--radius-s);
  font-size: 0.86rem; color: var(--ink-soft); text-decoration: none;
}
.account-nav a:hover[b-k75twejzf9] { background: var(--surface-2); color: var(--ink); }
.account-nav a[aria-current="page"][b-k75twejzf9] { background: var(--taupe-pale); color: var(--ink); font-weight: 600; }

@media (max-width: 860px) {
  .account-layout[b-k75twejzf9] { grid-template-columns: 1fr; }
}
/* /Components/Layout/ReconnectModal.razor.rz.scp.css */
.components-reconnect-first-attempt-visible[b-gt6ybcw4a6],
.components-reconnect-repeated-attempt-visible[b-gt6ybcw4a6],
.components-reconnect-failed-visible[b-gt6ybcw4a6],
.components-pause-visible[b-gt6ybcw4a6],
.components-resume-failed-visible[b-gt6ybcw4a6],
.components-rejoining-animation[b-gt6ybcw4a6] {
    display: none;
}

#components-reconnect-modal.components-reconnect-show .components-reconnect-first-attempt-visible[b-gt6ybcw4a6],
#components-reconnect-modal.components-reconnect-show .components-rejoining-animation[b-gt6ybcw4a6],
#components-reconnect-modal.components-reconnect-paused .components-pause-visible[b-gt6ybcw4a6],
#components-reconnect-modal.components-reconnect-resume-failed .components-resume-failed-visible[b-gt6ybcw4a6],
#components-reconnect-modal.components-reconnect-retrying[b-gt6ybcw4a6],
#components-reconnect-modal.components-reconnect-retrying .components-reconnect-repeated-attempt-visible[b-gt6ybcw4a6],
#components-reconnect-modal.components-reconnect-retrying .components-rejoining-animation[b-gt6ybcw4a6],
#components-reconnect-modal.components-reconnect-failed[b-gt6ybcw4a6],
#components-reconnect-modal.components-reconnect-failed .components-reconnect-failed-visible[b-gt6ybcw4a6] {
    display: block;
}


#components-reconnect-modal[b-gt6ybcw4a6] {
    background-color: white;
    width: 20rem;
    margin: 20vh auto;
    padding: 2rem;
    border: 0;
    border-radius: 0.5rem;
    box-shadow: 0 3px 6px 2px rgba(0, 0, 0, 0.3);
    opacity: 0;
    transition: display 0.5s allow-discrete, overlay 0.5s allow-discrete;
    animation: components-reconnect-modal-fadeOutOpacity-b-gt6ybcw4a6 0.5s both;
    &[open]

{
    animation: components-reconnect-modal-slideUp-b-gt6ybcw4a6 1.5s cubic-bezier(.05, .89, .25, 1.02) 0.3s, components-reconnect-modal-fadeInOpacity-b-gt6ybcw4a6 0.5s ease-in-out 0.3s;
    animation-fill-mode: both;
}

}

#components-reconnect-modal[b-gt6ybcw4a6]::backdrop {
    background-color: rgba(0, 0, 0, 0.4);
    animation: components-reconnect-modal-fadeInOpacity-b-gt6ybcw4a6 0.5s ease-in-out;
    opacity: 1;
}

@keyframes components-reconnect-modal-slideUp-b-gt6ybcw4a6 {
    0% {
        transform: translateY(30px) scale(0.95);
    }

    100% {
        transform: translateY(0);
    }
}

@keyframes components-reconnect-modal-fadeInOpacity-b-gt6ybcw4a6 {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes components-reconnect-modal-fadeOutOpacity-b-gt6ybcw4a6 {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

.components-reconnect-container[b-gt6ybcw4a6] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

#components-reconnect-modal p[b-gt6ybcw4a6] {
    margin: 0;
    text-align: center;
}

#components-reconnect-modal button[b-gt6ybcw4a6] {
    border: 0;
    background-color: #6b9ed2;
    color: white;
    padding: 4px 24px;
    border-radius: 4px;
}

    #components-reconnect-modal button:hover[b-gt6ybcw4a6] {
        background-color: #3b6ea2;
    }

    #components-reconnect-modal button:active[b-gt6ybcw4a6] {
        background-color: #6b9ed2;
    }

.components-rejoining-animation[b-gt6ybcw4a6] {
    position: relative;
    width: 80px;
    height: 80px;
}

    .components-rejoining-animation div[b-gt6ybcw4a6] {
        position: absolute;
        border: 3px solid #0087ff;
        opacity: 1;
        border-radius: 50%;
        animation: components-rejoining-animation-b-gt6ybcw4a6 1.5s cubic-bezier(0, 0.2, 0.8, 1) infinite;
    }

        .components-rejoining-animation div:nth-child(2)[b-gt6ybcw4a6] {
            animation-delay: -0.5s;
        }

@keyframes components-rejoining-animation-b-gt6ybcw4a6 {
    0% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    4.9% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    5% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 1;
    }

    100% {
        top: 0px;
        left: 0px;
        width: 80px;
        height: 80px;
        opacity: 0;
    }
}
/* /Components/Layout/UserMenu.razor.rz.scp.css */
.user-menu[b-9odi41f44x] {
  position: relative;
}

.user-menu-trigger[b-9odi41f44x] {
  cursor: pointer;
  list-style: none;
  font-size: 0.85rem;
  color: var(--ink-soft);
  white-space: nowrap;
}

.user-menu-trigger[b-9odi41f44x]::-webkit-details-marker {
  display: none;
}

.user-menu-trigger[b-9odi41f44x]::after {
  content: "";
  display: inline-block;
  width: 6px;
  height: 6px;
  margin-inline-start: 0.4rem;
  border-right: 1px solid currentcolor;
  border-bottom: 1px solid currentcolor;
  transform: rotate(45deg) translateY(-2px);
}

.user-menu:hover .user-menu-trigger[b-9odi41f44x],
.user-menu[open] .user-menu-trigger[b-9odi41f44x] {
  color: var(--ink);
}

.user-menu-panel[b-9odi41f44x] {
  position: absolute;
  top: calc(100% + 0.6rem);
  right: 0;
  z-index: 50;
  display: flex;
  flex-direction: column;
  gap: 0.9rem;
  min-width: 240px;
  padding: 1rem;
  background: var(--bg);
  border: 1px solid var(--line-strong);
  border-radius: var(--radius-m);
  box-shadow: var(--shadow);
}

.user-menu-identity[b-9odi41f44x] {
  display: flex;
  flex-direction: column;
  gap: 0.15rem;
  padding-bottom: 0.9rem;
  border-bottom: 1px solid var(--line);
}

.user-menu-name[b-9odi41f44x] {
  font-size: 0.9rem;
  color: var(--ink);
}

.user-menu-email[b-9odi41f44x] {
  font-size: 0.76rem;
  color: var(--ink-soft);
}

.user-menu-row[b-9odi41f44x] {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  font-size: 0.85rem;
  color: var(--ink);
}

.user-menu-toggle-group[b-9odi41f44x] {
  display: flex;
  align-items: center;
  gap: 0.6rem;
}

.user-menu-toggle-status[b-9odi41f44x] {
  font-size: 0.76rem;
  color: var(--ink-soft);
  min-width: 2.2rem;
  text-align: right;
}

.toggle-switch[b-9odi41f44x] {
  position: relative;
  flex: none;
  width: 38px;
  height: 21px;
  padding: 0;
  border: 1px solid var(--line-strong);
  border-radius: 999px;
  background: var(--surface-2);
  cursor: pointer;
  transition: background 0.18s ease, border-color 0.18s ease;
}

.toggle-switch:hover[b-9odi41f44x] {
  border-color: var(--taupe-deep);
}

.toggle-switch[aria-checked="true"][b-9odi41f44x] {
  background: var(--taupe-deep);
  border-color: var(--taupe-deep);
}

.toggle-switch[disabled][b-9odi41f44x] {
  opacity: 0.5;
  cursor: not-allowed;
}

.toggle-switch-knob[b-9odi41f44x] {
  position: absolute;
  top: 1px;
  left: 1px;
  width: 17px;
  height: 17px;
  border-radius: 50%;
  background: var(--bg);
  transition: transform 0.18s ease;
}

.toggle-switch[aria-checked="true"] .toggle-switch-knob[b-9odi41f44x] {
  transform: translateX(17px);
}

.user-menu-logout[b-9odi41f44x] {
  margin: 0;
}
/* /Components/Pages/Backoffice/Availability.razor.rz.scp.css */
.catalog-form[b-nd0hy7i3l7] {
  margin-top: 1.6rem;
  border: 1px solid var(--line);
  border-radius: var(--radius-m);
  background: var(--surface);
  padding: 1.2rem;
  max-width: 40rem;
}

.catalog-form-grid[b-nd0hy7i3l7] {
  display: grid;
  grid-template-columns: 1fr auto auto;
  align-items: start;
  gap: 1rem;
  margin-bottom: 1rem;
}

.catalog-form-grid .form-field input[type="time"][b-nd0hy7i3l7] {
  width: 8rem;
}

.form-field-checkbox[b-nd0hy7i3l7] {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0.6rem;
}

.catalog-form-actions[b-nd0hy7i3l7] {
  display: flex;
  gap: 0.8rem;
  margin-top: 1rem;
}

.form-error[b-nd0hy7i3l7] {
  color: var(--error, #b3261e);
}

@media (max-width: 640px) {
  .catalog-form-grid[b-nd0hy7i3l7] { grid-template-columns: 1fr; }
  .catalog-form-grid .form-field input[type="time"][b-nd0hy7i3l7] { width: 100%; }
}
/* /Components/Pages/Backoffice/BookingDetail.razor.rz.scp.css */
.badge[b-u7luspqr0y] {
  font-size: 0.72rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--taupe-deep);
  border: 1px solid var(--line-strong);
  border-radius: 999px;
  padding: 0.15rem 0.6rem;
}
/* /Components/Pages/Backoffice/Bookings.razor.rz.scp.css */
.bookings-filters[b-8x15ntiwmd] {
  display: flex;
  gap: 1.4rem;
  flex-wrap: wrap;
  max-width: 40rem;
  margin-bottom: 1rem;
}

.bookings-filters .form-field[b-8x15ntiwmd] {
  flex: 1;
  min-width: 14rem;
}

.history-list[b-8x15ntiwmd] {
  list-style: none;
  margin: 1rem 0 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
}

.history-row[b-8x15ntiwmd] {
  display: flex;
  align-items: center;
  gap: 0.9rem;
  flex-wrap: wrap;
  border-bottom: 1px solid var(--line);
  padding-bottom: 0.6rem;
  font-size: 0.9rem;
}

.history-row .what[b-8x15ntiwmd] {
  font-weight: 600;
}

.history-row .who[b-8x15ntiwmd] {
  color: var(--ink-soft);
}

.badge[b-8x15ntiwmd] {
  font-size: 0.72rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--taupe-deep);
  border: 1px solid var(--line-strong);
  border-radius: 999px;
  padding: 0.15rem 0.6rem;
}

.booking-legend[b-8x15ntiwmd] {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem 1.2rem;
  margin: 0 0 1.2rem;
  padding: 0;
  font-size: 0.8rem;
  color: var(--ink-soft);
}

.booking-legend li[b-8x15ntiwmd] {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
}

.appt-icon[b-8x15ntiwmd],
.appt-text[b-8x15ntiwmd] {
  display: inline-flex;
  align-items: center;
}

.appt-icon[b-8x15ntiwmd] {
  flex: none;
}

.appt-text[b-8x15ntiwmd] {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.staff-legend[b-8x15ntiwmd] {
  margin-top: -0.6rem;
}

.staff-swatch[b-8x15ntiwmd] {
  display: inline-block;
  width: 0.7rem;
  height: 0.7rem;
  border-radius: var(--radius-s);
  border: 1px solid var(--line-strong);
}

/* Status/staff-accent/tooltip rules for the scheduler's rendered appointments live in
   wwwroot/app.css (global), not here - Radzen's RadzenScheduler renders .rz-event-content (and
   the TooltipService popup) outside this component's own markup tree, so Blazor's scoped-CSS
   ::deep combinator has no [b-xxxx]-tagged ancestor to attach to and never matches there
   (confirmed via DevTools: the .rz-event-content div carries no scoping attribute at all, only
   this page's own <Template> content inside it does). */
/* /Components/Pages/Backoffice/CourseDetail.razor.rz.scp.css */
.catalog-form[b-zmc0fbqte6] {
  margin-top: 1.6rem;
  border: 1px solid var(--line);
  border-radius: var(--radius-m);
  background: var(--surface);
  padding: 1.2rem;
  max-width: 40rem;
}

.catalog-form-grid[b-zmc0fbqte6] {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
  margin-bottom: 1rem;
}

.form-field-checkbox[b-zmc0fbqte6] {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0.6rem;
}

.catalog-form-actions[b-zmc0fbqte6] {
  display: flex;
  gap: 0.8rem;
  margin-top: 1rem;
}

.form-error[b-zmc0fbqte6] {
  color: var(--error, #b3261e);
}

@media (max-width: 640px) {
  .catalog-form-grid[b-zmc0fbqte6] { grid-template-columns: 1fr; }
}
/* /Components/Pages/Backoffice/Courses.razor.rz.scp.css */
.catalog-form[b-41a2z7dvtm] {
  margin-top: 1.6rem;
  border: 1px solid var(--line);
  border-radius: var(--radius-m);
  background: var(--surface);
  padding: 1.2rem;
  max-width: 40rem;
}

.catalog-form-grid[b-41a2z7dvtm] {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
  margin-bottom: 1rem;
}

.form-field-checkbox[b-41a2z7dvtm] {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0.6rem;
}

.catalog-form-actions[b-41a2z7dvtm] {
  display: flex;
  gap: 0.8rem;
  margin-top: 1rem;
}

.form-error[b-41a2z7dvtm] {
  color: var(--error, #b3261e);
}

@media (max-width: 640px) {
  .catalog-form-grid[b-41a2z7dvtm] { grid-template-columns: 1fr; }
}
/* /Components/Pages/Backoffice/CustomerDetail.razor.rz.scp.css */
.photo-upload-form[b-32e8fzm9wv] {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin-top: 1.2rem;
  padding-bottom: 1.6rem;
  border-bottom: 1px solid var(--line);
}

.photo-list[b-32e8fzm9wv] {
  list-style: none;
  margin: 1.6rem 0 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.9rem;
}

.photo-row[b-32e8fzm9wv] {
  display: flex;
  align-items: center;
  gap: 1rem;
  border: 1px solid var(--line);
  border-radius: var(--radius-m);
  padding: 0.8rem 1rem;
  flex-wrap: wrap;
}

.photo-thumb[b-32e8fzm9wv] {
  width: 72px;
  height: 72px;
  object-fit: cover;
  border-radius: var(--radius-s);
  flex: none;
}

.photo-info[b-32e8fzm9wv] {
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
  font-size: 0.85rem;
  color: var(--ink-soft);
}

.photo-info .category[b-32e8fzm9wv] {
  color: var(--ink);
  font-weight: 600;
}

.photo-actions[b-32e8fzm9wv] {
  display: flex;
  gap: 0.5rem;
  margin-left: auto;
}

.photo-edit-form[b-32e8fzm9wv] {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
  flex: 1;
}

.photo-edit-form .checkbox-field[b-32e8fzm9wv] {
  margin-bottom: 0;
}

.history-list[b-32e8fzm9wv] {
  list-style: none;
  margin: 1rem 0 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
}

.history-row[b-32e8fzm9wv] {
  display: flex;
  align-items: center;
  gap: 0.9rem;
  flex-wrap: wrap;
  border-bottom: 1px solid var(--line);
  padding-bottom: 0.6rem;
  font-size: 0.9rem;
}

.history-row .what[b-32e8fzm9wv] {
  font-weight: 600;
}

.history-row .amount[b-32e8fzm9wv],
.history-row .who[b-32e8fzm9wv] {
  color: var(--ink-soft);
}

.notification-preview[b-32e8fzm9wv] {
  flex-basis: 100%;
  width: 100%;
  height: 28rem;
  border: 1px solid var(--line);
  border-radius: var(--radius-m);
}

.badge[b-32e8fzm9wv] {
  font-size: 0.72rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--taupe-deep);
  border: 1px solid var(--line-strong);
  border-radius: 999px;
  padding: 0.15rem 0.6rem;
}

.badge-failed[b-32e8fzm9wv] {
  color: var(--surface);
  background: var(--ink);
  border-color: var(--ink);
  font-weight: 600;
}

.note-row[b-32e8fzm9wv] {
  border-bottom: 1px solid var(--line);
  padding-bottom: 0.8rem;
}

.note-meta[b-32e8fzm9wv] {
  display: flex;
  gap: 0.7rem;
  align-items: center;
  font-size: 0.78rem;
  color: var(--ink-soft);
  margin-bottom: 0.3rem;
}

.note-meta .who[b-32e8fzm9wv] {
  font-weight: 600;
  color: var(--ink);
}

.note-form[b-32e8fzm9wv] {
  margin-top: 1.2rem;
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
}

.note-form textarea[b-32e8fzm9wv],
.note-form select[b-32e8fzm9wv] {
  font: inherit;
  background: var(--surface);
  border: 1px solid var(--line-strong);
  border-radius: var(--radius-s);
  padding: 0.7rem 0.9rem;
  color: var(--ink);
}
/* /Components/Pages/Backoffice/Customers.razor.rz.scp.css */
.customer-results[b-ef560n597m] {
  list-style: none;
  margin: 1.2rem 0 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
}

.customer-result[b-ef560n597m] {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  border: 1px solid var(--line);
  border-radius: var(--radius-m);
  background: var(--surface);
  padding: 0.9rem 1.2rem;
  text-decoration: none;
  color: inherit;
}

.customer-result:hover[b-ef560n597m] {
  border-color: var(--taupe-deep);
}

.customer-result .name[b-ef560n597m] {
  font-weight: 600;
}

.customer-result .email[b-ef560n597m] {
  color: var(--ink-soft);
  font-size: 0.9rem;
}
/* /Components/Pages/Backoffice/FaqManagement.razor.rz.scp.css */
.faq-list[b-sd4iegrgvs] {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.faq-row[b-sd4iegrgvs] {
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
  border: 1px solid var(--line);
  border-radius: var(--radius-m);
  background: var(--surface);
  padding: 1rem;
}

.faq-row-new[b-sd4iegrgvs] {
  margin-bottom: 1.6rem;
  border-style: dashed;
}

.form-row-2[b-sd4iegrgvs] {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
}

@media (max-width: 640px) {
  .form-row-2[b-sd4iegrgvs] { grid-template-columns: 1fr; }
}

.faq-row .checkbox-field[b-sd4iegrgvs] {
  margin-bottom: 0;
}

.faq-actions[b-sd4iegrgvs] {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  flex-wrap: wrap;
}
/* /Components/Pages/Backoffice/GiftCardDetail.razor.rz.scp.css */
.badge[b-3xvwlby2nk] {
  font-size: 0.72rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--taupe-deep);
  border: 1px solid var(--line-strong);
  border-radius: 999px;
  padding: 0.15rem 0.6rem;
}
/* /Components/Pages/Backoffice/GiftCards.razor.rz.scp.css */
.bookings-filters[b-krowt5khf6] {
  display: flex;
  gap: 1.4rem;
  flex-wrap: wrap;
  max-width: 40rem;
  margin-bottom: 1rem;
}

.bookings-filters .form-field[b-krowt5khf6] {
  flex: 1;
  min-width: 14rem;
}

.badge[b-krowt5khf6] {
  font-size: 0.72rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--taupe-deep);
  border: 1px solid var(--line-strong);
  border-radius: 999px;
  padding: 0.15rem 0.6rem;
  margin-left: 0.5rem;
}
/* /Components/Pages/Backoffice/LogBook.razor.rz.scp.css */
.bookings-filters[b-md5a7tc776] {
  display: flex;
  gap: 1.4rem;
  flex-wrap: wrap;
  max-width: 40rem;
  margin-bottom: 1rem;
}

.bookings-filters .form-field[b-md5a7tc776] {
  flex: 1;
  min-width: 14rem;
}

.date-range-field[b-md5a7tc776] {
  min-width: 20rem;
}

.date-range[b-md5a7tc776] {
  display: flex;
  align-items: center;
  gap: 0.6rem;
}

.date-range .rz-datepicker[b-md5a7tc776] {
  flex: 1;
  min-width: 0;
}

.date-range-sep[b-md5a7tc776] {
  color: var(--ink-soft);
  font-size: 0.85rem;
}

.badge[b-md5a7tc776] {
  font-size: 0.72rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--taupe-deep);
  border: 1px solid var(--line-strong);
  border-radius: 999px;
  padding: 0.15rem 0.6rem;
}

.badge-failed[b-md5a7tc776] {
  color: var(--surface);
  background: var(--ink);
  border-color: var(--ink);
  font-weight: 600;
}

.sent-col[b-md5a7tc776] {
  white-space: nowrap;
}

.log-detail[b-md5a7tc776] {
  white-space: pre-wrap;
  word-break: break-word;
  max-height: 24rem;
  overflow-y: auto;
  margin: 0.4rem 0;
  padding: 0.8rem;
  font-size: 0.8rem;
  background: var(--surface-2);
  border: 1px solid var(--line);
  border-radius: var(--radius-m);
}
/* /Components/Pages/Backoffice/NotificationLogs.razor.rz.scp.css */
.bookings-filters[b-z4bsn5keyu] {
  display: flex;
  gap: 1.4rem;
  flex-wrap: wrap;
  max-width: 40rem;
  margin-bottom: 1rem;
}

.bookings-filters .form-field[b-z4bsn5keyu] {
  flex: 1;
  min-width: 14rem;
}

.date-range-field[b-z4bsn5keyu] {
  min-width: 20rem;
}

.date-range[b-z4bsn5keyu] {
  display: flex;
  align-items: center;
  gap: 0.6rem;
}

.date-range .rz-datepicker[b-z4bsn5keyu] {
  flex: 1;
  min-width: 0;
}

.date-range-sep[b-z4bsn5keyu] {
  color: var(--ink-soft);
  font-size: 0.85rem;
}

.badge[b-z4bsn5keyu] {
  font-size: 0.72rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--taupe-deep);
  border: 1px solid var(--line-strong);
  border-radius: 999px;
  padding: 0.15rem 0.6rem;
}

.badge-failed[b-z4bsn5keyu] {
  color: var(--surface);
  background: var(--ink);
  border-color: var(--ink);
  font-weight: 600;
}

.sent-col[b-z4bsn5keyu] {
  white-space: nowrap;
}

.failure-reason[b-z4bsn5keyu] {
  margin-top: 0.3rem;
  font-size: 0.78rem;
  font-weight: 600;
  color: var(--ink);
  max-width: 18rem;
}

.notification-preview[b-z4bsn5keyu] {
  width: 100%;
  height: 28rem;
  border: 1px solid var(--line);
  border-radius: var(--radius-m);
}
/* /Components/Pages/Backoffice/PortfolioManagement.razor.rz.scp.css */
.photo-list[b-ya2in0z7sw] {
  list-style: none;
  margin: 1.6rem 0 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.9rem;
}

.photo-row[b-ya2in0z7sw] {
  display: flex;
  align-items: center;
  gap: 1rem;
  border: 1px solid var(--line);
  border-radius: var(--radius-m);
  background: var(--surface);
  padding: 0.8rem 1rem;
  flex-wrap: wrap;
}

.photo-thumb[b-ya2in0z7sw] {
  width: 72px;
  height: 72px;
  object-fit: cover;
  border-radius: var(--radius-s);
  flex: none;
}

.photo-info[b-ya2in0z7sw] {
  flex: 1;
  min-width: 8rem;
}

.photo-actions[b-ya2in0z7sw] {
  display: flex;
  gap: 0.5rem;
  margin-left: auto;
}
/* /Components/Pages/Backoffice/Reviews.razor.rz.scp.css */
.catalog-form[b-hol1xaxsua] {
  border: 1px solid var(--line);
  border-radius: var(--radius-m);
  background: var(--surface);
  padding: 1.2rem;
  max-width: 44rem;
}

.catalog-form-grid[b-hol1xaxsua] {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 1rem;
  margin-bottom: 1rem;
  align-items: end;
}

.form-field-checkbox[b-hol1xaxsua] {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0.6rem;
}

.catalog-form-actions[b-hol1xaxsua] {
  display: flex;
  gap: 0.8rem;
  margin-top: 1rem;
}

.form-error[b-hol1xaxsua] {
  color: var(--error, #b3261e);
}

.history-list[b-hol1xaxsua] {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.9rem;
}

.review-row[b-hol1xaxsua] {
  border: 1px solid var(--line);
  border-radius: var(--radius-m);
  padding: 0.9rem 1rem;
}

.review-meta[b-hol1xaxsua] {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  flex-wrap: wrap;
  font-size: 0.9rem;
}

.review-meta .what[b-hol1xaxsua] {
  font-weight: 600;
}

.review-meta .who[b-hol1xaxsua] {
  color: var(--ink-soft);
}

.review-body[b-hol1xaxsua] {
  margin: 0.6rem 0 0;
}

.review-actions[b-hol1xaxsua] {
  display: flex;
  gap: 0.6rem;
  margin-top: 0.8rem;
}

.badge[b-hol1xaxsua] {
  font-size: 0.72rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--taupe-deep);
  border: 1px solid var(--line-strong);
  border-radius: 999px;
  padding: 0.15rem 0.6rem;
}

@media (max-width: 640px) {
  .catalog-form-grid[b-hol1xaxsua] { grid-template-columns: 1fr; }
}
/* /Components/Pages/Backoffice/Settings.razor.rz.scp.css */
.catalog-form[b-qvhsuiei0q] {
  margin-top: 1.6rem;
  border: 1px solid var(--line);
  border-radius: var(--radius-m);
  background: var(--surface);
  padding: 1.2rem;
  max-width: 56rem;
}

.catalog-form-row[b-qvhsuiei0q] {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 1rem;
  margin-bottom: 1rem;
}

.form-field-narrow[b-qvhsuiei0q] {
  width: 9rem;
  flex: 0 0 auto;
}

.catalog-form-actions[b-qvhsuiei0q] {
  display: flex;
  gap: 0.8rem;
  margin-top: 1rem;
}

@media (max-width: 640px) {
  .catalog-form-row[b-qvhsuiei0q] { flex-direction: column; align-items: stretch; }
  .form-field-narrow[b-qvhsuiei0q] { width: 100%; }
}
/* /Components/Pages/Backoffice/SiteContent.razor.rz.scp.css */
.settings-form[b-0bijjhiroa] {
  margin-top: 1.6rem;
  margin-bottom: 1.8rem;
  border: 1px solid var(--line);
  border-radius: var(--radius-m);
  background: var(--surface);
  padding: 1.2rem;
  max-width: 56rem;
}

.settings-form-row[b-0bijjhiroa] {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 1rem;
  margin-bottom: 1rem;
}

.form-field-narrow[b-0bijjhiroa] {
  width: 16rem;
  flex: 0 0 auto;
}

.settings-form-actions[b-0bijjhiroa] {
  display: flex;
  gap: 0.8rem;
  margin-top: 1rem;
}

@media (max-width: 640px) {
  .settings-form-row[b-0bijjhiroa] { flex-direction: column; align-items: stretch; }
  .form-field-narrow[b-0bijjhiroa] { width: 100%; }
}

.content-section-heading[b-0bijjhiroa] {
  font-family: 'Fraunces', serif;
  font-weight: 600;
  font-size: 1rem;
  color: var(--ink);
  text-transform: capitalize;
  margin: 1.8rem 0 0.6rem;
}

.content-section-heading:first-of-type[b-0bijjhiroa] {
  margin-top: 1.6rem;
}

.content-list[b-0bijjhiroa] {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.content-row[b-0bijjhiroa] {
  display: flex;
  flex-direction: column;
  gap: 0.3rem;
  border: 1px solid var(--line);
  border-radius: var(--radius-m);
  background: var(--surface);
  padding: 1rem;
}

.content-description[b-0bijjhiroa] {
  font-family: 'Fraunces', serif;
  font-weight: 600;
  font-size: 0.95rem;
  color: var(--ink);
}

.content-key[b-0bijjhiroa] {
  font-family: 'Fraunces', serif;
  font-weight: 400;
  font-size: 0.72rem;
  color: var(--ink-soft);
  margin-bottom: 0.3rem;
}

.content-fields[b-0bijjhiroa] {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
}

@media (max-width: 640px) {
  .content-fields[b-0bijjhiroa] { grid-template-columns: 1fr; }
}

.content-fields-stacked[b-0bijjhiroa] {
  display: flex;
  flex-direction: column;
}
/* /Components/Pages/Backoffice/Staff.razor.rz.scp.css */
.catalog-form[b-zdsc2ey4j5] {
  margin-top: 1.6rem;
  border: 1px solid var(--line);
  border-radius: var(--radius-m);
  background: var(--surface);
  padding: 1.2rem;
  max-width: 40rem;
}

.catalog-form-grid[b-zdsc2ey4j5] {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
  margin-bottom: 1rem;
}

.catalog-form-actions[b-zdsc2ey4j5] {
  display: flex;
  gap: 0.8rem;
  margin-top: 1rem;
}

.form-error[b-zdsc2ey4j5] {
  color: var(--error, #b3261e);
}

.history-list[b-zdsc2ey4j5] {
  list-style: none;
  margin: 1rem 0 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
}

.history-row[b-zdsc2ey4j5] {
  display: grid;
  grid-template-columns: 1fr 1fr 9rem 5.5rem auto auto;
  align-items: center;
  gap: 0.9rem;
  border-bottom: 1px solid var(--line);
  padding-bottom: 0.6rem;
  font-size: 0.9rem;
}

.history-row[b-zdsc2ey4j5]  .rz-dropdown {
  width: 100%;
}

.history-name[b-zdsc2ey4j5] {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  min-width: 0;
  flex-wrap: wrap;
}

.history-name input.what[b-zdsc2ey4j5] {
  min-width: 0;
  flex: 1 1 8rem;
}

.history-name[b-zdsc2ey4j5]  .rz-button {
  flex: none;
}

.history-row .what[b-zdsc2ey4j5] {
  font-weight: 600;
}

.history-row .who[b-zdsc2ey4j5] {
  color: var(--ink-soft);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.badge[b-zdsc2ey4j5] {
  display: inline-block;
  width: fit-content;
  font-size: 0.72rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--taupe-deep);
  border: 1px solid var(--line-strong);
  border-radius: 999px;
  padding: 0.15rem 0.6rem;
}

@media (max-width: 900px) {
  .history-row[b-zdsc2ey4j5] { grid-template-columns: 1fr; align-items: stretch; gap: 0.4rem; }
}

@media (max-width: 640px) {
  .catalog-form-grid[b-zdsc2ey4j5] { grid-template-columns: 1fr; }
}
/* /Components/Pages/Backoffice/SystemStatus.razor.rz.scp.css */
.storage-meter[b-rdc76b5jfb] {
  max-width: 22rem;
}
/* /Components/Pages/Backoffice/Templates.razor.rz.scp.css */
.template-list[b-og4q8t88ay] {
  list-style: none;
  margin: 1.6rem 0 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.template-row[b-og4q8t88ay] {
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
  border: 1px solid var(--line);
  border-radius: var(--radius-m);
  background: var(--surface);
  padding: 1rem;
}

.template-toggle[b-og4q8t88ay] {
  align-self: flex-start;
  font-family: 'Fraunces', serif;
  font-weight: 600;
}

.content-key[b-og4q8t88ay] {
  font-family: 'Fraunces', serif;
  font-weight: 600;
  font-size: 0.78rem;
  color: var(--ink-soft);
}

.content-fields[b-og4q8t88ay] {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
}

/* A .form-row-2 nested inside .content-fields's own 2-column grid would otherwise be placed as
   a single cell (squeezed into one of the two outer columns) instead of a full-width row - this
   spans it across both, so its own two sub-fields lay out side by side as intended. */
.content-fields > .form-row-2[b-og4q8t88ay] {
  grid-column: 1 / -1;
}

.template-body-preview[b-og4q8t88ay] {
  border: 1px solid var(--line);
  border-radius: var(--radius-m);
  background: var(--surface-2);
  padding: 0.7rem 0.9rem;
  max-height: 12rem;
  overflow-y: auto;
  font-size: 0.85rem;
}

.template-tags code[b-og4q8t88ay] {
  margin-right: 0.4rem;
  font-size: 0.78rem;
}

.template-tags[b-og4q8t88ay] {
  font-size: 0.8rem;
  color: var(--ink-soft);
}

.template-actions[b-og4q8t88ay] {
  display: flex;
  gap: 0.6rem;
  flex-wrap: wrap;
}

.template-preview[b-og4q8t88ay] {
  width: 100%;
  height: 32rem;
  border: 1px solid var(--line);
  border-radius: var(--radius-m);
  margin-top: 0.4rem;
}

/* Browsers render <input type="color"> as a thin ~1.5rem strip by default - too small to actually
   judge a color or tell two brand colors apart at a glance, so this is sized up into a real swatch. */
.color-input[b-og4q8t88ay] {
  width: 100%;
  height: 3rem;
  padding: 0.2rem;
  border: 1px solid var(--line);
  border-radius: var(--radius-m);
  background: var(--surface);
  cursor: pointer;
}

.color-input[b-og4q8t88ay]::-webkit-color-swatch-wrapper {
  padding: 0;
}

.color-input[b-og4q8t88ay]::-webkit-color-swatch {
  border: none;
  border-radius: var(--radius-s);
}

.color-input[b-og4q8t88ay]::-moz-color-swatch {
  border: none;
  border-radius: var(--radius-s);
}

.logo-thumbnail-wrap[b-og4q8t88ay] {
  display: flex;
  border: 1px solid var(--line);
  border-radius: var(--radius-m);
  background: var(--surface-2);
  padding: 0.8rem;
  margin-bottom: 0.5rem;
}

.logo-thumbnail-wrap.logo-align-left[b-og4q8t88ay] { justify-content: flex-start; }
.logo-thumbnail-wrap.logo-align-center[b-og4q8t88ay] { justify-content: center; }
.logo-thumbnail-wrap.logo-align-right[b-og4q8t88ay] { justify-content: flex-end; }

.logo-thumbnail[b-og4q8t88ay] {
  /* Fixed display size, independent of InvoiceTemplateSettings.LogoHeightCentimetres - that
     value only ever affects the logo's size on the generated invoice PDF, never this thumbnail,
     so dragging the size slider below must not visibly change the logo shown here. */
  height: 2.4rem;
  width: auto;
  max-width: 100%;
  object-fit: contain;
}

.alignment-picker[b-og4q8t88ay] {
  display: flex;
  gap: 0.5rem;
  margin-bottom: 0.8rem;
}

.alignment-picker .tab-btn[aria-pressed="true"][b-og4q8t88ay] {
  background: var(--ink);
  color: var(--bg);
  border-color: var(--ink);
}

/* Browsers render <input type="range"> with a plain OS-default track/thumb - styled here to
   match the brand tokens the way .color-input already does for the color pickers. */
.range-input[b-og4q8t88ay] {
  width: 100%;
  margin-top: 0.4rem;
  accent-color: var(--taupe-deep);
  cursor: pointer;
}

.range-input[b-og4q8t88ay]::-webkit-slider-runnable-track {
  height: 0.35rem;
  border-radius: var(--radius-s);
  background: var(--taupe-pale);
}

.range-input[b-og4q8t88ay]::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 1.1rem;
  height: 1.1rem;
  margin-top: -0.375rem;
  border-radius: 50%;
  background: var(--taupe-deep);
  border: 2px solid var(--surface);
  box-shadow: 0 0 0 1px var(--taupe-deep);
  cursor: pointer;
}

.range-input[b-og4q8t88ay]::-moz-range-track {
  height: 0.35rem;
  border-radius: var(--radius-s);
  background: var(--taupe-pale);
}

.range-input[b-og4q8t88ay]::-moz-range-thumb {
  width: 1.1rem;
  height: 1.1rem;
  border-radius: 50%;
  background: var(--taupe-deep);
  border: 2px solid var(--surface);
  box-shadow: 0 0 0 1px var(--taupe-deep);
  cursor: pointer;
}

@media (max-width: 640px) {
  .content-fields[b-og4q8t88ay] { grid-template-columns: 1fr; }
}
/* /Components/Pages/Backoffice/Treatments.razor.rz.scp.css */
.catalog-form[b-j1ozqge6yj] {
  margin-top: 1.6rem;
  border: 1px solid var(--line);
  border-radius: var(--radius-m);
  background: var(--surface);
  padding: 1.2rem;
  max-width: 56rem;
}

.catalog-form-row[b-j1ozqge6yj] {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 1rem;
  margin-bottom: 1rem;
}

.form-field-narrow[b-j1ozqge6yj] {
  width: 9rem;
  flex: 0 0 auto;
}

.form-field-parent-picker[b-j1ozqge6yj] {
  width: 18rem;
  flex: 0 0 auto;
}

.catalog-form-grid-bilingual[b-j1ozqge6yj] {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
  margin: 1rem 0;
}

.form-field-checkbox[b-j1ozqge6yj] {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0.6rem;
}

/* Forces this field onto its own line, directly under "Actief" rather than wrapping beside it in
   the flex row above - a multi-select's closed control grows wider as staff chips are added, and
   sitting inline with room to its right let Radzen's popup (which syncs width to the control) run
   close enough to the viewport edge to trigger Radzen's own smart-positioning clamp.
   min-width: 100% (not just flex-basis via the flex shorthand) is what actually guarantees the
   break - flex-shrink still lets a flex-basis:100% item shrink down and sit beside a sibling on the
   same line if there's room, and min-width is exactly what stops that shrinking. */
.form-field-qualified-staff[b-j1ozqge6yj] {
  flex: 1 1 100%;
  min-width: 100%;
  max-width: 22rem;
}

.catalog-form-actions[b-j1ozqge6yj] {
  display: flex;
  gap: 0.8rem;
  margin-top: 1rem;
}

.form-error[b-j1ozqge6yj] {
  color: var(--error, #b3261e);
}

@media (max-width: 640px) {
  .catalog-form-row[b-j1ozqge6yj] { flex-direction: column; align-items: stretch; }
  .form-field-narrow[b-j1ozqge6yj] { width: 100%; }
  .form-field-parent-picker[b-j1ozqge6yj] { width: 100%; }
  .form-field-qualified-staff[b-j1ozqge6yj] { max-width: 100%; }
  .catalog-form-grid-bilingual[b-j1ozqge6yj] { grid-template-columns: 1fr; }
}
/* /Components/Shared/HtmlEditorDialog.razor.rz.scp.css */
.html-editor-dialog[b-44hyp269x4] {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.html-editor-dialog-actions[b-44hyp269x4] {
  display: flex;
  gap: 0.6rem;
  justify-content: flex-end;
}
