/* /Components/AppBarControls.razor.rz.scp.css */
[b-ye46n7phd3] .app-bar-user-name {
    text-decoration: none;
}

[b-ye46n7phd3] .app-bar-top-adjustment {
    padding-top: 2px;
}
/* /Components/CustomNavLink.razor.rz.scp.css */
.nav-custom[b-f95hr83l9m]{
    display: flex;
    align-items: center;
    justify-content: space-between;
}
/* /Components/Identity/CelebrationSVG.razor.rz.scp.css */
.celebration[b-t69jbd7kj0] { position:relative; width:64px; height:64px; display:flex; align-items:center; justify-content:center; }
.check[b-t69jbd7kj0] { width:56px; height:56px; transform-origin:center; animation: pop-b-t69jbd7kj0 520ms cubic-bezier(.2,.8,.2,1) forwards; }
.check-circle[b-t69jbd7kj0] { stroke-dasharray: 157; stroke-dashoffset: 157; animation: circle-b-t69jbd7kj0 420ms ease-out forwards; }
.check-mark[b-t69jbd7kj0] { stroke-dasharray: 40; stroke-dashoffset: 40; animation: check-b-t69jbd7kj0 360ms 220ms ease-out forwards; }
@keyframes circle-b-t69jbd7kj0 { to { stroke-dashoffset: 0; } }
@keyframes check-b-t69jbd7kj0 { to { stroke-dashoffset: 0; } }
@keyframes pop-b-t69jbd7kj0 { 0% { transform: scale(.6) rotate(-10deg); opacity:0; } 60% { transform: scale(1.05) rotate(3deg); opacity:1; } 100% { transform: scale(1) rotate(0); } }
/* confetti */
.confetti[b-t69jbd7kj0] { position:absolute; inset:0; pointer-events:none; }
.confetti span[b-t69jbd7kj0] { position:absolute; width:8px; height:12px; background:#1976d2; opacity:0; transform:translateY(0) rotate(0); border-radius:2px; }
.confetti span:nth-child(1)[b-t69jbd7kj0] { left:10%; top:10%; background:#ffca28; animation: confetti-1-b-t69jbd7kj0 900ms forwards; }
.confetti span:nth-child(2)[b-t69jbd7kj0] { left:30%; top:5%; background:#ff7043; animation: confetti-2-b-t69jbd7kj0 1000ms 60ms forwards; }
.confetti span:nth-child(3)[b-t69jbd7kj0] { left:50%; top:12%; background:#66bb6a; animation: confetti-3-b-t69jbd7kj0 920ms 120ms forwards; }
.confetti span:nth-child(4)[b-t69jbd7kj0] { left:70%; top:8%; background:#29b6f6; animation: confetti-4-b-t69jbd7kj0 980ms 30ms forwards; }
.confetti span:nth-child(5)[b-t69jbd7kj0] { left:88%; top:14%; background:#ab47bc; animation: confetti-5-b-t69jbd7kj0 860ms 140ms forwards; }
@keyframes confetti-1-b-t69jbd7kj0 { 0% { opacity:1; transform: translateY(0) rotate(0); } 100% { opacity:0; transform: translateY(-80px) rotate(200deg); } }
@keyframes confetti-2-b-t69jbd7kj0 { 0% { opacity:1; transform: translateY(0) rotate(0); } 100% { opacity:0; transform: translateY(-100px) rotate(260deg); } }
@keyframes confetti-3-b-t69jbd7kj0 { 0% { opacity:1; transform: translateY(0) rotate(0); } 100% { opacity:0; transform: translateY(-60px) rotate(-200deg); } }
@keyframes confetti-4-b-t69jbd7kj0 { 0% { opacity:1; transform: translateY(0) rotate(0); } 100% { opacity:0; transform: translateY(-90px) rotate(-120deg); } }
@keyframes confetti-5-b-t69jbd7kj0 { 0% { opacity:1; transform: translateY(0) rotate(0); } 100% { opacity:0; transform: translateY(-110px) rotate(320deg); } }
/* /Components/Identity/Confirm.razor.rz.scp.css */
.confirm-wrapper[b-ycogigvt06] { display:flex; justify-content:center; }
.confirm-row[b-ycogigvt06] { display:flex; gap:12px; align-items:center; }
.celebration[b-ycogigvt06] { position:relative; width:64px; height:64px; display:flex; align-items:center; justify-content:center; }
.check[b-ycogigvt06] { width:56px; height:56px; transform-origin:center; animation: pop-b-ycogigvt06 520ms cubic-bezier(.2,.8,.2,1) forwards; }
.check-circle[b-ycogigvt06] { stroke-dasharray: 157; stroke-dashoffset: 157; animation: circle-b-ycogigvt06 420ms ease-out forwards; }
.check-mark[b-ycogigvt06] { stroke-dasharray: 40; stroke-dashoffset: 40; animation: check-b-ycogigvt06 360ms 220ms ease-out forwards; }
@keyframes circle-b-ycogigvt06 { to { stroke-dashoffset: 0; } }
@keyframes check-b-ycogigvt06 { to { stroke-dashoffset: 0; } }
@keyframes pop-b-ycogigvt06 { 0% { transform: scale(.6) rotate(-10deg); opacity:0; } 60% { transform: scale(1.05) rotate(3deg); opacity:1; } 100% { transform: scale(1) rotate(0); } }
/* confetti */
.confetti[b-ycogigvt06] { position:absolute; inset:0; pointer-events:none; }
.confetti span[b-ycogigvt06] { position:absolute; width:8px; height:12px; background:#1976d2; opacity:0; transform:translateY(0) rotate(0); border-radius:2px; }
.confetti span:nth-child(1)[b-ycogigvt06] { left:10%; top:10%; background:#ffca28; animation: confetti-1-b-ycogigvt06 900ms forwards; }
.confetti span:nth-child(2)[b-ycogigvt06] { left:30%; top:5%; background:#ff7043; animation: confetti-2-b-ycogigvt06 1000ms 60ms forwards; }
.confetti span:nth-child(3)[b-ycogigvt06] { left:50%; top:12%; background:#66bb6a; animation: confetti-3-b-ycogigvt06 920ms 120ms forwards; }
.confetti span:nth-child(4)[b-ycogigvt06] { left:70%; top:8%; background:#29b6f6; animation: confetti-4-b-ycogigvt06 980ms 30ms forwards; }
.confetti span:nth-child(5)[b-ycogigvt06] { left:88%; top:14%; background:#ab47bc; animation: confetti-5-b-ycogigvt06 860ms 140ms forwards; }
@keyframes confetti-1-b-ycogigvt06 { 0% { opacity:1; transform: translateY(0) rotate(0); } 100% { opacity:0; transform: translateY(-80px) rotate(200deg); } }
@keyframes confetti-2-b-ycogigvt06 { 0% { opacity:1; transform: translateY(0) rotate(0); } 100% { opacity:0; transform: translateY(-100px) rotate(260deg); } }
@keyframes confetti-3-b-ycogigvt06 { 0% { opacity:1; transform: translateY(0) rotate(0); } 100% { opacity:0; transform: translateY(-60px) rotate(-200deg); } }
@keyframes confetti-4-b-ycogigvt06 { 0% { opacity:1; transform: translateY(0) rotate(0); } 100% { opacity:0; transform: translateY(-90px) rotate(-120deg); } }
@keyframes confetti-5-b-ycogigvt06 { 0% { opacity:1; transform: translateY(0) rotate(0); } 100% { opacity:0; transform: translateY(-110px) rotate(320deg); } }
/* /Components/Loader.razor.rz.scp.css */
/* src/Client/Components/Loader.razor.css */
.loader-root[b-adb8o13eme] { display: inline-block; } /* Spinner */
.animated-spinner[b-adb8o13eme] { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:6px; }
.circular-progress[b-adb8o13eme] { width:96px; height:96px; overflow:visible; }
.cp-bg[b-adb8o13eme] {
    stroke: color-mix(
            in srgb,
            var(--mud-palette-secondary) 12%,
            transparent
    );
}
.cp-arc[b-adb8o13eme] {
    stroke: var(--mud-palette-secondary);
}

.cp-arc[b-adb8o13eme] { transform-origin: 50% 50%; animation: arc-rotate-b-adb8o13eme 1.4s linear infinite, arc-dash-b-adb8o13eme 1.6s ease-in-out infinite; }
.orbit[b-adb8o13eme] { transform-origin: 50% 50%; animation: orbit-rotate-b-adb8o13eme 2.2s linear infinite; }
.o-dot[b-adb8o13eme] { fill: var(--mud-palette-primary);
    opacity: 0.95; }
.o1[b-adb8o13eme] { animation: o-scale-b-adb8o13eme 1.6s ease-in-out infinite 0s; }
.o2[b-adb8o13eme] { animation: o-scale-b-adb8o13eme 1.6s ease-in-out infinite 0.12s; }
.o3[b-adb8o13eme] { animation: o-scale-b-adb8o13eme 1.6s ease-in-out infinite 0.24s; }

@keyframes arc-rotate-b-adb8o13eme { to { transform: rotate(360deg); } }
@keyframes orbit-rotate-b-adb8o13eme { to { transform: rotate(-360deg); } }
@keyframes arc-dash-b-adb8o13eme {
    0% { stroke-dasharray: 1,260; stroke-dashoffset: 0; }
    50% { stroke-dasharray: 180,260; stroke-dashoffset: -40; }
    100% { stroke-dasharray: 1,260; stroke-dashoffset: -160; }
}
@keyframes core-pulse-b-adb8o13eme {
    0% { transform: scale(1); opacity:0.04; }
    50% { transform: scale(0.9); opacity:0.08; }
    100% { transform: scale(1); opacity:0.04; }
}
@keyframes o-scale-b-adb8o13eme {
    0%, 80%, 100% { transform: scale(1); opacity:0.9; }
    40% { transform: scale(1.6); opacity:1; }
}

/* Container that wraps the area where loader should be centered.
   Keep this on the parent element (the element you want to center inside). */
.loader-container[b-adb8o13eme] { position: relative; }

/* OVERLAY ЛОАДЕРА */ 
.loader-embedded[b-adb8o13eme] 
{
    min-height: 100vh;
    position: relative; 
    inset: 0; 
    display: flex; 
    flex: 1; 
    align-items: center; 
    justify-content: center; 
    z-index: 10; 
    pointer-events: all; 
    
} /* make sure the spinner itself doesn't stretch */ 
.loader-fullscreen .animated-spinner[b-adb8o13eme] { background: transparent; }
/* /Components/NavMenu.razor.rz.scp.css */
.navbar-toggler[b-ro66dc7bde] {
    background-color: rgba(255, 255, 255, 0.1);
}

.top-row[b-ro66dc7bde] {
    height: 3.5rem;
    background-color: rgba(0,0,0,0.4);
}

.navbar-brand[b-ro66dc7bde] {
    font-size: 1.1rem;
}

.bi[b-ro66dc7bde] {
    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-ro66dc7bde] {
    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-ro66dc7bde] {
    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-ro66dc7bde] {
    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-ro66dc7bde] {
    font-size: 0.9rem;
    padding-bottom: 0.5rem;
}

    .nav-item:first-of-type[b-ro66dc7bde] {
        padding-top: 1rem;
    }

    .nav-item:last-of-type[b-ro66dc7bde] {
        padding-bottom: 1rem;
    }

    .nav-item[b-ro66dc7bde]  a {
        color: #d7d7d7;
        border-radius: 4px;
        height: 3rem;
        display: flex;
        align-items: center;
        line-height: 3rem;
    }

.nav-item[b-ro66dc7bde]  a.active {
    background-color: rgba(255,255,255,0.37);
    color: white;
}

.nav-item[b-ro66dc7bde]  a:hover {
    background-color: rgba(255,255,255,0.1);
    color: white;
}

@media (min-width: 641px) {
    .navbar-toggler[b-ro66dc7bde] {
        display: none;
    }

    .collapse[b-ro66dc7bde] {
        /* Never collapse the sidebar for wide screens */
        display: block;
    }
    
    .nav-scrollable[b-ro66dc7bde] {
        /* Allow sidebar to scroll for tall menus */
        height: calc(100vh - 3.5rem);
        overflow-y: auto;
    }
}
/* /Components/Tools/FacilitySelector.razor.rz.scp.css */
.facility-selector[b-4bjppvqjc0]  .mud-input.mud-input-text {
    align-items: center;
}

.facility-selector[b-4bjppvqjc0]  .mud-select-input {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.facility-selector[b-4bjppvqjc0]  .mud-input-adornment {
    margin: 0 !important;
}

.facility-selector[b-4bjppvqjc0]  .mud-input-slot,
.facility-selector[b-4bjppvqjc0]  .mud-input-root {
    display: flex;
    align-items: center;
}

.facility-selector[b-4bjppvqjc0]  .mud-input-underline::before,
.facility-selector[b-4bjppvqjc0]  .mud-input-underline::after {
    border-bottom: none !important;
}

.facility-selector[b-4bjppvqjc0]  .select-input {
    color: var(--mud-palette-primary-text) !important;
}
/* /Components/Tools/SearchComponent.razor.rz.scp.css */
.search-component[b-n1hjavxs3i]  .search-selects {
    flex-shrink: 0;
}

.search-component[b-n1hjavxs3i]  .search-select {
    flex: 1 1 auto;
    min-width: 10rem;
}

.search-component[b-n1hjavxs3i]  .search-daterange {
    max-width: 20rem;
    flex: 1 1 auto;
}

@media (max-width: 780px) {
    .search-component[b-n1hjavxs3i]  .search-selects {
        width: 100%;
        min-width: 0;
        overflow: hidden;
    }

    .search-component[b-n1hjavxs3i]  .search-select {
        min-width: 0;
    }

    .search-component[b-n1hjavxs3i]  .search-select-outer {
        min-width: 0;
        overflow: hidden;
    }

    .search-component[b-n1hjavxs3i]  .search-select div.mud-input-slot {
        display: block !important;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .search-component[b-n1hjavxs3i]  .search-daterange {
        max-width: 100% !important;
        width: 100%;
    }
}
/* /Components/Tools/TableSearch.razor.rz.scp.css */
.search-input[b-6py3es2tgk] {
    max-width: 20rem;
    padding-left: 1rem;
}

@media (max-width: 600px) {
    .search-input[b-6py3es2tgk] {
        max-width: 100%;
        flex-grow: 1;
        padding-left: 0;
    }
}
/* /Components/Tools/TimeSelectPicker.razor.rz.scp.css */
[b-90c5w8tcds] .time-picker-error {
    outline: 2px solid var(--mud-palette-error);
    border-radius: 4px;
    padding: 2px;
}
/* /Components/User/Bookings/BookingCard.razor.rz.scp.css */
/* Status chip: remove extra SVG margin */
.booking-card-root[b-xiwiev42aq]  .centered-chip svg {
    margin: 0;
}

/* Card inner: two stacked rows */
[b-xiwiev42aq] .bc-inner {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

/* Row 1 – time / name / phone wrap freely */
[b-xiwiev42aq] .bc-info {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 4px;
    row-gap: 2px;
}

[b-xiwiev42aq] .bc-time {
    font-weight: bold;
    white-space: nowrap;
    flex-shrink: 0;
}

[b-xiwiev42aq] .bc-name {
    /* allow truncation on very narrow containers, but prefer wrapping */
    overflow-wrap: break-word;
    word-break: break-word;
    min-width: 0;
}

[b-xiwiev42aq] .bc-phone {
    white-space: nowrap;
    flex-shrink: 0;
    opacity: 0.75;
}

/* Row 2 – chips on left, button+status on right */
[b-xiwiev42aq] .bc-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 4px;
}

[b-xiwiev42aq] .bc-chips {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 4px;
    flex: 1 1 auto;
    min-width: 0;
}

[b-xiwiev42aq] .bc-status {
    display: flex;
    align-items: center;
    gap: 4px;
    flex-shrink: 0;
}

/* Row 3 – delayed items warning row */
[b-xiwiev42aq] .bc-delayed-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 4px;
    margin-top: 2px;
}

[b-xiwiev42aq] .bc-delayed-icon {
    color: var(--mud-palette-warning-darken);
    font-size: 1rem;
    flex-shrink: 0;
}

[b-xiwiev42aq] .bc-delayed-chip {
    border-color: var(--mud-palette-warning);
    color: var(--mud-palette-warning-darken);
    font-size: 0.7rem;
}

/* /Components/User/Bookings/BookingsCalendar.razor.rz.scp.css */
.calendar-root[b-umuch6wekq] {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 500px;
}

[b-umuch6wekq] .calendar-paper {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 500px;
    padding: 0.5rem;
    gap: 0.5rem;
}

.calendar-header[b-umuch6wekq] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    flex-wrap: wrap;
}

[b-umuch6wekq] .mud-toggle-item-size-small{
    padding-left: 0.75rem;
    padding-right: 0.75rem;
}

.calendar-period-label[b-umuch6wekq] {
    min-width: 8rem;
    text-align: center;
    font-weight: 600;
    text-transform: capitalize;
}

.calendar-body[b-umuch6wekq] {
    flex: 1;
    min-height: 0;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

@media (max-width: 599.98px) {
    .calendar-period-label[b-umuch6wekq] {
        min-width: unset;
        font-size: 0.875rem;
    }
}
/* /Components/User/Bookings/BookingsCalendarDayView.razor.rz.scp.css */
.day-empty[b-hi50bkck9x] {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
}

.day-timeline-scroll[b-hi50bkck9x] {
    flex: 1;
    overflow: auto;
}

.day-timeline[b-hi50bkck9x] {
    --lane-width: 9em;
    position: relative;
    margin-left: 3.5rem;
    padding-right: 0.25rem;
    min-width: calc(var(--max-lanes, 1) * var(--lane-width));
}

.hour-row[b-hi50bkck9x] {
    position: absolute;
    left: 0;
    right: 0;
    height: 60px;
}

.hour-label[b-hi50bkck9x] {
    position: absolute;
    left: -3.5rem;
    width: 3rem;
    text-align: right;
    font-size: 0.75rem;
    color: var(--mud-palette-text-secondary);
}

.hour-line[b-hi50bkck9x] {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    border-top: 1px solid var(--mud-palette-divider);
}

.day-events[b-hi50bkck9x] {
    position: absolute;
    inset: 0;
    pointer-events: none;
}

.booking-block[b-hi50bkck9x] {
    position: absolute;
    pointer-events: auto;
    width: calc(var(--lane-width) - 8px);
    left: calc(var(--lane, 0) * var(--lane-width) + 4px);
    background: var(--mud-palette-surface);
    border-radius: 4px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12);
    padding: 0.25rem 0.5rem;
    overflow: hidden;
    cursor: pointer;
    font-size: 0.8125rem;
    line-height: 1.2;
    transition: box-shadow 0.15s ease;
}

.booking-block:hover[b-hi50bkck9x] {
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
}

.booking-block-time[b-hi50bkck9x] {
    font-weight: 600;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.booking-block-name[b-hi50bkck9x] {
    color: var(--mud-palette-text-secondary);
    word-break: break-word;
    overflow-wrap: anywhere;
}

.booking-block-delayed[b-hi50bkck9x] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 3px;
    margin-top: 2px;
    font-size: 0.7rem;
    line-height: 1.1;
}

.booking-block-delayed .delayed-icon[b-hi50bkck9x] {
    color: var(--mud-palette-warning-darken, #e65100);
    flex-shrink: 0;
}

.booking-block-delayed .delayed-badge[b-hi50bkck9x] {
    background: rgba(244, 67, 54, 0.12);
    border: 1px solid rgba(244, 67, 54, 0.35);
    border-radius: 3px;
    padding: 0 3px;
    color: var(--mud-palette-error-darken, #b71c1c);
    white-space: nowrap;
}

/* /Components/User/Bookings/BookingsCalendarMonthView.razor.rz.scp.css */
.month-grid[b-ysbm6ud3o2] {
    flex: 1;
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    grid-auto-rows: minmax(0, 1fr);
    gap: 0.125rem;
    overflow: auto;
}

.month-dow[b-ysbm6ud3o2] {
    font-size: 0.75rem;
    text-transform: uppercase;
    color: var(--mud-palette-text-secondary);
    text-align: center;
    padding: 0.25rem 0;
    border-bottom: 1px solid var(--mud-palette-divider);
}

.month-cell[b-ysbm6ud3o2] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.125rem;
    padding: 0.25rem 0.375rem;
    border: 1px solid var(--mud-palette-divider);
    border-radius: 3px;
    cursor: pointer;
    background: var(--mud-palette-surface);
    transition: background 0.15s ease;
    min-height: 3rem;
    overflow: hidden;
}

.month-cell:hover[b-ysbm6ud3o2] {
    background: var(--mud-palette-action-default-hover);
}

.month-cell.is-outside[b-ysbm6ud3o2] {
    opacity: 0.4;
}

.month-cell.is-today[b-ysbm6ud3o2] {
    border-color: var(--mud-palette-primary);
}

.month-cell.is-selected[b-ysbm6ud3o2] {
    background: var(--mud-palette-primary-hover);
    border-color: var(--mud-palette-primary);
}

.month-cell-date[b-ysbm6ud3o2] {
    font-weight: 600;
    font-size: 0.875rem;
}

.month-cell-count[b-ysbm6ud3o2] {
    font-size: 0.75rem;
    color: var(--mud-palette-text-secondary);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
}
/* /Components/User/Bookings/BookingsCalendarWeekView.razor.rz.scp.css */
.week-grid[b-efdsxft0s9] {
    flex: 1;
    display: grid;
    gap: 0.25rem;
    overflow: auto;
}

.week-grid-cols[b-efdsxft0s9] {
    grid-template-columns: repeat(7, 1fr);
    grid-auto-rows: 1fr;
}

.week-grid-rows[b-efdsxft0s9] {
    grid-template-columns: 1fr;
    grid-auto-rows: minmax(3rem, auto);
}

.week-cell[b-efdsxft0s9] {
    display: flex;
    flex-direction: column;
    border: 1px solid var(--mud-palette-divider);
    border-radius: 4px;
    padding: 0.5rem;
    cursor: pointer;
    transition: background 0.15s ease, border-color 0.15s ease;
    background: var(--mud-palette-surface);
    min-height: 4rem;
}

.week-grid-rows .week-cell[b-efdsxft0s9] {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    min-height: unset;
}

.week-cell:hover[b-efdsxft0s9] {
    background: var(--mud-palette-action-default-hover);
}

.week-cell.is-today[b-efdsxft0s9] {
    border-color: var(--mud-palette-primary);
}

.week-cell.is-selected[b-efdsxft0s9] {
    background: var(--mud-palette-primary-hover);
    border-color: var(--mud-palette-primary);
}

.week-cell-header[b-efdsxft0s9] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.125rem;
}

.week-grid-rows .week-cell-header[b-efdsxft0s9] {
    flex-direction: row;
    align-items: baseline;
    gap: 0.5rem;
}

.week-cell-dow[b-efdsxft0s9] {
    font-size: 0.75rem;
    color: var(--mud-palette-text-secondary);
    text-transform: uppercase;
}

.week-cell-date[b-efdsxft0s9] {
    font-size: 1.25rem;
    font-weight: 600;
}

.week-cell-count[b-efdsxft0s9] {
    margin-top: auto;
    font-size: 0.875rem;
    color: var(--mud-palette-text-secondary);
}

.week-grid-rows .week-cell-count[b-efdsxft0s9] {
    margin-top: 0;
}
/* /Layout/AppLayout.razor.rz.scp.css */
.page[b-gci4v8dvp9] {
    position: relative;
    display: flex;
    flex-direction: column;
}

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

.navigation[b-gci4v8dvp9] {
    background-image: linear-gradient(180deg, #4cf216 0%, #061701 70%);
}

.top-row[b-gci4v8dvp9] {
    background-color: #132e0b;
    border-bottom: 1px solid #d6d5d5;
    justify-content: flex-end;
    height: 3.5rem;
    display: flex;
    align-items: center;
    color: white;
}

    .top-row[b-gci4v8dvp9]  a, .top-row[b-gci4v8dvp9]  .btn-link {
        white-space: nowrap;
        margin-left: 1.5rem;
        text-decoration: none;
    }

    .top-row[b-gci4v8dvp9]  a:hover, .top-row[b-gci4v8dvp9]  .btn-link:hover {
        text-decoration: underline;
    }

    .top-row[b-gci4v8dvp9]  a:first-child {
        overflow: hidden;
        text-overflow: ellipsis;
    }

@media (max-width: 640.98px) {
    .top-row[b-gci4v8dvp9] {
        justify-content: space-between;
    }

    .top-row[b-gci4v8dvp9]  a, .top-row[b-gci4v8dvp9]  .btn-link {
        margin-left: 0;
    }
}

.tenant-name[b-gci4v8dvp9] {
    min-width: 0;
    overflow: hidden;
    white-space: nowrap;
    position: relative;
    padding-right: 2em;
}

.tenant-name[b-gci4v8dvp9]::after {
    content: '';
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    width: 2em;
    background: linear-gradient(to right, transparent, var(--mud-palette-primary));
    pointer-events: none;
}

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

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

    .top-row[b-gci4v8dvp9] {
        position: sticky;
        top: 0;
        z-index: 1;
    }

    .top-row.auth[b-gci4v8dvp9]  a:first-child {
        flex: 1;
        text-align: right;
        width: 0;
    }

    .top-row[b-gci4v8dvp9], article[b-gci4v8dvp9] {
        padding-left: 2rem !important;
        padding-right: 1.5rem !important;
    }
}
/* /Layout/LoginLayout.razor.rz.scp.css */
.centered-layout[b-eqjawluujv] {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100vh;
}

.centered-layout[b-eqjawluujv]  .mud-input-outlined {
    background: white;
    border-radius: 4px; /* Match MudBlazor's default radius */
}

.centered-layout[b-eqjawluujv]  .mud-input-outlined-border {
    border-radius: 4px; /* Ensure border matches */
}
/* /Pages/Common/Stats/CurrentRentalState.razor.rz.scp.css */
[b-s039nskhd4] .mud-table-cell {
    text-align: center !important;
}
/* /Pages/User/Bookings/BookingDialog.razor.rz.scp.css */
.booking-dialog-actions[b-hykbiiz0hq] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    padding: 8px 16px;
}

.booking-dialog-primary-actions[b-hykbiiz0hq] {
    display: flex;
    gap: 8px;
}

@media (max-width: 600px) {
    .booking-dialog-actions[b-hykbiiz0hq] {
        flex-direction: column;
        align-items: stretch;
        gap: 12px;
    }

    .booking-dialog-primary-actions[b-hykbiiz0hq] {
        width: 100%;
    }

    .booking-dialog-primary-actions[b-hykbiiz0hq]  .mud-button-root {
        flex: 1 1 0;
        min-width: 0;
    }
}
/* /Pages/User/Bookings/FinalizeBookingDialog.razor.rz.scp.css */
.price-summary[b-vjrn9k8y2g] {
    display: flex;
    flex-direction: row;
    align-items: baseline;
    justify-content: space-around;
}

.price-summary-item[b-vjrn9k8y2g] {
    display: grid;
}

@media (max-width: 600px) {
    .price-summary[b-vjrn9k8y2g] {
        flex-direction: column;
        align-items: stretch;
        gap: 12px;
    }

    .price-summary-item[b-vjrn9k8y2g] {
        grid-template-columns: 1fr auto;
        align-items: center;
        gap: 12px;
    }
}

.members-table[b-vjrn9k8y2g]  .mud-table-cell,
.members-table[b-vjrn9k8y2g]  .mud-table-head .mud-table-cell {
    font-size: 0.75rem;
    padding-left: 8px;
    padding-right: 8px;
}

.members-table[b-vjrn9k8y2g]  .mud-chip {
    font-size: 0.7rem;
    height: 22px;
}
/* /Pages/User/OrderLog/DayStatsPanel.razor.rz.scp.css */
[b-8cc9ai6d2z] .mud-tab-panel {
    width: 100%;
}
/* /Pages/User/Settings/ClientSettings.razor.rz.scp.css */
/*
 * Left-column sidebar: flex column so Save button always sits below the panels.
 * The scroll is handled inside RentalSettings (.rental-scroll).
 */
.settings-sidebar[b-re6le21wy2] {
    display: flex;
    flex-direction: column;
}

/* MudButton is a child component — its root doesn't get the scope attribute,
   so use ::deep. Prevent the flex column from stretching the button. */
.settings-sidebar[b-re6le21wy2]  .mud-button-root {
    align-self: flex-start;
}
/* /Pages/User/Settings/RentalSettings.razor.rz.scp.css */
/* Scroll is contained here so that the outer MudExpansionPanels elevation/shadow
   is never clipped by overflow:auto on a parent wrapper.
   Offset ≈ 22rem:
     dense AppBar (3rem) + py-4 padding (2rem) + MudTabs + mt-4 (4rem)
     + two expansion-panel headers (6rem) + Save button + mt-4 (5rem) + inner padding (2rem) */
.rental-scroll[b-z9p9rhpeya] {
    overflow-y: auto;
    max-height: calc(100dvh - 22rem);
    padding-right: 6px; /* breathing room so scrollbar doesn't overlay content */
}

.rental-settings[b-z9p9rhpeya]  .self-start {
    align-self: start;
}

.rental-settings[b-z9p9rhpeya]  .nowrap {
    text-wrap-mode: nowrap;
}
/* /Pages/User/Settings/WorkScheduleEditor.razor.rz.scp.css */
.schedule-table[b-a38igu1yy8]  th.mud-table-cell {
    padding: 6px 8px;
    font-size: 0.8rem;
    border-right: 1px solid rgba(0,0,0,0.12);
}

.schedule-table[b-a38igu1yy8]  th.mud-table-cell:last-child {
    border-right: none;
}

.schedule-table[b-a38igu1yy8]  td.mud-table-cell {
    padding: 3px 6px;
    border-right: 1px solid rgba(0,0,0,0.12);
}

.schedule-table[b-a38igu1yy8]  td.mud-table-cell:last-child {
    border-right: none;
}

.schedule-table[b-a38igu1yy8]  .mud-select {
    margin: 0;
}

.schedule-table[b-a38igu1yy8]  .mud-input-root {
    padding-right: 24px; /* room for dropdown arrow */
}
