@import '_content/Blazored.Modal/Blazored.Modal.bundle.scp.css';
@import '_content/Blazored.Toast/Blazored.Toast.bundle.scp.css';

/* /Components/Blocks/CountdownTimer.razor.rz.scp.css */
.countdown-timer[b-33fo71ev4q] {
    /* Default: horizontal layout */
    flex-direction: row;
    font-size: 1rem;
}

@media (max-width: 576px) {
    .countdown-timer[b-33fo71ev4q] {
        flex-direction: column;
        align-items: stretch;
        text-align: center;
        padding: 1rem 0.5rem;
        font-size: 0.95rem;
    }
    .countdown-timer .icon-wrap[b-33fo71ev4q] {
        display: none !important;
    }
    .countdown-timer .countdown-badges[b-33fo71ev4q] {
        flex-wrap: wrap;
        justify-content: center !important;
        margin-top: 0.5rem;
    }
    .countdown-timer .badge[b-33fo71ev4q] {
        margin-left: 0.25rem !important;
        margin-right: 0.25rem !important;
        margin-bottom: 0.25rem;
        font-size: 1em;
    }
    .countdown-timer .countdown-wrapper[b-33fo71ev4q] {
        margin-top: 0.5rem;
    }
}

.countdown-timer[b-33fo71ev4q] {
    /* keep layout tidy; visual styling uses Bootstrap classes (alert-*, bg-*, badge-*) */
    --ct-icon-size: 3rem;
}

.countdown-timer .icon-wrap[b-33fo71ev4q] {
    width: var(--ct-icon-size);
    height: var(--ct-icon-size);
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: .5rem;
    /* allow Bootstrap bg-* classes to provide background color */
}

.countdown-badges .badge[b-33fo71ev4q] {
    font-weight: 600;
    font-size: 0.85rem;
    padding: 0.35rem 0.5rem;
}

.countdown-wrapper[b-33fo71ev4q] {
    display: none; /* hide by default, show in text-only mode */
    color: var(--bs-body-color);
}

/* subtle elevation when danger to emphasize theme */
.alert-danger.countdown-timer[b-33fo71ev4q] {
    box-shadow: 0 6px 18px rgba(var(--bs-danger-rgb, 220, 53, 69), 0.06);
}


.badge[b-33fo71ev4q] {
    width: 4em;
}

/* TEXT-ONLY MODE: strip backgrounds, icons, badges and use plain inline text */
.text-only .countdown-timer[b-33fo71ev4q] {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: .4rem 0 !important;
    align-items: center;
}

    .text-only .countdown-timer .icon-wrap[b-33fo71ev4q] {
        display: none !important;
    }

    .text-only .countdown-timer .countdown-badges[b-33fo71ev4q],
    .text-only .countdown-timer .countdown-badges .badge[b-33fo71ev4q] {
        display: none !important;
    }

    .text-only .countdown-timer .small[b-33fo71ev4q] {
        color: var(--bs-body-color) !important;
        opacity: 0.9;
    }

    .text-only .countdown-timer .countdown-text[b-33fo71ev4q] {
        font-weight: 600;
        color: var(--bs-body-color);
    }

    .text-only .countdown-timer .countdown-wrapper[b-33fo71ev4q] {
        color: var(--bs-body-color);
        display: inline-block;
    }

/* small screens: slightly smaller icon and badges */
@media (max-width: 576px) {
    :root[b-33fo71ev4q] { --ct-icon-size: 2.2rem; }
    .countdown-badges .badge[b-33fo71ev4q] { font-size: 0.75rem; padding: 0.25rem 0.4rem; }
}
/* /Components/Blocks/FAQBlock.razor.rz.scp.css */
@media (max-width: 1200px) {
    .pretty-border-full[b-5ivrnpknwr]:before, .pretty-border-full[b-5ivrnpknwr]:after {
        display: none;
    }
}

.text-only .rounded-pill.text-bg-secondary[b-5ivrnpknwr] {
    background-color: rgba(var(--bs-body-color-rgb),1) !important;
    color: rgba(var(--bs-body-bg-rgb),1) !important
}

/* /Components/Blocks/HotelRequestBlock.razor.rz.scp.css */
/* Ensure accessible-room check icon is green across themes.
   Uses Bootstrap CSS variable when present, falls back to a safe green. */
.accessible-yes[b-wrvzhfpzur] {
    color: #198754 !important;
    -webkit-text-fill-color: #198754 !important;
}

.text-only .accessible-yes[b-wrvzhfpzur] {
    color: var(--text-body) !important;
    -webkit-text-fill-color: var(--text-body) !important;
}

.text-only .text-danger[b-wrvzhfpzur] {
    color: var(--text-body) !important;
    -webkit-text-fill-color: var(--text-body) !important;
}
/* /Components/Blocks/NewsBlock.razor.rz.scp.css */
@media (max-width: 1200px) {
    .pretty-border-full[b-p39m8934g9]:before, .pretty-border-full[b-p39m8934g9]:after {
        display: none;
    }
}


.text-only .rounded-pill.text-bg-secondary[b-p39m8934g9] {
    background-color: rgba(var(--bs-body-color-rgb),1) !important;
    color: rgba(var(--bs-body-bg-rgb),1) !important
}
/* /Components/Blocks/NotificationItem.razor.rz.scp.css */
.card[b-vuncuszjr7] {
    background-color: transparent;
    margin-bottom: 0.5rem;
    padding: 2rem;
}

.card-footer[b-vuncuszjr7] {
    padding: var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);
}

.border-danger[b-vuncuszjr7] {
    border-color: var(--red) !important;
}

.text-danger[b-vuncuszjr7] {
    color: var(--red) !important;
}

/* /Components/Blocks/NotificationPanel.razor.rz.scp.css */
.notifications-dropdown-toggle[b-wu1keaey76] {
    border-color: var(--black);
    background-color: var(--gold);
    color: var(--black);
}

.badge[b-wu1keaey76] {
    z-index:100;
}
.dropdown-menu[b-wu1keaey76] {
        padding: 0;
        margin: 0;
        font-size: var(--bs-dropdown-font-size);
        color: var(--bs-dropdown-color);
        text-align: left;
        list-style: none;
        background-color: var(--bs-dropdown-bg);
        background-clip: padding-box;
        border: var(--bs-dropdown-border-width) solid var(--bs-dropdown-border-color);
        border-radius: var(--bs-dropdown-border-radius);
        z-index: 1050 !important;
    }

.notification-panel-list[b-wu1keaey76] {
    max-height: 70vh;
    overflow-y: auto;
    z-index: 1050; /* Ensure it's above other elements */
    position: relative;
    padding-bottom: 35px; /* Add bottom padding for button and border visibility */
}

.notification-panel-scroll[b-wu1keaey76] {
    max-height: 50vh;
    overflow-y: auto;
    padding: 35px 10px 0px 20px; /* Remove bottom padding to avoid double spacing */
    -ms-scrollbar-base-color: var(--gold);
    scrollbar-base-color: var(--gold);
}
/* /Components/Blocks/OrderBlock.razor.rz.scp.css */
h3[b-m09uoz6z00] {
    padding-top:0px;
}

.text-only .text-bg-primary[b-m09uoz6z00] {
    background-color: rgba(var(--bs-body-color-rgb),1) !important;
    color: rgba(var(--bs-body-bg-rgb),1) !important;
}

.card[b-m09uoz6z00] {
    padding-bottom:20px;
}

.text-only .card[b-m09uoz6z00] {
    padding-bottom: 0px;
}

.order-cost-badge[b-m09uoz6z00] {
    position: absolute;
    bottom: 1rem;
    right: 1.5rem;
}

@media (max-width: 576px) {
    .order-block-body[b-m09uoz6z00] {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        position: static !important;
    }
    .order-cost-badge[b-m09uoz6z00] {
        position: static !important;
        margin-top: 1rem;
        width: 100%;
        display: flex;
        justify-content: flex-start;
    }
}
/* /Components/Blocks/ProductBlock.razor.rz.scp.css */
.card-text[b-b01opej83m]  div p {
    margin-bottom: 0;
}

.card-footer h4[b-b01opej83m] {
    margin-top: 0.5em !important;
    margin-bottom: 0.5em !important;
    padding: 0;
}

.text-only .product-image[b-b01opej83m] {
    background-color: transparent !important;
    border-radius: unset !important;
    box-shadow: unset !important;
    border: 1px solid var(--bs-border-color-translucent) !important;
}

.product-image[b-b01opej83m] {
    overflow: hidden; /* keep rotated bar clipped to image area */
    border: 1px solid var(--bs-border-color-translucent) !important;
}

/* the rotated overlay bar */
.product-overlay[b-b01opej83m] {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 160%; /* long enough to cross corners */
    height: clamp(2.8rem, 12%, 3.6rem); /* responsive thickness */
    background-color: var(--red);
    opacity: 0.78;
    transform: translate(-50%, -50%) rotate(-45deg);
    z-index: 1;
    pointer-events: none; /* allow clicks to pass through */
    border-radius: 0;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.25);
}

.overlay-text[b-b01opej83m] {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%) rotate(-45deg); /* counter the overlay rotation */
    z-index: 1;
    pointer-events: none;
    white-space: nowrap;
}

/* the visible "bar" behind the text so it reads cleanly */
.overlay-text span[b-b01opej83m] {
    display: inline-block;
    opacity:1;
    color: var(--light-gold) ;
    padding: 0.35rem 0.9rem;
    font-weight: 700;
    font-size: 1.3rem;

}

/* smaller screens: slightly smaller text and padding */
@media (max-width: 576px) {
    .product-overlay[b-b01opej83m] {
        height: clamp(1.6rem, 10%, 2.6rem);
    }

    .overlay-text span[b-b01opej83m] {
        font-size: 0.9rem;
        padding: 0.25rem 0.6rem;
    }
}

.product-image a[b-b01opej83m] {
    border: none;
    padding-bottom: 0;
    color:transparent;

}
/* /Components/Blocks/ProductImageBlock.razor.rz.scp.css */
.img-thumbnail[b-5h5ju8cp2p] {
    height: 200px;
    width: auto;
}

@media (max-width: 576px) {
    .img-thumbnail[b-5h5ju8cp2p] {
        display: block;
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 1rem;
    }
}
/* /Components/Blocks/ShoppingBasketBlock.razor.rz.scp.css */
.card-body[b-00fuve1vqm] {
    padding-top: 25px;
    padding-bottom: 25px;
}


.text-only .alert[b-00fuve1vqm] {
    background-color: var(--bs-body-bg) !important;
    border-color: var(--bs-border-color-translucent);
    color: var(--bs-body-color);
}

.text-only .text-primary-emphasis[b-00fuve1vqm] {
    color: var(--bs-body-color) !important;
}

.btn-group.top button[b-00fuve1vqm]{
    border-end-end-radius: 0px;
    border-end-start-radius: 0px;
}

.btn-group.bottom button[b-00fuve1vqm] {
    border-start-end-radius: 0px;
    border-start-start-radius: 0px;
}
/* /Components/Blocks/VolunteerEntryBlock.razor.rz.scp.css */
/* Ensure accessible-room check icon is green across themes.
   Uses Bootstrap CSS variable when present, falls back to a safe green. */
.accessible-yes[b-5el747jzcc] {
    color: #198754 !important;
    -webkit-text-fill-color: #198754 !important;
}

.bg-success[b-5el747jzcc] {
    background-color: #198754 !important;

}

.text-only .bg-success[b-5el747jzcc] {
    background-color: var(--text-body) !important;
    -webkit-text-fill-color: var(--text-body) !important;
}

.text-only .accessible-yes[b-5el747jzcc] {
    color: var(--text-body) !important;
    -webkit-text-fill-color: var(--text-body) !important;
}

.text-only .text-danger[b-5el747jzcc] {
    color: var(--text-body) !important;
    -webkit-text-fill-color: var(--text-body) !important;
}
/* /Components/BodyBlocks/TableBlock.razor.rz.scp.css */
.table-dark[b-tchymovt2o] {
    font-family: Georgia, 'Times New Roman', Times, serif;
    color: var(--mid-gold);
}

    .table-dark th[b-tchymovt2o] {
        font-family: Georgia, 'Times New Roman', Times, serif;
        color: var(--mid-gold);
    }

[data-bs-theme=light] .table-dark th[b-tchymovt2o] {
    background-color: var(--mid-black);

}

[data-bs-theme=light] th.table-dark[b-tchymovt2o] {
    background-color: var(--mid-black);
}


[data-bs-theme=light] th.table-dark[b-tchymovt2o] {
    background-color: var(--mid-black)!important;
}

[data-bs-theme=light] .table-striped > tbody > tr:nth-of-type(odd) > th.table-dark[b-tchymovt2o] {
    --bs-table-bg-type: var(--mid-black) !important;
}
[data-bs-theme=light] .table-striped > tbody > tr:nth-of-type(even) > th.table-dark[b-tchymovt2o] {
    --bs-table-bg-type: var(--mid-black) !important;
}

.text-only .table-dark[b-tchymovt2o] {
    color: var(--bs-body-color)
}

    .text-only .table-dark th[b-tchymovt2o] {
        color: var(--bs-body-color)
    }


.text-only .table-dark th[b-tchymovt2o] {
    background-color: var(--bs-body-bg);
}

.text-only th.table-dark[b-tchymovt2o] {
    background-color: var(--bs-body-bg);
}


.text-only th.table-dark[b-tchymovt2o] {
    background-color: var(--bs-body-bg) !important;
}

.text-only .table-striped > tbody > tr:nth-of-type(odd) > th.table-dark[b-tchymovt2o] {
    --bs-table-bg-type: var(--bs-body-bg) !important;
}

.text-only .table-striped > tbody > tr:nth-of-type(even) > th.table-dark[b-tchymovt2o] {
    --bs-table-bg-type: var(--bs-body-bg) !important;
}

.text-only th[b-tchymovt2o],
text-only tr[b-tchymovt2o],
text-only td[b-tchymovt2o] {
    font-family: Roboto;
    color: var(--bs-body-color);
}
/* /Components/Dialogs/IconKeyDialog.razor.rz.scp.css */
.bi[b-dw9x2i6qqj] {
  font-size: 1.5rem;
}

.badge-18[b-dw9x2i6qqj] {
  display: inline-block;
  padding: .25rem .4rem;
  font-weight: 700;
  border-radius: .25rem;
  background: var(--bs-danger);
  color: var(--bs-white);
}

/* Ensure icons are contained within a fixed-size box and centered */
.icon-key .ik-box[b-dw9x2i6qqj] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.75rem;
    height: 1.75rem;
    min-width: 1.75rem;
    border-radius: .5rem;
    line-height: 1;
    overflow: hidden;
    flex: 0 0 auto;
}

/* Normalize icon sizing within the box */
.icon-key .ik-box > i[b-dw9x2i6qqj] {
    font-size: 1rem;
    line-height: 1;
}

.text-only .modal-header[b-dw9x2i6qqj],
.text-only .modal-body[b-dw9x2i6qqj],
.text-only .modal-footer[b-dw9x2i6qqj] {
    border-top-color: var(--bs-border-color);
}
/* /Components/Dialogs/ProgrammeEventDialog.razor.rz.scp.css */
.programme-event-dialog .ped-content[b-agu1tq6eml] {
    border: 1px solid var(--ped-header-bg) !important;
    /* shadow via ShadowClass */
}

.programme-event-dialog .ped-header[b-agu1tq6eml] {
    background: var(--ped-header-bg) !important;
    color: var(--ped-header-fg) !important;
    border-bottom: 0;
    display: flex;             /* ensure flex layout */
    align-items: center;
    margin: 0 !important;
}

/* Close button inherits the header foreground color exactly */
.programme-event-dialog .ped-header .ped-close[b-agu1tq6eml] {
    background: transparent;
    border: 0;
    color: var(--ped-header-fg);
    padding: .25rem;
    line-height: 1;
}
.programme-event-dialog .ped-header .ped-close .bi[b-agu1tq6eml] {
    font-size: 1.1rem;
}
.programme-event-dialog .ped-header .ped-close:hover[b-agu1tq6eml] {
    opacity: .85;
}
.programme-event-dialog .ped-header .ped-close:focus[b-agu1tq6eml] {
    outline: 2px solid color-mix(in srgb, var(--ped-header-fg) 50%, transparent);
    outline-offset: 2px;
}

/* push the close button to the far right */
.programme-event-dialog .ped-header > .btn[b-agu1tq6eml],
.programme-event-dialog .ped-header > .btn-close[b-agu1tq6eml],
.programme-event-dialog .ped-header > .ped-close[b-agu1tq6eml] {
    margin-left: auto;         /* right-align in flex */
}

.programme-event-dialog .ped-body[b-agu1tq6eml] {
    padding-top: .75rem;
    padding-bottom: .75rem;
}

.programme-event-dialog .ped-footer[b-agu1tq6eml] {
    border-top: 0;
}

.programme-event-dialog .ped-chip[b-agu1tq6eml] {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    font-size: .9rem;
    line-height: 1.2;
    padding: .2rem .5rem;
    border-radius: 999px;
    background-color: var(--bs-tertiary-bg);
    color: var(--bs-emphasis-color);
    border: 1px solid var(--bs-border-color);
}

.programme-event-dialog .ped-18[b-agu1tq6eml] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: .75rem;
    line-height: 1;
    padding: .05rem .3rem;
    border-radius: 999px;
    border: 1px solid currentColor;
}

/* Animations: dialog */
.ped-dialog[b-agu1tq6eml] {
    will-change: transform, opacity;
}
.ped-dialog.ped-zoom-in[b-agu1tq6eml] {
    animation: ped-zoom-in-b-agu1tq6eml var(--ped-open-duration) ease-out both;
}
.ped-dialog.ped-zoom-out[b-agu1tq6eml] {
    animation: ped-zoom-out-b-agu1tq6eml var(--ped-close-duration) ease-in both;
}
.ped-dialog.ped-slide-up-in[b-agu1tq6eml] {
    animation: ped-slide-up-in-b-agu1tq6eml var(--ped-open-duration) ease-out both;
}
.ped-dialog.ped-slide-down-out[b-agu1tq6eml] {
    animation: ped-slide-down-out-b-agu1tq6eml var(--ped-close-duration) ease-in both;
}

/* Animations: backdrop */
.ped-backdrop[b-agu1tq6eml] {
    /* remove Bootstrap�s built-in fade timing; we control opacity */
    opacity: 1;
}
.ped-backdrop.ped-fade-in[b-agu1tq6eml] {
    animation: ped-fade-in-b-agu1tq6eml var(--ped-open-duration) linear both;
}
.ped-backdrop.ped-fade-out[b-agu1tq6eml] {
    animation: ped-fade-out-b-agu1tq6eml var(--ped-close-duration) linear both;
}

/* Keyframes */
@keyframes ped-zoom-in-b-agu1tq6eml {
    from { opacity: 0; transform: scale(.96) translateY(8px); }
    to   { opacity: 1; transform: scale(1) translateY(0); }
}
@keyframes ped-zoom-out-b-agu1tq6eml {
    from { opacity: 1; transform: scale(1) translateY(0); }
    to   { opacity: 0; transform: scale(.98) translateY(8px); }
}
@keyframes ped-slide-up-in-b-agu1tq6eml {
    from { opacity: 0; transform: translateY(16px); }
    to   { opacity: 1; transform: translateY(0); }
}
@keyframes ped-slide-down-out-b-agu1tq6eml {
    from { opacity: 1; transform: translateY(0); }
    to   { opacity: 0; transform: translateY(16px); }
}
@keyframes ped-fade-in-b-agu1tq6eml {
    from { opacity: 0; }
    to   { opacity: .5; }
}
@keyframes ped-fade-out-b-agu1tq6eml {
    from { opacity: .5; }
    to   { opacity: 0; }
}

.programme-event-dialog .ped-description[b-agu1tq6eml] {
    line-height: 1.5;
    white-space: normal;
    overflow-wrap: anywhere;
    color: var(--bs-emphasis-color);
}
.programme-event-dialog .ped-description p[b-agu1tq6eml] { margin: 0 0 .5rem 0; }
.programme-event-dialog .ped-description ul[b-agu1tq6eml],
.programme-event-dialog .ped-description ol[b-agu1tq6eml] { margin: 0 0 .5rem 1.25rem; padding-left: 1.25rem; }
.programme-event-dialog .ped-description a[b-agu1tq6eml] { color: var(--bs-emphasis-color); text-decoration: underline; }
.programme-event-dialog .ped-content.ped-hidden[b-agu1tq6eml] {
  position: relative;
}

/* Diagonal stripe overlay for hidden events (dialog) */
.programme-event-dialog .ped-content.ped-hidden[b-agu1tq6eml]::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  /* subtle dark stripes over any background color */
  background: repeating-linear-gradient(
    45deg,
    rgba(0, 0, 0, 0.15) 0px,
    rgba(0, 0, 0, 0.15) 8px,
    rgba(0, 0, 0, 0.0) 8px,
    rgba(0, 0, 0, 0.0) 16px
  );
}


/* Traffic-light indicators for volunteer status used in dialog */
.vol-light[b-agu1tq6eml] {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    display: inline-block;
   border: 1px solid rgba(0,0,0,0.08);
}

.vol-green[b-agu1tq6eml] {
    background: #198754;
    box-shadow: 0 0 0 4px rgba(25,135,84,0.06);
}

.vol-amber[b-agu1tq6eml] {
    background: #ffc107;
    box-shadow: 0 0 0 4px rgba(255,193,7,0.06);
}

.vol-red[b-agu1tq6eml] {
    background: #dc3545;
    box-shadow: 0 0 0 4px rgba(220,53,69,0.06);
}

/* Dialog volunteer section spacing */
.ped-volunteers[b-agu1tq6eml] {
    border-top: 1px dashed var(--bs-border-color);
    padding-top: .75rem;
    margin-top: .75rem;
}



.text-only .programme-event-dialog .ped-header[b-agu1tq6eml],
.text-only .programme-event-dialog .ped-header *[b-agu1tq6eml] {
    background: var(--bs-bg-primary) !important;
    color: var(--bs-emphasis-color) !important;
    border-bottom: 1px solid var(--bs-border-color) !important;
    box-shadow: none !important;
}
.text-only .programme-event-dialog .ped-header .ped-close[b-agu1tq6eml],
.text-only .programme-event-dialog .ped-header .ped-close .bi[b-agu1tq6eml] {
    color: var(--bs-emphasis-color) !important;
}

.text-only .programme-event-dialog .ped-content[b-agu1tq6eml] {
    border: 1px solid var(--bs-border-color) !important;
    background: var(--bs-bg-primary) !important;
    color: var(--bs-emphasis-color);
}

.text-only .programme-event-dialog .ped-body[b-agu1tq6eml] {
    background: var(--bs-bg-primary) !important;
    color: var(--bs-emphasis-color);
}

.text-only .programme-event-dialog .ped-chip[b-agu1tq6eml] {
    background-color: var(--bs-secondary-bg) !important;
    color: var(--bs-emphasis-color) !important;
    border: 1px solid var(--bs-border-color) !important;
}

.text-only .btn[b-agu1tq6eml] {
    background: var(--bs-body-color) !important;
    color: var(--bs-body-bg) !important;
    border: 1px solid var(--bs-border-color) !important;
}

.text-only .alert[b-agu1tq6eml] {
    background: var(--bs-bg-primary) !important;
    color: var(--bs-emphasis-color) !important;
    border: 1px solid var(--bs-border-color) !important;
}

.text-only .table-secondary th[b-agu1tq6eml] {
    background: var(--bs-bg-primary) !important;
    color: var(--bs-emphasis-color) !important;
    text-decoration: underline !important;
    border-bottom: 1px solid var(--bs-border-color) !important;
}
/* /Components/Dialogs/RoomDetailsDialog.razor.rz.scp.css */
.room-details-dialog .ped-content[b-j2c2mxmnd4] {
    border: 1px solid var(--ped-header-bg) !important;
    /* shadow via ShadowClass */
}

.room-details-dialog .ped-header[b-j2c2mxmnd4] {
    background: var(--ped-header-bg) !important;
    color: var(--ped-header-fg) !important;
    border-bottom: 0;
    display: flex; /* ensure flex layout */
    align-items: center;
    margin: 0 !important;
}

    /* Close button inherits the header foreground color exactly */
    .room-details-dialog .ped-header .ped-close[b-j2c2mxmnd4] {
        background: transparent;
        border: 0;
        color: var(--ped-header-fg);
        padding: .25rem;
        line-height: 1;
    }

        .room-details-dialog .ped-header .ped-close .bi[b-j2c2mxmnd4] {
            font-size: 1.1rem;
        }

        .room-details-dialog .ped-header .ped-close:hover[b-j2c2mxmnd4] {
            opacity: .85;
        }

        .room-details-dialog .ped-header .ped-close:focus[b-j2c2mxmnd4] {
            outline: 2px solid color-mix(in srgb, var(--ped-header-fg) 50%, transparent);
            outline-offset: 2px;
        }

    /* push the close button to the far right */
    .room-details-dialog .ped-header > .btn[b-j2c2mxmnd4],
    .room-details-dialog .ped-header > .btn-close[b-j2c2mxmnd4],
    .room-details-dialog .ped-header > .ped-close[b-j2c2mxmnd4] {
        margin-left: auto; /* right-align in flex */
    }

.room-details-dialog .ped-body[b-j2c2mxmnd4] {
    padding-top: .75rem;
    padding-bottom: .75rem;
}

.room-details-dialog .ped-footer[b-j2c2mxmnd4] {
    border-top: 0;
}

.room-details-dialog .ped-chip[b-j2c2mxmnd4] {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    font-size: .9rem;
    line-height: 1.2;
    padding: .2rem .5rem;
    border-radius: 999px;
    background-color: var(--bs-tertiary-bg);
    color: var(--bs-emphasis-color);
    border: 1px solid var(--bs-border-color);
}

.room-details-dialog .ped-18[b-j2c2mxmnd4] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: .75rem;
    line-height: 1;
    padding: .05rem .3rem;
    border-radius: 999px;
    border: 1px solid currentColor;
}

/* Animations: dialog */
.ped-dialog[b-j2c2mxmnd4] {
    will-change: transform, opacity;
}

    .ped-dialog.ped-zoom-in[b-j2c2mxmnd4] {
        animation: ped-zoom-in-b-j2c2mxmnd4 var(--ped-open-duration) ease-out both;
    }

    .ped-dialog.ped-zoom-out[b-j2c2mxmnd4] {
        animation: ped-zoom-out-b-j2c2mxmnd4 var(--ped-close-duration) ease-in both;
    }

    .ped-dialog.ped-slide-up-in[b-j2c2mxmnd4] {
        animation: ped-slide-up-in-b-j2c2mxmnd4 var(--ped-open-duration) ease-out both;
    }

    .ped-dialog.ped-slide-down-out[b-j2c2mxmnd4] {
        animation: ped-slide-down-out-b-j2c2mxmnd4 var(--ped-close-duration) ease-in both;
    }

/* Animations: backdrop */
.ped-backdrop[b-j2c2mxmnd4] {
    /* remove Bootstrap�s built-in fade timing; we control opacity */
    opacity: 1;
}

    .ped-backdrop.ped-fade-in[b-j2c2mxmnd4] {
        animation: ped-fade-in-b-j2c2mxmnd4 var(--ped-open-duration) linear both;
    }

    .ped-backdrop.ped-fade-out[b-j2c2mxmnd4] {
        animation: ped-fade-out-b-j2c2mxmnd4 var(--ped-close-duration) linear both;
    }

/* Keyframes */
@keyframes ped-zoom-in-b-j2c2mxmnd4 {
    from {
        opacity: 0;
        transform: scale(.96) translateY(8px);
    }

    to {
        opacity: 1;
        transform: scale(1) translateY(0);
    }
}

@keyframes ped-zoom-out-b-j2c2mxmnd4 {
    from {
        opacity: 1;
        transform: scale(1) translateY(0);
    }

    to {
        opacity: 0;
        transform: scale(.98) translateY(8px);
    }
}

@keyframes ped-slide-up-in-b-j2c2mxmnd4 {
    from {
        opacity: 0;
        transform: translateY(16px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes ped-slide-down-out-b-j2c2mxmnd4 {
    from {
        opacity: 1;
        transform: translateY(0);
    }

    to {
        opacity: 0;
        transform: translateY(16px);
    }
}

@keyframes ped-fade-in-b-j2c2mxmnd4 {
    from {
        opacity: 0;
    }

    to {
        opacity: .5;
    }
}

@keyframes ped-fade-out-b-j2c2mxmnd4 {
    from {
        opacity: .5;
    }

    to {
        opacity: 0;
    }
}

.room-details-dialog .ped-description[b-j2c2mxmnd4] {
    line-height: 1.5;
    white-space: normal;
    overflow-wrap: anywhere;
    color: var(--bs-emphasis-color);
}

    .room-details-dialog .ped-description p[b-j2c2mxmnd4] {
        margin: 0 0 .5rem 0;
    }

    .room-details-dialog .ped-description ul[b-j2c2mxmnd4],
    .room-details-dialog .ped-description ol[b-j2c2mxmnd4] {
        margin: 0 0 .5rem 1.25rem;
        padding-left: 1.25rem;
    }

    .room-details-dialog .ped-description a[b-j2c2mxmnd4] {
        color: var(--bs-emphasis-color);
        text-decoration: underline;
    }

.room-details-dialog .ped-content.ped-hidden[b-j2c2mxmnd4] {
    position: relative;
}

    /* Diagonal stripe overlay for hidden events (dialog) */
    .room-details-dialog .ped-content.ped-hidden[b-j2c2mxmnd4]::after {
        content: "";
        position: absolute;
        inset: 0;
        pointer-events: none;
        border-radius: inherit;
        /* subtle dark stripes over any background color */
        background: repeating-linear-gradient( 45deg, rgba(0, 0, 0, 0.15) 0px, rgba(0, 0, 0, 0.15) 8px, rgba(0, 0, 0, 0.0) 8px, rgba(0, 0, 0, 0.0) 16px );
    }
/* /Components/Forms/AddressForm.razor.rz.scp.css */
/* /Components/Forms/HotelWaitingListForm.razor.rz.scp.css */
[b-uqhf96b20j].helptext p {
    margin-bottom: 0 !important;
}

/* /Components/Forms/HotelWaitingListWizard.razor.rz.scp.css */
/* Ensure guest notes wrap inside the review panel, preserve newlines and break long words */
.guest-notes[b-c0pvtbkk6f] {
  white-space: pre-wrap;       /* preserve user line breaks and wrap */
  overflow-wrap: anywhere;     /* allow breaking within long words if needed */
  word-break: break-word;      /* fallback for some browsers */
  hyphens: auto;               /* allow hyphenation where supported */
  max-width: 100%;
  word-wrap: break-word;
}

[b-c0pvtbkk6f].helptext p {
    margin-bottom: 0 !important;
}
/* /Components/Forms/MaskeradeParticipantForm.razor.rz.scp.css */
.text-only .nav-link.active[b-sviedp2jii] {
    background-color: rgba(var(--bs-body-color-rgb),1) !important;
    border-bottom: none;
    color: rgba(var(--bs-body-bg-rgb),1) !important;
}

.text-only .nav-link:hover[b-sviedp2jii] {
    color: rgba(var(--bs-body-color-rgb),1) !important;
}

.text-only .nav-link.active:hover[b-sviedp2jii] {
    color: rgba(var(--bs-body-bg-rgb),1) !important;
}
/* /Components/HomePageBlocks/QuoteBlock.razor.rz.scp.css */
.text-only .outer-border[b-ccsc9ebck7],
.text-only .mid-border[b-ccsc9ebck7],
.text-only .inner-border[b-ccsc9ebck7],
.text-only .corner-decoration[b-ccsc9ebck7],
.text-only .vertical-decoration[b-ccsc9ebck7] {
    display: none;
}

blockquote[b-ccsc9ebck7] {
    min-height:300px;
}

blockquote .position-relative[b-ccsc9ebck7] {
    margin: 3em !important;
}

    blockquote .position-relative[b-ccsc9ebck7]  .quote-body {
        padding: 1.5rem !important;
        margin-left: 3rem !important;
        margin-right: 3rem !important;
        font-size: 1.25em;
    }


    blockquote .position-relative[b-ccsc9ebck7]  .quote-body p {
        margin-bottom:0em;
    }

blockquote .open-quote[b-ccsc9ebck7]::before {
    content: open-quote;
    color: var(--bs-secondary-text-emphasis);
    font-size: 4em;
}

blockquote .open-quote[b-ccsc9ebck7] {
    line-height: 4em;
}


blockquote .close-quote[b-ccsc9ebck7]::before {
    content: close-quote;
    font-size: 4em;
    color: var(--bs-secondary-text-emphasis);
}

blockquote cite[b-ccsc9ebck7] {
    font-size: 1.25em !important;
    margin-bottom: 4em !important;
    margin-right: 3em !important;
    margin-left: 5.5em !important;
}

.block-quote[b-ccsc9ebck7] {
    background: var(--egypt-sand-light);
    background-image: url("/images/pyramids.svg");
    background-position: center;
    background-position-y: bottom;
    background-repeat: no-repeat;
    background-size: cover;
    background-color: color-mix(in srgb, var(--egypt-sand-light) 85%, transparent);
    background-blend-mode: multiply;
    filter: saturate(0.6) contrast(0.9) brightness(0.95) blur(1.5);
}

[data-bs-theme=light] .block-quote[b-ccsc9ebck7] {
    background-blend-mode: exclusion;
    background-color: color-mix(in srgb, var(--egypt-sand-light) 90%, transparent);
    filter: saturate(0.8) contrast(1) brightness(0.95) blur(1.5);
} 

.text-only .block-quote[b-ccsc9ebck7] {
    background: none;
    filter: none;
}

@media (max-width: 768px) {
    .corner-decoration[b-ccsc9ebck7] {
        width: 2em;
        height: 2em;
    }

    .vertical-decoration[b-ccsc9ebck7] {
        width: 6em;
        height: 2em;
    }
     
    blockquote .position-relative[b-ccsc9ebck7] {
        margin: 2em 1.5em 1.5em !important;
    }

        blockquote .position-relative div[b-ccsc9ebck7] {
            margin-left: 0.5em !important;
            margin-right: 0.5em !important;
            padding:0 !important;
        }


    blockquote .open-quote[b-ccsc9ebck7]::before {
        content: open-quote;
        color: var(--bs-secondary-text-emphasis);
        font-size: 3em;
    }

    blockquote .open-quote[b-ccsc9ebck7] {
        line-height: 3em;
    }


    blockquote .close-quote[b-ccsc9ebck7]::before {
        content: close-quote;
        font-size: 3em;
        color: var(--bs-secondary-text-emphasis);
    }

    blockquote .close-quote[b-ccsc9ebck7] {
        line-height: 3em;
    }

    blockquote cite[b-ccsc9ebck7] {
        margin-left: 5.2em !important;
        font-size: 1em !important;
    }

    blockquote .position-relative[b-ccsc9ebck7]  .quote-body {
        font-size: 1em;
    }

}


/* /Components/HomePageBlocks/StepsBlock.razor.rz.scp.css */
.card .card-title[b-kno5p1a6mx] {
    font-weight:bold;
    font-size-adjust:0.58;
    color: var(--mid-gold);
    padding-bottom:1em;
}

.text-only .card .card-title[b-kno5p1a6mx] {
    color: var(--white);
}

[data-bs-theme=light] .card .card-title[b-kno5p1a6mx] {
    color: var(--mid-black);
}

.card .card-footer[b-kno5p1a6mx] {
    padding: var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);
}

.card .card-title[b-kno5p1a6mx] {
    margin-left:50px;
    min-height:4em;
}

.decor-image[b-kno5p1a6mx] {
    margin-top: 8px;
    width: 100px;
    height: 100px;
    margin-bottom: 8px;
}

.text-only .decor-image[b-kno5p1a6mx] {
 display:none;
}

.text-only .card .card-title[b-kno5p1a6mx] {
    margin-left: 8px;
}
/* /Components/Navigation/Footer.razor.rz.scp.css */
footer > div[b-3jm9jr4oqc] {
    background: var(--egypt-carnelian);
    background-image: url("/images/footer.svg");
    background-position: center;
    background-position-y: bottom;
    background-repeat: no-repeat;
    background-size: contain;
    background-blend-mode: soft-light;
}

.text-only footer > div[b-3jm9jr4oqc] {
    background: none;
}

    .text-only footer[b-3jm9jr4oqc] {
    background-color: rgba(var(--bs-tertiary-bg-rgb),1) !important;
    border-top: rgba(var(--bs-secondary-bg-rgb),1) !important;
    border-top-style: solid !important;
}

    .text-only footer div[b-3jm9jr4oqc] {
        border-top-style: none !important;
    }

.text-only .logo[b-3jm9jr4oqc] {
    margin-bottom:0px;
}

footer .logo img[b-3jm9jr4oqc] {
    width: 100px;
    height: auto;
}

footer .border-top[b-3jm9jr4oqc] {
    border-top: 3px solid rgba(var(--bs-body-bg-rgb),1) !important;
}
/* /Components/Navigation/Navmenu.razor.rz.scp.css */
header[b-qrwzzzc6a3] {
    display: inline;
}

@media (max-width: 991px) {
    /* header must be block-level so that sticky on its child .navbar-container works */
    header[b-qrwzzzc6a3] {
        display: block;
    }

    .offcanvas-body .navbar-nav.justify-content-between[b-qrwzzzc6a3] {
        justify-content: flex-start !important;
    }

    .offcanvas-body .navbar-nav.nav-split-left[b-qrwzzzc6a3],
    .offcanvas-body .navbar-nav.nav-split-right[b-qrwzzzc6a3] {
        flex-grow: 0 !important;
    }

    /* sticky-top requires position:sticky — the original position:relative is overridden here */
    .navbar-container[b-qrwzzzc6a3] {
        position: sticky !important;
        top: 0 !important;
        z-index: 1030 !important;
    }

    .offcanvas.offcanvas-top[b-qrwzzzc6a3] {
        top: 0;
        height: 100vh !important;
        overflow-y: auto;
        padding-top: 0;
        z-index: 9999;
    }

    .offcanvas-body[b-qrwzzzc6a3] {
        align-items: stretch !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    .offcanvas-body .navbar-nav[b-qrwzzzc6a3] {
        height: auto !important;
    }

    .offcanvas-body .navbar-nav.nav-split-left[b-qrwzzzc6a3] {
        margin-bottom: 0 !important;
        padding-bottom: 0 !important;
    }

    .offcanvas-body .navbar-nav.nav-split-right[b-qrwzzzc6a3] {
        margin-top: 0 !important;
        padding-top: 0 !important;
    }

    .offcanvas-header[b-qrwzzzc6a3] {
        margin-bottom: 0 !important;
    }

    .offcanvas-body .navbar-nav[b-qrwzzzc6a3] {
        justify-content: flex-start !important;
    }
}

.text-only nav[b-qrwzzzc6a3] {
    padding-left: 20px !important;
    padding-right: 20px !important;
}

.text-only .menu-bottom[b-qrwzzzc6a3] {
    background-color: rgba(var(--bs-tertiary-bg-rgb),var(--bs-bg-opacity)) !important;
    border: none !important;
    background-image: none !important;
}

    .text-only .menu-bottom[b-qrwzzzc6a3]::before,
    .text-only .menu-bottom[b-qrwzzzc6a3]::after {
        display: none !important;
    }


        .spacer[b-qrwzzzc6a3] {
            display: none;
        }

        .navbar-container.is-pinned .navbar-brand[b-qrwzzzc6a3] {
            display: block;
            background-image: url('/images/home.png');
            background-size: cover;
            background-repeat: no-repeat;
            background-position: center;
            transition: opacity 3s ease;
            height: 80px;
            width: 80px;
            opacity: 1;
            margin: 0;
            border-bottom: none;
        }

/* Mobile scarab logo — inline in the nav bar row, hidden on desktop */
.navbar-brand-mobile[b-qrwzzzc6a3] {
    display: none;
    background-image: url('/images/home.png');
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    height: 48px;
    width: 48px;
    flex-shrink: 0;
    border-bottom: none;
    margin: 4px 6px 4px 4px;
}

        @media (min-width: 992px) {
            .spacer[b-qrwzzzc6a3] {
                display: flex !important;
                justify-content: center;
                align-items: center;
                width: 200px;
                min-width: 200px;
                max-width: 300px;
                height: 100% !important;
                background: none;
                margin: 0;
            }

            .breadcrumb-parent[b-qrwzzzc6a3] {
                display: block !important;
                width: 100% !important;
            }

            .nav-split-desktop-inner[b-qrwzzzc6a3] {
                width: 100%;
                display: flex;
                flex-direction: row;
                align-items: center;
                justify-content: center;
                /* Remove gap so .spacer controls the space */
                gap: 0;
            }

            .nav-split-left[b-qrwzzzc6a3],
            .nav-split-right[b-qrwzzzc6a3] {
                min-width: 0;
                flex: 1 1 0;
                display: flex;
                flex-direction: row;
                align-items: center;
                /* Remove gap so .spacer is the only gap */
                gap: 0;
            }

            .nav-split-left[b-qrwzzzc6a3] {
                justify-content: flex-end;
            }

            .nav-split-right[b-qrwzzzc6a3] {
                justify-content: flex-start;
            }
        }

        .nav-decoration[b-qrwzzzc6a3] {
            overflow-y: visible;
        }

        .nav-decoration-top[b-qrwzzzc6a3] {
            z-index: 5;
            background-color: var(--bs-body-bg);
            height: 120px;
            background-image: url("/images/banner-repeat.svg");
            background-repeat: repeat-x;
            background-size: auto 100%;
            background-position-x: right;
        }

.text-only .nav-decoration-top[b-qrwzzzc6a3] {
    background-color: rgba(var(--bs-tertiary-bg-rgb),var(--bs-bg-opacity)) !important;
    background-image: none;
    height: 120px;
}

        @media (min-width: 992px) {
            /* keep legacy -1px offset only on desktop where layout expects it */
            .navbar-container[b-qrwzzzc6a3] {
                top: -1px;
            }
        }

        .text-only .navbar-container[b-qrwzzzc6a3] {
            top: 0px !important;
        }


        .navbar-container .navbar-brand[b-qrwzzzc6a3] {
            opacity: 0;
        }


.text-only .navbar-container .navbar-brand[b-qrwzzzc6a3], .text-only .navbar-container.is-pinned .navbar-brand[b-qrwzzzc6a3] {
    display: inline-block;
    background-image: url('/images/logo.png') !important;
    margin-top: 100px !important;
    height: 100px !important;
    width: 150px;
    background-size: contain !important;
    border-bottom: none !important;
}

        nav[b-qrwzzzc6a3] {
            background-color: var(--egypt-turquoise);
            z-index: 2 !important;
            padding-left: 200px;
            padding-right: 200px;
        }

        .menu-bottom[b-qrwzzzc6a3] {
            z-index: 1 !important;
            background-color: var(--egypt-lapis);
            padding-left: calc(50px + 12.5vw);
            padding-right: calc(50px + 12.5vw);
            border-top: 2px solid rgba(var(--bs-body-bg-rgb),var(--bs-bg-opacity)) !important;
            border-bottom: 2px solid var(--egypt-carnelian) !important;
            padding-top: 5px;
            padding-bottom: 5px;
            background-image: url('/images/symbols.png');
            background-size: contain;
            background-repeat: repeat-x;
            position: relative;
            overflow: visible;
        }

            .menu-bottom[b-qrwzzzc6a3]::before {
                content: "";
                position: absolute;
                inset: 0;
                z-index: 0;
                background-image: inherit;
                background-size: inherit;
                background-repeat: inherit;
                background-position: inherit;
                filter: invert(10%) sepia(100%) saturate(500%) hue-rotate(200deg);
                pointer-events: none;
            }

            .menu-bottom[b-qrwzzzc6a3]::after {
                content: "";
                position: absolute;
                inset: 0;
                z-index: 1;
                background: rgba(17, 122, 110, 0.2);
                pointer-events: none;
            }

            .menu-bottom > *[b-qrwzzzc6a3] {
                position: relative;
                z-index: 2;
            }


        .navbar-nav[b-qrwzzzc6a3] {
            background: none;
            height: 100%;
        }

        .nav-item[b-qrwzzzc6a3] {
            cursor: pointer;
            font-weight: 700;
        }

        .navbar-toggler[b-qrwzzzc6a3] {
            text-align: center;
            background-color: transparent !important;
            border: none;
            color: black;
            font-weight: 700;
        }

            .navbar-toggler:focus[b-qrwzzzc6a3] {
                box-shadow: unset;
                outline: none !important;
            }


        .nav-item .outer-border[b-qrwzzzc6a3], .mid-border[b-qrwzzzc6a3], .inner-border[b-qrwzzzc6a3], .corner-decoration[b-qrwzzzc6a3], .vertical-decoration[b-qrwzzzc6a3] {
            visibility: hidden;
        }
    }

@media (max-width: 991px) {
    nav[b-qrwzzzc6a3] {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    /* Wrap the header in a block-level div via the navbar-container so sticky works.
       The header itself stays display:inline (desktop needs it), but .navbar-container
       is a normal block element and sticky-top on it works fine. */
    .navbar-container[b-qrwzzzc6a3] {
        position: sticky !important;
        top: 0 !important;
        z-index: 1030 !important;
        display: block !important;
    }

    /* Always show the scarab logo on mobile — same image used for desktop is-pinned */
    .navbar-container .navbar-brand[b-qrwzzzc6a3] {
        display: block !important;
        background-image: url('/images/home.png') !important;
        background-size: cover !important;
        background-repeat: no-repeat !important;
        background-position: center !important;
        height: 48px !important;
        width: 48px !important;
        opacity: 1 !important;
        margin: 4px 8px 4px 4px !important;
        border-bottom: none !important;
        flex-shrink: 0 !important;
        position: relative !important;
        transform: none !important;
        left: auto !important;
    }
}

@media (max-width: 750px) {
    .nav-decoration-centre[b-qrwzzzc6a3] {
        width: 100%;
        height: 171px;
        background-size: auto 173px;
        background-position: top;
    }

    nav[b-qrwzzzc6a3] {
        padding-left: 0px;
        padding-right: 0px;
    }

    .navbar-brand[b-qrwzzzc6a3] {
        display: none !important;
    }
}


.dropdown-menu[b-qrwzzzc6a3] {
    z-index: 99999;
}

    .dropdown-menu .row[b-qrwzzzc6a3] {
        padding: 1em;
    }

    .dropdown-menu .list-group[b-qrwzzzc6a3] {
        --bs-list-group-bg: transparent;
    }

    .dropdown-menu a[b-qrwzzzc6a3] {
        text-decoration: none;
        border: none;
    }


@media only screen and (max-width: 991px) {
    .dropdown-menu .list-group[b-qrwzzzc6a3] {
        border-radius: var(--bs-list-group-border-radius)
    }

    .offcanvas-body .nav-link[b-qrwzzzc6a3] {
        color: var(--bs-nav-link-color) !important;
    }
}

@media only screen and (min-width: 992px) {
    .dropdown-menu.full-width[b-qrwzzzc6a3] {
        width: 60vw;
        transform: translateX(50vw);
        margin-left: calc(-60vw - 12px) !important;
    }
}

.dropdown-menu.full-width.show[b-qrwzzzc6a3] {
    display: flex;
}

.dropdown-menu .col[b-qrwzzzc6a3] {
    margin-top: -10px;
    margin-bottom: -15px;
}

.dropdown-menu .list-group[b-qrwzzzc6a3] {
    padding-top: 20px;
    padding-bottom: 20px;
}

    .dropdown-menu .list-group .list-group-item[b-qrwzzzc6a3] {
        font-weight: 700;
        font-size: 1.2em;
    }

.dropdown-menu .col:not(:last-child)[b-qrwzzzc6a3] {
    margin-top: -10px;
    margin-bottom: -15px;
    border-right: var(--bs-border-width) var(--bs-border-style) var(--dark-gold) !important;
}

.dropdown-menu.quarter-width[b-qrwzzzc6a3] {
    width: 25vw;
}

.dropdown-menu.show[b-qrwzzzc6a3] {
    display: block;
}

.user-menu-dropdown-toggle[b-qrwzzzc6a3] {
    border-color: var(--egypt-sand);
    background-color: var(--egypt-turquoise);
    color: var(--egypt-sand);
}

.badge[b-qrwzzzc6a3] {
    z-index: 100;
}


.menu-bottom .btn-outline-primary[b-qrwzzzc6a3] {
    color: var(--black);
    border-color: var(--black);
    background-color: var(--egypt-sand);
  
}

.search-box[b-qrwzzzc6a3]  input {
    background-color: var(--egypt-turquoise);
    border-color: var(--egypt-sand);
    color: var(--egypt-sand);
}

    .search-box[b-qrwzzzc6a3]  input::placeholder {
        color: var(--egypt-sand);
    }

.search-box[b-qrwzzzc6a3]  .btn-outline-primary {
    color: var(--egypt-sand);
    border-color: var(--egypt-sand);
    background-color: var(--egypt-turquoise);
}

    .search-box[b-qrwzzzc6a3]  .btn-outline-primary:hover {
        color: var(--egypt-sand-dark);
    }

.text-only .search-box[b-qrwzzzc6a3]  input {
    background-color: unset;
}

[data-bs-theme=dark] .text-only .search-box[b-qrwzzzc6a3]  input {
    color: var(--white);
    border-color: var(--white);
}

[data-bs-theme=light] .text-only .search-box[b-qrwzzzc6a3]  input {
    color: var(--black);
    border-color: var(--black);
}


    [data-bs-theme=dark] .text-only .search-box[b-qrwzzzc6a3]  input::placeholder {
        color: var(--white);
    }

    [data-bs-theme=light] .text-only .search-box[b-qrwzzzc6a3]  input::placeholder {
        color: var(--mid-black);
    }


.text-only .navbar[b-qrwzzzc6a3] {
    background-color: rgba(var(--bs-tertiary-bg-rgb),var(--bs-bg-opacity)) !important;
    border-bottom: none !important;
    border-bottom-style: none !important;
}

.text-only a.nav-link[b-qrwzzzc6a3] {
    color: var(--bs-nav-link-color) !important;
}

.text-only .dropdown-menu .col:not(:last-child)[b-qrwzzzc6a3] {
    border-right: var(--bs-border-width) var(--bs-border-style) var(--bs-secondary-bg) !important;
}

.navbar-nav li:last-child .dropdown-menu[data-bs-popper][b-qrwzzzc6a3] {
    right: 0;
    left: auto;
}

.breadcrumb-parent[b-qrwzzzc6a3] {
    min-width: 0;
    display: none;
    width: 0; 
}

.text-only .breadcrumb-list[b-qrwzzzc6a3] {
    background-color: transparent !important;
}

.text-only .breadcrumb-list li[b-qrwzzzc6a3] {
    color: var(--bs-body-color) !important;
}
    .text-only .breadcrumb-list li:last-child[b-qrwzzzc6a3] {
        color: var(--bs-body-color) !important;
    }
    .text-only .breadcrumb-list li[b-qrwzzzc6a3]:after {
        color: var(--bs-body-color) !important;
    }
    .text-only .breadcrumb-list a[b-qrwzzzc6a3] {
        color: var(--bs-body-color) !important;
    }


.breadcrumb-list[b-qrwzzzc6a3] {
    width: 100%;
    position: relative;
    z-index: 10;
    max-width: 100%;
    overflow: hidden;
    text-overflow: clip;
    white-space: nowrap;
    margin-bottom: 0;
    overflow-wrap: break-word;
    text-wrap: nowrap;
    max-height: 31px;
    background-color: rgba(17, 122, 110, 0.2);
}

    .breadcrumb-list[b-qrwzzzc6a3]::after {
        background: linear-gradient(90deg, rgba(17, 122, 110, 0.4) 0%, var(--egypt-turquoise) 35%);
        padding-left: 1em;
    }

    .breadcrumb-list li[b-qrwzzzc6a3] {
        display: inline-block;
        position: relative;
        padding-right: 2em;
        margin: 0;
        overflow: hidden;
        color: var(--egypt-sand);
    }
        
        .breadcrumb-list li[b-qrwzzzc6a3]:after {
            content: '>';
            color: var(--egypt-sand-dark) !important;
            position: absolute;
            display: inline-block;
            right: 0;
            width: 2em;
            text-align: center;
            background: linear-gradient(90deg, rgba(17, 122, 110, 0.4) 0%, var(--egypt-turquoise) 35%);
            padding-left: 1em;
        }

        .breadcrumb-list li:last-child[b-qrwzzzc6a3] {
            color: var(--egypt-sand-dark) !important;
            font-weight: 600;
            font-size: 0.85em;
            margin-bottom: 4px;
        }

            .breadcrumb-list li:last-child[b-qrwzzzc6a3]:after {
                content: '';
            }

    .breadcrumb-list a[b-qrwzzzc6a3] {
        text-decoration: none !important;
        display: inline-block;
        color: var(--egypt-sand) !important;
        white-space: nowrap;
        max-width: 2em;
        font-size: 0.85em;
        transition: max-width 300ms ease-in-out;
    }

        .breadcrumb-list a:hover[b-qrwzzzc6a3],
        .breadcrumb-list a:focus[b-qrwzzzc6a3],
        .breadcrumb-list li:hover a[b-qrwzzzc6a3] {
            max-width: 1000px;
            text-decoration: underline;
        }

    .breadcrumb-list li:hover[b-qrwzzzc6a3]:after {
        padding-left: 0em;
        background: transparent;
    }

.input-group .btn[b-qrwzzzc6a3] {
    z-index: revert !important;
}

@media (max-width: 991px) {
    .offcanvas-body[b-qrwzzzc6a3] {
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        gap: 0;
    }

        .offcanvas-body .navbar-nav[b-qrwzzzc6a3] {
            width: 100%;
            display: block !important;
            margin: 0 !important;
            padding: 0 !important;
        }

            .offcanvas-body .navbar-nav.nav-split-left[b-qrwzzzc6a3] {
                margin-top: 0 !important;
                margin-bottom: 0 !important;
            }

            .offcanvas-body .navbar-nav.nav-split-left[b-qrwzzzc6a3],
            .offcanvas-body .navbar-nav.nav-split-right[b-qrwzzzc6a3] {
                display: block !important;
                bottom: 0 !important;
            }

                .offcanvas-body .navbar-nav.nav-split-left[b-qrwzzzc6a3] {
                  
                }

                .offcanvas-body .navbar-nav .nav-item[b-qrwzzzc6a3] {
                  
                }

            .offcanvas-body .nav-link[b-qrwzzzc6a3] {
                display: block;
                width: 100%;
                padding: 0.75rem 1rem;
                text-align: left;
            }

            .offcanvas-body .spacer[b-qrwzzzc6a3] {
                display: none !important;
            }

            .search-box[b-qrwzzzc6a3] {
                padding-right: 0;
                padding-left: 0;
            }

            .breadcrumb-list[b-qrwzzzc6a3] {
                display: none;
            }

            .menu-bottom[b-qrwzzzc6a3] {
                margin-left: auto;
                padding-left: 12.5vw;
                padding-right: 12.5vw;
                margin-right: auto;
            }

                .menu-bottom[b-qrwzzzc6a3]  .nav-item {
                    width: 100% !important;
                }
            /* .menu-bottom .dropdown {
            margin-right: 0 !important;
        }*/

            .dropdown-menu.quarter-width.show[b-qrwzzzc6a3] {
                width: 90vw;
            }

            .logo[b-qrwzzzc6a3] {
                display: none;
                left: 0;
                right: 0;
                margin-right: auto;
                margin-left: auto;
                height: 130px;
                width: 200px;
            }

    .logo-text[b-qrwzzzc6a3] {
        display: none;
    }

            .box-right-content[b-qrwzzzc6a3] {
                display: none;
            }


            .dropdown-menu .pretty-border-simple[b-qrwzzzc6a3] {
                display: none;
            }

            .dropdown-menu .list-group[b-qrwzzzc6a3] {
                padding: 10px !important;
            }

                .dropdown-menu .list-group a[b-qrwzzzc6a3] {
                    text-align: center !important;
                    margin-left: unset;
                }


            /* Show scarab logo on mobile — reset absolute desktop positioning */
            .navbar-brand[b-qrwzzzc6a3] {
                display: none !important;
            }

            .navbar-brand-mobile[b-qrwzzzc6a3] {
                display: block !important;
            }

            .text-only .navbar-brand[b-qrwzzzc6a3] {
                margin-top: 0px;
            }

            .text-only .offcanvas .offcanvas-header[b-qrwzzzc6a3] {
                background-color: var(--bs-bg-body) !important;
                color: var(--bs-body-color) !important;
                border-bottom: 2px solid var(--bs-body-color) !important;
            }

            .text-only .navbar-toggler[b-qrwzzzc6a3] {
                color: var(--bs-body-color);
                outline: none;
                border: none;
            }

            [data-bs-theme=dark] .chandelier[b-qrwzzzc6a3], .chandelier[b-qrwzzzc6a3] {
                margin-top: 20px;
                background-image: url('/images/Logo_Normal_FilledInner.svg');
                transition: none;
                height: 200px;
                width: 150px;
            }

                [data-bs-theme=dark] .chandelier:hover[b-qrwzzzc6a3], .chandelier:hover[b-qrwzzzc6a3] {
                    animation: none;
                    filter: none;
                }

            .nav-item.home-item[b-qrwzzzc6a3] {
                display: block;
            }
        }


.logo[b-qrwzzzc6a3] {
    background-image: url('/images/logo.svg');
    position: absolute;
    top: 0px;
    height: 180px;
    width: 125px;
    margin-left: calc(50% - 62.5px);
    background-repeat: no-repeat;
    background-position-x: left;
    background-position-y: bottom;
    background-size: contain;
    z-index: 20;
    opacity: 0;
    animation: logo-fadein-b-qrwzzzc6a3 3s ease forwards;
    outline: none;
    border: none;
    filter: drop-shadow(0 6px 16px rgba(0, 0, 0, 0.7));
}

.logo-text[b-qrwzzzc6a3] {
    position: absolute;
    top: 175px;
    height: auto;
    width: 125px;
    text-align: center;
    margin-left: calc(50% - 62.5px);
    outline: none;
    border: none;
    filter: drop-shadow(0 6px 16px rgba(0, 0, 0, 0.7));
}


.text-only .logo-text[b-qrwzzzc6a3] {
    display: none !important;
}


.text-only .logo[b-qrwzzzc6a3] {
    filter: none !important;
}

[data-bs-theme=dark] .logo[b-qrwzzzc6a3] {
    filter: drop-shadow(0 6px 16px rgba(255, 255, 255, 0.7));
}


@keyframes logo-fadein-b-qrwzzzc6a3 {
    to {
        opacity: 1;
    }
}

.home-item[b-qrwzzzc6a3] {
    display: none;
}

.text-only .navbar-brand[b-qrwzzzc6a3] {
    background-image: url('/images/logo.png');
    position: absolute;
    margin-top: 100px;
    height: 100px;
    width: 150px;
    background-repeat: no-repeat;
    background-position-x: left;
    background-position-y: bottom;
    background-size: contain;
    z-index: 20;
    border-bottom: none;
}

.text-only .navbar-nav[b-qrwzzzc6a3] {
    margin-left: 150px;
}

.text-only .offcanvas.show .navbar-nav[b-qrwzzzc6a3] {
    margin-left: 0;
}

@media (min-width: 992px) {
    .nav-split-desktop-inner[b-qrwzzzc6a3] {
        width: 100%;
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: center;
        /* Remove gap so .spacer controls the space */
        gap: 0;
    }
    .nav-split-left[b-qrwzzzc6a3],
    .nav-split-right[b-qrwzzzc6a3] {
        min-width: 0;
        flex: 1 1 0;
        display: flex;
        flex-direction: row;
        align-items: center;
        /* Remove gap so .spacer is the only gap */
        gap: 0;
    }
    .nav-split-left[b-qrwzzzc6a3] {
        justify-content: flex-end;
    }
    .nav-split-right[b-qrwzzzc6a3] {
        justify-content: flex-start;
    }
}
/* /Components/Pages/BasePages/memberDetailPage.razor.rz.scp.css */
.nav.nav-tabs[b-bg65h3i533] {
    margin-left: 10px;
}

.member-form[b-bg65h3i533] {
    position: relative;
    display: block;
    overflow: visible; /* or auto if you want to clip overflow */
    width: 100%;
    min-width: 0;
    min-height: 0;
    box-sizing: border-box;
}

.member-form[b-bg65h3i533]  form {
    border-left: 1px solid;
    background-color: var(--bs-secondary-bg-subtle)!important;
    border-right: 1px solid;
    border-bottom: 1px solid;
    border-color: var(--bs-border-color);
    border-radius: 0 0 var(--bs-border-radius) var(--bs-border-radius);
    padding: 30px;
}

.nav-link.active[b-bg65h3i533] {
    background-color: var(--gold) !important;
    border-bottom:none;
    color:var(--black);
}

.text-only .nav-link.active[b-bg65h3i533] {
    background-color: rgba(var(--bs-body-color-rgb),1) !important;
    border-bottom: none;
    color: rgba(var(--bs-body-bg-rgb),1) !important;
}

.text-only .nav-link:hover[b-bg65h3i533] {
    color: rgba(var(--bs-body-color-rgb),1) !important;

}

.text-only .nav-link.active:hover[b-bg65h3i533] {
    color: rgba(var(--bs-body-bg-rgb),1) !important;
}


.tab-content[b-bg65h3i533] {
    flex: 1 1 auto;
    display: block;
    min-height: 650px; /* Set this to the height of your largest tab, adjust as needed */
    /* Optionally: */
    /* height: 100%; */
    /* overflow: auto; */
}

.member-form[b-bg65h3i533]  form textarea {
    min-height:230px;
}

.text-only .member-form[b-bg65h3i533]  form {
    background: rgba(var(--bs-body-bg-rgb),var(--bs-bg-opacity)) !important
}
/* /Components/Pages/BasePages/OrderDetailPage.razor.rz.scp.css */
/* /Components/Pages/BasePages/ProfilePage.razor.rz.scp.css */
.text-only .text-bg-secondary[b-l7ogonbvf2] {
    background-color: rgba(var(--bs-body-color-rgb),1) !important;
    color: rgba(var(--bs-body-bg-rgb),1) !important
}

.text-only .nav-pills .nav-link.active[b-l7ogonbvf2] {
    background-color: rgba(var(--bs-body-color-rgb),1) !important;
    color: rgba(var(--bs-body-bg-rgb),1) !important;
}

    .text-only .nav-pills .nav-link.active:hover[b-l7ogonbvf2] {
        color: rgba(var(--bs-body-bg-rgb),1) !important;
        font-weight: bolder;
    }

.text-only .nav-pills .nav-link:hover[b-l7ogonbvf2] {
    color: rgba(var(--bs-body-color-rgb),1) !important;
}

.text-only .card .card-footer[b-l7ogonbvf2] {
    padding-bottom: 10px !important;
}

.list-group-item[b-l7ogonbvf2] {
    margin: 6px;
    border-bottom: 0px;
}

.text-only .list-group-item[b-l7ogonbvf2] {
    margin: 0px;
    color: rgba(var(--bs-body-color-rgb),1) !important;
    background-color: transparent;
    border-bottom: solid 1px rgba(var(--bs-border-color-translucent),1);
}

/* /Components/Pages/CheckoutPage.Razor.rz.scp.css */
.form-header[b-6vjf7p8hlz] {
    gap: 5px;
    text-align: center;
    font-size: 1em;
}

    .form-header .stepIndicator[b-6vjf7p8hlz] {
        position: relative;
        flex: 1;
        padding-bottom: 40px;
        
    }

        .form-header .stepIndicator.active[b-6vjf7p8hlz] {
            font-weight: 800;
        }

        .form-header .stepIndicator.finish[b-6vjf7p8hlz] {
            font-weight: 800;
            color: #009688;
        }

        .form-header .stepIndicator[b-6vjf7p8hlz]::before {
            content: "";
            position: absolute;
            left: 50%;
            bottom: 0;
            transform: translateX(-50%);
            z-index: 1;
            width: 30px;
            height: 30px;
            background-color: black;
            border-radius: 50%;
            border: 3px solid #ecf5f4;
        }

        .form-header .stepIndicator.active[b-6vjf7p8hlz]::before {
            background-color: #990000;
            border: 3px solid #d5f9f6;
        }

        .form-header .stepIndicator.finish[b-6vjf7p8hlz]::before {
            background-color: #990000;
            border: 3px solid #990000;
        }

        .form-header .stepIndicator[b-6vjf7p8hlz]::after {
            content: "";
            position: absolute;
            left: 50%;
            bottom: 15px;
            width: 100%;
            height: 3px;
            background-color: #f3f3f3;
        }

        .form-header .stepIndicator.active[b-6vjf7p8hlz]::after {
            background-color: #990000;
        }

        .form-header .stepIndicator.finish[b-6vjf7p8hlz]::after {
            background-color: #009688;
        }

        .form-header .stepIndicator:last-child[b-6vjf7p8hlz]:after {
            display: none;
        }


.step[b-6vjf7p8hlz] {
    display: none;
}
    .step.active[b-6vjf7p8hlz] {
        display: initial;
    }

.min-h0[b-6vjf7p8hlz] {
    min-height:0;
}

.mvh-50[b-6vjf7p8hlz] {
    min-height: -moz-calc(100% - 400px); /* Firefox */
    min-height: -webkit-calc(100% - 400px); /* Chrome, Safari */
    min-height: calc(100vh - 400px); /* IE9+ and future browsers */
}

.basket:last-child[b-6vjf7p8hlz] {
    margin-bottom:20px;
}


.text-only .alert[b-6vjf7p8hlz] {
    background-color: var(--bs-body-bg) !important;
    border-color: var(--bs-border-color-translucent);
    --bs-alert-color: var(--bs-body-color);
    font-family: Roboto;
}

.text-only .text-secondary-emphasis[b-6vjf7p8hlz] {
    color: var(--bs-body-color) !important;
    font-family: Roboto;
}

.text-only .form-header .stepIndicator.finish[b-6vjf7p8hlz] {
    color: var(--bs-bg-body);
    font-family: Roboto;
}

.text-only .form-header .stepIndicator[b-6vjf7p8hlz]::before {
    border: 3px solid #ecf5f4;
    font-family: Roboto;
}

.text-only .form-header .stepIndicator.active[b-6vjf7p8hlz]::before {
    background-color: var(--bs-body-color);
    border: 3px solid #d5f9f6;
    font-family: Roboto;
}

.text-only .form-header .stepIndicator.finish[b-6vjf7p8hlz]::before {
    background-color: var(--bs-body-color);
    border: 3px solid #990000;
    font-family: Roboto;
}

.text-only .form-header .stepIndicator[b-6vjf7p8hlz]::after {
    background-color: var(--bs-border-color-translucent);
    font-family: Roboto;
}

.text-only .form-header .stepIndicator.active[b-6vjf7p8hlz]::after {
    background-color: var(--bs-body-color);
    font-family: Roboto;
}

.text-only .form-header .stepIndicator.finish[b-6vjf7p8hlz]::after {
    background-color: var(--bs-border-color-translucent);
    font-family: Roboto;
}


.text-only h1[b-6vjf7p8hlz],
.text-only h2[b-6vjf7p8hlz],
.text-only h3[b-6vjf7p8hlz],
.text-only h4[b-6vjf7p8hlz],
.text-only h5[b-6vjf7p8hlz],
.text-only p[b-6vjf7p8hlz],
.text-only a[b-6vjf7p8hlz],
.text-only button[b-6vjf7p8hlz],
.text-only cite[b-6vjf7p8hlz],
.text-only div[b-6vjf7p8hlz],
.text-only span[b-6vjf7p8hlz],
.text-only blockquote[b-6vjf7p8hlz] {
    font-family: Roboto;
}

.list-group-item[b-6vjf7p8hlz] {
    border-bottom: unset;
}

@media (max-width: 576px) {
    .checkout-bottom-text[b-6vjf7p8hlz] {
        display: block;
        text-align: center !important;
        margin-left: auto !important;
        margin-right: auto !important;
        width: 100%;
    }

    .row.align-items-center[b-6vjf7p8hlz] {
        flex-direction: column !important;
        align-items: stretch !important;
    }
    .row.align-items-center > .col-4[b-6vjf7p8hlz],
    .row.align-items-center > .col-8[b-6vjf7p8hlz] {
        width: 100% !important;
        max-width: 100% !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    .row.align-items-center label[b-6vjf7p8hlz] {
        margin-bottom: 0.25rem;
        text-align: left;
        display: block;
    }
    .row.align-items-center .position-relative[b-6vjf7p8hlz] {
        margin-bottom: 1rem;
    }

}
/* /Components/Pages/EventGroupPage.razor.rz.scp.css */
.columns[b-qevwlqbghm] {
    column-gap: 20px;
}

@media (min-width: 768px) {
    .columns[b-qevwlqbghm] {
        column-count: 2;
    }
}

@media (min-width: 992px) {
    .columns[b-qevwlqbghm] {
        column-count: 3;
    }
}

.text-only .badge[b-qevwlqbghm] {
    background-color: rgba(var(--bs-body-color-rgb),1) !important;
    color: rgba(var(--bs-body-bg-rgb),1) !important
}
/* /Components/Pages/FAQIndexPage.razor.rz.scp.css */
/* Sort dropdown styling */
.sort-wrapper[b-2jzm8ccypg] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
}

/* small decorative button left of select (non-interactive, visually groups controls) */
.sort-btn[b-2jzm8ccypg] {
    border-radius: 0.5rem;
    padding: 0.28rem 0.5rem;
    min-width: 3rem;
    height: calc(1.5rem + 0.6rem);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--bs-body-color);
    background: linear-gradient(180deg, rgba(255,255,255,0.02), rgba(0,0,0,0.02));
    box-shadow: 0 1px 2px rgba(0,0,0,0.04);
}

/* prettier select */
.sort-select[b-2jzm8ccypg] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    padding: 0.28rem 1.8rem 0.28rem 0.6rem;
    border-radius: 0.5rem;
    border: 1px solid rgba(0,0,0,0.08);
    background-color: var(--bs-body-bg);
    box-shadow: 0 4px 10px rgba(16,24,40,0.02);
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path fill='%23343a40' d='M6 8L0 0h12z'/></svg>");
    background-repeat: no-repeat;
    background-position: right 0.6rem center;
    background-size: 0.65rem auto;
    transition: border-color .15s ease, box-shadow .15s ease, transform .06s ease;
    cursor: pointer;
}

/* focus state */
.sort-select:focus[b-2jzm8ccypg] {
    outline: none;
    border-color: rgba(13,110,253,0.25);
    box-shadow: 0 4px 12px rgba(13,110,253,0.08);
    transform: translateY(-1px);
}

/* smaller on very small screens */
@media (max-width: 420px) {
    .sort-wrapper .sort-btn span[b-2jzm8ccypg] { display:none; }
    .sort-select[b-2jzm8ccypg] { font-size: 0.9rem; padding-right: 1.6rem; }
}

/* keep existing tag list styles intact (no changes below) */
.text-only .card.tags .list-group[b-2jzm8ccypg] {
    padding: 0 !important;
}

.card.tags .list-group-item[b-2jzm8ccypg] {
    background-color: transparent;
    border-bottom: 1px solid var(--dark-gold);
}

.card.tags .list-group[b-2jzm8ccypg] {
    padding-left: 5px;
    padding-right: 5px;
}

.card.tags .card-header[b-2jzm8ccypg] {
    margin-left: 5px;
    margin-right: 5px;
    border-bottom: 1px solid var(--dark-gold);
}

.card.tags .list-group-item.active[b-2jzm8ccypg] {
    background-color: var(--bs-list-group-active-bg);
    z-index: 0 !important;
    border-top: none;
}

@media (max-width: 991px) {
    .card.tags[b-2jzm8ccypg] {
        margin-top: 20px;
    }
}


.text-only .card.tags .card-header[b-2jzm8ccypg] {
    border-bottom: var(--bs-card-border-width) solid var(--bs-card-border-color);
}

.text-only .card.tags .list-group-item[b-2jzm8ccypg] {
    border-bottom: var(--bs-card-border-width) solid var(--bs-card-border-color);
}

text-only .card.tags .card-header[b-2jzm8ccypg] {
    border-bottom: var(--bs-card-border-width) solid var(--bs-card-border-color);
}

text-only .card.tags .list-group-item.active[b-2jzm8ccypg] {
    background-color: rgba(var(--bs-body-color-rgb),1);
}

.text-only .card.tags .list-group-item.active[b-2jzm8ccypg] {
    background-color: rgba(var(--bs-body-color-rgb),1);
    color: rgba(var(--bs-body-bg-rgb),1);
}

.text-only .sort-btn[b-2jzm8ccypg] {
    background: none;
    box-shadow: none;
    border: 0px solid var(--bs-body-color);
    color: var(--bs-body-color);
    min-width: 2.4rem;
    padding: 0.25rem 0.5rem;
}

    .text-only .sort-btn i[b-2jzm8ccypg] {
        filter: none;
    }
/* /Components/Pages/FAQPage.razor.rz.scp.css */
.card-body[b-r436w8n9yv] {
    padding:2em;
}


@media (min-width: 576px) {
    .card-body[b-r436w8n9yv] {
        margin-top: 2.5em;
        margin-bottom: 2.5em;
    }
}
/* /Components/Pages/GalaDinnerTicketPage.razor.rz.scp.css */
:root[b-oqiq6hmuug] {
    /* Acts as a fallback if global not applied yet (scoped build may still work).
       Safe to keep; global one will override if earlier. */
    --description-height: 320px;
}

.list-group .list-group-item[b-oqiq6hmuug] {
    background-color: transparent;
}

.list-group[b-oqiq6hmuug] {
    margin-right: 5px;
    margin-left: 5px;
}

.card-header[b-oqiq6hmuug] {
    padding-top: 30px;
    padding-left: 35px;
    padding-right: 35px;
    margin-right: 5px;
    margin-left: 5px;
}

.description-collapsed[b-oqiq6hmuug] {
    display: -webkit-box;
    -webkit-line-clamp: 10; /* Adjust lines */
    -webkit-box-orient: vertical;
    overflow: hidden;
    position: relative;
    transition: max-height .35s ease;
}

.description-expanded[b-oqiq6hmuug] {
    max-height: none;
    transition: max-height .35s ease;
}

label[b-oqiq6hmuug] {
    z-index: 1;
}

.input-group button:focus[b-oqiq6hmuug], .input-group button[b-oqiq6hmuug] {
    z-index: 1;
}

.text-only .alert-primary[b-oqiq6hmuug], .text-only .alert-warning[b-oqiq6hmuug] {
    color: var(--bs-body-color);
    background: var(--bs-bg-color);
    --bs-alert-border-color: var(--bs-border-color-translucent);
}

.list-group.list-group-flush .list-group-item[b-oqiq6hmuug] {
    border-bottom: 0px !important;
    padding-top: 0px;
}

    .list-group.list-group-flush .list-group-item:first-of-type[b-oqiq6hmuug] {
        border-bottom: 0px !important;
        padding-top: 5px;
    }

h1[b-oqiq6hmuug] {
    margin-bottom: 0.3em !important;
}
/* /Components/Pages/GuestsPage.razor.rz.scp.css */
.guest-url[b-52rgv0wsuo] {
    word-break: break-all;

}

.card-body[b-52rgv0wsuo] {
    padding-top:1em;
}
/* /Components/Pages/HomePage.razor.rz.scp.css */
/* Hero overlay: absolutely centred over the background image on all screen sizes.
   The parent .position-relative constrains the overlay to the image bounds. */

.hero-overlay-wrapper[b-aj4km39gop] {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 90%;
    transform: translate(-50%, -50%);
    text-align: center;
}

@media (max-width: 767px) {
    /* Keep the overlay but shrink the text so it fits within the image */
    .hero-overlay-wrapper[b-aj4km39gop] {
        width: 92%;
    }

    [b-aj4km39gop] .hero-heading {
        font-size: 1.3rem !important;
        line-height: 1.2 !important;
    }

    [b-aj4km39gop] .hero-text {
        font-size: 0.9rem !important;
        line-height: 1.2 !important;
    }

    [b-aj4km39gop] .hero-cta {
        font-size: 0.85rem !important;
        padding: 0.3rem 0.6rem !important;
    }
}
/* /Components/Pages/KlatchPage.razor.rz.scp.css */
.card-body p[b-9gskhs2rq7] {
        margin-bottom: 0;
    }

.columns[b-9gskhs2rq7] {
    column-gap: 20px;
}

@media (min-width: 768px) {
    .columns[b-9gskhs2rq7] {
        column-count: 2;
    }
}

@media (min-width: 992px) {
    .columns[b-9gskhs2rq7] {
        column-count: 3;
    }
}

.member-row[b-9gskhs2rq7] {
    display: flex;
    align-items: flex-start;
    flex-wrap: wrap;
}

.badge[b-9gskhs2rq7] {
    min-width: 65px;
    flex-shrink: 0;
}

.badge-name-indent[b-9gskhs2rq7] {
    flex: 1 1 0;
    min-width: 0;
    /* Indent only wrapped lines */
    text-indent: 0;
    padding-left: 0;
    margin-left: 8px; /* space between badge and name */
}
/* /Components/Pages/MemberListPage.razor.rz.scp.css */
.columns[b-r20qdcw39w] {
    column-gap: 20px;
}

@media (min-width: 768px) {
    .columns[b-r20qdcw39w] {
        column-count: 2;
    }
}

@media (min-width: 992px) {
    .columns[b-r20qdcw39w] {
        column-count: 3;
    }
}

.member-row[b-r20qdcw39w] {
    display: flex;
    align-items: flex-start;
    flex-wrap: wrap;
}

.badge[b-r20qdcw39w] {
    min-width: 65px;
    flex-shrink: 0;
}

.badge-name-indent[b-r20qdcw39w] {
    flex: 1 1 0;
    min-width: 0;
    /* Indent only wrapped lines */
    text-indent: 0;
    padding-left: 0;
    margin-left: 8px; /* space between badge and name */
}
/* /Components/Pages/NewsIndexPage.razor.rz.scp.css */
/* Sort dropdown styling (mirrors FAQIndexPage) */
.sort-wrapper[b-xzmnsb5ue1] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
}

.sort-btn[b-xzmnsb5ue1] {
    border-radius: 0.5rem;
    padding: 0.28rem 0.5rem;
    min-width: 3rem;
    height: calc(1.5rem + 0.6rem);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--bs-body-color);
    background: linear-gradient(180deg, rgba(255,255,255,0.02), rgba(0,0,0,0.02));
    box-shadow: 0 1px 2px rgba(0,0,0,0.04);
}

.sort-select[b-xzmnsb5ue1] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    padding: 0.28rem 1.8rem 0.28rem 0.6rem;
    border-radius: 0.5rem;
    border: 1px solid rgba(0,0,0,0.08);
    background-color: var(--bs-body-bg);
    box-shadow: 0 4px 10px rgba(16,24,40,0.02);
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path fill='%23343a40' d='M6 8L0 0h12z'/></svg>");
    background-repeat: no-repeat;
    background-position: right 0.6rem center;
    background-size: 0.65rem auto;
    transition: border-color .15s ease, box-shadow .15s ease, transform .06s ease;
    cursor: pointer;
}

.sort-select:focus[b-xzmnsb5ue1] {
    outline: none;
    border-color: rgba(13,110,253,0.25);
    box-shadow: 0 4px 12px rgba(13,110,253,0.08);
    transform: translateY(-1px);
}

@media (max-width: 420px) {
    .sort-wrapper .sort-btn span[b-xzmnsb5ue1] { display:none; }
    .sort-select[b-xzmnsb5ue1] { font-size: 0.9rem; padding-right: 1.6rem; }
}

/* Tag card consistency (copied from FAQIndexPage for parity) */
.text-only .card.tags .list-group[b-xzmnsb5ue1] {
    padding: 0 !important;
}

.card.tags .list-group-item[b-xzmnsb5ue1] {
    background-color: transparent;
    border-bottom: 1px solid var(--dark-gold);
}

.card.tags .list-group[b-xzmnsb5ue1] {
    padding-left: 5px;
    padding-right: 5px;
}

.card.tags .card-header[b-xzmnsb5ue1] {
    margin-left: 5px;
    margin-right: 5px;
    border-bottom: 1px solid var(--dark-gold);
}

.card.tags .list-group-item.active[b-xzmnsb5ue1] {
    background-color: var(--bs-list-group-active-bg);
    z-index: 0 !important;
    border-top: none;
}

@media (max-width: 991px) {
    .card.tags[b-xzmnsb5ue1] {
        margin-top: 20px;
    }
}

.text-only .card.tags .card-header[b-xzmnsb5ue1] {
    border-bottom: var(--bs-card-border-width) solid var(--bs-card-border-color);
}

.text-only .card.tags .list-group-item[b-xzmnsb5ue1] {
    border-bottom: var(--bs-card-border-width) solid var(--bs-card-border-color);
}

.text-only .card.tags .list-group-item.active[b-xzmnsb5ue1] {
    background-color: rgba(var(--bs-body-color-rgb),1);
    color: rgba(var(--bs-body-bg-rgb),1);
}


.text-only .sort-btn[b-xzmnsb5ue1] {
    background: none;
    box-shadow: none;
    border: 0px solid var(--bs-body-color);
    color: var(--bs-body-color);
    min-width: 2.4rem;
    padding: 0.25rem 0.5rem;
}

    .text-only .sort-btn i[b-xzmnsb5ue1] {
        filter: none;
    }
/* /Components/Pages/NewsPage.razor.rz.scp.css */
.card-body[b-uvmnunj7y4] {
    padding: 2em;
}


@media (min-width: 576px) {
    .card-body[b-uvmnunj7y4] {
        margin-top: 2.5em;
        margin-bottom: 2.5em;
    }
}
/* /Components/Pages/ProductPage.razor.rz.scp.css */
:root[b-u53jcgyywg] {
    /* Acts as a fallback if global not applied yet (scoped build may still work).
       Safe to keep; global one will override if earlier. */
    --description-height: 320px;
}

.list-group .list-group-item[b-u53jcgyywg] {
    background-color: transparent;
    
}

.list-group[b-u53jcgyywg] {
    margin-right: 5px;
    margin-left:5px;
}

.card-header[b-u53jcgyywg] {
    padding-top: 30px;
    padding-left: 35px;
    padding-right: 35px;
    margin-right: 5px;
    margin-left: 5px;
}

.description-collapsed[b-u53jcgyywg] {
    display: -webkit-box;
    -webkit-line-clamp: 10; /* Adjust lines */
    -webkit-box-orient: vertical;
    overflow: hidden;
    position: relative;
    transition: max-height .35s ease;
}

.description-expanded[b-u53jcgyywg] {
    max-height: none;
    transition: max-height .35s ease;
}

label[b-u53jcgyywg] {
    z-index:1;
}

.input-group button:focus[b-u53jcgyywg], .input-group button[b-u53jcgyywg] {
    z-index: 1;
}

.text-only .alert-primary[b-u53jcgyywg], .text-only .alert-warning[b-u53jcgyywg] {
    color: var(--bs-body-color);
    background: var(--bs-bg-color);
    --bs-alert-border-color: var(--bs-border-color-translucent);
}

.list-group.list-group-flush .list-group-item[b-u53jcgyywg] {
    border-bottom: 0px !important;
    padding-top:0px;
}

.list-group.list-group-flush .list-group-item:first-of-type[b-u53jcgyywg] {
    border-bottom: 0px !important;
    padding-top: 5px;
}

h1[b-u53jcgyywg] {
    margin-bottom:0.3em !important;
}

/* Make the border overlay sit above card content (including carousel) */
.card[b-u53jcgyywg] {
  position: relative; /* establish stacking context for children */
}

.pretty-border-simple.sm[b-u53jcgyywg] {
  position: absolute;
  inset: 0;            /* stretch over the card if that’s desired */
  z-index: 1;          /* above the carousel’s z-index:0 */
  pointer-events: none;/* keep border non-interactive */
}
/* /Components/Pages/ProgrammePage.razor.rz.scp.css */
.text-only .nav-item .nav-link.active[b-q9mjot9fap]
 {
    color: var(--bs-body-bg) !important;
    background: var(--bs-emphasis-color) !important;
}

.text-only .nav-item .nav-link:hover[b-q9mjot9fap] {
    color: var(--bs-emphasis-color) !important;
}

.text-only .nav-item .nav-link.active:hover[b-q9mjot9fap] {
    color: var(--bs-body-bg) !important;
}
/* /Components/Pages/QuizPage.razor.rz.scp.css */
.card-body p[b-nj7wqwfxkv] {
    margin-bottom: 0;
}

.columns[b-nj7wqwfxkv] {
    column-gap: 20px;
}

@media (min-width: 768px) {
    .columns[b-nj7wqwfxkv] {
        column-count: 2;
    }
}

@media (min-width: 992px) {
    .columns[b-nj7wqwfxkv] {
        column-count: 3;
    }
}

.member-row[b-nj7wqwfxkv] {
    display: flex;
    align-items: flex-start;
    flex-wrap: wrap;
}

.badge[b-nj7wqwfxkv] {
    min-width: 65px;
    flex-shrink: 0;
}

.badge-name-indent[b-nj7wqwfxkv] {
    flex: 1 1 0;
    min-width: 0;
    /* Indent only wrapped lines */
    text-indent: 0;
    padding-left: 0;
    margin-left: 8px; /* space between badge and name */
}

.quiz-teams-section[b-nj7wqwfxkv],
.quiz-members-section[b-nj7wqwfxkv],
.quiz-signup-form[b-nj7wqwfxkv],
.quiz-team-create[b-nj7wqwfxkv] {
    margin-top: 1rem;
}

.quiz-team[b-nj7wqwfxkv] {
    background-color: var(--bs-body-bg);
}

.quiz-team-members li[b-nj7wqwfxkv] {
    border-bottom: 1px dotted var(--bs-border-color-translucent);
    padding-bottom: .35rem;
}

.quiz-team-members li:last-child[b-nj7wqwfxkv] {
    border-bottom: 0;
    padding-bottom: 0;
}

.quiz-member-list li[b-nj7wqwfxkv] {
    border-bottom: 1px dotted var(--bs-border-color-translucent);
    padding-bottom: .35rem;
}

.quiz-member-list li:last-child[b-nj7wqwfxkv] {
    border-bottom: 0;
    padding-bottom: 0;
}
/* /Components/Pages/StandardPage.razor.rz.scp.css */
@media (max-width: 991px) {
    .card.links[b-7kasneb7xg] {
        margin-top: 20px;
    }
}

.card.links .list-group-item[b-7kasneb7xg] {
    background-color: transparent;
    border-bottom: 1px solid var(--dark-gold);
}


.card.links .card-header[b-7kasneb7xg] {
    border-bottom: 1px solid var(--dark-gold);
}



.text-only .card.links .list-group[b-7kasneb7xg] {
    padding: 0 !important;
}

.card.links .list-group[b-7kasneb7xg] {
    padding-left: 6px;
    padding-right: 6px;
}

.card.links .list-group-item:hover[b-7kasneb7xg] {
    background-color: var(--bs-list-group-active-bg);
    z-index: 0 !important;
}


.text-only .card.links .list-group-item:hover[b-7kasneb7xg] {
    background-color: rgba(var(--bs-body-color-rgb),1) !important;
    color: rgba(var(--bs-body-bg-rgb),1) !important;
    
}

.text-only .card.links .list-group-item[b-7kasneb7xg] {
    border-bottom: 1px solid var(--bs-list-group-border-color) !important;
}

.text-only .btn.btn-secondary[b-7kasneb7xg] {
    background-color: rgba(var(--bs-body-color-rgb),1) !important;
    color: rgba(var(--bs-body-bg-rgb),1) !important
}

/* /Components/Pages/VolunteerTeamsPage.razor.rz.scp.css */
.card-body[b-ogq7l23t1s]   p {
    margin-bottom: 0.5rem;
}

.text-only .badge.bg-primary[b-ogq7l23t1s] {
    background-color: rgba(var(--bs-body-color-rgb),1) !important;
    color: rgba(var(--bs-body-bg-rgb),1) !important
}

.columns[b-ogq7l23t1s] {
    column-gap: 20px;
}

@media (min-width: 768px) {
    .columns[b-ogq7l23t1s] {
        column-count: 1;
    }
}

@media (min-width: 992px) {
    .columns[b-ogq7l23t1s] {
        column-count: 2;
    }
}

.member-row[b-ogq7l23t1s] {
    display: flex;
    align-items: flex-start;
    flex-wrap: wrap;
}

.badge[b-ogq7l23t1s] {
    min-width: 65px;
    flex-shrink: 0;
}

.badge-name-indent[b-ogq7l23t1s] {
    flex: 1 1 0;
    min-width: 0;
    /* Indent only wrapped lines */
    text-indent: 0;
    padding-left: 0;
    margin-left: 8px; /* space between badge and name */
}
/* /Components/Shared/CustomDatePicker.razor.rz.scp.css */
.custom-datepicker .input-group[b-8zlrkujl4e] {
    display: flex;
    align-items: center;
}

.custom-datepicker input[b-8zlrkujl4e] {
    cursor: pointer;
}

.custom-datepicker .btn[b-8zlrkujl4e] {
    margin-left: -1px;
}

/* small legend swatches */
.datepicker-legend[b-8zlrkujl4e] {
    gap: 0.75rem;
}

    .datepicker-legend .swatch[b-8zlrkujl4e] {
        width: 14px;
        height: 14px;
        display: inline-block;
        border-radius: 2px;
        border: 1px solid rgba(0,0,0,0.08);
    }

        /* reuse existing day colouring classes if present - stronger / less muted defaults */
        .datepicker-legend .swatch.range1[b-8zlrkujl4e] { /* stronger fallback color */
            background: rgba(13,110,253,0.85);
            border-color: rgba(13,110,253,0.95);
            color: #fff;
        }

        .datepicker-legend .swatch.range2[b-8zlrkujl4e] { /* stronger fallback color */
            background: rgba(25,135,84,0.85);
            border-color: rgba(25,135,84,0.95);
            color: #fff;
        }

.custom-datepicker[b-8zlrkujl4e] {
    position: relative;
    display: block;
}

    .custom-datepicker .dropdown-menu[b-8zlrkujl4e] {
        z-index: 3000;
        border-radius: .4rem;
    }

    .custom-datepicker .calendar-table th[b-8zlrkujl4e] {
        width: 2rem;
    }

    .custom-datepicker .day-cell[b-8zlrkujl4e] {
        width: 2rem;
        height: 2rem;
        line-height: 1.4rem;
        border-radius: .35rem;
    }

        .custom-datepicker .day-cell.muted[b-8zlrkujl4e] {
            opacity: .45;
        }

        .custom-datepicker .day-cell.disabled[b-8zlrkujl4e] {
            pointer-events: none;
            opacity: .5;
        }

        /* selected fallback when day-cell + selected classes are present */
        .custom-datepicker .day-cell.selected[b-8zlrkujl4e] {
            background-color: var(--bs-primary);
            color: #fff;
        }

        /* stronger, less-muted colors for ranges with high contrast text
           Apply to button elements specifically and with higher specificity so
           these rules are not silently overridden by generic button styles. */
        .custom-datepicker .calendar-table button.day-cell.range1[b-8zlrkujl4e],
        .custom-datepicker .calendar-table button.btn.day-cell.range1[b-8zlrkujl4e] {
            background-color: rgba(13,110,253,.60);
            border: 1px solid rgba(13,110,253,.75);
            color: #ffffff;
            box-shadow: inset 0 -2px 0 rgba(0,0,0,0.06);
        }

        .custom-datepicker .calendar-table button.day-cell.range2[b-8zlrkujl4e],
        .custom-datepicker .calendar-table button.btn.day-cell.range2[b-8zlrkujl4e] {
            background-color: rgba(25,135,84,.60);
            border: 1px solid rgba(25,135,84,.75);
            color: #ffffff;
            box-shadow: inset 0 -2px 0 rgba(0,0,0,0.06);
        }

    /* sizing/padding applied to all calendar buttons so selected matches others;
       do NOT set a background here (that previously over-rode .btn-primary) */
    .custom-datepicker .calendar-table button.btn[b-8zlrkujl4e] {
        min-width: 2rem;
        padding: .25rem .35rem;
        border: none;
        color: inherit; /* ensure button text follows context color */
    }

    /* remove background only for truly unstyled day buttons (keep backgrounds for .range1/.range2/.selected/.btn-primary) */
    .custom-datepicker .calendar-table button.btn:not(.range1):not(.range2):not(.selected):not(.btn-primary)[b-8zlrkujl4e] {
        background: none;
    }

    /* ensure Bootstrap primary inside this component keeps its expected colors (higher specificity) */
    .custom-datepicker .calendar-table button.btn.btn-primary[b-8zlrkujl4e] {
        background-color: var(--bs-primary);
        border-color: var(--bs-primary);
        color: #fff;
    }

    /* ensure contrast on hover/focus for interactive cells */
    .custom-datepicker .calendar-table button.btn:hover:not(.disabled)[b-8zlrkujl4e],
    .custom-datepicker .calendar-table button.btn:focus:not(.disabled)[b-8zlrkujl4e] {
        filter: brightness(.95);
        text-decoration: none;
    }

    /* ensure Bootstrap primary appearance is preserved for the selected day button
       using a selector with higher specificity and explicit background-image removal */
    .custom-datepicker .calendar-table button.btn.day-cell.selected[b-8zlrkujl4e],
    .custom-datepicker .calendar-table button.btn.btn-primary.day-cell.selected[b-8zlrkujl4e],
    .custom-datepicker .calendar-table button.day-cell.btn-primary.selected[b-8zlrkujl4e] {
        background-color: var(--bs-primary);
        border-color: var(--bs-primary);
        color: #fff;
        background-image: none; /* override any gradient/background applied by bootstrap */
        box-shadow: none;
        min-width: 2rem; /* match sizing with other cells */
        padding: .25rem .35rem;
    }
/* /Components/Shared/ImageCarousel.razor.rz.scp.css */
.ic-viewport[b-uq2zpgg2ho] {
  position: relative;
  width: 100%;
  overflow: hidden;
  z-index: 0;
  container-type: inline-size;
}

/* Single rail; oscillates between 0 and −maxShift */
.ic-rail[b-uq2zpgg2ho] {
  display: flex;
  flex-wrap: nowrap;
  align-items: stretch;
  gap: 0;
  padding: var(--pad, 0px);
  width: max-content;
  will-change: transform;
  animation: ic-osc-b-uq2zpgg2ho var(--duration, 20s) linear infinite;
  animation-direction: alternate;
  position: relative;
  z-index: 0;

  /* Center the rail only when it’s narrower than the viewport; when it overflows, auto margins have no effect */
  margin-left: auto;
  margin-right: auto;

  /* total content length of a single pass (items + gaps) */
  --total: calc(var(--count, 0) * var(--item-width, 280px) + (max(0, var(--count, 0) - 1)) * var(--gap, 6px));
  /* max shift is total - containerWidth (100cqw); if negative, result is 0 (no movement) */
  --maxShift: max(0px, calc(var(--total) - 100cqw));
}

.ic-rail.ic-reverse[b-uq2zpgg2ho] { animation-direction: alternate-reverse; }
.ic-rail.ic-noanim[b-uq2zpgg2ho]  { animation: none; }

/* Pause on hover if enabled */
.ic-pause-on-hover:hover .ic-rail[b-uq2zpgg2ho] { animation-play-state: paused; }

/* Fixed item width; as many as fit will be visible */
.ic-item[b-uq2zpgg2ho] {
  flex: 0 0 var(--item-width, 280px);
  margin-right: var(--gap, 6px);
  box-sizing: border-box;
}

.ic-item:last-child[b-uq2zpgg2ho] { margin-right: 0; }

.ic-item .img-thumbnail[b-uq2zpgg2ho],
.ic-item img[b-uq2zpgg2ho],
.ic-item picture[b-uq2zpgg2ho],
.ic-item figure[b-uq2zpgg2ho] {
  width: 100%;
  margin: 0 !important;
  display: block;
  box-sizing: border-box;
}

/* Oscillate between 0 and the exact max shift computed above */
@keyframes ic-osc-b-uq2zpgg2ho {
  from { transform: translate3d(0, 0, 0); }
  to   { transform: translate3d(calc(-1 * var(--maxShift)), 0, 0); }
}

@media (prefers-reduced-motion: reduce) {
  .ic-rail[b-uq2zpgg2ho] { animation: none; }
}
/* /Components/Shared/MosaicGallery.razor.rz.scp.css */
.mosaic-gallery[b-z1immqv6hz] {
    --gap: 2rem;
    --columns: 3;
    display: grid;
    grid-template-columns: repeat(var(--columns), 1fr);
    gap: var(--gap);
    width: 100%;
}

.mosaic-gallery.masonry[b-z1immqv6hz] {
    --gap: 2rem;
    --columns: 3;
    --row-height: 10px; /* slightly larger base row height for coarser spans */
    display: grid;
    grid-template-columns: repeat(var(--columns), 1fr);
    grid-auto-rows: var(--row-height);
    gap: var(--gap);
    width: 100%;
}

/* items */
.mosaic-item[b-z1immqv6hz] {
    display: inline-block;
    width: 100%;
    margin: 0 0 var(--gap);
    position: relative;
    break-inside: avoid;
    -webkit-column-break-inside: avoid;
    -moz-column-break-inside: avoid;
    outline: none;
    cursor: pointer;
    border-radius: .5rem;
    overflow: hidden;
    background: var(--bs-body-bg);
    box-shadow: 0 6px 20px rgba(0,0,0,0.06);
    transition: transform .25s ease, box-shadow .25s ease;
}

.mosaic-item img[b-z1immqv6hz] {
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
    border-radius: .5rem;
    transition: transform .35s ease;
    will-change: transform;
}

/* subtle hover zoom */
.mosaic-item:focus img[b-z1immqv6hz],
.mosaic-item:hover img[b-z1immqv6hz] {
    transform: scale(1.03);
    box-shadow: 0 10px 30px rgba(0,0,0,0.12);
}

/* overlay for title/tags in mosaic view */
/* improved contrast: full-width gradient + backing layer + stronger text styles */
.mosaic-overlay[b-z1immqv6hz] {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    box-sizing: border-box;
    padding: 1rem 1.1rem;                /* breathing room */
    color: #fff;
    pointer-events: none;
    display: flex;
    flex-direction: column;
    gap: .35rem;
    align-items: flex-start;
    opacity: 0;
    transform: translateY(8px);
    transition: opacity .28s ease, transform .28s ease;
    z-index: 2; /* ensure it sits above pseudo background */

    /* fallback background for old browsers */
    background: linear-gradient(180deg, rgba(0,0,0,0.0) 0%, rgba(0,0,0,0.45) 45%, rgba(0,0,0,0.75) 100%);
}

/* backing pseudo-element � provides a stronger, consistent backdrop without obscuring the image */
.mosaic-overlay[b-z1immqv6hz]::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    border-radius: .45rem;
    /* layered gradient + subtle dark tint to guarantee contrast on bright images */
    background: linear-gradient(180deg, rgba(0,0,0,0.0) 0%, rgba(0,0,0,0.55) 45%, rgba(0,0,0,0.85) 100%);
    /* gentle blur to reduce busy backgrounds */
    backdrop-filter: blur(4px) saturate(1.05);
    -webkit-backdrop-filter: blur(4px) saturate(1.05);
    pointer-events: none;
}

/* show overlay on hover/focus of the item */
.mosaic-item:hover .mosaic-overlay[b-z1immqv6hz],
.mosaic-item:focus .mosaic-overlay[b-z1immqv6hz],
.mosaic-item:focus-within .mosaic-overlay[b-z1immqv6hz] {
    opacity: 1;
    transform: translateY(0);
}

/* Make title and tags more prominent */
.mosaic-title[b-z1immqv6hz] {
    position: relative;
    z-index: 3;
    font-weight: 700;
    font-size: 1.05rem; /* slightly larger */
    line-height: 1.1;
    margin: 0;
    color: #fff;
    /* stronger shadow for readability across varied images */
    text-shadow: 0 3px 8px rgba(0,0,0,0.75);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.mosaic-tags[b-z1immqv6hz] {
    position: relative;
    z-index: 3;
    display: flex;
    gap: .4rem;
    flex-wrap: wrap;
    font-size: .85rem; /* slightly bigger for readability */
    opacity: 1;
}

.mosaic-tags .tag[b-z1immqv6hz] {
    font-size: .78rem;
    background: rgba(0,0,0,0.45); /* darker tag background for contrast */
    padding: .18rem .5rem;
    border-radius: .35rem;
    color: #fff;
    box-shadow: 0 2px 6px rgba(0,0,0,0.45);
}

/* Zoom backdrop & panel */
.mosaic-zoom-backdrop[b-z1immqv6hz] {
    position: fixed;
    inset: 0;
    z-index: 2500;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(0,0,0,0.75);
    padding: 2rem;
    backdrop-filter: blur(3px);
    outline: none;
}

.mosaic-zoom[b-z1immqv6hz] {
    position: relative;
    max-width: 95%;
    max-height: 95%;
    display:flex;
    align-items:center;
    gap: .5rem;
}

.mz-content[b-z1immqv6hz] {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    overflow: auto;
    padding: .25rem;
}

.mz-content img[b-z1immqv6hz] {
    max-width: 80vw;
    max-height: 80vh;
    width: auto;
    height: auto;
    display:block;
    border-radius: .35rem;
    box-shadow: 0 6px 20px rgba(0,0,0,0.6);
}

/* controls */
.mz-close[b-z1immqv6hz] {
    position: absolute;
    top: -.6rem;
    right: -.6rem;
    z-index: 5;
}
.mz-nav[b-z1immqv6hz] {
    background: rgba(255,255,255,0.06);
    color: #fff;
    border: 1px solid rgba(255,255,255,0.12);
    height: 2.6rem;
    width: 2.6rem;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    font-size: 1.25rem;
    border-radius: .35rem;
}

/* responsive adjustments */
@media (max-width: 1199px) {
    .mosaic-gallery[b-z1immqv6hz] { column-count: min(3, var(--columns)); }
    .mosaic-gallery.masonry[b-z1immqv6hz] { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 900px) {
    .mosaic-gallery[b-z1immqv6hz] { --columns: 2; }
    .mosaic-gallery.masonry[b-z1immqv6hz] { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px) {
    .mosaic-gallery[b-z1immqv6hz] { --columns: 1; }
    .mz-nav[b-z1immqv6hz] { height: 2.2rem; width: 2.2rem; font-size: 1rem; }
    .mosaic-gallery.masonry[b-z1immqv6hz] { grid-template-columns: repeat(1, 1fr); }
}
/* /Components/Shared/ProgrammeScheduler.razor.rz.scp.css */
.programme-scheduler[b-8huykzaegp] {
    width: 100%;
    --event-gap: 4px;
    --hour-width: 120px;
    --event-max-lines: 2;
    --event-icons-reserve: 1.6rem; /* space reserved for ticket/18+ icons (vertical stack) */
    /* pixels-per-minute (used for absolute positioning instead of %) */
    --px-per-minute: calc(var(--hour-width) / 60);
    /* indent at start and end of events so grid lines show through */
    --event-indent: 3px;
}

.scheduler-scrollbar-top[b-8huykzaegp] {
    height: 12px;
    scrollbar-width: thin;
}
    .scheduler-scrollbar-top div[b-8huykzaegp] {
        width: calc(var(--hour-width) * var(--hours, 1) + 180px);
        scrollbar-width: thin;
    }

.timeline-container[b-8huykzaegp] {
    scrollbar-width: thin;
    position: relative;
    overflow-x: auto; /* enable horizontal scrolling */
    -webkit-overflow-scrolling: touch; /* smooth iOS scroll */
    --fade-width: 48px;
    cursor: grab; /* drag-to-scroll affordance */
    user-select: auto;
    /* Fade only the right edge of the visible viewport */
    -webkit-mask-image: linear-gradient( to right, #000 0, #000 calc(100% - var(--fade-width)), rgba(0,0,0,0) 100% );
    mask-image: linear-gradient( to right, #000 0, #000 calc(100% - var(--fade-width)), rgba(0,0,0,0) 100% );
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
}

    /* While dragging: prevent text selection and show grabbing cursor */
    .timeline-container.is-dragging[b-8huykzaegp] {
        cursor: grabbing;
        user-select: none;
    }

/* Ensure the content itself is not masked (fixes blank area when scrolling) */
.timeline-grid[b-8huykzaegp] {
    -webkit-mask-image: none !important;
    mask-image: none !important;
}

.timeline-grid[b-8huykzaegp] {
    display: grid;
    /* Make the first column shrink on small screens */
    grid-template-columns: 180px 1fr;
    grid-template-rows: 44px;
    grid-auto-rows: minmax(80px, auto);
    row-gap: 0.2rem;
    align-items: stretch;
}

.header-cell[b-8huykzaegp] {
    font-weight: 600;
    color: var(--bs-emphasis-color);
}

/* Keep absolute positioning for time header legend button (if used there) */
.scheduler-key-btn[b-8huykzaegp] {
    position: absolute;
    top: .25rem;
    right: .25rem;
    z-index: 2;
    padding: .15rem .35rem;
}

/* But when the button is inside the left room header cell, keep it inline-left */
.room-header.header-cell .scheduler-key-btn[b-8huykzaegp] {
    position: static;
}

/* Time header container */
.time-header[b-8huykzaegp] {
    border: 1px solid var(--bs-border-color);
    border-top-right-radius: var(--bs-border-radius);
    border-bottom-right-radius: var(--bs-border-radius);
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    position: relative;
}

    /* Width driver for the entire scrollable timeline column */
    .time-header .time-content[b-8huykzaegp] {
        width: calc(var(--hour-width) * var(--hours, 1));
    }

/* Legend button in header (top-right) */
.scheduler-key-btn[b-8huykzaegp] {
    position: absolute;
    top: .25rem;
    right: .25rem;
    z-index: 2;
    padding: .15rem .35rem;
}

.time-scale[b-8huykzaegp] {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: var(--hour-width);
    column-gap: 0;
    align-items: center;
    text-align: center;
    color: var(--bs-secondary-color);
    font-size: .9rem;
    height: 100%;
}

/* Remove borders in header ticks */
.time-header .time-cell[b-8huykzaegp] {
    border-left: 0;
}

/* Room header: sticky left column box with left-only rounded corners */
.room-header[b-8huykzaegp] {
    position: sticky;
    left: 0;
    z-index: 10;
    padding: .5rem;
    height: 100%;
    align-self: start;
    background-color: var(--bs-body-bg) !important;
    border: 1px solid var(--bs-border-color);
    border-top-left-radius: var(--bs-border-radius);
    border-bottom-left-radius: var(--bs-border-radius);
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

    .room-header.header-cell[b-8huykzaegp] {
        z-index: 11; /* keep top-left header above */
    }

    /* Vertically center text inside the room header box */
    .room-header .template-wrap[b-8huykzaegp] {
        height: 100%;
        display: flex;
        flex-direction: column;
        justify-content: center; /* vertical centering */
        align-items: flex-start; /* keep horizontal left alignment */
    }

    .room-header .fw-light[b-8huykzaegp] {
        color: var(--bs-secondary-color);
        max-width: 100%;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

/* Prevent room header text from expanding the row height */
.programme-scheduler .room-header[b-8huykzaegp] {
    overflow: hidden;
}

    /* Allow inner text to shrink and ellipsize inside grid/flex containers */
    .programme-scheduler .room-header .template-wrap[b-8huykzaegp] {
        display: flex;
        flex-direction: column;
        gap: 0.125rem;
        min-width: 0; /* critical for text-overflow inside grid/flex */
    }

        /* Truncate both the room name and hotel name to a single line each */
        .programme-scheduler .room-header .template-wrap .lead[b-8huykzaegp],
        .programme-scheduler .room-header .template-wrap .fw-light[b-8huykzaegp] {
            display: block;
            max-width: 100%;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
        }

/* Time cells */
.time-cell[b-8huykzaegp] {
    position: relative;
    border-left: 1px solid var(--bs-border-color);
    padding-left: 5px;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: start;
}

/* Tracks (rows) */
.room-track[b-8huykzaegp] {
    position: relative;
    height: 80px;
    overflow: visible;
    border-top-right-radius: var(--bs-border-radius);
    border-bottom-right-radius: var(--bs-border-radius);
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    border: 1px solid var(--bs-border-color);
    background-color: var(--bs-body-bg);
}

/* Hour columns inside each track (alternating columns only) */
.track-bg[b-8huykzaegp] {
    position: absolute;
    inset: 0;
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: var(--hour-width);
    width: calc(var(--hour-width) * var(--hours, 1)); /* absolute width for the hour grid */
}

.track-cell[b-8huykzaegp] {
    position: relative;
    border-left: 1px dashed var(--bs-border-color-translucent);
}

    .track-cell:first-child[b-8huykzaegp] {
        border-left: 0;
    }

    .track-cell:nth-child(even)[b-8huykzaegp] {
        background-color: var(--bs-tertiary-bg);
    }

    .track-cell[b-8huykzaegp]::after {
        content: "";
        position: absolute;
        top: 0;
        bottom: 0;
        left: 50%;
        border-left: 1px dotted var(--bs-border-color-translucent);
        opacity: .6;
        pointer-events: none;
    }

/* Events */
.event[b-8huykzaegp] {
    position: absolute;
    top: .25rem;
    bottom: .25rem;
    /* Absolute pixel positioning via minutes -> px,
       with 3px indent at both start and end so lines show through */
    left: calc(var(--start-min, 0) * var(--px-per-minute) + var(--event-indent, 3px));
    width: max(0px, calc(var(--dur-min, 0) * var(--px-per-minute) - (var(--event-indent, 3px) * 2)));
    border-radius: var(--bs-border-radius);
    padding: .25rem .5rem;
    display: flex;
    align-items: center;
    overflow: visible;
    box-shadow: var(--bs-box-shadow-sm);
    cursor: pointer;
}

    .event .event-time[b-8huykzaegp] {
        position: absolute;
        top: 4px;
        right: 4px;
        font-size: 0.7rem;
        opacity: 0.8;
        background-color: rgba(0, 0, 0, 0.1);
        padding: 1px 4px;
        border-radius: 3px;
    }


/* Diagonal stripe overlay for hidden events (scheduler tiles) */
.room-track .event.is-hidden[b-8huykzaegp] {
    position: absolute; /* already absolute, keep for clarity */
}

    .room-track .event.is-hidden[b-8huykzaegp]::after {
        content: "";
        position: absolute;
        inset: 0;
        pointer-events: none;
        border-radius: inherit;
        background: repeating-linear-gradient( 45deg, rgba(0, 0, 0, 0.18) 0px, rgba(0, 0, 0, 0.18) 8px, rgba(0, 0, 0, 0.0) 8px, rgba(0, 0, 0, 0.0) 16px );
    }

/* Multi-line clamped title with ellipses */
.event .subject[b-8huykzaegp] {
    flex: 1 1 auto;
    min-width: 0;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: var(--event-max-lines, 2);
    line-clamp: var(--event-max-lines, 2);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: normal;
    overflow-wrap: anywhere;
}

/* Agenda view */
.agenda-view[b-8huykzaegp] {
    display: grid;
    gap: .75rem;
}

.agenda-item[b-8huykzaegp] {
    border-radius: var(--bs-border-radius);
    padding: .5rem .75rem;
    box-shadow: var(--bs-box-shadow-sm);
    cursor: pointer;
}

/* Bottom-right icons overlay (vertical stack) */
.event .event-icons[b-8huykzaegp] {
    position: absolute;
    right: var(--event-gap);
    bottom: var(--event-gap);
    display: inline-flex;
    flex-direction: column;
    align-items: flex-end;
    gap: .25rem;
    font-size: .95rem;
    color: currentColor;
    pointer-events: none;
    opacity: .95;
}

.event.has-icons .subject[b-8huykzaegp] {
    padding-right: var(--event-icons-reserve, 1.6rem);
}

.event .event-icons .badge-18[b-8huykzaegp] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: .65rem;
    line-height: 1;
    padding: .1rem .25rem;
    border-radius: 999px;
    border: 1px solid currentColor;
    color: currentColor;
    background: color-mix(in srgb, currentColor 12%, transparent);
}

/* Agenda description styles */
.agenda-desc[b-8huykzaegp] {
    margin-top: .25rem;
    line-height: 1.35;
    white-space: normal; /* allow wrapping */
    overflow-wrap: anywhere; /* avoid overflow on long words/URLs */
}

    .agenda-desc p[b-8huykzaegp] {
        margin: 0 0 .5rem 0;
    }

    .agenda-desc ul[b-8huykzaegp],
    .agenda-desc ol[b-8huykzaegp] {
        margin: 0 0 .5rem 1.25rem;
        padding-left: 1.25rem;
    }

    .agenda-desc a[b-8huykzaegp] {
        color: inherit;
        text-decoration: underline;
    }

/* Mobile tweaks */
@media (max-width: 576px) {
    .timeline-container[b-8huykzaegp] {
        --fade-width: 16px; /* smaller fade on mobile */
    }

    .programme-scheduler[b-8huykzaegp] {
        --hour-width: 96px; /* tighter hour columns, less horizontal scroll needed */
        --event-max-lines: 3; /* allow more wrapping in small space */
    }

    .timeline-grid[b-8huykzaegp] {
        grid-template-columns: minmax(120px, 140px) 1fr; /* narrower sticky first column */
        grid-template-rows: 40px;
    }

    .room-header[b-8huykzaegp] {
        padding: .4rem;
    }

    .time-scale[b-8huykzaegp] {
        font-size: .8rem;
    }
    /* Ensure the info button stays left within the first column on mobile */
    .room-header.header-cell .scheduler-key-btn[b-8huykzaegp] {
        position: static;
    }
}

/* Overlay member picker inside the time header (>= sm) */
.member-picker-overlay[b-8huykzaegp] {
    position: absolute;
    top: .25rem;
    right: .25rem;
    z-index: 3;
    display: flex;
    align-items: center;
    gap: .5rem;
    padding: .25rem .5rem;
    background: var(--bs-body-bg);
    border: 1px solid var(--bs-border-color);
    border-radius: var(--bs-border-radius);
    box-shadow: var(--bs-box-shadow-sm);
}

/* Inline picker shown only on extra small screens */
.member-picker-inline select.form-select[b-8huykzaegp] {
    width: 100%;
}

/* Room header clickable styles */
.room-header:not(.header-cell)[b-8huykzaegp] {
    cursor: pointer;
    transition: background-color 0.15s ease;
}

    .room-header:not(.header-cell):hover[b-8huykzaegp] {
        background-color: var(--bs-tertiary-bg) !important;
    }
/* ---- added: cell & line shimmer styles for the loading placeholder --------------------------------- */
/* Reusable shimmer base */
.programme-scheduler--blank .cell-shimmer[b-8huykzaegp],
.programme-scheduler--blank .shimmer-line[b-8huykzaegp] {
    --shimmer-base: var(--bs-tertiary-bg, #e9edf2);
    position: relative;
    background: linear-gradient(
        90deg,
        rgba(255,255,255,0.04) 0%,
        rgba(255,255,255,0.14) 50%,
        rgba(255,255,255,0.04) 100%
    ), var(--shimmer-base);
    background-size: 200% 100%;
    background-repeat: no-repeat;
    border-radius: 0.25rem;
    overflow: hidden;
    animation: programme-cell-shimmer-b-8huykzaegp 1.25s linear infinite;
}

/* Title/sub lines in the left column */
.programme-scheduler--blank .shimmer-line[b-8huykzaegp] {
    display: block;
    height: 10px;
    margin: 6px 0;
    width: 100%;
    opacity: 0.95;
}
.programme-scheduler--blank .shimmer-line.shimmer-line-title[b-8huykzaegp] { height: 14px; width: 70%; }
.programme-scheduler--blank .shimmer-line.shimmer-line-sub[b-8huykzaegp]   { height: 10px; width: 45%; opacity: 0.9; }

/* Per-cell shimmer inside each hour cell of the blank view */
.programme-scheduler--blank .track-cell[b-8huykzaegp] {
    padding: 8px;
}
.programme-scheduler--blank .track-cell .cell-shimmer[b-8huykzaegp] {
    height: calc(100% - 8px);
    width: calc(100% - 8px);
    margin: 4px;
    border-radius: 6px;
    box-shadow: none;
}

/* Header time cells shimmer */
.programme-scheduler--blank .time-cell[b-8huykzaegp] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 6px;
}
.programme-scheduler--blank .time-cell .cell-shimmer[b-8huykzaegp] {
    height: 14px;
    width: 60px;
    border-radius: 6px;
}

/* Slightly darker variant for room-header placeholder area so it visually matches the real header */
.programme-scheduler--blank .room-header[b-8huykzaegp] {
    background: linear-gradient(180deg, var(--bs-body-bg), var(--bs-body-bg));
}

/* Keyframes for the cell shimmer (horizontal sweep) */
@keyframes programme-cell-shimmer-b-8huykzaegp {
  0%   { background-position: 200% 0; }
  100% { background-position: -200% 0; }
}

/* Small screens: reduce shimmer sizes so it stays visually consistent */
@media (max-width: 576px) {
    .programme-scheduler--blank .shimmer-line.shimmer-line-title[b-8huykzaegp] { width: 60%; }
    .programme-scheduler--blank .time-cell .cell-shimmer[b-8huykzaegp] { width: 44px; height: 12px; }
    .programme-scheduler--blank .track-cell[b-8huykzaegp] { padding: 6px; }
    .programme-scheduler--blank .track-cell .cell-shimmer[b-8huykzaegp] { margin: 3px; border-radius: 5px; }
}

.btn.btn-sm.btn-link[b-8huykzaegp] {
    width: 24px;
    height: 24px;
    padding: 5px;
}

.volunteer-controls[b-8huykzaegp] {
    display: flex;
    gap: .25rem;
    align-items: center;
}

.volunteer-menu-wrapper[b-8huykzaegp] {
    position: relative;
}

.volunteer-menu[b-8huykzaegp] {
    position: absolute;
    top: calc(100% + 4px);
    right: 0;
    min-width: 160px;
    padding: .25rem 0;
    background: var(--bs-body-bg);
    border: 1px solid var(--bs-border-color);
    border-radius: var(--bs-border-radius);
    box-shadow: var(--bs-box-shadow);
    z-index: 60;
}

.volunteer-menu .dropdown-item[b-8huykzaegp] {
    width: 100%;
    padding: .25rem .75rem;
    text-align: left;
    background: transparent;
    border: none;
}

.volunteer-menu .dropdown-item:hover[b-8huykzaegp] {
    background: var(--bs-tertiary-bg);
}

.text-only .btn.btn-sm[b-8huykzaegp] {
    color: var(--bs-emphasis-color);
    border-color: var(--bs-emphasis-color);
    background-color: transparent;
}

.text-only .event[b-8huykzaegp],
.text-only .agenda-item[b-8huykzaegp] {
    background-color: var(--bs-body-color) !important;
    color: var(--bs-emphasis-color) !important;
    box-shadow: none;
    border: 1px solid var(--bs-border-color);
}

    .text-only .agenda-item .subject[b-8huykzaegp] {
        color: var(--bs-body-bg) !important;
    }

    .text-only .event .btn[b-8huykzaegp],
    .text-only .agenda-item .btn[b-8huykzaegp] {
        background-color: transparent !important;
        color: var(--bs-body-bg) !important;
        border: 1px solid var(--bs-border-color);
    }
/* /Components/Shared/SimpleMultiSelect.razor.rz.scp.css */
/* Chevron now provided by .form-control.with-chevron (see app.css).
   Keep file for component-scoped overrides if needed. */

.simple-multiselect .chevron-icon[b-j3he60wvoj] {
    display: inline-block;
    width: 16px;
    height: 12px;
    color: var(--bs-form-control-color, var(--bs-body-color)); /* theme-aware */
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='16' height='12' viewBox='0 0 16 12'%3e%3cpath fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M2 3.5L8 9.5L14 3.5'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 16px 12px;
    cursor: pointer;
    user-select: none;
}

/* Disable chevron when the input is disabled */
.simple-multiselect .form-control:disabled ~ .chevron-icon[b-j3he60wvoj] {
    color: var(--bs-secondary-color);
    opacity: .65;
    cursor: default;
    pointer-events: none;
}

/* Ensure dropdown menu has a background and border in all themes */
.simple-multiselect .dropdown-menu[b-j3he60wvoj] {
    background-color: var(--bs-dropdown-bg, var(--bs-body-bg));
    color: var(--bs-dropdown-color, var(--bs-body-color));
    border: var(--bs-dropdown-border-width, var(--bs-border-width)) var(--bs-border-style, solid) var(--bs-dropdown-border-color, var(--bs-border-color));
    border-radius: var(--bs-dropdown-border-radius, .375rem);
    box-shadow: var(--bs-dropdown-box-shadow, 0 .5rem 1rem rgba(0,0,0,.15));
}
/* /Components/Shared/Toast.razor.rz.scp.css */

.papers[b-v1f0ydftg7], .papers[b-v1f0ydftg7]:before, .papers[b-v1f0ydftg7]:after {
    background-color: #fff;
    border: 1px solid #ccc;
    box-shadow: inset 0 0 30px rgba(0,0,0,0.1), 1px 1px 3px rgba(0,0,0,0.2);
}

.papers[b-v1f0ydftg7] {
    position: relative;
    padding: 1em;
    display: flex;
    flex-direction: column;
    filter: url(#wavy2);
    /* v2.2 : Noise added for a vellum paper effect */
}

    .papers[b-v1f0ydftg7]:before, .papers[b-v1f0ydftg7]:after {
        content: "";
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        -webkit-transform: rotateZ(2.5deg);
        -o-transform: rotate(2.5deg);
        transform: rotateZ(2.5deg);
        z-index: -1;
    }

    .papers[b-v1f0ydftg7]:after {
        -webkit-transform: rotateZ(-2.5deg);
        -o-transform: rotate(-2.5deg);
        transform: rotateZ(-2.5deg);
    }

    .papers h3[b-v1f0ydftg7] {
        font-size: 1.8em;
        font-weight: bolder;
        text-align: center;
        line-height: 1.3em;
        padding: 0.2em 0;
        margin: 0;
        border-top: 1px solid #ddd;
        border-bottom: 2px solid #ddd;
        transform: rotateZ(-2.5deg);
        color: var(--mid-red);
    }

    .papers p[b-v1f0ydftg7] {
        text-align: left;
        margin: 1.5em 0;
    }

.stain[b-v1f0ydftg7] {
    position: absolute;
    width: 100px;
    height: 100px;
    background: radial-gradient(circle, rgba(139, 69, 19, 0.5) 0%, rgba(139, 69, 19, 0) 70%);
    top: 70%;
    left: 80%;
    transform: translate(-50%, -50%) rotate(-15deg);
    opacity: 0.8;
    pointer-events: none;
}


.text-only.papers[b-v1f0ydftg7],
.text-only.papers[b-v1f0ydftg7]:before,
.text-only.papers[b-v1f0ydftg7]:after {
    background-color: var(--bs-body-bg);
    box-shadow: none;
    transform: none;
    border: 1px solid var(--bs-body-color);
    border-radius: 5px;
    padding: 1em;
}

.text-only .stain[b-v1f0ydftg7],
.text-only img[b-v1f0ydftg7] {
    display: none;
}


.text-only.papers p[b-v1f0ydftg7],
.text-only.papers h2[b-v1f0ydftg7] {
    border-top: none;
    border-bottom: none;
}


/* /Components/Shared/Wizard.razor.rz.scp.css */
.wizard[b-nfdmopc01y] { }
.wizard-body[b-nfdmopc01y] { min-height: 8rem; }
.wizard-footer .btn[b-nfdmopc01y] { min-width: 6rem; }

.stepper[b-nfdmopc01y] {
    gap: .5rem;
}

.step[b-nfdmopc01y] {
    min-width: 80px;
    max-width: 140px;
    position: relative;
    z-index: 2; /* keep steps above the connector line */
}

.step-circle[b-nfdmopc01y] {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 2px solid var(--bs-secondary);
    background-color: var(--bs-body-bg);
    color: var(--bs-body-color);
    cursor: pointer;
    transition: background-color .15s ease, border-color .15s ease, color .15s ease, box-shadow .15s ease;
    z-index: 3;
    position: relative;
}

.step-circle .step-number[b-nfdmopc01y] {
    font-weight: 600;
}

    .step-circle.pending[b-nfdmopc01y] {
        background-color: var(--red);
        color: var(--bs-body-color);
        color: #fff;
    }

    .step-circle.active[b-nfdmopc01y] {
        background-color: var(--gold);
        color: #fff;
        border-color: var(--dark-gold);
        box-shadow: 0 0 0 4px rgba(var(--bs-body-color-rgb, 13,110,253), 1) !important;
    }

.step-circle.completed[b-nfdmopc01y] {
    background-color: var(--dark-gold);
    color: var(--white);
    border-color: var(--gold);
}

/* Connector: base track and completed state via pseudo-element.
   It stretches between steps and intentionally extends under the circle
   (negative left/right offsets) so the line visually intersects the circles. */
.connector[b-nfdmopc01y] {
    flex: 1 1 auto;
    min-width: 24px;
    margin: 0 -.5rem;
    position: relative;
    align-self: center;
}

/* base track */
.connector[b-nfdmopc01y]::before {
    content: "";
    position: absolute;
    /* extend left/right half the circle's width (44px / 2 = 22px)
       so the line runs beneath the circles and appears continuous */
    left: -22px;
    right: -22px;
    margin-top:-10px;
    top: 50%;
    transform: translateY(-50%);
    height: 2px;
    background: var(--bs-secondary);
    border-radius: 1px;
    z-index: 1;
}

/* completed connector uses primary color */
.connector.completed[b-nfdmopc01y]::before {
    background: var(--bs-primary);
}

/* Step label styling */
.step-label[b-nfdmopc01y] {
    max-width: 110px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: 1rem;
}

/* Text-only support: if a parent dialog/container uses the global .text-only class
   remove colored backgrounds and use current text color instead. Use :global()
   so the selector matches an external ancestor when CSS isolation is applied. */
.text-only .wizard .step-circle[b-nfdmopc01y],
.text-only .wizard .step-circle.pending[b-nfdmopc01y] {
    background-color: transparent !important;
    color: inherit !important;
    border-color: currentColor !important;
    box-shadow: none !important;
}

.text-only .wizard .step-circle.active[b-nfdmopc01y] {
    background-color: var(--bs-body-color) !important;
    color: var(--bs-body-bg) !important;
    border-color: currentColor !important;
    box-shadow: 0 0 0 4px rgba(var(--bs-body-color-rgb, 13,110,253), 1) !important;
}
.text-only .wizard .step-circle.completed[b-nfdmopc01y] {
    background-color: var(--bs-body-color) !important;
    color: var(--bs-body-bg) !important;
    border-color: currentColor !important;
    box-shadow: none !important;
}

.text-only .wizard .step-circle .step-number[b-nfdmopc01y],
.text-only .wizard .step-circle i[b-nfdmopc01y] {
    color: inherit !important;
}

/* In text-only mode connectors should not use theme colors - use currentColor at reduced opacity */
.text-only .wizard .connector[b-nfdmopc01y]::before {
    background: currentColor !important;
    opacity: 0.25;
}

/* Responsive: compress on small screens */
@media (max-width: 576px) {
    .step[b-nfdmopc01y] {
        min-width: 56px;
        max-width: 80px;
    }

    .step-label[b-nfdmopc01y] {
        display: none;
    }

    .connector[b-nfdmopc01y] {
        margin: 0 .25rem;
        min-width: 12px;
    }

    /* adjust the overlap for smaller circles if needed */
    .step-circle[b-nfdmopc01y] {
        width: 36px;
        height: 36px;
    }

    .connector[b-nfdmopc01y]::before {
        left: -18px; /* half of 36px */
        right: -18px;
    }
}

/* keep existing styles, only add non-interactive helper */
.step-circle.non-interactive[b-nfdmopc01y] {
    cursor: default;
    pointer-events: none; /* prevent clicks when navigation disabled */
    opacity: 1; /* ensure visual stays same; adjust if you want a faded appearance */
}
/* /Layout/MainLayout.razor.rz.scp.css */
.page[b-y58r1b9x6b] {
    position: relative;
    display: flex;
    flex-direction: column;
}

main[b-y58r1b9x6b] {
    flex: 1;
}

/* Ensure Blazored toasts render above Bootstrap modals */
[b-y58r1b9x6b] .blazored-toast-container {
    z-index: 2000;
}

.sidebar[b-y58r1b9x6b] {
    background-image: linear-gradient(180deg, rgb(5, 39, 103) 0%, #3a0647 70%);
}

@media (min-width: 641px) {
    .page[b-y58r1b9x6b] {
        flex-direction: row;
    }

    .sidebar[b-y58r1b9x6b] {
        width: 250px;
        height: 100vh;
        position: sticky;
        top: 0;
    }

    article[b-y58r1b9x6b] {
        padding-left: 2rem !important;
        padding-right: 1.5rem !important;
    }
}

    .theme-chooser fieldset[b-y58r1b9x6b] {
    padding-bottom: 20px;
    padding-right: 18px;
    padding-left: 26px;
    margin-bottom:20px;
}

.text-only .btn-group-vertical[b-y58r1b9x6b] > .btn-check:checked + .btn {
    background-color: var(--bs-body-color) !important;
    border: 1px solid var(--bs-body-color) !important;
    color: var(--bs-body-bg) !important;
}

.text-only .btn-group-vertical .btn[b-y58r1b9x6b] {
    background-color: var(--bs-body-bg) !important;
    border: 1px solid var(--bs-body-color) !important;
    color: var(--bs-body-color) !important;
}
/* /Sidepanel/Sidepanel.razor.rz.scp.css */

.text-only.offcanvas.bg-primary-subtle[b-b26oazo4si] {
    background-color: var(--bs-body-bg) !important;
    border: solid 1px;
}

.text-only .offcanvas-header[b-b26oazo4si] {
    background-color: var(--bs-body-bg) !important;
    
    border-bottom: var(--bs-card-border-width) solid var(--bs-card-border-color);
}
    .text-only .offcanvas-header .offcanvas-title[b-b26oazo4si] {
        color: var(--bs-body-color);
    }
