@charset "UTF-8";
:root {
  --area-color: #007bff;
  --area-secondary-color: #6c757d;
  --area-tertiary-color: color-mix(in srgb, var(--area-color) 10%, white);
  --area-primary-dark: color-mix(in srgb, var(--area-color) 80%, black);
  --area-primary-light: color-mix(in srgb, var(--area-color) 15%, white);
  --area-text-on-primary: #FFFFFF;
  --area-text-on-secondary: #FFFFFF;
  --area-gradient: linear-gradient(135deg, var(--area-color), color-mix(in srgb, var(--area-color) 90%, #000000));
  --area-gradient-secondary: linear-gradient(135deg, var(--area-secondary-color), color-mix(in srgb, var(--area-secondary-color) 90%, #000000));
  --area-gradient-light: linear-gradient(135deg, var(--area-tertiary-color), color-mix(in srgb, var(--area-tertiary-color) 85%, white));
  --area-gradient-subtle: linear-gradient(135deg, color-mix(in srgb, var(--area-color) 3%, white), color-mix(in srgb, var(--area-color) 8%, white));
  --spacing-xs: 0.25rem;
  --spacing-sm: 0.5rem;
  --spacing-md: 1rem;
  --spacing-lg: 1.5rem;
  --spacing-xl: 2rem;
  --spacing-xxl: 3rem;
  --sidebar-width: 18.75rem;
  --header-height: 3.75rem;
  --timeslot-sidebar-width: 6.25rem;
  --border-radius: 0.5rem;
  --border-radius-sm: 0.25rem;
  --border-radius-lg: 0.75rem;
  --shadow-sm: 0 0.0625rem 0.1875rem rgba(0, 0, 0, 0.1);
  --shadow-md: 0 0.25rem 0.375rem rgba(0, 0, 0, 0.1);
  --shadow-lg: 0 0.625rem 1.5625rem rgba(0, 0, 0, 0.1);
  --shadow-area: 0 0.25rem 0.75rem color-mix(in srgb, var(--area-color) 20%, transparent);
  --font-size-xs: 0.75rem;
  --font-size-sm: 0.875rem;
  --font-size-base: 1rem;
  --font-size-lg: 1.125rem;
  --font-size-xl: 1.25rem;
  --font-size-xxl: 1.5rem;
  --color-white: #ffffff;
  --color-gray-50: #f9fafb;
  --color-gray-100: #f3f4f6;
  --color-gray-200: #e5e7eb;
  --color-gray-300: #d1d5db;
  --color-gray-400: #9ca3af;
  --color-gray-500: #6b7280;
  --color-gray-600: #4b5563;
  --color-gray-700: #374151;
  --color-gray-800: #1f2937;
  --color-gray-900: #111827;
  --color-success: #10b981;
  --color-warning: #f59e0b;
  --color-error: #ef4444;
  --color-info: #3b82f6;
}

* {
  box-sizing: border-box;
}

body.admin-panel {
  margin: 0;
  padding: 0;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  font-size: var(--font-size-base);
  line-height: 1.5;
  color: var(--color-gray-800);
  background-color: var(--color-gray-50);
}

button {
  border: none;
  cursor: pointer;
  font-family: inherit;
}

input,
textarea,
select {
  font-family: inherit;
  font-size: inherit;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  font-weight: 600;
  line-height: 1.2;
}

p {
  margin: 0;
}

a {
  color: inherit;
  text-decoration: none;
}

ul,
ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

.o-admin-layout {
  display: grid;
  grid-template-areas: "sidebar header" "sidebar main";
  grid-template-columns: var(--sidebar-width) 1fr;
  grid-template-rows: var(--header-height) 1fr;
  min-height: 100vh;
  background: var(--area-gradient-subtle);
}

@media (max-width: 768px) {
  .o-admin-layout {
    grid-template-areas: "header" "main";
    grid-template-columns: 1fr;
    grid-template-rows: var(--header-height) 1fr;
  }
}
.o-container {
  max-width: 75rem;
  margin: 0 auto;
  padding: 0 var(--spacing-md);
}

.o-grid {
  display: grid;
  gap: var(--spacing-md);
}

.o-grid--auto-fit {
  grid-template-columns: repeat(auto-fit, minmax(12.5rem, 1fr));
}

.o-grid--2-cols {
  grid-template-columns: repeat(2, 1fr);
}

.o-grid--3-cols {
  grid-template-columns: repeat(3, 1fr);
}

.o-grid--gap-sm {
  gap: var(--spacing-sm);
}

.o-grid--gap-lg {
  gap: var(--spacing-lg);
}

.o-flex {
  display: flex;
}

.o-flex--column {
  flex-direction: column;
}

.o-flex--center {
  align-items: center;
  justify-content: center;
}

.o-flex--between {
  justify-content: space-between;
}

.o-flex--wrap {
  flex-wrap: wrap;
}

.o-flex--gap-sm {
  gap: var(--spacing-sm);
}

.o-flex--gap-md {
  gap: var(--spacing-md);
}

.o-flex--gap-lg {
  gap: var(--spacing-lg);
}

.o-stack {
  display: flex;
  flex-direction: column;
}

.o-stack--sm > * + * {
  margin-top: var(--spacing-sm);
}

.o-stack--md > * + * {
  margin-top: var(--spacing-md);
}

.o-stack--lg > * + * {
  margin-top: var(--spacing-lg);
}

.c-admin-header {
  grid-area: header;
  background: var(--color-white);
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08);
  z-index: 1;
  position: relative;
}

.c-admin-header__content {
  height: 100%;
  display: flex;
  align-items: flex-end;
  padding: 0 var(--spacing-lg);
}

.c-area-nav {
  display: flex;
  gap: var(--spacing-xs);
  align-items: flex-end;
  height: 100%;
}

.c-area-nav__tab {
  position: relative;
  display: flex;
  align-items: center;
  padding: var(--spacing-sm) var(--spacing-lg);
  border-radius: var(--border-radius) var(--border-radius) 0 0;
  background: var(--color-gray-100);
  color: var(--color-gray-600);
  text-decoration: none;
  font-weight: 500;
  font-size: var(--font-size-sm);
  transition: all 0.2s ease;
  border: 1px solid var(--color-gray-300);
  border-bottom: none;
  margin-bottom: 0;
  height: calc(var(--header-height) - 10px);
  color: var(--tab-color);
  border: 1px solid var(--tab-color);
  background-color: var(--tab-background-color);
  border-bottom: none;
}

.c-area-nav__tab::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: var(--tab-color);
  transform: scaleX(0);
  transition: transform 0.2s ease;
}

.c-area-nav__tab:hover {
  background: color-mix(in srgb, var(--tab-color) 5%, white);
  color: var(--tab-color);
  border-color: color-mix(in srgb, var(--tab-color) 30%, var(--color-gray-300));
}

.c-area-nav__tab:hover::before {
  transform: scaleX(1);
}

.c-area-nav__tab--active {
  background: var(--color-white);
  color: var(--tab-color);
  border-color: color-mix(in srgb, var(--tab-color) 30%, var(--color-gray-300));
  box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.1);
  background-color: var(--tab-color);
  color: var(--area-secondary-color);
}

.c-area-nav__tab--active::before {
  transform: scaleX(1);
  height: 3px;
}

.c-area-nav__tab-text {
  font-weight: 600;
  letter-spacing: 0.025em;
}

@media (max-width: 768px) {
  .c-admin-header {
    margin-left: 0;
  }
  .c-area-nav {
    overflow-x: auto;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }
  .c-area-nav::-webkit-scrollbar {
    display: none;
  }
  .c-area-nav__tab {
    flex-shrink: 0;
    min-width: 120px;
    justify-content: center;
  }
}
.c-sidebar {
  grid-area: sidebar;
  position: fixed;
  top: 0;
  left: 0;
  width: var(--sidebar-width);
  height: 100vh;
  background: var(--color-white);
  border-right: 1px solid color-mix(in srgb, var(--area-color) 20%, var(--color-gray-200));
  padding: var(--spacing-lg);
  display: flex;
  flex-direction: column;
  gap: var(--spacing-lg);
  box-shadow: 2px 0 12px rgba(0, 0, 0, 0.08);
  z-index: 1001;
  overflow-y: auto;
  scrollbar-width: thin;
  scrollbar-color: var(--area-color) transparent;
}

.c-sidebar::-webkit-scrollbar-thumb {
  background: var(--area-color);
}

.c-sidebar::-webkit-scrollbar-track {
  background: transparent;
}

.c-sidebar::-webkit-scrollbar {
  width: 4px;
}

.c-sidebar__logo {
  text-align: center;
}

.c-logo--cabriolo {
  height: auto;
}

.c-sidebar__header {
  text-align: center;
  padding-bottom: var(--spacing-md);
  border-bottom: 1px solid color-mix(in srgb, var(--area-color) 15%, var(--color-gray-200));
  background-color: var(--area-color);
}

.c-logo--area {
  height: auto;
}

.c-logo--placeholder {
  width: 80px;
  height: 80px;
  background: var(--area-gradient);
  color: var(--area-text-on-primary);
  border-radius: var(--border-radius-lg);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: var(--font-size-xl);
  font-weight: 700;
  margin: 0 auto;
  box-shadow: var(--shadow-md);
}

.c-sidebar__notes {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-sm);
}

.c-sidebar__filters {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-md);
}

.c-filters__title {
  font-size: var(--font-size-base);
  font-weight: 600;
  color: var(--area-color);
  margin: 0;
}

.c-filter__group {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-sm);
}

.c-filter__label {
  display: flex;
  align-items: center;
  gap: var(--spacing-sm);
  font-size: var(--font-size-sm);
  color: var(--color-gray-700);
  cursor: pointer;
  transition: color 0.2s ease;
}

.c-filter__label:hover {
  color: var(--area-color);
}

.c-filter__label-text {
  font-weight: 600;
  color: var(--area-color);
  font-size: var(--font-size-sm);
}

.c-filter__checkbox {
  width: 16px;
  height: 16px;
  accent-color: var(--area-color);
}

.c-filter__select {
  width: 100%;
  padding: var(--spacing-sm);
  border: 1px solid color-mix(in srgb, var(--area-color) 30%, var(--color-gray-300));
  border-radius: var(--border-radius);
  font-size: var(--font-size-sm);
  background: var(--color-white);
  transition: border-color 0.2s ease;
}

.c-filter__select:focus {
  outline: none;
  border-color: var(--area-color);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--area-color) 15%, transparent);
}

@media (max-width: 768px) {
  .c-sidebar {
    display: none;
  }
}
.c-main-content {
  grid-area: main;
  background: var(--area-gradient-subtle);
  padding: var(--spacing-lg);
  overflow-y: auto;
  max-width: none;
  border-left: 9px solid var(--area-color);
  border-top: 9px solid var(--area-color);
}

.c-stats-header {
  margin-bottom: var(--spacing-lg);
}

.c-stats {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: var(--spacing-md);
  margin-bottom: var(--spacing-xl);
}

.c-stats__card {
  background: var(--color-white);
  padding: var(--spacing-lg);
  border-radius: var(--border-radius-lg);
  box-shadow: var(--shadow-sm);
  border: 1px solid color-mix(in srgb, var(--area-color) 15%, var(--color-gray-200));
  display: flex;
  align-items: center;
  gap: var(--spacing-md);
  transition: all 0.2s ease;
  position: relative;
  overflow: hidden;
}

.c-stats__card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: var(--area-gradient);
  opacity: 0.9;
}

.c-stats__card:hover {
  box-shadow: var(--shadow-md);
  transform: translateY(-2px);
  border-color: var(--area-color);
}

.c-stats__card--revenue {
  background: var(--area-gradient-light);
  border-color: var(--area-color);
}

.c-stats__card--revenue::before {
  height: 6px;
}

.c-stats__icon {
  font-size: 1.5rem;
  opacity: 0.8;
}

.c-stats__content {
  flex: 1;
}

.c-stats__value {
  font-size: var(--font-size-xl);
  font-weight: 700;
  color: var(--area-color);
  line-height: 1.2;
}

.c-stats__label {
  font-size: var(--font-size-sm);
  color: var(--color-gray-600);
  margin-top: var(--spacing-xs);
  font-weight: 500;
}

.c-date-header {
  margin-bottom: var(--spacing-xl);
}

.c-date-header__content {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: var(--color-white);
  padding: var(--spacing-lg) var(--spacing-xl);
  border-radius: var(--border-radius-lg);
  box-shadow: var(--shadow-sm);
  border: 1px solid color-mix(in srgb, var(--area-color) 20%, var(--color-gray-200));
  position: relative;
  overflow: hidden;
}

.c-date-header__content::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: var(--area-gradient);
}

.c-date-header__title {
  font-size: var(--font-size-xxl);
  font-weight: 700;
  color: var(--area-color);
  margin: 0;
}

.c-date-header__nav {
  display: flex;
  gap: var(--spacing-sm);
}

@media (max-width: 768px) {
  .c-main-content {
    margin-left: 0;
    width: 100%;
  }
  .c-date-header__content {
    flex-direction: column;
    gap: var(--spacing-md);
    text-align: center;
  }
  .c-date-header__title {
    font-size: var(--font-size-xl);
  }
}
.c-btn {
  display: inline-flex;
  align-items: center;
  gap: var(--spacing-sm);
  padding: var(--spacing-sm) var(--spacing-md);
  border: 1px solid transparent;
  border-radius: var(--border-radius);
  background: var(--color-white);
  color: var(--color-gray-700);
  text-decoration: none;
  font-weight: 500;
  font-size: var(--font-size-sm);
  cursor: pointer;
  padding: 0.75rem 1.5rem;
  /* Narrow transitions to avoid repaints on unrelated properties */
  transition: box-shadow 150ms ease, background-color 150ms ease, color 150ms ease, border-color 150ms ease;
  /* Smoother hover, reduce repaint jank */
  will-change: box-shadow;
  backface-visibility: hidden;
  box-shadow: var(--shadow-sm);
}

.c-btn:hover {
  box-shadow: var(--shadow-md);
  /* Remove translateY to prevent hover flicker caused by cursor leaving the element */
  /* transform: translateY(-1px); */
}

.c-btn:active {
  /* Keep “press” feedback subtle without vertical jump on hover */
  /* transform: translateY(0); */
  box-shadow: var(--shadow-sm);
}

.c-btn--primary {
  background: var(--area-gradient);
  color: var(--area-text-on-primary);
  border-color: var(--area-color);
}

.c-btn--primary:hover {
  background: var(--area-primary-dark);
}

.c-btn--secondary {
  background: var(--area-secondary-color);
  color: var(--area-text-on-secondary);
  border-color: var(--area-secondary-color);
}

.c-btn--secondary:hover {
  background: var(--area-color);
  color: var(--area-text-on-primary);
  border-color: var(--area-color);
}

.c-btn--warning {
  background: var(--color-warning);
  color: var(--color-white);
  border-color: var(--color-warning);
}

.c-btn--warning:hover {
  background: color-mix(in srgb, var(--color-warning) 90%, black);
}

.c-btn--danger {
  background: var(--color-error);
  color: var(--color-white);
  border-color: var(--color-error);
}

.c-btn--danger:hover {
  background: color-mix(in srgb, var(--color-error) 90%, black);
}

.c-btn--nav {
  background: var(--color-white);
  border-color: var(--color-gray-300);
  color: var(--color-gray-700);
}

.c-btn--nav:hover {
  border-color: var(--area-color);
  color: var(--area-color);
}

.c-btn--add {
  background: var(--area-gradient);
  color: var(--area-text-on-primary);
  border-color: var(--area-color);
  font-weight: 600;
}

.c-btn--add:hover {
  background: var(--area-primary-dark);
}

.c-btn--participants {
  background: var(--area-tertiary-color);
  color: var(--area-color);
  border-color: color-mix(in srgb, var(--area-color) 30%, transparent);
}

.c-btn--participants:hover {
  background: var(--area-primary-light);
}

.c-btn--sm {
  padding: var(--spacing-xs) var(--spacing-sm);
  font-size: var(--font-size-xs);
}

.c-btn--sm .c-btn__icon {
  width: 14px;
  height: 14px;
}

.c-btn--lg {
  padding: var(--spacing-md) var(--spacing-lg);
  font-size: var(--font-size-lg);
}

.c-btn--icon {
  padding: var(--spacing-xs) var(--spacing-sm);
  gap: var(--spacing-xs);
}

.c-btn--icon-only {
  margin-inline-end: var(--spacing-xs);
  padding: var(--spacing-xs);
  width: var(--spacing-xl);
  height: var(--spacing-xl);
  justify-content: center;
}

.c-btn__icon {
  width: 16px;
  height: 16px;
  stroke-width: 2;
}

/* Reduced motion preference */
@media (prefers-reduced-motion: reduce) {
  .c-btn {
    transition: none;
  }
}
.c-booking__action-buttons {
  display: flex;
  gap: var(--spacing-xs);
  flex-wrap: wrap;
}

@media (max-width: 768px) {
  .c-btn {
    padding: var(--spacing-xs) var(--spacing-sm);
    font-size: var(--font-size-xs);
  }
  .c-booking__action-buttons {
    flex-direction: column;
  }
  .c-booking__action-buttons .c-btn {
    justify-content: center;
  }
}
.c-btn[aria-busy=true],
.c-btn[aria-disabled=true] {
  opacity: 0.6;
  cursor: not-allowed;
  pointer-events: none;
  transform: none;
  box-shadow: var(--shadow-sm);
}

.c-btn.is-loading {
  opacity: 0.6;
  cursor: not-allowed;
  pointer-events: none;
  transform: none;
  box-shadow: var(--shadow-sm);
  position: relative;
}

.c-btn.is-loading::after,
.c-btn[aria-busy=true]::after {
  content: "";
  width: 0.9em;
  height: 0.9em;
  border-radius: 50%;
  border: 2px solid color-mix(in srgb, currentColor 30%, transparent);
  border-top-color: currentColor;
  display: inline-block;
  margin-left: 0.5rem;
  animation: btn-spin 0.8s linear infinite;
}

@keyframes btn-spin {
  to {
    transform: rotate(360deg);
  }
}
@media (prefers-reduced-motion: reduce) {
  .c-btn.is-loading::after,
  .c-btn[aria-busy=true]::after {
    animation: none;
  }
}
.c-timeslot-card {
  display: flex;
  background: var(--color-white);
  border-radius: var(--border-radius-lg);
  box-shadow: var(--shadow-sm);
  border: 1px solid color-mix(in srgb, var(--area-color) 15%, var(--color-gray-200));
  overflow: hidden;
  transition: all 0.2s ease;
  margin-bottom: var(--spacing-md);
  /*&:hover {
      box-shadow: var(--shadow-md);
      transform: translateY(-1px);
      border-color: var(--area-color);
  }*/
}

.c-timeslot-sidebar {
  width: 100px;
  background: var(--color-gray-50);
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 0 var(--spacing-sm);
  gap: var(--spacing-sm);
  border-right: 1px solid color-mix(in srgb, var(--area-color) 25%, var(--color-gray-200));
  overflow: hidden;
}

.c-time-display {
  text-align: center;
  min-width: 100%;
  background: var(--area-color);
  padding: var(--spacing-xs);
  width: calc(100% + 2 * var(--spacing-sm));
}

.c-time-display__start {
  font-size: var(--font-size-xl);
  font-weight: 700;
  color: var(--area-secondary-color);
}

.c-capacity-display {
  width: 100%;
  text-align: center;
  display: flex;
  flex-direction: column;
  height: 100%;
}

.c-capacity-display__header {
  margin-bottom: var(--spacing-xs);
}

.c-capacity-display__percentage {
  font-size: var(--font-size-sm);
  font-weight: 600;
  color: var(--color-gray-700);
}

.c-capacity-display__percentage--overbooked {
  color: var(--color-error);
}

.c-capacity-display__bar {
  height: 8px;
  background: var(--color-gray-200);
  border-radius: var(--border-radius-sm);
  overflow: hidden;
  margin-bottom: var(--spacing-xs);
}

.c-capacity-display__filled {
  height: 100%;
  background: var(--area-color);
  transition: width 0.3s ease;
}

.c-capacity-display__filled--overbooked {
  background: var(--color-error);
}

.c-capacity-display__text {
  font-size: var(--font-size-xs);
  color: var(--color-gray-600);
  font-weight: 500;
}

.c-capacity-display__current {
  font-weight: 700;
  color: var(--area-color);
}

.c-capacity-display__separator {
  margin: 0 2px;
}

.c-capacity-display__total {
  opacity: 0.8;
}

.c-capacity-display__overbooked {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin-top: var(--spacing-sm);
}

.c-capacity-display__overbooked-icon {
  width: 3em;
  height: 3em;
  color: var(--color-error);
}

.c-capacity-display__overbooked-text {
  font-size: var(--font-size-xs);
  color: var(--color-gray-600);
  font-weight: 500;
}

.c-revenue-display {
  width: 100%;
  text-align: center;
}

.c-revenue-display__amount {
  font-size: var(--font-size-sm);
  font-weight: 600;
  color: var(--color-gray-700);
}

.c-timeslot-actions {
  width: calc(100% + 2 * var(--spacing-sm));
  display: flex;
}

.c-btn--full-width {
  width: 100%;
  font-size: var(--font-size-xs);
  padding: var(--spacing-xs);
}

.c-btn--full-width .c-btn__icon {
  width: 16px;
  height: 16px;
}

.c-btn--full-width .c-btn__icon svg, .c-btn--full-width .c-btn__icon i {
  width: 16px;
  height: 16px;
}

.c-btn--full-width span {
  margin-left: var(--spacing-xs);
}

.c-btn--add-booking {
  flex: 1;
  padding: var(--spacing-sm);
  border-radius: 0;
}

.c-btn--add-booking .c-btn__icon {
  width: 1.2em;
  height: 1.2em;
}

.c-timeslot-content {
  flex: 1;
  background: var(--color-white);
  min-height: 120px;
}

.c-no-bookings {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 120px;
  text-align: center;
  color: var(--color-gray-600);
  padding: var(--spacing-md);
}

.c-no-bookings__text {
  font-size: var(--font-size-base);
  font-weight: 500;
  margin-bottom: var(--spacing-xs);
}

.c-no-bookings__subtext {
  font-size: var(--font-size-sm);
  color: var(--color-gray-500);
}

.c-bookings-list {
  display: flex;
  flex-direction: column;
}

.c-booking-row {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: var(--spacing-md);
  align-items: center;
  padding: var(--spacing-sm) var(--spacing-md);
  border-bottom: 1px solid var(--color-gray-100);
  transition: all 0.2s ease;
  position: relative;
  /* Collapsible panel that remains in the grid */
  /* Collapsed state: keep in grid but visually hidden and non-interactive */
}

.c-booking-row:hover {
  background: var(--area-tertiary-color);
}

.c-booking-row:last-child {
  border-bottom: none;
}

.c-booking-row .c-booking-row__participants-list {
  grid-column: 1/-1;
  /* your existing styles… */
  margin-top: var(--spacing-sm);
  padding-top: var(--spacing-sm);
  border-top: 1px solid var(--color-gray-200);
  /* animation-friendly properties */
  overflow: hidden;
  max-height: 1000px; /* large enough to fit typical content */
  opacity: 1;
  transition: max-height 0.3s ease, opacity 0.2s ease, padding-top 0.2s ease, margin-top 0.2s ease, border-color 0.2s ease;
}

.c-booking-row .c-booking-row__participants-list[data-collapsed="1"] {
  max-height: 0;
  opacity: 0;
  padding-top: 0;
  margin-top: 0;
  border-color: transparent;
  pointer-events: none;
}

.c-booking-row__customer {
  display: flex;
  align-items: center;
  gap: var(--spacing-sm);
  min-width: 0;
}

.c-booking-row__avatar {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: var(--area-secondary-color);
  color: var(--area-text-on-secondary);
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: var(--font-size-xs);
  flex-shrink: 0;
}

.c-booking-row__info {
  min-width: 0;
  flex: 1;
}

.c-booking-row__name {
  font-weight: 600;
  color: var(--color-gray-900);
  font-size: var(--font-size-sm);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.c-booking-row__phone {
  font-size: var(--font-size-xs);
  color: var(--color-gray-600);
  margin-top: 2px;
}

.c-booking-row__details {
  display: flex;
  flex-direction: column;
  gap: 2px;
  text-align: right;
  font-size: var(--font-size-sm);
}

.c-booking-row__seats {
  font-size: var(--font-size-xs);
  color: var(--color-gray-700);
}

.c-booking-row__seats strong {
  color: var(--area-color);
  font-size: var(--font-size-sm);
}

.c-booking-row__price {
  font-size: var(--font-size-xs);
  font-weight: 600;
  color: var(--color-gray-900);
}

/* Visual switch for paid/unpaid */
.c-booking-row__status {
  display: flex;
  align-items: center;
  justify-content: center;
}

.c-switch {
  --switch-height: 22px;
  --switch-width: 42px;
  --switch-padding: 2px;
  --thumb-size: calc(var(--switch-height) - 2 * var(--switch-padding));
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: var(--spacing-sm);
  padding: 0 var(--spacing-xs);
  background: transparent;
  border: none;
  cursor: pointer;
  user-select: none;
}

.c-switch:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--area-color) 25%, transparent);
  border-radius: var(--border-radius-sm);
}

.c-switch__track {
  position: relative;
  width: var(--switch-width);
  height: var(--switch-height);
  background: var(--color-gray-300);
  border-radius: var(--switch-height);
  transition: background 0.15s ease;
  flex: 0 0 var(--switch-width);
}

.c-switch__thumb {
  position: absolute;
  top: var(--switch-padding);
  left: var(--switch-padding);
  width: var(--thumb-size);
  height: var(--thumb-size);
  background: var(--color-white);
  border-radius: 50%;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
  transition: transform 0.15s ease;
  transform: translateX(0);
}

/* Label next to switch */
.c-switch__label {
  font-size: var(--font-size-xs);
  font-weight: 700;
  color: var(--color-gray-800);
  text-transform: none;
}

/* ON state */
.c-switch.is-on .c-switch__track {
  background: var(--color-success);
}

.c-switch.is-on .c-switch__thumb {
  transform: translateX(calc(var(--switch-width) - var(--thumb-size) - 2 * var(--switch-padding)));
}

/* OFF state */
.c-switch.is-off .c-switch__track {
  background: var(--color-warning);
}

.c-switch.is-off .c-switch__thumb {
  transform: translateX(0);
}

.c-switch[aria-busy=true],
.c-switch[aria-disabled=true] {
  opacity: 0.6;
  cursor: default;
  pointer-events: none;
}

.c-switch[aria-busy=true]:focus-visible {
  box-shadow: none;
}

.c-switch[aria-busy=true] .c-switch__track {
  position: relative;
}

.c-switch[aria-busy=true] .c-switch__track::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: calc(var(--thumb-size) * 0.6);
  height: calc(var(--thumb-size) * 0.6);
  margin: calc(var(--thumb-size) * -0.3) 0 0 calc(var(--thumb-size) * -0.3);
  border-radius: 50%;
  border: 2px solid color-mix(in srgb, var(--color-gray-800) 25%, transparent);
  border-top-color: var(--color-gray-800);
  animation: switch-spin 0.8s linear infinite;
  opacity: 0.9;
}

@keyframes switch-spin {
  to {
    transform: rotate(360deg);
  }
}
@media (prefers-reduced-motion: reduce) {
  .c-switch[aria-busy=true] .c-switch__track::after {
    animation: none;
  }
}
.c-booking-status {
  display: inline-flex;
  align-items: center;
  gap: var(--spacing-xs);
  padding: 2px var(--spacing-xs);
  border-radius: var(--border-radius-sm);
  font-size: var(--font-size-xs);
  font-weight: 600;
  white-space: nowrap;
}

.c-booking-status--paid {
  background: var(--color-success);
  color: var(--color-white);
}

.c-booking-status--unpaid {
  background: var(--color-warning);
  color: var(--color-white);
}

.c-booking-status__icon {
  width: 10px;
  height: 10px;
}

.c-booking-row__participants {
  display: flex;
  justify-content: center;
}

.c-participants-btn {
  display: flex;
  align-items: center;
  gap: var(--spacing-xs);
  padding: var(--spacing-xs);
  background: var(--area-color);
  color: var(--area-text-on-primary);
  border: none;
  border-radius: var(--border-radius-sm);
  font-size: var(--font-size-xs);
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
  min-width: 28px;
  height: 28px;
  justify-content: center;
  position: relative;
}

.c-participants-btn:hover {
  background: var(--area-secondary-color);
  color: var(--area-text-on-secondary);
}

.c-participants-btn.is-active {
  background: var(--area-secondary-color);
}

.c-participants-btn__icon {
  width: 12px;
  height: 12px;
  transition: transform 0.2s ease;
}

/* Show "users" icon by default, and "close" icon when expanded */
.c-participants-btn__icon .icon--close {
  display: none;
}

.c-btn__icon .icon--close {
  display: none;
}

.c-participants-btn[aria-expanded=true] .icon--users {
  display: none;
}

.c-participants-btn[aria-expanded=true] .icon--close {
  display: inline;
}

/* Optional: keep layout consistent */
.c-participants-btn__icon svg {
  width: 1em;
  height: 1em;
  vertical-align: middle;
}

.c-booking-row__actions {
  display: flex;
  gap: var(--spacing-xs);
  justify-content: flex-end;
  flex-wrap: wrap;
}

.c-booking-row__actions .c-btn {
  display: inline-flex;
  align-items: center;
  gap: var(--spacing-xs);
  padding: calc(var(--spacing-xs) - 1px) var(--spacing-sm);
  border-radius: var(--border-radius-sm);
  border: 1px solid color-mix(in srgb, var(--color-gray-500) 20%, transparent);
  background: var(--color-white);
  color: var(--color-gray-800);
  font-size: var(--font-size-xs);
  font-weight: 600;
  line-height: 1;
  text-decoration: none;
  cursor: pointer;
  transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease, transform 0.05s ease;
}

.c-booking-row__actions .c-btn:hover {
  background: var(--area-tertiary-color);
  border-color: color-mix(in srgb, var(--area-color) 40%, transparent);
}

.c-booking-row__actions .c-btn:active {
  transform: translateY(1px);
}

.c-booking-row__actions .c-btn:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--area-color) 20%, transparent);
  border-color: var(--area-color);
}

.c-booking-row__actions .c-btn--small {
  padding: calc(var(--spacing-xs) - 2px) var(--spacing-xs);
  font-size: var(--font-size-xs);
  border-radius: var(--border-radius-sm);
}

.c-booking-row__actions .c-btn--ghost {
  background: transparent;
  border-color: color-mix(in srgb, var(--color-gray-600) 20%, transparent);
}

.c-booking-row__actions .c-btn--ghost:hover {
  background: color-mix(in srgb, var(--area-tertiary-color) 70%, transparent);
}

.c-booking-row__actions .c-btn__icon {
  display: inline-flex;
  width: 14px;
  height: 14px;
  align-items: center;
  justify-content: center;
  flex: 0 0 14px;
}

.c-booking-row__actions .c-btn__icon svg, .c-booking-row__actions .c-btn__icon i {
  width: 14px;
  height: 14px;
  display: block;
}

.c-booking-row__actions .c-btn__label {
  display: inline-block;
}

.c-booking-row__actions .c-btn--edit {
  color: var(--area-color);
  border-color: color-mix(in srgb, var(--area-color) 40%, transparent);
}

.c-booking-row__actions .c-btn--edit:hover {
  background: color-mix(in srgb, var(--area-color) 12%, var(--color-white));
  border-color: var(--area-color);
}

.c-booking-row__actions .c-btn--delete {
  color: var(--color-danger);
  border-color: color-mix(in srgb, var(--color-danger) 40%, transparent);
}

.c-booking-row__actions .c-btn--delete:hover {
  background: color-mix(in srgb, var(--color-danger) 10%, var(--color-white));
  border-color: var(--color-danger);
  color: var(--color-danger);
}

.c-booking-row__actions a[data-current-status=paid] {
  color: var(--color-success);
  border-color: color-mix(in srgb, var(--color-success) 40%, transparent);
}

.c-booking-row__actions a[data-current-status=paid]:hover {
  background: color-mix(in srgb, var(--color-success) 10%, var(--color-white));
  border-color: var(--color-success);
}

.c-booking-row__actions a[data-current-status=unpaid] {
  color: var(--color-warning);
  border-color: color-mix(in srgb, var(--color-warning) 40%, transparent);
}

.c-booking-row__actions a[data-current-status=unpaid]:hover {
  background: color-mix(in srgb, var(--color-warning) 10%, var(--color-white));
  border-color: var(--color-warning);
}

.c-booking-row__participants-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: var(--spacing-xs);
}

.c-booking-row__participants-list[style*="display: block"] {
  animation: slideDown 0.3s ease-out;
}

.c-participant {
  display: flex;
  align-items: center;
  gap: var(--spacing-xs);
  padding: var(--spacing-xs);
  background: var(--area-tertiary-color);
  border-radius: var(--border-radius);
  border: 1px solid color-mix(in srgb, var(--area-color) 25%, transparent);
  transition: all 0.2s ease;
}

.c-participant:hover {
  background: color-mix(in srgb, var(--area-tertiary-color) 80%, var(--area-color));
  border-color: color-mix(in srgb, var(--area-color) 40%, transparent);
}

.c-participant__avatar {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: var(--area-color);
  color: var(--area-text-on-primary);
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 600;
  font-size: var(--font-size-xs);
  flex-shrink: 0;
}

.c-participant__info {
  flex: 1;
  min-width: 0;
}

.c-participant__name {
  font-weight: 600;
  color: var(--color-gray-900);
  font-size: var(--font-size-xs);
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.c-participant__type {
  font-size: var(--font-size-xs);
  color: var(--color-gray-600);
  margin-top: 1px;
}

@keyframes slideDown {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@media (max-width: 768px) {
  .c-timeslot-card {
    flex-direction: column;
  }
  .c-timeslot-sidebar {
    width: 100%;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    padding: var(--spacing-sm) var(--spacing-md);
  }
  .c-time-display {
    margin: calc(var(--spacing-sm) * -1) 0 0 calc(var(--spacing-sm) * -1);
    padding: var(--spacing-xs) var(--spacing-sm);
  }
  .c-capacity-display {
    flex: 1;
    max-width: 120px;
    margin: 0 var(--spacing-md);
  }
  .c-timeslot-actions {
    width: auto;
    margin-top: 0;
  }
  .c-btn--full-width {
    width: auto;
    padding: var(--spacing-xs) var(--spacing-sm);
  }
  .c-booking-row {
    grid-template-columns: 1fr;
    gap: var(--spacing-sm);
  }
  .c-booking-row__customer,
  .c-booking-row__details,
  .c-booking-row__status,
  .c-booking-row__participants,
  .c-booking-row__actions {
    justify-self: stretch;
  }
  .c-booking-row__details {
    flex-direction: row;
    justify-content: space-between;
    text-align: left;
  }
  .c-booking-row__actions {
    justify-content: stretch;
    gap: var(--spacing-sm);
  }
  .c-booking-row__actions .c-btn {
    padding: var(--spacing-xs) var(--spacing-sm);
    flex: 1 1 auto; /* allow buttons to fill the row if needed */
    justify-content: center;
  }
  .c-booking-row__participants-list {
    grid-template-columns: 1fr;
  }
}
/**********
 * Source file: _datepicker.scss
 */
/*
 * Scss manually converted from .styl (stylus) file.
 * Stylus functions/syntax => sass function/syntax:
 *    alpha => rgba
 */
/*
 * Scss manually converted from .styl (stylus) file.
 * Stylus functions/syntax => sass function/syntax:
 *    alpha => rgba
 *    if $noCalendarBorder is defined => @if global-variable-exists(noCalendarBorder) {
 *      note: no $ before the variable in sass
 */
.flatpickr-calendar {
  background: transparent;
  opacity: 0;
  display: none;
  text-align: center;
  visibility: hidden;
  padding: 0;
  animation: none;
  direction: ltr;
  border: 0;
  font-size: 14px;
  line-height: 24px;
  border-radius: 5px;
  position: absolute;
  width: 250.875px;
  box-sizing: border-box;
  touch-action: manipulation;
  box-shadow: 0 3px 13px rgba(0, 0, 0, 0.08);
}

.flatpickr-calendar.open, .flatpickr-calendar.inline {
  opacity: 1;
  max-height: 640px;
  visibility: visible;
}

.flatpickr-calendar.open {
  display: inline-block;
  z-index: 99999;
}

.flatpickr-calendar.animate.open {
  animation: fpFadeInDown 300ms cubic-bezier(0.23, 1, 0.32, 1);
}

.flatpickr-calendar.inline {
  display: block;
  position: relative;
  top: 2px;
}

.flatpickr-calendar.static {
  position: absolute;
  top: calc(100% + 2px);
}

.flatpickr-calendar.static.open {
  z-index: 999;
  display: block;
}

.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+1) .flatpickr-day.inRange:nth-child(7n+7) {
  box-shadow: none !important;
}

.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+2) .flatpickr-day.inRange:nth-child(7n+1) {
  box-shadow: -2px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;
}

.flatpickr-calendar .hasWeeks .dayContainer, .flatpickr-calendar .hasTime .dayContainer {
  border-bottom: 0;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.flatpickr-calendar .hasWeeks .dayContainer {
  border-left: 0;
}

.flatpickr-calendar.showTimeInput.hasTime .flatpickr-time {
  height: 40px;
  border-top: 1px solid #e6e6e6;
}

.flatpickr-calendar.showTimeInput.hasTime .flatpickr-innerContainer {
  border-bottom: 0;
}

.flatpickr-calendar.showTimeInput.hasTime .flatpickr-time {
  border: 1px solid #e6e6e6;
}

.flatpickr-calendar.noCalendar.hasTime .flatpickr-time {
  height: auto;
}

.flatpickr-calendar:before, .flatpickr-calendar:after {
  position: absolute;
  display: block;
  pointer-events: none;
  border: solid transparent;
  content: "";
  height: 0;
  width: 0;
  left: 22px;
}

.flatpickr-calendar.rightMost:before, .flatpickr-calendar.rightMost:after {
  left: auto;
  right: 22px;
}

.flatpickr-calendar:before {
  border-width: 5px;
  margin: 0 -5px;
}

.flatpickr-calendar:after {
  border-width: 4px;
  margin: 0 -4px;
}

.flatpickr-calendar.arrowTop:before, .flatpickr-calendar.arrowTop:after {
  bottom: 100%;
}

.flatpickr-calendar.arrowTop:before {
  border-bottom-color: #e6e6e6;
}

.flatpickr-calendar.arrowTop:after {
  border-bottom-color: transparent;
}

.flatpickr-calendar.arrowBottom:before, .flatpickr-calendar.arrowBottom:after {
  top: 100%;
}

.flatpickr-calendar.arrowBottom:before {
  border-top-color: #e6e6e6;
}

.flatpickr-calendar.arrowBottom:after {
  border-top-color: transparent;
}

.flatpickr-calendar:focus {
  outline: 0;
}

.flatpickr-wrapper {
  position: relative;
  display: inline-block;
}

.flatpickr-months {
  display: flex;
}

.flatpickr-months .flatpickr-month {
  border-radius: 5px 5px 0 0;
  background: transparent;
  color: rgba(0, 0, 0, 0.9);
  fill: rgba(0, 0, 0, 0.9);
  height: 34px;
  line-height: 1;
  text-align: center;
  position: relative;
  user-select: none;
  overflow: hidden;
  flex: 1;
}

.flatpickr-months .flatpickr-prev-month, .flatpickr-months .flatpickr-next-month {
  text-decoration: none;
  cursor: pointer;
  position: absolute;
  top: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 34px;
  padding: 0 10px;
  z-index: 3;
  color: rgba(0, 0, 0, 0.9);
  fill: rgba(0, 0, 0, 0.9);
}

.flatpickr-months .flatpickr-prev-month.disabled, .flatpickr-months .flatpickr-next-month.disabled {
  display: none;
}

.flatpickr-months .flatpickr-prev-month i, .flatpickr-months .flatpickr-next-month i {
  position: relative;
}

.flatpickr-months .flatpickr-prev-month.flatpickr-prev-month, .flatpickr-months .flatpickr-next-month.flatpickr-prev-month {
  /*!
  /*rtl:begin:ignore*/ /*
*/
  left: 0;
  /*!
  /*rtl:end:ignore*/ /*
*/
}

.flatpickr-months .flatpickr-prev-month.flatpickr-next-month, .flatpickr-months .flatpickr-next-month.flatpickr-next-month {
  /*!
  /*rtl:begin:ignore*/ /*
*/
  right: 0;
  /*!
  /*rtl:end:ignore*/ /*
*/
}

.flatpickr-months .flatpickr-prev-month:hover, .flatpickr-months .flatpickr-next-month:hover {
  color: var(--area-color);
}

.flatpickr-months .flatpickr-prev-month:hover svg, .flatpickr-months .flatpickr-next-month:hover svg {
  fill: #f64747;
}

.flatpickr-months .flatpickr-prev-month svg, .flatpickr-months .flatpickr-next-month svg {
  width: 14px;
  height: 14px;
}

.flatpickr-months .flatpickr-prev-month svg path, .flatpickr-months .flatpickr-next-month svg path {
  transition: fill 0.1s;
  fill: inherit;
}

.numInputWrapper {
  position: relative;
  height: auto;
}

.numInputWrapper input, .numInputWrapper span {
  display: inline-block;
}

.numInputWrapper input {
  width: 100%;
}

.numInputWrapper input::-ms-clear {
  display: none;
}

.numInputWrapper input::-webkit-outer-spin-button, .numInputWrapper input::-webkit-inner-spin-button {
  margin: 0;
  -webkit-appearance: none;
}

.numInputWrapper span {
  position: absolute;
  right: -0.5ch;
  width: 14px;
  padding: 0 4px 0 2px;
  height: 50%;
  line-height: 50%;
  opacity: 0;
  cursor: pointer;
  border: 1px solid rgba(57, 57, 57, 0.15);
  box-sizing: border-box;
}

.numInputWrapper span:hover {
  background: rgba(0, 0, 0, 0.1);
}

.numInputWrapper span:active {
  background: rgba(0, 0, 0, 0.2);
}

.numInputWrapper span:after {
  display: block;
  content: "";
  position: absolute;
}

.numInputWrapper span.arrowUp {
  top: 0;
  border-bottom: 0;
}

.numInputWrapper span.arrowUp:after {
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-bottom: 4px solid rgba(57, 57, 57, 0.6);
  top: 26%;
}

.numInputWrapper span.arrowDown {
  top: 50%;
}

.numInputWrapper span.arrowDown:after {
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 4px solid rgba(57, 57, 57, 0.6);
  top: 40%;
}

.numInputWrapper span svg {
  width: inherit;
  height: auto;
}

.numInputWrapper span svg path {
  fill: rgba(0, 0, 0, 0.5);
}

.numInputWrapper:hover {
  background: rgba(0, 0, 0, 0.05);
}

.numInputWrapper:hover span {
  opacity: 1;
}

.flatpickr-current-month {
  font-size: 135%;
  font-weight: 300;
  color: inherit;
  position: absolute;
  width: 75%;
  left: 12.5%;
  padding: 7.48px 0 0 0;
  line-height: 1;
  height: 34px;
  display: inline-block;
  text-align: center;
  transform: translate3d(0px, 0px, 0px);
}

.flatpickr-current-month span.cur-month {
  font-family: inherit;
  font-weight: 700;
  color: inherit;
  display: inline-block;
  margin-left: 0.5ch;
  padding: 0;
}

.flatpickr-current-month span.cur-month:hover {
  background: rgba(0, 0, 0, 0.05);
}

.flatpickr-current-month .numInputWrapper {
  width: 6ch;
  width: 7ch\0 ;
  display: inline-block;
}

.flatpickr-current-month .numInputWrapper span.arrowUp:after {
  border-bottom-color: rgba(0, 0, 0, 0.9);
}

.flatpickr-current-month .numInputWrapper span.arrowDown:after {
  border-top-color: rgba(0, 0, 0, 0.9);
}

.flatpickr-current-month input.cur-year {
  background: transparent;
  box-sizing: border-box;
  color: inherit;
  cursor: text;
  padding: 0 0 0 0.5ch;
  margin: 0;
  display: inline-block;
  font-size: inherit;
  font-family: inherit;
  font-weight: 300;
  line-height: inherit;
  height: auto;
  border: 0;
  border-radius: 0;
  vertical-align: initial;
  -moz-appearance: textfield;
}

.flatpickr-current-month input.cur-year::-webkit-outer-spin-button, .flatpickr-current-month input.cur-year::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.flatpickr-current-month input.cur-year:focus {
  outline: 0;
}

.flatpickr-current-month input.cur-year[disabled], .flatpickr-current-month input.cur-year[disabled]:hover {
  font-size: 100%;
  color: rgba(0, 0, 0, 0.5);
  background: transparent;
  pointer-events: none;
}

.flatpickr-monthDropdown-months {
  appearance: menulist;
  background: transparent;
  border: none;
  border-radius: 0;
  box-sizing: border-box;
  color: inherit;
  cursor: pointer;
  font-size: inherit;
  font-family: inherit;
  font-weight: 300;
  height: auto;
  line-height: inherit;
  margin: -1px 0 0 0;
  outline: none;
  padding: 0 0 0 0.5ch;
  position: relative;
  vertical-align: initial;
  -webkit-box-sizing: border-box;
  -webkit-appearance: menulist;
  -moz-appearance: menulist;
  width: auto;
}

.flatpickr-monthDropdown-months:focus, .flatpickr-monthDropdown-months:active {
  outline: none;
}

.flatpickr-monthDropdown-months:hover {
  background: rgba(0, 0, 0, 0.05);
}

.flatpickr-weekdays {
  background: transparent;
  text-align: center;
  overflow: hidden;
  width: 100%;
  display: flex;
  align-items: center;
  height: 28px;
}

.flatpickr-weekdays .flatpickr-weekdaycontainer {
  display: flex;
  flex: 1;
}

span.flatpickr-weekday {
  cursor: default;
  font-size: 90%;
  background: transparent;
  color: rgba(0, 0, 0, 0.54);
  line-height: 1;
  margin: 0;
  text-align: center;
  display: block;
  flex: 1;
  font-weight: bolder;
}

.dayContainer, .flatpickr-weeks {
  padding: 1px 0 0 0;
}

.flatpickr-days {
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: flex-start;
  width: 250.875px;
  border-left: 1px solid #e6e6e6;
  border-right: 1px solid #e6e6e6;
}

.flatpickr-days:focus {
  outline: 0;
}

.dayContainer {
  padding: 0;
  outline: 0;
  text-align: left;
  width: 250.875px;
  min-width: 250.875px;
  max-width: 250.875px;
  box-sizing: border-box;
  display: inline-block;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -ms-flex-pack: justify;
  justify-content: space-around;
  transform: translate3d(0px, 0px, 0px);
  opacity: 1;
}

.dayContainer + .dayContainer {
  box-shadow: -1px 0 0 #e6e6e6;
}

.flatpickr-day {
  background: none;
  border: 1px solid transparent;
  border-radius: 150px;
  box-sizing: border-box;
  color: #393939;
  cursor: pointer;
  font-weight: 400;
  width: 14.2857143%;
  flex-basis: 14.2857143%;
  max-width: 31px;
  height: 31px;
  line-height: 31px;
  margin: 0;
  display: inline-block;
  position: relative;
  justify-content: center;
  text-align: center;
}

.flatpickr-day.inRange, .flatpickr-day.today.inRange, .flatpickr-day:hover, .flatpickr-day:focus, .flatpickr-day.prevMonthDay.inRange, .flatpickr-day.prevMonthDay.today.inRange, .flatpickr-day.prevMonthDay:hover, .flatpickr-day.prevMonthDay:focus, .flatpickr-day.nextMonthDay.inRange, .flatpickr-day.nextMonthDay.today.inRange, .flatpickr-day.nextMonthDay:hover, .flatpickr-day.nextMonthDay:focus {
  cursor: pointer;
  outline: 0;
  color: var(--area-text-on-primary);
  background: var(--area-color);
  border-color: var(--area-color);
}

.flatpickr-day.today {
  border-color: var(--area-color);
}

.flatpickr-day.today:hover, .flatpickr-day.today:focus {
  border-color: var(--area-color);
  background: var(--area-color);
  color: #fff;
}

.flatpickr-day.selected, .flatpickr-day.selected.inRange, .flatpickr-day.selected:focus, .flatpickr-day.selected:hover, .flatpickr-day.selected.prevMonthDay, .flatpickr-day.selected.nextMonthDay, .flatpickr-day.startRange, .flatpickr-day.startRange.inRange, .flatpickr-day.startRange:focus, .flatpickr-day.startRange:hover, .flatpickr-day.startRange.prevMonthDay, .flatpickr-day.startRange.nextMonthDay, .flatpickr-day.endRange, .flatpickr-day.endRange.inRange, .flatpickr-day.endRange:focus, .flatpickr-day.endRange:hover, .flatpickr-day.endRange.prevMonthDay, .flatpickr-day.endRange.nextMonthDay {
  background: var(--area-color);
  box-shadow: none;
  color: #fff;
  border-color: var(--area-color);
}

.flatpickr-day.selected.startRange, .flatpickr-day.startRange.startRange, .flatpickr-day.endRange.startRange {
  border-radius: 50px 0 0 50px;
}

.flatpickr-day.selected.endRange, .flatpickr-day.startRange.endRange, .flatpickr-day.endRange.endRange {
  border-radius: 0 50px 50px 0;
}

.flatpickr-day.selected.startRange + .endRange:not(:nth-child(7n+1)), .flatpickr-day.startRange.startRange + .endRange:not(:nth-child(7n+1)), .flatpickr-day.endRange.startRange + .endRange:not(:nth-child(7n+1)) {
  box-shadow: -10px 0 0 var(--area-color);
}

.flatpickr-day.selected.startRange.endRange, .flatpickr-day.startRange.startRange.endRange, .flatpickr-day.endRange.startRange.endRange {
  border-radius: 50px;
}

.flatpickr-day.inRange {
  border-radius: 0;
  box-shadow: -5px 0 0 var(--area-color), 5px 0 0 var(--area-color);
}

.flatpickr-day.disabled, .flatpickr-day.disabled:hover, .flatpickr-day.prevMonthDay, .flatpickr-day.nextMonthDay, .flatpickr-day.notAllowed, .flatpickr-day.notAllowed.prevMonthDay, .flatpickr-day.notAllowed.nextMonthDay {
  color: rgba(57, 57, 57, 0.3);
  background: transparent;
  border-color: transparent;
  cursor: default;
}

.flatpickr-day.disabled, .flatpickr-day.disabled:hover {
  cursor: not-allowed;
  color: rgba(57, 57, 57, 0.1);
}

.flatpickr-day.week.selected {
  border-radius: 0;
  box-shadow: -5px 0 0 var(--area-color), 5px 0 0 var(--area-color);
}

.flatpickr-day.hidden {
  visibility: hidden;
}

.rangeMode .flatpickr-day {
  margin-top: 1px;
}

.flatpickr-weekwrapper {
  display: inline-block;
  float: left;
}

.flatpickr-weekwrapper .flatpickr-weeks {
  padding: 0 12px;
  border-left: 1px solid #e6e6e6;
}

.flatpickr-weekwrapper .flatpickr-weekday {
  float: none;
  width: 100%;
  line-height: 28px;
}

.flatpickr-weekwrapper span.flatpickr-day, .flatpickr-weekwrapper span.flatpickr-day:hover {
  display: block;
  width: 100%;
  max-width: none;
  color: rgba(57, 57, 57, 0.3);
  background: transparent;
  cursor: default;
  border: none;
}

.flatpickr-innerContainer {
  display: flex;
  box-sizing: border-box;
  overflow: hidden;
  background: #fff;
  border-bottom: 1px solid #e6e6e6;
}

.flatpickr-rContainer {
  display: inline-block;
  padding: 0;
  box-sizing: border-box;
}

.flatpickr-time {
  text-align: center;
  outline: 0;
  line-height: 40px;
  max-height: 40px;
  box-sizing: border-box;
  overflow: hidden;
  display: flex;
  background: #fff;
  border-radius: 0 0 5px 5px;
}

.flatpickr-time:after {
  content: "";
  display: table;
  clear: both;
}

.flatpickr-time .numInputWrapper {
  flex: 1;
  width: 40%;
  height: 40px;
  float: left;
}

.flatpickr-time .numInputWrapper span.arrowUp:after {
  border-bottom-color: #393939;
}

.flatpickr-time .numInputWrapper span.arrowDown:after {
  border-top-color: #393939;
}

.flatpickr-time.hasSeconds .numInputWrapper {
  width: 26%;
}

.flatpickr-time.time24hr .numInputWrapper {
  width: 49%;
}

.flatpickr-time input {
  background: transparent;
  box-shadow: none;
  border: 0;
  border-radius: 0;
  text-align: center;
  margin: 0;
  padding: 0;
  height: inherit;
  line-height: inherit;
  color: #393939;
  font-size: 14px;
  position: relative;
  box-sizing: border-box;
}

.flatpickr-time input.flatpickr-hour {
  font-weight: bold;
}

.flatpickr-time input.flatpickr-minute, .flatpickr-time input.flatpickr-second {
  font-weight: 400;
}

.flatpickr-time input:focus {
  outline: 0;
  border: 0;
}

.flatpickr-time .flatpickr-time-separator, .flatpickr-time .flatpickr-am-pm {
  height: inherit;
  display: inline-block;
  float: left;
  line-height: inherit;
  color: #393939;
  font-weight: bold;
  width: 2%;
  user-select: none;
  align-self: center;
}

.flatpickr-time .flatpickr-am-pm {
  outline: 0;
  width: 18%;
  cursor: pointer;
  text-align: center;
  font-weight: 400;
}

.flatpickr-time input:hover, .flatpickr-time input:focus, .flatpickr-time .flatpickr-am-pm:hover, .flatpickr-time .flatpickr-am-pm:focus {
  background: rgba(var(--area-color), 0.1);
}

.flatpickr-input[readonly] {
  cursor: pointer;
}

@keyframes fpFadeInDown {
  from {
    opacity: 0;
    transform: translate3d(0, -20px, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}
.flatpickr .input-group-append {
  cursor: pointer;
}

.c-sidebar__calendar .flatpickr-calendar {
  background: var(--color-white);
  border: 1px solid var(--color-gray-200);
  border-radius: var(--border-radius);
  box-shadow: var(--shadow-sm);
  font-family: inherit;
  font-size: var(--font-size-sm);
  color: var(--color-gray-700);
}

.c-sidebar__calendar .flatpickr-calendar.inline {
  display: block;
  position: relative;
  top: 0;
  left: 0;
  right: 0;
  box-shadow: none;
  border: 1px solid var(--color-gray-200);
}

.c-sidebar__calendar .flatpickr-calendar .flatpickr-days {
  width: 100%;
}

.c-sidebar__calendar .flatpickr-calendar .flatpickr-days .dayContainer {
  width: 100%;
  min-width: 100%;
  max-width: 100%;
}

.c-sidebar__calendar .flatpickr-calendar .flatpickr-day {
  height: 32px;
  width: 32px;
  line-height: 30px;
  font-size: var(--font-size-xs);
}

.c-sidebar__calendar .flatpickr-calendar .flatpickr-weekdays {
  height: 35px;
}

.c-sidebar__calendar .flatpickr-calendar .flatpickr-weekdays .flatpickr-weekday {
  height: 35px;
  line-height: 35px;
  font-size: var(--font-size-xs);
}

.c-sidebar__calendar .flatpickr-calendar .flatpickr-months .flatpickr-month {
  height: 45px;
}

.c-sidebar__calendar .flatpickr-calendar .flatpickr-months .flatpickr-current-month {
  height: 45px;
  padding: 12px 0 0 0;
  font-size: var(--font-size-base);
}

.c-sidebar__calendar .flatpickr-calendar .flatpickr-months .flatpickr-prev-month,
.c-sidebar__calendar .flatpickr-calendar .flatpickr-months .flatpickr-next-month {
  height: 45px;
  width: 45px;
}

.c-calendar__input {
  padding: var(--spacing-sm);
  border: 1px solid var(--color-gray-200);
  border-radius: var(--border-radius);
  background: var(--color-white);
  color: var(--color-gray-700);
  font-family: inherit;
  font-size: var(--font-size-sm);
  transition: border-color var(--transition-duration) var(--transition-easing);
  width: 100%;
  max-width: 100%;
}

.c-calendar__input:focus {
  border-color: var(--area-color);
  outline: 0;
  box-shadow: var(--shadow-sm);
}

.c-calendar__input:disabled {
  background-color: var(--color-gray-100);
  cursor: not-allowed;
}

.c-calendar__input.is-invalid {
  border-color: var(--color-error);
}

.c-calendar__input.is-invalid:focus {
  box-shadow: var(--color-error) 0 0 0 0.2rem;
}

@media (max-width: 768px) {
  .c-sidebar__calendar .flatpickr-calendar .flatpickr-day {
    height: 28px;
    width: 28px;
    line-height: 26px;
    font-size: var(--font-size-xs);
  }
  .c-sidebar__calendar .flatpickr-calendar .flatpickr-weekdays {
    height: 30px;
  }
  .c-sidebar__calendar .flatpickr-calendar .flatpickr-weekdays .flatpickr-weekday {
    height: 30px;
    line-height: 30px;
  }
  .c-sidebar__calendar .flatpickr-calendar .flatpickr-months .flatpickr-month {
    height: 40px;
  }
  .c-sidebar__calendar .flatpickr-calendar .flatpickr-months .flatpickr-current-month {
    height: 40px;
    padding: 10px 0 0 0;
    font-size: var(--font-size-sm);
  }
  .c-sidebar__calendar .flatpickr-calendar .flatpickr-months .flatpickr-prev-month,
  .c-sidebar__calendar .flatpickr-calendar .flatpickr-months .flatpickr-next-month {
    height: 40px;
    width: 40px;
  }
}
@media (prefers-contrast: high) {
  .flatpickr-calendar .flatpickr-day {
    border: 1px solid var(--color-gray-400);
  }
  .flatpickr-calendar .flatpickr-day.selected, .flatpickr-calendar .flatpickr-day.startRange, .flatpickr-calendar .flatpickr-day.endRange {
    border: 2px solid var(--color-gray-900);
  }
}
@media (prefers-reduced-motion: reduce) {
  .flatpickr-calendar.animate.open {
    animation: none;
  }
  .flatpickr-calendar .flatpickr-day {
    transition: none;
  }
}
@media print {
  .flatpickr-calendar {
    display: none !important;
  }
}
.c-booking-form {
  max-width: 1200px;
  margin: 0 auto;
  padding: 3rem 1rem 2rem 1rem;
}

.c-booking-form__form {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

.c-booking-form__section {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.c-booking-form__total {
  background: var(--area-tertiary-color);
  padding: 1rem;
  border-radius: 0.5rem;
  text-align: center;
  font-size: 1.125rem;
  color: var(--area-color);
  border: 1px solid var(--area-color);
  margin-top: 1rem;
  transition: all 0.3s ease;
}

.c-booking-form__total:empty {
  display: none;
}

.c-booking-form__total strong {
  font-weight: 600;
  display: block;
}

.c-booking-form__total--updated {
  animation: totalPulse 0.5s ease-out;
}

.c-booking-form__actions {
  display: flex;
  justify-content: center;
  padding-top: 1rem;
}

.c-debug-info {
  background: #fff3cd;
  border: 1px solid #ffeaa7;
  border-radius: 0.5rem;
  padding: 1rem;
  margin-bottom: 1rem;
  font-size: 0.875rem;
  color: #856404;
}

.c-card {
  background: var(--color-white, #fff);
  border: 1px solid color-mix(in srgb, var(--area-color) 20%, var(--color-gray-200));
  border-radius: var(--border-radius);
  box-shadow: var(--shadow-sm);
  overflow: hidden;
}

.c-card__header {
  background-color: var(--area-gradient-subtle);
  padding: 1rem 1.5rem;
  border-bottom: 1px solid #e0e0e0;
}

.c-card__title {
  margin: 0;
  font-size: 1.125rem;
  font-weight: 600;
  color: var(--area-primary-dark);
}

.c-card__body {
  padding: 1.5rem;
}

.c-field {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  /* addons Button -- input group/addon/inline for example search field with button (tightly coupled/attached with input */
}

.c-field__label {
  font-weight: 500;
  color: #333;
  font-size: 0.875rem;
}

.c-field__hint {
  font-weight: 400;
  color: #666;
  font-size: 0.75rem;
  margin-left: 0.5rem;
}

.c-field__required {
  color: #dc3545;
}

.c-field__input, .c-field__select {
  padding: 0.75rem;
  border: 1px solid #d1d5db;
  border-radius: 0.375rem;
  font-size: 0.875rem;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.c-field__input:focus, .c-field__select:focus {
  outline: none;
  border-color: var(--area-color);
  box-shadow: 0 0 0 3px rgba(var(--area-color), 0.1);
}

.c-field__input:invalid, .c-field__select:invalid {
  border-color: #dc3545;
}

.c-field__input--number {
  width: 80px;
}

.c-field__input--inline {
  flex: 1;
  min-width: 0;
}

.c-field__select {
  background: #fff;
  cursor: pointer;
}

.c-field__select:disabled {
  background: #f5f5f5;
  cursor: not-allowed;
}

.c-field__input--error {
  border-color: #dc3545;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}

.c-field__error {
  color: #dc3545;
  font-size: 0.875rem;
  margin-top: 0.25rem;
  display: block;
}

.c-field--addon, .c-field--inline, .c-field--input-group, .c-field--search {
  flex-direction: row;
  justify-content: flex-start;
  gap: 0;
}

.c-field__input--addon, .c-field__input--inline, .c-field__input--input-group, .c-field__input--search {
  margin-inline-end: -1px;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  flex: 1;
  min-width: 0;
}

.c-field__btn--addon, .c-field__btn--inline, .c-field__btn--input-group, .c-field__btn--search {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  height: auto;
  margin-inline-end: 0;
  margin-inline-start: -1px;
}

.c-participant-row {
  display: grid;
  grid-template-columns: 2fr 100px 3fr;
  gap: 1rem;
  align-items: start;
  padding: 1rem 0;
}

.c-participant-row:not(:last-child) {
  border-bottom: 1px solid #e0e0e0;
}

.c-participant-row__label {
  display: flex;
  align-items: center;
}

.c-participant-row__count {
  display: flex;
  align-items: center;
}

.c-participant-row__names {
  display: flex;
  align-items: start;
}

@media (max-width: 768px) {
  .c-participant-row {
    grid-template-columns: 1fr;
    gap: 0.5rem;
  }
  .c-participant-row__label, .c-participant-row__count, .c-participant-row__names {
    justify-self: start;
  }
}
.c-participant-names {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  width: 100%;
}

.c-participant-names__item {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.c-participant-names__label {
  font-size: 0.875rem;
  color: #666;
  white-space: nowrap;
  min-width: 120px;
}

.o-grid {
  display: grid;
  gap: 1rem;
}

.o-grid--2-cols {
  grid-template-columns: repeat(2, 1fr);
}

@media (max-width: 768px) {
  .o-grid--2-cols {
    grid-template-columns: 1fr;
  }
}
.o-grid--3-cols {
  grid-template-columns: repeat(3, 1fr);
}

@media (max-width: 768px) {
  .o-grid--3-cols {
    grid-template-columns: 1fr;
  }
}
.o-grid--address {
  grid-template-columns: 2fr 1fr 2fr;
}

@media (max-width: 768px) {
  .o-grid--address {
    grid-template-columns: 1fr;
  }
}
.c-btn__icon {
  width: 1rem;
  height: 1rem;
  stroke: currentColor;
}

.c-btn--primary {
  background: var(--area-gradient);
  color: var(--area-text-on-primary);
}

.c-btn--primary:hover {
  background: var(--area-primary-dark);
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}

.c-btn--large {
  padding: 1rem 2rem;
  font-size: 1rem;
}

.c-btn:disabled {
  opacity: 0.6;
  cursor: not-allowed;
  transform: none !important;
}

@keyframes totalPulse {
  0% {
    transform: scale(1);
    background: var(--area-tertiary-color);
  }
  50% {
    transform: scale(1.02);
    background: var(--area-color);
    color: var(--area-text-on-primary);
  }
  100% {
    transform: scale(1);
    background: var(--area-tertiary-color);
    color: var(--area-color);
  }
}
/*

.c-booking-form__loading {
    display: flex;
    align-items: center;
    gap: .5rem;
    font-size: .9rem;
    color: var(--color-gray-700, #444);
    margin-bottom: .75rem;
}
.u-spin {
    animation: spin 0.8s linear infinite;
}
@keyframes spin {
    to { transform: rotate(360deg); }
}
!* Optional subtle loading effect for sections *!
.is-loading {
    position: relative;
}
.is-loading::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, transparent, rgba(0,0,0,.05), transparent);
    animation: shimmer 1.2s infinite;
    pointer-events: none;
}
@keyframes shimmer {
    0% { transform: translateX(-100%); }
    100% { transform: translateX(100%); }
}
.c-btn__progress svg { vertical-align: -0.125em; }
*/
.c-notes {
  display: flex;
  flex-direction: column;
}

.c-notes__label {
  font-weight: 600;
  color: var(--area-color);
  font-size: var(--font-size-sm);
}

.c-notes__content {
  background: var(--color-white);
  border: 1px solid var(--color-gray-300);
  border-radius: var(--border-radius);
  box-shadow: var(--shadow-sm);
  overflow: hidden;
}

.c-notes__textarea {
  width: 100%;
  min-height: 100px;
  padding: var(--spacing-sm);
  border: none;
  font-family: inherit;
  font-size: var(--font-size-sm);
  resize: vertical;
  transition: border-color 0.2s ease;
  background: var(--color-white);
  /* non-empty (placeholder hidden) */
}

.c-notes__textarea:focus {
  outline: none;
  border-color: var(--area-color);
}

.c-notes__textarea::placeholder {
  color: var(--color-gray-500);
}

.c-notes__textarea:not(:placeholder-shown) {
  background: var(--area-secondary-color);
  color: var(--area-color);
}

.c-notes__save-button {
  align-self: flex-end;
  padding: var(--spacing-sm) var(--spacing-md);
  background: var(--area-color);
  color: var(--area-text-on-primary);
  border: none;
  border-top: 1px solid var(--color-gray-300);
  border-radius: 0;
  font-size: var(--font-size-sm);
  font-weight: 600;
  cursor: pointer;
  transition: background 0.2s ease;
  box-shadow: var(--shadow-sm);
  width: 100%;
  max-width: 100%;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
}

.c-notes__status {
  font-size: var(--font-size-xs);
  color: var(--color-gray-600);
  font-style: italic;
}

.flash-messages {
  position: fixed;
  top: 20px;
  right: 20px;
  z-index: 1000;
  max-width: 400px;
}

.flash-message {
  display: flex;
  align-items: flex-start;
  padding: 12px 16px;
  margin-bottom: 12px;
  border-radius: 8px;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  transition: all 0.3s ease;
  animation: slideIn 0.3s ease;
}

.flash-message--success {
  background-color: #d4edda;
  border-left: 4px solid #28a745;
  color: #155724;
}

.flash-message--error {
  background-color: #f8d7da;
  border-left: 4px solid #dc3545;
  color: #721c24;
}

.flash-message--warning {
  background-color: #fff3cd;
  border-left: 4px solid #ffc107;
  color: #856404;
}

.flash-message--info {
  background-color: #d1ecf1;
  border-left: 4px solid #17a2b8;
  color: #0c5460;
}

.flash-message__content {
  display: flex;
  align-items: center;
  flex: 1;
}

.flash-message__icon {
  margin-right: 8px;
  font-size: 16px;
}

.flash-message__text {
  flex: 1;
}

.flash-message__close {
  background: none;
  border: none;
  font-size: 18px;
  cursor: pointer;
  opacity: 0.7;
  margin-left: 12px;
  padding: 0;
  line-height: 1;
}

.flash-message__close:hover {
  opacity: 1;
}

@keyframes slideIn {
  from {
    transform: translateX(100%);
    opacity: 0;
  }
  to {
    transform: translateX(0);
    opacity: 1;
  }
}
/* HTML Markup
<div class="c-closed-message" role="status" aria-live="polite">
    <div class="c-closed-message__content">
        <h3 class="c-closed-message__title">
            <span class="c-closed-message__icon"><twig:ux:icon name="fa:lock" /></span>
            <span class="c-closed-message__text">
                {{ closedMessage }}
            </span>
        </h3>
    </div>
</div>
*/
.c-closed-message {
  margin: 1rem 0 2rem;
  padding: 0;
  border-radius: var(--border-radius-lg);
  border: 1px solid var(--color-warning);
  background: var(--color-white);
  box-shadow: var(--shadow-sm);
  animation: closedMessageFadeIn 220ms ease-out both;
}

.c-closed-message__content {
  display: flex;
  align-items: center;
  padding: var(--spacing-md) var(--spacing-lg);
}

.c-closed-message__title {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin: 0;
  font-size: 1.05rem;
  font-weight: 600;
  line-height: 1.3;
  color: inherit;
  text-align: center;
}

.c-closed-message__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: #ffe6e8;
  color: var(--color-error);
}

.c-closed-message__icon svg {
  width: 22px;
  height: 22px;
  display: block;
}

.c-closed-message__text {
  display: inline-block;
  color: inherit;
}

@keyframes closedMessageFadeIn {
  from {
    opacity: 0;
    transform: translateY(-6px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.c-badge-icon {
  --badge-icon-size: 1.5em;
  --badge-icon-color: #fff;
  --badge-icon-background: #000;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: var(--badge-icon-size);
  height: var(--badge-icon-size);
  background: var(--badge-icon-background);
  color: var(--badge-icon-color);
  border-radius: var(--border-radius-sm);
  font-size: var(--font-size-base);
  padding: var(--spacing-xs);
}

.c-badge-icon--birthday {
  --badge-icon-background: var(--birthday-color);
  --badge-icon-color: var(--birthday-secondary-color) ;
}

/* icon-only badge with text */
.c-badge-icon-text {
  display: inline-flex;
  align-items: center;
  gap: var(--spacing-xs);
}

.c-badge {
  --badge-padding-x: 0.65em;
  --badge-padding-y: 0.35em;
  --badge-font-size: 0.75em;
  --badge-font-weight: 700;
  --badge-color: #fff;
  --badge-border-radius: var(--border-radius);
  --spacing: var(--spacing-xs);
  display: inline-flex;
  align-items: center;
  padding: var(--badge-padding-y) var(--badge-padding-x);
  padding-block: calc(var(--spacing) * 1.125);
  padding-inline: calc(var(--spacing) * 2.5);
  font-size: var(--badge-font-size);
  line-height: 1;
  color: var(--badge-color);
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: var(--badge-border-radius);
  font-weight: var(--badge-font-weight);
  background-color: var(--badge-background);
  /* gradient bg */
}

.c-badge__icon {
  width: calc(var(--spacing) * 2.5);
  height: calc(var(--spacing) * 2.5);
  margin-inline-end: calc(var(--spacing) * 1.5);
}

.c-badge--birthday {
  --badge-background: var(--birthday-color);
  --badge-color: var(--birthday-secondary-color) ;
}

/* assets/backoffice/scss/06-components/_birthday-reservation.scss */
.c-birthday-reservation {
  max-width: 1200px;
  margin: 0 auto;
  padding: 3rem 1rem 2rem 1rem;
}

.c-birthday-reservation__form {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.c-birthday-reservation__section {
  border: 1px solid #e0e0e0;
  border-radius: 0.5rem;
  padding: 1rem 1.25rem;
  background: #fff;
  min-width: 0;
  margin: 0;
}

.c-birthday-reservation__legend {
  font-weight: var(--font-weight-bold, 600);
  color: var(--area-primary-dark, #333);
  padding: 0 0.25rem;
  float: left;
  width: 100%;
  margin-bottom: 0.5rem;
  line-height: inherit;
  font-size: 1.5rem;
}

.c-birthday-reservation__legend + * {
  clear: left;
}

.c-package-entries {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.c-package-entries__row {
  display: grid;
  grid-template-columns: 7fr 1fr;
  gap: 1rem;
  align-items: start;
}

.c-package-entries__add {
  display: flex;
  align-items: start;
}

.c-package-entry {
  border: 1px solid #e0e0e0;
  border-radius: 0.5rem;
  background: #fff;
}

.c-package-entry__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr)) auto;
  gap: 0.75rem 1rem;
  padding: 1rem;
}

.c-package-entry__actions {
  display: flex;
  justify-content: flex-end;
  align-items: flex-end;
}

.c-btn--remove {
  height: 2.8125rem;
  width: 2.8125rem;
}

/* Simple grid helpers (only if not already defined) */
.o-grid--2-cols {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}

.o-grid--5-cols {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 0.75rem;
}

.o-grid--gap-sm {
  gap: 0.75rem;
}

.o-grid--gap-md {
  gap: 1rem;
}

/* Alerts aligned to project’s styles */
.c-alert {
  padding: 0.75rem 1rem;
  border-radius: 0.5rem;
  border: 1px solid;
}

.c-alert--info {
  background: var(--area-tertiary-color);
  color: var(--area-color);
  border-color: var(--area-color);
}

.c-alert--success {
  background: #e8f8ef;
  color: #1a7f4b;
  border-color: #1a7f4b;
}

.c-alert--warning {
  background: #fff8e1;
  color: #8a6d3b;
  border-color: #8a6d3b;
}

.c-alert--danger {
  background: #ffebeb;
  color: #d32f2f;
  border-color: #d32f2f;
}

/* Utilities if needed */
.u-text-right {
  text-align: right;
}

/* Birthday reservations list/table */
.c-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  background: var(--color-white, #fff);
  overflow: hidden;
  /* line between am and pm times */
}

.c-table thead {
  background: var(--area-gradient-subtle, #f8fafc);
}

.c-table__th {
  text-align: left;
  font-weight: 600;
  padding: 0.75rem 1rem;
  color: #334155;
  border-bottom: 1px solid #e5e7eb;
}

.c-table__th--actions {
  text-align: right;
}

.c-table__row:nth-child(even) {
  background: #fcfcfd;
}

.c-table__td {
  padding: 0.75rem 1rem;
  color: #374151;
  vertical-align: middle;
}

.c-table__td--time {
  white-space: nowrap;
  width: 1%;
}

.c-table__td--actions {
  text-align: right;
  width: 1%;
}

.c-table__actions {
  display: inline-flex;
  gap: 0.5rem;
}

.c-table .c-table__row.c-table__row--line td {
  border: var(--spacing-sm) solid var(--area-color);
  padding: 0;
}

.c-badge {
  display: inline-block;
  padding: 0.25rem 0.5rem;
  border-radius: 0.375rem;
  font-size: 0.8125rem;
  line-height: 1;
  background: var(--area-tertiary-color, #eef2ff);
  color: var(--area-color, #3730a3);
  border: 1px solid color-mix(in srgb, var(--area-color, #3730a3) 25%, transparent);
}

.c-badge--time {
  background: #f1f5f9;
  color: #0f172a;
  border-color: #e2e8f0;
}

.c-chip {
  display: inline-block;
  padding: 0.2rem 0.5rem;
  border-radius: 9999px;
  font-size: 0.8125rem;
  line-height: 1;
  background: #f8fafc;
  border: 1px solid #e5e7eb;
  color: #1f2937;
}

.c-chip--children {
  background: #ecfeff;
  border-color: #a5f3fc;
  color: #155e75;
}

.c-chip--adults {
  background: #eef2ff;
  border-color: #c7d2fe;
  color: #3730a3;
}

.c-chip--slash {
  background: transparent;
  border: 0;
  color: #94a3b8;
  padding: 0 0.25rem;
}

.c-pill {
  display: inline-block;
  padding: 0.25rem 0.5rem;
  border-radius: 9999px;
  background: var(--area-primary-light, #eef2ff);
  color: var(--area-primary-dark, #1e3a8a);
  border: 1px solid color-mix(in srgb, var(--area-color, #1e3a8a) 20%, transparent);
}

.c-pill--neutral {
  background: #f1f5f9;
  color: #0f172a;
  border-color: #e2e8f0;
}

/* segmented package chip */
.c-package-chip {
  display: inline-flex;
  align-items: stretch;
  border-radius: var(--border-radius-sm); /* with this is this still a chip?*/
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--area-color, #1e3a8a) 20%, transparent);
}

.c-package-chip__segment {
  flex: 1 1 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.25rem 0.5rem;
  min-width: 5.5rem;
  background: var(--area-secondary-color, #f8fafc);
  color: var(--area-color, #1e3a8a);
  /* subtle divider between segments */
  box-shadow: inset 1px 0 0 color-mix(in srgb, var(--area-color, #1e3a8a) 15%, transparent);
}

.c-package-chip__segment:first-child {
  box-shadow: none;
}

.c-package-chip__segment-name {
  font-weight: 600;
  font-size: 0.8125rem;
  white-space: nowrap;
}

/* Links use area color variables; they already look fine */
.c-link {
  color: var(--area-color, #1d4ed8);
  text-decoration: none;
  border-bottom: 1px dashed color-mix(in srgb, var(--area-color, #1d4ed8) 40%, transparent);
}

.c-link:hover {
  color: var(--area-primary-dark, #1e3a8a);
  border-bottom-color: currentColor;
}

.c-muted {
  color: #6b7280;
}

/* additional information */
.c-btn--additional-info {
  position: relative;
}

.c-btn--additional-info--filled {
  position: relative;
  color: #FCE114;
  outline: #ff8f00 solid 2px;
}

.c-btn--additional-info--filled:after {
  position: absolute;
  top: -3px;
  right: -3px;
  content: "+";
  width: 0.75em;
  height: 0.75em;
  border-radius: 50%;
  background-color: #ff8f00;
  line-height: 0.65;
}

.c-status-dot {
  display: inline-block;
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 50%;
  margin-right: 0.35rem;
  background: #adb5bd; /* gray when empty */
}

.c-status-dot.is-filled {
  background: #2fb344; /* green when filled */
}

.c-textarea--fullwidth {
  width: 100%;
  box-sizing: border-box;
  resize: vertical;
}

.c-details__actions {
  margin-top: 0.5rem;
  display: flex;
  gap: 0.5rem;
}

.c-label--sr-only {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.u-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.u-spacing--xs {
  margin: var(--spacing-xs) !important;
}

.u-spacing--sm {
  margin: var(--spacing-sm) !important;
}

.u-spacing--md {
  margin: var(--spacing-md) !important;
}

.u-spacing--lg {
  margin: var(--spacing-lg) !important;
}

.u-spacing--xl {
  margin: var(--spacing-xl) !important;
}

.u-spacing--xxl {
  margin: var(--spacing-xxl) !important;
}

.u-spacing--none {
  margin: 0 !important;
}

.u-spacing-top--xs {
  margin-top: var(--spacing-xs) !important;
}

.u-spacing-top--sm {
  margin-top: var(--spacing-sm) !important;
}

.u-spacing-top--md {
  margin-top: var(--spacing-md) !important;
}

.u-spacing-top--lg {
  margin-top: var(--spacing-lg) !important;
}

.u-spacing-top--xl {
  margin-top: var(--spacing-xl) !important;
}

.u-spacing-top--xxl {
  margin-top: var(--spacing-xxl) !important;
}

.u-spacing-top--none {
  margin-top: 0 !important;
}

.u-spacing-bottom--xs {
  margin-bottom: var(--spacing-xs) !important;
}

.u-spacing-bottom--sm {
  margin-bottom: var(--spacing-sm) !important;
}

.u-spacing-bottom--md {
  margin-bottom: var(--spacing-md) !important;
}

.u-spacing-bottom--lg {
  margin-bottom: var(--spacing-lg) !important;
}

.u-spacing-bottom--xl {
  margin-bottom: var(--spacing-xl) !important;
}

.u-spacing-bottom--xxl {
  margin-bottom: var(--spacing-xxl) !important;
}

.u-spacing-bottom--none {
  margin-bottom: 0 !important;
}

.u-spacing-left--xs {
  margin-left: var(--spacing-xs) !important;
}

.u-spacing-left--sm {
  margin-left: var(--spacing-sm) !important;
}

.u-spacing-left--md {
  margin-left: var(--spacing-md) !important;
}

.u-spacing-left--lg {
  margin-left: var(--spacing-lg) !important;
}

.u-spacing-left--xl {
  margin-left: var(--spacing-xl) !important;
}

.u-spacing-left--xxl {
  margin-left: var(--spacing-xxl) !important;
}

.u-spacing-left--none {
  margin-left: 0 !important;
}

.u-spacing-right--xs {
  margin-right: var(--spacing-xs) !important;
}

.u-spacing-right--sm {
  margin-right: var(--spacing-sm) !important;
}

.u-spacing-right--md {
  margin-right: var(--spacing-md) !important;
}

.u-spacing-right--lg {
  margin-right: var(--spacing-lg) !important;
}

.u-spacing-right--xl {
  margin-right: var(--spacing-xl) !important;
}

.u-spacing-right--xxl {
  margin-right: var(--spacing-xxl) !important;
}

.u-spacing-right--none {
  margin-right: 0 !important;
}

.u-margin-left--xs {
  margin-left: var(--spacing-xs) !important;
}

.u-margin-left--sm {
  margin-left: var(--spacing-sm) !important;
}

.u-margin-left--md {
  margin-left: var(--spacing-md) !important;
}

.u-margin-left--lg {
  margin-left: var(--spacing-lg) !important;
}

.u-margin-left--xl {
  margin-left: var(--spacing-xl) !important;
}

.u-margin-left--xxl {
  margin-left: var(--spacing-xxl) !important;
}

.u-margin-left--none {
  margin-left: 0 !important;
}

.u-margin-left--auto {
  margin-left: auto !important;
}

.u-margin-right--xs {
  margin-right: var(--spacing-xs) !important;
}

.u-margin-right--sm {
  margin-right: var(--spacing-sm) !important;
}

.u-margin-right--md {
  margin-right: var(--spacing-md) !important;
}

.u-margin-right--lg {
  margin-right: var(--spacing-lg) !important;
}

.u-margin-right--xl {
  margin-right: var(--spacing-xl) !important;
}

.u-margin-right--xxl {
  margin-right: var(--spacing-xxl) !important;
}

.u-margin-right--none {
  margin-right: 0 !important;
}

.u-margin-right--auto {
  margin-right: auto !important;
}

.u-margin-top--xs {
  margin-top: var(--spacing-xs) !important;
}

.u-margin-top--sm {
  margin-top: var(--spacing-sm) !important;
}

.u-margin-top--md {
  margin-top: var(--spacing-md) !important;
}

.u-margin-top--lg {
  margin-top: var(--spacing-lg) !important;
}

.u-margin-top--xl {
  margin-top: var(--spacing-xl) !important;
}

.u-margin-top--xxl {
  margin-top: var(--spacing-xxl) !important;
}

.u-margin-top--none {
  margin-top: 0 !important;
}

.u-margin-top--auto {
  margin-top: auto !important;
}

.u-margin-bottom--xs {
  margin-bottom: var(--spacing-xs) !important;
}

.u-margin-bottom--sm {
  margin-bottom: var(--spacing-sm) !important;
}

.u-margin-bottom--md {
  margin-bottom: var(--spacing-md) !important;
}

.u-margin-bottom--lg {
  margin-bottom: var(--spacing-lg) !important;
}

.u-margin-bottom--xl {
  margin-bottom: var(--spacing-xl) !important;
}

.u-margin-bottom--xxl {
  margin-bottom: var(--spacing-xxl) !important;
}

.u-margin-bottom--none {
  margin-bottom: 0 !important;
}

.u-margin-bottom--auto {
  margin-bottom: auto !important;
}

.u-padding--xs {
  padding: var(--spacing-xs) !important;
}

.u-padding--sm {
  padding: var(--spacing-sm) !important;
}

.u-padding--md {
  padding: var(--spacing-md) !important;
}

.u-padding--lg {
  padding: var(--spacing-lg) !important;
}

.u-padding--xl {
  padding: var(--spacing-xl) !important;
}

.u-padding--xxl {
  padding: var(--spacing-xxl) !important;
}

.u-padding--none {
  padding: 0 !important;
}

.u-text--left {
  text-align: left !important;
}

.u-text--center {
  text-align: center !important;
}

.u-text--right {
  text-align: right !important;
}

.u-text--justify {
  text-align: justify !important;
}

.u-text--uppercase {
  text-transform: uppercase !important;
}

.u-text--lowercase {
  text-transform: lowercase !important;
}

.u-text--capitalize {
  text-transform: capitalize !important;
}

.u-text--none {
  text-transform: none !important;
}

.u-text--bold {
  font-weight: 700;
}

.u-text--semi-bold {
  font-weight: 600;
}

.u-text--medium {
  font-weight: 500;
}

.u-text--normal {
  font-weight: normal !important;
}

.u-text--light {
  font-weight: 300 !important;
}

.u-text--xxs {
  font-size: var(--font-size-xxs) !important;
}

.u-text--xs {
  font-size: var(--font-size-xs) !important;
}

.u-text--sm {
  font-size: var(--font-size-sm) !important;
}

.u-text--base {
  font-size: var(--font-size-base) !important;
}

.u-text--lg {
  font-size: var(--font-size-lg) !important;
}

.u-text--xl {
  font-size: var(--font-size-xl) !important;
}

.u-text--xxl {
  font-size: var(--font-size-xxl) !important;
}

.u-color--primary {
  color: var(--area-color) !important;
}

.u-color--secondary {
  color: var(--area-secondary-color) !important;
}

.u-color--white {
  color: var(--color-white) !important;
}

.u-color--gray-500 {
  color: var(--color-gray-500) !important;
}

.u-color--gray-600 {
  color: var(--color-gray-600) !important;
}

.u-color--gray-700 {
  color: var(--color-gray-700) !important;
}

.u-color--gray-800 {
  color: var(--color-gray-800) !important;
}

.u-color--success {
  color: var(--color-success) !important;
}

.u-color--warning {
  color: var(--color-warning) !important;
}

.u-color--error {
  color: var(--color-error) !important;
}

.u-color--info {
  color: var(--color-info) !important;
}

.u-bg--primary {
  background-color: var(--area-color) !important;
}

.u-bg--secondary {
  background-color: var(--area-secondary-color) !important;
}

.u-bg--white {
  background-color: var(--color-white) !important;
}

.u-bg--gray-50 {
  background-color: var(--color-gray-50) !important;
}

.u-bg--gray-100 {
  background-color: var(--color-gray-100) !important;
}

.u-bg--gray-200 {
  background-color: var(--color-gray-200) !important;
}

.u-bg--success {
  background-color: var(--color-success) !important;
}

.u-bg--warning {
  background-color: var(--color-warning) !important;
}

.u-bg--error {
  background-color: var(--color-error) !important;
}

.u-bg--info {
  background-color: var(--color-info) !important;
}

.u-bg--transparent {
  background-color: transparent !important;
}

.u-border-color--primary {
  border-color: var(--area-color) !important;
}

.u-border-color--secondary {
  border-color: var(--area-secondary-color) !important;
}

.u-border-color--white {
  border-color: var(--color-white) !important;
}

.u-border-color--gray-500 {
  border-color: var(--color-gray-500) !important;
}

.u-border-color--gray-600 {
  border-color: var(--color-gray-600) !important;
}

.u-border-color--gray-700 {
  border-color: var(--color-gray-700) !important;
}

.u-border-color--gray-800 {
  border-color: var(--color-gray-800) !important;
}

.u-border-color--success {
  border-color: var(--color-success) !important;
}

.u-border-color--warning {
  border-color: var(--color-warning) !important;
}

.u-border-color--error {
  border-color: var(--color-error) !important;
}

.u-border-color--info {
  border-color: var(--color-info) !important;
}

.u-border-color--transparent {
  border-color: transparent !important;
}

.u-display--block {
  display: block !important;
}

.u-display--inline {
  display: inline !important;
}

.u-display--inline-block {
  display: inline-block !important;
}

.u-display--flex {
  display: flex !important;
}

.u-display--inline-flex {
  display: inline-flex !important;
}

.u-display--grid {
  display: grid !important;
}

.u-display--none {
  display: none !important;
}

.u-flex--row {
  flex-direction: row !important;
}

.u-flex--column {
  flex-direction: column !important;
}

.u-flex--wrap {
  flex-wrap: wrap !important;
}

.u-flex--nowrap {
  flex-wrap: nowrap !important;
}

.u-flex--justify-start {
  justify-content: flex-start !important;
}

.u-flex--justify-center {
  justify-content: center !important;
}

.u-flex--justify-end {
  justify-content: flex-end !important;
}

.u-flex--justify-between {
  justify-content: space-between !important;
}

.u-flex--justify-around {
  justify-content: space-around !important;
}

.u-flex--align-start {
  align-items: flex-start !important;
}

.u-flex--align-center {
  align-items: center !important;
}

.u-flex--align-end {
  align-items: flex-end !important;
}

.u-flex--align-stretch {
  align-items: stretch !important;
}

.u-flex--align-baseline {
  align-items: baseline !important;
}

.u-flex--grow {
  flex-grow: 1 !important;
}

.u-flex--shrink {
  flex-shrink: 1 !important;
}

.u-flex--no-grow {
  flex-grow: 0 !important;
}

.u-flex--no-shrink {
  flex-shrink: 0 !important;
}

.u-position--static {
  position: static !important;
}

.u-position--relative {
  position: relative !important;
}

.u-position--absolute {
  position: absolute !important;
}

.u-position--fixed {
  position: fixed !important;
}

.u-position--sticky {
  position: sticky !important;
}

.u-width--full {
  width: 100% !important;
}

.u-width--auto {
  width: auto !important;
}

.u-width--fit {
  width: fit-content !important;
}

.u-width--25 {
  width: 25% !important;
}

.u-width--50 {
  width: 50% !important;
}

.u-width--75 {
  width: 75% !important;
}

.u-height--full {
  height: 100% !important;
}

.u-height--auto {
  height: auto !important;
}

.u-height--fit {
  height: fit-content !important;
}

.u-height--screen {
  height: 100vh !important;
}

.u-border--none {
  border: none !important;
}

.u-border--all {
  border: 1px solid var(--color-gray-200) !important;
}

.u-border--top {
  border-top: 1px solid var(--color-gray-200) !important;
}

.u-border--bottom {
  border-bottom: 1px solid var(--color-gray-200) !important;
}

.u-border--left {
  border-left: 1px solid var(--color-gray-200) !important;
}

.u-border--right {
  border-right: 1px solid var(--color-gray-200) !important;
}

.u-border--primary {
  border-color: var(--area-color) !important;
}

.u-border--secondary {
  border-color: var(--area-secondary-color) !important;
}

.u-radius--none {
  border-radius: 0 !important;
}

.u-radius--sm {
  border-radius: var(--border-radius-sm) !important;
}

.u-radius--base {
  border-radius: var(--border-radius) !important;
}

.u-radius--lg {
  border-radius: var(--border-radius-lg) !important;
}

.u-radius--full {
  border-radius: 50% !important;
}

.u-shadow--none {
  box-shadow: none !important;
}

.u-shadow--sm {
  box-shadow: var(--shadow-sm) !important;
}

.u-shadow--md {
  box-shadow: var(--shadow-md) !important;
}

.u-shadow--lg {
  box-shadow: var(--shadow-lg) !important;
}

.u-shadow--area {
  box-shadow: var(--shadow-area) !important;
}

.u-overflow--visible {
  overflow: visible !important;
}

.u-overflow--hidden {
  overflow: hidden !important;
}

.u-overflow--scroll {
  overflow: scroll !important;
}

.u-overflow--auto {
  overflow: auto !important;
}

.u-overflow-x--visible {
  overflow-x: visible !important;
}

.u-overflow-x--hidden {
  overflow-x: hidden !important;
}

.u-overflow-x--scroll {
  overflow-x: scroll !important;
}

.u-overflow-x--auto {
  overflow-x: auto !important;
}

.u-overflow-y--visible {
  overflow-y: visible !important;
}

.u-overflow-y--hidden {
  overflow-y: hidden !important;
}

.u-overflow-y--scroll {
  overflow-y: scroll !important;
}

.u-overflow-y--auto {
  overflow-y: auto !important;
}

.u-z--0 {
  z-index: 0 !important;
}

.u-z--10 {
  z-index: 10 !important;
}

.u-z--20 {
  z-index: 20 !important;
}

.u-z--30 {
  z-index: 30 !important;
}

.u-z--40 {
  z-index: 40 !important;
}

.u-z--50 {
  z-index: 50 !important;
}

.u-z--auto {
  z-index: auto !important;
}

@media (max-width: 48rem) {
  .u-mobile--hidden {
    display: none !important;
  }
  .u-mobile--block {
    display: block !important;
  }
  .u-mobile--flex {
    display: flex !important;
  }
  .u-mobile--text-center {
    text-align: center !important;
  }
  .u-mobile--text-left {
    text-align: left !important;
  }
  .u-mobile--width-full {
    width: 100% !important;
  }
}
@media (min-width: 48.0625rem) {
  .u-desktop--hidden {
    display: none !important;
  }
  .u-desktop--block {
    display: block !important;
  }
  .u-desktop--flex {
    display: flex !important;
  }
  .u-desktop--text-center {
    text-align: center !important;
  }
  .u-desktop--text-left {
    text-align: left !important;
  }
}
@media print {
  .u-print--hidden {
    display: none !important;
  }
  .u-print--block {
    display: block !important;
  }
}
@media print {
  .admin-grid {
    display: block !important;
    margin-left: 0 !important;
  }
  .admin-sidebar {
    display: none !important;
  }
  .admin-header {
    display: none !important;
  }
  .admin-main-content {
    border: none !important;
    box-shadow: none !important;
    background: white !important;
  }
  .c-timeslot {
    break-inside: avoid;
    box-shadow: none !important;
    border: 1px solid #000 !important;
  }
}

/*# sourceMappingURL=data:application/json;charset=utf-8,%7B%22version%22:3,%22sourceRoot%22:%22%22,%22sources%22:%5B%22../../assets/backoffice/scss/01-settings/_settings.scss%22,%22../../assets/backoffice/scss/03-generic/_reset.scss%22,%22../../assets/backoffice/scss/04-elements/_elements.scss%22,%22../../assets/backoffice/scss/02-tools/_mixins.scss%22,%22../../assets/backoffice/scss/05-objects/_layout.scss%22,%22../../assets/backoffice/scss/06-components/_admin-header.scss%22,%22../../assets/backoffice/scss/06-components/_sidebar.scss%22,%22../../assets/backoffice/scss/06-components/_main-content.scss%22,%22../../assets/backoffice/scss/06-components/_buttons.scss%22,%22../../assets/backoffice/scss/06-components/_timeslots.scss%22,%22../../assets/backoffice/scss/06-components/_flatpickr.scss%22,%22../../assets/backoffice/scss/01-settings/_flatpickr.scss%22,%22../../assets/backoffice/scss/06-components/_booking-form.scss%22,%22../../assets/backoffice/scss/06-components/_notes.scss%22,%22../../assets/backoffice/scss/06-components/_flashMessages.scss%22,%22../../assets/backoffice/scss/06-components/_closed-message.scss%22,%22../../assets/backoffice/scss/06-components/_badge.scss%22,%22../../assets/backoffice/scss/06-components/_birthday-reservation-form.scss%22,%22../../assets/backoffice/scss/06-components/_birthday-reservation-list.scss%22,%22../../assets/backoffice/scss/07-utilities/_utilities.scss%22,%22../../assets/backoffice/scss/main.scss%22%5D,%22names%22:%5B%5D,%22mappings%22:%22;AA6JA;EAEI;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EAGA;EACA;EACA;EACA;EACA;EACA;EAGA;EACA;EACA;EAGA;EACA;EACA;EAGA;EACA;EACA;EACA;EAGA;EACA;EACA;EACA;EACA;EACA;EAGA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;;;ACrNJ;EACE;;;AAGF;EACE;EACA;EACA;EAEA;EACA;EACA;EACA;;;ACZF;ECyEE;EAEA;EACA;;;ADxEF;AAAA;AAAA;EAGE;EACA;;;AAGF;AAAA;AAAA;AAAA;AAAA;AAAA;EAME;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;AAAA;EAEE;EACA;EACA;;;AErCF;EACI;EACA,qBACA;EAEA;EACA;EACA;EACA;;;AAIJ;EACI;IACI,qBACF;IAEE;IACA;;;AAOR;EACE;EACA;EACA;;;AAIF;EACE;EACA;;;AAEA;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAKJ;EACE;;;AAEA;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAKJ;EACE;EACA;;;AAEA;EACE;;;AAGF;EACE;;;AAGF;EACE;;;ACzGJ;EACI;EAEA;EAEA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;;;AAIJ;EACI;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EAEA;;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;;;AAEA;EACI;;;AAIR;EACI;EACA;EACA;EAEA;EAEA;EACA;;;AAEA;EACI;EACA;;;AAKZ;EACI;EACA;;;AAIJ;EACI;IACI;;EAGJ;IACI;IACA;IACA;;EAEA;IACI;;EAIR;IACI;IACA;IACA;;;AC9GR;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EAGA;EAEA;;;AAEA;EACI;;;AAEJ;EACI;;;AAEJ;EACI;;;AAgBR;EACI;;;AAKJ;EAEI;;;AAGJ;EACI;EACA;EACA;EAEA;;;AAGJ;EAEI;;;AAKJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAYJ;EACI;EACA;EACA;;;AAwDJ;EACI;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;;AAEA;EACI;;;AAIR;EACI;EACA;EACA;;;AAGJ;EACI;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;;AAEA;EACI;EACA;EACA;;;AAKR;EACI;IACI;;;AC7NR;EACI;EAEA;EACA;EACA;EAEA;EACA;EACA;;;AAIJ;EACI;;;AAGJ;EACI;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;;;AAGJ;EACI;EACA;;;AAEA;EACI;;;AAKZ;EACI;EACA;;;AAGJ;EACI;;;AAGJ;EACI;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;;;AAIJ;EACI;;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;;AAIR;EACI;EACA;EACA;EACA;;;AAGJ;EACI;EACA;;;AAIJ;EACI;IACI;IACA;;EAGJ;IACI;IACA;IACA;;EAGJ;IACI;;;AC7IR;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAGA;AAGA;EACA,YACI;AAKJ;EACA;EACA;EACA;;;AAEA;EACI;AACA;AACA;;;AAGJ;AACI;AACA;EACA;;;AAIJ;EACI;EACA;EACA;;;AAEA;EACI;;;AAIR;EAQE;EACE;EACA;;;AAEA;EACI;EACF;EACA;;;AAKN;EACI;EACA;EACA;;;AAEA;EACI;;;AAIR;EACI;EACA;EACA;;;AAEA;EACI;;;AAIR;EACI;EACA;EACA;;;AAEA;EACI;EACA;;;AAIR;EACI;EACA;EACA;EACA;;;AAEA;EACI;;;AAIR;EACI;EACA;EACA;;;AAEA;EACI;;;AAKR;EACI;EACA;;;AAEA;EACI;EACA;;;AAIR;EACI;EACA;;;AAIJ;EACI;EACA;;;AAIJ;EACI;EACA;EACA;EACA;EACA;;;AAMR;EACI;EACA;EACA;;;AAGJ;AACA;EACI;IACI;;;AAKR;EACI;EACA;EACA;;;AAGJ;EACI;IACI;IACA;;EAGJ;IACI;;EAEA;IACI;;;AAOZ;AAAA;EAEI;EACA;EACA;EACA;EACA;;;AAIJ;EACI;EACA;EACA;EACA;EACA;EAGA;;;AAEJ;AAAA;EAEI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGJ;EACI;IAAK;;;AAGT;EACI;AAAA;IAEI;;;AC3OR;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;AAEA;AAAA;AAAA;AAAA;AAAA;;;AAQJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;;;AAIJ;EACI;EACA;EACA;EAGA;EAEA;;;AAGJ;EACI;EACA;EAEA;;;AAKJ;EACI;EACA;EACA;EACA;EACA;;;AAGJ;EACI;;;AAGJ;EACI;EACA;EACA;;;AAEA;EACI;;;AAIR;EACI;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;;;AAEA;EACI;;;AAIR;EACI;EACA;EACA;;;AAGJ;EACI;EACA;;;AAGJ;EACI;;;AAGJ;EACI;;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;;;AAGJ;EACI;EACA;EACA;;;AAIJ;EACI;EACA;;;AAGJ;EACI;EACA;EACA;;;AAIJ;EASI;EACA;;;AAGJ;EACI;EACA;EACA;;;AAEA;EACI;EACA;;;AACA;EACI;EAAa;;;AAKrB;EACI;;;AAIR;EACI;EACA;EACA;;;AACA;EACI;EACA;;;AAKR;EACI;EACA;EACA;;;AAIJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;;;AAGJ;EACI;EACA;;;AAIJ;EACI;EACA;;;AAGJ;EACI;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;AAUA;AAmBA;;;AA3BA;EACI;;;AAGJ;EACI;;;AAIJ;EACI;AACA;EACA;EACA;EACA;AACA;EACA;EACA;EACA;EACA,YACI;;;AAQR;EACI;EACA;EACA;EACA;EACA;EACA;;;AAMR;EACI;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;;;AAIJ;EACI;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;;;AAEA;EACI;EACA;;;AAIR;EACI;EACA;EACA;;;AAGJ;AACA;EACI;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAEA;EACI;EACA;EACA;;;AAIR;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGJ;AACA;EACI;EACA;EACA;EACA;;;AAGJ;AACA;EACI;;;AAEJ;EACI;;;AAGJ;AACA;EACI;;;AAEJ;EACI;;;AAKJ;AAAA;EAEI;EACA;EACA;;;AAIJ;EACI;;;AAIJ;EACI;;;AAEJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGJ;EACI;IAAK;;;AAGT;EACI;IACI;;;AAIR;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAEA;EACI;EACA;;;AAGJ;EACI;EACA;;;AAIR;EACI;EACA;;;AAIJ;EACI;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAEA;EACI;EACA;;;AASJ;EACI;;;AAQR;EACI;EACA;EACA;;;AAGJ;AACA;EAAyC;;;AACzC;EAA4B;;;AAC5B;EAAyD;;;AACzD;EAAyD;;;AAEzD;AACA;EACI;EACA;EACA;;;AAKJ;EACI;EACA;EACA;EACA;;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAEA;EACI;EACA;;;AAGJ;EACI;;;AAGJ;EACI;EACA;EACA;;;AAIR;EACI;EACA;EACA;;;AAIJ;EACI;EACA;;;AAEA;EACI;;;AAIR;EACI;EACA;EACA;EACA;EACA;EACA;;;AAEA;EACI;EACA;EACA;;;AAIR;EACI;;;AAGJ;EACI;EACA;;;AAEA;EACI;EACA;;;AAGR;EACI;EACA;;;AAEA;EACI;EACA;EACA;;;AAIR;EACI;EACA;;;AAEA;EACI;EACA;;;AAIR;EACI;EACA;;;AAEA;EACI;EACA;;;AAMZ;EACI;EACA;EACA;;;AAGA;EACI;;;AAIR;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAEA;EACI;EACA;;;AAIR;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;;;AAIJ;EACI;IACI;IACA;;EAEJ;IACI;IACA;;;AAKR;EACI;IACI;;EAGJ;IACI;IACA;IACA;IACA;IACA;;EAGJ;IACI;IACA;;EAGJ;IACI;IACA;IACA;;EAGJ;IACI;IACA;;EAGJ;IACI;IACA;;EAGJ;IACI;IACA;;EAGJ;AAAA;AAAA;AAAA;AAAA;IAKI;;EAGJ;IACI;IACA;IACA;;EAGJ;IAEI;IACA;;EACA;IACI;IACA;IACA;;EAKR;IACI;;;ACnxBR;AAAA;AAAA;AAGA;AAAA;AAAA;AAAA;AAAA;AAwDA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAQA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,OAnDQ;EAoDR;EACA;EAGI;;;AAUJ;EACI;EACA;EACA;;;AAGJ;EACI;EACA;;;AAGJ;EACI;;;AAGJ;EACI;EACA;EACA;;;AAGJ;EACI;EACA;;;AAEA;EACI;EACA;;;AAMA;EACI;;;AAIJ;EACI;;;AAKR;EACI;EACA;EACA;;;AAKJ;EACI;;;AAIJ;EACI,QAvHC;EAwHD;;;AAIA;EACI;;;AAEJ;EACI;;;AAKR;EACI;;;AAGR;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAIA;EACI;EACA;;;AAIR;EACI;EACA;;;AAGJ;EACI;EACA;;;AAIA;EACI;;;AACJ;EACI,qBCnNU;;;ADoNd;EAEQ,qBCjNE;;;ADyNV;EACI;;;AACJ;EACI,kBCjOU;;;ADkOd;EAEQ,kBC/NE;;;ADsOd;EACI;;;AAIR;EACI;EACA;;;AAGJ;EACI;;;AAEA;EAEQ;EACJ,YCtPU;EDuPV,OA5MU;EA6MV,MA7MU;EA8MV,QCrQS;EDsQT;EACA;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EAEA;EACA;EACA;EACA,QCvRS;EDyRT;EACA;EACA,OApOU;EAqOV,MArOU;;;AAuOV;EACI;;;AAEJ;EACI;;;AAEJ;AACI;AAAA,uBACoB;AAAA;EAEpB;AACA;AAAA,qBACkB;AAAA;;;AAItB;AACI;AAAA,uBACoB;AAAA;EAEpB;AACA;AAAA,qBACkB;AAAA;;;AAItB;EACI,OAlSC;;;AAmSD;EAEQ,MClTA;;;ADyTZ;EACI;EACA;;;AACA;EACI;EACA;;;AAMhB;EACI;EACA;;;AAEA;EACI;;;AAEJ;EACI;;;AACA;EACI;;;AAEJ;EACI;EACA;;;AAGR;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAEA;EACI;;;AAEJ;EACI;;;AAEJ;EACI;EACA;EACA;;;AAGJ;EACI;EACA;;;AAEA;EACI;EACA;EACA;EACA;;;AAIR;EACI;;;AAEA;EACI;EACA;EACA;EACA;;;AAIR;EACI;EACA;;;AACA;EACI;;;AAIZ;EACI;;;AACA;EACI;;;AAKZ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,QCvaa;EDwab;EACA;EACA;;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;;;AAEA;EACI;;;AAGR;EACI;EACA;EACA;;;AAMA;EACI,qBA3YM;;;AA6YV;EACI,kBA9YM;;;AAiZd;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;;;AACA;EACI;EACA;;;AAGJ;EACI;;;AAEJ;EACI;EACA;EACA;EACA;;;AAKZ;EACI;EACA,YCjec;EDked;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAEA;EACI;;;AAGJ;EACI;;;AAIR;EACI,YAhgBiB;EAigBjB;EACA;EACA;EACA;EACA;EACA,QA5gBa;;;AA8gBb;EACI;EACA;;;AAIR;EACI;EACA;EACA,YCjhBc;EDkhBd,OAjeiB;EAkejB;EACA;EACA;EACA;EACA;EACA;;;AAGJ;EACI;;;AAEJ;EACI;EACA;EACA;EACA;EACA,OAngBQ;EAygBJ;EACA;;;AALJ;EACI;;;AAQR;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAEA;EACI;;;AAGR;EACI;EACA;EACA;EACA;EACA,OA1kBY;EA2kBZ;EAEA,aVvjB0B;EUwjB1B;EACA;EACA,WAljBM;EAmjBN,QAnjBM;EAojBN,aApjBM;EAqjBN;EAEA;EACA;EACA;EACA;;;AAGI;EACI;EACA;EACA,OAhlBC;EAilBD,YAnlBC;EAolBD,cAplBC;;;AAwlBT;EACI,cAzlBK;;;AA2lBL;EACI,cA5lBC;EA6lBD,YA7lBC;EAimBG;;;AAMR;EACI,YAxmBC;EAymBD;EAKI;EAGJ,cAjnBC;;;AAonBL;EACI;;;AAIJ;EACI;;;AAGJ;EACI;;;AAEJ;EACI;;;AAGR;EACI;EACA;;;AAGJ;EAGI;EACA;EAKI;EAGJ;;;AAGJ;EACI;EACA;;;AAGJ;EACI;EACA;;;AAIJ;EACI;;;AAGR;EACI;;;AAEJ;EACI;EACA;;;AAEA;EACI;EAEI;;;AAMR;EACI;EACA;EACA,aA3sBS;;;AA+sBT;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;;AAKZ;EACI;EACA;EACA;EAGI,YApuBa;EAquBb;;;AAIR;EACI;EACA;EACA;;;AAGJ;EACI;EACA;EACA,aApsBS;EAqsBT,YArsBS;EAssBT;EACA;EACA;EAGI,YAzvBa;EA0vBb;;;AAGJ;EACI;EACA;EACA;;;AAGJ;EACI;EACA;EACA,QAxtBK;EAytBL;;;AAEA;EACI,qBAlwBI;;;AAowBR;EACI,kBArwBI;;;AAwwBZ;EACI;;;AAEJ;EACI;;;AAEJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,OAxxBQ;EAyxBR;EACA;EACA;;;AAEA;EACI;;;AAEJ;EACI,aV3wBkB;;;AU6wBtB;EACI;EACA;;;AAIR;EACI;EACA;EACA;EACA;EACA,OA9yBQ;EA+yBR;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA,aVpyBsB;;;AUwyBtB;EAEI;;;AAKZ;EACI;;;AAEJ;EACI;IACI;IACA;;EAEJ;IACI;IACA;;;AAMR;EACI;;;AAQA;EACI;EACA;EACA;EACA;EACA;EACA;EAGA;;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;;AAIJ;EACI;;;AAEA;EACI;EACA;EACA;;;AAKR;EACI;EACA;EACA;EACA;;;AAIJ;EACI;;;AAEA;EACI;EACA;EACA;;;AAMJ;EACI;;;AAGJ;EACI;EACA;EACA;;;AAGJ;AAAA;EAEI;EACA;;;AAShB;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAEA;EACI;EACA;EACA;;;AAEJ;EACI;EACA;;;AAEJ;EACI;;;AACA;EACI;;;AASZ;EAGY;IACI;IACA;IACA;IACA;;EAGJ;IACI;;EAEA;IACI;IACA;;EAKJ;IACI;;EAGJ;IACI;IACA;IACA;;EAGJ;AAAA;IAEI;IACA;;;AAahB;EACI;IACI;;EAEA;IAGI;;;AAMZ;EACI;IACI;;EAGJ;IACI;;;AASZ;EACI;IACI;;;AEziCR;EACE;EACA;EACA;;;AAEA;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAEA;EACI;;;AAGJ;EACI;EACA;;;AAIJ;EACI;;;AAKR;EACA;EACA;EACA;;;AAQJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAOF;EACE;EAEA;EAEA;EAEA;EACA;;;AAEA;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;;;AAQJ;EACE;EACA;EACA;AAqEA;;;AAnEA;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EAEE;EACA;EACA;EACA;EACA;;;AAEA;EACE;EACA;EACA;;;AAGF;EACE;;;AAIJ;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAEA;EACE;EACA;;;AAIF;EACI;EACA;;;AAGJ;EACI;EACA;EACA;EACA;;;AAIN;EAIE;EACA;EACA;;;AAIF;EAIE;EACA;EACA;EAEA;EACA;;;AAGF;EAIE;EACA;EAEA;EACA;EACA;;;AAWJ;EACE;EACA;EACA;EACA;EACA;;;AAEA;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EA1BF;IA2BI;IACA;;EAEA;IAGE;;;AAKN;EACE;EACA;EACA;EACA;;;AAEA;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAQJ;EACE;EACA;;;AAEA;EACE;;;AAEA;EAHF;IAII;;;AAIJ;EACE;;;AAEA;EAHF;IAII;;;AAIJ;EACE;;;AAEA;EAHF;IAII;;;AAyBJ;EACE;EACA;EACA;;;AAGF;EACE;EACA;;;AAEA;EACE;EAEA;;;AAQJ;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AASJ;EACI;IACI;IACA;;EAEJ;IACI;IACA;IACA;;EAEJ;IACI;IACA;IACA;;;AAIR;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AC9XA;EACI;EACA;;;AAIA;EACI;EACA;EACA;;;AAIJ;EACI;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EAEA;EAEA;EACA;EACA;EACA;EACA;AAYA;;;AAVA;EACI;EACA;;;AAIJ;EACI;;;AAIJ;EACI;EACA;;;AAIR;EACI;EAEA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;;;AC/ER;EACI;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;;;AAGJ;EACI;EACA;EACA;;;AAGJ;EACI;EACA;EACA;;;AAGJ;EACI;EACA;EACA;;;AAGJ;EACI;EACA;EACA;;;AAGJ;EACI;EACA;;;AAGJ;EACI;;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGJ;EACI;;;AAGJ;EACI;IACI;IACA;;EAEJ;IACI;IACA;;;AC9ER;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAYA;EAEI;EACA;EAEA;EAEA;EAOA;EAIA;EAMA;;;AAEA;EACI;EACA;EAGA;;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EAEA;EACA;EAEA;EACA;EAGA;;;AAGA;EACI;EACA;EACA;;;AAIR;EACI;EACA;;;AAIR;EACI;IACI;IACA;;EAEJ;IACI;IACA;;;ACvFR;EACE;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAEA;EACE;EACA;;;AAIJ;AACA;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;AACA;;;AAGA;EACE;EACA;EACA;;;AAGF;EACE;EACA;;;ACvEJ;AACA;EACI;EACA;EACA;;;AAEA;EACI;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EAGA;EACA;;;AAKJ;EACI;EACA;EACA;EAGA;EACA;EAEA,eAtCe;EAwCf;EACA,WAxCW;;;AA0CX;EACI;;;AAKZ;EACI;EACA;EACA;;;AAEA;EACI;EAEA;EACA;EACA;;;AAGJ;EACI;EACA;;;AAIR;EACI;EACA;EACA;;;AAEA;EACI;EAEA;EACA;EACA;;;AAQJ;EACI;EACA;EAEA;;;AAKR;EAEI;EACA;;;AAGJ;AACA;EAAkB;EAAe;EAAkD;;;AACnF;EAAkB;EAAe;EAAkD;;;AACnF;EAAkB;;;AAClB;EAAkB;;;AAElB;AACA;EACI;EACA;EACA;;;AACA;EAAU;EAAwC;EAA0B;;;AAC5E;EAAa;EAAqB;EAAgB;;;AAClD;EAAa;EAAqB;EAAgB;;;AAElD;EACI;EACA;EACA;;;AAIR;AACA;EAAgB;;;AC5HhB;AACA;EACE;EACA;EACA;EACA;EAGA;AAoCE;;;AAlCF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAEA;EACE;;;AAIJ;EACE;;;AAGF;EACE;EACA;EACA;;;AAEA;EAAU;EAAqB;;;AAC/B;EAAa;EAAmB;;;AAGlC;EACE;EACA;;;AAIA;EACI;EACA;;;AAIR;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAEA;EACE;EACA;EACA;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAEA;EAAc;EAAqB;EAAuB;;;AAC1D;EAAc;EAAqB;EAAuB;;;AAC1D;EAAc;EAAyB;EAAW;EAAgB;;;AAGpE;EACE;EACA;EACA;EACA;EACA;EACA;;;AAEA;EACE;EACA;EACA;;;AAIJ;AACA;EACE;EACA;EAEE;EACF;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EAEA;EAEA;AAEA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;AACA;EACE;EACA;EACA;;;AAEF;EACE;EACA;;;AAGF;EAAW;;;AAGX;AACA;EACI;;;AACA;EACI;EACA;EACA;;;AACA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAIZ;EACI;EACA;EACA;EACA;EACA;EACA;;;AAEJ;EACI;;;AAGJ;EACI;EACA;EACA;;;AAGJ;EACI;EACA;EACA;;;AAGJ;EACI;EACA;EAAY;EAAa;EAAY;EAAc;EACnD;EAAqB;EAAqB;;;AC3L9C;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAKA;EAAQ;;;AACR;EAAQ;;;AACR;EAAQ;;;AACR;EAAQ;;;AACR;EAAQ;;;AACR;EAAS;;;AACT;EAAU;;;AAIV;EAAQ;;;AACR;EAAQ;;;AACR;EAAQ;;;AACR;EAAQ;;;AACR;EAAQ;;;AACR;EAAS;;;AACT;EAAU;;;AAIV;EAAQ;;;AACR;EAAQ;;;AACR;EAAQ;;;AACR;EAAQ;;;AACR;EAAQ;;;AACR;EAAS;;;AACT;EAAU;;;AAIV;EAAQ;;;AACR;EAAQ;;;AACR;EAAQ;;;AACR;EAAQ;;;AACR;EAAQ;;;AACR;EAAS;;;AACT;EAAU;;;AAIV;EAAQ;;;AACR;EAAQ;;;AACR;EAAQ;;;AACR;EAAQ;;;AACR;EAAQ;;;AACR;EAAS;;;AACT;EAAU;;;AAKR;EAAQ;;;AACR;EAAQ;;;AACR;EAAQ;;;AACR;EAAQ;;;AACR;EAAQ;;;AACR;EAAS;;;AACT;EAAU;;;AACV;EACE;;;AAIF;EAAQ;;;AACR;EAAQ;;;AACR;EAAQ;;;AACR;EAAQ;;;AACR;EAAQ;;;AACR;EAAS;;;AACT;EAAU;;;AACV;EACE;;;AAIF;EAAQ;;;AACR;EAAQ;;;AACR;EAAQ;;;AACR;EAAQ;;;AACR;EAAQ;;;AACR;EAAS;;;AACT;EAAU;;;AACV;EACE;;;AAIF;EAAQ;;;AACR;EAAQ;;;AACR;EAAQ;;;AACR;EAAQ;;;AACR;EAAQ;;;AACR;EAAS;;;AACT;EAAU;;;AACV;EACE;;;AAQJ;EAAQ;;;AACR;EAAQ;;;AACR;EAAQ;;;AACR;EAAQ;;;AACR;EAAQ;;;AACR;EAAS;;;AACT;EAAU;;;AAKV;EAAU;;;AACV;EAAY;;;AACZ;EAAW;;;AACX;EAAa;;;AAEb;EAAe;;;AACf;EAAe;;;AACf;EAAgB;;;AAChB;EAAU;;;AAEV;EAAU,anBlGkB;;;AmBmG5B;EAAe,anBpGa;;;AmBqG5B;EAAY,anBtGgB;;;AmBuG5B;EAAY;;;AACZ;EAAW;;;AAEX;EAAS;;;AACT;EAAQ;;;AACR;EAAQ;;;AACR;EAAU;;;AACV;EAAQ;;;AACR;EAAQ;;;AACR;EAAS;;;AAKT;EAAa;;;AACb;EAAe;;;AACf;EAAW;;;AACX;EAAc;;;AACd;EAAc;;;AACd;EAAc;;;AACd;EAAc;;;AACd;EAAa;;;AACb;EAAa;;;AACb;EAAW;;;AACX;EAAU;;;AAKV;EAAa;;;AACb;EAAe;;;AACf;EAAW;;;AACX;EAAa;;;AACb;EAAc;;;AACd;EAAc;;;AACd;EAAa;;;AACb;EAAa;;;AACb;EAAW;;;AACX;EAAU;;;AACV;EAAiB;;;AAKjB;EAAa;;;AACb;EAAe;;;AACf;EAAW;;;AACX;EAAc;;;AACd;EAAc;;;AACd;EAAc;;;AACd;EAAc;;;AACd;EAAa;;;AACb;EAAa;;;AACb;EAAW;;;AACX;EAAU;;;AACV;EAAiB;;;AAKjB;EAAW;;;AACX;EAAY;;;AACZ;EAAkB;;;AAClB;EAAU;;;AACV;EAAiB;;;AACjB;EAAU;;;AACV;EAAU;;;AAKV;EAAS;;;AACT;EAAY;;;AACZ;EAAU;;;AACV;EAAY;;;AAEZ;EAAmB;;;AACnB;EAAoB;;;AACpB;EAAiB;;;AACjB;EAAqB;;;AACrB;EAAoB;;;AAEpB;EAAiB;;;AACjB;EAAkB;;;AAClB;EAAe;;;AACf;EAAmB;;;AACnB;EAAoB;;;AAEpB;EAAU;;;AACV;EAAY;;;AACZ;EAAa;;;AACb;EAAe;;;AAKf;EAAY;;;AACZ;EAAc;;;AACd;EAAc;;;AACd;EAAW;;;AACX;EAAY;;;AAKZ;EAAU;;;AACV;EAAU;;;AACV;EAAS;;;AACT;EAAQ;;;AACR;EAAQ;;;AACR;EAAQ;;;AAKR;EAAU;;;AACV;EAAU;;;AACV;EAAS;;;AACT;EAAY;;;AAKZ;EAAU;;;AACV;EAAS;;;AACT;EAAS;;;AACT;EAAY;;;AACZ;EAAU;;;AACV;EAAW;;;AAEX;EAAa;;;AACb;EAAe;;;AAKf;EAAU;;;AACV;EAAQ;;;AACR;EAAU;;;AACV;EAAQ;;;AACR;EAAU;;;AAKV;EAAU;;;AACV;EAAQ;;;AACR;EAAQ;;;AACR;EAAQ;;;AACR;EAAU;;;AAKV;EAAa;;;AACb;EAAY;;;AACZ;EAAY;;;AACZ;EAAU;;;AAGR;EAAa;;;AACb;EAAY;;;AACZ;EAAY;;;AACZ;EAAU;;;AAIV;EAAa;;;AACb;EAAY;;;AACZ;EAAY;;;AACZ;EAAU;;;AAMZ;EAAO;;;AACP;EAAQ;;;AACR;EAAQ;;;AACR;EAAQ;;;AACR;EAAQ;;;AACR;EAAQ;;;AACR;EAAU;;;AAIZ;EAEI;IAAY;;EACZ;IAAW;;EACX;IAAU;;EACV;IAAiB;;EACjB;IAAe;;EACf;IAAgB;;;AAIpB;EAEI;IAAY;;EACZ;IAAW;;EACX;IAAU;;EACV;IAAiB;;EACjB;IAAe;;;AAKnB;EAEI;IAAY;;EACZ;IAAW;;;AC5Rf;EAEE;IACE;IACA;;EAGF;IACE;;EAGF;IACE;;EAGF;IACE;IACA;IACA;;EAGF;IACE;IACA;IACA%22,%22file%22:%22app.output.css%22%7D */
