/* /Components/BookingDetailPanel.razor.rz.scp.css */
.panel-backdrop[b-bsvoe493q7] {
    background: rgba(37, 42, 34, 0.38);
    inset: 0;
    position: fixed;
    z-index: 40;
}

.detail-panel[b-bsvoe493q7] {
    background: #fbfcf9;
    border-left: 1px solid #dfe3d9;
    box-shadow: -18px 0 55px rgba(37, 43, 32, 0.18);
    display: grid;
    grid-template-rows: auto minmax(0, 1fr) auto;
    height: 100vh;
    height: 100dvh;
    position: fixed;
    right: 0;
    top: 0;
    width: min(620px, 56vw);
    z-index: 50;
}

.detail-panel > header[b-bsvoe493q7] {
    align-items: center;
    background: #fff;
    border-bottom: 1px solid #e2e6dc;
    display: flex;
    justify-content: space-between;
    padding: 1.35rem 1.75rem;
}

header p[b-bsvoe493q7] {
    color: #4f922e;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    margin: 0 0 0.2rem;
    text-transform: uppercase;
}

header h2[b-bsvoe493q7] {
    font-size: 1.55rem;
    letter-spacing: -0.035em;
    margin: 0;
}

.close-button[b-bsvoe493q7] {
    align-items: center;
    background: #f1f3ed;
    border: 0;
    border-radius: 50%;
    color: #4d5349;
    cursor: pointer;
    display: flex;
    font-size: 1.65rem;
    height: 2.6rem;
    justify-content: center;
    width: 2.6rem;
}

.detail-body[b-bsvoe493q7] {
    min-height: 0;
    overflow-y: auto;
    padding: 1.5rem 1.75rem;
}

.status[b-bsvoe493q7] {
    border-radius: 999px;
    display: inline-block;
    font-size: 0.75rem;
    font-weight: 800;
    padding: 0.3rem 0.65rem;
}

.status.confirmed[b-bsvoe493q7] {
    background: #e5f5db;
    color: #2f6e1b;
}

.status.option[b-bsvoe493q7] {
    background: #fff5bc;
    color: #665800;
}

.series-status[b-bsvoe493q7] {
    color: #4f5e47;
    display: inline-block;
    font-size: 0.78rem;
    font-weight: 750;
    margin-left: 0.55rem;
}

.series-status span[b-bsvoe493q7] {
    color: #7a6b34;
}

section[b-bsvoe493q7] {
    border-bottom: 1px solid #e2e6dc;
    padding: 1.5rem 0;
}

section:last-child[b-bsvoe493q7] {
    border-bottom: 0;
}

dl[b-bsvoe493q7] {
    display: grid;
    gap: 0;
    margin: 0;
}

dl div[b-bsvoe493q7] {
    align-items: baseline;
    border-bottom: 1px solid #e7eae3;
    display: grid;
    gap: 1rem;
    grid-template-columns: minmax(9rem, 0.8fr) minmax(0, 1.7fr);
    padding: 0.7rem 0;
}

dt[b-bsvoe493q7] {
    color: #747a70;
    font-size: 0.74rem;
    font-weight: 750;
}

dd[b-bsvoe493q7] {
    color: #30362d;
    font-size: 0.94rem;
    line-height: 1.35;
    margin: 0;
}

.primary-details dd[b-bsvoe493q7] {
    font-size: 1rem;
    font-weight: 700;
}

.confirmation[b-bsvoe493q7] {
    background: #fff9d9;
    border: 1px solid #eadb82;
    border-radius: 0.65rem;
    display: grid;
    font-size: 0.86rem;
    gap: 0.35rem;
    margin-top: 1.25rem;
    padding: 0.85rem 0.95rem;
}

.confirmation span[b-bsvoe493q7] {
    color: #666043;
}

.confirmation .action-error[b-bsvoe493q7] {
    color: #a52f23;
    font-weight: 700;
}

.confirmation.destructive[b-bsvoe493q7] {
    background: #fff1ee;
    border-color: #e4aaa1;
}

.confirmation label[b-bsvoe493q7] {
    display: grid;
    font-size: 0.76rem;
    font-weight: 750;
    gap: 0.3rem;
    margin-top: 0.4rem;
}

.confirmation textarea[b-bsvoe493q7] {
    border: 1px solid #d5dbd0;
    border-radius: 0.55rem;
    font: inherit;
    min-height: 5rem;
    padding: 0.6rem 0.7rem;
    resize: vertical;
}

.series-choice[b-bsvoe493q7] {
    display: grid;
    gap: 0.45rem;
}

@media (max-width: 480px) {
    dl div[b-bsvoe493q7] {
        gap: 0.2rem;
        grid-template-columns: 1fr;
    }
}

footer[b-bsvoe493q7] {
    background: #fff;
    border-top: 1px solid #dfe3da;
    display: flex;
    flex-wrap: wrap;
    gap: 0.7rem;
    justify-content: flex-end;
    padding: 1rem 1.75rem calc(1rem + env(safe-area-inset-bottom));
}

footer button[b-bsvoe493q7] {
    background: #fff;
    border: 1px solid #d3d8ce;
    border-radius: 0.6rem;
    cursor: pointer;
    font: inherit;
    font-weight: 750;
    min-height: 2.8rem;
    padding: 0.6rem 1rem;
}

footer button:disabled[b-bsvoe493q7] {
    cursor: wait;
    opacity: 0.58;
}

footer .primary[b-bsvoe493q7] {
    background: #68b83f;
    border-color: #68b83f;
    color: #17370d;
}

footer .danger[b-bsvoe493q7] {
    background: #b83b2f;
    border-color: #b83b2f;
    color: #fff;
}

footer .danger-outline[b-bsvoe493q7] {
    border-color: #cf8278;
    color: #9d3025;
}

@media (max-width: 760px) {
    .detail-panel[b-bsvoe493q7] {
        width: 100%;
    }
}
/* /Components/BookingPanel.razor.rz.scp.css */
.panel-backdrop[b-zfijpr3k2r] {
    background: rgba(37, 42, 34, 0.38);
    inset: 0;
    position: fixed;
    z-index: 40;
}

.booking-panel[b-zfijpr3k2r] {
    background: #fbfcf9;
    border-left: 1px solid #dfe3d9;
    box-shadow: -18px 0 55px rgba(37, 43, 32, 0.18);
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
    height: 100vh;
    height: 100dvh;
    overflow: hidden;
    position: fixed;
    right: 0;
    top: 0;
    width: min(720px, 62vw);
    z-index: 50;
}

.booking-panel[data-panel-side="left"][b-zfijpr3k2r] {
    border-left: 0;
    border-right: 1px solid #dfe3d9;
    box-shadow: 18px 0 55px rgba(37, 43, 32, 0.18);
    left: 0;
    right: auto;
}

.booking-panel.is-dragging[b-zfijpr3k2r] {
    transition: none;
    user-select: none;
}

.panel-header[b-zfijpr3k2r] {
    align-items: center;
    background: #fff;
    border-bottom: 1px solid #e2e6dc;
    display: flex;
    justify-content: space-between;
    padding: 1.35rem 1.75rem;
    position: sticky;
    top: 0;
    z-index: 2;
    cursor: grab;
    touch-action: none;
}

.panel-header p[b-zfijpr3k2r] {
    color: #4f922e;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    margin: 0 0 0.2rem;
    text-transform: uppercase;
}

.panel-header h2[b-zfijpr3k2r] {
    font-size: 1.55rem;
    letter-spacing: -0.035em;
    margin: 0;
}

.close-button[b-zfijpr3k2r] {
    align-items: center;
    background: #f1f3ed;
    border: 0;
    border-radius: 50%;
    color: #4d5349;
    cursor: pointer;
    display: flex;
    font-size: 1.65rem;
    height: 2.6rem;
    justify-content: center;
    width: 2.6rem;
}

.panel-header:active[b-zfijpr3k2r] {
    cursor: grabbing;
}

.booking-form-container[b-zfijpr3k2r] {
    min-height: 0;
}

.booking-form-container[b-zfijpr3k2r]  .booking-form {
    display: grid;
    grid-template-rows: minmax(0, 1fr) auto;
    height: 100%;
    min-height: 0;
}

.panel-body[b-zfijpr3k2r] {
    min-height: 0;
    overflow-y: auto;
    padding: 0 1.75rem 1.25rem;
    scroll-padding-bottom: 1.25rem;
}

section[b-zfijpr3k2r] {
    border-bottom: 1px solid #e2e6dc;
    display: grid;
    gap: 1rem;
    grid-template-columns: 2.25rem 1fr;
    padding: 1.6rem 0;
}

section:last-of-type[b-zfijpr3k2r] {
    padding-bottom: 1.6rem;
}

.section-number[b-zfijpr3k2r] {
    align-items: center;
    background: #e9f8d7;
    border-radius: 50%;
    color: #34761f;
    display: flex;
    font-size: 0.82rem;
    font-weight: 850;
    height: 2.1rem;
    justify-content: center;
    width: 2.1rem;
}

.section-content[b-zfijpr3k2r] {
    min-width: 0;
}

h3[b-zfijpr3k2r] {
    font-size: 1.05rem;
    margin: 0 0 1rem;
}

label:not(.room-option):not(.status-option)[b-zfijpr3k2r] {
    display: grid;
    font-size: 0.76rem;
    font-weight: 750;
    gap: 0.3rem;
    margin-top: 0.8rem;
}

select[b-zfijpr3k2r],
input[b-zfijpr3k2r],
textarea[b-zfijpr3k2r] {
    background: #fff;
    border: 1px solid #d5dbd0;
    border-radius: 0.55rem;
    color: #343a31;
    font: inherit;
    min-height: 2.7rem;
    padding: 0.55rem 0.7rem;
    width: 100%;
}

section input[b-zfijpr3k2r],
section select[b-zfijpr3k2r],
section textarea[b-zfijpr3k2r],
section fieldset[b-zfijpr3k2r] {
    scroll-margin-bottom: 1.25rem;
}

select:focus[b-zfijpr3k2r],
input:focus[b-zfijpr3k2r],
textarea:focus[b-zfijpr3k2r] {
    border-color: #65aa43;
    box-shadow: 0 0 0 3px rgba(101, 170, 67, 0.16);
    outline: none;
}

.value-with-picker[b-zfijpr3k2r] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 2.7rem;
}

.all-day-option[b-zfijpr3k2r] {
    align-items: center;
    display: flex;
    gap: 0.55rem;
    margin: 0 0 0.75rem;
    width: fit-content;
}

.all-day-option input[b-zfijpr3k2r] {
    height: 1.1rem;
    margin: 0;
    min-height: auto;
    width: 1.1rem;
}

.all-day-option span[b-zfijpr3k2r] {
    font-weight: 800;
}

.value-with-picker > input:first-child[b-zfijpr3k2r] {
    border-radius: 0.55rem 0 0 0.55rem;
}

.value-with-picker .picker-button[b-zfijpr3k2r] {
    background-color: #eef5e7;
    border-left: 0;
    border-radius: 0 0.55rem 0.55rem 0;
    color: transparent;
    cursor: pointer;
    min-width: 2.7rem;
    padding: 0.55rem;
}

.picker-button[b-zfijpr3k2r]::-webkit-calendar-picker-indicator {
    cursor: pointer;
    height: 1.15rem;
    margin: auto;
    opacity: 0.82;
    width: 1.15rem;
}

.room-list[b-zfijpr3k2r] {
    display: grid;
    gap: 0.55rem;
}

.room-option[b-zfijpr3k2r] {
    align-items: center;
    background: #fff;
    border: 1px solid #dfe3da;
    border-radius: 0.65rem;
    cursor: pointer;
    display: grid;
    gap: 0.65rem;
    grid-template-columns: auto auto 1fr;
    padding: 0.7rem;
}

.room-option:hover[b-zfijpr3k2r] {
    border-color: #a8c994;
}

.room-option input[b-zfijpr3k2r] {
    height: 1.1rem;
    margin: 0;
    min-height: auto;
    padding: 0;
    width: 1.1rem;
}

.room-option i[b-zfijpr3k2r] {
    background: var(--room-color);
    border-radius: 0.3rem;
    height: 2rem;
    width: 0.35rem;
}

.room-option span[b-zfijpr3k2r] {
    display: grid;
}

.room-option small[b-zfijpr3k2r],
.field-note[b-zfijpr3k2r],
.occupancy-note[b-zfijpr3k2r] {
    color: #747a70;
    font-size: 0.76rem;
}

.resource-picker[b-zfijpr3k2r] {
    border-top: 1px solid #e4e8df;
    margin-top: 0.9rem;
    padding-top: 0.8rem;
}

.resource-picker-toggle[b-zfijpr3k2r] {
    align-items: center;
    background: #f4f7f0;
    border: 1px solid #dfe5d9;
    border-radius: 0.6rem;
    color: #343a31;
    display: flex;
    justify-content: space-between;
    min-height: 2.8rem;
    padding: 0.55rem 0.75rem;
    text-align: left;
    width: 100%;
}

.resource-picker-toggle:hover[b-zfijpr3k2r] {
    background: #edf4e8;
    border-color: #b8ceb0;
}

.resource-picker-toggle > span:first-child[b-zfijpr3k2r] {
    display: grid;
    gap: 0.08rem;
}

.resource-picker-toggle strong[b-zfijpr3k2r] {
    font-size: 0.88rem;
}

.resource-picker-toggle small[b-zfijpr3k2r] {
    color: #7b8177;
    font-size: 0.72rem;
    font-weight: 500;
}

.resource-picker-toggle > span:last-child[b-zfijpr3k2r] {
    color: #4d7d37;
    font-size: 1.2rem;
    font-weight: 800;
}

.resource-picker-content[b-zfijpr3k2r] {
    padding: 0.45rem 0.2rem 0;
}

.resource-list[b-zfijpr3k2r] {
    display: grid;
    gap: 0.4rem;
}

.resource-option[b-zfijpr3k2r] {
    align-items: center;
    border-bottom: 1px solid #edf0e9;
    display: grid;
    gap: 0.7rem;
    grid-template-columns: minmax(0, 1fr) 6rem;
    padding: 0.45rem 0;
}

.resource-option > label:first-child[b-zfijpr3k2r] {
    align-items: center;
    cursor: pointer;
    display: flex;
    gap: 0.55rem;
}

.resource-option input[type="checkbox"][b-zfijpr3k2r] {
    height: 1.1rem;
    margin: 0;
    min-height: auto;
    width: 1.1rem;
}

.resource-option label > span[b-zfijpr3k2r] {
    display: grid;
}

.resource-option small[b-zfijpr3k2r] {
    color: #747a70;
    font-size: 0.74rem;
}

.resource-quantity[b-zfijpr3k2r] {
    font-size: 0.7rem !important;
    gap: 0.15rem !important;
}

.resource-quantity input[b-zfijpr3k2r] {
    min-height: 2.25rem;
    padding: 0.35rem 0.5rem;
}

.resource-availability[b-zfijpr3k2r] {
    border-left: 0.25rem solid #d9a500;
    border-radius: 0.45rem;
    font-size: 0.76rem;
    font-weight: 700;
    margin: 0.5rem 0 0;
    padding: 0.5rem 0.7rem;
}

.resource-availability.warning[b-zfijpr3k2r] {
    background: #fff7d6;
    color: #695300;
}

.resource-availability.blocked[b-zfijpr3k2r],
.resource-availability.unavailable[b-zfijpr3k2r] {
    background: #fff0ed;
    border-left-color: #cf3f2f;
    color: #8a261b;
}

.resource-warning-acceptance[b-zfijpr3k2r] {
    align-items: center;
    background: #fffaf0;
    border: 1px solid #ead58a;
    border-radius: 0.5rem;
    display: flex !important;
    font-size: 0.76rem !important;
    gap: 0.55rem !important;
    margin-top: 0.45rem;
    padding: 0.55rem 0.65rem;
}

.resource-warning-acceptance input[b-zfijpr3k2r] {
    height: 1.1rem;
    margin: 0;
    min-height: auto;
    width: 1.1rem;
}

.field-grid[b-zfijpr3k2r] {
    display: grid;
    gap: 0.7rem;
}

.field-grid.three[b-zfijpr3k2r] {
    grid-template-columns: 1.3fr 1fr 1fr;
}

.field-grid.two[b-zfijpr3k2r] {
    grid-template-columns: 1fr 1fr;
}

.compact-fields[b-zfijpr3k2r] {
    margin-top: 0.35rem;
}

.occupancy-note[b-zfijpr3k2r] {
    background: #eef5e7;
    border-left: 0.25rem solid #7eb562;
    border-radius: 0.45rem;
    color: #45543f;
    font-weight: 650;
    margin: 0.8rem 0 0;
    padding: 0.55rem 0.7rem;
}

.availability-note[b-zfijpr3k2r] {
    background: #fff0ed;
    border-left: 0.25rem solid #cf3f2f;
    border-radius: 0.45rem;
    color: #8a261b;
    font-size: 0.76rem;
    font-weight: 700;
    margin: 0.5rem 0 0;
    padding: 0.5rem 0.7rem;
}

.capacity-warning[b-zfijpr3k2r] {
    background: #fff7d6;
    border-left: 4px solid #d9a500;
    border-radius: 0.4rem;
    color: #695300;
    font-size: 0.82rem;
    font-weight: 650;
    margin: 0.35rem 0 0.75rem;
    padding: 0.55rem 0.7rem;
}

.discard-warning[b-zfijpr3k2r] {
    background: #fff7d6;
    border: 1px solid #dfc866;
    border-radius: 0.55rem;
    display: grid;
    gap: 0.15rem;
    margin: 0 0 1rem;
    padding: 0.75rem 0.85rem;
}

.discard-warning span[b-zfijpr3k2r] {
    color: #665d35;
    font-size: 0.82rem;
}

.panel-footer .danger-outline[b-zfijpr3k2r] {
    border-color: #cf8278;
    color: #9d3025;
}

fieldset[b-zfijpr3k2r] {
    border: 0;
    display: flex;
    gap: 1rem;
    margin: 1rem 0 0;
    padding: 0;
}

legend[b-zfijpr3k2r] {
    font-size: 0.76rem;
    font-weight: 750;
    margin-bottom: 0.4rem;
}

.status-option[b-zfijpr3k2r] {
    align-items: center;
    display: flex;
    font-size: 0.86rem;
    gap: 0.4rem;
}

.status-option input[b-zfijpr3k2r] {
    height: 1.1rem;
    margin: 0;
    min-height: auto;
    padding: 0;
    width: 1.1rem;
}

.status-fields[b-zfijpr3k2r] {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    font-size: 0.78rem;
    font-weight: 750;
    gap: 0.75rem;
    margin-top: 1rem;
}

.status-fields > span[b-zfijpr3k2r] {
    font-weight: 800;
}

.panel-footer[b-zfijpr3k2r] {
    background: rgba(255, 255, 255, 0.97);
    border-top: 1px solid #dfe3da;
    bottom: 0;
    display: flex;
    gap: 0.7rem;
    justify-content: flex-end;
    padding: 1rem 1.75rem calc(1rem + env(safe-area-inset-bottom));
    position: relative;
    z-index: 3;
}

.panel-footer button[b-zfijpr3k2r],
.error-summary + button[b-zfijpr3k2r] {
    border: 1px solid #d3d8ce;
    border-radius: 0.6rem;
    cursor: pointer;
    font-weight: 750;
    min-height: 2.8rem;
    padding: 0.6rem 1rem;
}

.panel-footer .primary[b-zfijpr3k2r] {
    background: #68b83f;
    border-color: #68b83f;
    color: #17370d;
}

.panel-footer .secondary[b-zfijpr3k2r] {
    background: #fff;
}

.panel-footer button:disabled[b-zfijpr3k2r] {
    cursor: wait;
    opacity: 0.58;
}

.error-summary[b-zfijpr3k2r],
.panel-state.error[b-zfijpr3k2r] {
    background: #fff1ee;
    border: 1px solid #efcec7;
    border-radius: 0.65rem;
    color: #852b20;
    margin: 1rem 0 0;
    padding: 0.85rem 1rem;
}

.error-summary ul[b-zfijpr3k2r] {
    margin: 0.4rem 0 0;
    padding-left: 1.2rem;
}

.panel-state[b-zfijpr3k2r] {
    align-items: center;
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    justify-content: center;
    min-height: 20rem;
    padding: 2rem;
    text-align: center;
}

[b-zfijpr3k2r] .validation-message {
    color: #a62d21;
    font-size: 0.75rem;
}

.form-lock[b-zfijpr3k2r] {
    border: 0;
    display: contents;
    margin: 0;
    padding: 0;
}

.section-content label.recurring-option[b-zfijpr3k2r] {
    align-items: center;
    display: inline-flex;
    gap: 0.55rem;
    margin-top: 0.8rem;
    width: fit-content;
}

.recurring-option input[b-zfijpr3k2r] {
    height: 1.1rem;
    margin: 0;
    min-height: auto;
    padding: 0;
    width: 1.1rem;
}

.recurring-option span[b-zfijpr3k2r] {
    line-height: 1.1rem;
}

.recurrence-fields[b-zfijpr3k2r] {
    background: #f7f9f3;
    border: 1px solid #dfe6d8;
    border-radius: 0.75rem;
    display: grid;
    gap: 0.75rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 0.65rem;
    padding: 0.85rem;
}

.recurrence-fields .wide[b-zfijpr3k2r],
.weekday-options[b-zfijpr3k2r] {
    grid-column: 1 / -1;
}

.weekday-options[b-zfijpr3k2r] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
}

.recurrence-fields .weekday-options label[b-zfijpr3k2r] {
    align-items: center;
    display: flex;
    gap: 0.22rem;
    justify-content: flex-start;
    margin: 0;
    width: auto;
}

.weekday-options input[b-zfijpr3k2r] {
    height: 1.1rem;
    margin: 0;
    min-height: auto;
    padding: 0;
    width: 1.1rem;
}

.series-occurrences[b-zfijpr3k2r] {
    display: grid;
    gap: 0.35rem;
    max-height: 18rem;
    overflow-y: auto;
}

.series-occurrences > div[b-zfijpr3k2r] {
    align-items: center;
    border-left: 0.25rem solid #68b83f;
    display: grid;
    gap: 0.5rem;
    grid-template-columns: 7rem 1fr auto;
    padding: 0.45rem 0.65rem;
}

.series-occurrences > .conflict[b-zfijpr3k2r] {
    background: #fff1ee;
    border-left-color: #c34b3e;
    color: #852b20;
}

@media (max-width: 760px) {
    .booking-panel[b-zfijpr3k2r],
    .panel-footer[b-zfijpr3k2r] {
        width: 100vw;
    }

    .panel-header[b-zfijpr3k2r],
    form[b-zfijpr3k2r] {
        padding-left: 1rem;
        padding-right: 1rem;
    }

    .panel-footer[b-zfijpr3k2r] {
        padding: 0.75rem 1rem;
    }

    section[b-zfijpr3k2r] {
        grid-template-columns: 2rem 1fr;
    }

    .field-grid.three[b-zfijpr3k2r],
    .field-grid.two[b-zfijpr3k2r],
    .recurrence-fields[b-zfijpr3k2r] {
        grid-template-columns: 1fr;
    }

    .series-occurrences > div[b-zfijpr3k2r] {
        grid-template-columns: 1fr;
    }

    .booking-panel[data-panel-side][b-zfijpr3k2r] {
        left: 0;
        right: auto;
        transform: none !important;
    }

    .panel-header[b-zfijpr3k2r] {
        cursor: default;
        touch-action: auto;
    }
}
/* /Components/BookingSeriesImpactSummary.razor.rz.scp.css */
.series-impact[b-tv8n1d2wrb] {
    color: #555d50;
    display: grid;
    font-size: 0.77rem;
    gap: 0.15rem;
    margin-top: 0.25rem;
}

.series-impact strong[b-tv8n1d2wrb] {
    color: #30362d;
}
/* /Components/BookingSeriesScopeSelector.razor.rz.scp.css */
.series-choice[b-2ls8c8fjmg] {
    display: grid;
    gap: 0.45rem;
}

.series-scope-option[b-2ls8c8fjmg] {
    align-items: start;
    background: rgba(255, 255, 255, 0.7);
    border: 1px solid #dfe3d9;
    border-radius: 0.55rem;
    cursor: pointer;
    display: grid;
    gap: 0.55rem;
    grid-template-columns: auto 1fr;
    margin: 0;
    padding: 0.65rem 0.75rem;
}

.series-scope-option input[b-2ls8c8fjmg],
.preserve-exceptions input[b-2ls8c8fjmg] {
    height: 1.1rem;
    margin: 0.15rem 0 0;
    width: 1.1rem;
}

.series-scope-option span[b-2ls8c8fjmg] {
    display: grid;
    gap: 0.1rem;
}

.series-scope-option strong[b-2ls8c8fjmg] {
    color: #30362d;
    font-size: 0.86rem;
}

.series-scope-option small[b-2ls8c8fjmg] {
    color: #6c7368;
    font-size: 0.75rem;
    font-weight: 500;
}

.preserve-exceptions[b-2ls8c8fjmg] {
    align-items: center;
    display: flex;
    gap: 0.5rem;
    margin-top: 0.35rem;
}
/* /Components/DateTimeFields.razor.rz.scp.css */
.date-time-fields[b-cztd85x1sn] {
    display: grid;
    gap: 0.8rem;
    grid-template-columns: 1.35fr 1fr 1fr;
}

.date-time-fields.with-end-date[b-cztd85x1sn] {
    grid-template-columns: 1.35fr 1.35fr 1fr 1fr;
}

label[b-cztd85x1sn] {
    display: grid;
    font-size: 0.76rem;
    font-weight: 750;
    gap: 0.3rem;
    margin-top: 0.8rem;
}

label > span[b-cztd85x1sn] {
    display: block;
    font-weight: 800;
    margin-bottom: 0.45rem;
}

input[b-cztd85x1sn] {
    background: #fff;
    border: 1px solid #d5dbd0;
    border-radius: 0.55rem;
    color: #343a31;
    font: inherit;
    min-height: 2.7rem;
    padding: 0.55rem 0.7rem;
    scroll-margin-bottom: 1.25rem;
    width: 100%;
}

input:focus[b-cztd85x1sn] {
    border-color: #65aa43;
    box-shadow: 0 0 0 3px rgba(101, 170, 67, 0.16);
    outline: none;
}

.all-day-option[b-cztd85x1sn] {
    align-items: center;
    display: flex;
    gap: 0.55rem;
    margin: 0 0 0.75rem;
    width: fit-content;
}

.all-day-option input[b-cztd85x1sn] {
    height: 1.1rem;
    margin: 0;
    min-height: auto;
    width: 1.1rem;
}

.all-day-option span[b-cztd85x1sn] {
    font-weight: 800;
    margin: 0;
}

.value-with-picker[b-cztd85x1sn] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 2.7rem;
}

.value-with-picker > input:first-child[b-cztd85x1sn] {
    border-radius: 0.55rem 0 0 0.55rem;
}

.value-with-picker .picker-button[b-cztd85x1sn] {
    background-color: #eef5e7;
    border-left: 0;
    border-radius: 0 0.55rem 0.55rem 0;
    color: transparent;
    cursor: pointer;
    min-width: 2.7rem;
    padding: 0.55rem;
}

.picker-button[b-cztd85x1sn]::-webkit-calendar-picker-indicator {
    cursor: pointer;
    height: 1.15rem;
    margin: auto;
    opacity: 0.82;
    width: 1.15rem;
}

.field-note[b-cztd85x1sn] {
    color: #71786c;
    font-size: 0.78rem;
    margin: 0.35rem 0 0;
}

@media (max-width: 720px) {
    .date-time-fields[b-cztd85x1sn] {
        grid-template-columns: 1fr;
    }
}
/* /Components/RoomBlockPanel.razor.rz.scp.css */
.panel-backdrop[b-plr630gx8v] {
    background: rgba(37, 42, 34, 0.38);
    inset: 0;
    position: fixed;
    z-index: 40;
}

.block-panel[b-plr630gx8v] {
    background: #fbfcf9;
    box-shadow: -18px 0 55px rgba(37, 43, 32, 0.18);
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
    height: 100dvh;
    position: fixed;
    right: 0;
    top: 0;
    width: min(620px, 62vw);
    z-index: 50;
}

.block-panel > header[b-plr630gx8v] {
    align-items: center;
    background: #fff;
    border-bottom: 1px solid #e2e6dc;
    display: flex;
    justify-content: space-between;
    padding: 1.35rem 1.75rem;
}

header p[b-plr630gx8v] {
    color: #a2473d;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    margin: 0 0 0.2rem;
    text-transform: uppercase;
}

header h2[b-plr630gx8v] {
    font-size: 1.55rem;
    margin: 0;
}

.close-button[b-plr630gx8v] {
    background: #f1f3ed;
    border: 0;
    border-radius: 50%;
    cursor: pointer;
    font-size: 1.65rem;
    height: 2.6rem;
    width: 2.6rem;
}

form[b-plr630gx8v] {
    display: grid;
    grid-template-rows: minmax(0, 1fr) auto;
    min-height: 0;
}

.panel-body[b-plr630gx8v] {
    display: grid;
    gap: 1.4rem;
    overflow-y: auto;
    padding: 1.5rem 1.75rem;
}

fieldset[b-plr630gx8v] {
    border: 0;
    margin: 0;
    padding: 0;
}

legend[b-plr630gx8v],
label > span[b-plr630gx8v] {
    display: block;
    font-weight: 800;
    margin-bottom: 0.45rem;
}

.room-options[b-plr630gx8v] {
    display: grid;
    gap: 0.45rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.room-options label[b-plr630gx8v] {
    align-items: center;
    background: #fff;
    border: 1px solid #dfe4d8;
    border-radius: 0.55rem;
    display: flex;
    gap: 0.55rem;
    padding: 0.65rem 0.75rem;
}

.room-options label span[b-plr630gx8v] {
    margin: 0;
}

.date-time-grid[b-plr630gx8v] {
    display: grid;
    gap: 0.8rem;
    grid-template-columns: 1.35fr 1fr 1fr;
}

input[b-plr630gx8v],
textarea[b-plr630gx8v] {
    border: 1px solid #ccd3c5;
    border-radius: 0.55rem;
    font: inherit;
    padding: 0.7rem 0.75rem;
    width: 100%;
}

.value-with-picker[b-plr630gx8v] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 2.7rem;
}

.all-day-option[b-plr630gx8v] {
    align-items: center;
    display: flex;
    gap: 0.55rem;
    width: fit-content;
}

.all-day-option input[b-plr630gx8v] {
    height: 1.1rem;
    margin: 0;
    width: 1.1rem;
}

.all-day-option span[b-plr630gx8v] {
    font-weight: 800;
    margin: 0;
}

.value-with-picker > input:first-child[b-plr630gx8v] {
    border-radius: 0.55rem 0 0 0.55rem;
}

.value-with-picker .picker-button[b-plr630gx8v] {
    background-color: #eef5e7;
    border-left: 0;
    border-radius: 0 0.55rem 0.55rem 0;
    color: transparent;
    cursor: pointer;
    min-width: 2.7rem;
    padding: 0.55rem;
}

.picker-button[b-plr630gx8v]::-webkit-calendar-picker-indicator {
    cursor: pointer;
    height: 1.15rem;
    margin: auto;
    opacity: 0.82;
    width: 1.15rem;
}

.field-note[b-plr630gx8v] {
    color: #71786c;
    font-size: 0.78rem;
    margin: -0.9rem 0 0;
}

textarea[b-plr630gx8v] {
    min-height: 7rem;
    resize: vertical;
}

.error-summary[b-plr630gx8v] {
    background: #fff0ed;
    border-left: 4px solid #b85a50;
    border-radius: 0.45rem;
    padding: 0.8rem 1rem;
}

.error-summary ul[b-plr630gx8v] {
    margin: 0.35rem 0 0;
    padding-left: 1.2rem;
}

footer[b-plr630gx8v] {
    background: #fff;
    border-top: 1px solid #dfe3d9;
    display: flex;
    gap: 0.75rem;
    justify-content: flex-end;
    padding: 1rem 1.5rem;
}

footer button[b-plr630gx8v] {
    border-radius: 0.65rem;
    cursor: pointer;
    font-weight: 800;
    padding: 0.75rem 1.05rem;
}

.secondary[b-plr630gx8v] {
    background: #fff;
    border: 1px solid #ccd3c5;
}

.primary[b-plr630gx8v] {
    background: #65b93f;
    border: 1px solid #65b93f;
}

.danger[b-plr630gx8v] {
    background: #fff0ed;
    border: 1px solid #c56a60;
    color: #7a2f27;
    margin-right: auto;
}

.confirm-text[b-plr630gx8v] {
    align-self: center;
    color: #7a2f27;
    font-size: 0.82rem;
    font-weight: 800;
    margin-left: auto;
}

.panel-state[b-plr630gx8v] {
    padding: 2rem;
}

@media (max-width: 760px) {
    .block-panel[b-plr630gx8v] {
        width: 100vw;
    }

    .room-options[b-plr630gx8v],
    .date-time-grid[b-plr630gx8v] {
        grid-template-columns: 1fr;
    }
}
/* /Layout/MainLayout.razor.rz.scp.css */
.app-shell[b-u01xxq3qsb] {
    min-height: 100vh;
    background: #f7f8f4;
}

.app-header[b-u01xxq3qsb] {
    align-items: center;
    background: rgba(255, 255, 255, 0.96);
    border-bottom: 1px solid #e2e5db;
    display: flex;
    justify-content: space-between;
    min-height: 4.5rem;
    padding: 0 3rem;
    position: sticky;
    top: 0;
    z-index: 20;
}

.brand[b-u01xxq3qsb] {
    align-items: center;
    display: flex;
    gap: 0.65rem;
    text-decoration: none;
}

.brand img[b-u01xxq3qsb] {
    height: 3rem;
    object-fit: contain;
    object-position: left center;
    width: 3rem;
}

.brand span[b-u01xxq3qsb] {
    color: #12304a;
    font-size: 2rem;
    font-weight: 750;
    letter-spacing: -0.04em;
}

nav[b-u01xxq3qsb] {
    align-items: center;
    display: flex;
    gap: 0.5rem;
    overflow-x: auto;
}

nav[b-u01xxq3qsb]  a {
    border-radius: 0.65rem;
    color: #5b6057;
    font-weight: 650;
    padding: 0.65rem 1rem;
    text-decoration: none;
}

nav[b-u01xxq3qsb]  a:hover {
    background: #f0f3e9;
    color: #2c302a;
}

nav[b-u01xxq3qsb]  a.active {
    background: #e9f8d7;
    color: #32751c;
}

.app-content[b-u01xxq3qsb] {
    margin: 0 auto;
    max-width: 1600px;
    padding: 2rem 3rem 3rem;
}

@media (max-width: 700px) {
    .app-header[b-u01xxq3qsb] {
        padding: 0 1rem;
    }

    .brand img[b-u01xxq3qsb] {
        height: 2.4rem;
        width: 2.4rem;
    }

    .brand span[b-u01xxq3qsb] {
        font-size: 1.65rem;
    }

    nav[b-u01xxq3qsb]  a {
        padding: 0.55rem 0.65rem;
    }

    .app-content[b-u01xxq3qsb] {
        padding: 1.25rem 1rem 2rem;
    }
}
/* /Layout/NavMenu.razor.rz.scp.css */
.navbar-toggler[b-hvjwnfpqgw] {
    background-color: rgba(255, 255, 255, 0.1);
}

.top-row[b-hvjwnfpqgw] {
    min-height: 3.5rem;
    background-color: rgba(0,0,0,0.4);
}

.navbar-brand[b-hvjwnfpqgw] {
    font-size: 1.1rem;
}

.bi[b-hvjwnfpqgw] {
    display: inline-block;
    position: relative;
    width: 1.25rem;
    height: 1.25rem;
    margin-right: 0.75rem;
    top: -1px;
    background-size: cover;
}

.bi-house-door-fill-nav-menu[b-hvjwnfpqgw] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-house-door-fill' viewBox='0 0 16 16'%3E%3Cpath d='M6.5 14.5v-3.505c0-.245.25-.495.5-.495h2c.25 0 .5.25.5.5v3.5a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5v-7a.5.5 0 0 0-.146-.354L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293L8.354 1.146a.5.5 0 0 0-.708 0l-6 6A.5.5 0 0 0 1.5 7.5v7a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5Z'/%3E%3C/svg%3E");
}

.bi-plus-square-fill-nav-menu[b-hvjwnfpqgw] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-plus-square-fill' viewBox='0 0 16 16'%3E%3Cpath d='M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2zm6.5 4.5v3h3a.5.5 0 0 1 0 1h-3v3a.5.5 0 0 1-1 0v-3h-3a.5.5 0 0 1 0-1h3v-3a.5.5 0 0 1 1 0z'/%3E%3C/svg%3E");
}

.bi-list-nested-nav-menu[b-hvjwnfpqgw] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-list-nested' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M4.5 11.5A.5.5 0 0 1 5 11h10a.5.5 0 0 1 0 1H5a.5.5 0 0 1-.5-.5zm-2-4A.5.5 0 0 1 3 7h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5zm-2-4A.5.5 0 0 1 1 3h10a.5.5 0 0 1 0 1H1a.5.5 0 0 1-.5-.5z'/%3E%3C/svg%3E");
}

.nav-item[b-hvjwnfpqgw] {
    font-size: 0.9rem;
    padding-bottom: 0.5rem;
}

    .nav-item:first-of-type[b-hvjwnfpqgw] {
        padding-top: 1rem;
    }

    .nav-item:last-of-type[b-hvjwnfpqgw] {
        padding-bottom: 1rem;
    }

    .nav-item[b-hvjwnfpqgw]  a {
        color: #d7d7d7;
        border-radius: 4px;
        height: 3rem;
        display: flex;
        align-items: center;
        line-height: 3rem;
    }

.nav-item[b-hvjwnfpqgw]  a.active {
    background-color: rgba(255,255,255,0.37);
    color: white;
}

.nav-item[b-hvjwnfpqgw]  a:hover {
    background-color: rgba(255,255,255,0.1);
    color: white;
}

@media (min-width: 641px) {
    .navbar-toggler[b-hvjwnfpqgw] {
        display: none;
    }

    .collapse[b-hvjwnfpqgw] {
        /* Never collapse the sidebar for wide screens */
        display: block;
    }

    .nav-scrollable[b-hvjwnfpqgw] {
        /* Allow sidebar to scroll for tall menus */
        height: calc(100vh - 3.5rem);
        overflow-y: auto;
    }
}
/* /Layout/SettingsShell.razor.rz.scp.css */
.settings-shell[b-ykdp6w7kat] {
    align-items: start;
    display: grid;
    gap: 1.5rem;
    grid-template-columns: 15rem minmax(0, 1fr);
}

.settings-sidebar[b-ykdp6w7kat] {
    background: #fff;
    border: 1px solid #e0e4da;
    border-radius: 0.9rem;
    box-shadow: 0 14px 38px rgba(45, 54, 39, 0.08);
    overflow: hidden;
    position: sticky;
    top: 6.5rem;
}

.settings-title[b-ykdp6w7kat] {
    border-bottom: 1px solid #e5e8df;
    color: #253323;
    display: grid;
    gap: 0.1rem;
    padding: 1.15rem 1.2rem;
    text-decoration: none;
}

.settings-title span[b-ykdp6w7kat] {
    color: #4f922e;
    font-size: 0.7rem;
    font-weight: 850;
    letter-spacing: 0.13em;
    text-transform: uppercase;
}

.settings-title strong[b-ykdp6w7kat] {
    font-size: 1.25rem;
}

.settings-sidebar nav[b-ykdp6w7kat] {
    display: grid;
    gap: 0.25rem;
    padding: 0.75rem;
}

.settings-nav-group[b-ykdp6w7kat] {
    border-left: 3px solid transparent;
    display: grid;
    gap: 0.15rem;
    padding: 0.45rem 0 0.55rem 0.6rem;
}

.settings-nav-group.current[b-ykdp6w7kat] {
    border-left-color: #68b83f;
}

.settings-nav-heading[b-ykdp6w7kat] {
    color: #343a31;
    font-size: 0.82rem;
    font-weight: 850;
    padding: 0.3rem 0.55rem;
}

.settings-nav-group[b-ykdp6w7kat]  a {
    border-radius: 0.5rem;
    color: #697066;
    font-size: 0.88rem;
    font-weight: 650;
    padding: 0.48rem 0.55rem 0.48rem 1rem;
    text-decoration: none;
}

.settings-nav-group[b-ykdp6w7kat]  a:hover {
    background: #f1f5ed;
    color: #30372d;
}

.settings-nav-group[b-ykdp6w7kat]  a.active {
    background: #e9f8d7;
    color: #32751c;
    font-weight: 800;
}

.settings-workspace[b-ykdp6w7kat] {
    min-width: 0;
}

.settings-menu-toggle[b-ykdp6w7kat] {
    display: none;
}

.settings-workspace[b-ykdp6w7kat]  .settings-page {
    margin: 0 auto;
    max-width: 980px;
}

.settings-workspace[b-ykdp6w7kat]  .settings-page > header {
    margin-bottom: 1.5rem;
}

.settings-workspace[b-ykdp6w7kat]  .eyebrow {
    color: #4f922e;
    font-size: 0.76rem;
    font-weight: 850;
    letter-spacing: 0.13em;
    margin: 0 0 0.3rem;
    text-transform: uppercase;
}

.settings-workspace[b-ykdp6w7kat]  .settings-page h1 {
    font-size: clamp(2rem, 5vw, 3rem);
    letter-spacing: -0.05em;
    margin: 0;
}

.settings-workspace[b-ykdp6w7kat]  .settings-page > header > p:last-child,
.settings-workspace[b-ykdp6w7kat]  .settings-card p {
    color: #687064;
}

.settings-workspace[b-ykdp6w7kat]  .settings-card {
    background: #fff;
    border: 1px solid #e0e4da;
    border-radius: 0.9rem;
    box-shadow: 0 14px 38px rgba(45, 54, 39, 0.08);
    padding: 1.5rem;
}

.settings-workspace[b-ykdp6w7kat]  .settings-card h2 {
    font-size: 1.25rem;
    margin: 0;
}

.settings-workspace[b-ykdp6w7kat]  .section-heading {
    align-items: start;
    display: flex;
    gap: 1rem;
    justify-content: space-between;
}

.settings-workspace[b-ykdp6w7kat]  .section-heading p {
    margin-bottom: 0;
}

.settings-workspace[b-ykdp6w7kat]  .switch-row {
    align-items: center;
    display: flex;
    font-weight: 700;
    gap: 0.65rem;
    margin: 1.25rem 0;
}

.settings-workspace[b-ykdp6w7kat]  .switch-row input {
    height: 1.2rem;
    width: 1.2rem;
}

.settings-workspace[b-ykdp6w7kat]  .field-grid {
    display: grid;
    gap: 0.75rem;
    grid-template-columns: 1fr 1fr;
}

.settings-workspace[b-ykdp6w7kat]  .location-form {
    background: #f5f8f1;
    border-radius: 0.7rem;
    margin-top: 1rem;
    padding: 1rem;
}

.settings-workspace[b-ykdp6w7kat]  .location-form label {
    display: grid;
    font-size: 0.78rem;
    font-weight: 750;
    gap: 0.3rem;
}

.settings-workspace[b-ykdp6w7kat]  input:not([type="checkbox"]),
.settings-workspace[b-ykdp6w7kat]  select {
    background: #fff;
    border: 1px solid #d5dbd0;
    border-radius: 0.55rem;
    color: #343a31;
    font: inherit;
    min-height: 2.7rem;
    padding: 0.55rem 0.7rem;
    width: 100%;
}

.settings-workspace[b-ykdp6w7kat]  input:focus,
.settings-workspace[b-ykdp6w7kat]  select:focus {
    border-color: #65aa43;
    box-shadow: 0 0 0 3px rgba(101, 170, 67, 0.16);
    outline: none;
}

.settings-workspace[b-ykdp6w7kat]  .location-form > button {
    margin-top: 0.8rem;
}

.settings-workspace[b-ykdp6w7kat]  .primary {
    background: #68b83f;
    border: 0;
    border-radius: 0.6rem;
    color: #17370d;
    font-weight: 750;
    min-height: 2.8rem;
    padding: 0.6rem 1rem;
}

.settings-workspace[b-ykdp6w7kat]  .secondary {
    background: #edf0e8;
    border: 0;
    border-radius: 0.6rem;
    color: #343a31;
    cursor: pointer;
    font: inherit;
    font-weight: 750;
    min-height: 2.7rem;
    padding: 0.55rem 0.9rem;
    white-space: nowrap;
}

.settings-workspace[b-ykdp6w7kat]  .settings-error {
    background: #fff1ee;
    border: 1px solid #efcec7;
    border-radius: 0.65rem;
    color: #852b20;
    padding: 0.85rem 1rem;
}

.settings-workspace[b-ykdp6w7kat]  .inline-error {
    color: #852b20;
    font-weight: 650;
    margin: 0.75rem 0 0;
}

.settings-workspace[b-ykdp6w7kat]  .confirmation {
    color: #34761f;
    font-weight: 700;
    margin: 0.8rem 0 0;
}

.settings-workspace[b-ykdp6w7kat]  .location-list {
    border: 1px solid #e4e8df;
    border-radius: 0.65rem;
    margin-top: 1rem;
    overflow: hidden;
}

.settings-workspace[b-ykdp6w7kat]  .location-row {
    border-bottom: 1px solid #e7eae3;
    padding: 0.7rem 0.85rem;
}

.settings-workspace[b-ykdp6w7kat]  .location-row:last-child {
    border-bottom: 0;
}

.settings-workspace[b-ykdp6w7kat]  .location-row > span {
    display: grid;
    gap: 0.1rem;
}

.settings-workspace[b-ykdp6w7kat]  .location-row small {
    color: #767c72;
}

.settings-workspace[b-ykdp6w7kat]  .empty-locations {
    background: #f5f6f3;
    border-radius: 0.65rem;
    margin: 1rem 0 0;
    padding: 0.85rem;
}

@media (max-width: 850px) {
    .settings-shell[b-ykdp6w7kat] {
        grid-template-columns: 1fr;
    }

    .settings-menu-toggle[b-ykdp6w7kat] {
        align-items: center;
        background: #fff;
        border: 1px solid #dfe4d9;
        border-radius: 0.75rem;
        color: #30372d;
        display: flex;
        justify-content: space-between;
        padding: 0.75rem 0.9rem;
        text-align: left;
        width: 100%;
    }

    .settings-menu-toggle > span:first-child[b-ykdp6w7kat] {
        display: grid;
        gap: 0.1rem;
    }

    .settings-menu-toggle small[b-ykdp6w7kat] {
        color: #687064;
    }

    .settings-menu-toggle > span:last-child[b-ykdp6w7kat] {
        font-size: 1.35rem;
    }

    .settings-sidebar[b-ykdp6w7kat] {
        display: none;
        position: static;
    }

    .settings-sidebar.open[b-ykdp6w7kat] {
        display: block;
    }
}

@media (max-width: 550px) {
    .settings-workspace[b-ykdp6w7kat]  .field-grid {
        grid-template-columns: 1fr;
    }
}
/* /Pages/AccountActivation.razor.rz.scp.css */
.activation-card[b-jmhx4bautm] {
    max-width: 34rem;
    margin: 3rem auto;
    padding: 2rem;
    border: 1px solid #d8dee4;
    border-radius: 0.75rem;
    background: #fff;
    box-shadow: 0 0.5rem 1.5rem rgb(0 0 0 / 8%);
}

.activation-card h1[b-jmhx4bautm] {
    margin-bottom: 0.75rem;
}

.field[b-jmhx4bautm] {
    margin-top: 1.25rem;
}

.field label[b-jmhx4bautm] {
    display: block;
    margin-bottom: 0.35rem;
    font-weight: 600;
}

.hint[b-jmhx4bautm] {
    margin: 0.4rem 0 0;
    color: #52606d;
    font-size: 0.9rem;
}

.activation-message[b-jmhx4bautm] {
    margin: 1.25rem 0;
    padding: 0.9rem 1rem;
    border-radius: 0.4rem;
}

.activation-message p[b-jmhx4bautm],
.activation-message ul[b-jmhx4bautm] {
    margin-bottom: 0;
}

.activation-message.error[b-jmhx4bautm] {
    border: 1px solid #b42318;
    background: #fff1f0;
    color: #7a271a;
}

.activation-message.success[b-jmhx4bautm] {
    border: 1px solid #27864a;
    background: #ecfdf3;
    color: #175c32;
}

.progress-message[b-jmhx4bautm] {
    display: inline-block;
    margin-left: 0.75rem;
}

.validation-message[b-jmhx4bautm] {
    color: #b42318;
}
/* /Pages/DeviceSessions.razor.rz.scp.css */
.sessions-page[b-28symggnc1] {
    max-width: 52rem;
    margin: 2rem auto;
}

.session-list[b-28symggnc1] {
    padding: 0;
    list-style: none;
}

.revoke-all[b-28symggnc1] {
    margin-top: 1rem;
}

.session-list li[b-28symggnc1] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem 0;
    border-bottom: 1px solid #d8dee4;
}

.session-list p[b-28symggnc1] {
    margin: 0.35rem 0 0;
    color: #52606d;
}

.current-label[b-28symggnc1] {
    margin-left: 0.5rem;
    padding: 0.15rem 0.45rem;
    border-radius: 1rem;
    background: #e8f1ff;
    color: #184b85;
    font-size: 0.8rem;
}

.sessions-error[b-28symggnc1] {
    margin: 1.25rem 0;
    padding: 0.9rem 1rem;
    border: 1px solid #b42318;
    border-radius: 0.4rem;
    background: #fff1f0;
    color: #7a271a;
}

@media (max-width: 640px) {
    .session-list li[b-28symggnc1] {
        align-items: stretch;
        flex-direction: column;
    }
}
/* /Pages/Home.razor.rz.scp.css */
.planning-page[b-84suujgdyb] {
    color: #333830;
}

.planning-heading[b-84suujgdyb] {
    align-items: flex-start;
    display: flex;
    gap: 2rem;
    justify-content: space-between;
    margin-bottom: 1.75rem;
}

.eyebrow[b-84suujgdyb] {
    color: #4f922e;
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.13em;
    margin: 0 0 0.25rem;
    text-transform: uppercase;
}

h1[b-84suujgdyb] {
    font-size: clamp(2rem, 4vw, 3.15rem);
    font-weight: 760;
    letter-spacing: -0.055em;
    line-height: 1;
    margin: 0;
}

.week-label[b-84suujgdyb] {
    color: #74796f;
    font-size: 1rem;
    margin: 0.55rem 0 0;
}

.planning-actions[b-84suujgdyb] {
    display: grid;
    flex: 1 1 42rem;
    gap: 0.4rem 0.55rem;
    grid-template-columns: minmax(0, 1fr) 10.6rem;
    justify-content: end;
    max-width: 54rem;
    min-width: 0;
}

.planning-toolbar[b-84suujgdyb] {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
    justify-content: flex-end;
}

.planning-toolbar button[b-84suujgdyb],
.week-navigation button[b-84suujgdyb] {
    font-size: 0.76rem;
    min-height: 2rem;
    padding: 0.3rem 0.55rem;
}

.creation-actions[b-84suujgdyb] {
    display: flex;
    gap: 0.45rem;
    position: relative;
}

.creation-location-menu[b-84suujgdyb],
.location-filter-menu[b-84suujgdyb] {
    background: #fff;
    border: 1px solid #d8ddd1;
    border-radius: 0.7rem;
    box-shadow: 0 10px 28px rgba(46, 55, 40, 0.16);
    display: grid;
    gap: 0.25rem;
    min-width: 13rem;
    padding: 0.5rem;
    position: absolute;
    top: calc(100% + 0.35rem);
    z-index: 20;
}

.creation-location-menu[b-84suujgdyb] {
    left: 0;
}

.creation-location-menu strong[b-84suujgdyb] {
    color: #596153;
    font-size: 0.72rem;
    padding: 0.25rem 0.4rem;
}

.creation-location-menu button[b-84suujgdyb] {
    border: 0;
    min-height: 2.2rem;
    text-align: left;
}

.location-filter[b-84suujgdyb] {
    position: relative;
}

.location-filter-toggle[b-84suujgdyb] {
    min-height: 2rem;
    padding: 0.3rem 0.55rem;
}

.location-filter-menu[b-84suujgdyb] {
    right: 0;
}

.location-filter-menu label[b-84suujgdyb] {
    align-items: center;
    border-radius: 0.45rem;
    cursor: pointer;
    display: flex;
    font-size: 0.82rem;
    font-weight: 650;
    gap: 0.55rem;
    min-height: 2.2rem;
    padding: 0.35rem 0.45rem;
}

.location-filter-menu label:hover[b-84suujgdyb] {
    background: #eff6e8;
}

.location-filter-menu input[b-84suujgdyb] {
    accent-color: #68b83f;
    height: 1rem;
    margin: 0;
    width: 1rem;
}

label[b-84suujgdyb] {
    display: grid;
    font-size: 0.75rem;
    font-weight: 750;
    gap: 0.25rem;
}

select[b-84suujgdyb],
button[b-84suujgdyb] {
    background: #fff;
    border: 1px solid #d8ddd1;
    border-radius: 0.65rem;
    color: #363b33;
    font: inherit;
    min-height: 2.7rem;
    padding: 0.55rem 0.85rem;
}

button[b-84suujgdyb] {
    cursor: pointer;
    font-weight: 700;
}

button:hover:not(:disabled)[b-84suujgdyb] {
    background: #eff6e8;
    border-color: #a7c88f;
}

button:disabled[b-84suujgdyb] {
    cursor: wait;
    opacity: 0.55;
}

.new-booking[b-84suujgdyb] {
    background: #68b83f;
    border-color: #68b83f;
    color: #17370d;
}

.new-booking[b-84suujgdyb],
.new-block[b-84suujgdyb] {
    min-height: 2rem;
    padding: 0.3rem 0.55rem;
}

.new-block[b-84suujgdyb] {
    background: #fff2ef;
    border-color: #d49a93;
    color: #712f28;
}

.new-booking:hover:not(:disabled)[b-84suujgdyb] {
    background: #5ca936;
    border-color: #5ca936;
}

.week-navigation[b-84suujgdyb] {
    display: flex;
    gap: 0.35rem;
    grid-column: 1;
    justify-self: end;
}

.view-switch[b-84suujgdyb] {
    align-items: center;
    background: #eef1e9;
    border-radius: 0.7rem;
    display: flex;
    gap: 0.15rem;
    padding: 0.2rem;
}

.view-switch button[b-84suujgdyb] {
    background: transparent;
    border: 0;
    min-height: 1.75rem;
    padding: 0.25rem 0.5rem;
}

.view-switch button.active[b-84suujgdyb] {
    background: #fff;
    box-shadow: 0 2px 7px rgba(45, 54, 39, 0.12);
    color: #32751c;
}

.mini-calendar[b-84suujgdyb] {
    align-self: flex-start;
    background: #fff;
    border: 1px solid #dfe4da;
    border-radius: 0.6rem;
    grid-column: 2;
    grid-row: 1 / span 2;
    justify-self: end;
    padding: 0.3rem;
    width: 10.6rem;
}

.mini-calendar > header[b-84suujgdyb] {
    align-items: center;
    display: grid;
    grid-template-columns: 1.4rem 1fr 1.4rem;
    text-align: center;
}

.mini-calendar > header strong[b-84suujgdyb] {
    font-size: 0.68rem;
    text-transform: capitalize;
}

.mini-calendar > header button[b-84suujgdyb],
.calendar-days button[b-84suujgdyb] {
    border: 0;
    border-radius: 0.3rem;
    min-height: 1.35rem;
    padding: 0;
}

.calendar-weekdays[b-84suujgdyb],
.calendar-days[b-84suujgdyb] {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
}

.calendar-weekdays span[b-84suujgdyb] {
    color: #7d8379;
    font-size: 0.55rem;
    font-weight: 750;
    padding: 0.2rem 0;
    text-align: center;
}

.calendar-days button[b-84suujgdyb] {
    background: transparent;
    font-size: 0.62rem;
    font-weight: 650;
}

.calendar-days button:hover:not(:disabled)[b-84suujgdyb] {
    background: #eaf6e2;
}

.calendar-days .outside-month[b-84suujgdyb] {
    color: #b0b5ad;
}

.calendar-days .selected-week[b-84suujgdyb] {
    background: #e5f4da;
    border-radius: 0;
    color: #2d681b;
}

.calendar-days .selected-date[b-84suujgdyb] {
    background: #dff2d2;
    color: #255d15;
    font-weight: 850;
}

.calendar-days .calendar-today[b-84suujgdyb] {
    box-shadow: inset 0 0 0 2px #69b941;
    border-radius: 50%;
}

.calendar-wrap[b-84suujgdyb] {
    background: transparent;
}

.calendar[b-84suujgdyb] {
    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.day-calendar[b-84suujgdyb] {
    grid-template-columns: minmax(0, 1fr);
}

.month-calendar[b-84suujgdyb] {
    background: #fff;
    border: 1px solid #e0e4da;
    border-radius: 0.85rem;
    box-shadow: 0 8px 24px rgba(52, 61, 43, 0.05);
    overflow: hidden;
}

.month-weekdays[b-84suujgdyb],
.month-grid[b-84suujgdyb] {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
}

.month-weekdays[b-84suujgdyb] {
    background: #f3f6ef;
    border-bottom: 1px solid #e0e4da;
}

.month-weekdays span[b-84suujgdyb] {
    color: #596153;
    font-size: 0.72rem;
    font-weight: 850;
    padding: 0.55rem 0.4rem;
    text-align: center;
    text-transform: uppercase;
}

.month-day[b-84suujgdyb] {
    border-bottom: 1px solid #e7eae3;
    border-right: 1px solid #e7eae3;
    min-height: 8.4rem;
    min-width: 0;
    padding: 0.35rem;
}

.month-day:nth-child(7n)[b-84suujgdyb] {
    border-right: 0;
}

.month-day:nth-last-child(-n + 7)[b-84suujgdyb] {
    border-bottom: 0;
}

.month-day.outside-month[b-84suujgdyb] {
    background: #fafbf9;
}

.month-day.today[b-84suujgdyb] {
    background: #f3fbea;
    box-shadow: inset 0 0 0 2px #78c850;
}

.month-date[b-84suujgdyb] {
    align-items: baseline;
    background: transparent;
    border: 0;
    display: flex;
    gap: 0.25rem;
    justify-content: flex-end;
    min-height: 1.8rem;
    padding: 0.15rem 0.25rem;
    width: 100%;
}

.month-date span[b-84suujgdyb] {
    font-size: 0.82rem;
    font-weight: 850;
}

.month-date small[b-84suujgdyb] {
    color: #747b70;
    font-size: 0.62rem;
    text-transform: capitalize;
}

.outside-month .month-date[b-84suujgdyb] {
    color: #a4aaa0;
}

.month-entries[b-84suujgdyb] {
    display: grid;
    gap: 0.18rem;
}

.month-entry[b-84suujgdyb],
.month-more[b-84suujgdyb] {
    background: color-mix(in srgb, var(--booking-color, #78c850) 10%, white);
    border: 0;
    border-left: 0.22rem solid var(--booking-color, #78c850);
    border-radius: 0.3rem;
    display: grid;
    gap: 0.22rem;
    grid-template-columns: 2.4rem minmax(0, 1fr);
    min-height: 1.6rem;
    overflow: hidden;
    padding: 0.24rem 0.3rem;
    text-align: left;
    width: 100%;
}

.month-entry time[b-84suujgdyb] {
    color: #596153;
    font-size: 0.62rem;
    font-weight: 850;
}

.month-entry span[b-84suujgdyb] {
    color: #324453;
    font-size: 0.66rem;
    font-weight: 750;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.month-entry.option[b-84suujgdyb] {
    background: #fff9da;
}

.month-block[b-84suujgdyb] {
    --booking-color: #b85a50;
    background: #fff2ef;
}

.month-more[b-84suujgdyb] {
    background: transparent;
    border: 0;
    color: #4f7b3c;
    display: block;
    font-size: 0.65rem;
    font-weight: 800;
    min-height: 1.5rem;
    padding-left: 0.35rem;
}

.day-column[b-84suujgdyb] {
    background: #fff;
    border: 1px solid #e0e4da;
    border-radius: 0.8rem;
    box-shadow: 0 8px 24px rgba(52, 61, 43, 0.05);
    min-width: 0;
    overflow: hidden;
}

.day-column:last-child[b-84suujgdyb] {
    border-right: 1px solid #e0e4da;
}

.day-column > header[b-84suujgdyb] {
    align-items: center;
    border-bottom: 1px solid #e8ebe3;
    display: flex;
    gap: 0.5rem;
    justify-content: flex-start;
    min-height: 3.5rem;
    padding: 0.65rem 1rem;
    text-transform: capitalize;
}

.day-column > header span[b-84suujgdyb] {
    color: #38566a;
    font-size: 1rem;
    font-weight: 800;
}

.day-column > header strong[b-84suujgdyb] {
    align-items: center;
    display: inline-flex;
    font-size: 1rem;
    height: 1.9rem;
    justify-content: center;
    white-space: nowrap;
    width: auto;
}

.day-column.today[b-84suujgdyb] {
    background: #fbfff7;
}

.day-column.today > header[b-84suujgdyb] {
    background: #eef9e7;
    box-shadow: inset 4px 0 #78c850;
}

.day-content[b-84suujgdyb] {
    display: grid;
    gap: 0;
    padding: 0.55rem 1rem 0.75rem;
}

.empty-day[b-84suujgdyb] {
    color: #a0a49b;
    font-size: 0.78rem;
    margin: 1rem 0;
    text-align: center;
}

.booking-card[b-84suujgdyb] {
    align-items: baseline;
    background: transparent;
    border: 0;
    border-bottom: 1px solid #edf0e9;
    border-radius: 0;
    box-shadow: none;
    display: grid;
    gap: 0.65rem;
    grid-template-columns: 7rem minmax(0, 1fr) minmax(6rem, 0.7fr) auto;
    min-height: auto;
    padding: 0.55rem 0.15rem;
    position: relative;
    text-align: left;
    width: 100%;
}

.booking-card[b-84suujgdyb]::before {
    background: var(--booking-color);
    border-radius: 50%;
    content: "";
    height: 0.55rem;
    left: -0.8rem;
    position: absolute;
    top: 0.9rem;
    width: 0.55rem;
}

.booking-card:last-child[b-84suujgdyb] {
    border-bottom: 0;
}

.booking-card:hover[b-84suujgdyb],
.booking-card:focus-visible[b-84suujgdyb] {
    background: color-mix(in srgb, var(--booking-color) 9%, white);
    border-radius: 0.35rem;
    box-shadow: 0 0 0 2px color-mix(in srgb, var(--booking-color) 20%, transparent);
    outline: none;
}

.booking-card time[b-84suujgdyb] {
    color: #596153;
    font-size: 0.74rem;
    font-weight: 800;
}

.booking-card strong[b-84suujgdyb] {
    font-size: 0.88rem;
    line-height: 1.2;
}

.booking-card span[b-84suujgdyb],
.booking-card small[b-84suujgdyb] {
    color: #666d61;
    font-size: 0.74rem;
    line-height: 1.25;
}

.booking-summary[b-84suujgdyb] {
    align-items: baseline;
    display: flex;
    gap: 0.3rem;
    min-width: 0;
}

.booking-summary strong[b-84suujgdyb] {
    color: #263d4c;
}

.booking-summary small[b-84suujgdyb] {
    font-weight: 500;
}

.series-icon[b-84suujgdyb] {
    color: #4f7e37;
    font-size: 0.95rem;
    font-weight: 900;
    line-height: 1;
    margin-left: 0.15rem;
}

.additional-data-icon[b-84suujgdyb] {
    align-items: center;
    align-self: center;
    border: 1px solid #78905f;
    border-radius: 50%;
    color: #526a3c !important;
    display: inline-flex;
    flex: 0 0 auto;
    font-size: 0.62rem !important;
    font-style: normal;
    font-weight: 800;
    height: 1rem;
    justify-content: center;
    line-height: 1;
    width: 1rem;
}

.option-label[b-84suujgdyb] {
    align-self: center;
    background: #fff5bc;
    border-radius: 999px;
    color: #665800 !important;
    font-weight: 800;
    margin-top: 0;
    padding: 0.18rem 0.45rem;
    text-transform: uppercase;
}

.room-block-card[b-84suujgdyb] {
    cursor: pointer;
}

.room-block-card[b-84suujgdyb]::before {
    background: #b85a50;
    border-radius: 50%;
}

.room-block-card .booking-summary strong[b-84suujgdyb] {
    color: #6b342f;
}

.planning-footer[b-84suujgdyb] {
    color: #74796f;
    display: flex;
    flex-wrap: wrap;
    font-size: 0.78rem;
    gap: 1.25rem;
    justify-content: flex-end;
    padding: 0.9rem 0.2rem 0;
}

.planning-footer span[b-84suujgdyb] {
    align-items: center;
    display: inline-flex;
    gap: 0.4rem;
}

.legend[b-84suujgdyb] {
    background: #78c850;
    border-radius: 50%;
    display: inline-block;
    height: 0.65rem;
    width: 0.65rem;
}

.legend.option[b-84suujgdyb] {
    background: #f1d532;
}

.legend.blocked[b-84suujgdyb] {
    background: #b85a50;
}

.planning-state[b-84suujgdyb] {
    align-items: center;
    background: #fff;
    border: 1px solid #e0e4da;
    border-radius: 1rem;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    justify-content: center;
    min-height: 420px;
    padding: 2rem;
    text-align: center;
}

.planning-state span[b-84suujgdyb] {
    color: #74796f;
}

.error-state[b-84suujgdyb] {
    border-color: #ead3ce;
}

.loader[b-84suujgdyb] {
    animation: spin-b-84suujgdyb 0.8s linear infinite;
    border: 3px solid #e1e6dc;
    border-radius: 50%;
    border-top-color: #64b43e;
    height: 2rem;
    width: 2rem;
}

@keyframes spin-b-84suujgdyb {
    to {
        transform: rotate(360deg);
    }
}

@media (max-width: 1100px) {
    .planning-heading[b-84suujgdyb] {
        flex-direction: column;
    }

    .planning-actions[b-84suujgdyb] {
        max-width: none;
        width: 100%;
    }

    .planning-toolbar[b-84suujgdyb] {
        justify-content: flex-start;
    }
}

@media (max-width: 760px) {
    .planning-heading[b-84suujgdyb] {
        align-items: stretch;
        flex-direction: column;
    }

    .planning-actions[b-84suujgdyb] {
        grid-template-columns: minmax(0, 1fr) 10.6rem;
    }

    .creation-actions[b-84suujgdyb] {
        flex-wrap: wrap;
    }

    .location-filter[b-84suujgdyb] {
        margin-left: 0;
    }

    label[b-84suujgdyb] {
        flex: 1;
    }

    .planning-footer[b-84suujgdyb] {
        justify-content: flex-start;
    }

    .calendar[b-84suujgdyb] {
        grid-template-columns: 1fr;
    }

    .month-calendar[b-84suujgdyb] {
        background: transparent;
        border: 0;
        box-shadow: none;
        overflow: visible;
    }

    .month-weekdays[b-84suujgdyb] {
        display: none;
    }

    .month-grid[b-84suujgdyb] {
        gap: 0.55rem;
        grid-template-columns: 1fr;
    }

    .month-day[b-84suujgdyb] {
        background: #fff;
        border: 1px solid #e0e4da !important;
        border-radius: 0.7rem;
        min-height: auto;
        padding: 0.5rem;
    }

    .month-day.outside-month[b-84suujgdyb] {
        display: none;
    }

    .month-date[b-84suujgdyb] {
        justify-content: flex-start;
    }

    .month-entry[b-84suujgdyb] {
        grid-template-columns: 3rem minmax(0, 1fr);
    }

    .booking-card[b-84suujgdyb] {
        gap: 0.25rem 0.6rem;
        grid-template-columns: 6.5rem minmax(0, 1fr) auto;
    }

    .booking-card .rooms[b-84suujgdyb] {
        grid-column: 2 / -1;
    }
}

@media (max-width: 540px) {
    .planning-actions[b-84suujgdyb] {
        grid-template-columns: minmax(0, 1fr);
    }

    .planning-toolbar[b-84suujgdyb],
    .week-navigation[b-84suujgdyb] {
        grid-column: 1;
        justify-self: start;
    }

    .mini-calendar[b-84suujgdyb] {
        grid-column: 1;
        grid-row: auto;
        justify-self: end;
    }
}
/* /Pages/Resources.razor.rz.scp.css */
.resources-page[b-fu46tkzukr] {
    margin: 0 auto;
    max-width: 1180px;
}

.page-heading[b-fu46tkzukr] {
    align-items: end;
    display: flex;
    justify-content: space-between;
    margin-bottom: 1.4rem;
}

.back-link[b-fu46tkzukr] {
    color: #4f922e;
    display: inline-block;
    font-size: 0.78rem;
    font-weight: 750;
    margin-bottom: 0.6rem;
    text-decoration: none;
}

.eyebrow[b-fu46tkzukr] {
    color: #4f922e;
    font-size: 0.76rem;
    font-weight: 850;
    letter-spacing: 0.13em;
    margin: 0 0 0.3rem;
    text-transform: uppercase;
}

h1[b-fu46tkzukr] {
    font-size: clamp(2rem, 5vw, 3rem);
    letter-spacing: -0.05em;
    margin: 0;
}

.page-heading p:last-child[b-fu46tkzukr] {
    color: #687064;
    margin: 0.45rem 0 0;
}

.heading-actions[b-fu46tkzukr] {
    align-items: end;
    display: flex;
    gap: 0.65rem;
}

.heading-actions label[b-fu46tkzukr],
.editor label[b-fu46tkzukr] {
    display: grid;
    font-size: 0.78rem;
    font-weight: 750;
    gap: 0.3rem;
}

.heading-actions label[b-fu46tkzukr] {
    min-width: 15rem;
}

select[b-fu46tkzukr],
input[b-fu46tkzukr],
textarea[b-fu46tkzukr] {
    background: #fff;
    border: 1px solid #d5dbd0;
    border-radius: 0.55rem;
    color: #343a31;
    font: inherit;
    min-height: 2.7rem;
    padding: 0.55rem 0.7rem;
    width: 100%;
}

input:focus[b-fu46tkzukr],
select:focus[b-fu46tkzukr],
textarea:focus[b-fu46tkzukr] {
    border-color: #65aa43;
    box-shadow: 0 0 0 3px rgba(101, 170, 67, 0.16);
    outline: none;
}

textarea[b-fu46tkzukr] {
    resize: vertical;
}

input:disabled[b-fu46tkzukr] {
    background: #f1f2ef;
}

.add[b-fu46tkzukr],
.primary[b-fu46tkzukr],
.secondary[b-fu46tkzukr],
.page-state button[b-fu46tkzukr] {
    border: 0;
    border-radius: 0.6rem;
    cursor: pointer;
    font: inherit;
    font-weight: 750;
    min-height: 2.7rem;
    padding: 0.55rem 0.9rem;
}

.add[b-fu46tkzukr],
.primary[b-fu46tkzukr] {
    background: #68b83f;
    color: #17370d;
}

.secondary[b-fu46tkzukr],
.page-state button[b-fu46tkzukr] {
    background: #edf0e8;
    color: #343a31;
}

.workspace[b-fu46tkzukr] {
    align-items: start;
    display: grid;
    gap: 1rem;
    grid-template-columns: minmax(20rem, 0.75fr) minmax(31rem, 1.25fr);
}

.page-message[b-fu46tkzukr] {
    border-radius: 0.6rem;
    margin-bottom: 0.8rem;
    padding: 0.7rem 0.85rem;
}

.page-message.success[b-fu46tkzukr] {
    background: #edf8e7;
    color: #34761f;
    font-weight: 700;
}

.resource-list[b-fu46tkzukr],
.editor[b-fu46tkzukr],
.placeholder[b-fu46tkzukr],
.page-state[b-fu46tkzukr] {
    background: #fff;
    border: 1px solid #e0e4da;
    border-radius: 0.9rem;
    box-shadow: 0 14px 38px rgba(45, 54, 39, 0.07);
}

.resource-list[b-fu46tkzukr] {
    overflow: hidden;
}

.resource-row[b-fu46tkzukr] {
    align-items: center;
    background: #fff;
    border: 0;
    border-bottom: 1px solid #e7eae3;
    color: inherit;
    cursor: pointer;
    display: grid;
    font: inherit;
    gap: 0.7rem;
    grid-template-columns: 2rem 1fr auto auto;
    min-height: 4.5rem;
    padding: 0.75rem 1rem;
    text-align: left;
    width: 100%;
}

.resource-row:last-child[b-fu46tkzukr] {
    border-bottom: 0;
}

.resource-row:hover[b-fu46tkzukr],
.resource-row.selected[b-fu46tkzukr] {
    background: #f2f8ec;
}

.type-icon[b-fu46tkzukr] {
    align-items: center;
    background: #e9f8d7;
    border-radius: 50%;
    color: #34761f;
    display: flex;
    font-weight: 900;
    height: 2rem;
    justify-content: center;
    width: 2rem;
}

.resource-row > span:nth-child(2)[b-fu46tkzukr] {
    display: grid;
    gap: 0.18rem;
}

.resource-row small[b-fu46tkzukr] {
    color: #747b70;
}

.resource-row em[b-fu46tkzukr] {
    background: #f0f1ee;
    border-radius: 1rem;
    color: #676c64;
    font-size: 0.7rem;
    font-style: normal;
    font-weight: 800;
    padding: 0.25rem 0.55rem;
    text-transform: uppercase;
}

.editor[b-fu46tkzukr] {
    padding: 1.35rem;
}

.editor > header[b-fu46tkzukr] {
    align-items: start;
    border-bottom: 1px solid #e5e9e0;
    display: flex;
    justify-content: space-between;
    margin-bottom: 0.8rem;
    padding-bottom: 0.9rem;
}

.editor > header p[b-fu46tkzukr] {
    color: #4f922e;
    font-size: 0.72rem;
    font-weight: 800;
    margin: 0;
    text-transform: uppercase;
}

h2[b-fu46tkzukr] {
    font-size: 1.45rem;
    margin: 0.15rem 0 0;
}

.close[b-fu46tkzukr] {
    background: #f0f2ec;
    border: 0;
    border-radius: 50%;
    cursor: pointer;
    font-size: 1.45rem;
    height: 2.4rem;
    width: 2.4rem;
}

.editor > label[b-fu46tkzukr] {
    margin-top: 0.8rem;
}

label small[b-fu46tkzukr] {
    color: #848980;
    font-weight: 500;
}

.field-grid[b-fu46tkzukr] {
    display: grid;
    gap: 0.8rem;
}

.field-grid.two[b-fu46tkzukr] {
    grid-template-columns: 1fr 1fr;
}

fieldset[b-fu46tkzukr] {
    border: 1px solid #e1e5dc;
    border-radius: 0.7rem;
    margin: 0.9rem 0 0;
    padding: 0.75rem;
}

legend[b-fu46tkzukr] {
    font-size: 0.8rem;
    font-weight: 800;
    padding: 0 0.25rem;
}

fieldset p[b-fu46tkzukr] {
    color: #747b70;
    font-size: 0.78rem;
    margin: 0 0 0.55rem;
}

.location-options[b-fu46tkzukr] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
}

.location-options label[b-fu46tkzukr] {
    align-items: center;
    background: #f3f6ef;
    border-radius: 0.55rem;
    display: flex;
    gap: 0.45rem;
    padding: 0.5rem 0.65rem;
}

.location-options input[b-fu46tkzukr],
.active-row input[b-fu46tkzukr] {
    min-height: auto;
    width: 1.1rem;
}

.active-row[b-fu46tkzukr] {
    align-items: center;
    background: #f3f7ee;
    border-radius: 0.65rem;
    display: flex !important;
    gap: 0.65rem !important;
    padding: 0.75rem;
}

footer[b-fu46tkzukr] {
    border-top: 1px solid #e5e9e0;
    display: flex;
    gap: 0.6rem;
    justify-content: flex-end;
    margin-top: 1rem;
    padding-top: 1rem;
}

button:disabled[b-fu46tkzukr] {
    cursor: wait;
    opacity: 0.58;
}

.message[b-fu46tkzukr] {
    border-radius: 0.6rem;
    margin-bottom: 0.8rem;
    padding: 0.7rem 0.85rem;
}

.message.error[b-fu46tkzukr],
.page-state.error[b-fu46tkzukr] {
    background: #fff1ee;
    border-color: #efcec7;
    color: #852b20;
}

.message.success[b-fu46tkzukr] {
    background: #edf8e7;
    color: #34761f;
    font-weight: 700;
}

.placeholder[b-fu46tkzukr],
.page-state[b-fu46tkzukr] {
    align-items: center;
    color: #747b70;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    justify-content: center;
    min-height: 12rem;
    padding: 1.5rem;
    text-align: center;
}

.empty[b-fu46tkzukr] {
    color: #747b70;
    margin: 0;
    padding: 1.5rem;
    text-align: center;
}

@media (max-width: 850px) {
    .page-heading[b-fu46tkzukr] {
        align-items: stretch;
        display: grid;
        gap: 1rem;
    }

    .heading-actions[b-fu46tkzukr] {
        align-items: stretch;
    }

    .workspace[b-fu46tkzukr] {
        grid-template-columns: 1fr;
    }

    .placeholder[b-fu46tkzukr] {
        display: none;
    }
}

@media (max-width: 550px) {
    .heading-actions[b-fu46tkzukr],
    footer[b-fu46tkzukr] {
        align-items: stretch;
        flex-direction: column;
    }

    .heading-actions label[b-fu46tkzukr] {
        min-width: 0;
    }

    .field-grid.two[b-fu46tkzukr] {
        gap: 0;
        grid-template-columns: 1fr;
    }

    footer[b-fu46tkzukr] {
        flex-direction: column-reverse;
    }
}
/* /Pages/Rooms.razor.rz.scp.css */
.rooms-page[b-k9ttbbjc79] {
    margin: 0 auto;
    max-width: 1180px;
}

.rooms-heading[b-k9ttbbjc79] {
    align-items: end;
    display: flex;
    justify-content: space-between;
    margin-bottom: 1.4rem;
}

.eyebrow[b-k9ttbbjc79] {
    color: #4f922e;
    font-size: 0.76rem;
    font-weight: 850;
    letter-spacing: 0.13em;
    margin: 0 0 0.3rem;
    text-transform: uppercase;
}

h1[b-k9ttbbjc79] {
    font-size: clamp(2rem, 5vw, 3rem);
    letter-spacing: -0.05em;
    margin: 0;
}

.rooms-heading p:last-child[b-k9ttbbjc79] {
    color: #687064;
    margin: 0.45rem 0 0;
}

.back-link[b-k9ttbbjc79] {
    color: #4f922e;
    display: inline-block;
    font-size: 0.78rem;
    font-weight: 750;
    margin-bottom: 0.6rem;
    text-decoration: none;
}

.rooms-heading-actions[b-k9ttbbjc79] {
    align-items: end;
    display: flex;
    gap: 0.65rem;
}

.location-picker[b-k9ttbbjc79] {
    display: grid;
    font-size: 0.78rem;
    font-weight: 750;
    gap: 0.25rem;
    min-width: 15rem;
}

.add-room[b-k9ttbbjc79] {
    background: #68b83f;
    border: 0;
    border-radius: 0.6rem;
    color: #17370d;
    cursor: pointer;
    font: inherit;
    font-weight: 800;
    min-height: 2.7rem;
    padding: 0.55rem 0.9rem;
    white-space: nowrap;
}

select[b-k9ttbbjc79],
input[b-k9ttbbjc79],
textarea[b-k9ttbbjc79] {
    background: #fff;
    border: 1px solid #d5dbd0;
    border-radius: 0.55rem;
    color: #343a31;
    font: inherit;
    min-height: 2.7rem;
    padding: 0.55rem 0.7rem;
    width: 100%;
}

input:focus[b-k9ttbbjc79],
select:focus[b-k9ttbbjc79],
textarea:focus[b-k9ttbbjc79] {
    border-color: #65aa43;
    box-shadow: 0 0 0 3px rgba(101, 170, 67, 0.16);
    outline: none;
}

textarea[b-k9ttbbjc79] {
    resize: vertical;
}

.rooms-workspace[b-k9ttbbjc79] {
    align-items: start;
    display: grid;
    gap: 1rem;
    grid-template-columns: minmax(18rem, 0.75fr) minmax(30rem, 1.25fr);
}

.room-list[b-k9ttbbjc79],
.room-editor[b-k9ttbbjc79],
.editor-placeholder[b-k9ttbbjc79],
.page-state[b-k9ttbbjc79] {
    background: #fff;
    border: 1px solid #e0e4da;
    border-radius: 0.9rem;
    box-shadow: 0 14px 38px rgba(45, 54, 39, 0.07);
}

.room-list[b-k9ttbbjc79] {
    overflow: hidden;
}

.room-row[b-k9ttbbjc79] {
    align-items: center;
    background: #fff;
    border: 0;
    border-bottom: 1px solid #e7eae3;
    color: inherit;
    cursor: pointer;
    display: grid;
    font: inherit;
    gap: 0.7rem;
    grid-template-columns: 0.4rem 1fr auto auto;
    min-height: 4.5rem;
    padding: 0.75rem 1rem;
    text-align: left;
    width: 100%;
}

.room-row:last-child[b-k9ttbbjc79] {
    border-bottom: 0;
}

.room-row:hover[b-k9ttbbjc79],
.room-row.selected[b-k9ttbbjc79] {
    background: #f2f8ec;
}

.room-row > i[b-k9ttbbjc79] {
    background: var(--room-color);
    border-radius: 1rem;
    height: 2.6rem;
    width: 0.35rem;
}

.room-row > span:nth-child(2)[b-k9ttbbjc79] {
    display: grid;
    gap: 0.18rem;
}

.room-row small[b-k9ttbbjc79] {
    color: #747b70;
}

.room-row em[b-k9ttbbjc79] {
    background: #f0f1ee;
    border-radius: 1rem;
    color: #676c64;
    font-size: 0.7rem;
    font-style: normal;
    font-weight: 800;
    padding: 0.25rem 0.55rem;
    text-transform: uppercase;
}

.room-editor[b-k9ttbbjc79] {
    padding: 1.35rem;
}

.room-editor > header[b-k9ttbbjc79] {
    align-items: start;
    border-bottom: 1px solid #e5e9e0;
    display: flex;
    justify-content: space-between;
    margin-bottom: 0.7rem;
    padding-bottom: 0.9rem;
}

.room-editor > header p[b-k9ttbbjc79] {
    color: #4f922e;
    font-size: 0.72rem;
    font-weight: 800;
    margin: 0;
    text-transform: uppercase;
}

h2[b-k9ttbbjc79] {
    font-size: 1.45rem;
    margin: 0.15rem 0 0;
}

.close[b-k9ttbbjc79] {
    background: #f0f2ec;
    border: 0;
    border-radius: 50%;
    cursor: pointer;
    font-size: 1.45rem;
    height: 2.4rem;
    width: 2.4rem;
}

.room-editor label[b-k9ttbbjc79] {
    display: grid;
    font-size: 0.78rem;
    font-weight: 750;
    gap: 0.3rem;
    margin-top: 0.75rem;
}

label small[b-k9ttbbjc79] {
    color: #848980;
    font-weight: 500;
}

.field-grid[b-k9ttbbjc79] {
    display: grid;
    gap: 0.8rem;
}

.field-grid.two[b-k9ttbbjc79] {
    grid-template-columns: 1fr 1fr;
}

.color-input[b-k9ttbbjc79] {
    cursor: pointer;
    padding: 0.25rem;
}

.active-row[b-k9ttbbjc79] {
    align-items: center;
    background: #f3f7ee;
    border-radius: 0.65rem;
    display: flex !important;
    gap: 0.65rem !important;
    padding: 0.75rem;
}

.active-row input[b-k9ttbbjc79] {
    min-height: auto;
    width: 1.15rem;
}

footer[b-k9ttbbjc79] {
    border-top: 1px solid #e5e9e0;
    display: flex;
    gap: 0.6rem;
    justify-content: flex-end;
    margin-top: 1rem;
    padding-top: 1rem;
}

button.primary[b-k9ttbbjc79],
button.secondary[b-k9ttbbjc79],
.page-state button[b-k9ttbbjc79] {
    border: 0;
    border-radius: 0.6rem;
    cursor: pointer;
    font: inherit;
    font-weight: 750;
    min-height: 2.7rem;
    padding: 0.55rem 0.9rem;
}

.primary[b-k9ttbbjc79] {
    background: #68b83f;
    color: #17370d;
}

.secondary[b-k9ttbbjc79],
.page-state button[b-k9ttbbjc79] {
    background: #edf0e8;
    color: #343a31;
}

button:disabled[b-k9ttbbjc79] {
    cursor: wait;
    opacity: 0.58;
}

.message[b-k9ttbbjc79] {
    border-radius: 0.6rem;
    margin-bottom: 0.8rem;
    padding: 0.7rem 0.85rem;
}

.message.error[b-k9ttbbjc79],
.page-state.error[b-k9ttbbjc79] {
    background: #fff1ee;
    border-color: #efcec7;
    color: #852b20;
}

.message.success[b-k9ttbbjc79] {
    background: #edf8e7;
    color: #34761f;
    font-weight: 700;
}

.editor-placeholder[b-k9ttbbjc79],
.page-state[b-k9ttbbjc79] {
    align-items: center;
    color: #747b70;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    justify-content: center;
    min-height: 12rem;
    padding: 1.5rem;
    text-align: center;
}

.editor-placeholder strong[b-k9ttbbjc79],
.page-state strong[b-k9ttbbjc79] {
    color: #343a31;
}

.empty[b-k9ttbbjc79] {
    color: #747b70;
    margin: 0;
    padding: 1.5rem;
    text-align: center;
}

@media (max-width: 850px) {
    .rooms-heading[b-k9ttbbjc79] {
        align-items: stretch;
        display: grid;
        gap: 1rem;
    }

    .location-picker[b-k9ttbbjc79] {
        min-width: 0;
    }

    .rooms-heading-actions[b-k9ttbbjc79] {
        align-items: stretch;
    }

    .rooms-workspace[b-k9ttbbjc79] {
        grid-template-columns: 1fr;
    }

    .editor-placeholder[b-k9ttbbjc79] {
        display: none;
    }
}

@media (max-width: 550px) {
    .rooms-heading-actions[b-k9ttbbjc79] {
        flex-direction: column;
    }

    .field-grid.two[b-k9ttbbjc79] {
        gap: 0;
        grid-template-columns: 1fr;
    }

    footer[b-k9ttbbjc79] {
        align-items: stretch;
        flex-direction: column-reverse;
    }
}
/* /Pages/SignIn.razor.rz.scp.css */
.sign-in-card[b-8l56ogqv7n] {
    max-width: 34rem;
    margin: 3rem auto;
    padding: 2rem;
    border: 1px solid #d8dee4;
    border-radius: 0.75rem;
    background: #fff;
    box-shadow: 0 0.5rem 1.5rem rgb(0 0 0 / 8%);
}

.field[b-8l56ogqv7n] {
    margin-top: 1.25rem;
}

.field > label:not(.form-check-label)[b-8l56ogqv7n] {
    display: block;
    margin-bottom: 0.35rem;
    font-weight: 600;
}

.sign-in-error[b-8l56ogqv7n] {
    margin: 1.25rem 0;
    padding: 0.9rem 1rem;
    border: 1px solid #b42318;
    border-radius: 0.4rem;
    background: #fff1f0;
    color: #7a271a;
}

.progress-message[b-8l56ogqv7n] {
    display: inline-block;
    margin-left: 0.75rem;
}

.validation-message[b-8l56ogqv7n] {
    color: #b42318;
}
