/* /Components/Account/Pages/ChangePasswordRequired.razor.rz.scp.css */
.password-page[b-bpifjhoabp] {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: calc(100vh - 100px);
    padding: 4rem 1.5rem;
}

.password-card[b-bpifjhoabp] {
    width: 100%;
    max-width: 560px;
    padding: 3rem;
    background: #fffdf9;
    border: 1px solid #dfd4c8;
    border-radius: 26px;
}

.password-heading[b-bpifjhoabp] {
    margin-bottom: 2rem;
}

.eyebrow[b-bpifjhoabp] {
    margin: 0 0 0.7rem;
    color: #9a6b45;
    font-size: 0.66rem;
    font-weight: 900;
    letter-spacing: 0.17em;
    text-transform: uppercase;
}

.password-heading h1[b-bpifjhoabp] {
    margin: 0;
    color: #292321;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2.5rem, 7vw, 4rem);
    font-weight: 500;
    letter-spacing: -0.05em;
    line-height: 1;
}

.password-heading p[b-bpifjhoabp] {
    margin: 1rem 0 0;
    color: #786a62;
    font-size: 0.82rem;
    line-height: 1.65;
}

.form-field[b-bpifjhoabp] {
    display: flex;
    flex-direction: column;
    gap: 0.45rem;
    margin-bottom: 1rem;
}

    .form-field label[b-bpifjhoabp] {
        color: #5d5049;
        font-size: 0.7rem;
        font-weight: 850;
    }

    .form-field input[b-bpifjhoabp] {
        min-height: 50px;
        padding: 0 0.9rem;
        background: #fbf8f4;
        border: 1px solid #d8ccc0;
        border-radius: 10px;
        color: #332a26;
        font: inherit;
    }

        .form-field input:focus[b-bpifjhoabp] {
            border-color: #9a6b45;
            outline: none;
            box-shadow: 0 0 0 3px rgba(154, 107, 69, 0.1);
        }

.password-requirements[b-bpifjhoabp] {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
    margin: 1.5rem 0;
    padding: 1rem;
    background: #f5eee6;
    border-radius: 12px;
}

    .password-requirements strong[b-bpifjhoabp] {
        color: #4e4038;
        font-size: 0.72rem;
    }

    .password-requirements span[b-bpifjhoabp] {
        color: #887970;
        font-size: 0.68rem;
        line-height: 1.5;
    }

.change-button[b-bpifjhoabp] {
    width: 100%;
    min-height: 50px;
    background: #292321;
    border: 0;
    border-radius: 999px;
    color: white;
    font: inherit;
    font-size: 0.78rem;
    font-weight: 850;
    cursor: pointer;
}

    .change-button:hover:not(:disabled)[b-bpifjhoabp] {
        background: #9a6b45;
    }

    .change-button:disabled[b-bpifjhoabp] {
        opacity: 0.5;
        cursor: wait;
    }

.message[b-bpifjhoabp] {
    margin-bottom: 1rem;
    padding: 1rem;
    background: #f5eee6;
    border-radius: 10px;
    color: #786a62;
    font-size: 0.76rem;
}

    .message.error[b-bpifjhoabp] {
        background: #fff0ed;
        border: 1px solid #e5bbb4;
        color: #8b4239;
    }

@media (max-width: 600px) {
    .password-page[b-bpifjhoabp] {
        align-items: flex-start;
        padding: 2rem 1rem;
    }

    .password-card[b-bpifjhoabp] {
        padding: 2rem 1.3rem;
    }
}
/* /Components/Account/Pages/Login.razor.rz.scp.css */
.login-page[b-f7k8eykk7u] {
    min-height: calc(100vh - 82px);
    padding: 4rem 2rem;
    background: radial-gradient(circle at 12% 15%, rgba(201, 145, 88, 0.10), transparent 28%), #f6f0e7;
}

.login-shell[b-f7k8eykk7u] {
    display: grid;
    grid-template-columns: minmax(420px, 0.85fr) minmax(500px, 1.15fr);
    max-width: 1180px;
    min-height: 680px;
    margin: 0 auto;
    overflow: hidden;
    background: white;
    border: 1px solid rgba(83, 63, 49, 0.10);
    border-radius: 30px;
    box-shadow: 0 30px 80px rgba(54, 39, 29, 0.10), 0 4px 12px rgba(54, 39, 29, 0.04);
}

.login-panel[b-f7k8eykk7u] {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 4rem 4.5rem;
}

.login-brand[b-f7k8eykk7u] {
    display: flex;
    align-items: center;
    gap: 0.8rem;
    width: fit-content;
    margin-bottom: 3.5rem;
    color: #292321;
    text-decoration: none;
}

    .login-brand img[b-f7k8eykk7u] {
        width: 58px;
        height: 58px;
        object-fit: contain;
        border-radius: 50%;
    }

    .login-brand > span[b-f7k8eykk7u] {
        display: flex;
        flex-direction: column;
    }

    .login-brand strong[b-f7k8eykk7u] {
        font-size: 1.05rem;
        font-weight: 800;
    }

    .login-brand small[b-f7k8eykk7u] {
        margin-top: 0.3rem;
        color: #9a6b45;
        font-size: 0.56rem;
        font-weight: 800;
        letter-spacing: 0.22em;
    }

.eyebrow[b-f7k8eykk7u] {
    margin: 0 0 0.8rem;
    color: #aa7547;
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.login-heading h1[b-f7k8eykk7u] {
    margin: 0;
    color: #292321;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(3rem, 5vw, 4.5rem);
    font-weight: 600;
    letter-spacing: -0.05em;
    line-height: 0.95;
}

.login-heading > p:last-child[b-f7k8eykk7u] {
    max-width: 470px;
    margin: 1.4rem 0 2.5rem;
    color: #756860;
    font-size: 1rem;
    line-height: 1.65;
}

.login-error[b-f7k8eykk7u] {
    margin-bottom: 1.4rem;
    padding: 0.9rem 1rem;
    background: #f6e4e0;
    border-left: 4px solid #a35c4e;
    border-radius: 10px;
    color: #773b32;
    font-size: 0.9rem;
    font-weight: 650;
}

.form-field[b-f7k8eykk7u] {
    display: flex;
    flex-direction: column;
    gap: 0.45rem;
    margin-bottom: 1.25rem;
}

    .form-field label[b-f7k8eykk7u] {
        color: #3d332e;
        font-size: 0.82rem;
        font-weight: 800;
    }

    .form-field input[b-f7k8eykk7u] {
        width: 100%;
        height: 54px;
        padding: 0 1rem;
        box-sizing: border-box;
        background: #fbf9f6;
        border: 1px solid #ddd1c4;
        border-radius: 12px;
        color: #292321;
        font: inherit;
        outline: none;
        transition: border-color 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
    }

        .form-field input:focus[b-f7k8eykk7u] {
            background: white;
            border-color: #a9784d;
            box-shadow: 0 0 0 4px rgba(169, 120, 77, 0.10);
        }

        .form-field input[b-f7k8eykk7u]::placeholder {
            color: #aaa09a;
        }

[b-f7k8eykk7u] .validation-message {
    color: #a54d41;
    font-size: 0.78rem;
}

.login-options[b-f7k8eykk7u] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 0.25rem 0 1.5rem;
}

.remember-option[b-f7k8eykk7u] {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    color: #685c55;
    font-size: 0.87rem;
    cursor: pointer;
}

    .remember-option input[b-f7k8eykk7u] {
        width: 17px;
        height: 17px;
        accent-color: #292321;
    }

.login-button[b-f7k8eykk7u] {
    width: 100%;
    height: 54px;
    border: 0;
    border-radius: 999px;
    background: #292321;
    color: white;
    font: inherit;
    font-size: 0.95rem;
    font-weight: 800;
    cursor: pointer;
    transition: transform 0.15s ease, background 0.15s ease;
}

    .login-button:hover[b-f7k8eykk7u] {
        background: #3a312d;
        transform: translateY(-1px);
    }

.back-home[b-f7k8eykk7u] {
    width: fit-content;
    margin-top: 2rem;
    color: #8d653f;
    font-size: 0.85rem;
    font-weight: 700;
    text-decoration: none;
}

    .back-home:hover[b-f7k8eykk7u] {
        text-decoration: underline;
    }

.login-image[b-f7k8eykk7u] {
    position: relative;
    min-height: 680px;
    overflow: hidden;
}

    .login-image img[b-f7k8eykk7u] {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .login-image[b-f7k8eykk7u]::before {
        position: absolute;
        z-index: 1;
        inset: 0;
        background: linear-gradient(to right, rgba(41, 35, 33, 0.12), transparent 35%), linear-gradient(to top, rgba(33, 26, 22, 0.82), transparent 55%);
        content: "";
    }

.login-image-overlay[b-f7k8eykk7u] {
    position: absolute;
    z-index: 2;
    right: 3.5rem;
    bottom: 3.5rem;
    left: 3.5rem;
    color: white;
}

    .login-image-overlay p[b-f7k8eykk7u] {
        margin: 0 0 0.8rem;
        color: #e0b17f;
        font-size: 0.72rem;
        font-weight: 900;
        letter-spacing: 0.2em;
    }

    .login-image-overlay h2[b-f7k8eykk7u] {
        margin: 0;
        font-family: Georgia, "Times New Roman", serif;
        font-size: clamp(3rem, 5vw, 5rem);
        font-weight: 500;
        letter-spacing: -0.05em;
        line-height: 0.92;
    }

@media (max-width: 950px) {
    .login-shell[b-f7k8eykk7u] {
        grid-template-columns: 1fr;
        max-width: 650px;
    }

    .login-panel[b-f7k8eykk7u] {
        padding: 3.5rem;
    }

    .login-image[b-f7k8eykk7u] {
        min-height: 420px;
    }
}

@media (max-width: 600px) {
    .login-page[b-f7k8eykk7u] {
        padding: 1.5rem 1rem 3rem;
    }

    .login-shell[b-f7k8eykk7u] {
        border-radius: 20px;
    }

    .login-panel[b-f7k8eykk7u] {
        padding: 2rem 1.4rem 2.5rem;
    }

    .login-brand[b-f7k8eykk7u] {
        margin-bottom: 2.5rem;
    }

    .login-image[b-f7k8eykk7u] {
        min-height: 300px;
    }

    .login-image-overlay[b-f7k8eykk7u] {
        right: 1.5rem;
        bottom: 1.5rem;
        left: 1.5rem;
    }

        .login-image-overlay h2[b-f7k8eykk7u] {
            font-size: 3rem;
        }
}
/* /Components/Layout/MainLayout.razor.rz.scp.css */
.site-layout[b-u51ckisugx] {
    min-height: 100vh;
    background: #f6f0e7;
    color: #292321;
}

.site-header[b-u51ckisugx] {
    position: sticky;
    top: 0;
    z-index: 1000;
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 82px;
    padding: 0.5rem max(4vw, 1.5rem);
    background: rgba(255, 255, 255, 0.97);
    border-bottom: 1px solid rgba(73, 58, 48, 0.10);
    backdrop-filter: blur(12px);
}

.brand[b-u51ckisugx] {
    display: flex;
    align-items: center;
    gap: 0.9rem;
    color: #292321;
    text-decoration: none;
}

    .brand img[b-u51ckisugx] {
        width: 56px;
        height: 56px;
        flex: 0 0 56px;
        object-fit: contain;
        border-radius: 50%;
    }

.brand-text[b-u51ckisugx] {
    display: flex;
    flex-direction: column;
    justify-content: center;
    line-height: 1;
}

.brand-name[b-u51ckisugx] {
    color: #292321;
    font-size: 1.15rem;
    font-weight: 800;
}

.brand-subtitle[b-u51ckisugx] {
    margin-top: 0.35rem;
    color: #9a6b45;
    font-size: 0.63rem;
    font-weight: 800;
    letter-spacing: 0.22em;
    text-transform: uppercase;
}

.site-nav[b-u51ckisugx] {
    display: flex;
    align-items: center;
    gap: 1.25rem;
}

    .site-nav > a[b-u51ckisugx] {
        color: #292321;
        font-size: 0.92rem;
        font-weight: 700;
        text-decoration: none;
        transition: color 0.15s ease;
    }

        .site-nav > a:hover[b-u51ckisugx] {
            color: #a87547;
        }

/* Staff, Admin and Login / Logout buttons */

.staff-link[b-u51ckisugx],
.admin-link[b-u51ckisugx],
.login-link[b-u51ckisugx] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 0 1.2rem;
    border: 1px solid rgba(41, 35, 33, 0.65);
    border-radius: 999px;
    background: transparent;
    color: #292321 !important;
    font: inherit;
    font-size: 0.9rem;
    font-weight: 750;
    line-height: 1;
    text-decoration: none;
    cursor: pointer;
    transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease, transform 0.15s ease;
}

    .staff-link:hover[b-u51ckisugx],
    .login-link:hover[b-u51ckisugx] {
        background: #292321;
        border-color: #292321;
        color: white !important;
        transform: translateY(-1px);
    }

/* Administration gets a stronger visual treatment */

.admin-link[b-u51ckisugx] {
    background: #9a6b45;
    border-color: #9a6b45;
    color: white !important;
}

    .admin-link:hover[b-u51ckisugx] {
        background: #292321;
        border-color: #292321;
        color: white !important;
        transform: translateY(-1px);
    }

.site-nav form[b-u51ckisugx] {
    display: flex;
    margin: 0;
}

.site-footer[b-u51ckisugx] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.35rem;
    padding: 2.75rem 1rem;
    background: #292321;
    color: white;
    text-align: center;
}

    .site-footer span[b-u51ckisugx] {
        color: #d9cec6;
    }

@media (max-width: 760px) {
    .site-header[b-u51ckisugx] {
        min-height: auto;
        padding: 0.7rem 1rem;
    }

    .brand[b-u51ckisugx] {
        gap: 0.6rem;
    }

        .brand img[b-u51ckisugx] {
            width: 48px;
            height: 48px;
            flex-basis: 48px;
        }

    .brand-name[b-u51ckisugx] {
        font-size: 1rem;
    }

    .brand-subtitle[b-u51ckisugx] {
        font-size: 0.52rem;
    }

    .site-nav[b-u51ckisugx] {
        gap: 0.7rem;
    }

        .site-nav > a[b-u51ckisugx] {
            font-size: 0.82rem;
        }

    .staff-link[b-u51ckisugx],
    .admin-link[b-u51ckisugx],
    .login-link[b-u51ckisugx] {
        min-height: 38px;
        padding: 0 0.9rem;
        font-size: 0.82rem;
    }
}

@media (max-width: 560px) {
    .site-header[b-u51ckisugx] {
        align-items: flex-start;
        flex-direction: column;
        gap: 0.8rem;
    }

    .site-nav[b-u51ckisugx] {
        width: 100%;
        justify-content: space-between;
        gap: 0.35rem;
    }

        .site-nav > a[b-u51ckisugx] {
            font-size: 0.76rem;
        }

    .staff-link[b-u51ckisugx],
    .admin-link[b-u51ckisugx],
    .login-link[b-u51ckisugx] {
        min-height: 36px;
        padding: 0 0.7rem;
        font-size: 0.76rem;
    }
}
/* /Components/Layout/NavMenu.razor.rz.scp.css */
.navbar-toggler[b-wuove3ea4u] {
    appearance: none;
    cursor: pointer;
    width: 3.5rem;
    height: 2.5rem;
    color: white;
    position: absolute;
    top: 0.5rem;
    right: 1rem;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") no-repeat center/1.75rem rgba(255, 255, 255, 0.1);
}

.navbar-toggler:checked[b-wuove3ea4u] {
    background-color: rgba(255, 255, 255, 0.5);
}

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

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

.bi[b-wuove3ea4u] {
    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-wuove3ea4u] {
    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-wuove3ea4u] {
    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-wuove3ea4u] {
    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");
}

.bi-lock-nav-menu[b-wuove3ea4u] {
    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 d='M8 1a2 2 0 0 1 2 2v4H6V3a2 2 0 0 1 2-2zm3 6V3a3 3 0 0 0-6 0v4a2 2 0 0 0-2 2v5a2 2 0 0 0 2 2h6a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2zM5 8h6a1 1 0 0 1 1 1v5a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V9a1 1 0 0 1 1-1z'/%3E%3C/svg%3E");
}

.bi-person-nav-menu[b-wuove3ea4u] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-person' viewBox='0 0 16 16'%3E%3Cpath d='M8 8a3 3 0 1 0 0-6 3 3 0 0 0 0 6Zm2-3a2 2 0 1 1-4 0 2 2 0 0 1 4 0Zm4 8c0 1-1 1-1 1H3s-1 0-1-1 1-4 6-4 6 3 6 4Zm-1-.004c-.001-.246-.154-.986-.832-1.664C11.516 10.68 10.289 10 8 10c-2.29 0-3.516.68-4.168 1.332-.678.678-.83 1.418-.832 1.664h10Z'/%3E%3C/svg%3E");
}

.bi-person-badge-nav-menu[b-wuove3ea4u] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-person-badge' viewBox='0 0 16 16'%3E%3Cpath d='M6.5 2a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1h-3zM11 8a3 3 0 1 1-6 0 3 3 0 0 1 6 0z'/%3E%3Cpath d='M4.5 0A2.5 2.5 0 0 0 2 2.5V14a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2.5A2.5 2.5 0 0 0 11.5 0h-7zM3 2.5A1.5 1.5 0 0 1 4.5 1h7A1.5 1.5 0 0 1 13 2.5v10.795a4.2 4.2 0 0 0-.776-.492C11.392 12.387 10.063 12 8 12s-3.392.387-4.224.803a4.2 4.2 0 0 0-.776.492V2.5z'/%3E%3C/svg%3E");
}

.bi-person-fill-nav-menu[b-wuove3ea4u] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-person-fill' viewBox='0 0 16 16'%3E%3Cpath d='M3 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1H3Zm5-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6Z'/%3E%3C/svg%3E");
}

.bi-arrow-bar-left-nav-menu[b-wuove3ea4u] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-arrow-bar-left' viewBox='0 0 16 16'%3E%3Cpath d='M12.5 15a.5.5 0 0 1-.5-.5v-13a.5.5 0 0 1 1 0v13a.5.5 0 0 1-.5.5ZM10 8a.5.5 0 0 1-.5.5H3.707l2.147 2.146a.5.5 0 0 1-.708.708l-3-3a.5.5 0 0 1 0-.708l3-3a.5.5 0 1 1 .708.708L3.707 7.5H9.5a.5.5 0 0 1 .5.5Z'/%3E%3C/svg%3E");
}

.nav-item[b-wuove3ea4u] {
    font-size: 0.9rem;
    padding-bottom: 0.5rem;
}

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

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

    .nav-item[b-wuove3ea4u]  .nav-link {
        color: #d7d7d7;
        background: none;
        border: none;
        border-radius: 4px;
        height: 3rem;
        display: flex;
        align-items: center;
        line-height: 3rem;
        width: 100%;
    }

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

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

.nav-scrollable[b-wuove3ea4u] {
    display: none;
}

.navbar-toggler:checked ~ .nav-scrollable[b-wuove3ea4u] {
    display: block;
}

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

    .nav-scrollable[b-wuove3ea4u] {
        /* Never collapse the sidebar for wide screens */
        display: block;

        /* Allow sidebar to scroll for tall menus */
        height: calc(100vh - 3.5rem);
        overflow-y: auto;
    }
}
/* /Components/Layout/ReconnectModal.razor.rz.scp.css */
.components-reconnect-first-attempt-visible[b-vm98nc1ckk],
.components-reconnect-repeated-attempt-visible[b-vm98nc1ckk],
.components-reconnect-failed-visible[b-vm98nc1ckk],
.components-pause-visible[b-vm98nc1ckk],
.components-resume-failed-visible[b-vm98nc1ckk],
.components-rejoining-animation[b-vm98nc1ckk] {
    display: none;
}

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


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

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

}

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

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

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

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

    100% {
        opacity: 1;
    }
}

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

    100% {
        opacity: 0;
    }
}

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

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

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

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

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

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

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

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

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

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

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

    100% {
        top: 0px;
        left: 0px;
        width: 80px;
        height: 80px;
        opacity: 0;
    }
}
/* /Components/Pages/Admin/Audit.razor.rz.scp.css */
.audit-page[b-y4nlmzb03u] {
    max-width: 1180px;
    margin: 0 auto;
    padding: 4rem 1.5rem 7rem;
}

.audit-header[b-y4nlmzb03u] {
    margin-bottom: 2.5rem;
}

.back-link[b-y4nlmzb03u] {
    display: inline-block;
    margin-bottom: 2rem;
    color: #74665e;
    font-size: 0.76rem;
    font-weight: 750;
    text-decoration: none;
}

    .back-link:hover[b-y4nlmzb03u] {
        color: #9a6b45;
    }

.eyebrow[b-y4nlmzb03u] {
    margin: 0 0 0.7rem;
    color: #9b6a43;
    font-size: 0.68rem;
    font-weight: 900;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.audit-header h1[b-y4nlmzb03u] {
    margin: 0;
    color: #292321;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(3rem, 6vw, 5rem);
    font-weight: 600;
    letter-spacing: -0.055em;
    line-height: 0.98;
}

.audit-header > p:last-child[b-y4nlmzb03u] {
    max-width: 700px;
    margin: 1rem 0 0;
    color: #766961;
    line-height: 1.65;
}

.audit-toolbar[b-y4nlmzb03u] {
    display: grid;
    grid-template-columns: minmax(260px, 1fr) 220px 180px auto;
    align-items: end;
    gap: 1rem;
    margin-bottom: 1rem;
    padding: 1.25rem;
    background: #fffdf9;
    border: 1px solid #dfd4c8;
    border-radius: 18px;
}

.search-field[b-y4nlmzb03u],
.filter-field[b-y4nlmzb03u] {
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
}

    .search-field label[b-y4nlmzb03u],
    .filter-field label[b-y4nlmzb03u] {
        color: #675951;
        font-size: 0.66rem;
        font-weight: 850;
        letter-spacing: 0.05em;
    }

    .search-field input[b-y4nlmzb03u],
    .filter-field select[b-y4nlmzb03u] {
        min-height: 44px;
        padding: 0 0.8rem;
        background: #fbf8f4;
        border: 1px solid #d9cdc1;
        border-radius: 9px;
        color: #332a26;
        font: inherit;
        font-size: 0.8rem;
    }

.refresh-button[b-y4nlmzb03u] {
    min-height: 44px;
    padding: 0 1.2rem;
    background: #292321;
    border: 0;
    border-radius: 999px;
    color: white;
    font: inherit;
    font-size: 0.75rem;
    font-weight: 850;
    cursor: pointer;
}

    .refresh-button:disabled[b-y4nlmzb03u] {
        opacity: 0.5;
    }

.audit-summary[b-y4nlmzb03u] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1px;
    margin-bottom: 1rem;
    overflow: hidden;
    background: #ddd2c7;
    border: 1px solid #ddd2c7;
    border-radius: 16px;
}

    .audit-summary > div[b-y4nlmzb03u] {
        display: flex;
        flex-direction: column;
        gap: 0.25rem;
        padding: 1rem 1.2rem;
        background: #f5eee6;
    }

    .audit-summary span[b-y4nlmzb03u] {
        color: #8c7d73;
        font-size: 0.58rem;
        font-weight: 900;
        letter-spacing: 0.1em;
        text-transform: uppercase;
    }

    .audit-summary strong[b-y4nlmzb03u] {
        color: #3d322c;
        font-size: 0.85rem;
    }

.audit-list[b-y4nlmzb03u] {
    display: flex;
    flex-direction: column;
    gap: 0.8rem;
}

.audit-entry[b-y4nlmzb03u] {
    overflow: hidden;
    background: #fffdf9;
    border: 1px solid #e0d5ca;
    border-radius: 18px;
}

.audit-entry-top[b-y4nlmzb03u] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
    padding: 1rem 1.25rem;
    border-bottom: 1px solid #eee5dc;
}

.audit-identity[b-y4nlmzb03u] {
    display: flex;
    align-items: center;
    gap: 0.8rem;
}

.user-avatar[b-y4nlmzb03u] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    flex: 0 0 38px;
    background: #292321;
    border-radius: 50%;
    color: white;
    font-family: Georgia, "Times New Roman", serif;
}

.audit-identity > div:last-child[b-y4nlmzb03u] {
    display: flex;
    flex-direction: column;
}

.audit-identity strong[b-y4nlmzb03u] {
    color: #3c302b;
    font-size: 0.78rem;
}

.audit-identity span[b-y4nlmzb03u] {
    margin-top: 0.2rem;
    color: #93847a;
    font-size: 0.66rem;
}

.audit-badges[b-y4nlmzb03u] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.entity-badge[b-y4nlmzb03u],
.action-badge[b-y4nlmzb03u] {
    padding: 0.35rem 0.6rem;
    border-radius: 999px;
    font-size: 0.58rem;
    font-weight: 900;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.entity-badge[b-y4nlmzb03u] {
    background: #f1e9e1;
    color: #725a48;
}

.action-badge.create[b-y4nlmzb03u] {
    background: #e7f1e5;
    color: #496b47;
}

.action-badge.update[b-y4nlmzb03u] {
    background: #f7eedb;
    color: #80602a;
}

.action-badge.delete[b-y4nlmzb03u] {
    background: #f5e2df;
    color: #8d493f;
}

.audit-content[b-y4nlmzb03u] {
    display: grid;
    grid-template-columns: minmax(220px, 0.75fr) minmax(0, 1.25fr);
    gap: 2rem;
    padding: 1.25rem;
}

.audit-target[b-y4nlmzb03u] {
    display: flex;
    flex-direction: column;
}

.field-label[b-y4nlmzb03u] {
    margin-bottom: 0.35rem;
    color: #9a8a80;
    font-size: 0.56rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.audit-target strong[b-y4nlmzb03u] {
    color: #3a302b;
    font-size: 0.84rem;
}

.property-name[b-y4nlmzb03u] {
    margin-top: 0.4rem;
    color: #9a6b45;
    font-size: 0.7rem;
    font-weight: 800;
}

.change-values[b-y4nlmzb03u] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    align-items: center;
    gap: 0.8rem;
}

.value-box[b-y4nlmzb03u] {
    min-width: 0;
    padding: 0.8rem;
    background: #f5f1ed;
    border-radius: 10px;
}

    .value-box.after[b-y4nlmzb03u] {
        background: #f2eee6;
    }

    .value-box strong[b-y4nlmzb03u] {
        display: block;
        overflow-wrap: anywhere;
        color: #50433b;
        font-size: 0.75rem;
        font-weight: 700;
    }

.change-arrow[b-y4nlmzb03u] {
    color: #a27248;
    font-size: 1rem;
}

.audit-meta[b-y4nlmzb03u] {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    padding: 0.75rem 1.25rem;
    background: #faf7f3;
    border-top: 1px solid #eee5dc;
    color: #9b8c82;
    font-size: 0.6rem;
}

.state-panel[b-y4nlmzb03u] {
    padding: 3rem;
    background: white;
    border: 1px solid #e1d7cc;
    border-radius: 18px;
    color: #776961;
    text-align: center;
}

    .state-panel.error[b-y4nlmzb03u] {
        background: #fff1ef;
        border-color: #e4b9b2;
        color: #873e36;
    }

    .state-panel p[b-y4nlmzb03u] {
        margin-bottom: 0;
    }

@media (max-width: 850px) {
    .audit-toolbar[b-y4nlmzb03u] {
        grid-template-columns: 1fr 1fr;
    }

    .audit-content[b-y4nlmzb03u] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 600px) {
    .audit-page[b-y4nlmzb03u] {
        padding-top: 2.5rem;
    }

    .audit-toolbar[b-y4nlmzb03u] {
        grid-template-columns: 1fr;
    }

    .audit-summary[b-y4nlmzb03u] {
        grid-template-columns: 1fr;
    }

    .audit-entry-top[b-y4nlmzb03u] {
        align-items: flex-start;
        flex-direction: column;
    }

    .change-values[b-y4nlmzb03u] {
        grid-template-columns: 1fr;
    }

    .change-arrow[b-y4nlmzb03u] {
        transform: rotate(90deg);
        justify-self: center;
    }
}
/* /Components/Pages/Admin/Categories.razor.rz.scp.css */
.categories-page[b-emf34s3pg1] {
    max-width: 1180px;
    margin: 0 auto;
    padding: 3rem 1.5rem 6rem;
    color: #29221f;
}

.page-header[b-emf34s3pg1] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 2rem;
    margin-bottom: 2rem;
}

.back-link[b-emf34s3pg1] {
    display: inline-block;
    margin-bottom: 1.35rem;
    color: #715f55;
    font-size: 0.82rem;
    font-weight: 800;
    text-decoration: none;
}

.back-link:hover[b-emf34s3pg1] {
    text-decoration: underline;
}

.eyebrow[b-emf34s3pg1],
.section-label[b-emf34s3pg1] {
    margin: 0 0 0.5rem;
    color: #a57043;
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.page-header h1[b-emf34s3pg1] {
    margin: 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2.8rem, 6vw, 4.7rem);
    font-weight: 600;
    line-height: 0.95;
    letter-spacing: -0.045em;
}

.page-description[b-emf34s3pg1] {
    max-width: 720px;
    margin: 1rem 0 0;
    color: #796a61;
    line-height: 1.65;
}

.primary-button[b-emf34s3pg1],
.secondary-button[b-emf34s3pg1],
.manage-button[b-emf34s3pg1],
.product-action[b-emf34s3pg1] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 0.75rem 1.1rem;
    border-radius: 999px;
    font-size: 0.82rem;
    font-weight: 850;
    text-decoration: none;
}

.primary-button[b-emf34s3pg1],
.product-action.primary[b-emf34s3pg1] {
    background: #29221f;
    border: 1px solid #29221f;
    color: #fff;
}

.secondary-button[b-emf34s3pg1],
.manage-button[b-emf34s3pg1],
.product-action[b-emf34s3pg1] {
    background: #fff;
    border: 1px solid #d5c8bc;
    color: #604c3e;
}

button.secondary-button[b-emf34s3pg1] {
    font: inherit;
    cursor: pointer;
}

button.secondary-button:disabled[b-emf34s3pg1] {
    cursor: default;
    opacity: 0.55;
}

.message[b-emf34s3pg1],
.state-card[b-emf34s3pg1] {
    margin-bottom: 1.4rem;
    padding: 1.2rem 1.35rem;
    border: 1px solid #ded3c8;
    border-radius: 18px;
    background: #fff;
}

.success-message[b-emf34s3pg1] {
    border-color: #b9d1b1;
    background: #f3f8f0;
    color: #44633e;
}

.error-message[b-emf34s3pg1] {
    border-color: #ddb9b2;
    background: #fff4f2;
    color: #8e493f;
}

.error-message a[b-emf34s3pg1] {
    color: inherit;
    font-weight: 800;
}

.category-settings-card[b-emf34s3pg1] {
    margin-bottom: 2.5rem;
    padding: 1.5rem;
    background: #fff;
    border: 1px solid #dfd4c8;
    border-radius: 22px;
}

.settings-heading[b-emf34s3pg1] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 2rem;
    padding-bottom: 1.2rem;
    border-bottom: 1px solid #eee4da;
}

.settings-heading h2[b-emf34s3pg1],
.products-heading h2[b-emf34s3pg1],
.category-overview-card h2[b-emf34s3pg1] {
    margin: 0;
    color: #29221f;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.8rem;
    font-weight: 650;
}

.settings-heading p:last-child[b-emf34s3pg1],
.products-heading p:last-child[b-emf34s3pg1] {
    margin: 0.45rem 0 0;
    color: #83746c;
    line-height: 1.5;
}

.visibility-toggle[b-emf34s3pg1] {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    color: #544740;
    font-size: 0.82rem;
    font-weight: 800;
    cursor: pointer;
}

.visibility-toggle input[b-emf34s3pg1] {
    width: 18px;
    height: 18px;
    accent-color: #29221f;
}

.editor-grid[b-emf34s3pg1] {
    display: grid;
    grid-template-columns: minmax(0, 1.4fr) minmax(220px, 0.8fr) 120px;
    gap: 1rem;
    margin-top: 1.25rem;
}

.field[b-emf34s3pg1] {
    display: flex;
    flex-direction: column;
    gap: 0.45rem;
}

.field > span[b-emf34s3pg1] {
    color: #65564e;
    font-size: 0.72rem;
    font-weight: 850;
}

.field input[b-emf34s3pg1],
.field select[b-emf34s3pg1],
.field textarea[b-emf34s3pg1] {
    width: 100%;
    box-sizing: border-box;
    padding: 0.8rem 0.9rem;
    background: #fbf9f6;
    border: 1px solid #d8ccc0;
    border-radius: 12px;
    color: #29221f;
    font: inherit;
}

.field input:focus[b-emf34s3pg1],
.field select:focus[b-emf34s3pg1],
.field textarea:focus[b-emf34s3pg1] {
    outline: 2px solid rgba(165, 112, 67, 0.2);
    border-color: #a57043;
}

.field-description[b-emf34s3pg1] {
    grid-column: 1 / -1;
}

.field textarea[b-emf34s3pg1] {
    resize: vertical;
}

.settings-actions[b-emf34s3pg1] {
    display: flex;
    justify-content: flex-end;
    gap: 0.75rem;
    margin-top: 1.25rem;
    padding-top: 1.1rem;
    border-top: 1px solid #eee4da;
}

.products-section[b-emf34s3pg1] {
    margin-top: 1rem;
}

.products-heading[b-emf34s3pg1] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 2rem;
    margin-bottom: 1.2rem;
}

.product-list[b-emf34s3pg1] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.product-card[b-emf34s3pg1] {
    display: grid;
    grid-template-columns: 150px minmax(0, 1fr);
    min-width: 0;
    overflow: hidden;
    background: #fff;
    border: 1px solid #dfd4c8;
    border-radius: 20px;
}

.product-image[b-emf34s3pg1] {
    width: 150px;
    min-height: 100%;
    background: #eee5dc;
}

.product-image > img[b-emf34s3pg1],
.product-image-placeholder[b-emf34s3pg1],
.product-image-placeholder img[b-emf34s3pg1] {
    width: 100%;
    height: 100%;
}

.product-image > img[b-emf34s3pg1] {
    display: block;
    object-fit: cover;
}

.product-image-placeholder[b-emf34s3pg1] {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 170px;
    background: #eee5dc;
}

.product-image-placeholder img[b-emf34s3pg1] {
    width: 74px;
    height: 74px;
    object-fit: contain;
    border-radius: 50%;
    opacity: 0.75;
}

.product-content[b-emf34s3pg1] {
    display: flex;
    min-width: 0;
    flex-direction: column;
    padding: 1.15rem;
}

.product-title-row[b-emf34s3pg1] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
}

.product-title-row h3[b-emf34s3pg1] {
    margin: 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.2rem;
}

.product-description[b-emf34s3pg1] {
    margin: 0.35rem 0 0;
    color: #807169;
    font-size: 0.8rem;
    line-height: 1.45;
}

.status[b-emf34s3pg1] {
    display: inline-flex;
    align-items: center;
    flex-shrink: 0;
    gap: 0.35rem;
    font-size: 0.7rem;
    font-weight: 850;
}

.status[b-emf34s3pg1]::before {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    content: "";
}

.status.visible[b-emf34s3pg1] {
    color: #52745a;
}

.status.visible[b-emf34s3pg1]::before {
    background: #6c946f;
}

.status.hidden[b-emf34s3pg1] {
    color: #9a665a;
}

.status.hidden[b-emf34s3pg1]::before {
    background: #b26d60;
}

.variant-summary[b-emf34s3pg1] {
    margin-top: 0.9rem;
    padding-top: 0.7rem;
    border-top: 1px solid #eee5dc;
}

.variant-summary-row[b-emf34s3pg1] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 0.2rem 0;
    color: #695a52;
    font-size: 0.76rem;
}

.variant-summary-row strong[b-emf34s3pg1] {
    color: #40332d;
}

.product-actions[b-emf34s3pg1] {
    display: flex;
    gap: 0.55rem;
    margin-top: auto;
    padding-top: 1rem;
}

.product-action[b-emf34s3pg1] {
    min-height: 40px;
    padding: 0.55rem 0.9rem;
    font-size: 0.76rem;
}

.empty-products[b-emf34s3pg1] {
    padding: 2.5rem 1.5rem;
    background: #fff;
    border: 1px dashed #d6c8bb;
    border-radius: 20px;
    text-align: center;
}

.empty-products img[b-emf34s3pg1] {
    width: 82px;
    height: 82px;
    border-radius: 50%;
    opacity: 0.8;
}

.empty-products h3[b-emf34s3pg1] {
    margin: 0.8rem 0 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.35rem;
}

.empty-products p[b-emf34s3pg1] {
    margin: 0.45rem 0 1.1rem;
    color: #7d6f67;
}

.mobile-add-button[b-emf34s3pg1] {
    display: none;
}

.category-overview-grid[b-emf34s3pg1] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.category-overview-card[b-emf34s3pg1] {
    display: flex;
    min-height: 210px;
    flex-direction: column;
    padding: 1.35rem;
    background: #fff;
    border: 1px solid #dfd4c8;
    border-radius: 18px;
}

.category-overview-top[b-emf34s3pg1],
.category-overview-footer[b-emf34s3pg1] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.layout-pill[b-emf34s3pg1] {
    color: #a57043;
    font-size: 0.64rem;
    font-weight: 900;
    letter-spacing: 0.13em;
    text-transform: uppercase;
}

.product-count[b-emf34s3pg1] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 32px;
    height: 32px;
    padding: 0 0.5rem;
    background: #f4ede5;
    border-radius: 999px;
    color: #765941;
    font-size: 0.76rem;
    font-weight: 850;
}

.category-overview-card h2[b-emf34s3pg1] {
    margin-top: 0.8rem;
    font-size: 1.35rem;
}

.category-overview-card > p[b-emf34s3pg1] {
    flex: 1;
    margin: 0.65rem 0 1rem;
    color: #7b6e66;
    font-size: 0.84rem;
    line-height: 1.5;
}

.category-overview-footer[b-emf34s3pg1] {
    padding-top: 1rem;
    border-top: 1px solid #eee6dd;
}

.manage-button[b-emf34s3pg1] {
    min-height: 38px;
    padding: 0.5rem 0.85rem;
    font-size: 0.76rem;
}

@media (max-width: 900px) {
    .category-overview-grid[b-emf34s3pg1] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .product-list[b-emf34s3pg1] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 700px) {
    .categories-page[b-emf34s3pg1] {
        padding: 2rem 1rem 5rem;
    }

    .page-header[b-emf34s3pg1],
    .settings-heading[b-emf34s3pg1],
    .products-heading[b-emf34s3pg1] {
        align-items: stretch;
        flex-direction: column;
    }

    .page-header .primary-button[b-emf34s3pg1],
    .settings-actions .secondary-button[b-emf34s3pg1] {
        width: 100%;
    }

    .editor-grid[b-emf34s3pg1] {
        grid-template-columns: 1fr;
    }

    .field-description[b-emf34s3pg1] {
        grid-column: auto;
    }

    .settings-actions[b-emf34s3pg1] {
        align-items: stretch;
        flex-direction: column;
    }

    .desktop-add-button[b-emf34s3pg1] {
        display: none;
    }

    .mobile-add-button[b-emf34s3pg1] {
        display: flex;
        width: 100%;
        box-sizing: border-box;
        margin-top: 1rem;
    }

    .product-card[b-emf34s3pg1] {
        grid-template-columns: 110px minmax(0, 1fr);
    }

    .product-image[b-emf34s3pg1] {
        width: 110px;
    }

    .product-image-placeholder[b-emf34s3pg1] {
        min-height: 150px;
    }

    .product-actions[b-emf34s3pg1] {
        flex-direction: column;
    }

    .product-action[b-emf34s3pg1] {
        width: 100%;
        box-sizing: border-box;
    }
}

@media (max-width: 520px) {
    .category-overview-grid[b-emf34s3pg1] {
        grid-template-columns: 1fr;
    }

    .category-settings-card[b-emf34s3pg1] {
        padding: 1.15rem;
    }

    .product-card[b-emf34s3pg1] {
        grid-template-columns: 92px minmax(0, 1fr);
    }

    .product-image[b-emf34s3pg1] {
        width: 92px;
    }

    .product-image-placeholder[b-emf34s3pg1] {
        min-height: 145px;
    }

    .product-image-placeholder img[b-emf34s3pg1] {
        width: 58px;
        height: 58px;
    }

    .product-content[b-emf34s3pg1] {
        padding: 0.9rem;
    }

    .product-title-row[b-emf34s3pg1] {
        flex-direction: column;
        gap: 0.45rem;
    }
}
/* /Components/Pages/Admin/CreateUser.razor.rz.scp.css */
.create-page[b-95dqm2xr2z] {
    max-width: 1180px;
    margin: 0 auto;
    padding: 4rem 1.5rem 7rem;
}

.back-link[b-95dqm2xr2z] {
    display: inline-block;
    margin-bottom: 2rem;
    color: #74665e;
    font-size: 0.76rem;
    font-weight: 750;
    text-decoration: none;
}

.eyebrow[b-95dqm2xr2z] {
    margin: 0 0 0.7rem;
    color: #9b6a43;
    font-size: 0.68rem;
    font-weight: 900;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.create-header[b-95dqm2xr2z] {
    margin-bottom: 3rem;
}

    .create-header h1[b-95dqm2xr2z] {
        margin: 0;
        color: #292321;
        font-family: Georgia, "Times New Roman", serif;
        font-size: clamp(3rem, 6vw, 5rem);
        font-weight: 600;
        letter-spacing: -0.055em;
    }

    .create-header > p:last-child[b-95dqm2xr2z] {
        max-width: 640px;
        margin: 0.9rem 0 0;
        color: #776a62;
        line-height: 1.65;
    }

.create-layout[b-95dqm2xr2z] {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(300px, 0.65fr);
    align-items: start;
    gap: 1.5rem;
}

.form-panel[b-95dqm2xr2z] {
    overflow: hidden;
    background: #fffdf9;
    border: 1px solid #ded3c8;
    border-radius: 24px;
}

.form-section[b-95dqm2xr2z] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 1.5rem;
    padding: 2.3rem;
    border-bottom: 1px solid #e8ded4;
}

.section-number[b-95dqm2xr2z] {
    padding-top: 0.25rem;
    color: #a97548;
    font-size: 0.67rem;
    font-weight: 900;
}

.section-content[b-95dqm2xr2z] {
    max-width: 580px;
}

    .section-content h2[b-95dqm2xr2z] {
        margin: 0 0 1.5rem;
        color: #332b27;
        font-family: Georgia, "Times New Roman", serif;
        font-size: 1.5rem;
    }

.section-help[b-95dqm2xr2z] {
    margin: -0.6rem 0 1.5rem;
    color: #83756c;
    font-size: 0.8rem;
    line-height: 1.6;
}

.form-field[b-95dqm2xr2z] {
    display: flex;
    flex-direction: column;
    margin-bottom: 1.35rem;
}

    .form-field:last-child[b-95dqm2xr2z] {
        margin-bottom: 0;
    }

    .form-field label[b-95dqm2xr2z] {
        margin-bottom: 0.45rem;
        color: #594c45;
        font-size: 0.7rem;
        font-weight: 850;
        letter-spacing: 0.04em;
    }

    .form-field input[b-95dqm2xr2z],
    .form-field select[b-95dqm2xr2z] {
        width: 100%;
        min-height: 48px;
        padding: 0 0.9rem;
        background: white;
        border: 1px solid #d7cabd;
        border-radius: 10px;
        color: #292321;
        font: inherit;
        font-size: 0.85rem;
    }

        .form-field input:focus[b-95dqm2xr2z],
        .form-field select:focus[b-95dqm2xr2z] {
            border-color: #a87952;
            outline: none;
            box-shadow: 0 0 0 3px rgba(168, 121, 82, 0.10);
        }

.validation-message[b-95dqm2xr2z] {
    margin-top: 0.4rem;
    color: #a34d43;
    font-size: 0.7rem;
}

.role-description[b-95dqm2xr2z] {
    padding: 1rem 1.1rem;
    background: #f4ece3;
    border-radius: 10px;
    color: #77685f;
    font-size: 0.77rem;
    line-height: 1.55;
}

.form-actions[b-95dqm2xr2z] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 1.5rem;
    padding: 1.5rem 2.3rem;
}

    .form-actions a[b-95dqm2xr2z] {
        color: #756860;
        font-size: 0.8rem;
        font-weight: 750;
        text-decoration: none;
    }

    .form-actions button[b-95dqm2xr2z] {
        min-height: 48px;
        padding: 0 1.6rem;
        background: #292321;
        border: 0;
        border-radius: 999px;
        color: white;
        font: inherit;
        font-size: 0.8rem;
        font-weight: 850;
        cursor: pointer;
    }

        .form-actions button:disabled[b-95dqm2xr2z] {
            opacity: 0.55;
            cursor: wait;
        }

.error-panel[b-95dqm2xr2z] {
    margin: 1.5rem;
    padding: 1rem 1.2rem;
    background: #fff1ef;
    border: 1px solid #e4b9b2;
    border-radius: 12px;
    color: #873e36;
    font-size: 0.78rem;
}

    .error-panel ul[b-95dqm2xr2z] {
        margin: 0.6rem 0 0;
        padding-left: 1.2rem;
    }

.security-panel[b-95dqm2xr2z] {
    padding: 2.2rem;
    background: #292321;
    border-radius: 24px;
    color: white;
}

.security-label[b-95dqm2xr2z] {
    margin: 0 0 0.8rem;
    color: #d7a36f;
    font-size: 0.61rem;
    font-weight: 900;
    letter-spacing: 0.17em;
    text-transform: uppercase;
}

.security-panel h2[b-95dqm2xr2z] {
    margin: 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 2.25rem;
    font-weight: 500;
    letter-spacing: -0.04em;
}

.security-panel > p:not(.security-label)[b-95dqm2xr2z] {
    margin: 1.2rem 0 2rem;
    color: #cdc0b7;
    font-size: 0.79rem;
    line-height: 1.65;
}

.security-rule[b-95dqm2xr2z] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    padding: 1rem 0;
    border-top: 1px solid rgba(255, 255, 255, 0.12);
}

    .security-rule span[b-95dqm2xr2z] {
        color: #b6a79e;
        font-size: 0.63rem;
    }

    .security-rule strong[b-95dqm2xr2z] {
        color: #e5b47e;
        font-size: 0.77rem;
    }

    .security-rule.blocked strong[b-95dqm2xr2z] {
        color: #c7bab2;
    }

@media (max-width: 850px) {
    .create-layout[b-95dqm2xr2z] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 600px) {
    .form-section[b-95dqm2xr2z] {
        grid-template-columns: 1fr;
        gap: 0.7rem;
        padding: 1.5rem;
    }

    .form-actions[b-95dqm2xr2z] {
        padding: 1.3rem 1.5rem;
    }
}
/* /Components/Pages/Admin/Home.razor.rz.scp.css */
.admin-page[b-sqmdwrlrp7] {
    max-width: 1180px;
    margin: 0 auto;
    padding: 5rem 1.5rem 7rem;
}

.admin-header[b-sqmdwrlrp7] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 3rem;
    margin-bottom: 3.5rem;
}

    .admin-header h1[b-sqmdwrlrp7] {
        margin: 0;
        color: #292321;
        font-family: Georgia, "Times New Roman", serif;
        font-size: clamp(3.3rem, 7vw, 5.7rem);
        font-weight: 600;
        letter-spacing: -0.055em;
        line-height: 0.95;
    }

    .admin-header > div > p:last-child[b-sqmdwrlrp7] {
        max-width: 600px;
        margin: 1rem 0 0;
        color: #756860;
        font-size: 1rem;
        line-height: 1.65;
    }

.eyebrow[b-sqmdwrlrp7] {
    margin: 0 0 0.8rem;
    color: #9a6b45;
    font-size: 0.7rem;
    font-weight: 900;
    letter-spacing: 0.19em;
    text-transform: uppercase;
}

.staff-portal-link[b-sqmdwrlrp7] {
    flex-shrink: 0;
    padding-bottom: 0.45rem;
    border-bottom: 1px solid #ac805d;
    color: #423630;
    font-size: 0.82rem;
    font-weight: 800;
    text-decoration: none;
}

.admin-summary[b-sqmdwrlrp7] {
    display: grid;
    grid-template-columns: minmax(0, 1.4fr) minmax(280px, 0.6fr);
    margin-bottom: 1.25rem;
    overflow: hidden;
    background: #292321;
    color: white;
    border-radius: 24px;
}

.summary-copy[b-sqmdwrlrp7] {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    min-height: 320px;
    padding: 3rem;
}

    .summary-copy > span[b-sqmdwrlrp7] {
        margin-bottom: 1rem;
        color: #d8a674;
        font-size: 0.66rem;
        font-weight: 900;
        letter-spacing: 0.18em;
        text-transform: uppercase;
    }

    .summary-copy strong[b-sqmdwrlrp7] {
        max-width: 620px;
        font-family: Georgia, "Times New Roman", serif;
        font-size: clamp(2.5rem, 4.5vw, 4rem);
        font-weight: 500;
        letter-spacing: -0.04em;
        line-height: 0.95;
    }

.summary-security[b-sqmdwrlrp7] {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 2.5rem;
    background: rgba(255, 255, 255, 0.055);
    border-left: 1px solid rgba(255, 255, 255, 0.12);
}

    .summary-security > span[b-sqmdwrlrp7] {
        margin-bottom: 0.7rem;
        color: #d8a674;
        font-size: 0.6rem;
        font-weight: 900;
        letter-spacing: 0.18em;
    }

    .summary-security strong[b-sqmdwrlrp7] {
        font-size: 0.95rem;
    }

    .summary-security p[b-sqmdwrlrp7] {
        margin: 0.65rem 0 0;
        color: #cfc2ba;
        font-size: 0.8rem;
        line-height: 1.55;
    }

.admin-grid[b-sqmdwrlrp7] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.25rem;
}

.admin-card[b-sqmdwrlrp7] {
    position: relative;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: start;
    gap: 1.4rem;
    min-height: 190px;
    padding: 2rem;
    background: #fffdf9;
    border: 1px solid #dfd4c8;
    border-radius: 22px;
    color: #292321;
    text-decoration: none;
    transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}

a.admin-card:hover[b-sqmdwrlrp7] {
    transform: translateY(-3px);
    border-color: #c6a98d;
    box-shadow: 0 18px 44px rgba(41, 35, 33, 0.075);
}

.admin-card.primary[b-sqmdwrlrp7] {
    background: linear-gradient(145deg, #ffffff 0%, #f8efe5 100%);
}

.card-number[b-sqmdwrlrp7] {
    padding-top: 0.2rem;
    color: #ab764a;
    font-size: 0.66rem;
    font-weight: 900;
    letter-spacing: 0.08em;
}

.card-kicker[b-sqmdwrlrp7] {
    display: block;
    margin-bottom: 0.45rem;
    color: #9b6c46;
    font-size: 0.61rem;
    font-weight: 900;
    letter-spacing: 0.15em;
    text-transform: uppercase;
}

.admin-card h2[b-sqmdwrlrp7] {
    margin: 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.55rem;
    font-weight: 600;
}

.admin-card p[b-sqmdwrlrp7] {
    max-width: 390px;
    margin: 0.75rem 0 0;
    color: #756961;
    font-size: 0.86rem;
    line-height: 1.6;
}

.card-arrow[b-sqmdwrlrp7] {
    color: #a36f45;
    font-size: 1.2rem;
}

.admin-card.disabled[b-sqmdwrlrp7] {
    background: rgba(255, 255, 255, 0.34);
    color: #756b65;
}

    .admin-card.disabled .card-kicker[b-sqmdwrlrp7],
    .admin-card.disabled .card-number[b-sqmdwrlrp7] {
        color: #aa9b90;
    }


.rota-card[b-sqmdwrlrp7] {
    background: linear-gradient(145deg, #fffdf9 0%, #f4eadf 100%);
}



@media (max-width: 800px) {
    .admin-header[b-sqmdwrlrp7] {
        align-items: flex-start;
        flex-direction: column;
        gap: 1.5rem;
    }

    .admin-summary[b-sqmdwrlrp7] {
        grid-template-columns: 1fr;
    }

    .summary-security[b-sqmdwrlrp7] {
        border-top: 1px solid rgba(255, 255, 255, 0.12);
        border-left: 0;
    }

    .admin-grid[b-sqmdwrlrp7] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Pages/Admin/ImportMenu.razor.rz.scp.css */
.import-page[b-mwtf5i0oxo] {
    max-width: 1250px;
    margin: 0 auto;
    padding: 3rem 1.5rem 6rem;
}

.page-header[b-mwtf5i0oxo] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 2rem;
    margin-bottom: 2rem;
}

    .page-header h1[b-mwtf5i0oxo] {
        margin: 0;
        color: #292321;
        font-family: Georgia, "Times New Roman", serif;
        font-size: clamp(3rem, 6vw, 5rem);
        font-weight: 600;
        letter-spacing: -0.05em;
    }

.page-description[b-mwtf5i0oxo] {
    max-width: 680px;
    margin: 0.8rem 0 0;
    color: #756860;
}

.back-link[b-mwtf5i0oxo] {
    display: inline-block;
    margin-bottom: 1.5rem;
    color: #8f6743;
    font-size: 0.85rem;
    font-weight: 750;
    text-decoration: none;
}

.eyebrow[b-mwtf5i0oxo],
.section-label[b-mwtf5i0oxo] {
    margin: 0 0 0.45rem;
    color: #9a6b45;
    font-size: 0.68rem;
    font-weight: 900;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.export-button[b-mwtf5i0oxo],
.apply-button[b-mwtf5i0oxo] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: 0 1.35rem;
    border-radius: 999px;
    font: inherit;
    font-size: 0.84rem;
    font-weight: 850;
    text-decoration: none;
}

.export-button[b-mwtf5i0oxo] {
    background: #fff;
    border: 1px solid #cdbdae;
    color: #604c3e;
}

.upload-card[b-mwtf5i0oxo],
.apply-card[b-mwtf5i0oxo] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
    padding: 1.6rem;
    background: #fff;
    border: 1px solid #e4dbd1;
    border-radius: 18px;
}

    .upload-card h2[b-mwtf5i0oxo],
    .apply-card h2[b-mwtf5i0oxo],
    .preview-heading h2[b-mwtf5i0oxo] {
        margin: 0;
        color: #332a26;
        font-family: Georgia, "Times New Roman", serif;
        font-size: 1.5rem;
    }

    .upload-card p[b-mwtf5i0oxo],
    .apply-card p[b-mwtf5i0oxo] {
        max-width: 620px;
        margin: 0.35rem 0 0;
        color: #82746c;
        font-size: 0.82rem;
        line-height: 1.5;
    }

.file-control[b-mwtf5i0oxo] {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 210px;
    min-height: 48px;
    padding: 0 1rem;
    overflow: hidden;
    background: #292321;
    border-radius: 999px;
    color: white;
    font-size: 0.82rem;
    font-weight: 850;
    cursor: pointer;
}

    .file-control input[b-mwtf5i0oxo] {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        opacity: 0;
        cursor: pointer;
    }

.safety-note[b-mwtf5i0oxo] {
    max-width: 220px;
    color: #8c7e75;
    font-size: 0.72rem;
}

.loading-card[b-mwtf5i0oxo],
.no-changes[b-mwtf5i0oxo] {
    margin-top: 1rem;
    padding: 1.5rem;
    background: #faf7f3;
    border: 1px solid #e5dcd3;
    border-radius: 14px;
    color: #76685f;
    text-align: center;
}

.preview-section[b-mwtf5i0oxo] {
    margin-top: 1.5rem;
}

.preview-heading[b-mwtf5i0oxo] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 1rem;
}

.ready-badge[b-mwtf5i0oxo],
.error-badge[b-mwtf5i0oxo] {
    padding: 0.45rem 0.75rem;
    border-radius: 999px;
    font-size: 0.68rem;
    font-weight: 900;
    text-transform: uppercase;
}

.ready-badge[b-mwtf5i0oxo] {
    background: #e7f0e4;
    color: #42603c;
}

.error-badge[b-mwtf5i0oxo] {
    background: #f6e6e1;
    color: #91483d;
}

.summary-grid[b-mwtf5i0oxo] {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 0.7rem;
}

.summary-card[b-mwtf5i0oxo] {
    padding: 1rem;
    background: #fff;
    border: 1px solid #e5dcd3;
    border-radius: 13px;
}

    .summary-card span[b-mwtf5i0oxo] {
        display: block;
        color: #897b73;
        font-size: 0.68rem;
    }

    .summary-card strong[b-mwtf5i0oxo] {
        display: block;
        margin-top: 0.35rem;
        color: #332a26;
        font-family: Georgia, "Times New Roman", serif;
        font-size: 1.6rem;
    }

.issue-card[b-mwtf5i0oxo],
.changes-card[b-mwtf5i0oxo] {
    margin-top: 1rem;
    overflow: hidden;
    background: #fff;
    border: 1px solid #e5dcd3;
    border-radius: 14px;
}

    .issue-card h3[b-mwtf5i0oxo] {
        margin: 0;
        padding: 0.9rem 1rem;
        font-size: 0.84rem;
    }

.error-issues h3[b-mwtf5i0oxo] {
    background: #f7e8e4;
    color: #873f34;
}

.warning-issues h3[b-mwtf5i0oxo] {
    background: #f8f0df;
    color: #795f2e;
}

.issue-row[b-mwtf5i0oxo] {
    padding: 0.75rem 1rem;
    border-top: 1px solid #eee6df;
    color: #63564f;
    font-size: 0.78rem;
}

.changes-header[b-mwtf5i0oxo] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.9rem 1rem;
}

    .changes-header h3[b-mwtf5i0oxo] {
        margin: 0;
        color: #3a302b;
        font-family: Georgia, "Times New Roman", serif;
    }

    .changes-header span[b-mwtf5i0oxo] {
        color: #8b7c73;
        font-size: 0.75rem;
    }

.change-table[b-mwtf5i0oxo] {
    overflow-x: auto;
}

.change-table-header[b-mwtf5i0oxo],
.change-row[b-mwtf5i0oxo] {
    display: grid;
    grid-template-columns: 90px minmax(180px, 1.2fr) minmax(140px, 1fr) minmax(150px, 1fr) minmax(160px, 1fr) minmax(160px, 1fr);
    gap: 0.75rem;
    min-width: 950px;
    padding: 0.75rem 1rem;
}

.change-table-header[b-mwtf5i0oxo] {
    background: #f1e9e1;
    color: #78695f;
    font-size: 0.65rem;
    font-weight: 900;
    text-transform: uppercase;
}

.change-row[b-mwtf5i0oxo] {
    align-items: center;
    border-top: 1px solid #eee6df;
    color: #544842;
    font-size: 0.75rem;
}

.change-type[b-mwtf5i0oxo] {
    display: inline-flex;
    padding: 0.25rem 0.5rem;
    border-radius: 999px;
    font-size: 0.62rem;
    font-weight: 900;
    text-transform: uppercase;
}

    .change-type.create[b-mwtf5i0oxo] {
        background: #e5eee3;
        color: #42603c;
    }

    .change-type.update[b-mwtf5i0oxo] {
        background: #efe7dc;
        color: #7c5c3f;
    }

.old-value[b-mwtf5i0oxo] {
    color: #9b736d;
}

.new-value[b-mwtf5i0oxo] {
    color: #456245;
    font-weight: 750;
}

.apply-card[b-mwtf5i0oxo] {
    margin-top: 1rem;
}

.apply-button[b-mwtf5i0oxo] {
    background: #292321;
    border: 1px solid #292321;
    color: white;
    cursor: pointer;
}

    .apply-button:disabled[b-mwtf5i0oxo] {
        opacity: 0.45;
        cursor: not-allowed;
    }

.message[b-mwtf5i0oxo] {
    margin-bottom: 1rem;
    padding: 1rem 1.2rem;
    border-radius: 12px;
}

.error-message[b-mwtf5i0oxo] {
    background: #f7e8e4;
    color: #873f34;
}

.success-message[b-mwtf5i0oxo] {
    background: #eaf2e8;
    color: #42603c;
}

@media (max-width: 1000px) {
    .summary-grid[b-mwtf5i0oxo] {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 750px) {
    .page-header[b-mwtf5i0oxo],
    .upload-card[b-mwtf5i0oxo],
    .apply-card[b-mwtf5i0oxo] {
        align-items: stretch;
        flex-direction: column;
    }

    .summary-grid[b-mwtf5i0oxo] {
        grid-template-columns: repeat(2, 1fr);
    }

    .file-control[b-mwtf5i0oxo],
    .export-button[b-mwtf5i0oxo],
    .apply-button[b-mwtf5i0oxo] {
        width: 100%;
        box-sizing: border-box;
    }
}

@media (max-width: 500px) {
    .import-page[b-mwtf5i0oxo] {
        padding: 2rem 1rem 4rem;
    }

    .summary-grid[b-mwtf5i0oxo] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Pages/Admin/ManageUser.razor.rz.scp.css */
.manage-page[b-f4vg7ecz46] {
    max-width: 1120px;
    margin: 0 auto;
    padding: 4rem 1.5rem 7rem;
}

.manage-header[b-f4vg7ecz46] {
    margin-bottom: 3rem;
}

.back-link[b-f4vg7ecz46] {
    display: inline-block;
    margin-bottom: 2rem;
    color: #74665e;
    font-size: 0.76rem;
    font-weight: 750;
    text-decoration: none;
}

    .back-link:hover[b-f4vg7ecz46] {
        color: #9a6b45;
    }

.eyebrow[b-f4vg7ecz46],
.panel-eyebrow[b-f4vg7ecz46] {
    margin: 0 0 0.7rem;
    color: #9b6a43;
    font-size: 0.68rem;
    font-weight: 900;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.manage-header h1[b-f4vg7ecz46] {
    margin: 0;
    color: #292321;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(3rem, 6vw, 5rem);
    font-weight: 600;
    letter-spacing: -0.055em;
    line-height: 0.98;
}

.manage-header > p:last-child[b-f4vg7ecz46] {
    max-width: 700px;
    margin: 1rem 0 0;
    color: #766961;
    line-height: 1.65;
}

.manage-header strong[b-f4vg7ecz46] {
    color: #4d4039;
}

.account-summary[b-f4vg7ecz46] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) minmax(240px, 0.55fr);
    align-items: center;
    gap: 1.5rem;
    margin-bottom: 1.5rem;
    padding: 1.5rem;
    background: #fffdf9;
    border: 1px solid #dfd4c8;
    border-radius: 22px;
}

.account-avatar[b-f4vg7ecz46] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 60px;
    height: 60px;
    background: #292321;
    border-radius: 50%;
    color: white;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.5rem;
}

.account-identity[b-f4vg7ecz46],
.account-security[b-f4vg7ecz46] {
    display: flex;
    min-width: 0;
    flex-direction: column;
}

.summary-label[b-f4vg7ecz46] {
    margin-bottom: 0.35rem;
    color: #9b8b81;
    font-size: 0.58rem;
    font-weight: 900;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.account-identity strong[b-f4vg7ecz46],
.account-security strong[b-f4vg7ecz46] {
    overflow: hidden;
    color: #332a26;
    font-size: 0.9rem;
    text-overflow: ellipsis;
}

.account-identity > span:last-child[b-f4vg7ecz46],
.account-security > span:last-child[b-f4vg7ecz46] {
    margin-top: 0.3rem;
    color: #85766d;
    font-size: 0.72rem;
}

.account-security[b-f4vg7ecz46] {
    padding-left: 1.5rem;
    border-left: 1px solid #e6ddd4;
}

.status-active[b-f4vg7ecz46] {
    color: #54745a !important;
}

.status-disabled[b-f4vg7ecz46] {
    color: #a04e45 !important;
}

.account-controls[b-f4vg7ecz46] {
    margin-bottom: 1.5rem;
    overflow: hidden;
    background: #fffdf9;
    border: 1px solid #ddd2c7;
    border-radius: 24px;
}

.controls-heading[b-f4vg7ecz46] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1.8rem 2rem;
    border-bottom: 1px solid #e8ded4;
}

    .controls-heading h2[b-f4vg7ecz46] {
        margin: 0;
        color: #302824;
        font-family: Georgia, "Times New Roman", serif;
        font-size: 1.8rem;
        font-weight: 500;
    }

.current-account-badge[b-f4vg7ecz46] {
    padding: 0.4rem 0.7rem;
    background: #eee5da;
    border-radius: 999px;
    color: #77675d;
    font-size: 0.62rem;
    font-weight: 850;
    text-transform: uppercase;
}

.controls-grid[b-f4vg7ecz46] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.control-block[b-f4vg7ecz46] {
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    padding: 2rem;
}

    .control-block + .control-block[b-f4vg7ecz46] {
        border-left: 1px solid #e8ded4;
    }

.control-label[b-f4vg7ecz46] {
    margin-bottom: 0.65rem;
    color: #9a6b45;
    font-size: 0.62rem;
    font-weight: 900;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.control-block p[b-f4vg7ecz46] {
    max-width: 480px;
    margin: 0 0 1.2rem;
    color: #7e7067;
    font-size: 0.77rem;
    line-height: 1.6;
}

.control-block small[b-f4vg7ecz46] {
    margin-top: 0.8rem;
    color: #9b8c82;
    font-size: 0.68rem;
    line-height: 1.5;
}

.role-select[b-f4vg7ecz46] {
    width: 100%;
    max-width: 360px;
    min-height: 46px;
    margin-bottom: 1rem;
    padding: 0 0.85rem;
    background: #fbf8f4;
    border: 1px solid #d8ccc0;
    border-radius: 9px;
    color: #332a26;
    font: inherit;
    font-size: 0.8rem;
}

.secondary-button[b-f4vg7ecz46],
.enable-button[b-f4vg7ecz46],
.disable-button[b-f4vg7ecz46] {
    min-height: 44px;
    padding: 0 1.2rem;
    border-radius: 999px;
    font: inherit;
    font-size: 0.74rem;
    font-weight: 850;
    cursor: pointer;
}

.secondary-button[b-f4vg7ecz46] {
    background: #292321;
    border: 1px solid #292321;
    color: white;
}

.enable-button[b-f4vg7ecz46] {
    background: #55755b;
    border: 1px solid #55755b;
    color: white;
}

.disable-button[b-f4vg7ecz46] {
    background: transparent;
    border: 1px solid #a55c52;
    color: #934c43;
}

    .secondary-button:disabled[b-f4vg7ecz46],
    .enable-button:disabled[b-f4vg7ecz46],
    .disable-button:disabled[b-f4vg7ecz46] {
        opacity: 0.45;
        cursor: default;
    }

.status-control > strong[b-f4vg7ecz46] {
    margin-bottom: 0.5rem;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.6rem;
    font-weight: 500;
}

.password-panel[b-f4vg7ecz46] {
    margin-bottom: 1.5rem;
    overflow: hidden;
    background: #fffdf9;
    border: 1px solid #ddd2c7;
    border-radius: 24px;
}

.password-heading[b-f4vg7ecz46] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1.8rem 2rem;
    border-bottom: 1px solid #e8ded4;
}

    .password-heading h2[b-f4vg7ecz46] {
        margin: 0;
        color: #302824;
        font-family: Georgia, "Times New Roman", serif;
        font-size: 1.8rem;
        font-weight: 500;
    }

.platform-only-badge[b-f4vg7ecz46] {
    padding: 0.4rem 0.7rem;
    background: #292321;
    border-radius: 999px;
    color: #fff;
    font-size: 0.6rem;
    font-weight: 850;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.password-content[b-f4vg7ecz46] {
    display: grid;
    grid-template-columns: minmax(240px, 0.7fr) minmax(0, 1.3fr);
    gap: 2rem;
    padding: 2rem;
}

.password-copy strong[b-f4vg7ecz46] {
    color: #382f2a;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.25rem;
}

.password-copy p[b-f4vg7ecz46] {
    max-width: 420px;
    margin: 0.7rem 0 0;
    color: #7e7067;
    font-size: 0.77rem;
    line-height: 1.65;
}

.password-form[b-f4vg7ecz46] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.password-field[b-f4vg7ecz46] {
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
}

    .password-field label[b-f4vg7ecz46] {
        color: #5e5048;
        font-size: 0.68rem;
        font-weight: 850;
    }

    .password-field input[b-f4vg7ecz46] {
        min-height: 46px;
        padding: 0 0.85rem;
        background: #fbf8f4;
        border: 1px solid #d8ccc0;
        border-radius: 9px;
        color: #332a26;
        font: inherit;
    }

        .password-field input:focus[b-f4vg7ecz46] {
            border-color: #9a6b45;
            outline: none;
            box-shadow: 0 0 0 3px rgba(154, 107, 69, 0.10);
        }

.reset-password-button[b-f4vg7ecz46] {
    align-self: flex-start;
    min-height: 44px;
    padding: 0 1.3rem;
    background: #292321;
    border: 0;
    border-radius: 999px;
    color: white;
    font: inherit;
    font-size: 0.74rem;
    font-weight: 850;
    cursor: pointer;
}

    .reset-password-button:hover:not(:disabled)[b-f4vg7ecz46] {
        background: #9a6b45;
    }

    .reset-password-button:disabled[b-f4vg7ecz46] {
        opacity: 0.5;
        cursor: wait;
    }

.platform-notice[b-f4vg7ecz46] {
    margin-bottom: 1.5rem;
    padding: 2rem;
    background: #292321;
    border-radius: 22px;
    color: white;
}

    .platform-notice > span[b-f4vg7ecz46] {
        display: block;
        margin-bottom: 0.7rem;
        color: #d7a36f;
        font-size: 0.61rem;
        font-weight: 900;
        letter-spacing: 0.17em;
        text-transform: uppercase;
    }

    .platform-notice h2[b-f4vg7ecz46] {
        margin: 0;
        font-family: Georgia, "Times New Roman", serif;
        font-size: 1.8rem;
        font-weight: 500;
    }

    .platform-notice p[b-f4vg7ecz46] {
        max-width: 720px;
        margin: 0.85rem 0 0;
        color: #cfc2ba;
        font-size: 0.8rem;
        line-height: 1.65;
    }

.permissions-panel[b-f4vg7ecz46] {
    overflow: hidden;
    background: #fffdf9;
    border: 1px solid #ddd2c7;
    border-radius: 24px;
}

.permissions-heading[b-f4vg7ecz46] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 2rem;
    padding: 2rem 2.2rem;
    border-bottom: 1px solid #e8ded4;
}

    .permissions-heading h2[b-f4vg7ecz46] {
        margin: 0;
        color: #302824;
        font-family: Georgia, "Times New Roman", serif;
        font-size: 2rem;
        font-weight: 500;
        letter-spacing: -0.03em;
    }

.permission-count[b-f4vg7ecz46] {
    display: flex;
    align-items: baseline;
    gap: 0.45rem;
}

    .permission-count strong[b-f4vg7ecz46] {
        color: #9a6b45;
        font-family: Georgia, "Times New Roman", serif;
        font-size: 2rem;
        font-weight: 500;
    }

    .permission-count span[b-f4vg7ecz46] {
        color: #8e7e74;
        font-size: 0.65rem;
        font-weight: 800;
        text-transform: uppercase;
    }

.permission-group[b-f4vg7ecz46] {
    display: grid;
    grid-template-columns: 250px minmax(0, 1fr);
    border-bottom: 1px solid #e8ded4;
}

.group-heading[b-f4vg7ecz46] {
    padding: 2rem;
    background: #f5eee6;
    border-right: 1px solid #e3d7ca;
}

    .group-heading h3[b-f4vg7ecz46] {
        margin: 0;
        color: #372e29;
        font-family: Georgia, "Times New Roman", serif;
        font-size: 1.35rem;
    }

    .group-heading span[b-f4vg7ecz46] {
        display: block;
        margin-top: 0.65rem;
        color: #85756b;
        font-size: 0.73rem;
        line-height: 1.55;
    }

.permission-list[b-f4vg7ecz46] {
    display: flex;
    flex-direction: column;
}

.permission-row[b-f4vg7ecz46] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 1.25rem;
    min-height: 88px;
    padding: 1rem 1.5rem;
    border-bottom: 1px solid #ede5dd;
    cursor: pointer;
    transition: background 0.15s ease;
}

    .permission-row:last-child[b-f4vg7ecz46] {
        border-bottom: 0;
    }

    .permission-row:hover[b-f4vg7ecz46] {
        background: #fdf9f4;
    }

    .permission-row.enabled[b-f4vg7ecz46] {
        background: #fffcf7;
    }

.permission-switch[b-f4vg7ecz46] {
    position: relative;
    width: 44px;
    height: 24px;
    flex: 0 0 44px;
}

    .permission-switch input[b-f4vg7ecz46] {
        position: absolute;
        width: 1px;
        height: 1px;
        opacity: 0;
    }

.switch-track[b-f4vg7ecz46] {
    position: absolute;
    inset: 0;
    background: #d5cbc2;
    border-radius: 999px;
    transition: background 0.15s ease;
}

.switch-thumb[b-f4vg7ecz46] {
    position: absolute;
    top: 3px;
    left: 3px;
    width: 18px;
    height: 18px;
    background: white;
    border-radius: 50%;
    box-shadow: 0 1px 4px rgba(41, 35, 33, 0.22);
    transition: transform 0.15s ease;
}

.permission-switch input:checked + .switch-track[b-f4vg7ecz46] {
    background: #9a6b45;
}

    .permission-switch input:checked + .switch-track .switch-thumb[b-f4vg7ecz46] {
        transform: translateX(20px);
    }

.permission-switch input:disabled + .switch-track[b-f4vg7ecz46] {
    background: #6d8c70;
}

.permission-copy[b-f4vg7ecz46] {
    display: flex;
    min-width: 0;
    flex-direction: column;
}

    .permission-copy strong[b-f4vg7ecz46] {
        color: #382f2a;
        font-size: 0.82rem;
    }

    .permission-copy > span[b-f4vg7ecz46] {
        max-width: 620px;
        margin-top: 0.3rem;
        color: #897970;
        font-size: 0.72rem;
        line-height: 1.5;
    }

.permission-state[b-f4vg7ecz46] {
    min-width: 60px;
    color: #9b8c82;
    font-size: 0.62rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-align: right;
    text-transform: uppercase;
}

.permission-row.enabled .permission-state[b-f4vg7ecz46] {
    color: #747f61;
}

.permissions-actions[b-f4vg7ecz46] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
    padding: 1.5rem 2rem;
    background: #f5eee6;
}

.save-note[b-f4vg7ecz46] {
    color: #887970;
    font-size: 0.7rem;
}

.save-button[b-f4vg7ecz46] {
    min-height: 48px;
    padding: 0 1.6rem;
    background: #292321;
    border: 0;
    border-radius: 999px;
    color: white;
    font: inherit;
    font-size: 0.78rem;
    font-weight: 850;
    cursor: pointer;
}

    .save-button:hover:not(:disabled)[b-f4vg7ecz46] {
        background: #9a6b45;
    }

    .save-button:disabled[b-f4vg7ecz46] {
        opacity: 0.42;
        cursor: default;
    }

.security-note[b-f4vg7ecz46] {
    display: grid;
    grid-template-columns: minmax(240px, 0.6fr) minmax(0, 1fr);
    gap: 2rem;
    margin-top: 1.5rem;
    padding: 2rem;
    background: #eee4d8;
    border-radius: 22px;
}

.security-mark[b-f4vg7ecz46] {
    color: #9a6b45;
    font-size: 0.6rem;
    font-weight: 900;
    letter-spacing: 0.16em;
}

.security-note h2[b-f4vg7ecz46] {
    margin: 0.65rem 0 0;
    color: #352c27;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.45rem;
    font-weight: 500;
}

.security-note p[b-f4vg7ecz46] {
    margin: 0;
    color: #776960;
    font-size: 0.77rem;
    line-height: 1.7;
}

.message-panel[b-f4vg7ecz46],
.state-panel[b-f4vg7ecz46] {
    margin-bottom: 1.5rem;
    padding: 1rem 1.2rem;
    border-radius: 12px;
    font-size: 0.78rem;
}

    .message-panel.success[b-f4vg7ecz46] {
        background: #edf5ed;
        border: 1px solid #bcd1be;
        color: #536b56;
    }

    .message-panel.error[b-f4vg7ecz46],
    .state-panel.error[b-f4vg7ecz46] {
        background: #fff1ef;
        border: 1px solid #e4b9b2;
        color: #873e36;
    }

.state-panel[b-f4vg7ecz46] {
    background: white;
    border: 1px solid #e1d7cc;
    color: #776961;
}

    .state-panel p[b-f4vg7ecz46] {
        margin-bottom: 0;
    }

@media (max-width: 800px) {
    .account-summary[b-f4vg7ecz46] {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .account-security[b-f4vg7ecz46] {
        grid-column: 2;
        padding: 0;
        border-left: 0;
    }

    .controls-grid[b-f4vg7ecz46] {
        grid-template-columns: 1fr;
    }

    .control-block + .control-block[b-f4vg7ecz46] {
        border-top: 1px solid #e8ded4;
        border-left: 0;
    }

    .password-content[b-f4vg7ecz46] {
        grid-template-columns: 1fr;
    }

    .permission-group[b-f4vg7ecz46] {
        grid-template-columns: 1fr;
    }

    .group-heading[b-f4vg7ecz46] {
        padding: 1.4rem 1.5rem;
        border-right: 0;
        border-bottom: 1px solid #e3d7ca;
    }

    .security-note[b-f4vg7ecz46] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 600px) {
    .manage-page[b-f4vg7ecz46] {
        padding-top: 2.5rem;
    }

    .controls-heading[b-f4vg7ecz46],
    .password-heading[b-f4vg7ecz46] {
        align-items: flex-start;
        flex-direction: column;
    }

    .permissions-heading[b-f4vg7ecz46] {
        align-items: flex-start;
        flex-direction: column;
    }

    .permission-row[b-f4vg7ecz46] {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .permission-state[b-f4vg7ecz46] {
        grid-column: 2;
        text-align: left;
    }

    .permissions-actions[b-f4vg7ecz46] {
        align-items: stretch;
        flex-direction: column;
    }

    .save-button[b-f4vg7ecz46],
    .reset-password-button[b-f4vg7ecz46] {
        width: 100%;
    }
}
/* /Components/Pages/Admin/Menu.razor.rz.scp.css */
.catalog-page[b-mw7w1lrdry] {
    max-width: 1180px;
    margin: 0 auto;
    padding: 3rem 1.5rem 6rem;
}

.page-top[b-mw7w1lrdry] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 2rem;
    margin-bottom: 2.5rem;
}

.back-link[b-mw7w1lrdry] {
    display: inline-block;
    margin-bottom: 1.8rem;
    color: #8f6743;
    font-size: 0.85rem;
    font-weight: 750;
    text-decoration: none;
}

    .back-link:hover[b-mw7w1lrdry] {
        text-decoration: underline;
    }

.eyebrow[b-mw7w1lrdry],
.section-label[b-mw7w1lrdry] {
    margin: 0 0 0.55rem;
    color: #9a6b45;
    font-size: 0.7rem;
    font-weight: 900;
    letter-spacing: 0.17em;
    text-transform: uppercase;
}

.page-top h1[b-mw7w1lrdry] {
    margin: 0;
    color: #292321;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(3rem, 6vw, 5rem);
    font-weight: 600;
    letter-spacing: -0.05em;
    line-height: 0.95;
}

.page-description[b-mw7w1lrdry] {
    max-width: 700px;
    margin: 1.2rem 0 0;
    color: #756860;
    line-height: 1.65;
}

.top-actions[b-mw7w1lrdry] {
    flex: 0 0 auto;
}

.button[b-mw7w1lrdry] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: 0 1.3rem;
    border-radius: 999px;
    font: inherit;
    font-size: 0.88rem;
    font-weight: 800;
    cursor: pointer;
}

    .button:disabled[b-mw7w1lrdry],
    .text-button:disabled[b-mw7w1lrdry],
    .category-action:disabled[b-mw7w1lrdry] {
        opacity: 0.45;
        cursor: not-allowed;
    }

.button-primary[b-mw7w1lrdry] {
    background: #292321;
    border: 1px solid #292321;
    color: white;
}

.button-secondary[b-mw7w1lrdry] {
    background: white;
    border: 1px solid #cfc1b3;
    color: #292321;
}

.loading-card[b-mw7w1lrdry],
.error-card[b-mw7w1lrdry],
.settings-card[b-mw7w1lrdry],
.coming-next[b-mw7w1lrdry] {
    background: white;
    border: 1px solid #e4dbcf;
    border-radius: 22px;
}

.loading-card[b-mw7w1lrdry],
.error-card[b-mw7w1lrdry] {
    padding: 2rem;
}

.error-card[b-mw7w1lrdry] {
    color: #8e443a;
}

.settings-card[b-mw7w1lrdry] {
    display: grid;
    grid-template-columns: 1fr minmax(280px, 0.7fr);
    gap: 2rem;
    padding: 2rem;
}

.settings-copy h2[b-mw7w1lrdry],
.section-heading h2[b-mw7w1lrdry],
.coming-next h2[b-mw7w1lrdry] {
    margin: 0;
    color: #292321;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.8rem;
    font-weight: 600;
}

.settings-copy > p:last-child[b-mw7w1lrdry],
.section-heading p[b-mw7w1lrdry],
.coming-next p[b-mw7w1lrdry] {
    margin: 0.55rem 0 0;
    color: #756860;
    line-height: 1.55;
}

.toggle-row[b-mw7w1lrdry] {
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: center;
    gap: 1.25rem;
    cursor: pointer;
}

    .toggle-row > span:first-child[b-mw7w1lrdry] {
        display: flex;
        flex-direction: column;
    }

    .toggle-row strong[b-mw7w1lrdry] {
        color: #332a25;
        font-size: 0.92rem;
    }

    .toggle-row small[b-mw7w1lrdry] {
        margin-top: 0.2rem;
        color: #8a7d74;
    }

    .toggle-row input[b-mw7w1lrdry] {
        position: absolute;
        opacity: 0;
        pointer-events: none;
    }

.toggle[b-mw7w1lrdry] {
    position: relative;
    width: 48px;
    height: 28px;
    background: #d8cec4;
    border-radius: 999px;
    transition: background 0.15s ease;
}

    .toggle[b-mw7w1lrdry]::after {
        position: absolute;
        top: 4px;
        left: 4px;
        width: 20px;
        height: 20px;
        background: white;
        border-radius: 50%;
        box-shadow: 0 2px 5px rgba(41, 35, 33, 0.18);
        content: "";
        transition: transform 0.15s ease;
    }

.toggle-row input:checked + .toggle[b-mw7w1lrdry] {
    background: #71553f;
}

    .toggle-row input:checked + .toggle[b-mw7w1lrdry]::after {
        transform: translateX(20px);
    }

.settings-footer[b-mw7w1lrdry] {
    grid-column: 1 / -1;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 1rem;
    padding-top: 1.25rem;
    border-top: 1px solid #eee6dd;
}

.save-message[b-mw7w1lrdry] {
    color: #52745a;
    font-size: 0.85rem;
    font-weight: 750;
}

.summary-grid[b-mw7w1lrdry] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.8rem;
    margin: 1rem 0 3rem;
}

.summary-card[b-mw7w1lrdry] {
    display: flex;
    flex-direction: column;
    padding: 1.35rem 1.5rem;
    background: #f4ede5;
    border-radius: 16px;
}

    .summary-card span[b-mw7w1lrdry] {
        color: #776960;
        font-size: 0.76rem;
        font-weight: 750;
    }

    .summary-card strong[b-mw7w1lrdry] {
        margin-top: 0.25rem;
        color: #292321;
        font-family: Georgia, "Times New Roman", serif;
        font-size: 2rem;
        font-weight: 600;
    }

.catalog-section[b-mw7w1lrdry] {
    margin-top: 2rem;
}

.section-heading[b-mw7w1lrdry] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 2rem;
    margin-bottom: 1.3rem;
}

.text-button[b-mw7w1lrdry],
.category-action[b-mw7w1lrdry] {
    color: #8d653f;
    font: inherit;
    font-size: 0.82rem;
    font-weight: 800;
    text-decoration: none;
}

.text-button[b-mw7w1lrdry] {
    background: transparent;
    border: 0;
}

.category-action[b-mw7w1lrdry] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 0 0.85rem;
    background: #fff;
    border: 1px solid #d7c9bc;
    border-radius: 999px;
}

.text-button:hover[b-mw7w1lrdry],
.category-action:hover[b-mw7w1lrdry] {
    color: #5f432e;
}

.category-grid[b-mw7w1lrdry] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.category-card[b-mw7w1lrdry] {
    display: flex;
    flex-direction: column;
    min-height: 205px;
    padding: 1.5rem;
    background: white;
    border: 1px solid #e4dbcf;
    border-radius: 18px;
}

.category-card-top[b-mw7w1lrdry] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
}

.category-layout[b-mw7w1lrdry] {
    display: block;
    margin-bottom: 0.35rem;
    color: #a47750;
    font-size: 0.64rem;
    font-weight: 900;
    letter-spacing: 0.13em;
    text-transform: uppercase;
}

.category-card h3[b-mw7w1lrdry] {
    margin: 0;
    color: #302824;
    font-size: 1.1rem;
}

.category-card > p[b-mw7w1lrdry] {
    flex-grow: 1;
    margin: 0.8rem 0 1.2rem;
    color: #7b6e66;
    font-size: 0.86rem;
    line-height: 1.5;
}

.product-count[b-mw7w1lrdry] {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 32px;
    height: 32px;
    padding: 0 0.5rem;
    background: #f4ede5;
    border-radius: 999px;
    color: #765941;
    font-size: 0.78rem;
    font-weight: 850;
}

.category-footer[b-mw7w1lrdry] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding-top: 1rem;
    border-top: 1px solid #eee6dd;
}

.status[b-mw7w1lrdry] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.74rem;
    font-weight: 800;
}

    .status[b-mw7w1lrdry]::before {
        width: 7px;
        height: 7px;
        border-radius: 50%;
        content: "";
    }

    .status.visible[b-mw7w1lrdry] {
        color: #52745a;
    }

        .status.visible[b-mw7w1lrdry]::before {
            background: #6c946f;
        }

    .status.hidden[b-mw7w1lrdry] {
        color: #9a665a;
    }

        .status.hidden[b-mw7w1lrdry]::before {
            background: #b26d60;
        }

.coming-next[b-mw7w1lrdry] {
    display: grid;
    grid-template-columns: 1.5fr 1fr;
    gap: 2rem;
    margin-top: 3rem;
    padding: 2rem;
}

.feature-list[b-mw7w1lrdry] {
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    justify-content: flex-end;
    gap: 0.5rem;
}

    .feature-list span[b-mw7w1lrdry] {
        padding: 0.55rem 0.8rem;
        background: #f4ede5;
        border-radius: 999px;
        color: #715844;
        font-size: 0.75rem;
        font-weight: 800;
    }

@media (max-width: 900px) {
    .category-grid[b-mw7w1lrdry] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .summary-grid[b-mw7w1lrdry] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .settings-card[b-mw7w1lrdry] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 650px) {
    .catalog-page[b-mw7w1lrdry] {
        padding: 2rem 1rem 4rem;
    }

    .page-top[b-mw7w1lrdry],
    .section-heading[b-mw7w1lrdry] {
        align-items: stretch;
        flex-direction: column;
    }

    .top-actions[b-mw7w1lrdry],
    .top-actions .button[b-mw7w1lrdry] {
        width: 100%;
    }

    .category-grid[b-mw7w1lrdry],
    .summary-grid[b-mw7w1lrdry] {
        grid-template-columns: 1fr;
    }

    .coming-next[b-mw7w1lrdry] {
        grid-template-columns: 1fr;
    }

    .feature-list[b-mw7w1lrdry] {
        justify-content: flex-start;
    }

    .settings-footer[b-mw7w1lrdry] {
        align-items: stretch;
        flex-direction: column;
    }

        .settings-footer .button[b-mw7w1lrdry] {
            width: 100%;
        }
}
/* /Components/Pages/Admin/Modifiers.razor.rz.scp.css */
.modifier-page[b-yay4agxl1i] {
    max-width: 1180px;
    margin: 0 auto;
    padding: 3rem 1.5rem 6rem;
}

.page-header[b-yay4agxl1i] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 2rem;
    margin-bottom: 2rem;
}

    .page-header h1[b-yay4agxl1i] {
        margin: 0;
        color: #292321;
        font-family: Georgia, "Times New Roman", serif;
        font-size: clamp(3rem, 6vw, 5rem);
        font-weight: 600;
        letter-spacing: -0.05em;
    }

.page-description[b-yay4agxl1i] {
    max-width: 680px;
    margin: 0.8rem 0 0;
    color: #756860;
}

.eyebrow[b-yay4agxl1i] {
    margin: 0 0 0.55rem;
    color: #9a6b45;
    font-size: 0.7rem;
    font-weight: 900;
    letter-spacing: 0.17em;
    text-transform: uppercase;
}

.back-link[b-yay4agxl1i] {
    display: inline-block;
    margin-bottom: 1.5rem;
    color: #8f6743;
    font-size: 0.85rem;
    font-weight: 750;
    text-decoration: none;
}

.header-actions[b-yay4agxl1i],
.bottom-actions[b-yay4agxl1i] {
    display: flex;
    gap: 0.75rem;
}

.save-button[b-yay4agxl1i],
.secondary-button[b-yay4agxl1i],
.cancel-button[b-yay4agxl1i] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: 0 1.35rem;
    border-radius: 999px;
    font: inherit;
    font-size: 0.85rem;
    font-weight: 800;
    text-decoration: none;
    cursor: pointer;
}

.save-button[b-yay4agxl1i] {
    background: #292321;
    border: 1px solid #292321;
    color: #fff;
}

    .save-button:disabled[b-yay4agxl1i] {
        opacity: 0.55;
        cursor: wait;
    }

.secondary-button[b-yay4agxl1i] {
    background: #fff;
    border: 1px solid #cdbdae;
    color: #604c3e;
}

.cancel-button[b-yay4agxl1i] {
    background: transparent;
    border: 1px solid #cdbdae;
    color: #604c3e;
}

.small-button[b-yay4agxl1i] {
    min-height: 38px;
    padding: 0 1rem;
    font-size: 0.78rem;
}

.intro-card[b-yay4agxl1i] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
    margin-bottom: 1rem;
    padding: 1.5rem;
    background: #f5eee6;
    border: 1px solid #e3d6c9;
    border-radius: 18px;
}

    .intro-card > div:first-child[b-yay4agxl1i] {
        max-width: 680px;
    }

    .intro-card strong[b-yay4agxl1i] {
        color: #3c302a;
    }

    .intro-card p[b-yay4agxl1i] {
        margin: 0.35rem 0 0;
        color: #796b63;
        font-size: 0.84rem;
        line-height: 1.55;
    }

.example[b-yay4agxl1i] {
    display: flex;
    flex-direction: column;
    min-width: 210px;
    padding: 0.9rem 1rem;
    background: #fff;
    border-radius: 12px;
}

    .example span[b-yay4agxl1i] {
        margin-bottom: 0.25rem;
        color: #a17755;
        font-size: 0.62rem;
        font-weight: 900;
        letter-spacing: 0.12em;
        text-transform: uppercase;
    }

    .example small[b-yay4agxl1i] {
        margin-top: 0.2rem;
        color: #887970;
    }

.group-card[b-yay4agxl1i] {
    margin-bottom: 1rem;
    padding: 1.6rem;
    background: #fff;
    border: 1px solid #e4dbd1;
    border-radius: 20px;
}

.group-header[b-yay4agxl1i] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
}

.group-heading[b-yay4agxl1i] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.group-number[b-yay4agxl1i] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    background: #f2e9df;
    border-radius: 50%;
    color: #996b47;
    font-size: 0.75rem;
    font-weight: 900;
}

.group-name[b-yay4agxl1i] {
    width: min(420px, 55vw);
    padding: 0;
    background: transparent;
    border: 0;
    outline: none;
    color: #302824;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.55rem;
    font-weight: 700;
}

.group-subtitle[b-yay4agxl1i] {
    display: block;
    margin-top: 0.2rem;
    color: #94867e;
    font-size: 0.74rem;
}

.group-actions[b-yay4agxl1i] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.active-toggle[b-yay4agxl1i],
.option-toggles label[b-yay4agxl1i] {
    display: flex;
    align-items: center;
    gap: 0.45rem;
    color: #62554e;
    font-size: 0.8rem;
    font-weight: 750;
}

.group-settings[b-yay4agxl1i] {
    display: flex;
    gap: 1rem;
    margin-top: 1.3rem;
    padding-top: 1.3rem;
    border-top: 1px solid #eee6df;
}

.field[b-yay4agxl1i] {
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
}

    .field label[b-yay4agxl1i] {
        color: #544741;
        font-size: 0.74rem;
        font-weight: 800;
    }

    .field input[b-yay4agxl1i],
    .field select[b-yay4agxl1i] {
        width: 100%;
        box-sizing: border-box;
        padding: 0.75rem 0.85rem;
        background: #fbf9f6;
        border: 1px solid #ddd1c4;
        border-radius: 9px;
        color: #332a25;
        font: inherit;
        font-size: 0.82rem;
    }

.group-settings .field[b-yay4agxl1i] {
    width: 260px;
}

.group-settings .small-field[b-yay4agxl1i] {
    width: 120px;
}

.selection-help[b-yay4agxl1i] {
    margin-top: 0.7rem;
    color: #8a7b73;
    font-size: 0.76rem;
}

.options-heading[b-yay4agxl1i] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 1rem;
    margin-top: 2rem;
    margin-bottom: 0.8rem;
}

    .options-heading h2[b-yay4agxl1i] {
        margin: 0;
        color: #3a302b;
        font-family: Georgia, "Times New Roman", serif;
        font-size: 1.2rem;
    }

    .options-heading p[b-yay4agxl1i] {
        margin: 0.2rem 0 0;
        color: #94867e;
        font-size: 0.76rem;
    }

.option-list[b-yay4agxl1i] {
    display: flex;
    flex-direction: column;
    gap: 0.7rem;
}

.option-card[b-yay4agxl1i] {
    padding: 1rem;
    background: #faf7f3;
    border: 1px solid #e6dcd2;
    border-radius: 14px;
}

.option-header[b-yay4agxl1i] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 0.9rem;
    color: #3c322d;
}

    .option-header > div[b-yay4agxl1i] {
        display: flex;
        align-items: center;
        gap: 0.6rem;
    }

.disabled-badge[b-yay4agxl1i] {
    padding: 0.2rem 0.5rem;
    background: #ede7e2;
    border-radius: 999px;
    color: #877a72;
    font-size: 0.62rem;
    font-weight: 850;
    text-transform: uppercase;
}

.remove-button[b-yay4agxl1i] {
    padding: 0;
    background: transparent;
    border: 0;
    color: #a45c4e;
    font: inherit;
    font-size: 0.74rem;
    font-weight: 850;
    cursor: pointer;
}

.option-grid[b-yay4agxl1i] {
    display: grid;
    grid-template-columns: 1.25fr 0.75fr 1fr 1fr;
    gap: 0.75rem;
}

.option-toggles[b-yay4agxl1i] {
    display: flex;
    flex-wrap: wrap;
    gap: 1.25rem;
    margin-top: 1rem;
}

.stock-field[b-yay4agxl1i] {
    max-width: 220px;
    margin-top: 1rem;
}

.allergen-panel[b-yay4agxl1i] {
    margin-top: 1rem;
    overflow: hidden;
    background: #fff;
    border: 1px solid #e3d9cf;
    border-radius: 11px;
}

    .allergen-panel summary[b-yay4agxl1i] {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 0.85rem 1rem;
        color: #51433c;
        font-size: 0.79rem;
        font-weight: 850;
        cursor: pointer;
    }

.allergen-summary[b-yay4agxl1i] {
    color: #9a6b45;
    font-size: 0.7rem;
}

.allergen-warning[b-yay4agxl1i] {
    padding: 0.75rem 1rem;
    background: #f7f0e8;
    border-top: 1px solid #e3d9cf;
    color: #79685e;
    font-size: 0.75rem;
}

.allergen-list[b-yay4agxl1i] {
    border-top: 1px solid #e9e0d8;
}

.allergen-row[b-yay4agxl1i] {
    display: grid;
    grid-template-columns: minmax(240px, 1.5fr) minmax(150px, 0.65fr) minmax(180px, 0.85fr);
    align-items: center;
    gap: 0.8rem;
    padding: 0.85rem 1rem;
    border-bottom: 1px solid #eee7e1;
}

    .allergen-row:last-child[b-yay4agxl1i] {
        border-bottom: 0;
    }

.allergen-info[b-yay4agxl1i] {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
}

    .allergen-info strong[b-yay4agxl1i] {
        color: #453933;
        font-size: 0.8rem;
    }

    .allergen-info small[b-yay4agxl1i] {
        color: #90827a;
        font-size: 0.68rem;
        line-height: 1.35;
    }

.allergen-status[b-yay4agxl1i] {
    min-width: 150px;
}

.empty-options[b-yay4agxl1i],
.loading-card[b-yay4agxl1i] {
    padding: 1.5rem;
    background: #faf7f3;
    border: 1px dashed #d7cabe;
    border-radius: 12px;
    color: #897a71;
    text-align: center;
}

.message[b-yay4agxl1i] {
    margin-bottom: 1rem;
    padding: 1rem 1.2rem;
    border-radius: 12px;
}

.error-message[b-yay4agxl1i] {
    background: #f7e8e4;
    color: #873f34;
}

.success-message[b-yay4agxl1i] {
    background: #eaf2e8;
    color: #42603c;
}

.bottom-actions[b-yay4agxl1i] {
    justify-content: flex-end;
    margin-top: 2rem;
}

@media (max-width: 850px) {
    .page-header[b-yay4agxl1i],
    .intro-card[b-yay4agxl1i],
    .group-header[b-yay4agxl1i] {
        align-items: stretch;
        flex-direction: column;
    }

    .header-actions[b-yay4agxl1i] {
        width: 100%;
    }

        .header-actions > *[b-yay4agxl1i] {
            flex: 1;
        }

    .option-grid[b-yay4agxl1i],
    .allergen-row[b-yay4agxl1i] {
        grid-template-columns: 1fr 1fr;
    }

    .allergen-info[b-yay4agxl1i] {
        grid-column: 1 / -1;
    }

    .group-name[b-yay4agxl1i] {
        width: 100%;
    }
}

@media (max-width: 600px) {
    .modifier-page[b-yay4agxl1i] {
        padding: 2rem 1rem 4rem;
    }

    .header-actions[b-yay4agxl1i],
    .bottom-actions[b-yay4agxl1i],
    .group-settings[b-yay4agxl1i] {
        flex-direction: column;
    }

        .header-actions > *[b-yay4agxl1i],
        .bottom-actions > *[b-yay4agxl1i],
        .group-settings .field[b-yay4agxl1i],
        .group-settings .small-field[b-yay4agxl1i] {
            width: 100%;
        }

    .option-grid[b-yay4agxl1i],
    .allergen-row[b-yay4agxl1i] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Pages/Admin/Notices.razor.rz.scp.css */
.admin-page[b-fw2o863z87] {
    max-width: 1000px;
    margin: 0 auto;
    padding: 4rem 1.5rem 6rem;
}

.page-header[b-fw2o863z87] {
    margin-bottom: 2.5rem;
}

    .page-header h1[b-fw2o863z87] {
        margin: 0;
        font-size: clamp(2.5rem, 6vw, 4rem);
    }

.back-link[b-fw2o863z87] {
    display: inline-block;
    margin-bottom: 2rem;
    color: #292323;
    font-weight: 700;
    text-decoration: none;
}

.eyebrow[b-fw2o863z87] {
    margin-bottom: 0.5rem;
    color: #9a6b45;
    font-size: 0.8rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.notice-card[b-fw2o863z87],
.existing-section[b-fw2o863z87] {
    margin-bottom: 2rem;
    padding: 2rem;
    background: white;
    border: 1px solid #e4dbcf;
    border-radius: 20px;
}

.form-grid[b-fw2o863z87] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.25rem;
    margin-bottom: 1.5rem;
}

.field[b-fw2o863z87] {
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
}

    .field label[b-fw2o863z87] {
        font-size: 0.8rem;
        font-weight: 700;
    }

    .field input[b-fw2o863z87],
    .field textarea[b-fw2o863z87] {
        padding: 0.75rem;
        border: 1px solid #d8cfc5;
        border-radius: 10px;
        font: inherit;
    }

    .field textarea[b-fw2o863z87] {
        resize: vertical;
    }

    .field small[b-fw2o863z87],
    .schedule-box small[b-fw2o863z87] {
        color: #756a66;
    }

.full-width[b-fw2o863z87] {
    grid-column: 1 / -1;
}

.schedule-box[b-fw2o863z87] {
    padding: 1.25rem;
    background: #faf8f5;
    border: 1px solid #e4dbcf;
    border-radius: 14px;
}

    .schedule-box h3[b-fw2o863z87] {
        margin: 0 0 1rem;
        font-size: 1rem;
    }

.schedule-heading[b-fw2o863z87] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.date-time-fields[b-fw2o863z87] {
    display: grid;
    grid-template-columns: 1.5fr 1fr;
    gap: 0.75rem;
    margin-bottom: 0.6rem;
}

.expiry-toggle[b-fw2o863z87] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.8rem;
}

.form-actions[b-fw2o863z87] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.save-button[b-fw2o863z87] {
    padding: 0.9rem 1.5rem;
    border: 0;
    border-radius: 999px;
    background: #292323;
    color: white;
    font-weight: 700;
    cursor: pointer;
}

.cancel-button[b-fw2o863z87] {
    padding: 0.85rem 1.4rem;
    border: 1px solid #9a6b45;
    border-radius: 999px;
    background: transparent;
    color: #76502f;
    font-weight: 700;
    cursor: pointer;
}

.notice-list[b-fw2o863z87] {
    overflow: hidden;
    border: 1px solid #eee6dc;
    border-radius: 14px;
}

.notice-row[b-fw2o863z87] {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 1.5rem;
    padding: 1.5rem;
    border-bottom: 1px solid #eee6dc;
}

    .notice-row:last-child[b-fw2o863z87] {
        border-bottom: 0;
    }

.notice-title-row[b-fw2o863z87] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.75rem;
}

.notice-content p[b-fw2o863z87] {
    margin: 0.75rem 0;
}

.notice-dates[b-fw2o863z87] {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    color: #756a66;
    font-size: 0.85rem;
}

.status[b-fw2o863z87] {
    padding: 0.25rem 0.65rem;
    border-radius: 999px;
    font-size: 0.7rem;
    font-weight: 800;
    text-transform: uppercase;
}

    .status.live[b-fw2o863z87] {
        background: #e4f1e6;
        color: #245a2c;
    }

    .status.scheduled[b-fw2o863z87] {
        background: #fff1d8;
        color: #805a1d;
    }

    .status.expired[b-fw2o863z87],
    .status.disabled[b-fw2o863z87] {
        background: #eeeeee;
        color: #666;
    }

.notice-actions[b-fw2o863z87] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.edit-button[b-fw2o863z87],
.toggle-button[b-fw2o863z87],
.delete-button[b-fw2o863z87] {
    padding: 0.6rem 1rem;
    border-radius: 999px;
    background: transparent;
    font-weight: 700;
    cursor: pointer;
}

.edit-button[b-fw2o863z87] {
    border: 1px solid #9a6b45;
    color: #76502f;
}

.toggle-button[b-fw2o863z87] {
    border: 1px solid #292323;
    color: #292323;
}

.delete-button[b-fw2o863z87] {
    border: 1px solid #c86161;
    color: #9a3030;
}

.empty-state[b-fw2o863z87] {
    padding: 2rem;
    color: #756a66;
    text-align: center;
}

.success-message[b-fw2o863z87],
.error-message[b-fw2o863z87] {
    margin-bottom: 1.5rem;
    padding: 1rem 1.25rem;
    border-radius: 12px;
}

.success-message[b-fw2o863z87] {
    background: #e4f1e6;
    color: #245a2c;
}

.error-message[b-fw2o863z87] {
    background: #f6dddd;
    color: #8a2929;
}

@media (max-width: 700px) {
    .form-grid[b-fw2o863z87] {
        grid-template-columns: 1fr;
    }

    .full-width[b-fw2o863z87] {
        grid-column: auto;
    }

    .date-time-fields[b-fw2o863z87] {
        grid-template-columns: 1fr 1fr;
    }

    .notice-row[b-fw2o863z87] {
        grid-template-columns: 1fr;
    }

    .notice-actions[b-fw2o863z87],
    .form-actions[b-fw2o863z87],
    .schedule-heading[b-fw2o863z87] {
        flex-wrap: wrap;
    }
}
/* /Components/Pages/Admin/OpeningHours.razor.rz.scp.css */
.admin-page[b-4qn500gmqp] {
    max-width: 1000px;
    margin: 0 auto;
    padding: 4rem 1.5rem 6rem;
}

.page-header[b-4qn500gmqp] {
    margin-bottom: 2.5rem;
}

    .page-header h1[b-4qn500gmqp] {
        margin: 0;
        font-size: clamp(2.5rem, 6vw, 4rem);
    }

    .page-header > p:last-child[b-4qn500gmqp] {
        color: #6d625e;
    }

.back-link[b-4qn500gmqp] {
    display: inline-block;
    margin-bottom: 2rem;
    color: #292323;
    font-weight: 700;
    text-decoration: none;
}

.eyebrow[b-4qn500gmqp] {
    margin-bottom: 0.5rem;
    color: #9a6b45;
    font-size: 0.8rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.hours-editor[b-4qn500gmqp] {
    overflow: hidden;
    background: white;
    border: 1px solid #e4dbcf;
    border-radius: 20px;
}

.hours-row[b-4qn500gmqp] {
    display: grid;
    grid-template-columns: 1.3fr 1fr 1fr 1fr;
    align-items: center;
    gap: 1.5rem;
    padding: 1.25rem 1.5rem;
    border-bottom: 1px solid #eee6dc;
}

    .hours-row:last-child[b-4qn500gmqp] {
        border-bottom: 0;
    }

.day-name[b-4qn500gmqp] {
    font-size: 1.05rem;
    font-weight: 700;
}

.closed-toggle[b-4qn500gmqp] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    cursor: pointer;
}

    .closed-toggle input[b-4qn500gmqp] {
        width: 18px;
        height: 18px;
    }

.time-field[b-4qn500gmqp] {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
}

    .time-field label[b-4qn500gmqp] {
        color: #756a66;
        font-size: 0.75rem;
        font-weight: 700;
        text-transform: uppercase;
    }

    .time-field input[b-4qn500gmqp] {
        width: 100%;
        padding: 0.65rem;
        border: 1px solid #d8cfc5;
        border-radius: 10px;
        background: white;
        color: #292323;
    }

        .time-field input:disabled[b-4qn500gmqp] {
            background: #f2eee9;
            color: #aaa19c;
        }

.save-area[b-4qn500gmqp] {
    display: flex;
    justify-content: flex-end;
    margin-top: 1.5rem;
}

.save-button[b-4qn500gmqp] {
    padding: 0.9rem 1.5rem;
    border: 0;
    border-radius: 999px;
    background: #292323;
    color: white;
    font-size: 1rem;
    font-weight: 700;
    cursor: pointer;
}

    .save-button:hover[b-4qn500gmqp] {
        opacity: 0.88;
    }

    .save-button:disabled[b-4qn500gmqp] {
        opacity: 0.6;
        cursor: default;
    }

.success-message[b-4qn500gmqp],
.error-message[b-4qn500gmqp],
.status-message[b-4qn500gmqp] {
    margin-bottom: 1.5rem;
    padding: 1rem 1.25rem;
    border-radius: 12px;
}

.success-message[b-4qn500gmqp] {
    background: #e4f1e6;
    color: #245a2c;
}

.error-message[b-4qn500gmqp] {
    background: #f6dddd;
    color: #8a2929;
}

.status-message[b-4qn500gmqp] {
    background: white;
    border: 1px solid #e4dbcf;
}

@media (max-width: 700px) {
    .hours-row[b-4qn500gmqp] {
        grid-template-columns: 1fr 1fr;
        gap: 1rem;
    }

    .day-name[b-4qn500gmqp] {
        font-size: 1.15rem;
    }

    .save-button[b-4qn500gmqp] {
        width: 100%;
    }
}
/* /Components/Pages/Admin/ProductEdit.razor.rz.scp.css */
.product-page[b-ekzf17g57o] {
    max-width: 1100px;
    margin: 0 auto;
    padding: 3rem 1.5rem 6rem;
    color: #292321;
}

.page-header[b-ekzf17g57o] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 2rem;
    margin-bottom: 2.5rem;
}

.page-header h1[b-ekzf17g57o] {
    margin: 0;
    color: #292321;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(3rem, 6vw, 5rem);
    font-weight: 600;
    line-height: 0.95;
    letter-spacing: -0.05em;
}

.page-header p:last-child[b-ekzf17g57o] {
    max-width: 650px;
    margin: 0.9rem 0 0;
    color: #756860;
    line-height: 1.55;
}

.back-link[b-ekzf17g57o] {
    display: inline-block;
    margin-bottom: 1.5rem;
    color: #8f6743;
    font-size: 0.85rem;
    font-weight: 750;
    text-decoration: none;
}

.back-link:hover[b-ekzf17g57o] {
    text-decoration: underline;
}

.eyebrow[b-ekzf17g57o] {
    margin: 0 0 0.55rem;
    color: #9a6b45;
    font-size: 0.7rem;
    font-weight: 900;
    letter-spacing: 0.17em;
    text-transform: uppercase;
}

.editor-card[b-ekzf17g57o] {
    margin-bottom: 1rem;
    padding: 2rem;
    background: #fff;
    border: 1px solid #e4dbcf;
    border-radius: 22px;
}

.section-heading[b-ekzf17g57o] {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    margin-bottom: 1.75rem;
}

.section-heading > span[b-ekzf17g57o] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    flex: 0 0 38px;
    background: #f4ede5;
    border-radius: 50%;
    color: #9a6b45;
    font-size: 0.7rem;
    font-weight: 900;
}

.section-heading h2[b-ekzf17g57o] {
    margin: 0;
    color: #292321;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.55rem;
}

.section-heading p[b-ekzf17g57o] {
    margin: 0.3rem 0 0;
    color: #83766e;
    font-size: 0.88rem;
    line-height: 1.45;
}

.form-grid[b-ekzf17g57o],
.variant-grid[b-ekzf17g57o] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.field[b-ekzf17g57o] {
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
}

.field-wide[b-ekzf17g57o] {
    grid-column: 1 / -1;
}

.field label[b-ekzf17g57o],
.mini-field span[b-ekzf17g57o] {
    color: #51453f;
    font-size: 0.78rem;
    font-weight: 800;
}

.field input[b-ekzf17g57o],
.field select[b-ekzf17g57o],
.field textarea[b-ekzf17g57o],
.mini-field input[b-ekzf17g57o] {
    width: 100%;
    box-sizing: border-box;
    padding: 0.85rem 0.95rem;
    background: #fbf9f6;
    border: 1px solid #ddd1c4;
    border-radius: 10px;
    color: #292321;
    font: inherit;
}

.field input:disabled[b-ekzf17g57o],
.field select:disabled[b-ekzf17g57o] {
    cursor: not-allowed;
    opacity: 0.65;
}

.field textarea[b-ekzf17g57o] {
    resize: vertical;
}

.variants[b-ekzf17g57o] {
    display: flex;
    flex-direction: column;
    gap: 0.8rem;
}

.variant-card[b-ekzf17g57o] {
    padding: 1.25rem;
    background: #faf7f3;
    border: 1px solid #e7ddd3;
    border-radius: 16px;
}

.variant-top[b-ekzf17g57o] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
}

.remove-button[b-ekzf17g57o] {
    background: transparent;
    border: 0;
    color: #a45c4e;
    font: inherit;
    font-size: 0.78rem;
    font-weight: 800;
    cursor: pointer;
}

.option-row[b-ekzf17g57o] {
    display: flex;
    flex-wrap: wrap;
    gap: 1.25rem;
    margin-top: 1rem;
}

.option-row label[b-ekzf17g57o],
.modifier-settings label[b-ekzf17g57o] {
    display: flex;
    align-items: center;
    gap: 0.45rem;
    color: #62554e;
    font-size: 0.82rem;
    font-weight: 700;
}

.stock-field[b-ekzf17g57o] {
    max-width: 220px;
    margin-top: 1rem;
}

.secondary-button[b-ekzf17g57o],
.save-button[b-ekzf17g57o],
.cancel-button[b-ekzf17g57o] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: 0 1.35rem;
    border-radius: 999px;
    font: inherit;
    font-size: 0.88rem;
    font-weight: 800;
    text-decoration: none;
    cursor: pointer;
}

.secondary-button[b-ekzf17g57o] {
    background: #fff;
    border: 1px solid #cdbdae;
    color: #604c3e;
}

.save-button[b-ekzf17g57o] {
    background: #292321;
    border: 1px solid #292321;
    color: #fff;
}

.save-button:disabled[b-ekzf17g57o] {
    cursor: wait;
    opacity: 0.55;
}

.cancel-button[b-ekzf17g57o] {
    background: transparent;
    border: 1px solid #cdbdae;
    color: #604c3e;
}

.add-row-button[b-ekzf17g57o] {
    margin-top: 1rem;
}

.photo-management-card[b-ekzf17g57o] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
    padding: 1.25rem;
    background: #f8f3ec;
    border: 1px solid #dfd1c4;
    border-radius: 16px;
}

.photo-management-card > div[b-ekzf17g57o] {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
}

.photo-management-card strong[b-ekzf17g57o] {
    color: #403630;
}

.photo-management-card span[b-ekzf17g57o] {
    color: #786960;
    font-size: 0.82rem;
}

.option-grid[b-ekzf17g57o],
.modifier-grid[b-ekzf17g57o] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.8rem;
}

.option-card[b-ekzf17g57o],
.modifier-card[b-ekzf17g57o] {
    padding: 1rem;
    background: #faf7f3;
    border: 1px solid #e7ddd3;
    border-radius: 14px;
}

.option-card[b-ekzf17g57o] {
    display: flex;
    align-items: flex-start;
    gap: 0.7rem;
    cursor: pointer;
}

.option-card span[b-ekzf17g57o],
.modifier-title span[b-ekzf17g57o] {
    display: flex;
    flex-direction: column;
}

.option-card strong[b-ekzf17g57o],
.modifier-title strong[b-ekzf17g57o] {
    color: #3a312c;
    font-size: 0.87rem;
}

.option-card small[b-ekzf17g57o],
.modifier-title small[b-ekzf17g57o] {
    margin-top: 0.2rem;
    color: #8a7d74;
    font-size: 0.75rem;
}

.price-mode[b-ekzf17g57o] {
    max-width: 320px;
    margin-top: 1.25rem;
}

.modifier-title[b-ekzf17g57o] {
    display: flex;
    align-items: center;
    gap: 0.7rem;
    cursor: pointer;
}

.modifier-settings[b-ekzf17g57o] {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    gap: 1rem;
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid #e7ddd3;
}

.mini-field[b-ekzf17g57o] {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
    width: 150px;
}

.modifier-options-preview[b-ekzf17g57o] {
    display: flex;
    flex-direction: column;
    gap: 0.45rem;
    margin-top: 0.9rem;
    padding-top: 0.85rem;
    border-top: 1px solid #e7ddd3;
}

.modifier-options-heading[b-ekzf17g57o] {
    color: #9a6b45;
    font-size: 0.64rem;
    font-weight: 900;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.modifier-options-empty[b-ekzf17g57o] {
    color: #95877f;
    font-size: 0.76rem;
}

.modifier-option-preview[b-ekzf17g57o] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 0.55rem 0.65rem;
    background: #fff;
    border: 1px solid #eee4da;
    border-radius: 9px;
}

.modifier-option-preview > span[b-ekzf17g57o] {
    display: flex;
    min-width: 0;
    flex-direction: column;
}

.modifier-option-preview strong[b-ekzf17g57o] {
    color: #443832;
    font-size: 0.78rem;
}

.modifier-option-preview small[b-ekzf17g57o] {
    margin-top: 0.1rem;
    color: #9a6b45;
    font-size: 0.65rem;
    font-weight: 800;
}

.modifier-option-price[b-ekzf17g57o] {
    flex-shrink: 0;
    color: #715844;
    font-size: 0.76rem;
}

.allergen-warning[b-ekzf17g57o] {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    margin-bottom: 1.25rem;
    padding: 1rem 1.15rem;
    background: #f8f3ec;
    border-left: 4px solid #b28155;
    border-radius: 10px;
}

.allergen-warning strong[b-ekzf17g57o] {
    color: #4b3b31;
    font-size: 0.82rem;
}

.allergen-warning span[b-ekzf17g57o] {
    color: #786b63;
    font-size: 0.8rem;
    line-height: 1.5;
}

.allergen-list[b-ekzf17g57o] {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid #e6ddd4;
    border-radius: 14px;
}

.allergen-row[b-ekzf17g57o] {
    display: grid;
    grid-template-columns: minmax(250px, 1.4fr) minmax(170px, 0.55fr) minmax(220px, 0.8fr);
    align-items: center;
    gap: 1rem;
    padding: 1rem;
    background: #fff;
    border-bottom: 1px solid #eee6df;
}

.allergen-row:last-child[b-ekzf17g57o] {
    border-bottom: 0;
}

.allergen-info[b-ekzf17g57o] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.allergen-info strong[b-ekzf17g57o] {
    color: #392f2a;
    font-size: 0.86rem;
}

.allergen-info small[b-ekzf17g57o] {
    color: #8a7d75;
    font-size: 0.74rem;
    line-height: 1.4;
}

.allergen-control select[b-ekzf17g57o],
.allergen-detail input[b-ekzf17g57o] {
    width: 100%;
    box-sizing: border-box;
    padding: 0.7rem 0.8rem;
    background: #fbf9f6;
    border: 1px solid #ddd1c4;
    border-radius: 9px;
    color: #332a25;
    font: inherit;
    font-size: 0.82rem;
}

.allergen-notes[b-ekzf17g57o] {
    margin-top: 1.25rem;
}

.permission-note[b-ekzf17g57o] {
    display: block;
    padding: 0.85rem 1rem;
    background: #f6f0e9;
    border-radius: 10px;
    color: #836f62;
    font-size: 0.8rem;
}

.bottom-actions[b-ekzf17g57o] {
    display: flex;
    justify-content: flex-end;
    gap: 0.75rem;
    margin-top: 2rem;
}

.message[b-ekzf17g57o],
.loading-card[b-ekzf17g57o] {
    margin-bottom: 1rem;
    padding: 1rem 1.2rem;
    border-radius: 12px;
}

.loading-card[b-ekzf17g57o] {
    background: #faf7f3;
    border: 1px solid #e7ddd3;
    color: #786960;
}

.error-message[b-ekzf17g57o] {
    background: #f7e8e4;
    color: #873f34;
}

.error-message a[b-ekzf17g57o] {
    color: inherit;
    font-weight: 800;
}

.success-message[b-ekzf17g57o] {
    background: #eaf2e8;
    color: #42603c;
}

@media (max-width: 750px) {
    .allergen-row[b-ekzf17g57o] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 700px) {
    .product-page[b-ekzf17g57o] {
        padding: 2rem 1rem 5rem;
    }

    .page-header[b-ekzf17g57o] {
        align-items: stretch;
        flex-direction: column;
    }

    .page-header .save-button[b-ekzf17g57o] {
        width: 100%;
    }

    .editor-card[b-ekzf17g57o] {
        padding: 1.25rem;
        border-radius: 18px;
    }

    .form-grid[b-ekzf17g57o],
    .variant-grid[b-ekzf17g57o],
    .option-grid[b-ekzf17g57o],
    .modifier-grid[b-ekzf17g57o] {
        grid-template-columns: 1fr;
    }

    .field-wide[b-ekzf17g57o] {
        grid-column: auto;
    }

    .photo-management-card[b-ekzf17g57o] {
        align-items: stretch;
        flex-direction: column;
    }

    .photo-management-card .secondary-button[b-ekzf17g57o] {
        width: 100%;
        box-sizing: border-box;
    }

    .modifier-settings[b-ekzf17g57o] {
        align-items: stretch;
        flex-direction: column;
    }

    .mini-field[b-ekzf17g57o],
    .stock-field[b-ekzf17g57o],
    .price-mode[b-ekzf17g57o] {
        max-width: none;
        width: 100%;
    }

    .bottom-actions[b-ekzf17g57o] {
        flex-direction: column-reverse;
    }

    .bottom-actions > *[b-ekzf17g57o] {
        width: 100%;
        box-sizing: border-box;
    }

    .secondary-button.add-row-button[b-ekzf17g57o] {
        width: 100%;
        box-sizing: border-box;
    }
}

@media (max-width: 430px) {
    .section-heading > span[b-ekzf17g57o] {
        display: none;
    }

    .section-heading[b-ekzf17g57o] {
        gap: 0;
    }

    .option-row[b-ekzf17g57o] {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 0.8rem;
    }
}
/* /Components/Pages/Admin/ProductImages.razor.rz.scp.css */
.images-page[b-lbm42xyqh2] {
    max-width: 1180px;
    margin: 0 auto;
    padding: 3rem 1.5rem 6rem;
}

.page-header[b-lbm42xyqh2] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 2rem;
    margin-bottom: 2rem;
}

    .page-header h1[b-lbm42xyqh2] {
        margin: 0;
        color: #292321;
        font-family: Georgia, "Times New Roman", serif;
        font-size: clamp(3rem, 6vw, 5rem);
        font-weight: 600;
        letter-spacing: -0.05em;
    }

.page-description[b-lbm42xyqh2] {
    margin: 0.6rem 0 0;
    color: #756860;
    font-size: 1rem;
}

.back-link[b-lbm42xyqh2] {
    display: inline-block;
    margin-bottom: 1.5rem;
    color: #8f6743;
    font-size: 0.85rem;
    font-weight: 750;
    text-decoration: none;
}

.eyebrow[b-lbm42xyqh2],
.section-label[b-lbm42xyqh2] {
    margin: 0 0 0.45rem;
    color: #9a6b45;
    font-size: 0.68rem;
    font-weight: 900;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.done-button[b-lbm42xyqh2],
.save-button[b-lbm42xyqh2],
.secondary-button[b-lbm42xyqh2] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 0 1.2rem;
    border-radius: 999px;
    font: inherit;
    font-size: 0.82rem;
    font-weight: 850;
    text-decoration: none;
    cursor: pointer;
}

.done-button[b-lbm42xyqh2],
.save-button[b-lbm42xyqh2] {
    background: #292321;
    border: 1px solid #292321;
    color: white;
}

.secondary-button[b-lbm42xyqh2] {
    background: white;
    border: 1px solid #cdbdae;
    color: #604c3e;
}

.upload-card[b-lbm42xyqh2] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
    padding: 1.6rem;
    background: white;
    border: 1px solid #e4dbd1;
    border-radius: 18px;
}

    .upload-card h2[b-lbm42xyqh2],
    .section-heading h2[b-lbm42xyqh2],
    .empty-card h2[b-lbm42xyqh2] {
        margin: 0;
        color: #332a26;
        font-family: Georgia, "Times New Roman", serif;
    }

    .upload-card p[b-lbm42xyqh2] {
        max-width: 650px;
        margin: 0.4rem 0 0;
        color: #81736b;
        font-size: 0.82rem;
        line-height: 1.5;
    }

.upload-button[b-lbm42xyqh2] {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 180px;
    min-height: 46px;
    overflow: hidden;
    background: #292321;
    border-radius: 999px;
    color: white;
    font-size: 0.82rem;
    font-weight: 850;
    cursor: pointer;
}

    .upload-button input[b-lbm42xyqh2] {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        opacity: 0;
        cursor: pointer;
    }

.upload-note[b-lbm42xyqh2] {
    margin: 0.55rem 0 1.5rem;
    color: #94867d;
    font-size: 0.7rem;
    text-align: right;
}

.empty-card[b-lbm42xyqh2] {
    display: flex;
    align-items: center;
    gap: 1.5rem;
    padding: 1.5rem;
    background: white;
    border: 1px solid #e4dbd1;
    border-radius: 18px;
}

.empty-preview[b-lbm42xyqh2] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 150px;
    aspect-ratio: 1;
    background: #f2ebe4;
    border-radius: 14px;
    color: #a58e7c;
    font-size: 0.66rem;
    font-weight: 900;
    letter-spacing: 0.15em;
}

.empty-card p[b-lbm42xyqh2] {
    margin: 0.4rem 0 0;
    color: #85766e;
    font-size: 0.82rem;
}

.gallery-section[b-lbm42xyqh2] {
    margin-top: 1rem;
}

.section-heading[b-lbm42xyqh2] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    margin-bottom: 0.8rem;
}

.gallery-help[b-lbm42xyqh2] {
    color: #92847b;
    font-size: 0.72rem;
}

.gallery-grid[b-lbm42xyqh2] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.image-card[b-lbm42xyqh2] {
    overflow: hidden;
    background: white;
    border: 1px solid #e4dbd1;
    border-radius: 16px;
}

.image-preview[b-lbm42xyqh2] {
    position: relative;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    background: #eee7e0;
}

    .image-preview img[b-lbm42xyqh2] {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

.primary-badge[b-lbm42xyqh2] {
    position: absolute;
    top: 0.75rem;
    left: 0.75rem;
    padding: 0.35rem 0.65rem;
    background: #292321;
    border-radius: 999px;
    color: white;
    font-size: 0.62rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.image-details[b-lbm42xyqh2] {
    padding: 1rem;
}

.field[b-lbm42xyqh2] {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

    .field label[b-lbm42xyqh2] {
        color: #594b44;
        font-size: 0.7rem;
        font-weight: 800;
    }

    .field input[b-lbm42xyqh2] {
        width: 100%;
        box-sizing: border-box;
        padding: 0.7rem 0.8rem;
        background: #fbf9f6;
        border: 1px solid #ddd1c4;
        border-radius: 8px;
        color: #332a25;
        font: inherit;
        font-size: 0.8rem;
    }

.image-actions[b-lbm42xyqh2] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.6rem;
    margin-top: 0.8rem;
}

.delete-button[b-lbm42xyqh2] {
    padding: 0;
    background: transparent;
    border: 0;
    color: #a34f45;
    font: inherit;
    font-size: 0.75rem;
    font-weight: 850;
    cursor: pointer;
}

.save-row[b-lbm42xyqh2] {
    display: flex;
    justify-content: flex-end;
    margin-top: 1rem;
}

.message[b-lbm42xyqh2],
.loading-card[b-lbm42xyqh2] {
    margin-bottom: 1rem;
    padding: 1rem 1.2rem;
    border-radius: 12px;
}

.loading-card[b-lbm42xyqh2] {
    background: white;
    border: 1px solid #e4dbd1;
    color: #796b63;
}

.error-message[b-lbm42xyqh2] {
    background: #f7e8e4;
    color: #873f34;
}

.success-message[b-lbm42xyqh2] {
    background: #eaf2e8;
    color: #42603c;
}


.upload-control[b-lbm42xyqh2] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

    .upload-control input[type="file"][b-lbm42xyqh2] {
        display: block;
        padding: 0.75rem;
        background: #f8f3ec;
        border: 1px solid #d8cabd;
        border-radius: 10px;
    }

@media (max-width: 900px) {
    .gallery-grid[b-lbm42xyqh2] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 650px) {
    .images-page[b-lbm42xyqh2] {
        padding: 2rem 1rem 4rem;
    }

    .page-header[b-lbm42xyqh2],
    .upload-card[b-lbm42xyqh2],
    .empty-card[b-lbm42xyqh2] {
        align-items: stretch;
        flex-direction: column;
    }

    .gallery-grid[b-lbm42xyqh2] {
        grid-template-columns: 1fr;
    }

    .done-button[b-lbm42xyqh2],
    .upload-button[b-lbm42xyqh2] {
        width: 100%;
        box-sizing: border-box;
    }

    .empty-preview[b-lbm42xyqh2] {
        width: 100%;
    }

    .image-actions[b-lbm42xyqh2] {
        align-items: stretch;
        flex-direction: column;
    }

        .image-actions > *[b-lbm42xyqh2] {
            width: 100%;
        }
}
/* /Components/Pages/Admin/QuickEdit.razor.rz.scp.css */
.quick-edit-page[b-1trmlp2kyb] {
    max-width: 1250px;
    margin: 0 auto;
    padding: 3rem 1.5rem 6rem;
}

.page-header[b-1trmlp2kyb] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 2rem;
    margin-bottom: 2rem;
}

    .page-header h1[b-1trmlp2kyb] {
        margin: 0;
        color: #292321;
        font-family: Georgia, "Times New Roman", serif;
        font-size: clamp(3rem, 6vw, 5rem);
        font-weight: 600;
        letter-spacing: -0.05em;
    }

.page-description[b-1trmlp2kyb] {
    max-width: 680px;
    margin: 0.8rem 0 0;
    color: #756860;
}

.back-link[b-1trmlp2kyb] {
    display: inline-block;
    margin-bottom: 1.5rem;
    color: #8f6743;
    font-size: 0.85rem;
    font-weight: 750;
    text-decoration: none;
}

.eyebrow[b-1trmlp2kyb],
.section-label[b-1trmlp2kyb] {
    margin: 0 0 0.45rem;
    color: #9a6b45;
    font-size: 0.68rem;
    font-weight: 900;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.save-button[b-1trmlp2kyb],
.cancel-button[b-1trmlp2kyb],
.primary-link[b-1trmlp2kyb] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: 0 1.35rem;
    border-radius: 999px;
    font: inherit;
    font-size: 0.85rem;
    font-weight: 800;
    text-decoration: none;
    cursor: pointer;
}

.save-button[b-1trmlp2kyb],
.primary-link[b-1trmlp2kyb] {
    background: #292321;
    border: 1px solid #292321;
    color: #fff;
}

    .save-button:disabled[b-1trmlp2kyb] {
        opacity: 0.55;
        cursor: wait;
    }

.cancel-button[b-1trmlp2kyb] {
    background: transparent;
    border: 1px solid #cdbdae;
    color: #604c3e;
}

.info-card[b-1trmlp2kyb] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
    margin-bottom: 1rem;
    padding: 1.4rem;
    background: #f5eee6;
    border: 1px solid #e3d6c9;
    border-radius: 18px;
}

    .info-card strong[b-1trmlp2kyb] {
        color: #3c302a;
    }

    .info-card p[b-1trmlp2kyb] {
        max-width: 700px;
        margin: 0.3rem 0 0;
        color: #796b63;
        font-size: 0.82rem;
    }

.info-note[b-1trmlp2kyb] {
    max-width: 300px;
    padding: 0.75rem 0.9rem;
    background: #fff;
    border-radius: 10px;
    color: #84766d;
    font-size: 0.72rem;
}

.toolbar[b-1trmlp2kyb] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
    padding: 1rem 1.2rem;
    background: #fff;
    border: 1px solid #e5dcd3;
    border-radius: 14px;
}

.search-box[b-1trmlp2kyb] {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    width: min(420px, 100%);
}

    .search-box label[b-1trmlp2kyb] {
        color: #5c4f48;
        font-size: 0.72rem;
        font-weight: 800;
    }

    .search-box input[b-1trmlp2kyb] {
        padding: 0.75rem 0.9rem;
        background: #fbf9f6;
        border: 1px solid #ddd1c4;
        border-radius: 9px;
        font: inherit;
    }

.summary[b-1trmlp2kyb] {
    display: flex;
    gap: 1rem;
    color: #8c7d74;
    font-size: 0.76rem;
}

.category-section[b-1trmlp2kyb] {
    margin-top: 1.5rem;
}

.category-heading[b-1trmlp2kyb] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 0.2rem 0.8rem;
}

    .category-heading h2[b-1trmlp2kyb] {
        margin: 0;
        color: #332a26;
        font-family: Georgia, "Times New Roman", serif;
        font-size: 1.65rem;
    }

.category-count[b-1trmlp2kyb] {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 34px;
    height: 34px;
    padding: 0 0.5rem;
    background: #efe6dd;
    border-radius: 999px;
    color: #875f40;
    font-size: 0.75rem;
    font-weight: 900;
}

.product-list[b-1trmlp2kyb] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.product-card[b-1trmlp2kyb] {
    padding: 1.15rem;
    background: #fff;
    border: 1px solid #e5dcd3;
    border-radius: 16px;
}

.product-header[b-1trmlp2kyb] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 1rem;
}

.product-name-field[b-1trmlp2kyb] {
    display: flex;
    flex: 1;
    flex-direction: column;
    gap: 0.3rem;
}

    .product-name-field label[b-1trmlp2kyb],
    .field label[b-1trmlp2kyb] {
        color: #5b4d46;
        font-size: 0.68rem;
        font-weight: 850;
    }

    .product-name-field input[b-1trmlp2kyb] {
        width: 100%;
        padding: 0;
        background: transparent;
        border: 0;
        border-bottom: 1px solid transparent;
        outline: none;
        color: #332a26;
        font-family: Georgia, "Times New Roman", serif;
        font-size: 1.35rem;
        font-weight: 700;
    }

        .product-name-field input:focus[b-1trmlp2kyb] {
            border-bottom-color: #cdb9a7;
        }

.product-status[b-1trmlp2kyb] {
    display: flex;
    gap: 1rem;
}

    .product-status label[b-1trmlp2kyb],
    .check-field[b-1trmlp2kyb],
    .track-stock[b-1trmlp2kyb] {
        display: flex;
        align-items: center;
        gap: 0.4rem;
        color: #665850;
        font-size: 0.75rem;
        font-weight: 750;
    }

.product-settings[b-1trmlp2kyb] {
    display: grid;
    grid-template-columns: 1.2fr 1fr 1fr;
    gap: 0.75rem;
    margin-top: 1rem;
}

.field[b-1trmlp2kyb] {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

    .field input[b-1trmlp2kyb],
    .field select[b-1trmlp2kyb] {
        width: 100%;
        box-sizing: border-box;
        padding: 0.7rem 0.8rem;
        background: #fbf9f6;
        border: 1px solid #ddd1c4;
        border-radius: 8px;
        color: #332a25;
        font: inherit;
        font-size: 0.8rem;
    }

.variants-heading[b-1trmlp2kyb] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 1.25rem;
    margin-bottom: 0.45rem;
}

    .variants-heading span[b-1trmlp2kyb] {
        color: #51453e;
        font-size: 0.72rem;
        font-weight: 900;
        letter-spacing: 0.08em;
        text-transform: uppercase;
    }

    .variants-heading small[b-1trmlp2kyb] {
        color: #998b82;
        font-size: 0.7rem;
    }

.variant-table[b-1trmlp2kyb] {
    overflow: hidden;
    background: #faf7f3;
    border: 1px solid #e8ddd3;
    border-radius: 11px;
}

.variant-table-header[b-1trmlp2kyb],
.variant-row[b-1trmlp2kyb] {
    display: grid;
    grid-template-columns: minmax(180px, 1.5fr) minmax(120px, 0.7fr) 100px 100px minmax(150px, 0.8fr);
    align-items: center;
    gap: 0.65rem;
}

.variant-table-header[b-1trmlp2kyb] {
    padding: 0.55rem 0.75rem;
    background: #f1e9e1;
    color: #77685f;
    font-size: 0.65rem;
    font-weight: 850;
    text-transform: uppercase;
}

.variant-row[b-1trmlp2kyb] {
    padding: 0.6rem 0.75rem;
    border-top: 1px solid #e9dfd6;
}

    .variant-row:first-of-type[b-1trmlp2kyb] {
        border-top: 0;
    }

.price-input[b-1trmlp2kyb] {
    display: flex;
    align-items: center;
    overflow: hidden;
    background: #fff;
    border: 1px solid #ddd1c4;
    border-radius: 8px;
}

    .price-input span[b-1trmlp2kyb] {
        padding-left: 0.7rem;
        color: #887870;
    }

    .price-input input[b-1trmlp2kyb] {
        border: 0;
        background: transparent;
    }

.stock-control[b-1trmlp2kyb] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
}

.stock-input[b-1trmlp2kyb] {
    width: 75px;
    padding: 0.55rem;
    background: #fff;
    border: 1px solid #ddd1c4;
    border-radius: 8px;
}

.product-footer[b-1trmlp2kyb] {
    display: flex;
    justify-content: space-between;
    margin-top: 0.8rem;
    color: #9a8c83;
    font-size: 0.66rem;
}

.product-type[b-1trmlp2kyb] {
    font-weight: 800;
    text-transform: uppercase;
}

.product-slug[b-1trmlp2kyb] {
    font-family: Consolas, monospace;
}

.mobile-label[b-1trmlp2kyb] {
    display: none;
}

.message[b-1trmlp2kyb],
.loading-card[b-1trmlp2kyb],
.empty-card[b-1trmlp2kyb] {
    margin-bottom: 1rem;
    padding: 1.2rem;
    border-radius: 12px;
}

.error-message[b-1trmlp2kyb] {
    background: #f7e8e4;
    color: #873f34;
}

.success-message[b-1trmlp2kyb] {
    background: #eaf2e8;
    color: #42603c;
}

.loading-card[b-1trmlp2kyb],
.empty-card[b-1trmlp2kyb] {
    background: #fff;
    border: 1px solid #e5dcd3;
    color: #796b63;
}

    .empty-card p[b-1trmlp2kyb] {
        margin-bottom: 1rem;
    }

.bottom-actions[b-1trmlp2kyb] {
    display: flex;
    justify-content: flex-end;
    gap: 0.75rem;
    margin-top: 2rem;
}


.product-footer-actions[b-1trmlp2kyb] {
    display: flex;
    align-items: center;
    gap: 0.9rem;
}

.photo-link[b-1trmlp2kyb] {
    color: #8f6743;
    font-size: 0.7rem;
    font-weight: 850;
    text-decoration: none;
}

    .photo-link:hover[b-1trmlp2kyb] {
        text-decoration: underline;
    }

@media (max-width: 850px) {
    .page-header[b-1trmlp2kyb],
    .info-card[b-1trmlp2kyb] {
        align-items: stretch;
        flex-direction: column;
    }

    .product-settings[b-1trmlp2kyb] {
        grid-template-columns: 1fr;
    }

    .variant-table-header[b-1trmlp2kyb] {
        display: none;
    }

    .variant-row[b-1trmlp2kyb] {
        grid-template-columns: 1fr 1fr;
        padding: 1rem;
    }

    .mobile-label[b-1trmlp2kyb] {
        display: inline;
    }

    .check-field[b-1trmlp2kyb] {
        padding: 0.5rem 0;
    }

    .stock-control[b-1trmlp2kyb] {
        min-height: 40px;
    }
}

@media (max-width: 600px) {
    .quick-edit-page[b-1trmlp2kyb] {
        padding: 2rem 1rem 4rem;
    }

    .page-header .save-button[b-1trmlp2kyb] {
        width: 100%;
    }

    .toolbar[b-1trmlp2kyb],
    .product-header[b-1trmlp2kyb] {
        align-items: stretch;
        flex-direction: column;
    }

    .summary[b-1trmlp2kyb] {
        justify-content: space-between;
    }

    .product-status[b-1trmlp2kyb] {
        justify-content: space-between;
    }

    .variant-row[b-1trmlp2kyb] {
        grid-template-columns: 1fr;
    }

    .bottom-actions[b-1trmlp2kyb] {
        flex-direction: column-reverse;
    }

        .bottom-actions > *[b-1trmlp2kyb] {
            width: 100%;
        }
}
/* /Components/Pages/Admin/SpecialHours.razor.rz.scp.css */
.admin-page[b-ypsyqdf7ev] {
    max-width: 1000px;
    margin: 0 auto;
    padding: 4rem 1.5rem 6rem;
}

.page-header[b-ypsyqdf7ev] {
    margin-bottom: 2.5rem;
}

    .page-header h1[b-ypsyqdf7ev] {
        margin: 0;
        font-size: clamp(2.5rem, 6vw, 4rem);
    }

.back-link[b-ypsyqdf7ev] {
    display: inline-block;
    margin-bottom: 2rem;
    color: #292323;
    font-weight: 700;
    text-decoration: none;
}

.eyebrow[b-ypsyqdf7ev] {
    margin-bottom: 0.5rem;
    color: #9a6b45;
    font-size: 0.8rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.special-card[b-ypsyqdf7ev],
.existing-section[b-ypsyqdf7ev] {
    margin-bottom: 2rem;
    padding: 2rem;
    background: white;
    border: 1px solid #e4dbcf;
    border-radius: 20px;
}

.form-grid[b-ypsyqdf7ev] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.25rem;
    margin-bottom: 1.5rem;
}

.field[b-ypsyqdf7ev] {
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
}

    .field label[b-ypsyqdf7ev] {
        font-size: 0.8rem;
        font-weight: 700;
    }

    .field input[b-ypsyqdf7ev] {
        padding: 0.75rem;
        border: 1px solid #d8cfc5;
        border-radius: 10px;
        font: inherit;
    }

    .field small[b-ypsyqdf7ev] {
        color: #756a66;
    }

.closed-toggle[b-ypsyqdf7ev] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
}

.close-field[b-ypsyqdf7ev] {
    grid-column: 2;
}

.note-field[b-ypsyqdf7ev] {
    grid-column: 1 / -1;
}

.form-actions[b-ypsyqdf7ev] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.save-button[b-ypsyqdf7ev] {
    padding: 0.9rem 1.5rem;
    border: 0;
    border-radius: 999px;
    background: #292323;
    color: white;
    font-weight: 700;
    cursor: pointer;
}

.cancel-button[b-ypsyqdf7ev] {
    padding: 0.85rem 1.4rem;
    border: 1px solid #9a6b45;
    border-radius: 999px;
    background: transparent;
    color: #76502f;
    font-weight: 700;
    cursor: pointer;
}

.special-list[b-ypsyqdf7ev] {
    overflow: hidden;
    border: 1px solid #eee6dc;
    border-radius: 14px;
}

.special-row[b-ypsyqdf7ev] {
    display: grid;
    grid-template-columns: 1.4fr 1fr auto;
    align-items: center;
    gap: 1rem;
    padding: 1.25rem;
    border-bottom: 1px solid #eee6dc;
}

    .special-row:last-child[b-ypsyqdf7ev] {
        border-bottom: 0;
    }

.date-block[b-ypsyqdf7ev],
.hours-block[b-ypsyqdf7ev] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

    .date-block span[b-ypsyqdf7ev],
    .date-block small[b-ypsyqdf7ev],
    .hours-block small[b-ypsyqdf7ev] {
        color: #756a66;
    }

.closed[b-ypsyqdf7ev] {
    color: #a54d41;
    font-weight: 700;
}

.special-actions[b-ypsyqdf7ev] {
    display: flex;
    gap: 0.5rem;
}

.edit-button[b-ypsyqdf7ev],
.delete-button[b-ypsyqdf7ev] {
    padding: 0.6rem 1rem;
    border-radius: 999px;
    background: transparent;
    font-weight: 700;
    cursor: pointer;
}

.edit-button[b-ypsyqdf7ev] {
    border: 1px solid #9a6b45;
    color: #76502f;
}

.delete-button[b-ypsyqdf7ev] {
    border: 1px solid #c86161;
    color: #9a3030;
}

.empty-state[b-ypsyqdf7ev] {
    padding: 2rem;
    color: #756a66;
    text-align: center;
}

.success-message[b-ypsyqdf7ev],
.error-message[b-ypsyqdf7ev] {
    margin-bottom: 1.5rem;
    padding: 1rem 1.25rem;
    border-radius: 12px;
}

.success-message[b-ypsyqdf7ev] {
    background: #e4f1e6;
    color: #245a2c;
}

.error-message[b-ypsyqdf7ev] {
    background: #f6dddd;
    color: #8a2929;
}

@media (max-width: 700px) {
    .form-grid[b-ypsyqdf7ev] {
        grid-template-columns: 1fr;
    }

    .close-field[b-ypsyqdf7ev],
    .note-field[b-ypsyqdf7ev] {
        grid-column: auto;
    }

    .special-row[b-ypsyqdf7ev] {
        grid-template-columns: 1fr;
    }

    .special-actions[b-ypsyqdf7ev] {
        flex-wrap: wrap;
    }

    .form-actions[b-ypsyqdf7ev] {
        flex-wrap: wrap;
    }
}
/* /Components/Pages/Admin/Users.razor.rz.scp.css */
.users-page[b-i0ygy5jtkv] {
    max-width: 1180px;
    margin: 0 auto;
    padding: 4rem 1.5rem 7rem;
}

.users-header[b-i0ygy5jtkv] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 3rem;
    margin-bottom: 3rem;
}

.back-link[b-i0ygy5jtkv] {
    display: inline-block;
    margin-bottom: 2rem;
    color: #74665e;
    font-size: 0.76rem;
    font-weight: 750;
    text-decoration: none;
}

    .back-link:hover[b-i0ygy5jtkv] {
        color: #9a6b45;
    }

.eyebrow[b-i0ygy5jtkv] {
    margin: 0 0 0.7rem;
    color: #9b6a43;
    font-size: 0.68rem;
    font-weight: 900;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.users-header h1[b-i0ygy5jtkv] {
    margin: 0;
    color: #292321;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(3rem, 6vw, 5rem);
    font-weight: 600;
    letter-spacing: -0.055em;
}

.users-header p[b-i0ygy5jtkv] {
    margin: 0.9rem 0 0;
    color: #766961;
}

.create-button[b-i0ygy5jtkv] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.65rem;
    min-height: 50px;
    padding: 0 1.4rem;
    background: #292321;
    border-radius: 999px;
    color: white;
    font-size: 0.82rem;
    font-weight: 850;
    text-decoration: none;
}

    .create-button:hover[b-i0ygy5jtkv] {
        background: #9a6b45;
    }

    .create-button span[b-i0ygy5jtkv] {
        color: #d9a36e;
        font-size: 1.2rem;
    }

.users-panel[b-i0ygy5jtkv] {
    overflow: hidden;
    background: #fffdf9;
    border: 1px solid #dfd4c8;
    border-radius: 24px;
}

.users-panel-header[b-i0ygy5jtkv] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem 1.5rem;
    background: #eee4d8;
    color: #776960;
    font-size: 0.66rem;
    font-weight: 850;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.user-row[b-i0ygy5jtkv] {
    display: grid;
    grid-template-columns: auto minmax(220px, 1fr) minmax(160px, 0.45fr) auto auto;
    align-items: center;
    gap: 1.5rem;
    min-height: 88px;
    padding: 1rem 1.5rem;
    border-bottom: 1px solid #ece3da;
}

    .user-row:last-child[b-i0ygy5jtkv] {
        border-bottom: 0;
    }

.user-avatar[b-i0ygy5jtkv] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    background: #292321;
    border-radius: 50%;
    color: white;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.1rem;
}

.user-identity[b-i0ygy5jtkv] {
    display: flex;
    min-width: 0;
    flex-direction: column;
}

    .user-identity strong[b-i0ygy5jtkv] {
        overflow: hidden;
        color: #322a26;
        font-size: 0.86rem;
        text-overflow: ellipsis;
    }

    .user-identity span[b-i0ygy5jtkv] {
        margin-top: 0.25rem;
        color: #91827a;
        font-size: 0.72rem;
    }

.user-role[b-i0ygy5jtkv] {
    display: flex;
    flex-direction: column;
}

.role-label[b-i0ygy5jtkv] {
    margin-bottom: 0.25rem;
    color: #a08f84;
    font-size: 0.56rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.user-role strong[b-i0ygy5jtkv] {
    color: #4b3e37;
    font-size: 0.76rem;
}

.user-status[b-i0ygy5jtkv] {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    min-width: 85px;
    color: #62564f;
    font-size: 0.72rem;
    font-weight: 750;
}

.status-dot[b-i0ygy5jtkv] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
}

    .status-dot.active[b-i0ygy5jtkv] {
        background: #65906d;
        box-shadow: 0 0 0 4px rgba(101, 144, 109, 0.12);
    }

    .status-dot.locked[b-i0ygy5jtkv] {
        background: #ad6559;
        box-shadow: 0 0 0 4px rgba(173, 101, 89, 0.12);
    }

.manage-button[b-i0ygy5jtkv] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.55rem;
    min-height: 38px;
    padding: 0 1rem;
    border: 1px solid #cfbfb1;
    border-radius: 999px;
    color: #4c3f38;
    font-size: 0.7rem;
    font-weight: 850;
    text-decoration: none;
    transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

    .manage-button:hover[b-i0ygy5jtkv] {
        background: #292321;
        border-color: #292321;
        color: white;
    }

    .manage-button span[b-i0ygy5jtkv] {
        color: #a67247;
    }

.state-panel[b-i0ygy5jtkv] {
    padding: 3rem;
    background: white;
    border: 1px solid #e1d7cc;
    border-radius: 20px;
    color: #776961;
    text-align: center;
}

@media (max-width: 900px) {
    .user-row[b-i0ygy5jtkv] {
        grid-template-columns: auto minmax(0, 1fr) auto;
    }

    .user-role[b-i0ygy5jtkv],
    .user-status[b-i0ygy5jtkv] {
        grid-column: 2;
    }

    .manage-button[b-i0ygy5jtkv] {
        grid-column: 3;
        grid-row: 1 / span 3;
    }
}

@media (max-width: 760px) {
    .users-header[b-i0ygy5jtkv] {
        align-items: flex-start;
        flex-direction: column;
        gap: 1.5rem;
    }
}

@media (max-width: 560px) {
    .user-row[b-i0ygy5jtkv] {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .manage-button[b-i0ygy5jtkv] {
        grid-column: 2;
        grid-row: auto;
        justify-self: start;
        margin-top: 0.4rem;
    }
}
/* /Components/Pages/Contact.razor.rz.scp.css */
.contact-page[b-938j0pnl81] {
    overflow: hidden;
    background: #f6f0e7;
    color: #292321;
}

.contact-loading[b-938j0pnl81] {
    min-height: 70vh;
    padding: 8rem 2rem;
    background: #f6f0e7;
    text-align: center;
}

.eyebrow[b-938j0pnl81] {
    margin: 0 0 1rem;
    color: #ae7746;
    font-size: 0.7rem;
    font-weight: 900;
    letter-spacing: 0.21em;
    text-transform: uppercase;
}

/* HERO */

.contact-hero[b-938j0pnl81] {
    position: relative;
    padding: 4rem 2rem 6.5rem;
    background: radial-gradient(circle at 78% 20%, rgba(190, 139, 83, 0.15), transparent 33%), linear-gradient(135deg, #faf5ed 0%, #efe3d5 100%);
    border-bottom: 1px solid rgba(82, 62, 48, 0.11);
}

    .contact-hero[b-938j0pnl81]::after {
        position: absolute;
        right: -110px;
        bottom: -190px;
        width: 520px;
        height: 520px;
        background: url("/images/lazy-cow-logo.jpg") center / contain no-repeat;
        border-radius: 50%;
        opacity: 0.025;
        content: "";
        pointer-events: none;
    }

.contact-hero-inner[b-938j0pnl81] {
    position: relative;
    z-index: 1;
    max-width: 1180px;
    margin: 0 auto;
}

.hero-brand-row[b-938j0pnl81] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
}

.hero-brand[b-938j0pnl81] {
    display: flex;
    align-items: center;
    gap: 0.8rem;
}

    .hero-brand img[b-938j0pnl81] {
        width: 56px;
        height: 56px;
        object-fit: contain;
        border-radius: 50%;
    }

    .hero-brand > div[b-938j0pnl81] {
        display: flex;
        flex-direction: column;
    }

    .hero-brand strong[b-938j0pnl81] {
        color: #292321;
        font-size: 0.92rem;
        font-weight: 850;
    }

    .hero-brand span[b-938j0pnl81] {
        margin-top: 0.2rem;
        color: #9b6940;
        font-size: 0.52rem;
        font-weight: 900;
        letter-spacing: 0.21em;
    }

.takeaway-label[b-938j0pnl81] {
    color: #7f6e64;
    font-size: 0.62rem;
    font-weight: 900;
    letter-spacing: 0.18em;
}

.hero-main[b-938j0pnl81] {
    margin-top: 7rem;
}

    .hero-main h1[b-938j0pnl81] {
        margin: 0;
        font-family: Georgia, "Times New Roman", serif;
        font-size: clamp(5rem, 10vw, 9rem);
        font-weight: 600;
        letter-spacing: -0.075em;
        line-height: 0.79;
    }

        .hero-main h1 em[b-938j0pnl81] {
            color: #9d6840;
            font-weight: 400;
        }

.hero-bottom[b-938j0pnl81] {
    display: grid;
    grid-template-columns: minmax(0, 520px) auto;
    align-items: end;
    justify-content: space-between;
    gap: 4rem;
    margin-top: 3.5rem;
}

    .hero-bottom p[b-938j0pnl81] {
        margin: 0;
        color: #685a52;
        font-size: 1.05rem;
        line-height: 1.7;
    }

    .hero-bottom > a[b-938j0pnl81] {
        display: flex;
        align-items: center;
        gap: 1rem;
        padding-bottom: 0.55rem;
        border-bottom: 1px solid #9f7958;
        color: #392f2a;
        font-size: 0.77rem;
        font-weight: 850;
        text-decoration: none;
    }

        .hero-bottom > a span[b-938j0pnl81] {
            color: #aa7447;
            font-size: 1rem;
        }

/* LOCATION + OPENSTREETMAP */

.location-section[b-938j0pnl81] {
    padding: 8rem max(5vw, 2rem);
    background: #fffaf4;
}

.location-stage[b-938j0pnl81] {
    position: relative;
    max-width: 1320px;
    min-height: 720px;
    margin: 0 auto;
}

.location-map[b-938j0pnl81] {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 220px;
    overflow: hidden;
    background: #e8dfd6;
    border-radius: 28px;
    box-shadow: 0 28px 80px rgba(42, 31, 24, 0.10);
}

.leaflet-map[b-938j0pnl81] {
    width: 100%;
    height: 100%;
    min-height: 720px;
    background: #e8dfd6;
}

.location-map[b-938j0pnl81]  .leaflet-control-zoom {
    overflow: hidden;
    border: 0;
    border-radius: 12px;
    box-shadow: 0 8px 28px rgba(40, 30, 24, 0.16);
}

    .location-map[b-938j0pnl81]  .leaflet-control-zoom a {
        width: 40px;
        height: 40px;
        border: 0;
        border-bottom: 1px solid #e2d7cc;
        background: rgba(255, 250, 244, 0.96);
        color: #292321;
        font-family: Georgia, "Times New Roman", serif;
        font-size: 22px;
        line-height: 40px;
    }

        .location-map[b-938j0pnl81]  .leaflet-control-zoom a:last-child {
            border-bottom: 0;
        }

.location-map[b-938j0pnl81]  .leaflet-control-attribution {
    padding: 4px 7px;
    background: rgba(255, 250, 244, 0.90);
    color: #76675e;
    font-size: 9px;
}

    .location-map[b-938j0pnl81]  .leaflet-control-attribution a {
        color: #91613d;
    }

.location-map[b-938j0pnl81]  .leaflet-popup-content-wrapper {
    border-radius: 14px;
    box-shadow: 0 14px 34px rgba(32, 24, 20, 0.16);
}

.location-map[b-938j0pnl81]  .leaflet-popup-tip {
    box-shadow: 3px 3px 8px rgba(32, 24, 20, 0.08);
}

.location-panel[b-938j0pnl81] {
    position: absolute;
    z-index: 500;
    top: 50%;
    left: 0;
    width: min(440px, calc(100% - 2rem));
    padding: 3.1rem;
    background: #292321;
    color: white;
    transform: translateY(-50%);
    box-shadow: 0 28px 70px rgba(33, 24, 19, 0.18);
}

    .location-panel .eyebrow[b-938j0pnl81] {
        color: #d6a572;
    }

    .location-panel h2[b-938j0pnl81] {
        margin: 0;
        font-family: Georgia, "Times New Roman", serif;
        font-size: clamp(2.7rem, 4.5vw, 4.3rem);
        font-weight: 500;
        letter-spacing: -0.055em;
        line-height: 0.92;
    }

    .location-panel address[b-938j0pnl81] {
        margin: 2rem 0 0;
        color: #d9cec6;
        font-size: 0.9rem;
        font-style: normal;
        line-height: 1.75;
    }

.location-status[b-938j0pnl81] {
    display: flex;
    align-items: center;
    gap: 0.8rem;
    margin-top: 2rem;
    padding-top: 1.5rem;
    border-top: 1px solid rgba(255, 255, 255, 0.14);
}

.status-dot[b-938j0pnl81] {
    width: 9px;
    height: 9px;
    flex: 0 0 9px;
    border-radius: 50%;
}

    .status-dot.open[b-938j0pnl81] {
        background: #80a777;
        box-shadow: 0 0 0 5px rgba(128, 167, 119, 0.12);
    }

    .status-dot.closed[b-938j0pnl81] {
        background: #cd786a;
        box-shadow: 0 0 0 5px rgba(205, 120, 106, 0.12);
    }

.location-status > div[b-938j0pnl81] {
    display: flex;
    flex-direction: column;
}

.location-status strong[b-938j0pnl81] {
    font-size: 0.8rem;
}

.location-status span:last-child[b-938j0pnl81] {
    margin-top: 0.15rem;
    color: #ab9d95;
    font-size: 0.7rem;
}

.map-links[b-938j0pnl81] {
    margin-top: 2rem;
    border-top: 1px solid rgba(255, 255, 255, 0.14);
}

    .map-links a[b-938j0pnl81] {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 1rem;
        padding: 0.95rem 0;
        border-bottom: 1px solid rgba(255, 255, 255, 0.14);
        color: white;
        font-size: 0.76rem;
        font-weight: 750;
        text-decoration: none;
        transition: padding-left 0.18s ease;
    }

        .map-links a:hover[b-938j0pnl81] {
            padding-left: 0.35rem;
        }

    .map-links strong[b-938j0pnl81] {
        color: #d7a574;
        font-size: 0.9rem;
    }

/* CONTACT */

.contact-section[b-938j0pnl81] {
    padding: 8.5rem 2rem;
    background: #f6f0e7;
}

.contact-section-inner[b-938j0pnl81] {
    display: grid;
    grid-template-columns: minmax(300px, 0.75fr) minmax(0, 1.25fr);
    gap: 7rem;
    max-width: 1180px;
    margin: 0 auto;
}

.contact-heading h2[b-938j0pnl81] {
    margin: 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(4rem, 7vw, 6.5rem);
    font-weight: 500;
    letter-spacing: -0.065em;
    line-height: 0.85;
}

.contact-details[b-938j0pnl81] {
    align-self: end;
}

    .contact-details > p[b-938j0pnl81] {
        max-width: 560px;
        margin: 0 0 3rem;
        color: #73655d;
        font-size: 0.95rem;
        line-height: 1.75;
    }

.email-link[b-938j0pnl81] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
    padding: 1.4rem 0;
    border-top: 1px solid #bcae9f;
    border-bottom: 1px solid #bcae9f;
    color: #292321;
    text-decoration: none;
}

    .email-link span[b-938j0pnl81] {
        font-family: Georgia, "Times New Roman", serif;
        font-size: clamp(1.3rem, 2.6vw, 2.3rem);
        letter-spacing: -0.025em;
    }

    .email-link strong[b-938j0pnl81] {
        color: #a87346;
        font-size: 1.3rem;
    }

.phone-row[b-938j0pnl81] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
    margin-top: 1.5rem;
    color: #897970;
    font-size: 0.76rem;
}

    .phone-row a[b-938j0pnl81] {
        color: #3c322d;
        font-weight: 750;
        text-decoration: none;
    }

/* HOURS */

.hours-section[b-938j0pnl81] {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
    min-height: 760px;
    background: #e7d9c8;
}

.hours-visual[b-938j0pnl81] {
    position: relative;
    min-height: 760px;
    overflow: hidden;
}

    .hours-visual img[b-938j0pnl81] {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .hours-visual[b-938j0pnl81]::after {
        position: absolute;
        inset: 0;
        background: linear-gradient(to top, rgba(31, 24, 20, 0.64), transparent 50%), linear-gradient(to right, transparent 72%, rgba(231, 217, 200, 0.2));
        content: "";
    }

.hours-visual-overlay[b-938j0pnl81] {
    position: absolute;
    z-index: 2;
    right: 3rem;
    bottom: 3rem;
    left: 3rem;
    color: white;
}

    .hours-visual-overlay span[b-938j0pnl81] {
        display: block;
        margin-bottom: 0.9rem;
        color: #e4b785;
        font-size: 0.66rem;
        font-weight: 900;
        letter-spacing: 0.2em;
    }

    .hours-visual-overlay strong[b-938j0pnl81] {
        font-family: Georgia, "Times New Roman", serif;
        font-size: clamp(2.8rem, 4vw, 4.6rem);
        font-weight: 500;
        letter-spacing: -0.05em;
        line-height: 0.9;
    }

.hours-content[b-938j0pnl81] {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 6rem max(7vw, 3rem) 6rem 4.5rem;
}

    .hours-content h2[b-938j0pnl81] {
        margin: 0;
        font-family: Georgia, "Times New Roman", serif;
        font-size: clamp(3.7rem, 5.8vw, 6rem);
        font-weight: 500;
        letter-spacing: -0.065em;
        line-height: 0.87;
    }

.hours-intro[b-938j0pnl81] {
    max-width: 460px;
    margin: 1.8rem 0 2.8rem;
    color: #6c5e55;
    font-size: 0.85rem;
    line-height: 1.7;
}

.hours-list[b-938j0pnl81] {
    max-width: 620px;
    border-top: 1px solid #bdae9e;
}

.hours-row[b-938j0pnl81] {
    display: grid;
    grid-template-columns: auto minmax(30px, 1fr) auto;
    align-items: center;
    gap: 1.3rem;
    min-height: 60px;
    border-bottom: 1px solid #c5b6a7;
}

.hours-day[b-938j0pnl81] {
    display: flex;
    align-items: center;
    gap: 0.7rem;
    min-width: 130px;
}

    .hours-day strong[b-938j0pnl81] {
        font-size: 0.82rem;
    }

    .hours-day span[b-938j0pnl81] {
        color: #9a673e;
        font-size: 0.55rem;
        font-weight: 900;
        letter-spacing: 0.1em;
        text-transform: uppercase;
    }

.hours-line[b-938j0pnl81] {
    height: 1px;
    background: rgba(104, 88, 76, 0.18);
}

.hours-time[b-938j0pnl81],
.hours-row .closed[b-938j0pnl81] {
    min-width: 110px;
    text-align: right;
    font-size: 0.78rem;
}

.hours-time[b-938j0pnl81] {
    color: #554942;
}

.hours-row .closed[b-938j0pnl81] {
    color: #9a574d;
}

.hours-row.today[b-938j0pnl81] {
    color: #95613a;
}

.hours-note[b-938j0pnl81] {
    display: flex;
    align-items: flex-start;
    gap: 0.8rem;
    max-width: 520px;
    margin-top: 2rem;
}

.note-mark[b-938j0pnl81] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    flex: 0 0 24px;
    border: 1px solid #9f8a77;
    border-radius: 50%;
    color: #8e6949;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 0.72rem;
    font-style: italic;
}

.hours-note p[b-938j0pnl81] {
    margin: 0;
    color: #75665c;
    font-size: 0.74rem;
    line-height: 1.55;
}

@media (max-width: 1000px) {
    .hero-main[b-938j0pnl81] {
        margin-top: 5rem;
    }

    .location-stage[b-938j0pnl81] {
        display: flex;
        min-height: auto;
        flex-direction: column;
    }

    .location-map[b-938j0pnl81] {
        position: relative;
        top: auto;
        right: auto;
        bottom: auto;
        left: auto;
        height: 600px;
        order: 2;
        border-radius: 0 0 24px 24px;
    }

    .leaflet-map[b-938j0pnl81] {
        min-height: 600px;
    }

    .location-panel[b-938j0pnl81] {
        position: relative;
        top: auto;
        left: auto;
        width: auto;
        order: 1;
        transform: none;
        box-shadow: none;
    }

    .contact-section-inner[b-938j0pnl81] {
        gap: 4rem;
    }

    .hours-section[b-938j0pnl81] {
        grid-template-columns: 1fr;
    }

    .hours-visual[b-938j0pnl81] {
        min-height: 560px;
    }

    .hours-content[b-938j0pnl81] {
        padding: 5rem 2rem 6rem;
    }
}

@media (max-width: 650px) {
    .contact-hero[b-938j0pnl81] {
        padding: 2rem 1.2rem 4rem;
    }

    .hero-brand-row[b-938j0pnl81] {
        align-items: flex-start;
    }

    .hero-brand img[b-938j0pnl81] {
        width: 48px;
        height: 48px;
    }

    .takeaway-label[b-938j0pnl81] {
        padding-top: 0.5rem;
        font-size: 0.52rem;
    }

    .hero-main[b-938j0pnl81] {
        margin-top: 4.5rem;
    }

        .hero-main h1[b-938j0pnl81] {
            font-size: clamp(4.5rem, 20vw, 6rem);
        }

    .hero-bottom[b-938j0pnl81] {
        grid-template-columns: 1fr;
        gap: 2rem;
        margin-top: 2.5rem;
    }

        .hero-bottom p[b-938j0pnl81] {
            font-size: 0.95rem;
        }

        .hero-bottom > a[b-938j0pnl81] {
            width: fit-content;
        }

    .location-section[b-938j0pnl81] {
        padding: 4rem 1rem;
    }

    .location-panel[b-938j0pnl81] {
        padding: 2rem 1.5rem;
    }

        .location-panel h2[b-938j0pnl81] {
            font-size: 3rem;
        }

    .location-map[b-938j0pnl81] {
        height: 440px;
    }

    .leaflet-map[b-938j0pnl81] {
        min-height: 440px;
    }

    .contact-section[b-938j0pnl81] {
        padding: 5rem 1.2rem;
    }

    .contact-section-inner[b-938j0pnl81] {
        grid-template-columns: 1fr;
        gap: 3rem;
    }

    .contact-heading h2[b-938j0pnl81] {
        font-size: 4.5rem;
    }

    .email-link[b-938j0pnl81] {
        align-items: flex-start;
    }

        .email-link span[b-938j0pnl81] {
            overflow-wrap: anywhere;
            font-size: 1.25rem;
        }

    .hours-visual[b-938j0pnl81] {
        min-height: 420px;
    }

    .hours-visual-overlay[b-938j0pnl81] {
        right: 1.5rem;
        bottom: 1.5rem;
        left: 1.5rem;
    }

    .hours-content[b-938j0pnl81] {
        padding: 4.5rem 1.25rem 5rem;
    }

        .hours-content h2[b-938j0pnl81] {
            font-size: 4rem;
        }

    .hours-row[b-938j0pnl81] {
        grid-template-columns: auto 1fr auto;
        gap: 0.7rem;
    }

    .hours-day[b-938j0pnl81] {
        min-width: 105px;
    }

    .hours-time[b-938j0pnl81],
    .hours-row .closed[b-938j0pnl81] {
        min-width: auto;
    }
}
/* /Components/Pages/Home.razor.rz.scp.css */
.home-page[b-vf5iz6bic5] {
    overflow: hidden;
    background: #f6f0e7;
    color: #292321;
}

.home-loading[b-vf5iz6bic5] {
    min-height: 70vh;
    padding: 8rem 2rem;
    background: #f6f0e7;
    text-align: center;
}

/* HERO */

.hero-section[b-vf5iz6bic5] {
    display: grid;
    grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.35fr);
    min-height: 700px;
    background: #f6f0e7;
}

.hero-copy[b-vf5iz6bic5] {
    position: relative;
    z-index: 3;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 6rem 2rem 6rem max(7vw, 2rem);
}

    .hero-copy[b-vf5iz6bic5]::after {
        position: absolute;
        z-index: -1;
        top: 0;
        right: -340px;
        bottom: 0;
        width: 480px;
        background: linear-gradient( to right, #f6f0e7 0%, rgba(246, 240, 231, 0.98) 15%, rgba(246, 240, 231, 0.90) 35%, rgba(246, 240, 231, 0.65) 58%, rgba(246, 240, 231, 0.28) 78%, rgba(246, 240, 231, 0) 100% );
        content: "";
        pointer-events: none;
    }

.hero-image[b-vf5iz6bic5] {
    position: relative;
    min-height: 700px;
    overflow: hidden;
}

    .hero-image img[b-vf5iz6bic5] {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .hero-image[b-vf5iz6bic5]::after {
        position: absolute;
        inset: 0;
        background: linear-gradient( to right, rgba(246, 240, 231, 0.72) 0%, rgba(246, 240, 231, 0.34) 11%, rgba(246, 240, 231, 0.08) 23%, rgba(246, 240, 231, 0) 38% ), linear-gradient( to bottom, rgba(246, 240, 231, 0) 78%, rgba(246, 240, 231, 0.12) 90%, rgba(246, 240, 231, 0.34) 100% );
        content: "";
        pointer-events: none;
    }

.eyebrow[b-vf5iz6bic5] {
    margin: 0 0 1rem;
    color: #b27942;
    font-size: 0.82rem;
    font-weight: 800;
    letter-spacing: 0.19em;
    text-transform: uppercase;
}

    .eyebrow.light[b-vf5iz6bic5] {
        color: #d5a36d;
    }

.hero-copy h1[b-vf5iz6bic5] {
    max-width: 650px;
    margin: 0;
    color: #292321;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(4rem, 7.2vw, 7.5rem);
    font-weight: 700;
    letter-spacing: -0.065em;
    line-height: 0.88;
}

.hero-description[b-vf5iz6bic5] {
    max-width: 520px;
    margin: 2rem 0;
    color: #594d46;
    font-size: 1.18rem;
    line-height: 1.6;
}

.hero-controls[b-vf5iz6bic5] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 1.15rem;
    margin-top: 1.8rem;
}

.opening-status[b-vf5iz6bic5] {
    display: inline-flex;
    align-items: center;
    gap: 0.8rem;
    padding: 0;
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    backdrop-filter: none;
}

.status-dot[b-vf5iz6bic5] {
    width: 9px;
    height: 9px;
    flex: 0 0 9px;
    border-radius: 50%;
}

.status-text[b-vf5iz6bic5] {
    display: grid;
    grid-template-columns: auto auto;
    align-items: baseline;
    gap: 0.7rem;
}

    .status-text strong[b-vf5iz6bic5] {
        color: #292321;
        font-size: 0.98rem;
        font-weight: 800;
    }

    .status-text span[b-vf5iz6bic5] {
        color: #756860;
        font-size: 0.86rem;
    }

.status-open .status-dot[b-vf5iz6bic5] {
    background: #5d8a61;
    box-shadow: 0 0 0 4px rgba(93, 138, 97, 0.12);
}

.status-closed .status-dot[b-vf5iz6bic5] {
    background: #a35c4e;
    box-shadow: 0 0 0 4px rgba(163, 92, 78, 0.10);
}

.hero-actions[b-vf5iz6bic5] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin: 0;
}

.button[b-vf5iz6bic5] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 145px;
    height: 48px;
    padding: 0 1.5rem;
    box-sizing: border-box;
    border-radius: 999px;
    font-size: 0.95rem;
    font-weight: 800;
    text-decoration: none;
    transition: transform 0.15s ease, background 0.15s ease, color 0.15s ease;
}

    .button:hover[b-vf5iz6bic5] {
        transform: translateY(-2px);
    }

.button-primary[b-vf5iz6bic5] {
    background: #292321;
    border: 1px solid #292321;
    color: white;
}

.button-secondary[b-vf5iz6bic5] {
    background: transparent;
    border: 1px solid rgba(41, 35, 33, 0.65);
    color: #292321;
}

/* NOTICE */

.notice-banner[b-vf5iz6bic5] {
    position: relative;
    z-index: 5;
    display: grid;
    grid-template-columns: minmax(0, 1.7fr) minmax(240px, 0.8fr);
    gap: 2rem;
    max-width: 1120px;
    margin: -38px auto 0;
    padding: 1.75rem 2rem 1.75rem 2.4rem;
    overflow: hidden;
    background: rgba(251, 247, 240, 0.96);
    border: 1px solid rgba(153, 111, 71, 0.24);
    border-radius: 22px;
    box-shadow: 0 18px 50px rgba(53, 39, 29, 0.08), 0 2px 8px rgba(53, 39, 29, 0.04);
    backdrop-filter: blur(12px);
}

    .notice-banner[b-vf5iz6bic5]::before {
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        width: 5px;
        background: linear-gradient( to bottom, #b6804d, #d0a16e );
        content: "";
    }

.notice-label[b-vf5iz6bic5] {
    display: block;
    margin-bottom: 0.35rem;
    color: #a16f43;
    font-size: 0.67rem;
    font-weight: 900;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.notice-copy h2[b-vf5iz6bic5] {
    margin: 0;
    color: #292321;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.85rem;
    font-weight: 600;
    letter-spacing: -0.025em;
}

.notice-copy p[b-vf5iz6bic5] {
    margin: 0.4rem 0 0;
    color: #665950;
    font-size: 0.95rem;
}

.notice-date[b-vf5iz6bic5] {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 0.9rem;
    padding-left: 2rem;
    border-left: 1px solid #ded2c5;
}

.notice-calendar[b-vf5iz6bic5] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    background: #f0e6d9;
    border-radius: 50%;
    font-size: 1.1rem;
}

.notice-calendar[b-vf5iz6bic5] {
    color: #a16f43;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.15rem;
    font-weight: 700;
    font-style: italic;
}

.notice-date > div[b-vf5iz6bic5] {
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
}

.notice-date strong[b-vf5iz6bic5] {
    color: #332a25;
    font-size: 0.9rem;
}

.notice-date span[b-vf5iz6bic5] {
    color: #7b6c63;
    font-size: 0.8rem;
}

/* FEATURE STRIP */

.feature-strip[b-vf5iz6bic5] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    max-width: 1180px;
    margin: 0 auto;
    padding: 2.75rem 0 3rem;
    border-top: 1px solid rgba(73, 58, 48, 0.08);
}

.feature-item[b-vf5iz6bic5] {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
    padding: 0 2rem;
    border-right: 1px solid rgba(73, 58, 48, 0.12);
}

    .feature-item:last-child[b-vf5iz6bic5] {
        border-right: 0;
    }


    .feature-item strong[b-vf5iz6bic5] {
        color: #292321;
        font-family: Georgia, "Times New Roman", serif;
        font-size: 1.15rem;
        font-weight: 600;
        line-height: 1.2;
    }

    .feature-item span[b-vf5iz6bic5] {
        max-width: 220px;
        color: #766a63;
        font-size: 0.92rem;
        line-height: 1.5;
    }

/* COFFEE STORY */

.coffee-story[b-vf5iz6bic5] {
    display: grid;
    grid-template-columns: 1.1fr 1fr;
    min-height: 600px;
    background: #2e2825;
}

.story-image[b-vf5iz6bic5] {
    position: relative;
    overflow: hidden;
}

    .story-image img[b-vf5iz6bic5] {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .story-image[b-vf5iz6bic5]::after {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        width: 32%;
        background: linear-gradient( to right, transparent, #2e2825 );
        content: "";
    }

.story-copy[b-vf5iz6bic5] {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 5rem 8vw 5rem 4rem;
    color: white;
}

    .story-copy h2[b-vf5iz6bic5] {
        margin: 0;
        font-family: Georgia, "Times New Roman", serif;
        font-size: clamp(3rem, 5vw, 5.8rem);
        letter-spacing: -0.05em;
        line-height: 0.92;
    }

    .story-copy > p:not(.eyebrow)[b-vf5iz6bic5] {
        max-width: 520px;
        margin: 2rem 0 0;
        color: #ddd1c9;
        font-size: 1.08rem;
        line-height: 1.7;
    }

.story-link[b-vf5iz6bic5] {
    width: fit-content;
    margin-top: 2rem;
    color: white;
    font-weight: 800;
    text-decoration: none;
}

/* HOURS */

.hours-section[b-vf5iz6bic5] {
    max-width: 1180px;
    margin: 0 auto;
    padding: 7rem 2rem;
}

.section-heading[b-vf5iz6bic5] {
    max-width: 700px;
    margin: 0 auto 3.5rem;
    text-align: center;
}

    .section-heading h2[b-vf5iz6bic5] {
        margin: 0;
        color: #292321;
        font-family: Georgia, "Times New Roman", serif;
        font-size: clamp(3rem, 6vw, 5rem);
        letter-spacing: -0.05em;
    }

    .section-heading > p:last-child[b-vf5iz6bic5] {
        color: #74665f;
        line-height: 1.7;
    }

.hours-layout[b-vf5iz6bic5] {
    display: grid;
    grid-template-columns: 1fr 0.8fr;
    gap: 1.5rem;
}

.hours-card[b-vf5iz6bic5] {
    overflow: hidden;
    background: white;
    border: 1px solid #e1d5c8;
    border-radius: 24px;
}

.hours-row[b-vf5iz6bic5] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1.2rem 1.5rem;
    border-bottom: 1px solid #eee6dc;
}

    .hours-row:last-child[b-vf5iz6bic5] {
        border-bottom: 0;
    }

    .hours-row.today[b-vf5iz6bic5] {
        background: #f6eadb;
    }

.day[b-vf5iz6bic5] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
}

.today-label[b-vf5iz6bic5] {
    padding: 0.22rem 0.55rem;
    background: #c99158;
    border-radius: 999px;
    color: white;
    font-size: 0.65rem;
    font-weight: 800;
    text-transform: uppercase;
}

.closed[b-vf5iz6bic5] {
    color: #a54d41;
    font-weight: 800;
}

.hours-photo-card[b-vf5iz6bic5] {
    position: relative;
    min-height: 450px;
    overflow: hidden;
    border-radius: 24px;
}

    .hours-photo-card img[b-vf5iz6bic5] {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .hours-photo-card[b-vf5iz6bic5]::after {
        position: absolute;
        right: 0;
        bottom: 0;
        left: 0;
        height: 45%;
        background: linear-gradient( to bottom, transparent, rgba(32, 25, 21, 0.82) );
        content: "";
    }

.hours-photo-overlay[b-vf5iz6bic5] {
    position: absolute;
    z-index: 2;
    right: 2rem;
    bottom: 2rem;
    left: 2rem;
    display: flex;
    flex-direction: column;
    color: white;
}

    .hours-photo-overlay strong[b-vf5iz6bic5] {
        font-family: Georgia, "Times New Roman", serif;
        font-size: 2rem;
    }

.today-special[b-vf5iz6bic5] {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 1rem;
    margin-top: 1.5rem;
    padding: 1.4rem 1.5rem;
    background: #fff0d8;
    border: 1px solid #e6c590;
    border-radius: 16px;
}

    .today-special > div:first-child[b-vf5iz6bic5] {
        display: flex;
        flex-direction: column;
    }

.special-label[b-vf5iz6bic5] {
    color: #9b6d37;
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.today-special p[b-vf5iz6bic5] {
    grid-column: 1 / -1;
    margin: 0;
    color: #706058;
}

.upcoming-specials[b-vf5iz6bic5] {
    margin-top: 3rem;
}

.upcoming-heading[b-vf5iz6bic5] {
    margin-bottom: 1rem;
}

    .upcoming-heading h3[b-vf5iz6bic5] {
        margin: 0;
        font-family: Georgia, "Times New Roman", serif;
        font-size: 2rem;
    }

.special-list[b-vf5iz6bic5] {
    overflow: hidden;
    background: white;
    border: 1px solid #e1d5c8;
    border-radius: 20px;
}

.special-row[b-vf5iz6bic5] {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 1.2rem;
    padding: 1.2rem 1.5rem;
    border-bottom: 1px solid #eee6dc;
}

    .special-row:last-child[b-vf5iz6bic5] {
        border-bottom: 0;
    }

.special-date[b-vf5iz6bic5] {
    display: flex;
    flex-direction: column;
    align-items: center;
    min-width: 52px;
    padding: 0.5rem;
    background: #f6eadb;
    border-radius: 12px;
}

    .special-date strong[b-vf5iz6bic5] {
        font-size: 1.35rem;
    }

    .special-date span[b-vf5iz6bic5] {
        color: #8c6746;
        font-size: 0.72rem;
        font-weight: 800;
        text-transform: uppercase;
    }

.special-name[b-vf5iz6bic5] {
    display: flex;
    flex-direction: column;
}

    .special-name span[b-vf5iz6bic5] {
        margin-top: 0.2rem;
        color: #756a66;
        font-size: 0.85rem;
    }

/* EXTRA NOTICES */

.additional-notices[b-vf5iz6bic5] {
    padding: 2rem 2rem 7rem;
}

.notice-grid[b-vf5iz6bic5] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
    max-width: 1000px;
    margin: 0 auto;
}

.notice-card[b-vf5iz6bic5] {
    padding: 2rem;
    background: #d5ac7a;
    border-radius: 20px;
}

    .notice-card > span[b-vf5iz6bic5] {
        color: #3b2b22;
        font-size: 0.7rem;
        font-weight: 900;
        letter-spacing: 0.15em;
        text-transform: uppercase;
    }

    .notice-card h3[b-vf5iz6bic5] {
        margin: 0.5rem 0;
        font-family: Georgia, "Times New Roman", serif;
        font-size: 1.8rem;
    }

/* LOCATION + OPENSTREETMAP */

.location-section[b-vf5iz6bic5] {
    padding: 8rem max(5vw, 2rem);
    background: #fffaf4;
}

.location-stage[b-vf5iz6bic5] {
    position: relative;
    max-width: 1320px;
    min-height: 720px;
    margin: 0 auto;
}

.location-map[b-vf5iz6bic5] {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 220px;
    overflow: hidden;
    background: #e8dfd6;
    border-radius: 28px;
    box-shadow: 0 28px 80px rgba(42, 31, 24, 0.10);
}

.leaflet-map[b-vf5iz6bic5] {
    width: 100%;
    height: 100%;
    min-height: 720px;
    background: #e8dfd6;
}

.location-map[b-vf5iz6bic5]  .leaflet-control-zoom {
    overflow: hidden;
    border: 0;
    border-radius: 12px;
    box-shadow: 0 8px 28px rgba(40, 30, 24, 0.16);
}

    .location-map[b-vf5iz6bic5]  .leaflet-control-zoom a {
        width: 40px;
        height: 40px;
        border: 0;
        border-bottom: 1px solid #e2d7cc;
        background: rgba(255, 250, 244, 0.96);
        color: #292321;
        font-family: Georgia, "Times New Roman", serif;
        font-size: 22px;
        line-height: 40px;
    }

        .location-map[b-vf5iz6bic5]  .leaflet-control-zoom a:last-child {
            border-bottom: 0;
        }

.location-map[b-vf5iz6bic5]  .leaflet-control-attribution {
    padding: 4px 7px;
    background: rgba(255, 250, 244, 0.90);
    color: #76675e;
    font-size: 9px;
}

    .location-map[b-vf5iz6bic5]  .leaflet-control-attribution a {
        color: #91613d;
    }

.location-map[b-vf5iz6bic5]  .leaflet-popup-content-wrapper {
    border-radius: 14px;
    box-shadow: 0 14px 34px rgba(32, 24, 20, 0.16);
}

.location-map[b-vf5iz6bic5]  .leaflet-popup-tip {
    box-shadow: 3px 3px 8px rgba(32, 24, 20, 0.08);
}

.location-panel[b-vf5iz6bic5] {
    position: absolute;
    z-index: 500;
    top: 50%;
    left: 0;
    width: min(440px, calc(100% - 2rem));
    padding: 3.1rem;
    background: #292321;
    color: white;
    transform: translateY(-50%);
    box-shadow: 0 28px 70px rgba(33, 24, 19, 0.18);
}

    .location-panel .eyebrow[b-vf5iz6bic5] {
        color: #d6a572;
    }

    .location-panel h2[b-vf5iz6bic5] {
        margin: 0;
        font-family: Georgia, "Times New Roman", serif;
        font-size: clamp(2.7rem, 4.5vw, 4.3rem);
        font-weight: 500;
        letter-spacing: -0.055em;
        line-height: 0.92;
    }

    .location-panel address[b-vf5iz6bic5] {
        margin: 2rem 0 0;
        color: #d9cec6;
        font-size: 0.9rem;
        font-style: normal;
        line-height: 1.75;
    }

.location-status[b-vf5iz6bic5] {
    display: flex;
    align-items: center;
    gap: 0.8rem;
    margin-top: 2rem;
    padding-top: 1.5rem;
    border-top: 1px solid rgba(255, 255, 255, 0.14);
}

    .location-status .status-dot.status-open[b-vf5iz6bic5] {
        background: #80a777;
        box-shadow: 0 0 0 5px rgba(128, 167, 119, 0.12);
    }

    .location-status .status-dot.status-closed[b-vf5iz6bic5] {
        background: #cd786a;
        box-shadow: 0 0 0 5px rgba(205, 120, 106, 0.12);
    }

    .location-status > div[b-vf5iz6bic5] {
        display: flex;
        flex-direction: column;
    }

    .location-status strong[b-vf5iz6bic5] {
        font-size: 0.8rem;
    }

    .location-status span:last-child[b-vf5iz6bic5] {
        margin-top: 0.15rem;
        color: #ab9d95;
        font-size: 0.7rem;
    }

.map-links[b-vf5iz6bic5] {
    margin-top: 2rem;
    border-top: 1px solid rgba(255, 255, 255, 0.14);
}

    .map-links a[b-vf5iz6bic5] {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 1rem;
        padding: 0.95rem 0;
        border-bottom: 1px solid rgba(255, 255, 255, 0.14);
        color: white;
        font-size: 0.76rem;
        font-weight: 750;
        text-decoration: none;
        transition: padding-left 0.18s ease;
    }

        .map-links a:hover[b-vf5iz6bic5] {
            padding-left: 0.35rem;
        }

    .map-links strong[b-vf5iz6bic5] {
        color: #d7a574;
        font-size: 0.9rem;
    }

.location-email[b-vf5iz6bic5] {
    display: inline-block;
    margin-top: 1.8rem;
    color: white;
    font-size: 0.82rem;
    font-weight: 750;
    text-underline-offset: 0.22em;
}


/* TABLET */

@media (max-width: 1000px) {
    .hero-section[b-vf5iz6bic5] {
        grid-template-columns: 1fr;
    }

    .hero-copy[b-vf5iz6bic5] {
        padding: 5rem 2rem 3rem;
    }

        .hero-copy[b-vf5iz6bic5]::after {
            display: none;
        }

    .hero-image[b-vf5iz6bic5] {
        min-height: 500px;
    }

        .hero-image[b-vf5iz6bic5]::before {
            position: absolute;
            z-index: 2;
            top: 0;
            right: 0;
            left: 0;
            height: 130px;
            background: linear-gradient( to bottom, #f6f0e7, transparent );
            content: "";
        }

    .notice-banner[b-vf5iz6bic5] {
        margin: -30px 1.5rem 0;
    }

    .feature-strip[b-vf5iz6bic5] {
        grid-template-columns: repeat(2, 1fr);
        padding: 2rem 1rem 2.5rem;
    }

    .feature-item[b-vf5iz6bic5] {
        padding: 1.25rem 1.5rem;
        border-right: 0;
        border-bottom: 1px solid rgba(73, 58, 48, 0.10);
    }

        .feature-item:nth-last-child(-n+2)[b-vf5iz6bic5] {
            border-bottom: 0;
        }

    .coffee-story[b-vf5iz6bic5] {
        grid-template-columns: 1fr;
    }

    .story-image[b-vf5iz6bic5] {
        min-height: 500px;
    }

        .story-image[b-vf5iz6bic5]::after {
            top: auto;
            right: 0;
            bottom: 0;
            left: 0;
            width: auto;
            height: 35%;
            background: linear-gradient( to bottom, transparent, #2e2825 );
        }

    .story-copy[b-vf5iz6bic5] {
        padding: 3rem 2rem 5rem;
    }

    .hours-layout[b-vf5iz6bic5] {
        grid-template-columns: 1fr;
    }

    .location-stage[b-vf5iz6bic5] {
        display: flex;
        min-height: auto;
        flex-direction: column;
    }

    .location-map[b-vf5iz6bic5] {
        position: relative;
        top: auto;
        right: auto;
        bottom: auto;
        left: auto;
        height: 600px;
        order: 2;
        border-radius: 0 0 24px 24px;
    }

    .leaflet-map[b-vf5iz6bic5] {
        min-height: 600px;
    }

    .location-panel[b-vf5iz6bic5] {
        position: relative;
        top: auto;
        left: auto;
        width: auto;
        order: 1;
        transform: none;
        box-shadow: none;
    }
}

/* MOBILE */

@media (max-width: 650px) {
    .hero-copy[b-vf5iz6bic5] {
        padding: 4rem 1.25rem 2.5rem;
    }

        .hero-copy h1[b-vf5iz6bic5] {
            font-size: clamp(3.6rem, 18vw, 5rem);
        }

    .hero-description[b-vf5iz6bic5] {
        font-size: 1rem;
    }

    .hero-controls[b-vf5iz6bic5] {
        width: 100%;
        gap: 1.25rem;
        margin-top: 1.6rem;
    }

    .opening-status[b-vf5iz6bic5] {
        width: 100%;
    }

    .status-text[b-vf5iz6bic5] {
        display: flex;
        align-items: center;
        justify-content: space-between;
        width: 100%;
        gap: 1rem;
    }

    .hero-actions[b-vf5iz6bic5] {
        display: grid;
        grid-template-columns: 1fr 1fr;
        width: 100%;
        gap: 0.65rem;
    }

    .button[b-vf5iz6bic5] {
        width: 100%;
        min-width: 0;
    }

    .hero-image[b-vf5iz6bic5] {
        min-height: 390px;
    }

    .notice-banner[b-vf5iz6bic5] {
        grid-template-columns: 1fr;
        gap: 1.2rem;
        margin: -26px 1rem 0;
        padding: 1.5rem 1.4rem 1.5rem 1.7rem;
    }

    .notice-date[b-vf5iz6bic5] {
        padding-top: 1rem;
        padding-left: 0;
        border-top: 1px solid #ded2c5;
        border-left: 0;
    }

    .feature-strip[b-vf5iz6bic5] {
        grid-template-columns: 1fr;
        padding: 1.5rem 1rem 2rem;
    }

    .feature-item[b-vf5iz6bic5] {
        padding: 1.1rem 0.5rem;
        border-bottom: 1px solid rgba(73, 58, 48, 0.10);
    }

        .feature-item:last-child[b-vf5iz6bic5] {
            border-bottom: 0;
        }

    .story-image[b-vf5iz6bic5] {
        min-height: 360px;
    }

    .story-copy h2[b-vf5iz6bic5] {
        font-size: 3.2rem;
    }

    .hours-section[b-vf5iz6bic5] {
        padding: 5rem 1rem;
    }

    .section-heading h2[b-vf5iz6bic5] {
        font-size: 3rem;
    }

    .hours-photo-card[b-vf5iz6bic5] {
        min-height: 340px;
    }

    .today-special[b-vf5iz6bic5] {
        grid-template-columns: 1fr;
    }

    .special-row[b-vf5iz6bic5] {
        grid-template-columns: auto 1fr;
    }

    .special-time[b-vf5iz6bic5] {
        grid-column: 2;
    }

    .notice-grid[b-vf5iz6bic5] {
        grid-template-columns: 1fr;
    }

    .location-section[b-vf5iz6bic5] {
        padding: 4rem 1rem;
    }

    .location-panel[b-vf5iz6bic5] {
        padding: 2rem 1.5rem;
    }

        .location-panel h2[b-vf5iz6bic5] {
            font-size: 3rem;
        }

    .location-map[b-vf5iz6bic5] {
        height: 440px;
    }

    .leaflet-map[b-vf5iz6bic5] {
        min-height: 440px;
    }
}
/* /Components/Pages/Menu.razor.rz.scp.css */
.menu-page[b-37brdoeh4p] {
    min-height: 70vh;
    background: #f5efe6;
    color: #29221f;
}

.menu-hero[b-37brdoeh4p] {
    padding: 5.5rem 1.5rem 4rem;
    background: radial-gradient(circle at 85% 25%, rgba(190, 139, 83, 0.14), transparent 35%), linear-gradient(135deg, #f8f2e9 0%, #f1e7da 100%);
    border-bottom: 1px solid #dfd2c4;
}

.menu-hero-inner[b-37brdoeh4p] {
    max-width: 1150px;
    margin: 0 auto;
}

.eyebrow[b-37brdoeh4p],
.category-kicker[b-37brdoeh4p] {
    margin: 0 0 0.55rem;
    color: #a57043;
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.menu-hero h1[b-37brdoeh4p] {
    max-width: 800px;
    margin: 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(4rem, 9vw, 7rem);
    font-weight: 600;
    line-height: 0.92;
    letter-spacing: -0.055em;
}

.menu-intro[b-37brdoeh4p] {
    max-width: 600px;
    margin: 1.3rem 0 0;
    color: #716159;
    font-size: 1.05rem;
    line-height: 1.65;
}

.category-navigation[b-37brdoeh4p] {
    position: sticky;
    top: 0;
    z-index: 20;
    overflow-x: auto;
    background: rgba(255, 252, 247, 0.96);
    border-bottom: 1px solid #e2d7cb;
    backdrop-filter: blur(12px);
}

.category-navigation-inner[b-37brdoeh4p] {
    display: flex;
    gap: 0.4rem;
    max-width: 1150px;
    margin: 0 auto;
    padding: 0.8rem 1.5rem;
    white-space: nowrap;
}

.category-navigation a[b-37brdoeh4p] {
    padding: 0.6rem 0.9rem;
    border-radius: 999px;
    color: #66564d;
    font-size: 0.78rem;
    font-weight: 800;
    text-decoration: none;
    transition: background 0.15s ease, color 0.15s ease;
}

    .category-navigation a:hover[b-37brdoeh4p] {
        background: #29221f;
        color: #fff;
    }

.menu-container[b-37brdoeh4p] {
    max-width: 1150px;
    margin: 0 auto;
    padding: 1rem 1.5rem 6rem;
}

.menu-category[b-37brdoeh4p] {
    padding-top: 4rem;
    scroll-margin-top: 75px;
}

.category-header[b-37brdoeh4p] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 2rem;
    margin-bottom: 1.5rem;
}

    .category-header h2[b-37brdoeh4p] {
        margin: 0;
        font-family: Georgia, "Times New Roman", serif;
        font-size: clamp(2.3rem, 5vw, 4rem);
        font-weight: 600;
        line-height: 1;
        letter-spacing: -0.045em;
    }

.category-description[b-37brdoeh4p] {
    max-width: 620px;
    margin: 0.7rem 0 0;
    color: #786961;
    line-height: 1.55;
}

.menu-list[b-37brdoeh4p] {
    overflow: hidden;
    background: rgba(255, 255, 255, 0.72);
    border: 1px solid #dfd4c8;
    border-radius: 20px;
}

.menu-list-item[b-37brdoeh4p] {
    padding: 1.45rem 1.7rem;
    border-bottom: 1px solid #e5dbd0;
}

    .menu-list-item:last-child[b-37brdoeh4p] {
        border-bottom: 0;
    }

.menu-list-layout[b-37brdoeh4p] {
    display: grid;
    align-items: start;
    width: 100%;
}

    .menu-list-layout.without-image[b-37brdoeh4p] {
        grid-template-columns: minmax(0, 1fr);
    }

    .menu-list-layout.with-image[b-37brdoeh4p] {
        grid-template-columns: minmax(0, 1fr) 180px;
        gap: 1.75rem;
    }

.menu-list-main[b-37brdoeh4p] {
    min-width: 0;
}

.menu-list-image[b-37brdoeh4p] {
    width: 180px;
    height: 125px;
    overflow: hidden;
    background: #eee5dc;
    border: 1px solid #e1d5c9;
    border-radius: 16px;
}

    .menu-list-image img[b-37brdoeh4p] {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover;
        transition: transform 0.3s ease;
    }

.menu-list-item:hover .menu-list-image img[b-37brdoeh4p] {
    transform: scale(1.025);
}

.product-heading[b-37brdoeh4p] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1.5rem;
}

.product-name-row[b-37brdoeh4p] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.6rem;
}

    .product-name-row h3[b-37brdoeh4p],
    .product-card h3[b-37brdoeh4p] {
        margin: 0;
        font-family: Georgia, "Times New Roman", serif;
        font-size: 1.4rem;
        font-weight: 700;
    }

.product-badge[b-37brdoeh4p],
.card-badge[b-37brdoeh4p] {
    padding: 0.32rem 0.55rem;
    background: #29221f;
    border-radius: 999px;
    color: #fff;
    font-size: 0.58rem;
    font-weight: 900;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.product-description[b-37brdoeh4p],
.card-description[b-37brdoeh4p] {
    margin: 0.4rem 0 0;
    color: #82736a;
    font-size: 0.86rem;
    line-height: 1.5;
}

.single-price[b-37brdoeh4p] {
    flex-shrink: 0;
    margin-left: auto;
    color: #392e29;
    font-size: 1rem;
    font-weight: 850;
}

.variant-list[b-37brdoeh4p] {
    width: 100%;
    margin-top: 1rem;
}

.variant-row[b-37brdoeh4p],
.card-variant-row[b-37brdoeh4p] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
}

.variant-row[b-37brdoeh4p] {
    padding: 0.4rem 0;
}

.variant-name[b-37brdoeh4p] {
    display: flex;
    flex-direction: column;
    color: #574a43;
    font-size: 0.84rem;
}

    .variant-name small[b-37brdoeh4p],
    .card-variant-row small[b-37brdoeh4p] {
        display: block;
        margin-top: 0.15rem;
        color: #a08e84;
        font-size: 0.66rem;
        line-height: 1.35;
    }

.variant-price[b-37brdoeh4p] {
    flex-shrink: 0;
    margin-left: auto;
    color: #41352f;
    font-size: 0.84rem;
    font-weight: 800;
    text-align: right;
}

.sold-out[b-37brdoeh4p] {
    color: #9e6f66;
    font-size: 0.68rem;
    font-weight: 850;
    text-transform: uppercase;
}

.allergen-summary[b-37brdoeh4p] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem 1rem;
    margin-top: 0.9rem;
    padding-top: 0.8rem;
    border-top: 1px solid #eee4da;
    color: #87766d;
    font-size: 0.68rem;
    line-height: 1.45;
}

    .allergen-summary strong[b-37brdoeh4p] {
        color: #5d4e46;
    }

.customisation-note[b-37brdoeh4p] {
    font-style: italic;
}

.product-grid[b-37brdoeh4p] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.25rem;
}

.product-card[b-37brdoeh4p] {
    display: flex;
    min-width: 0;
    overflow: hidden;
    flex-direction: column;
    background: #fff;
    border: 1px solid #dfd4c8;
    border-radius: 20px;
    box-shadow: 0 8px 30px rgba(72, 51, 37, 0.035);
}

.product-image[b-37brdoeh4p] {
    position: relative;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    background: #e9dfd5;
}

    .product-image img[b-37brdoeh4p] {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover;
        transition: transform 0.35s ease;
    }

.product-card:hover .product-image img[b-37brdoeh4p] {
    transform: scale(1.015);
}

.image-placeholder[b-37brdoeh4p] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    background: radial-gradient(circle at 30% 25%, rgba(180, 128, 81, 0.14), transparent 36%), #eee5dc;
}

    .image-placeholder .placeholder-logo[b-37brdoeh4p] {
        width: 120px;
        height: 120px;
        object-fit: contain;
        border-radius: 50%;
        opacity: 0.72;
    }

.card-badge[b-37brdoeh4p] {
    position: absolute;
    top: 0.8rem;
    left: 0.8rem;
}

.product-card-content[b-37brdoeh4p] {
    display: flex;
    flex: 1;
    flex-direction: column;
    padding: 1.25rem 1.3rem 1.35rem;
}

.card-title-row[b-37brdoeh4p] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
}

.card-price[b-37brdoeh4p] {
    flex-shrink: 0;
    color: #382d28;
    font-size: 0.88rem;
    font-weight: 900;
}

.card-description[b-37brdoeh4p] {
    min-height: 2.6em;
    margin-top: 0.55rem;
}

.card-variants[b-37brdoeh4p] {
    margin-top: 1rem;
    padding-top: 0.8rem;
    border-top: 1px solid #eee5dc;
}

.card-variants-label[b-37brdoeh4p] {
    display: block;
    margin-bottom: 0.35rem;
    color: #a57043;
    font-size: 0.62rem;
    font-weight: 900;
    letter-spacing: 0.13em;
    text-transform: uppercase;
}

.card-variant-row[b-37brdoeh4p] {
    padding: 0.34rem 0;
    color: #65564e;
    font-size: 0.78rem;
}

    .card-variant-row > div[b-37brdoeh4p] {
        display: flex;
        flex-direction: column;
    }

    .card-variant-row strong[b-37brdoeh4p] {
        flex-shrink: 0;
        color: #40332d;
    }

.allergen-notice[b-37brdoeh4p] {
    margin-top: 5rem;
    padding: 2.2rem;
    background: #29221f;
    border-radius: 22px;
    color: #fff;
}

    .allergen-notice .eyebrow[b-37brdoeh4p] {
        color: #d6aa7d;
    }

    .allergen-notice h2[b-37brdoeh4p] {
        margin: 0;
        font-family: Georgia, "Times New Roman", serif;
        font-size: clamp(2rem, 4vw, 3rem);
        font-weight: 600;
    }

    .allergen-notice p:last-child[b-37brdoeh4p] {
        max-width: 820px;
        margin: 1rem 0 0;
        color: #d6ccc6;
        font-size: 0.86rem;
        line-height: 1.65;
    }

.loading-card[b-37brdoeh4p],
.empty-menu[b-37brdoeh4p] {
    margin-top: 3rem;
    padding: 2rem;
    background: #fff;
    border: 1px solid #dfd4c8;
    border-radius: 18px;
}

.loading-card[b-37brdoeh4p] {
    color: #786961;
}

.empty-menu h2[b-37brdoeh4p] {
    margin: 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 2rem;
}

.empty-menu p:last-child[b-37brdoeh4p] {
    color: #796a61;
}

@media (max-width: 900px) {
    .product-grid[b-37brdoeh4p] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .menu-list-layout.with-image[b-37brdoeh4p] {
        grid-template-columns: minmax(0, 1fr) 150px;
        gap: 1.25rem;
    }

    .menu-list-image[b-37brdoeh4p] {
        width: 150px;
        height: 115px;
    }
}

@media (max-width: 650px) {
    .menu-hero[b-37brdoeh4p] {
        padding: 4rem 1rem 3rem;
    }

    .menu-container[b-37brdoeh4p] {
        padding-left: 1rem;
        padding-right: 1rem;
    }

    .category-navigation-inner[b-37brdoeh4p] {
        padding-left: 1rem;
        padding-right: 1rem;
    }

    .menu-category[b-37brdoeh4p] {
        padding-top: 3rem;
    }

    .category-header[b-37brdoeh4p] {
        align-items: flex-start;
    }

    .image-placeholder .placeholder-logo[b-37brdoeh4p] {
        width: 95px;
        height: 95px;
    }

    .product-grid[b-37brdoeh4p] {
        grid-template-columns: 1fr;
    }

    .product-card-content[b-37brdoeh4p] {
        padding: 1.15rem;
    }

    .card-description[b-37brdoeh4p] {
        min-height: 0;
    }

    .menu-list-item[b-37brdoeh4p] {
        padding: 1.15rem;
    }

    .menu-list-layout.with-image[b-37brdoeh4p] {
        grid-template-columns: minmax(0, 1fr) 96px;
        gap: 0.85rem;
    }

    .menu-list-image[b-37brdoeh4p] {
        width: 96px;
        height: 96px;
        border-radius: 12px;
    }

    .product-heading[b-37brdoeh4p] {
        gap: 0.75rem;
    }

    .product-name-row h3[b-37brdoeh4p],
    .product-card h3[b-37brdoeh4p] {
        font-size: 1.25rem;
    }

    .variant-list[b-37brdoeh4p] {
        margin-top: 0.8rem;
    }

    .allergen-notice[b-37brdoeh4p] {
        margin-top: 3rem;
        padding: 1.5rem;
    }
}

@media (max-width: 420px) {
    .menu-list-layout.with-image[b-37brdoeh4p] {
        grid-template-columns: minmax(0, 1fr) 82px;
        gap: 0.7rem;
    }

    .menu-list-image[b-37brdoeh4p] {
        width: 82px;
        height: 82px;
    }
}
/* /Components/Pages/Staff/Home.razor.rz.scp.css */
.admin-page[b-rlkvx7ztgl] {
    max-width: 1100px;
    margin: 0 auto;
    padding: 4rem 1.5rem 6rem;
}

.admin-header[b-rlkvx7ztgl] {
    margin-bottom: 3rem;
}

    .admin-header h1[b-rlkvx7ztgl] {
        margin: 0;
        color: #292323;
        font-family: Georgia, "Times New Roman", serif;
        font-size: clamp(2.8rem, 6vw, 4.8rem);
        font-weight: 600;
        letter-spacing: -0.045em;
    }

    .admin-header > p:last-child[b-rlkvx7ztgl] {
        max-width: 620px;
        margin: 0.9rem 0 0;
        color: #756860;
        font-size: 1rem;
        line-height: 1.6;
    }

.eyebrow[b-rlkvx7ztgl] {
    margin: 0 0 0.65rem;
    color: #9a6b45;
    font-size: 0.75rem;
    font-weight: 850;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.admin-grid[b-rlkvx7ztgl] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.admin-card[b-rlkvx7ztgl] {
    position: relative;
    display: flex;
    gap: 1.3rem;
    min-height: 145px;
    padding: 1.75rem;
    overflow: hidden;
    background: white;
    border: 1px solid #e4dbcf;
    border-radius: 20px;
    color: #292323;
    text-decoration: none;
    transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease;
}

    .admin-card:hover[b-rlkvx7ztgl] {
        transform: translateY(-2px);
        border-color: #cfb69c;
        box-shadow: 0 14px 35px rgba(41, 35, 35, 0.08);
    }

    .admin-card h2[b-rlkvx7ztgl] {
        margin: 0 0 0.45rem;
        color: #292323;
        font-size: 1.25rem;
    }

    .admin-card p[b-rlkvx7ztgl] {
        margin: 0;
        color: #6d625e;
        line-height: 1.55;
    }

.card-mark[b-rlkvx7ztgl] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    background: #f4ede5;
    border-radius: 50%;
    color: #a27248;
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0.08em;
}

.admin-card.featured[b-rlkvx7ztgl] {
    background: linear-gradient(145deg, #fff 0%, #faf5ee 100%);
}

.card-label[b-rlkvx7ztgl] {
    display: inline-block;
    margin-bottom: 0.4rem;
    color: #a27248;
    font-size: 0.62rem;
    font-weight: 900;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

@media (max-width: 700px) {
    .admin-grid[b-rlkvx7ztgl] {
        grid-template-columns: 1fr;
    }

    .admin-page[b-rlkvx7ztgl] {
        padding-top: 2.5rem;
    }
}
/* /Components/Pages/Staff/Rota.razor.rz.scp.css */
.rota-page[b-kmy2e5jf8q] {
    max-width: 1500px;
    margin: 0 auto;
    padding: 3rem 1.5rem 7rem;
}

.rota-header[b-kmy2e5jf8q] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 2rem;
    margin-bottom: 2rem;
}

.back-link[b-kmy2e5jf8q] {
    display: inline-block;
    margin-bottom: 1.5rem;
    color: #8f6743;
    font-size: 0.78rem;
    font-weight: 800;
    text-decoration: none;
}

.eyebrow[b-kmy2e5jf8q],
.section-label[b-kmy2e5jf8q] {
    margin: 0 0 0.5rem;
    color: #9a6b45;
    font-size: 0.66rem;
    font-weight: 900;
    letter-spacing: 0.17em;
    text-transform: uppercase;
}

.rota-header h1[b-kmy2e5jf8q] {
    margin: 0;
    color: #292321;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(3rem, 6vw, 5rem);
    font-weight: 600;
    letter-spacing: -0.055em;
    line-height: 0.98;
}

.page-description[b-kmy2e5jf8q] {
    max-width: 700px;
    margin: 1rem 0 0;
    color: #756860;
    line-height: 1.65;
}

.publish-area[b-kmy2e5jf8q] {
    display: flex;
    align-items: center;
    gap: 0.7rem;
}

.rota-status[b-kmy2e5jf8q] {
    padding: 0.45rem 0.75rem;
    border-radius: 999px;
    font-size: 0.64rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

    .rota-status.draft[b-kmy2e5jf8q] {
        background: #eee8e1;
        color: #796d64;
    }

    .rota-status.published[b-kmy2e5jf8q] {
        background: #e5efe3;
        color: #4b684d;
    }

.button[b-kmy2e5jf8q] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 0 1.2rem;
    border-radius: 999px;
    font: inherit;
    font-size: 0.74rem;
    font-weight: 850;
    cursor: pointer;
}

.button-primary[b-kmy2e5jf8q] {
    background: #292321;
    border: 1px solid #292321;
    color: white;
}

.button-secondary[b-kmy2e5jf8q] {
    background: transparent;
    border: 1px solid #cdbdae;
    color: #604c3e;
}

.button:disabled[b-kmy2e5jf8q] {
    opacity: 0.45;
    cursor: default;
}

.message[b-kmy2e5jf8q],
.state-card[b-kmy2e5jf8q] {
    margin-bottom: 1rem;
    padding: 1rem 1.2rem;
    border-radius: 12px;
}

.success-message[b-kmy2e5jf8q] {
    background: #eaf2e8;
    border: 1px solid #c4d5c0;
    color: #42603c;
}

.error-message[b-kmy2e5jf8q] {
    background: #f7e8e4;
    border: 1px solid #e6c4bd;
    color: #873f34;
}

.state-card[b-kmy2e5jf8q] {
    background: white;
    border: 1px solid #e5dcd3;
    color: #796b63;
}

.week-toolbar[b-kmy2e5jf8q] {
    display: grid;
    grid-template-columns: auto minmax(240px, 1fr) auto;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1rem;
    padding: 1rem;
    background: #fffdf9;
    border: 1px solid #dfd4c8;
    border-radius: 18px;
}

.week-title[b-kmy2e5jf8q] {
    display: flex;
    align-items: center;
    flex-direction: column;
    text-align: center;
}

    .week-title > span[b-kmy2e5jf8q] {
        color: #9a6b45;
        font-size: 0.58rem;
        font-weight: 900;
        letter-spacing: 0.12em;
        text-transform: uppercase;
    }

    .week-title strong[b-kmy2e5jf8q] {
        margin-top: 0.2rem;
        color: #332a26;
        font-family: Georgia, "Times New Roman", serif;
        font-size: 1.2rem;
    }

    .week-title small[b-kmy2e5jf8q] {
        margin-top: 0.2rem;
        color: #8a7b72;
        font-size: 0.68rem;
    }

.week-actions[b-kmy2e5jf8q] {
    display: flex;
    gap: 0.5rem;
}

.week-button[b-kmy2e5jf8q] {
    min-height: 40px;
    padding: 0 1rem;
    background: #f6f0e9;
    border: 1px solid #dfd2c5;
    border-radius: 999px;
    color: #66564c;
    font: inherit;
    font-size: 0.7rem;
    font-weight: 800;
    cursor: pointer;
}

    .week-button:hover[b-kmy2e5jf8q] {
        background: #eee3d8;
    }

.rota-summary[b-kmy2e5jf8q] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1px;
    margin-bottom: 1rem;
    overflow: hidden;
    background: #dfd5cc;
    border: 1px solid #dfd5cc;
    border-radius: 16px;
}

.summary-item[b-kmy2e5jf8q] {
    display: flex;
    flex-direction: column;
    padding: 1rem 1.2rem;
    background: #f5eee6;
}

    .summary-item span[b-kmy2e5jf8q] {
        color: #8d7d73;
        font-size: 0.58rem;
        font-weight: 900;
        letter-spacing: 0.08em;
        text-transform: uppercase;
    }

    .summary-item strong[b-kmy2e5jf8q] {
        margin-top: 0.2rem;
        color: #392f2a;
        font-family: Georgia, "Times New Roman", serif;
        font-size: 1.4rem;
        font-weight: 500;
    }

.shift-editor[b-kmy2e5jf8q] {
    margin-bottom: 1.5rem;
    overflow: hidden;
    background: #fffdf9;
    border: 1px solid #d8cbbf;
    border-radius: 22px;
    box-shadow: 0 16px 50px rgba(52, 41, 34, 0.08);
}

.editor-heading[b-kmy2e5jf8q] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1.5rem 1.7rem;
    border-bottom: 1px solid #e8ded4;
}

    .editor-heading h2[b-kmy2e5jf8q] {
        margin: 0;
        color: #302824;
        font-family: Georgia, "Times New Roman", serif;
        font-size: 1.7rem;
        font-weight: 500;
    }

.close-editor[b-kmy2e5jf8q] {
    width: 38px;
    height: 38px;
    padding: 0;
    background: #f2ebe4;
    border: 0;
    border-radius: 50%;
    color: #75655b;
    font-size: 1.5rem;
    cursor: pointer;
}

.editor-grid[b-kmy2e5jf8q] {
    display: grid;
    grid-template-columns: 1.3fr 1.2fr 0.7fr 0.7fr 0.8fr 1fr;
    gap: 1rem;
    padding: 1.5rem 1.7rem;
}

.field[b-kmy2e5jf8q] {
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
}

    .field label[b-kmy2e5jf8q] {
        color: #62544c;
        font-size: 0.66rem;
        font-weight: 850;
    }

    .field input[b-kmy2e5jf8q],
    .field select[b-kmy2e5jf8q],
    .field textarea[b-kmy2e5jf8q] {
        width: 100%;
        box-sizing: border-box;
        min-height: 44px;
        padding: 0.7rem 0.8rem;
        background: #fbf8f4;
        border: 1px solid #d9cdc1;
        border-radius: 9px;
        color: #332a26;
        font: inherit;
        font-size: 0.78rem;
    }

    .field textarea[b-kmy2e5jf8q] {
        min-height: 80px;
        resize: vertical;
    }

.minutes-field[b-kmy2e5jf8q] {
    display: flex;
    align-items: center;
    overflow: hidden;
    background: #fbf8f4;
    border: 1px solid #d9cdc1;
    border-radius: 9px;
}

    .minutes-field input[b-kmy2e5jf8q] {
        border: 0;
        background: transparent;
    }

    .minutes-field span[b-kmy2e5jf8q] {
        padding-right: 0.8rem;
        color: #8d7d73;
        font-size: 0.65rem;
    }

.next-day-field[b-kmy2e5jf8q] {
    display: flex;
    align-items: center;
    gap: 0.7rem;
    min-height: 44px;
    padding-top: 1.3rem;
    color: #65574f;
    cursor: pointer;
}

    .next-day-field input[b-kmy2e5jf8q] {
        width: 18px;
        height: 18px;
    }

    .next-day-field span[b-kmy2e5jf8q] {
        display: flex;
        flex-direction: column;
    }

    .next-day-field strong[b-kmy2e5jf8q] {
        font-size: 0.72rem;
    }

    .next-day-field small[b-kmy2e5jf8q] {
        margin-top: 0.15rem;
        color: #96877e;
        font-size: 0.62rem;
    }

.notes-field[b-kmy2e5jf8q] {
    padding: 0 1.7rem 1.5rem;
}

.editor-footer[b-kmy2e5jf8q] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem 1.7rem;
    background: #f5eee6;
    border-top: 1px solid #e6dbd0;
}

.editor-duration[b-kmy2e5jf8q] {
    display: flex;
    flex-direction: column;
}

    .editor-duration span[b-kmy2e5jf8q] {
        color: #8d7d73;
        font-size: 0.58rem;
        font-weight: 900;
        text-transform: uppercase;
    }

    .editor-duration strong[b-kmy2e5jf8q] {
        color: #3b302b;
        font-size: 1rem;
    }

.editor-buttons[b-kmy2e5jf8q] {
    display: flex;
    gap: 0.6rem;
}

.rota-board[b-kmy2e5jf8q] {
    overflow: hidden;
    background: white;
    border: 1px solid #ded4ca;
    border-radius: 20px;
}

.rota-scroll[b-kmy2e5jf8q] {
    overflow-x: auto;
}

.rota-grid[b-kmy2e5jf8q] {
    display: grid;
    grid-template-columns: 210px repeat(7, minmax(165px, 1fr));
    min-width: 1365px;
}

.grid-corner[b-kmy2e5jf8q],
.day-heading[b-kmy2e5jf8q],
.staff-heading[b-kmy2e5jf8q],
.day-cell[b-kmy2e5jf8q] {
    border-right: 1px solid #e8dfd7;
    border-bottom: 1px solid #e8dfd7;
}

.grid-corner[b-kmy2e5jf8q] {
    display: flex;
    align-items: flex-end;
    padding: 1rem 1.2rem;
    background: #292321;
    color: #d6c8bf;
    font-size: 0.62rem;
    font-weight: 900;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.day-heading[b-kmy2e5jf8q] {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    min-height: 74px;
    background: #292321;
    color: white;
}

    .day-heading span[b-kmy2e5jf8q] {
        color: #c9bbb2;
        font-size: 0.6rem;
        font-weight: 900;
        letter-spacing: 0.12em;
        text-transform: uppercase;
    }

    .day-heading strong[b-kmy2e5jf8q] {
        margin-top: 0.1rem;
        font-family: Georgia, "Times New Roman", serif;
        font-size: 1.4rem;
        font-weight: 500;
    }

    .day-heading small[b-kmy2e5jf8q] {
        color: #b4a69d;
        font-size: 0.58rem;
    }

    .day-heading.today[b-kmy2e5jf8q] {
        background: #8f6743;
    }

.staff-heading[b-kmy2e5jf8q] {
    display: flex;
    align-items: center;
    gap: 0.7rem;
    min-height: 140px;
    padding: 1rem;
    background: #f7f1ea;
}

.staff-avatar[b-kmy2e5jf8q] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    flex: 0 0 38px;
    background: #292321;
    border-radius: 50%;
    color: white;
    font-family: Georgia, "Times New Roman", serif;
}

    .staff-avatar.open[b-kmy2e5jf8q] {
        background: #a97951;
    }

.staff-heading > div:last-child[b-kmy2e5jf8q] {
    display: flex;
    min-width: 0;
    flex-direction: column;
}

.staff-heading strong[b-kmy2e5jf8q] {
    overflow: hidden;
    color: #3a302b;
    font-size: 0.75rem;
    text-overflow: ellipsis;
}

.staff-heading span[b-kmy2e5jf8q] {
    margin-top: 0.2rem;
    color: #8c7c72;
    font-size: 0.64rem;
}

.open-heading[b-kmy2e5jf8q] {
    background: #efe3d7;
}

.day-cell[b-kmy2e5jf8q] {
    min-height: 140px;
    padding: 0.6rem;
    background: #fffdf9;
}

    .day-cell.today[b-kmy2e5jf8q] {
        background: #fffbf5;
    }

.open-cell[b-kmy2e5jf8q] {
    background: #faf5ef;
}

.shift-card[b-kmy2e5jf8q] {
    margin-bottom: 0.5rem;
    padding: 0.65rem;
    background: #f1e8df;
    border: 1px solid #e0d2c5;
    border-radius: 10px;
}

    .shift-card.open-shift[b-kmy2e5jf8q] {
        background: #fff3e7;
        border-style: dashed;
        border-color: #d6b28f;
    }

.shift-time[b-kmy2e5jf8q] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.4rem;
}

    .shift-time strong[b-kmy2e5jf8q] {
        color: #3f332d;
        font-size: 0.72rem;
    }

.next-day-badge[b-kmy2e5jf8q] {
    padding: 0.15rem 0.3rem;
    background: #292321;
    border-radius: 4px;
    color: white;
    font-size: 0.5rem;
    font-weight: 900;
}

.shift-position[b-kmy2e5jf8q] {
    display: block;
    margin-top: 0.3rem;
    color: #8f6743;
    font-size: 0.62rem;
    font-weight: 850;
}

.shift-details[b-kmy2e5jf8q] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    margin-top: 0.35rem;
    color: #887970;
    font-size: 0.57rem;
}

.shift-actions[b-kmy2e5jf8q] {
    display: flex;
    gap: 0.45rem;
    margin-top: 0.55rem;
    padding-top: 0.45rem;
    border-top: 1px solid rgba(100, 80, 65, 0.12);
}

    .shift-actions button[b-kmy2e5jf8q] {
        padding: 0;
        background: transparent;
        border: 0;
        color: #866247;
        font: inherit;
        font-size: 0.57rem;
        font-weight: 850;
        cursor: pointer;
    }

        .shift-actions button.delete[b-kmy2e5jf8q] {
            color: #9e554c;
        }

.add-shift-button[b-kmy2e5jf8q] {
    width: 100%;
    min-height: 30px;
    margin-top: 0.2rem;
    background: transparent;
    border: 1px dashed #d8c8b9;
    border-radius: 8px;
    color: #987455;
    font: inherit;
    font-size: 0.58rem;
    font-weight: 800;
    cursor: pointer;
}

    .add-shift-button:hover[b-kmy2e5jf8q] {
        background: #f6eee6;
    }

.rota-help[b-kmy2e5jf8q] {
    display: flex;
    align-items: center;
    gap: 0.8rem;
    margin-top: 1rem;
    padding: 1rem 1.2rem;
    background: #eee5da;
    border-radius: 12px;
}

    .rota-help strong[b-kmy2e5jf8q] {
        color: #4b3e37;
        font-size: 0.72rem;
    }

    .rota-help span[b-kmy2e5jf8q] {
        color: #817269;
        font-size: 0.68rem;
    }

.delete-shift-button[b-kmy2e5jf8q] {
    background: #fff1ef;
    border: 1px solid #ddb8b1;
    color: #94473d;
}

    .delete-shift-button:hover[b-kmy2e5jf8q] {
        background: #f8ddd8;
    }

@media (max-width: 1000px) {
    .editor-grid[b-kmy2e5jf8q] {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 800px) {
    .rota-header[b-kmy2e5jf8q] {
        align-items: stretch;
        flex-direction: column;
    }

    .publish-area[b-kmy2e5jf8q] {
        justify-content: flex-start;
    }

    .week-toolbar[b-kmy2e5jf8q] {
        grid-template-columns: 1fr;
    }

        .week-toolbar > .week-button[b-kmy2e5jf8q] {
            width: 100%;
        }

    .week-actions[b-kmy2e5jf8q] {
        display: grid;
        grid-template-columns: 1fr 1fr;
    }

    .rota-summary[b-kmy2e5jf8q] {
        grid-template-columns: repeat(2, 1fr);
    }

    .editor-grid[b-kmy2e5jf8q] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 600px) {
    .rota-page[b-kmy2e5jf8q] {
        padding: 2rem 1rem 5rem;
    }

    .rota-summary[b-kmy2e5jf8q] {
        grid-template-columns: 1fr 1fr;
    }

    .editor-grid[b-kmy2e5jf8q] {
        grid-template-columns: 1fr;
    }

    .next-day-field[b-kmy2e5jf8q] {
        padding-top: 0;
    }

    .editor-footer[b-kmy2e5jf8q] {
        align-items: stretch;
        flex-direction: column;
    }

    .editor-buttons[b-kmy2e5jf8q] {
        display: grid;
        grid-template-columns: 1fr 1fr;
    }

    .rota-help[b-kmy2e5jf8q] {
        align-items: flex-start;
        flex-direction: column;
    }
}
