/* /Components/Layout/MainLayout.razor.rz.scp.css */
/* CSS for MainLayout component */
.main-nav[b-q5utiy7ftj]  .nav-link {
    text-transform: uppercase;
    font-weight: 500;
    letter-spacing: 0.04em;
    text-decoration: none;
}

a.nav-link[b-q5utiy7ftj] {
    text-transform: uppercase !important;
}

main:focus[b-q5utiy7ftj] {
    outline: none;
}

.sign-in-attention-link[b-q5utiy7ftj] {
    display: inline-flex;
    align-items: center;
    transform-origin: center;
    animation: sign-in-attention-b-q5utiy7ftj 700ms ease-in-out 3;
}

.main-nav[b-q5utiy7ftj] {
    display: flex;
    align-items: center;
    gap: 1.4rem;
}

.nav-cart-link[b-q5utiy7ftj] {
    display: inline-flex;
    align-items: baseline;
    gap: 0;
}

.cart-link-text[b-q5utiy7ftj] {
    display: inline;
    text-transform: uppercase;
}

.cart-count-superscript[b-q5utiy7ftj] {
    display: inline-block;
    font-size: 0.65em;
    line-height: 1;
    vertical-align: super;
    margin-left: 0.15em;
    font-weight: 500;
    margin-left: -0.05em;
}

.menu-toggle[b-q5utiy7ftj] {
    display: none;
    align-items: center;
    justify-content: center;
    border: 0;
    background: transparent;
    color: #111;
    font-size: 1.25rem;
    padding: 6px;
}

.menu-toggle:hover[b-q5utiy7ftj],
.menu-toggle:focus[b-q5utiy7ftj],
.menu-toggle:active[b-q5utiy7ftj] {
    background: transparent;
    border: 0;
}

.account-toggle[b-q5utiy7ftj] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    border: 0;
    background: transparent;
    appearance: none;
    padding: 10px 6px;
}

.account-toggle:hover[b-q5utiy7ftj],
.account-toggle:focus[b-q5utiy7ftj],
.account-toggle:active[b-q5utiy7ftj] {
    background: transparent;
    border: 0;
}

.account-toggle-mark[b-q5utiy7ftj] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.5rem;
    height: 1.5rem;
    flex: 0 0 auto;
}

.account-toggle-icon[b-q5utiy7ftj] {
    font-size: 1.35rem;
    line-height: 1;
}

.account-dropdown-menu[b-q5utiy7ftj] {
    min-width: 14rem;
}

.account-identity[b-q5utiy7ftj] {
    max-width: 100%;
}

@keyframes sign-in-attention-b-q5utiy7ftj {
    0%,
    100% {
        color: inherit;
        transform: translateX(0) scale(1);
    }

    18% {
        color: var(--bs-success);
        transform: translateX(-2px) scale(1.04);
    }

    36% {
        color: var(--bs-success);
        transform: translateX(2px) scale(1.06);
    }

    54% {
        color: var(--bs-success);
        transform: translateX(-2px) scale(1.05);
    }

    72% {
        color: var(--bs-success);
        transform: translateX(1px) scale(1.02);
    }
}

@media (prefers-reduced-motion: reduce) {
    .sign-in-attention-link[b-q5utiy7ftj] {
        animation: none;
    }
}

@media (max-width: 767.98px) {
    .topbar[b-q5utiy7ftj] {
        height: auto;
        min-height: 68px;
        align-items: center;
        flex-wrap: wrap;
        gap: 0.5rem;
        padding-top: 0.75rem;
        padding-bottom: 0.75rem;
    }

    .menu-toggle[b-q5utiy7ftj] {
        display: inline-flex;
    }

    .topbar-nav[b-q5utiy7ftj] {
        width: 100%;
        display: none;
    }

    .topbar-nav.is-open[b-q5utiy7ftj] {
        display: block;
    }

    .main-nav[b-q5utiy7ftj] {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.75rem;
        padding-top: 0.5rem;
    }
}
/* /Components/Pages/About.razor.rz.scp.css */
.about-page[b-npf9krfxia] {
    width: min(100%, 84rem);
    margin: 0 auto 4rem;
    padding: clamp(1.5rem, 4vw, 3rem) clamp(1rem, 3.5vw, 2.75rem) 0;
}

.about-content[b-npf9krfxia] {
    width: min(100%, 56rem);
    margin: 0 auto;
}

.about-header[b-npf9krfxia] {
    margin-bottom: clamp(1.5rem, 3vw, 2rem);
}

.about-header h1[b-npf9krfxia] {
    margin: 0;
    font-size: clamp(2rem, 4vw, 3.1rem);
    font-weight: 500;
    line-height: 1.08;
    letter-spacing: -0.03em;
}

.about-copy[b-npf9krfxia] {
    display: flow-root;
}

.about-copy p[b-npf9krfxia] {
    margin: 0 0 1.25rem;
    color: #2f2f2f;
    font-size: 1.02rem;
    line-height: 1.82;
}

.about-copy p:last-child[b-npf9krfxia] {
    margin-bottom: 0;
}

.about-feature-artwork[b-npf9krfxia] {
    float: right;
    width: clamp(18rem, 42%, 24rem);
    margin: 0.35rem 0 1rem clamp(1.25rem, 3vw, 2rem);
}

.about-feature-artwork-button[b-npf9krfxia] {
    display: block;
    width: 100%;
    border: 0;
    background: transparent;
    padding: 0;
    color: inherit;
    text-align: left;
}

.about-feature-artwork-button:focus-visible[b-npf9krfxia] {
    outline: none;
}

.about-feature-artwork-image[b-npf9krfxia] {
    display: block;
    width: 100%;
    height: auto;
}

.about-feature-artwork-button:focus-visible .about-feature-artwork-image[b-npf9krfxia] {
    box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.12);
}

.about-feature-artwork-caption[b-npf9krfxia] {
    margin-top: 0.55rem;
    color: #666;
    font-size: 0.88rem;
    line-height: 1.45;
}

@media (max-width: 640px) {
    .about-page[b-npf9krfxia] {
        margin-bottom: 3.5rem;
        padding-left: 0.9rem;
        padding-right: 0.9rem;
    }

    .about-feature-artwork[b-npf9krfxia] {
        float: none;
        width: 100%;
        margin: 0.35rem 0 1.2rem;
    }

    .about-copy p[b-npf9krfxia] {
        font-size: 1rem;
        line-height: 1.75;
    }
}
/* /Components/Pages/Admin/Artwork/ArtworkEditor.razor.rz.scp.css */
.artwork-editor-page[b-iaejq6pxzr] {
    max-width: 1400px;
}

.artwork-editor-header[b-iaejq6pxzr] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    flex-wrap: wrap;
}

.artwork-editor-layout[b-iaejq6pxzr] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.artwork-editor-card[b-iaejq6pxzr] {
    border: 1px solid #e3e3e3;
    border-radius: 0.5rem;
    box-shadow: 0 0.125rem 0.375rem rgba(0, 0, 0, 0.06);
}

.artwork-editor-form-container[b-iaejq6pxzr] {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    gap: 1rem;
}

.artwork-editor-form-grid[b-iaejq6pxzr] {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
}

.artwork-editor-ai-message[b-iaejq6pxzr] {
    margin-bottom: 1rem;
}

.artwork-editor-categories[b-iaejq6pxzr] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.artwork-filter-group[b-iaejq6pxzr] {
    margin-bottom: 1.25rem;
}

.artwork-filter-label[b-iaejq6pxzr] {
    font-weight: 600;
    margin-bottom: 0.65rem;
}

.artwork-chip-row[b-iaejq6pxzr] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.6rem;
}

.artwork-chip[b-iaejq6pxzr] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #cfd4da;
    background: #fff;
    color: #343a40;
    border-radius: 999px;
    padding: 0.4rem 0.85rem;
    font-size: 0.9rem;
    line-height: 1.2;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.artwork-chip:hover[b-iaejq6pxzr] {
    background: #f3f4f5;
    border-color: #adb5bd;
}

.artwork-chip.selected[b-iaejq6pxzr] {
    background: #212529;
    border-color: #212529;
    color: #fff;
}

.artwork-chip.selected:hover[b-iaejq6pxzr] {
    background: #343a40;
    border-color: #343a40;
}

.artwork-chip:focus-visible[b-iaejq6pxzr] {
    outline: 2px solid currentColor;
    outline-offset: 2px;
}

.artwork-editor-form-grid > div[b-iaejq6pxzr] {
    flex: 1 1 280px;
    min-width: 240px;
}

.artwork-editor-form-span-2[b-iaejq6pxzr] {
    flex-basis: 100%;
}

.artwork-editor-form-row[b-iaejq6pxzr] {
    display: flex;
    flex: 1 1 100%;
    flex-wrap: wrap;
    gap: 1rem;
    width: 100%;
}

.artwork-editor-metadata-layout[b-iaejq6pxzr] {
    align-items: flex-start;
}

.artwork-editor-text-column[b-iaejq6pxzr],
.artwork-editor-ai-column[b-iaejq6pxzr] {
    display: flex;
    flex-direction: column;
}

.artwork-editor-text-stack[b-iaejq6pxzr] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.artwork-editor-ai-panel[b-iaejq6pxzr] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.artwork-editor-ai-tools[b-iaejq6pxzr] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.artwork-editor-ai-heading[b-iaejq6pxzr] {
    font-size: 0.95rem;
    font-weight: 600;
}

.artwork-editor-ai-field-group[b-iaejq6pxzr] {
    display: flex;
    flex-direction: column;
    gap: 0.45rem;
}

.artwork-editor-ai-chip-row[b-iaejq6pxzr] {
    gap: 0.5rem;
}

.artwork-editor-form-row-description[b-iaejq6pxzr] {
    align-items: flex-start;
}

.artwork-editor-sku-sort-row[b-iaejq6pxzr] {
    display: flex;
    align-items: flex-start;
    gap: 20px;
}

    .artwork-editor-sku-sort-row div[b-iaejq6pxzr] {
        flex: 1 1 0;
        min-width: 0;
    }

.artwork-editor-toggles[b-iaejq6pxzr] {
    display: flex;
    gap: 1rem;
    flex-wrap: wrap;
}

.artwork-editor-primary-asset[b-iaejq6pxzr] {
    margin-bottom: 0;
}

.artwork-asset-list[b-iaejq6pxzr] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.artwork-asset-card[b-iaejq6pxzr] {
    border: 1px solid #e9ecef;
    border-radius: 0.4rem;
    padding: 1rem;
    background-color: #fff;
}

.artwork-asset-card-primary[b-iaejq6pxzr] {
    margin-bottom: 0;
}

.artwork-primary-asset-layout[b-iaejq6pxzr] {
    display: flex;
    align-items: flex-start;
    gap: 1.25rem;
    flex-wrap: wrap;
}

.artwork-primary-preview-column[b-iaejq6pxzr] {
    flex: 0 0 auto;
}

.artwork-primary-upload-column[b-iaejq6pxzr] {
    flex: 0 1 360px;
    min-width: 280px;
}

.artwork-primary-upload-stack[b-iaejq6pxzr] {
    display: flex;
    flex-direction: column;
    gap: 0.85rem;
    max-width: 360px;
}

.artwork-primary-drop-zone[b-iaejq6pxzr] {
    max-width: 360px;
}

.artwork-primary-status-column[b-iaejq6pxzr] {
    flex: 1 1 180px;
    min-width: 160px;
    margin-left: auto;
}

.artwork-primary-status-stack[b-iaejq6pxzr] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 0.65rem;
}

.artwork-primary-state-label[b-iaejq6pxzr] {
    text-align: right;
}

.artwork-primary-ai-button[b-iaejq6pxzr] {
    white-space: nowrap;
}

.artwork-asset-card-header[b-iaejq6pxzr] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 0.75rem;
    margin-bottom: 0.85rem;
}

.artwork-asset-preview-row[b-iaejq6pxzr] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    margin-bottom: 0.85rem;
}

.artwork-asset-preview[b-iaejq6pxzr] {
    width: 120px;
    height: 120px;
    object-fit: cover;
    border: 1px solid #ddd;
    border-radius: 0.35rem;
    background-color: #f8f9fa;
}

.artwork-asset-preview-placeholder[b-iaejq6pxzr] {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.6rem;
}

.artwork-asset-meta[b-iaejq6pxzr] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    min-width: 0;
}

.artwork-cache-management[b-iaejq6pxzr] {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    margin-top: 0.35rem;
}

.artwork-cache-button[b-iaejq6pxzr] {
    align-self: flex-start;
}

.artwork-asset-fields[b-iaejq6pxzr] {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
}

.artwork-asset-fields > div[b-iaejq6pxzr] {
    flex: 1 1 280px;
    min-width: 240px;
}

.drop-zone[b-iaejq6pxzr] {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 58px;
    width: 100%;
    padding: 0.5rem 0.75rem;
    border: 1px dashed #adb5bd;
    border-radius: 0.4rem;
    background-color: #f8f9fa;
    color: #495057;
    text-align: center;
    cursor: pointer;
    transition: border-color 0.15s ease, background-color 0.15s ease;
}

.drop-zone:hover[b-iaejq6pxzr],
.drop-zone:focus-within[b-iaejq6pxzr],
.drop-zone.drag-over[b-iaejq6pxzr] {
    border-color: #495057;
    background-color: #f1f3f5;
}

.drop-zone.ready[b-iaejq6pxzr] {
    border-color: #198754;
    background-color: #e9f7ee;
}

.drop-zone[b-iaejq6pxzr]  .drop-zone-input {
    position: absolute;
    inset: 0;
    opacity: 0;
    width: 100%;
    height: 100%;
    cursor: pointer;
    z-index: 1;
    color: transparent;
    font-size: 0;
    line-height: 0;
    border: 0;
    background: transparent;
}

.drop-zone[b-iaejq6pxzr]  .drop-zone-input::file-selector-button,
.drop-zone[b-iaejq6pxzr]  .drop-zone-input::-webkit-file-upload-button {
    display: none;
}

.drop-zone-label[b-iaejq6pxzr] {
    position: relative;
    z-index: 2;
    font-size: 0.88rem;
}

.choose-file-link[b-iaejq6pxzr] {
    color: #0d6efd;
    text-decoration: underline;
    background: none;
    border: 0;
    padding: 0;
    margin: 0;
    font: inherit;
}

.artwork-asset-actions[b-iaejq6pxzr] {
    margin-top: 0.85rem;
}

.artwork-primary-actions[b-iaejq6pxzr] {
    margin-top: 0;
}

.artwork-editor-actions[b-iaejq6pxzr] {
    display: flex;
    justify-content: flex-end;
    gap: 0.75rem;
    flex-wrap: wrap;
}

@media (max-width: 767.98px) {
    .artwork-editor-metadata-layout[b-iaejq6pxzr] {
        row-gap: 1rem;
    }

    .artwork-asset-preview-row[b-iaejq6pxzr] {
        flex-direction: column;
    }

    .artwork-primary-upload-column[b-iaejq6pxzr],
    .artwork-primary-status-column[b-iaejq6pxzr] {
        flex-basis: 100%;
        min-width: 0;
    }

    .artwork-primary-upload-stack[b-iaejq6pxzr],
    .artwork-primary-drop-zone[b-iaejq6pxzr] {
        max-width: none;
    }

    .artwork-primary-status-column[b-iaejq6pxzr] {
        margin-left: 0;
    }

    .artwork-primary-status-stack[b-iaejq6pxzr] {
        align-items: flex-start;
    }

    .artwork-primary-state-label[b-iaejq6pxzr] {
        text-align: left;
    }

    .artwork-primary-ai-button[b-iaejq6pxzr] {
        align-self: flex-start;
    }
}
/* /Components/Pages/Admin/Artwork/ArtworkList.razor.rz.scp.css */
.artwork-admin-page[b-g3d8onpvnz] {
    max-width: 1400px;
}

.artwork-admin-header[b-g3d8onpvnz] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    flex-wrap: wrap;
}

.artwork-admin-toolbar[b-g3d8onpvnz] {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    align-items: flex-end;
}

.artwork-admin-filter-row[b-g3d8onpvnz] {
    display: flex;
    gap: 0.75rem;
    flex-wrap: wrap;
}

.artwork-admin-filter-group[b-g3d8onpvnz] {
    flex: 0 0 220px;
}

.artwork-admin-search-block[b-g3d8onpvnz] {
    flex: 1 1 360px;
    min-width: 280px;
    margin-left: auto;
}

.artwork-admin-search[b-g3d8onpvnz] {
    max-width: 560px;
    margin-left: auto;
}

.artwork-admin-results-header[b-g3d8onpvnz] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem 1rem;
    flex-wrap: wrap;
}

.artwork-admin-pagination[b-g3d8onpvnz] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}


.artwork-admin-grid[b-g3d8onpvnz] {
    align-items: stretch;
}

.artwork-admin-card[b-g3d8onpvnz] {
    min-width: 0;
    padding: 0;
    background: #fff;
    border: 1px solid #e3e3e3;
    border-radius: 0.5rem;
    box-shadow: 0 0.125rem 0.375rem rgba(0, 0, 0, 0.06);
}

.artwork-admin-card-body[b-g3d8onpvnz] {
    display: flex;
    gap: 0.9rem;
    align-items: flex-start;
    height: 100%;
    padding: 0.9rem;
}

.artwork-admin-image-column[b-g3d8onpvnz] {
    flex: 0 0 92px;
    width: 92px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.5rem;
}

.artwork-admin-image[b-g3d8onpvnz] {
    display: block;
    width: 92px;
    height: 92px;
    object-fit: cover;
    border: 1px solid #ddd;
    border-radius: 0.35rem;
    background-color: #f8f9fa;
}

.artwork-admin-image-placeholder[b-g3d8onpvnz] {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.6rem;
}

.artwork-admin-main[b-g3d8onpvnz] {
    flex: 1 1 auto;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 0.65rem;
}

.artwork-admin-title-block[b-g3d8onpvnz] {
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
    min-width: 0;
}

.artwork-admin-title[b-g3d8onpvnz] {
    line-height: 1.2;
    overflow-wrap: anywhere;
}

.artwork-admin-slug[b-g3d8onpvnz],
.artwork-admin-sku[b-g3d8onpvnz],
.artwork-admin-location[b-g3d8onpvnz] {
    line-height: 1.3;
    overflow-wrap: anywhere;
}

.artwork-admin-status-badge[b-g3d8onpvnz] {
    display: inline-flex;
    align-self: flex-start;
    white-space: nowrap;
}

.artwork-admin-assets[b-g3d8onpvnz] {
    display: flex;
    gap: 0.35rem 0.45rem;
    flex-wrap: wrap;
}

.artwork-admin-assets .badge[b-g3d8onpvnz] {
    padding: 0.42em 0.6em;
    font-weight: 600;
}

.artwork-admin-meta[b-g3d8onpvnz] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.artwork-admin-description[b-g3d8onpvnz] {
    line-height: 1.35;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
}

.artwork-admin-actions[b-g3d8onpvnz] {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
    margin-top: auto;
}

.artwork-admin-empty[b-g3d8onpvnz] {
    padding: 0.35rem 0;
}

@media (max-width: 1199.98px) {
    .artwork-admin-card-body[b-g3d8onpvnz] {
        padding: 0.85rem;
    }
}

@media (max-width: 575.98px) {
    .artwork-admin-card-body[b-g3d8onpvnz] {
        flex-direction: column;
        gap: 0.75rem;
    }

    .artwork-admin-image-column[b-g3d8onpvnz] {
        width: 100%;
        flex-basis: auto;
    }

    .artwork-admin-search-block[b-g3d8onpvnz] {
        margin-left: 0;
    }

    .artwork-admin-search[b-g3d8onpvnz] {
        margin-left: 0;
    }

    .artwork-admin-description[b-g3d8onpvnz] {
        -webkit-line-clamp: 3;
    }
}
/* /Components/Pages/Admin/ImageCache/ImageCache.razor.rz.scp.css */
.image-cache-page[b-u61jzg235o] {
    display: flex;
    flex-direction: column;
}

.image-cache-header[b-u61jzg235o] {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
}

.image-cache-grid[b-u61jzg235o] {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    align-items: stretch;
}

.image-cache-card[b-u61jzg235o] {
    flex: 1 1 320px;
    min-width: min(100%, 320px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
}

.image-cache-details[b-u61jzg235o] {
    display: flex;
    flex-direction: column;
    gap: 0.9rem;
}

.image-cache-details div[b-u61jzg235o] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.image-cache-details dt[b-u61jzg235o] {
    color: #6c757d;
    font-size: 0.8rem;
    font-weight: 600;
    letter-spacing: 0.03em;
    line-height: 1.2;
    text-transform: uppercase;
}

.image-cache-details dd[b-u61jzg235o] {
    margin-bottom: 0;
    overflow-wrap: anywhere;
}

.image-cache-form-row[b-u61jzg235o] {
    display: flex;
    flex-direction: column;
}

.image-cache-result-panel[b-u61jzg235o] {
    padding: 0.875rem 1rem;
    border: 1px solid rgba(0, 0, 0, 0.08);
    border-radius: 0.5rem;
    background: rgba(248, 249, 250, 0.8);
}

.image-cache-error-list[b-u61jzg235o] {
    padding-left: 1.25rem;
}
/* /Components/Pages/Admin/Index.razor.rz.scp.css */
.admin-grid[b-sajbfkywqc] {
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
    align-items: stretch;
}

.admin-card[b-sajbfkywqc] {
    display: flex;
    flex: 0 0 320px;
    min-height: 360px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    transition: box-shadow 0.2s ease;
    transform-origin: center center;
}

.admin-card:hover[b-sajbfkywqc] {
    animation: admin-card-wiggle-b-sajbfkywqc 0.35s ease-in-out;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.2);
}

.admin-modes-status[b-sajbfkywqc] {
    font-size: 0.95rem;
}

.admin-modes-alert[b-sajbfkywqc] {
    margin-bottom: 0.75rem;
    padding: 0.5rem 0.75rem;
}

.admin-mode-list[b-sajbfkywqc] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.admin-mode-row[b-sajbfkywqc] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
}

.admin-mode-content[b-sajbfkywqc] {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
}

.admin-mode-title[b-sajbfkywqc] {
    font-weight: 600;
}

.admin-mode-description[b-sajbfkywqc] {
    margin-top: 0.25rem;
}

.admin-mode-toggle[b-sajbfkywqc] {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    min-height: 1.5rem;
}

@keyframes admin-card-wiggle-b-sajbfkywqc {
    0% {
        transform: rotate(0deg);
    }

    25% {
        transform: rotate(1.5deg);
    }

    50% {
        transform: rotate(-1.5deg);
    }

    75% {
        transform: rotate(0.75deg);
    }

    100% {
        transform: rotate(0deg);
    }
}
/* /Components/Pages/Admin/News/News.razor.rz.scp.css */
.admin-news-page[b-ss53ix6b85] {
    --admin-news-card-min-width: 440px;
    --admin-news-card-height: 18rem;
}

.admin-news-header[b-ss53ix6b85] {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
}

.admin-news-header-actions[b-ss53ix6b85] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    justify-content: flex-end;
}

.admin-news-manual-entry[b-ss53ix6b85] {
    border: 1px solid var(--bs-border-color);
}

.admin-news-manual-entry .card-body[b-ss53ix6b85] {
    display: flex;
    flex-direction: column;
    gap: 0.875rem;
}

.admin-news-manual-entry-header[b-ss53ix6b85] {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.75rem;
}

.admin-news-manual-entry-form[b-ss53ix6b85] {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 0.75rem;
}

.admin-news-manual-entry-form .form-control[b-ss53ix6b85] {
    flex: 1 1 24rem;
    min-width: min(100%, 18rem);
}

.admin-news-manual-entry-form .btn[b-ss53ix6b85] {
    flex: 0 0 auto;
}

.admin-news-manual-entry-message[b-ss53ix6b85] {
    margin-bottom: 0;
}

.admin-news-details-modal-dialog[b-ss53ix6b85] {
    max-width: min(100% - 2rem, 56rem);
}

.admin-news-details-modal-body[b-ss53ix6b85] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    padding-bottom: 0.5rem;
}

.admin-news-modal-header-block[b-ss53ix6b85] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.admin-news-details-panel[b-ss53ix6b85] {
    max-height: min(55vh, 28rem);
}

.admin-news-details-panel > *[b-ss53ix6b85] {
    max-height: min(55vh, 28rem);
}

.admin-news-section-header[b-ss53ix6b85] {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
}

.admin-news-toolbar[b-ss53ix6b85] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.admin-news-search[b-ss53ix6b85] {
    flex: 1 1 320px;
    max-width: 420px;
}

.admin-news-section[b-ss53ix6b85] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.admin-news-list[b-ss53ix6b85] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.admin-news-card-grid[b-ss53ix6b85] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, var(--admin-news-card-min-width)), 1fr));
    gap: 1rem;
    align-items: stretch;
}

.admin-news-card[b-ss53ix6b85] {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
    height: var(--admin-news-card-height);
    min-height: var(--admin-news-card-height);
    min-width: 0;
    overflow: hidden;
}

.admin-news-card-body[b-ss53ix6b85] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    height: 100%;
    min-height: 0;
    min-width: 0;
    overflow: hidden;
}

.admin-news-card-compact .card-body[b-ss53ix6b85] {
    padding: 1rem;
}

.admin-news-card-compact[b-ss53ix6b85] {
    height: 100%;
}

.admin-news-card-header[b-ss53ix6b85] {
    flex: 0 0 auto;
    min-width: 0;
}

.admin-news-card-title[b-ss53ix6b85] {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    line-clamp: 3;
    overflow: hidden;
    overflow-wrap: anywhere;
}

.admin-news-card-meta[b-ss53ix6b85] {
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
    flex: 0 0 auto;
    min-width: 0;
}

.admin-news-card-source-row[b-ss53ix6b85] {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.5rem 1rem;
    min-width: 0;
}

.admin-news-card-source[b-ss53ix6b85] {
    flex: 1 1 14rem;
    min-width: 0;
    overflow-wrap: anywhere;
}

.admin-news-badges[b-ss53ix6b85] {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 0.5rem;
    flex: 0 1 auto;
    min-width: 0;
}

.admin-news-meta-row[b-ss53ix6b85] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.5rem 1rem;
    min-width: 0;
}

.admin-news-meta-item[b-ss53ix6b85],
.admin-news-score-item[b-ss53ix6b85] {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
    min-width: 0;
}

.admin-news-meta-label[b-ss53ix6b85] {
    color: #6c757d;
    font-size: 0.72rem;
    font-weight: 600;
    letter-spacing: 0.03em;
    line-height: 1.2;
    text-transform: uppercase;
}

.admin-news-meta-value[b-ss53ix6b85] {
    min-width: 0;
    line-height: 1.35;
    overflow-wrap: anywhere;
}

.admin-news-score-row[b-ss53ix6b85] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    min-width: 0;
}

.admin-news-card-content[b-ss53ix6b85] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    flex: 1 1 auto;
    min-height: 0;
    min-width: 0;
    overflow: hidden;
}

.admin-news-label[b-ss53ix6b85] {
    color: #6c757d;
    font-size: 0.8rem;
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: 0.03em;
    text-transform: uppercase;
    flex: 0 0 auto;
}

.admin-news-tab-list[b-ss53ix6b85] {
    display: flex;
    align-items: stretch;
    flex-wrap: nowrap;
    gap: 0;
    margin-bottom: 0;
    padding-left: 0;
    min-width: 0;
    overflow: hidden;
    flex: 0 0 auto;
}

.admin-news-tab[b-ss53ix6b85] {
    white-space: normal;
    font-size: 0.875rem;
    padding: 0.45rem 0.7rem;
    min-width: 0;
}

.admin-news-tab-list .nav-item[b-ss53ix6b85] {
    margin-bottom: -1px;
    flex: 1 1 0;
    min-width: 0;
}

.admin-news-tab-list .nav-link[b-ss53ix6b85] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-width: 0;
    color: var(--bs-nav-link-color);
    background-color: transparent;
    border: var(--bs-nav-tabs-border-width) solid transparent;
    border-top-left-radius: var(--bs-nav-tabs-border-radius);
    border-top-right-radius: var(--bs-nav-tabs-border-radius);
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
}

.admin-news-tab-list .nav-link:hover[b-ss53ix6b85],
.admin-news-tab-list .nav-link:focus[b-ss53ix6b85] {
    color: var(--bs-nav-link-hover-color);
    border-color: var(--bs-nav-tabs-link-hover-border-color);
    background-color: transparent;
}

.admin-news-tab-list .nav-link.active[b-ss53ix6b85] {
    color: var(--bs-nav-tabs-link-active-color);
    background-color: var(--bs-body-bg);
    border-color: var(--bs-nav-tabs-link-active-border-color);
    border-bottom-color: transparent;
}

.admin-news-content-panel[b-ss53ix6b85] {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    min-height: 0;
    min-width: 0;
    overflow: hidden;
    max-height: 265px;
}

.admin-news-content-panel > *[b-ss53ix6b85] {
    min-height: 0;
    min-width: 0;
    overflow-wrap: anywhere;
    max-height: 265px;
}

.admin-news-content-scroll[b-ss53ix6b85] {
    flex: 1 1 auto;
    min-height: 0;
    min-width: 0;
    overflow-x: hidden;
    overflow-y: auto;
    padding-right: 0.25rem;
}

.admin-news-content-scroll > *[b-ss53ix6b85] {
    min-width: 0;
    overflow-wrap: anywhere;
}

.admin-news-tab-panel[b-ss53ix6b85] {
    display: flex;
    flex-direction: column;
    min-height: 0;
    border: 1px solid var(--bs-border-color);
    border-top: 0;
    border-bottom-left-radius: var(--bs-border-radius);
    border-bottom-right-radius: var(--bs-border-radius);
    padding: 0.75rem;
}

.admin-news-actions[b-ss53ix6b85] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    min-width: 0;
}

.admin-news-card-actions[b-ss53ix6b85] {
    flex: 0 0 auto;
    margin-top: auto;
    padding-top: 0.75rem;
}

.admin-news-card-actions .btn[b-ss53ix6b85] {
    min-width: 0;
    white-space: nowrap;
}

.admin-news-empty[b-ss53ix6b85] {
    padding: 1rem 0;
}

.admin-news-run-details[b-ss53ix6b85] {
    border-top: 1px solid rgba(0, 0, 0, 0.1);
    padding-top: 0.75rem;
}

.admin-news-run-details summary[b-ss53ix6b85] {
    cursor: pointer;
    font-weight: 600;
}

.admin-news-run-list[b-ss53ix6b85] {
    padding-left: 1.25rem;
}

.admin-news-run-list li + li[b-ss53ix6b85] {
    margin-top: 0.35rem;
}

.admin-news-web-search-card[b-ss53ix6b85] {
    border: 1px solid rgba(0, 0, 0, 0.08);
    border-radius: 0.5rem;
    padding: 0.75rem;
}

.admin-news-web-search-card + .admin-news-web-search-card[b-ss53ix6b85] {
    margin-top: 0.75rem;
}

.admin-news-web-search-subsection[b-ss53ix6b85] {
    border-top: 1px solid rgba(0, 0, 0, 0.08);
    padding-top: 0.75rem;
}

@media (max-width: 575.98px) {
    .admin-news-card-grid[b-ss53ix6b85] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767.98px) {
    .admin-news-meta-row[b-ss53ix6b85] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Pages/Admin/Orders/OrderDetails.razor.rz.scp.css */
.admin-order-details-header[b-pwb5t3dluk] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1rem;
    flex-wrap: wrap;
}

.admin-order-details-badges[b-pwb5t3dluk] {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.admin-order-details-layout[b-pwb5t3dluk] {
    display: flex;
    gap: 1.5rem;
    align-items: flex-start;
}

.admin-order-details-main[b-pwb5t3dluk] {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    min-width: 0;
}

.admin-order-totals-panel[b-pwb5t3dluk] {
    width: 20rem;
    flex: 0 0 20rem;
}

.admin-order-section[b-pwb5t3dluk] {
    border-radius: 0.75rem;
}

.admin-order-section-header[b-pwb5t3dluk] {
    margin-bottom: 1rem;
}

.admin-order-details-grid[b-pwb5t3dluk] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.admin-order-details-grid-span-2[b-pwb5t3dluk] {
    grid-column: span 2;
}

.admin-order-label[b-pwb5t3dluk],
.admin-order-label-inline[b-pwb5t3dluk] {
    font-weight: 600;
    color: #6c757d;
}

.admin-order-label[b-pwb5t3dluk] {
    display: block;
    margin-bottom: 0.25rem;
    font-size: 0.875rem;
}

.admin-order-value[b-pwb5t3dluk] {
    display: block;
}

.admin-order-break-value[b-pwb5t3dluk],
.admin-order-value[b-pwb5t3dluk],
.admin-order-item-options[b-pwb5t3dluk],
.admin-order-item-meta[b-pwb5t3dluk] {
    overflow-wrap: anywhere;
}

.admin-order-status-form[b-pwb5t3dluk] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.admin-order-panel-actions[b-pwb5t3dluk] {
    display: flex;
    justify-content: flex-end;
    gap: 0.75rem;
    flex-wrap: wrap;
    margin-top: 1.25rem;
}

.admin-order-address[b-pwb5t3dluk] {
    font-style: normal;
    line-height: 1.6;
}

.admin-order-items-list[b-pwb5t3dluk] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.admin-order-item-card[b-pwb5t3dluk] {
    border: 1px solid #dee2e6;
    border-radius: 0.75rem;
    padding: 1rem;
    background-color: #fff;
}

.admin-order-item-header[b-pwb5t3dluk] {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    align-items: flex-start;
}

.admin-order-item-meta[b-pwb5t3dluk] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem 1.5rem;
    margin-top: 0.75rem;
}

.admin-order-item-options-block[b-pwb5t3dluk] {
    margin-top: 0.75rem;
}

.admin-order-item-options[b-pwb5t3dluk] {
    padding-left: 1.25rem;
}

.admin-order-total-row[b-pwb5t3dluk] {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    padding: 0.375rem 0;
}

.admin-order-total-row-strong[b-pwb5t3dluk] {
    font-weight: 700;
    border-top: 1px solid #dee2e6;
    margin-top: 0.5rem;
    padding-top: 0.75rem;
}

.admin-order-history-notes[b-pwb5t3dluk],
.payment-id-value[b-pwb5t3dluk] {
    overflow-wrap: anywhere;
}

@media (max-width: 1199.98px) {
    .admin-order-details-layout[b-pwb5t3dluk] {
        flex-direction: column;
    }

    .admin-order-totals-panel[b-pwb5t3dluk] {
        width: 100%;
        flex: 1 1 auto;
    }
}

@media (max-width: 767.98px) {
    .admin-order-details-grid[b-pwb5t3dluk] {
        grid-template-columns: 1fr;
    }

    .admin-order-details-grid-span-2[b-pwb5t3dluk] {
        grid-column: auto;
    }

    .admin-order-item-header[b-pwb5t3dluk] {
        flex-direction: column;
    }
}
/* /Components/Pages/Admin/Orders/Orders.razor.rz.scp.css */
.admin-orders-header[b-eou1svx6yo] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1rem;
}

.admin-orders-toolbar[b-eou1svx6yo] {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    justify-content: space-between;
    align-items: end;
}

.admin-orders-filter-row[b-eou1svx6yo] {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
}

.admin-orders-filter-group[b-eou1svx6yo] {
    min-width: 12rem;
}

.admin-orders-search-block[b-eou1svx6yo] {
    min-width: min(100%, 28rem);
}

.admin-orders-results-header[b-eou1svx6yo] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    flex-wrap: wrap;
}

.admin-orders-pagination[b-eou1svx6yo] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.admin-orders-table-wrap[b-eou1svx6yo] {
    border: 1px solid #dee2e6;
    border-radius: 0.75rem;
    background-color: #fff;
}

.admin-orders-table[b-eou1svx6yo] {
    margin-bottom: 0;
}

.admin-orders-table th[b-eou1svx6yo],
.admin-orders-table td[b-eou1svx6yo] {
    vertical-align: middle;
    white-space: nowrap;
}

.admin-orders-table td:nth-child(3)[b-eou1svx6yo],
.admin-orders-table td:nth-child(4)[b-eou1svx6yo] {
    white-space: normal;
}

.admin-orders-wrap[b-eou1svx6yo] {
    overflow-wrap: anywhere;
    white-space: normal;
}

@media (max-width: 991.98px) {
    .admin-orders-search-block[b-eou1svx6yo],
    .admin-orders-filter-group[b-eou1svx6yo] {
        width: 100%;
        min-width: 0;
    }
}
/* /Components/Pages/Admin/WallPreviewUpload/WallPreviewUpload.razor.rz.scp.css */
.wall-preview-upload-page[b-x690ed4rz4] {
    max-width: 1400px;
}

.wall-upload-toolbar[b-x690ed4rz4] {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    gap: 1rem;
}

.wall-upload-filter-row[b-x690ed4rz4] {
    display: flex;
    flex-wrap: nowrap;
    gap: 0.75rem;
    flex: 0 0 auto;
    min-width: 0;
}

.wall-upload-filter-group[b-x690ed4rz4] {
    flex: 0 0 220px;
    min-width: 200px;
}

.wall-upload-search-block[b-x690ed4rz4] {
    flex: 1 1 380px;
    min-width: 320px;
    margin-left: auto;
}

.wall-upload-search[b-x690ed4rz4] {
    width: 100%;
    max-width: 560px;
    margin-left: auto;
}

.wall-upload-queue-header[b-x690ed4rz4] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem 1rem;
}

.wall-upload-pagination[b-x690ed4rz4] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.wall-upload-empty[b-x690ed4rz4] {
    padding: 0.35rem 0;
}

.wall-preview-list[b-x690ed4rz4] {
    display: flex;
    flex-direction: column;
    gap: 0.9rem;
}

.wall-upload-card[b-x690ed4rz4] {
    border: 1px solid #e3e3e3;
    border-radius: 0.5rem;
    box-shadow: 0 0.125rem 0.375rem rgba(0, 0, 0, 0.06);
    background-color: #fff;
}

.wall-upload-card-body[b-x690ed4rz4] {
    padding: 1rem;
}

.wall-upload-row-layout[b-x690ed4rz4] {
    display: flex;
    gap: 1rem;
    align-items: flex-start;
}

.artwork-row-main[b-x690ed4rz4] {
    flex: 1 1 auto;
    min-width: 0;
}

.artwork-row-header[b-x690ed4rz4] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 0.75rem;
    margin-bottom: 0.85rem;
}

.row-status-badge[b-x690ed4rz4] {
    white-space: nowrap;
}

.source-image-column[b-x690ed4rz4] {
    width: 132px;
    min-width: 132px;
}

.source-image[b-x690ed4rz4] {
    width: 120px;
    height: 120px;
    object-fit: cover;
    border: 1px solid #ddd;
    border-radius: 0.35rem;
    background-color: #f8f9fa;
}

.source-image-placeholder[b-x690ed4rz4] {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.6rem;
}

.wall-preview-upload-row[b-x690ed4rz4] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 0.75rem;
    border: 1px solid #e9ecef;
    border-radius: 0.4rem;
    background-color: #fff;
}

.existing-preview-summary[b-x690ed4rz4] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 0.75rem;
    padding: 0.625rem 0.75rem;
    border: 1px solid #e9ecef;
    border-radius: 0.4rem;
    background-color: #f8f9fa;
}

.drop-zone[b-x690ed4rz4] {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 58px;
    min-width: 240px;
    flex: 1 1 280px;
    padding: 0.5rem 0.75rem;
    border: 1px dashed #adb5bd;
    border-radius: 0.4rem;
    background-color: #f8f9fa;
    color: #495057;
    text-align: center;
    cursor: pointer;
    transition: border-color 0.15s ease, background-color 0.15s ease;
}

.drop-zone:hover[b-x690ed4rz4],
.drop-zone:focus-within[b-x690ed4rz4],
.drop-zone.drag-over[b-x690ed4rz4] {
    border-color: #495057;
    background-color: #f1f3f5;
}

:global(input[type="file"].drop-zone-input)[b-x690ed4rz4] {
    position: absolute;
    inset: 0;
    opacity: 0;
    width: 100%;
    height: 100%;
    cursor: pointer;
    z-index: 1;
    color: transparent;
    font-size: 0;
    line-height: 0;
    border: 0;
    background: transparent;
}

:global(input[type="file"].drop-zone-input::file-selector-button)[b-x690ed4rz4],
:global(input[type="file"].drop-zone-input::-webkit-file-upload-button)[b-x690ed4rz4] {
    display: none;
}

.drop-zone-label[b-x690ed4rz4] {
    position: relative;
    z-index: 2;
    font-size: 0.88rem;
}

.choose-file-link[b-x690ed4rz4] {
    color: #0d6efd;
    text-decoration: underline;
    background: none;
    border: 0;
    padding: 0;
    margin: 0;
    font: inherit;
}

.drop-zone.ready[b-x690ed4rz4] {
    border-color: #198754;
    background-color: #e9f7ee;
}

.existing-preview-image[b-x690ed4rz4] {
    width: 120px;
    height: 90px;
    object-fit: cover;
    border: 1px solid #ddd;
    border-radius: 0.25rem;
    background-color: #fff;
}

.existing-preview-meta[b-x690ed4rz4] {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 0.25rem;
    min-width: 0;
}

.existing-preview-actions[b-x690ed4rz4] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.existing-preview-link[b-x690ed4rz4] {
    font-size: 0.78rem;
    text-decoration: underline;
}

.choose-replacement-link[b-x690ed4rz4] {
    font-size: 0.78rem;
    text-decoration: underline;
    color: #6c757d;
    padding: 0;
}

.upload-row-details[b-x690ed4rz4] {
    flex: 1 1 260px;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.apply-to-panel[b-x690ed4rz4] {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    padding: 0.55rem 0.65rem;
    border: 1px solid #dee2e6;
    border-radius: 0.35rem;
    background-color: #f8f9fa;
}

.apply-to-heading[b-x690ed4rz4] {
    font-size: 0.8rem;
    font-weight: 600;
    color: #343a40;
}

.apply-to-options[b-x690ed4rz4] {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.apply-to-option[b-x690ed4rz4] {
    margin-bottom: 0;
    font-size: 0.82rem;
}

.apply-to-help[b-x690ed4rz4] {
    font-size: 0.75rem;
}

.artwork-row-actions[b-x690ed4rz4] {
    display: flex;
    align-items: flex-start;
}

.slot-detail[b-x690ed4rz4] {
    font-size: 0.8rem;
    color: #495057;
}

.file-name[b-x690ed4rz4] {
    word-break: break-word;
}

.upload-card-footer[b-x690ed4rz4] {
    margin-top: 0.35rem;
}

@media (max-width: 991.98px) {
    .wall-upload-filter-row[b-x690ed4rz4],
    .wall-upload-search-block[b-x690ed4rz4] {
        flex-basis: 100%;
    }

    .wall-upload-search-block[b-x690ed4rz4] {
        min-width: 0;
        margin-left: 0;
    }

    .wall-upload-search[b-x690ed4rz4] {
        max-width: none;
        margin-left: 0;
    }

    .wall-upload-row-layout[b-x690ed4rz4] {
        flex-direction: column;
    }

    .source-image-column[b-x690ed4rz4] {
        width: auto;
        min-width: 0;
    }

    .source-image[b-x690ed4rz4] {
        width: 108px;
        height: 108px;
    }

    .wall-preview-upload-row[b-x690ed4rz4] {
        flex-wrap: wrap;
    }

    .existing-preview-summary[b-x690ed4rz4] {
        align-items: flex-start;
    }

    .drop-zone[b-x690ed4rz4] {
        min-width: 0;
        flex-basis: 100%;
    }

    .artwork-row-actions[b-x690ed4rz4] {
        width: 100%;
        justify-content: flex-start;
    }
}

@media (max-width: 719.98px) {
    .wall-upload-filter-row[b-x690ed4rz4] {
        flex-wrap: wrap;
    }

    .wall-upload-filter-group[b-x690ed4rz4] {
        flex: 1 1 220px;
        min-width: 200px;
    }

    .wall-upload-search[b-x690ed4rz4] {
        max-width: none;
    }

    .wall-preview-upload-row[b-x690ed4rz4] {
        padding: 0.55rem 0.6rem;
    }

    .artwork-row-header[b-x690ed4rz4],
    .existing-preview-summary[b-x690ed4rz4],
    .existing-preview-actions[b-x690ed4rz4] {
        flex-direction: column;
        align-items: flex-start;
    }
}
/* /Components/Pages/Cart/Cart.razor.rz.scp.css */
.cart-page[b-75zbt961l4] {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 28px 24px 48px;
}

.cart-loading-state[b-75zbt961l4],
.cart-empty-state[b-75zbt961l4] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
    min-height: calc(100vh - 144px);
    min-height: calc(100dvh - 144px);
    text-align: center;
}

.cart-empty-state h1[b-75zbt961l4] {
    margin: 0;
}

.cart-empty-state p[b-75zbt961l4] {
    margin: 0;
    color: #666;
}

.cart-signed-out-state[b-75zbt961l4] {
    gap: 0;
}

.cart-signed-out-message[b-75zbt961l4] {
    max-width: 26rem;
    font-size: 1.1rem;
    line-height: 1.6;
    color: #444;
}

.cart-signed-out-link[b-75zbt961l4] {
    font-size: 1.08em;
    font-weight: 700;
    color: inherit;
    text-decoration: none;
    margin-right: 0.2rem;
}

.cart-signed-out-link:hover[b-75zbt961l4],
.cart-signed-out-link:focus[b-75zbt961l4] {
    color: inherit;
    text-decoration: none;
}

.cart-intro[b-75zbt961l4] {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 8px;
    margin-bottom: 20px;
}

.cart-intro-heading[b-75zbt961l4] {
    margin: 0;
    font-size: 1.5rem;
    font-weight: 600;
    line-height: 1.25;
}

.cart-intro-message[b-75zbt961l4] {
    margin: 0;
    color: #666;
    font-size: 1rem;
}

.cart-header[b-75zbt961l4] {
    margin-bottom: 20px;
}

.cart-header h1[b-75zbt961l4] {
    margin: 0;
}

.cart-header p[b-75zbt961l4] {
    margin: 6px 0 0;
    color: #666;
}

.cart-layout[b-75zbt961l4] {
    display: flex;
    align-items: flex-start;
    gap: 24px;
}

.cart-items[b-75zbt961l4] {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.cart-item[b-75zbt961l4] {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    padding: 14px;
    border: 1px solid #e5e5e5;
    border-radius: 8px;
    background: #fff;
}

.cart-item-image-link[b-75zbt961l4] {
    flex: 0 0 96px;
    width: 96px;
    height: 96px;
    border-radius: 6px;
    overflow: hidden;
    background: #f7f7f7;
}

.cart-item-image[b-75zbt961l4] {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.cart-item-content[b-75zbt961l4] {
    flex: 1 1 auto;
    min-width: 0;
}

.cart-item-title[b-75zbt961l4] {
    display: inline-block;
    color: #212529;
    font-weight: 600;
    text-decoration: none;
    margin-bottom: 6px;
}

.cart-item-title:hover[b-75zbt961l4] {
    text-decoration: underline;
}

.cart-item-product-type[b-75zbt961l4] {
    color: #444;
    margin-bottom: 6px;
}

.cart-item-options[b-75zbt961l4] {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
    color: #555;
    font-size: 0.92rem;
}

.option-name[b-75zbt961l4] {
    font-weight: 500;
}

.cart-item-pricing[b-75zbt961l4] {
    flex: 0 0 140px;
    display: flex;
    flex-direction: column;
    gap: 4px;
    align-items: flex-end;
    text-align: right;
}

.cart-item-actions[b-75zbt961l4] {
    flex: 0 0 auto;
    display: flex;
    align-items: flex-start;
}

.unit-price[b-75zbt961l4],
.quantity[b-75zbt961l4] {
    color: #555;
    font-size: 0.92rem;
}

.line-total[b-75zbt961l4] {
    font-weight: 600;
    font-size: 1.05rem;
}

.cart-summary[b-75zbt961l4] {
    flex: 0 0 280px;
    padding: 18px;
    border: 1px solid #e5e5e5;
    border-radius: 8px;
    background: #fff;
}

.cart-summary h2[b-75zbt961l4] {
    margin: 0 0 14px;
    font-size: 1.1rem;
}

.summary-row[b-75zbt961l4] {
    display: flex;
    justify-content: space-between;
    margin-bottom: 8px;
    color: #333;
}

.summary-subtotal[b-75zbt961l4] {
    margin-top: 12px;
    padding-top: 10px;
    border-top: 1px solid #e5e5e5;
    font-weight: 600;
}

.summary-checkout-link[b-75zbt961l4],
.summary-clear-link[b-75zbt961l4],
.summary-shop-link[b-75zbt961l4] {
    width: 100%;
}

.summary-checkout-link[b-75zbt961l4] {
    margin-top: 14px;
}

.summary-clear-link[b-75zbt961l4] {
    margin-top: 10px;
}

.summary-shop-link[b-75zbt961l4] {
    margin-top: 10px;
}

@media (max-width: 900px) {
    .cart-layout[b-75zbt961l4] {
        flex-direction: column;
    }

    .cart-summary[b-75zbt961l4] {
        width: 100%;
        flex-basis: auto;
    }
}

@media (max-width: 640px) {
    .cart-page[b-75zbt961l4] {
        padding: 20px 16px 36px;
    }

    .cart-item[b-75zbt961l4] {
        flex-wrap: wrap;
    }

    .cart-item-pricing[b-75zbt961l4] {
        width: 100%;
        flex-basis: 100%;
        align-items: flex-start;
        text-align: left;
        padding-top: 8px;
        border-top: 1px solid #f0f0f0;
    }
}
/* /Components/Pages/Cart/Checkout.razor.rz.scp.css */
.checkout-page[b-sy656t8h0y] {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    padding: 28px 24px 48px;
}

.checkout-loading-state[b-sy656t8h0y],
.checkout-empty-state[b-sy656t8h0y] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
    min-height: 300px;
    text-align: center;
}

.checkout-empty-state h1[b-sy656t8h0y] {
    margin: 0;
}

.checkout-empty-state p[b-sy656t8h0y] {
    margin: 0;
    color: #666;
}

.checkout-intro[b-sy656t8h0y] {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 8px;
    margin-bottom: 20px;
}

.checkout-intro-heading[b-sy656t8h0y] {
    margin: 0;
    font-size: 1.5rem;
    font-weight: 600;
    line-height: 1.25;
}

.checkout-intro-message[b-sy656t8h0y] {
    margin: 0;
    color: #666;
    font-size: 1rem;
}

.checkout-header[b-sy656t8h0y] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
    margin-bottom: 20px;
}

.checkout-header p[b-sy656t8h0y] {
    margin: 0;
    color: #666;
}

.checkout-step-indicator[b-sy656t8h0y] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.checkout-step-pill[b-sy656t8h0y] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.4rem 0.8rem;
    border: 1px solid #d0d7de;
    border-radius: 999px;
    background: #fff;
    color: #495057;
    font-size: 0.92rem;
    font-weight: 500;
    line-height: 1.2;
}

.checkout-step-pill-button[b-sy656t8h0y] {
    appearance: none;
    cursor: pointer;
    font: inherit;
}

.checkout-step-pill-button:hover[b-sy656t8h0y] {
    border-color: #212529;
}

.checkout-step-pill-active[b-sy656t8h0y] {
    border-color: #212529;
    background: #212529;
    color: #fff;
}

.checkout-layout[b-sy656t8h0y] {
    display: flex;
    align-items: flex-start;
    gap: 24px;
}

.checkout-main[b-sy656t8h0y] {
    flex: 1 1 auto;
    min-width: 0;
}

.checkout-sidebar[b-sy656t8h0y] {
    flex: 0 0 380px;
    min-width: 320px;
}

.checkout-panel-stack[b-sy656t8h0y] {
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.checkout-panel[b-sy656t8h0y],
.checkout-summary-card[b-sy656t8h0y] {
    border: 1px solid #e5e5e5;
    border-radius: 10px;
    background: #fff;
    padding: 18px;
}

.checkout-panel-header[b-sy656t8h0y] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 16px;
}

.checkout-panel-header h2[b-sy656t8h0y],
.checkout-summary-card h2[b-sy656t8h0y],
.checkout-review-header h3[b-sy656t8h0y] {
    margin: 0;
}

.checkout-panel-header p[b-sy656t8h0y],
.checkout-summary-card p[b-sy656t8h0y] {
    margin: 6px 0 0;
    color: #666;
}

.checkout-review-header[b-sy656t8h0y] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 12px;
}

.checkout-review-cards[b-sy656t8h0y] {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.checkout-review-card[b-sy656t8h0y] {
    flex: 1 1 220px;
    min-width: 0;
    padding: 14px;
    border: 1px solid #e5e5e5;
    border-radius: 8px;
    background: #fcfcfc;
}

.checkout-review-card-title[b-sy656t8h0y] {
    margin-bottom: 8px;
    color: #666;
    font-size: 0.8rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.checkout-form-stack[b-sy656t8h0y] {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.checkout-field[b-sy656t8h0y] {
    min-width: 0;
}

.checkout-field-full[b-sy656t8h0y] {
    width: 100%;
}

.checkout-field :deep(.validation-message)[b-sy656t8h0y] {
    display: block;
    margin-top: 4px;
    color: #9a1f1f;
    font-size: 0.88rem;
}

.checkout-address-selector[b-sy656t8h0y] {
    margin-bottom: 16px;
}

.checkout-address-selector-row[b-sy656t8h0y] {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    gap: 12px;
    margin-bottom: 16px;
}

.checkout-address-selector-row .checkout-address-selector[b-sy656t8h0y] {
    flex: 1 1 280px;
    min-width: 0;
    margin-bottom: 0;
}

.checkout-address-editor-toggle[b-sy656t8h0y] {
    flex: 0 0 auto;
    white-space: nowrap;
}

.checkout-toggle-row[b-sy656t8h0y] {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 16px;
}

.checkout-toggle-row-single[b-sy656t8h0y] {
    margin-top: 0;
}

.checkout-toggle-button[b-sy656t8h0y] {
    border-radius: 999px;
    padding: 0.45rem 0.85rem;
    line-height: 1.2;
}

.checkout-muted-note[b-sy656t8h0y] {
    color: #666;
    font-size: 0.95rem;
}

.checkout-step-actions[b-sy656t8h0y] {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    flex-wrap: wrap;
}

.checkout-step-actions-between[b-sy656t8h0y] {
    justify-content: space-between;
}

.checkout-validation-summary[b-sy656t8h0y] {
    margin-bottom: 12px;
    padding-left: 18px;
    color: #9a1f1f;
}

.checkout-address-review[b-sy656t8h0y] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    color: #333;
}

.checkout-address-review-compact[b-sy656t8h0y] {
    font-size: 0.95rem;
    line-height: 1.45;
}

.checkout-items[b-sy656t8h0y] {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.checkout-item[b-sy656t8h0y] {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    padding: 14px;
    border: 1px solid #e5e5e5;
    border-radius: 8px;
    background: #fff;
}

.checkout-item-image-link[b-sy656t8h0y] {
    flex: 0 0 96px;
    width: 96px;
    height: 96px;
    border-radius: 6px;
    overflow: hidden;
    background: #f7f7f7;
}

.checkout-item-image[b-sy656t8h0y] {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.checkout-item-content[b-sy656t8h0y] {
    flex: 1 1 auto;
    min-width: 0;
}

.checkout-item-title[b-sy656t8h0y] {
    display: inline-block;
    color: #212529;
    font-weight: 600;
    text-decoration: none;
    margin-bottom: 6px;
}

.checkout-item-title:hover[b-sy656t8h0y] {
    text-decoration: underline;
}

.checkout-item-product-type[b-sy656t8h0y] {
    color: #444;
    margin-bottom: 6px;
}

.checkout-item-options[b-sy656t8h0y] {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
    color: #555;
    font-size: 0.92rem;
}

.option-name[b-sy656t8h0y] {
    font-weight: 500;
}

.checkout-item-pricing[b-sy656t8h0y] {
    flex: 0 0 140px;
    display: flex;
    flex-direction: column;
    gap: 4px;
    align-items: flex-end;
    text-align: right;
}

.unit-price[b-sy656t8h0y],
.quantity[b-sy656t8h0y] {
    color: #555;
    font-size: 0.92rem;
}

.line-total[b-sy656t8h0y] {
    font-weight: 600;
    font-size: 1.05rem;
}

.checkout-summary-totals[b-sy656t8h0y] {
    margin-top: 18px;
}

.summary-row[b-sy656t8h0y] {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 8px;
    color: #333;
}

.summary-subtotal[b-sy656t8h0y] {
    margin-top: 12px;
    padding-top: 10px;
    border-top: 1px solid #e5e5e5;
    font-weight: 600;
}

.checkout-summary-action[b-sy656t8h0y] {
    margin-top: 18px;
}

.checkout-summary-note[b-sy656t8h0y] {
    margin: 12px 0 0;
    color: #666;
    font-size: 0.95rem;
}

.checkout-blocking-message[b-sy656t8h0y] {
    margin-top: 16px;
    margin-bottom: 16px;
}

.square-card-panel[b-sy656t8h0y] {
    margin-top: 8px;
}

.square-card-container[b-sy656t8h0y] {
    min-height: 95px;
    border: 1px solid #d7d7d7;
    border-radius: 6px;
    padding: 10px;
    background: #fff;
}

.checkout-status[b-sy656t8h0y] {
    padding: 14px 16px;
    border-radius: 8px;
    border: 1px solid transparent;
}

.checkout-status-success[b-sy656t8h0y] {
    background: #f1fff5;
    border-color: #b8e8c7;
    color: #146c2e;
}

.checkout-status-error[b-sy656t8h0y] {
    background: #fff5f5;
    border-color: #f0c2c2;
    color: #9a1f1f;
}

.checkout-status-info[b-sy656t8h0y] {
    background: #f5f9ff;
    border-color: #c8dbf7;
    color: #1e4f91;
}

.checkout-status-title[b-sy656t8h0y] {
    font-weight: 700;
    margin-bottom: 4px;
}

.checkout-status-message[b-sy656t8h0y] {
    word-break: break-word;
}

.checkout-trust[b-sy656t8h0y] {
    margin-top: 18px;
    padding-top: 16px;
    border-top: 1px solid #e5e5e5;
}

.checkout-trust-title[b-sy656t8h0y] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-weight: 700;
    color: #146c43;
}

.checkout-trust-message[b-sy656t8h0y] {
    margin: 10px 0 0;
    color: #555;
    font-size: 0.95rem;
    line-height: 1.5;
}

.checkout-trust-icons[b-sy656t8h0y] {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 12px;
}

.checkout-trust-icon-pill[b-sy656t8h0y] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 10px;
    border-radius: 999px;
    background: #f1fff5;
    color: #146c43;
    font-size: 0.88rem;
    font-weight: 600;
}

@media (max-width: 1080px) {
    .checkout-layout[b-sy656t8h0y] {
        flex-direction: column;
    }

    .checkout-sidebar[b-sy656t8h0y] {
        width: 100%;
        min-width: 0;
        flex-basis: auto;
    }
}

@media (max-width: 640px) {
    .checkout-page[b-sy656t8h0y] {
        padding: 20px 16px 36px;
    }

    .checkout-header[b-sy656t8h0y],
    .checkout-review-header[b-sy656t8h0y],
    .checkout-step-actions[b-sy656t8h0y],
    .checkout-step-actions-between[b-sy656t8h0y] {
        justify-content: flex-start;
    }

    .checkout-item[b-sy656t8h0y] {
        flex-wrap: wrap;
    }

    .checkout-review-header[b-sy656t8h0y] {
        flex-direction: column;
    }

    .checkout-review-header .btn[b-sy656t8h0y] {
        align-self: flex-start;
    }

    .checkout-review-card[b-sy656t8h0y] {
        flex-basis: 100%;
    }

    .checkout-address-selector-row[b-sy656t8h0y] {
        flex-direction: column;
        align-items: stretch;
    }

    .checkout-address-editor-toggle[b-sy656t8h0y] {
        align-self: flex-start;
    }

    .checkout-item-pricing[b-sy656t8h0y] {
        width: 100%;
        flex-basis: 100%;
        align-items: flex-start;
        text-align: left;
        padding-top: 8px;
        border-top: 1px solid #f0f0f0;
    }
}
/* /Components/Pages/Contact.razor.rz.scp.css */
.contact-page[b-7s2qh75jnn] {
    width: min(100%, 84rem);
    margin: 0 auto 4rem;
    padding: clamp(1.5rem, 4vw, 3rem) clamp(1rem, 3.5vw, 2.75rem) 0;
}

.contact-content[b-7s2qh75jnn] {
    width: min(100%, 42rem);
    margin: 0 auto;
}

.contact-header[b-7s2qh75jnn] {
    margin-bottom: 1.5rem;
}

.contact-header h1[b-7s2qh75jnn] {
    margin: 0;
    font-size: clamp(2rem, 4vw, 3.1rem);
    font-weight: 500;
    line-height: 1.08;
    letter-spacing: -0.03em;
}

.contact-header p[b-7s2qh75jnn] {
    margin: 0.75rem 0 0;
    color: #2f2f2f;
    font-size: 1rem;
    line-height: 1.7;
}

@media (max-width: 640px) {
    .contact-page[b-7s2qh75jnn] {
        margin-bottom: 3.5rem;
        padding-left: 0.9rem;
        padding-right: 0.9rem;
    }
}
/* /Components/Pages/Error.razor.rz.scp.css */
.error-page[b-izssl85386] {
    max-width: 720px;
    padding: 4rem 0;
}

.eyebrow[b-izssl85386] {
    text-transform: uppercase;
    letter-spacing: .16em;
    color: var(--text-muted);
    font-size: .8rem;
}

h1[b-izssl85386] {
    margin: .25rem 0 1rem;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2.5rem, 6vw, 4.5rem);
    font-weight: 500;
}

p[b-izssl85386] {
    color: var(--text-muted);
}

a[b-izssl85386] {
    display: inline-block;
    margin-top: 1rem;
    font-weight: 650;
}
/* /Components/Pages/Faq.razor.rz.scp.css */

.faq-contact-link[b-sr4g5srn8k] {
    font-weight: 700;
    text-decoration: none;
    cursor: pointer;
}

.faq-contact-link:hover[b-sr4g5srn8k],
.faq-contact-link:focus[b-sr4g5srn8k] {
        text-decoration: none;
    }

.faq-page[b-sr4g5srn8k] {
    width: min(100%, 84rem);
    margin: 0 auto 4rem;
    padding: clamp(1.5rem, 4vw, 3rem) clamp(1rem, 3.5vw, 2.75rem) 0;
}

.faq-content[b-sr4g5srn8k] {
    width: min(100%, 56rem);
    margin: 0 auto;
}

.faq-header[b-sr4g5srn8k] {
    margin-bottom: clamp(1.5rem, 3vw, 2rem);
}

    .faq-header h1[b-sr4g5srn8k] {
        margin: 0;
        font-size: clamp(2rem, 4vw, 3.1rem);
        font-weight: 500;
        line-height: 1.08;
        letter-spacing: -0.03em;
    }

.faq-list[b-sr4g5srn8k] {
    border-top: 1px solid rgba(0, 0, 0, 0.12);
}

.faq-item[b-sr4g5srn8k] {
    padding: 1.1rem 0 1.2rem;
    border-bottom: 1px solid rgba(0, 0, 0, 0.12);
}

    .faq-item h2[b-sr4g5srn8k] {
        margin: 0 0 0.45rem;
        font-size: 1.12rem;
        font-weight: 500;
        line-height: 1.45;
    }

    .faq-item p[b-sr4g5srn8k] {
        margin: 0;
        color: #2f2f2f;
        font-size: 1rem;
        line-height: 1.75;
    }

@media (max-width: 640px) {
    .faq-page[b-sr4g5srn8k] {
        margin-bottom: 3.5rem;
        padding-left: 0.9rem;
        padding-right: 0.9rem;
    }

    .faq-item[b-sr4g5srn8k] {
        padding-top: 1rem;
        padding-bottom: 1.05rem;
    }

        .faq-item h2[b-sr4g5srn8k] {
            font-size: 1.05rem;
        }

        .faq-item p[b-sr4g5srn8k] {
            font-size: 0.98rem;
            line-height: 1.7;
        }
}
/* /Components/Pages/Gallery.razor.rz.scp.css */
.gallery-page[b-qzr6tja4tr] {
    width: 100%;
    padding: clamp(0.9rem, 2.5vw, 1.5rem) 0 clamp(3rem, 6vw, 5rem);
}

.gallery-filter-shell[b-qzr6tja4tr],
.gallery-grid[b-qzr6tja4tr],
.gallery-state[b-qzr6tja4tr],
.gallery-results-summary[b-qzr6tja4tr],
.gallery-pagination[b-qzr6tja4tr] {
    width: min(100%, 80rem);
    margin-left: auto;
    margin-right: auto;
}

.gallery-filter-shell[b-qzr6tja4tr] {
    margin-bottom: clamp(0.85rem, 2vw, 1.25rem);
}

.gallery-search-shell[b-qzr6tja4tr] {
    width: min(100%, 34rem);
    margin: 0 auto clamp(0.75rem, 1.75vw, 1rem);
}

.gallery-search[b-qzr6tja4tr] {
    position: relative;
    display: flex;
    align-items: center;
}

.gallery-search-icon[b-qzr6tja4tr] {
    position: absolute;
    left: 1rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #7a7a7a;
    pointer-events: none;
}

.gallery-search-input[b-qzr6tja4tr] {
    width: 100%;
    border: 1px solid #d9d9d9;
    border-radius: 999px;
    background: #fff;
    color: #2c2c2c;
    padding: 0.8rem 3rem 0.8rem 2.75rem;
    font-size: 0.96rem;
    line-height: 1.4;
    transition: border-color 0.18s ease, box-shadow 0.18s ease;
}

.gallery-search input[type="search"][b-qzr6tja4tr]::-webkit-search-cancel-button,
.gallery-search input[type="search"][b-qzr6tja4tr]::-webkit-search-decoration {
    -webkit-appearance: none;
    appearance: none;
}

    .gallery-search-input[b-qzr6tja4tr]::placeholder {
        color: #8a8a8a;
    }

    .gallery-search-input:focus-visible[b-qzr6tja4tr] {
        outline: none;
        border-color: #2f2f2f;
        box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.08);
    }

.gallery-search-clear[b-qzr6tja4tr] {
    position: absolute;
    right: 0.45rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.3rem;
    height: 2.3rem;
    border: 0;
    border-radius: 999px;
    background: transparent;
    color: #6d6d6d;
    padding: 0;
    transition: background-color 0.18s ease, color 0.18s ease;
}

    .gallery-search-clear:hover[b-qzr6tja4tr] {
        background: rgba(0, 0, 0, 0.04);
        color: #1f1f1f;
    }

    .gallery-search-clear:focus-visible[b-qzr6tja4tr] {
        outline: none;
        box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.08);
    }

.gallery-filter-chips[b-qzr6tja4tr] {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0.7rem;
}

.gallery-chip[b-qzr6tja4tr] {
    border: 1px solid #d9d9d9;
    border-radius: 999px;
    background: #fff;
    color: #444;
    padding: 0.6rem 1rem;
    font-size: 0.92rem;
    line-height: 1;
    transition: border-color 0.18s ease, color 0.18s ease, background-color 0.18s ease, box-shadow 0.18s ease;
}

    .gallery-chip:hover[b-qzr6tja4tr] {
        border-color: #bcbcbc;
        color: #222;
    }

    .gallery-chip:focus-visible[b-qzr6tja4tr] {
        outline: none;
        border-color: #2f2f2f;
        box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.08);
    }

    .gallery-chip.is-active[b-qzr6tja4tr] {
        border-color: #1f1f1f;
        background: #1f1f1f;
        color: #fff;
    }

.gallery-grid[b-qzr6tja4tr] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: clamp(1rem, 2.5vw, 1.75rem);
}

.gallery-tile[b-qzr6tja4tr] {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 0.9rem;
    border: 0;
    background: transparent;
    color: inherit;
    padding: 0;
    text-align: left;
}

    .gallery-tile:hover .gallery-tile-image-frame[b-qzr6tja4tr] {
        border-color: #cdcdcd;
        box-shadow: 0 12px 32px rgba(0, 0, 0, 0.06);
    }

    .gallery-tile:hover .gallery-tile-image-frame.is-return-highlighted[b-qzr6tja4tr] {
        border-color: #000;
    }

    .gallery-tile:focus-visible[b-qzr6tja4tr] {
        outline: none;
    }

        .gallery-tile:focus-visible .gallery-tile-image-frame[b-qzr6tja4tr] {
            border-color: #2f2f2f;
            box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.08);
        }

        .gallery-tile:focus-visible .gallery-tile-image-frame.is-return-highlighted[b-qzr6tja4tr] {
            border-color: #000;
            box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.08);
        }

.gallery-tile-image-frame[b-qzr6tja4tr] {
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid transparent;
    background: #fbfbfa;
    padding: clamp(0.65rem, 1.5vw, 0.95rem);
    box-shadow: inset 0 0 0 1px #e5e5e5;
    transition: border-color 0.18s ease, box-shadow 0.18s ease;
}

    .gallery-tile-image-frame.is-return-highlighted[b-qzr6tja4tr] {
        border-color: #000;
        box-shadow: none;
    }

.gallery-tile-image[b-qzr6tja4tr] {
    display: block;
    width: 100%;
    height: auto;
}

.gallery-tile-meta[b-qzr6tja4tr] {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
}

.gallery-tile-title[b-qzr6tja4tr] {
    font-size: 1rem;
    font-weight: 500;
    line-height: 1.35;
}

.gallery-tile-location[b-qzr6tja4tr] {
    color: #6a6a6a;
    font-size: 0.92rem;
    line-height: 1.45;
}

.gallery-state[b-qzr6tja4tr] {
    padding: 2rem 1rem;
    color: #666;
    text-align: center;
}

.gallery-state-error[b-qzr6tja4tr] {
    color: #7a2f2f;
}

.gallery-results-summary[b-qzr6tja4tr] {
    margin-top: 0;
    margin-bottom: 0.75rem;
    color: #6a6a6a;
    font-size: 0.92rem;
    line-height: 1.5;
    text-align: right;
}

.gallery-pagination[b-qzr6tja4tr] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
    flex-wrap: wrap;
    margin-top: clamp(1.5rem, 3vw, 2rem);
}

.gallery-pagination-list[b-qzr6tja4tr] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.45rem;
    flex-wrap: wrap;
    list-style: none;
    padding: 0;
    margin: 0;
}

.gallery-pagination-link[b-qzr6tja4tr] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 2.5rem;
    min-height: 2.5rem;
    border: 1px solid #d9d9d9;
    border-radius: 999px;
    background: #fff;
    color: #444;
    padding: 0.6rem 0.95rem;
    font-size: 0.92rem;
    line-height: 1;
    transition: border-color 0.18s ease, color 0.18s ease, background-color 0.18s ease, box-shadow 0.18s ease, opacity 0.18s ease;
}

button.gallery-pagination-link:hover:not(:disabled)[b-qzr6tja4tr] {
    border-color: #bcbcbc;
    color: #222;
}

button.gallery-pagination-link:focus-visible[b-qzr6tja4tr] {
    outline: none;
    border-color: #2f2f2f;
    box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.08);
}

.gallery-pagination-link.is-active[b-qzr6tja4tr] {
    border-color: #1f1f1f;
    background: #1f1f1f;
    color: #fff;
}

.gallery-pagination-link:disabled[b-qzr6tja4tr] {
    opacity: 0.45;
    cursor: default;
}

.gallery-pagination-link-nav[b-qzr6tja4tr] {
    gap: 0.35rem;
}

.gallery-pagination-ellipsis[b-qzr6tja4tr] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 1.5rem;
    min-height: 2.5rem;
    color: #7a7a7a;
    font-size: 0.92rem;
}

.gallery-lightbox-backdrop[b-qzr6tja4tr] {
    position: fixed;
    inset: 0;
    background: rgba(10, 10, 10, 0.78);
    z-index: 1040;
}

.gallery-lightbox[b-qzr6tja4tr] {
    position: fixed;
    inset: 0;
    z-index: 1050;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
}

.gallery-lightbox-panel[b-qzr6tja4tr] {
    position: relative;
    width: min(100%, 78rem);
    max-height: calc(100vh - 2rem);
    border: 1px solid rgba(255, 255, 255, 0.2);
    background: rgba(255, 255, 255, 0.98);
    box-shadow: 0 22px 64px rgba(0, 0, 0, 0.2);
    overflow: hidden;
}

.gallery-lightbox-close[b-qzr6tja4tr] {
    position: absolute;
    top: 0.8rem;
    right: 0.8rem;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.75rem;
    height: 2.75rem;
    border: 1px solid #d7d7d7;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.94);
    color: #1f1f1f;
    padding: 0;
}

    .gallery-lightbox-close:hover[b-qzr6tja4tr] {
        border-color: #bdbdbd;
        background: #fff;
    }

    .gallery-lightbox-close:focus-visible[b-qzr6tja4tr],
    .gallery-lightbox-nav:focus-visible[b-qzr6tja4tr] {
        outline: none;
        box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.12);
    }

.gallery-lightbox-body[b-qzr6tja4tr] {
    display: flex;
    align-items: center;
    gap: clamp(0.75rem, 2vw, 1.25rem);
    padding: clamp(1rem, 2.5vw, 1.5rem);
    max-height: calc(100vh - 2rem);
    overflow-y: auto;
}

.gallery-lightbox-nav[b-qzr6tja4tr] {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 3rem;
    height: 3rem;
    border: 1px solid #d7d7d7;
    border-radius: 999px;
    background: #fff;
    color: #1f1f1f;
    padding: 0;
}

.gallery-lightbox-content[b-qzr6tja4tr] {
    flex: 1 1 auto;
    min-width: 0;
    display: grid;
    grid-template-columns: minmax(0, 1.45fr) minmax(16rem, 22rem);
    gap: clamp(1rem, 3vw, 2rem);
    align-items: start;
}

.gallery-lightbox-image-shell[b-qzr6tja4tr] {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 0;
    border: 1px solid #eceae6;
    background: #faf8f4;
    padding: clamp(0.75rem, 2vw, 1rem);
}

.gallery-lightbox-image[b-qzr6tja4tr] {
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: min(76vh, 56rem);
    object-fit: contain;
}

.gallery-lightbox-details[b-qzr6tja4tr] {
    display: flex;
    flex-direction: column;
    gap: 0.7rem;
    align-self: center;
    min-width: 0;
}

    .gallery-lightbox-details h2[b-qzr6tja4tr] {
        margin: 0;
        font-size: clamp(1.5rem, 2.6vw, 2.15rem);
        font-weight: 500;
        line-height: 1.12;
    }

.gallery-lightbox-count[b-qzr6tja4tr],
.gallery-lightbox-location[b-qzr6tja4tr],
.gallery-lightbox-description[b-qzr6tja4tr] {
    margin: 0;
}

.gallery-lightbox-count[b-qzr6tja4tr] {
    color: #767676;
    font-size: 0.88rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.gallery-lightbox-location[b-qzr6tja4tr] {
    color: #666;
    font-size: 0.98rem;
    line-height: 1.55;
}

.gallery-lightbox-description[b-qzr6tja4tr] {
    color: #3b3b3b;
    font-size: 0.98rem;
    line-height: 1.7;
}

.gallery-lightbox-actions[b-qzr6tja4tr] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.65rem 1.25rem;
    margin-top: 0.2rem;
}

.gallery-lightbox-action[b-qzr6tja4tr] {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    border: 0;
    background: transparent;
    color: inherit;
    padding: 0;
    font-size: 0.93rem;
    line-height: 1.5;
    font-weight: 600;
    text-decoration: none;
    cursor: pointer;
}

.gallery-lightbox-link[b-qzr6tja4tr] {
    align-self: flex-start;
    margin-top: 0.2rem;
}

button.gallery-lightbox-action:hover:not(:disabled)[b-qzr6tja4tr],
a.gallery-lightbox-action:hover[b-qzr6tja4tr] {
    color: #1f1f1f;
    text-decoration: none;
}

button.gallery-lightbox-action:focus-visible[b-qzr6tja4tr],
a.gallery-lightbox-action:focus-visible[b-qzr6tja4tr] {
    outline: none;
    border-radius: 0.35rem;
    box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.08);
}

button.gallery-lightbox-action:disabled[b-qzr6tja4tr] {
    opacity: 0.65;
    cursor: default;
}

.gallery-lightbox-favorite[b-qzr6tja4tr] {
    cursor: pointer;
}

    .gallery-lightbox-favorite i[b-qzr6tja4tr] {
        font-size: 0.98rem;
        color: #1f1f1f;
    }

    .gallery-lightbox-favorite.is-active[b-qzr6tja4tr] {
        color: inherit;
    }

    .gallery-lightbox-favorite.is-active i[b-qzr6tja4tr] {
        color: #b42318;
    }

.gallery-lightbox-auth-prompt[b-qzr6tja4tr] {
    margin: 0;
    color: #3b3b3b;
    font-size: 0.88rem;
    line-height: 1.5;
}

.gallery-lightbox-auth-link[b-qzr6tja4tr] {
    color: inherit;
    font-weight: 600;
    text-decoration: none;
    cursor: pointer;
}

    .gallery-lightbox-auth-link:hover[b-qzr6tja4tr] {
        color: #1f1f1f;
        text-decoration: none;
    }

    .gallery-lightbox-auth-link:focus-visible[b-qzr6tja4tr] {
        outline: none;
        border-radius: 0.35rem;
        box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.08);
    }

.gallery-lightbox-action-error[b-qzr6tja4tr] {
    margin: 0;
    color: #7a2f2f;
    font-size: 0.88rem;
    line-height: 1.5;
}

@media (max-width: 1040px) {
    .gallery-grid[b-qzr6tja4tr] {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .gallery-lightbox-content[b-qzr6tja4tr] {
        grid-template-columns: minmax(0, 1fr) minmax(15rem, 19rem);
    }
}

@media (max-width: 820px) {
    .gallery-grid[b-qzr6tja4tr] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .gallery-results-summary[b-qzr6tja4tr] {
        text-align: center;
    }

    .gallery-lightbox-body[b-qzr6tja4tr] {
        display: grid;
        grid-template-columns: 1fr 1fr;
        grid-template-areas:
            "content content"
            "previous next";
        align-items: start;
    }

    .gallery-lightbox-content[b-qzr6tja4tr] {
        grid-area: content;
        grid-template-columns: 1fr;
    }

    .gallery-lightbox-nav-previous[b-qzr6tja4tr] {
        grid-area: previous;
        justify-self: start;
    }

    .gallery-lightbox-nav-next[b-qzr6tja4tr] {
        grid-area: next;
        justify-self: end;
    }

    .gallery-lightbox-image[b-qzr6tja4tr] {
        max-height: min(58vh, 42rem);
    }
}

@media (max-width: 560px) {
    .gallery-page[b-qzr6tja4tr] {
        padding-top: 0.85rem;
    }

    .gallery-filter-shell[b-qzr6tja4tr],
    .gallery-grid[b-qzr6tja4tr],
    .gallery-state[b-qzr6tja4tr],
    .gallery-results-summary[b-qzr6tja4tr],
    .gallery-pagination[b-qzr6tja4tr] {
        width: min(100%, calc(100vw - 2rem));
    }

    .gallery-search-shell[b-qzr6tja4tr] {
        width: 100%;
        margin-bottom: 0.75rem;
    }

    .gallery-search-input[b-qzr6tja4tr] {
        padding-left: 2.6rem;
        padding-right: 2.85rem;
    }

    .gallery-grid[b-qzr6tja4tr] {
        grid-template-columns: 1fr;
    }

    .gallery-pagination[b-qzr6tja4tr] {
        gap: 0.5rem;
    }

    .gallery-pagination-list[b-qzr6tja4tr] {
        gap: 0.35rem;
    }

    .gallery-pagination-link[b-qzr6tja4tr] {
        min-width: 2.35rem;
        min-height: 2.35rem;
        padding: 0.55rem 0.85rem;
    }

    .gallery-lightbox[b-qzr6tja4tr] {
        padding: 0;
    }

    .gallery-lightbox-panel[b-qzr6tja4tr] {
        width: 100%;
        height: 100%;
        max-height: none;
        border: 0;
    }

    .gallery-lightbox-body[b-qzr6tja4tr] {
        max-height: 100vh;
        padding-top: 4rem;
    }

    .gallery-lightbox-close[b-qzr6tja4tr] {
        top: 0.75rem;
        right: 0.75rem;
    }

    .gallery-lightbox-actions[b-qzr6tja4tr] {
        gap: 0.6rem 1rem;
    }
}
/* /Components/Pages/Home.razor.rz.scp.css */
.home-page-content[b-67lnqfhk9t] {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    width: min(100%, 84rem);
    margin: 0 auto 4rem;
    padding: clamp(1.5rem, 4vw, 3rem) clamp(1rem, 3.5vw, 2.75rem) 0;
}

.home-hero[b-67lnqfhk9t] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.65rem;
    text-align: center;
    width: min(100%, 52rem);
    margin: 0 auto clamp(2rem, 4vw, 2.75rem);
}

.home-hero h1[b-67lnqfhk9t] {
    margin: 0;
    font-size: clamp(2.1rem, 5vw, 3.8rem);
    font-weight: 500;
    line-height: 1.06;
    letter-spacing: -0.03em;
}

.home-hero p[b-67lnqfhk9t] {
    margin: 0;
    font-size: clamp(1rem, 1.75vw, 1.2rem);
    color: #555;
}

.home-gallery-feature[b-67lnqfhk9t] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: center;
    column-gap: clamp(2rem, 6vw, 5rem);
    row-gap: clamp(1rem, 2vw, 1.5rem);
    width: 100%;
    margin: 0 auto;
}

.home-gallery-feature-primary[b-67lnqfhk9t] {
    margin-top: clamp(0.25rem, 1vw, 0.75rem);
    margin-bottom: clamp(1.5rem, 3vw, 2rem);
}

.home-gallery-feature-secondary[b-67lnqfhk9t] {
    margin-top: clamp(1.75rem, 3.5vw, 2.5rem);
}

.gallery-feature-frame[b-67lnqfhk9t] {
    width: min(100%, 40.625rem);
    padding: clamp(0.95rem, 1.8vw, 1.35rem);
    background: #f6f3ee;
    box-sizing: border-box;
    justify-self: start;
}

.gallery-feature-image-link[b-67lnqfhk9t] {
    display: block;
    width: 100%;
    color: inherit;
    text-decoration: none;
}

.gallery-feature-image[b-67lnqfhk9t] {
    display: block;
    width: 100%;
    height: auto;
    max-height: min(78vh, 56rem);
    object-fit: contain;
    object-position: center;
}

.gallery-feature-copy[b-67lnqfhk9t] {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: clamp(0.85rem, 1.5vw, 1.15rem);
    min-width: 0;
    max-width: 30rem;
}

.home-gallery-feature-secondary .gallery-feature-copy[b-67lnqfhk9t] {
    justify-self: end;
}

.home-gallery-feature-secondary .gallery-feature-frame[b-67lnqfhk9t] {
    justify-self: end;
}

.gallery-feature-title-link[b-67lnqfhk9t] {
    color: inherit;
    text-decoration: none;
}

.gallery-feature-title-link h2[b-67lnqfhk9t] {
    margin: 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.85rem, 3vw, 2.7rem);
    font-weight: 500;
    line-height: 1.08;
    letter-spacing: -0.02em;
}

.gallery-feature-description[b-67lnqfhk9t] {
    margin: 0;
    max-width: 32ch;
    color: #3f3f3f;
    font-size: clamp(1rem, 1.15vw, 1.08rem);
    line-height: 1.7;
}

.gallery-feature-action[b-67lnqfhk9t] {
    display: inline-flex;
    align-items: center;
    gap: 0.55rem;
    width: fit-content;
    margin-top: 0.1rem;
    color: inherit;
    font-size: 0.70rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    text-decoration: none;
    transition: color 0.15s ease, transform 0.15s ease;
}

.gallery-feature-action-icon[b-67lnqfhk9t] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1em;
    font-weight: 700;
    line-height: 1;
}

.gallery-feature-action-icon .bi[b-67lnqfhk9t] {
    line-height: 1;
}

.gallery-feature-action:hover[b-67lnqfhk9t] {
    color: #000;
    transform: translateX(1px);
}

.home-shop-transition[b-67lnqfhk9t] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.1rem;
    width: min(100%, 44rem);
    margin: clamp(2.5rem, 5vw, 4rem) auto 0;
    padding-top: clamp(0.75rem, 2vw, 1.5rem);
    text-align: center;
}

.shop-transition-copy[b-67lnqfhk9t] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.shop-transition-copy h2[b-67lnqfhk9t] {
    margin: 0;
    font-size: clamp(1.6rem, 3vw, 2.2rem);
    font-weight: 500;
}

.shop-transition-copy p[b-67lnqfhk9t] {
    margin: 0;
    color: #555;
    font-size: 1rem;
}

.shop-transition-link[b-67lnqfhk9t] {
    color: inherit;
    font-size: 0.98rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    text-decoration: underline;
    text-underline-offset: 0.25em;
    text-decoration-thickness: 1px;
}

@media (max-width: 900px) {
    .home-page-content[b-67lnqfhk9t] {
        margin-bottom: 3.5rem;
    }

    .home-hero[b-67lnqfhk9t] {
        margin-bottom: 2.25rem;
    }

    .home-gallery-feature[b-67lnqfhk9t] {
        grid-template-columns: minmax(0, 1fr);
        row-gap: 1rem;
    }

    .home-gallery-feature-primary[b-67lnqfhk9t] {
        margin-bottom: 1.25rem;
    }

    .home-gallery-feature-secondary[b-67lnqfhk9t] {
        margin-top: 2rem;
    }

    .gallery-feature-copy[b-67lnqfhk9t] {
        max-width: 36rem;
    }

    .home-shop-transition[b-67lnqfhk9t] {
        margin-top: 3rem;
    }
}

@media (max-width: 640px) {
    .home-page-content[b-67lnqfhk9t] {
        padding-left: 0.9rem;
        padding-right: 0.9rem;
    }

    .home-hero[b-67lnqfhk9t] {
        margin-bottom: 1.75rem;
    }

    .home-gallery-feature-primary[b-67lnqfhk9t] {
        margin-bottom: 1rem;
    }

    .home-gallery-feature-secondary[b-67lnqfhk9t] {
        margin-top: 1.75rem;
    }

    .gallery-feature-frame[b-67lnqfhk9t] {
        padding: 0.75rem;
    }

    .gallery-feature-image[b-67lnqfhk9t] {
        max-height: none;
    }

    .gallery-feature-copy[b-67lnqfhk9t] {
        gap: 0.8rem;
    }

    .gallery-feature-description[b-67lnqfhk9t] {
        max-width: none;
    }

    .shop-transition-link[b-67lnqfhk9t] {
        letter-spacing: 0.05em;
    }

    .home-shop-transition[b-67lnqfhk9t] {
        margin-top: 2.5rem;
    }
}
/* /Components/Pages/Order/MyOrders.razor.rz.scp.css */
.my-orders-page[b-vf09rcoeh8] {
    width: 100%;
    max-width: 1080px;
    margin: 0 auto;
    padding: 28px 24px 48px;
}

.my-orders-loading-state[b-vf09rcoeh8],
.my-orders-empty-state[b-vf09rcoeh8] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
    min-height: 300px;
    text-align: center;
}

.my-orders-empty-state h1[b-vf09rcoeh8] {
    margin: 0;
}

.my-orders-empty-state p[b-vf09rcoeh8] {
    margin: 0;
    color: #666;
}

.my-orders-intro[b-vf09rcoeh8] {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 8px;
    margin-bottom: 20px;
}

.my-orders-intro-heading[b-vf09rcoeh8] {
    margin: 0;
    font-size: 1.5rem;
    font-weight: 600;
    line-height: 1.25;
}

.my-orders-intro-message[b-vf09rcoeh8] {
    margin: 0;
    color: #666;
    font-size: 1rem;
}

.my-orders-header[b-vf09rcoeh8] {
    margin-bottom: 20px;
}

.my-orders-header p[b-vf09rcoeh8] {
    margin: 0;
    color: #666;
    text-align: center;
}

.my-orders-list[b-vf09rcoeh8] {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.order-card[b-vf09rcoeh8] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    padding: 18px;
    border: 1px solid #e5e5e5;
    border-radius: 10px;
    background: #fff;
}

.order-card-main[b-vf09rcoeh8] {
    flex: 1 1 auto;
    min-width: 0;
}

.order-card-topline[b-vf09rcoeh8] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 12px;
}

.order-card-label[b-vf09rcoeh8] {
    display: block;
    margin-bottom: 4px;
    color: #666;
    font-size: 0.85rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.order-card-number[b-vf09rcoeh8] {
    color: #212529;
    font-weight: 600;
    text-decoration: none;
    word-break: break-word;
}

.order-card-number:hover[b-vf09rcoeh8] {
    text-decoration: underline;
}

.order-card-meta[b-vf09rcoeh8] {
    display: flex;
    flex-wrap: wrap;
    gap: 18px 28px;
    margin-top: 16px;
}

.order-card-value[b-vf09rcoeh8] {
    color: #212529;
}

.order-card-total[b-vf09rcoeh8] {
    font-weight: 600;
}

.order-card-actions[b-vf09rcoeh8] {
    flex: 0 0 auto;
    align-self: stretch;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-end;
}

.order-card-meta > div[b-vf09rcoeh8] {
    min-width: 120px;
}

@media (max-width: 720px) {
    .my-orders-page[b-vf09rcoeh8] {
        padding: 20px 16px 36px;
    }

    .order-card[b-vf09rcoeh8] {
        flex-direction: column;
        align-items: stretch;
    }

    .order-card-topline[b-vf09rcoeh8] {
        flex-direction: column;
        align-items: flex-start;
    }

    .order-card-actions .btn[b-vf09rcoeh8] {
        width: 100%;
    }

    .order-card-actions[b-vf09rcoeh8] {
        align-self: auto;
        width: 100%;
        justify-content: flex-start;
        align-items: stretch;
        gap: 12px;
    }

    .order-card-actions .badge[b-vf09rcoeh8] {
        align-self: flex-start;
    }
}
/* /Components/Pages/Order/OrderConfirmation.razor.rz.scp.css */
.order-confirmation-page[b-a74vcdqox6] {
    width: 100%;
    max-width: 1180px;
    margin: 0 auto;
    padding: 28px 24px 48px;
}

.order-confirmation-loading-state[b-a74vcdqox6],
.order-confirmation-empty-state[b-a74vcdqox6] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
    min-height: 300px;
    text-align: center;
}

.order-confirmation-intro[b-a74vcdqox6] {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 8px;
    margin-bottom: 20px;
}

.order-confirmation-intro-heading[b-a74vcdqox6] {
    margin: 0;
    font-size: 1.5rem;
    font-weight: 600;
    line-height: 1.25;
}

.order-confirmation-intro-message[b-a74vcdqox6] {
    margin: 0;
    color: #666;
    font-size: 1rem;
    word-break: break-word;
}

.order-confirmation-header[b-a74vcdqox6] {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 16px;
    margin-bottom: 20px;
}

.order-confirmation-layout[b-a74vcdqox6] {
    display: flex;
    align-items: flex-start;
    gap: 24px;
}

.order-confirmation-main[b-a74vcdqox6] {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.order-confirmation-section[b-a74vcdqox6],
.order-confirmation-totals-panel[b-a74vcdqox6] {
    padding: 18px;
    border: 1px solid #e5e5e5;
    border-radius: 10px;
    background: #fff;
}

.order-confirmation-section h2[b-a74vcdqox6],
.order-confirmation-totals-panel h2[b-a74vcdqox6] {
    margin: 0 0 16px;
    font-size: 1.1rem;
}

.order-confirmation-summary-grid[b-a74vcdqox6] {
    display: flex;
    flex-wrap: wrap;
    gap: 18px 28px;
}

.order-confirmation-summary-grid > div[b-a74vcdqox6] {
    flex: 1 1 220px;
    min-width: 0;
}

.summary-label[b-a74vcdqox6] {
    display: block;
    margin-bottom: 4px;
    color: #666;
    font-size: 0.85rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.summary-value[b-a74vcdqox6] {
    color: #212529;
    word-break: break-word;
}

.order-number-value[b-a74vcdqox6] {
    font-weight: 600;
}

.order-confirmation-items-list[b-a74vcdqox6] {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.order-confirmation-item-card[b-a74vcdqox6] {
    border: 1px solid #ececec;
    border-radius: 8px;
    padding: 16px;
}

.order-confirmation-item-title-row[b-a74vcdqox6] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 12px;
}

.order-confirmation-item-title-row h3[b-a74vcdqox6] {
    margin: 0;
    font-size: 1.05rem;
}

.order-confirmation-item-line-total[b-a74vcdqox6] {
    font-weight: 600;
    white-space: nowrap;
}

.order-confirmation-item-product-type[b-a74vcdqox6] {
    margin-top: 6px;
    color: #444;
    font-weight: 500;
}

.order-confirmation-item-meta[b-a74vcdqox6] {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 18px;
    margin-top: 12px;
    color: #555;
    font-size: 0.95rem;
}

.item-meta-label[b-a74vcdqox6],
.item-option-name[b-a74vcdqox6] {
    font-weight: 600;
}

.order-confirmation-item-options[b-a74vcdqox6] {
    list-style: none;
    margin: 14px 0 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 4px;
    color: #555;
}

.order-confirmation-detail-cards[b-a74vcdqox6] {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.order-confirmation-detail-card[b-a74vcdqox6] {
    flex: 1 1 220px;
    min-width: 0;
    padding: 14px;
    border: 1px solid #e5e5e5;
    border-radius: 8px;
    background: #fcfcfc;
}

.order-confirmation-detail-title[b-a74vcdqox6] {
    margin-bottom: 8px;
    color: #666;
    font-size: 0.8rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.order-confirmation-address-block[b-a74vcdqox6] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    color: #333;
    font-size: 0.95rem;
    line-height: 1.45;
}

.order-confirmation-muted-note[b-a74vcdqox6] {
    color: #666;
}

.order-confirmation-totals-panel[b-a74vcdqox6] {
    flex: 0 0 320px;
}

.totals-row[b-a74vcdqox6] {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 10px;
    color: #333;
}

.totals-total-row[b-a74vcdqox6] {
    margin-top: 14px;
    padding-top: 12px;
    border-top: 1px solid #e5e5e5;
    font-weight: 700;
}

@media (max-width: 980px) {
    .order-confirmation-layout[b-a74vcdqox6] {
        flex-direction: column;
    }

    .order-confirmation-totals-panel[b-a74vcdqox6] {
        width: 100%;
        flex-basis: auto;
    }
}

@media (max-width: 720px) {
    .order-confirmation-page[b-a74vcdqox6] {
        padding: 20px 16px 36px;
    }

    .order-confirmation-header[b-a74vcdqox6],
    .order-confirmation-item-title-row[b-a74vcdqox6] {
        flex-direction: column;
        align-items: flex-start;
    }

    .order-confirmation-header .btn[b-a74vcdqox6],
    .order-confirmation-totals-panel .btn[b-a74vcdqox6] {
        width: 100%;
    }

    .order-confirmation-detail-card[b-a74vcdqox6] {
        flex-basis: 100%;
    }
}
/* /Components/Pages/Order/OrderDetails.razor.rz.scp.css */
.order-details-page[b-gvlorufx7v] {
    width: 100%;
    max-width: 1180px;
    margin: 0 auto;
    padding: 28px 24px 48px;
}

.order-details-loading-state[b-gvlorufx7v],
.order-details-empty-state[b-gvlorufx7v] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
    min-height: 300px;
    text-align: center;
}

.order-details-empty-state h1[b-gvlorufx7v] {
    margin: 0;
}

.order-details-empty-state p[b-gvlorufx7v] {
    margin: 0;
    color: #666;
}

.order-details-intro[b-gvlorufx7v] {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 8px;
    margin-bottom: 20px;
}

.order-details-intro-heading[b-gvlorufx7v] {
    margin: 0;
    font-size: 1.5rem;
    font-weight: 600;
    line-height: 1.25;
}

.order-details-intro-message[b-gvlorufx7v] {
    margin: 0;
    color: #666;
    font-size: 1rem;
    word-break: break-word;
}

.order-details-header[b-gvlorufx7v] {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 16px;
    margin-bottom: 20px;
}

.order-details-layout[b-gvlorufx7v] {
    display: flex;
    align-items: flex-start;
    gap: 24px;
}

.order-details-main[b-gvlorufx7v] {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.order-section[b-gvlorufx7v],
.order-totals-panel[b-gvlorufx7v] {
    padding: 18px;
    border: 1px solid #e5e5e5;
    border-radius: 10px;
    background: #fff;
}

.order-section h2[b-gvlorufx7v],
.order-totals-panel h2[b-gvlorufx7v] {
    margin: 0 0 16px;
    font-size: 1.1rem;
}

.order-section-header[b-gvlorufx7v] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 16px;
}

.order-section-header h2[b-gvlorufx7v] {
    margin-bottom: 0;
}

.order-summary-grid[b-gvlorufx7v] {
    display: flex;
    flex-wrap: wrap;
    gap: 18px 28px;
}

.order-summary-grid > div[b-gvlorufx7v] {
    flex: 1 1 220px;
    min-width: 0;
}

.summary-label[b-gvlorufx7v] {
    display: block;
    margin-bottom: 4px;
    color: #666;
    font-size: 0.85rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.summary-value[b-gvlorufx7v] {
    color: #212529;
    word-break: break-word;
}

.order-number-value[b-gvlorufx7v] {
    font-weight: 600;
}

.order-items-list[b-gvlorufx7v] {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.order-shipping-address[b-gvlorufx7v] {
    margin: 0;
    color: #333;
    font-style: normal;
    line-height: 1.6;
}

.order-shipping-empty[b-gvlorufx7v] {
    margin: 0;
    color: #666;
}

.order-item-card[b-gvlorufx7v] {
    border: 1px solid #ececec;
    border-radius: 8px;
    padding: 16px;
}

.order-item-title-row[b-gvlorufx7v] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 12px;
}

.order-item-title-row h3[b-gvlorufx7v] {
    margin: 0;
    font-size: 1.05rem;
}

.order-item-line-total[b-gvlorufx7v] {
    font-weight: 600;
    white-space: nowrap;
}

.order-item-product-type[b-gvlorufx7v] {
    margin-top: 6px;
    color: #444;
    font-weight: 500;
}

.order-item-meta[b-gvlorufx7v] {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 18px;
    margin-top: 12px;
    color: #555;
    font-size: 0.95rem;
}

.item-meta-label[b-gvlorufx7v],
.item-option-name[b-gvlorufx7v] {
    font-weight: 600;
}

.order-item-options[b-gvlorufx7v] {
    list-style: none;
    margin: 14px 0 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 4px;
    color: #555;
}

.order-totals-panel[b-gvlorufx7v] {
    flex: 0 0 320px;
}

.totals-row[b-gvlorufx7v] {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 10px;
    color: #333;
}

.totals-total-row[b-gvlorufx7v] {
    margin-top: 14px;
    padding-top: 12px;
    border-top: 1px solid #e5e5e5;
    font-weight: 700;
}

@media (max-width: 980px) {
    .order-details-layout[b-gvlorufx7v] {
        flex-direction: column;
    }

    .order-totals-panel[b-gvlorufx7v] {
        width: 100%;
        flex-basis: auto;
    }
}

@media (max-width: 720px) {
    .order-details-page[b-gvlorufx7v] {
        padding: 20px 16px 36px;
    }

    .order-details-header[b-gvlorufx7v],
    .order-section-header[b-gvlorufx7v],
    .order-item-title-row[b-gvlorufx7v] {
        flex-direction: column;
        align-items: flex-start;
    }

    .order-details-header .btn[b-gvlorufx7v] {
        width: 100%;
    }
}
/* /Components/Pages/Product/ProductDetails.razor.rz.scp.css */
/* Product Details Page */
.product-details-page[b-jnbi6zlphf] {
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;
    padding: 32px 24px 64px;
    box-sizing: border-box;
}

/* -------------------------------------------------------
   Loading & Error States
------------------------------------------------------- */

.loading-container[b-jnbi6zlphf],
.error-container[b-jnbi6zlphf] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 16px;
    min-height: 400px;
    color: #666;
    text-align: center;
}

.error-container i[b-jnbi6zlphf] {
    font-size: 2.5rem;
    color: #dc3545;
}

/* -------------------------------------------------------
   Main Layout (Desktop: 60% / 40%)
------------------------------------------------------- */

.product-details-main[b-jnbi6zlphf] {
    display: flex;
    gap: 48px;
    align-items: flex-start;
    min-width: 0;
}

/* -------------------------------------------------------
   Image Gallery (Left)
------------------------------------------------------- */

.product-gallery[b-jnbi6zlphf] {
    flex: 3 1 0;
    display: flex;
    flex-direction: column;
    gap: 16px;
    min-width: 0;
}

.product-main-image[b-jnbi6zlphf] {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    min-height: 400px;
    background: #f8f8f8;
    border-radius: 8px;
    padding: 24px;
}

.product-main-image-wall-preview[b-jnbi6zlphf] {
    min-height: 0;
}

.product-main-image-print-preview[b-jnbi6zlphf] {
    padding: 24px;
    background: #f8f8f8;
}

.print-preview-surface[b-jnbi6zlphf] {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 0;
    background: linear-gradient(180deg, #f4f4f2 0%, #ecebe8 100%);
    border-radius: 8px;
    overflow: hidden;
}

.print-preview-sheet[b-jnbi6zlphf] {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    background: #ffffff;
    box-shadow:
        0 10px 26px rgba(56, 47, 36, 0.12),
        0 2px 6px rgba(56, 47, 36, 0.08);
    max-width: calc(100% - 64px);
    max-height: calc(100% - 120px);
}

.print-preview-image-area[b-jnbi6zlphf] {
    position: absolute;
    overflow: hidden;
}

.print-preview-image[b-jnbi6zlphf] {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
}

.print-preview-info[b-jnbi6zlphf] {
    position: absolute;
    left: 20px;
    bottom: 20px;
    display: flex;
    flex-direction: column;
    gap: 3px;
    max-width: calc(100% - 40px);
    padding: 10px 12px;
    background: rgba(255, 255, 255, 0.92);
    border: 1px solid rgba(120, 112, 99, 0.16);
    border-radius: 6px;
    box-shadow: 0 8px 18px rgba(57, 48, 37, 0.08);
    color: #2f2a24;
}

.print-preview-info-title[b-jnbi6zlphf] {
    font-size: 0.95rem;
    font-weight: 600;
    line-height: 1.3;
}

.print-preview-info-detail[b-jnbi6zlphf] {
    font-size: 0.8rem;
    font-weight: 400;
    line-height: 1.3;
    color: #6d655b;
}

.main-image[b-jnbi6zlphf] {
    display: block;
    max-width: 100%;
    max-height: 700px;
    width: auto;
    height: auto;
    object-fit: contain;
}

.greeting-card-main-preview[b-jnbi6zlphf] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}

.greeting-card-main-preview-image[b-jnbi6zlphf] {
    width: auto;
    height: auto;
    max-width: 78%;
    max-height: 78%;
    object-fit: contain;
}

.product-thumbnails[b-jnbi6zlphf] {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    justify-content: center;
}

.thumbnail-button[b-jnbi6zlphf] {
    display: block;
    width: 80px;
    height: 80px;
    padding: 4px;
    border: 2px solid #ddd;
    border-radius: 6px;
    background: #fff;
    cursor: pointer;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

    .thumbnail-button:hover[b-jnbi6zlphf] {
        border-color: #999;
    }

    .thumbnail-button.active[b-jnbi6zlphf] {
        border-color: #222;
        box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.1);
    }

.thumbnail-image[b-jnbi6zlphf] {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 4px;
}

/* -------------------------------------------------------
   Wall Preview
------------------------------------------------------- */

.product-wall-preview[b-jnbi6zlphf] {
    width: 100%;
    margin-top: 24px;
    padding: 24px;
    background: #fafafa;
    border-radius: 8px;
    border: 1px solid #e0e0e0;
}

/* -------------------------------------------------------
   Product Info (Right)
------------------------------------------------------- */

.product-info[b-jnbi6zlphf] {
    flex: 2 1 0;
    display: flex;
    flex-direction: column;
    gap: 24px;
    min-width: 0;
}

/* -------------------------------------------------------
   Header
------------------------------------------------------- */

.product-header[b-jnbi6zlphf] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.product-title[b-jnbi6zlphf] {
    margin: 0;
    font-size: 2rem;
    font-weight: 500;
    color: #222;
    line-height: 1.2;
}

/* -------------------------------------------------------
   Like Section (Compact)
------------------------------------------------------- */

.product-like-section[b-jnbi6zlphf] {
    margin-top: 8px;
    margin-bottom: 8px;
}

.product-like-button[b-jnbi6zlphf] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    border: 1px solid #e0e0e0;
    border-radius: 20px;
    background: #fff;
    color: #555;
    font-size: 0.9rem;
    cursor: pointer;
    transition: all 0.2s ease;
}

    .product-like-button:hover[b-jnbi6zlphf] {
        border-color: #ccc;
        background: #f8f8f8;
    }

    .product-like-button.liked[b-jnbi6zlphf] {
        color: #e74c3c;
        border-color: #e74c3c;
        background: #fff5f5;
    }

        .product-like-button.liked:hover[b-jnbi6zlphf] {
            background: #ffe8e8;
        }

    .product-like-button i[b-jnbi6zlphf] {
        font-size: 1rem;
    }

    .product-like-button .like-count[b-jnbi6zlphf] {
        font-weight: 500;
    }

.product-like-display[b-jnbi6zlphf] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    color: #777;
    font-size: 0.9rem;
}

    .product-like-display i[b-jnbi6zlphf] {
        font-size: 1rem;
    }

    .product-like-display .like-count[b-jnbi6zlphf] {
        font-weight: 500;
    }

.product-location[b-jnbi6zlphf] {
    display: flex;
    align-items: center;
    gap: 6px;
    margin: 0;
    color: #666;
    font-size: 0.95rem;
}

    .product-location i[b-jnbi6zlphf] {
        font-size: 1rem;
    }

.product-short-description[b-jnbi6zlphf] {
    margin: 0;
    color: #555;
    font-size: 1rem;
    line-height: 1.5;
}

/* -------------------------------------------------------
   Price
------------------------------------------------------- */

.product-price[b-jnbi6zlphf] {
    padding: 16px 0;
    border-top: 1px solid #e8e8e8;
    border-bottom: 1px solid #e8e8e8;
    font-size: 1.75rem;
    font-weight: 600;
    color: #222;
}

/* -------------------------------------------------------
   Options
------------------------------------------------------- */

.product-option-group[b-jnbi6zlphf] {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.option-label[b-jnbi6zlphf] {
    font-size: 0.95rem;
    font-weight: 500;
    color: #333;
}

    .option-label .required[b-jnbi6zlphf] {
        color: #dc3545;
    }

.product-option-values[b-jnbi6zlphf] {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.product-review-size-list[b-jnbi6zlphf] {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.product-review-size-row[b-jnbi6zlphf] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
}

.product-review-size-control[b-jnbi6zlphf] {
    display: flex;
    align-items: center;
    flex: 0 1 auto;
}

.product-review-size-actions[b-jnbi6zlphf] {
    flex: 0 0 260px;
    min-height: 42px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
}

.product-review-load-error[b-jnbi6zlphf] {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    color: #8b2d2d;
    font-size: 0.85rem;
    line-height: 1.35;
}

.product-review-checkboxes[b-jnbi6zlphf] {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
}

.product-review-checkbox[b-jnbi6zlphf] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #444;
    font-size: 0.85rem;
}

.product-review-checkbox input[b-jnbi6zlphf] {
    margin: 0;
}

.product-review-help-text[b-jnbi6zlphf] {
    font-size: 0.78rem;
    line-height: 1.35;
}

.product-review-help-text-mapping[b-jnbi6zlphf] {
    color: #6d655b;
}

.product-review-help-text-error[b-jnbi6zlphf] {
    color: #8b2d2d;
}

.product-option-button[b-jnbi6zlphf] {
    min-width: 80px;
    padding: 10px 18px;
    border: 1px solid #d0d0d0;
    border-radius: 6px;
    background: #fff;
    color: #333;
    font-size: 0.95rem;
    font-weight: 400;
    cursor: pointer;
    transition: all 0.15s ease;
}

    .product-option-button:hover:not(.disabled):not(.selected)[b-jnbi6zlphf] {
        border-color: #777;
        background: #f9f9f9;
    }

    .product-option-button.selected[b-jnbi6zlphf] {
        border-color: #222;
        background: #222;
        color: #fff;
        font-weight: 500;
    }

        .product-option-button.selected:hover[b-jnbi6zlphf] {
            background: #000;
            border-color: #000;
        }

    .product-option-button.disabled[b-jnbi6zlphf] {
        opacity: 0.4;
        cursor: not-allowed;
        background: #f5f5f5;
    }

/* -------------------------------------------------------
   Actions Section (Quantity + Add to Cart + Like)
------------------------------------------------------- */

.product-actions-section[b-jnbi6zlphf] {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding-top: 8px;
}

/* -------------------------------------------------------
   Quantity
------------------------------------------------------- */

.product-quantity[b-jnbi6zlphf] {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.quantity-label[b-jnbi6zlphf] {
    font-size: 0.95rem;
    font-weight: 500;
    color: #333;
}

.quantity-controls[b-jnbi6zlphf] {
    display: flex;
    align-items: stretch;
    width: fit-content;
    height: 46px;
    background: #f8f9fa;
    border: 1px solid #e9ecef;
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}

.quantity-button[b-jnbi6zlphf] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 60px;
    height: 100%;
    padding: 0;
    border: 0;
    background: transparent;
    color: #6c757d;
    font-size: 20px;
    cursor: pointer;
    transition: background-color 150ms ease, color 150ms ease;
    line-height: 1;
}

    .quantity-button:hover:not(:disabled)[b-jnbi6zlphf] {
        background: rgba(0, 0, 0, 0.04);
    }

    .quantity-button:active:not(:disabled)[b-jnbi6zlphf] {
        background: rgba(0, 0, 0, 0.08);
    }

    .quantity-button:disabled[b-jnbi6zlphf] {
        color: #ced4da;
        cursor: not-allowed;
        background: transparent;
    }

.quantity-button-minus[b-jnbi6zlphf] {
    border-right: 1px solid #e9ecef;
}

.quantity-button-plus[b-jnbi6zlphf] {
    border-left: 1px solid #e9ecef;
    color: #0d6efd;
}

    .quantity-button-plus:hover:not(:disabled)[b-jnbi6zlphf] {
        background: rgba(13, 110, 253, 0.05);
        color: #0b5ed7;
    }

    .quantity-button-plus:active:not(:disabled)[b-jnbi6zlphf] {
        background: rgba(13, 110, 253, 0.1);
        color: #0a58ca;
    }

.quantity-display[b-jnbi6zlphf] {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 70px;
    height: 100%;
    padding: 0 12px;
    background: transparent;
    color: #212529;
    font-size: 20px;
    font-weight: 600;
    user-select: none;
}

/* -------------------------------------------------------
   Add to Cart & Like
------------------------------------------------------- */

.product-add-to-cart[b-jnbi6zlphf] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100%;
    height: 50px;
    padding: 0 24px;
    border: 0;
    border-radius: 6px;
    background: #222;
    color: #fff;
    font-size: 1.05rem;
    font-weight: 500;
    cursor: pointer;
    transition: background-color 0.15s ease, transform 0.15s ease;
}

    .product-add-to-cart:hover:not(.disabled)[b-jnbi6zlphf] {
        background: #000;
        transform: translateY(-1px);
    }

    .product-add-to-cart.disabled[b-jnbi6zlphf] {
        opacity: 0.5;
        cursor: not-allowed;
        background: #999;
    }

    .product-add-to-cart i[b-jnbi6zlphf] {
        font-size: 1.2rem;
    }

.add-to-cart-feedback[b-jnbi6zlphf] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px 14px;
    border-radius: 6px;
    font-size: 0.95rem;
    line-height: 1.4;
}

    .add-to-cart-feedback i[b-jnbi6zlphf] {
        font-size: 1rem;
        flex: 0 0 auto;
    }

.add-to-cart-feedback-success[b-jnbi6zlphf] {
    border: 1px solid #cce7d2;
    background: #f2fbf4;
    color: #1f6b35;
}

.add-to-cart-feedback-error[b-jnbi6zlphf] {
    border: 1px solid #f1c0c7;
    background: #fff5f6;
    color: #a61e2d;
}

.product-like-button[b-jnbi6zlphf] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 90px;
    height: 44px;
    padding: 0 20px;
    border: 1px solid #d0d0d0;
    border-radius: 6px;
    background: #fff;
    color: #555;
    font-size: 1rem;
    cursor: pointer;
    transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}

    .product-like-button:hover[b-jnbi6zlphf] {
        background: #f9f9f9;
        border-color: #999;
        color: #222;
    }

    .product-like-button i[b-jnbi6zlphf] {
        font-size: 1.2rem;
    }

/* -------------------------------------------------------
   Unavailable
------------------------------------------------------- */

.product-unavailable[b-jnbi6zlphf] {
    padding: 24px;
    border: 1px solid #e8e8e8;
    border-radius: 6px;
    background: #f9f9f9;
    color: #666;
    text-align: center;
}

    .product-unavailable p[b-jnbi6zlphf] {
        margin: 0;
    }

/* -------------------------------------------------------
   Description Section
------------------------------------------------------- */

.product-description-section[b-jnbi6zlphf] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding-top: 16px;
    border-top: 1px solid #e8e8e8;
}

.description-heading-row[b-jnbi6zlphf] {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 12px;
}

.description-heading[b-jnbi6zlphf] {
    margin: 0;
    font-size: 1.2rem;
    font-weight: 500;
    color: #222;
}

.description-like-button[b-jnbi6zlphf] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: auto;
    min-width: 0;
    height: auto;
    padding: 0;
    border: none;
    border-radius: 0;
    background: transparent;
    color: #555;
    text-decoration: none;
    position: relative;
    top: 2px;
}

    .description-like-button:hover[b-jnbi6zlphf] {
        background: transparent;
        border-color: transparent;
        color: #222;
    }

    .description-like-button i[b-jnbi6zlphf] {
        font-size: 1.05rem;
    }

    .description-like-button.liked[b-jnbi6zlphf],
    .description-like-button.liked:hover[b-jnbi6zlphf] {
        background: transparent;
        border-color: transparent;
        color: #b42318;
    }

    .description-like-button:focus-visible[b-jnbi6zlphf] {
        outline: 2px solid rgba(17, 24, 39, 0.2);
        outline-offset: 4px;
}

.product-description[b-jnbi6zlphf] {
    color: #555;
    font-size: 0.95rem;
    line-height: 1.6;
    white-space: pre-wrap;
}

/* -------------------------------------------------------
   Responsive: Tablet
------------------------------------------------------- */

@media (max-width: 1024px) {
    .product-details-main[b-jnbi6zlphf] {
        gap: 32px;
    }

    .product-gallery[b-jnbi6zlphf] {
        flex: 0 0 55%;
    }

    .product-info[b-jnbi6zlphf] {
        flex: 0 0 45%;
    }
}

/* -------------------------------------------------------
   Responsive: Mobile
------------------------------------------------------- */

@media (max-width: 768px) {
    .product-details-page[b-jnbi6zlphf] {
        padding: 24px 16px 48px;
    }

    .product-details-main[b-jnbi6zlphf] {
        flex-direction: column;
        gap: 32px;
    }

    .product-gallery[b-jnbi6zlphf],
    .product-info[b-jnbi6zlphf] {
/*        flex: 1 1 100%;*/
width: 100%;
    }

    .product-title[b-jnbi6zlphf] {
        font-size: 1.6rem;
    }

    .product-price[b-jnbi6zlphf] {
        font-size: 1.5rem;
    }

    .product-main-image[b-jnbi6zlphf] {
        min-height: 300px;
    }

    .product-main-image-wall-preview[b-jnbi6zlphf] {
        min-height: 0;
        padding: 16px;
    }

    .product-main-image-print-preview[b-jnbi6zlphf] {
        padding: 16px;
    }

    .print-preview-surface[b-jnbi6zlphf] {
        min-height: 0;
    }

    .print-preview-info[b-jnbi6zlphf] {
        left: 16px;
        right: 16px;
        bottom: 16px;
        max-width: none;
    }

    .main-image[b-jnbi6zlphf] {
        max-height: 500px;
    }

    .thumbnail-button[b-jnbi6zlphf] {
        width: 70px;
        height: 70px;
    }

    .product-option-button[b-jnbi6zlphf] {
        min-width: 70px;
        padding: 9px 14px;
        font-size: 0.9rem;
    }

    .quantity-controls[b-jnbi6zlphf] {
        height: 44px;
    }

    .quantity-button[b-jnbi6zlphf] {
        width: 56px;
        font-size: 19px;
    }

    .quantity-display[b-jnbi6zlphf] {
        min-width: 65px;
        font-size: 19px;
    }

    .product-add-to-cart[b-jnbi6zlphf] {
        height: 48px;
        font-size: 1rem;
    }

    .product-like-button[b-jnbi6zlphf] {
        height: 42px;
    }
}

@media (max-width: 480px) {
    .product-details-page[b-jnbi6zlphf] {
        padding: 16px 12px 40px;
    }

    .product-title[b-jnbi6zlphf] {
        font-size: 1.4rem;
    }

    .product-price[b-jnbi6zlphf] {
        font-size: 1.35rem;
    }

    .thumbnail-button[b-jnbi6zlphf] {
        width: 60px;
        height: 60px;
    }

    .product-main-image-wall-preview[b-jnbi6zlphf] {
        padding: 12px;
    }

    .print-preview-surface[b-jnbi6zlphf] {
        min-height: 0;
    }

    .print-preview-sheet[b-jnbi6zlphf] {
        max-width: calc(100% - 32px);
        max-height: calc(100% - 110px);
    }

    .print-preview-info-title[b-jnbi6zlphf] {
        font-size: 0.9rem;
    }

    .print-preview-info-detail[b-jnbi6zlphf] {
        font-size: 0.76rem;
    }

    .product-option-button[b-jnbi6zlphf] {
        min-width: 60px;
        padding: 8px 12px;
        font-size: 0.85rem;
    }

    .quantity-controls[b-jnbi6zlphf] {
        height: 42px;
    }

    .quantity-button[b-jnbi6zlphf] {
        width: 52px;
        font-size: 18px;
    }

    .quantity-display[b-jnbi6zlphf] {
        min-width: 60px;
        font-size: 18px;
    }
}
/* /Components/Pages/Shop.razor.rz.scp.css */
/* CSS for Shop component */
.shop-page[b-67ema3serm] {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 28px 24px 48px;
}

/* -------------------------------------------------------
   Header
------------------------------------------------------- */

.shop-header[b-67ema3serm] {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 32px;
    margin-bottom: 24px;
}

    .shop-header h1[b-67ema3serm] {
        margin: 0 0 6px;
        font-size: 2rem;
        font-weight: 500;
    }

    .shop-header p[b-67ema3serm] {
        margin: 0;
        color: #666;
        font-size: 0.95rem;
    }

/* -------------------------------------------------------
   Search
------------------------------------------------------- */

.shop-search[b-67ema3serm] {
    position: relative;
    display: flex;
    align-items: center;
    width: 340px;
}

    .shop-search input[b-67ema3serm] {
        width: 100%;
        height: 42px;
        padding: 0 42px 0 40px;
        border: 1px solid #d8d8d8;
        border-radius: 6px;
        background: #fff;
        font-size: 0.95rem;
        outline: none;
        transition: border-color 0.15s ease, box-shadow 0.15s ease;
    }

        .shop-search input:focus[b-67ema3serm] {
            border-color: #777;
            box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.05);
        }

.search-icon[b-67ema3serm] {
    position: absolute;
    left: 14px;
    color: #777;
    pointer-events: none;
}

.clear-search[b-67ema3serm] {
    position: absolute;
    right: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    padding: 0;
    border: 0;
    background: transparent;
    color: #777;
    cursor: pointer;
}

/* -------------------------------------------------------
   Toolbar

   CSS Grid deliberately used for three-column layout.
------------------------------------------------------- */

.shop-toolbar[b-67ema3serm] {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 24px;
    padding-bottom: 12px;
    margin-bottom: 16px;
    border-bottom: 1px solid #e8e8e8;
}

/* -------------------------------------------------------
   Toolbar Sections
------------------------------------------------------- */

.toolbar-left[b-67ema3serm] {
    justify-self: start;
}

.toolbar-center[b-67ema3serm] {
    justify-self: center;
}

.toolbar-right[b-67ema3serm] {
    justify-self: end;
}

/* -------------------------------------------------------
   Result Status
------------------------------------------------------- */

.result-status[b-67ema3serm] {
    color: #555;
    font-size: 0.92rem;
    font-weight: 400;
}

/* -------------------------------------------------------
   Category Select
------------------------------------------------------- */

.category-select[b-67ema3serm] {
    min-width: 260px;
    max-width: 280px;
    height: 38px;
    padding: 0 34px 0 12px;
    border: 1px solid #d8d8d8;
    border-radius: 5px;
    background: #fff;
    font-size: 0.9rem;
    cursor: pointer;
}

/* -------------------------------------------------------
   Artwork Grid

   Flexbox deliberately used instead of CSS Grid.
------------------------------------------------------- */

.shop-grid[b-67ema3serm] {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 24px;
}

/* -------------------------------------------------------
   Artwork Card
------------------------------------------------------- */

.shop-card[b-67ema3serm] {
    display: flex;
    flex-direction: column;
    flex: 0 0 calc((100% - 48px) / 3);
    overflow: hidden;
    background: #fff;
    border: 1px solid #e5e5e5;
    border-radius: 6px;
    transition: transform 0.15s ease, box-shadow 0.15s ease;
    cursor: pointer;
}

    .shop-card:hover[b-67ema3serm] {
        transform: translateY(-2px);
        box-shadow: 0 7px 20px rgba(0, 0, 0, 0.08);
    }

    .shop-card:focus[b-67ema3serm] {
        outline: 2px solid #0d6efd;
        outline-offset: 2px;
    }

/* -------------------------------------------------------
   Image
------------------------------------------------------- */

.shop-image-container[b-67ema3serm] {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 210px;
    padding: 12px;
    background: #f7f7f7;
}

.shop-image[b-67ema3serm] {
    display: block;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

/* -------------------------------------------------------
   Card Content
------------------------------------------------------- */

.shop-card-content[b-67ema3serm] {
    padding: 13px 14px 11px;
}

.artwork-name[b-67ema3serm] {
    min-height: 24px;
    margin-bottom: 10px;
    overflow: hidden;
    color: #222;
    font-size: 0.96rem;
    font-weight: 500;
    line-height: 1.3;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* -------------------------------------------------------
   Actions
------------------------------------------------------- */

.shop-actions[b-67ema3serm] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 4px;
    padding-top: 8px;
    border-top: 1px solid #eee;
}

.shop-action[b-67ema3serm] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    width: 34px;
    height: 34px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: transparent;
    color: #555;
    font-size: 1.05rem;
    cursor: pointer;
    transition: background-color 0.15s ease, color 0.15s ease;
}

    .shop-action:hover[b-67ema3serm] {
        background: #f0f0f0;
        color: #000;
    }

    .shop-action.liked[b-67ema3serm] {
        color: #e74c3c;
    }

        .shop-action.liked:hover[b-67ema3serm] {
            color: #c0392b;
        }

    .shop-action .like-count[b-67ema3serm] {
        font-size: 0.8rem;
        font-weight: 500;
        margin-left: 2px;
    }

.like-count-display[b-67ema3serm] {
    display: flex;
    align-items: center;
    gap: 4px;
    color: #777;
    font-size: 0.95rem;
    padding: 4px 8px;
}

    .like-count-display i[b-67ema3serm] {
        font-size: 1.05rem;
    }

/* -------------------------------------------------------
   Empty Search
------------------------------------------------------- */

.no-results[b-67ema3serm] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    padding: 60px 20px;
    color: #888;
    text-align: center;
}

    .no-results i[b-67ema3serm] {
        font-size: 1.6rem;
    }

/* -------------------------------------------------------
   Pagination
------------------------------------------------------- */

.shop-pagination[b-67ema3serm] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-top: 48px;
    padding: 0;
}

.pagination-numbers[b-67ema3serm] {
    display: flex;
    align-items: center;
    gap: 4px;
}

.pagination-btn[b-67ema3serm] {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 38px;
    height: 38px;
    padding: 0 12px;
    border: 1px solid #d8d8d8;
    border-radius: 5px;
    background: #fff;
    color: #555;
    font-size: 0.9rem;
    font-weight: 400;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
    white-space: nowrap;
}

    .pagination-btn:hover:not(:disabled):not(.active)[b-67ema3serm] {
        background: #f8f8f8;
        border-color: #999;
        color: #222;
    }

    .pagination-btn:disabled[b-67ema3serm] {
        opacity: 0.4;
        cursor: not-allowed;
    }

    .pagination-btn.active[b-67ema3serm] {
        background: #222;
        border-color: #222;
        color: #fff;
        font-weight: 500;
        cursor: default;
    }

.pagination-first[b-67ema3serm],
.pagination-prev[b-67ema3serm],
.pagination-next[b-67ema3serm],
.pagination-last[b-67ema3serm] {
    padding: 0;
    min-width: 38px;
}

    .pagination-first i[b-67ema3serm],
    .pagination-prev i[b-67ema3serm],
    .pagination-next i[b-67ema3serm],
    .pagination-last i[b-67ema3serm] {
        font-size: 1rem;
    }

.pagination-number[b-67ema3serm] {
    min-width: 38px;
    padding: 0 8px;
}

.pagination-ellipsis[b-67ema3serm] {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 38px;
    height: 38px;
    color: #999;
    font-size: 0.9rem;
}

/* -------------------------------------------------------
   Responsive
------------------------------------------------------- */

/* Medium screens: 2 cards per row */
@media (max-width: 1100px) {
    .shop-card[b-67ema3serm] {
        flex: 0 0 calc((100% - 24px) / 2);
    }
}

/* Small screens: 1 card per row */
@media (max-width: 650px) {
    .shop-card[b-67ema3serm] {
        flex: 0 0 100%;
    }
}

/* Mobile: toolbar and grid adjustments */
@media (max-width: 760px) {

    .shop-page[b-67ema3serm] {
        padding: 20px 16px 40px;
    }

    .shop-toolbar[b-67ema3serm] {
        grid-template-columns: 1fr;
        gap: 14px;
        padding-bottom: 14px;
        margin-bottom: 18px;
    }

    .toolbar-left[b-67ema3serm],
    .toolbar-center[b-67ema3serm],
    .toolbar-right[b-67ema3serm] {
        justify-self: stretch;
    }

    .result-status[b-67ema3serm] {
        text-align: center;
    }

    .shop-search[b-67ema3serm] {
        width: 100%;
    }

    .category-select[b-67ema3serm] {
        width: 100%;
        min-width: auto;
        max-width: none;
    }

    .shop-grid[b-67ema3serm] {
        justify-content: center;
        gap: 16px;
    }

    .shop-pagination[b-67ema3serm] {
        gap: 6px;
        margin-top: 32px;
    }

    .pagination-btn[b-67ema3serm] {
        min-width: 36px;
        height: 36px;
        font-size: 0.85rem;
    }

    .pagination-first[b-67ema3serm],
    .pagination-prev[b-67ema3serm],
    .pagination-next[b-67ema3serm],
    .pagination-last[b-67ema3serm] {
        min-width: 36px;
    }

        .pagination-first i[b-67ema3serm],
        .pagination-prev i[b-67ema3serm],
        .pagination-next i[b-67ema3serm],
        .pagination-last i[b-67ema3serm] {
            font-size: 0.9rem;
        }

    .pagination-numbers[b-67ema3serm] {
        gap: 3px;
    }

    .pagination-number[b-67ema3serm] {
        min-width: 36px;
        padding: 0 6px;
    }

    .pagination-ellipsis[b-67ema3serm] {
        min-width: 36px;
        height: 36px;
        font-size: 0.85rem;
    }
}
/* /Components/Shared/Checkout/AddressEditor.razor.rz.scp.css */
.address-editor-field-grid[b-6uj6qsqhgt] {
    display: flex;
    flex-wrap: wrap;
    gap: 14px 12px;
}

.address-editor-field[b-6uj6qsqhgt] {
    flex: 1 1 calc(50% - 6px);
    min-width: 0;
}

.address-editor-field-full[b-6uj6qsqhgt] {
    flex-basis: 100%;
}

.address-editor-field :deep(.validation-message)[b-6uj6qsqhgt] {
    display: block;
    margin-top: 4px;
    color: #9a1f1f;
    font-size: 0.88rem;
}

.address-editor-country-code-input[b-6uj6qsqhgt] {
    text-transform: uppercase;
}

@media (max-width: 576px) {
    .address-editor-field[b-6uj6qsqhgt] {
        flex-basis: 100%;
    }
}
/* /Components/Shared/Contact/ContactForm.razor.rz.scp.css */

.action-button-container[b-0z8d94f20v] {
    display:flex;
    justify-content: flex-end;
    align-content: center;
}
.contact-form-shell[b-0z8d94f20v] {
    width: 100%;
}

.contact-form[b-0z8d94f20v] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.contact-form-grid[b-0z8d94f20v] {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    margin-bottom: 20px;
}

.contact-form-field[b-0z8d94f20v] {
    flex: 1 1 16rem;
    min-width: 0;
}

.contact-form-field-full[b-0z8d94f20v] {
    flex-basis: 100%;
}

.contact-form-field :deep(.validation-message)[b-0z8d94f20v] {
    display: block;
    margin-top: 0.35rem;
    color: #b42318;
    font-size: 0.92rem;
}

.contact-form-status[b-0z8d94f20v] {
    margin-bottom: 0;
}

.contact-form-status-title[b-0z8d94f20v],
.contact-form-status-copy[b-0z8d94f20v] {
    margin: 0;
}

.contact-form-status-copy[b-0z8d94f20v] {
    margin-top: 0.35rem;
}

.contact-form-actions[b-0z8d94f20v] {
    display: flex;
    justify-content: flex-end;
}

.optional-text[b-0z8d94f20v] {
    font-size: 0.9rem
}

@media (max-width: 640px) {
    .contact-form-grid[b-0z8d94f20v] {
        gap: 0.9rem;
    }

    .contact-form-field[b-0z8d94f20v] {
        flex-basis: 100%;
    }
}
/* /Components/Shared/Gallery/GalleryLightbox.razor.rz.scp.css */
.gallery-lightbox-backdrop[b-kuwx1tkn1t] {
    position: fixed;
    inset: 0;
    background: rgba(10, 10, 10, 0.78);
    z-index: 1040;
}

.gallery-lightbox[b-kuwx1tkn1t] {
    position: fixed;
    inset: 0;
    z-index: 1050;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
}

.gallery-lightbox-panel[b-kuwx1tkn1t] {
    position: relative;
    width: min(100%, 78rem);
    max-height: calc(100vh - 2rem);
    border: 1px solid rgba(255, 255, 255, 0.2);
    background: rgba(255, 255, 255, 0.98);
    box-shadow: 0 22px 64px rgba(0, 0, 0, 0.2);
    overflow: hidden;
}

.gallery-lightbox-close[b-kuwx1tkn1t] {
    position: absolute;
    top: 0.8rem;
    right: 0.8rem;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.75rem;
    height: 2.75rem;
    border: 1px solid #d7d7d7;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.94);
    color: #1f1f1f;
    padding: 0;
}

    .gallery-lightbox-close:hover[b-kuwx1tkn1t] {
        border-color: #bdbdbd;
        background: #fff;
    }

    .gallery-lightbox-close:focus-visible[b-kuwx1tkn1t],
    .gallery-lightbox-nav:focus-visible[b-kuwx1tkn1t] {
        outline: none;
        box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.12);
    }

.gallery-lightbox-body[b-kuwx1tkn1t] {
    display: flex;
    align-items: center;
    gap: clamp(0.75rem, 2vw, 1.25rem);
    padding: clamp(1rem, 2.5vw, 1.5rem);
    max-height: calc(100vh - 2rem);
    overflow-y: auto;
}

.gallery-lightbox-nav[b-kuwx1tkn1t] {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 3rem;
    height: 3rem;
    border: 1px solid #d7d7d7;
    border-radius: 999px;
    background: #fff;
    color: #1f1f1f;
    padding: 0;
}

.gallery-lightbox-content[b-kuwx1tkn1t] {
    flex: 1 1 auto;
    min-width: 0;
    display: grid;
    grid-template-columns: minmax(0, 1.45fr) minmax(16rem, 22rem);
    gap: clamp(1rem, 3vw, 2rem);
    align-items: start;
}

.gallery-lightbox-image-shell[b-kuwx1tkn1t] {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 0;
    border: 1px solid #eceae6;
    background: #faf8f4;
    padding: clamp(0.75rem, 2vw, 1rem);
}

.gallery-lightbox-image[b-kuwx1tkn1t] {
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: min(76vh, 56rem);
    object-fit: contain;
}

.gallery-lightbox-details[b-kuwx1tkn1t] {
    display: flex;
    flex-direction: column;
    gap: 0.7rem;
    align-self: center;
    min-width: 0;
}

    .gallery-lightbox-details h2[b-kuwx1tkn1t] {
        margin: 0;
        font-size: clamp(1.5rem, 2.6vw, 2.15rem);
        font-weight: 500;
        line-height: 1.12;
    }

.gallery-lightbox-count[b-kuwx1tkn1t],
.gallery-lightbox-location[b-kuwx1tkn1t],
.gallery-lightbox-description[b-kuwx1tkn1t] {
    margin: 0;
}

.gallery-lightbox-count[b-kuwx1tkn1t] {
    color: #767676;
    font-size: 0.88rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.gallery-lightbox-location[b-kuwx1tkn1t] {
    color: #666;
    font-size: 0.98rem;
    line-height: 1.55;
}

.gallery-lightbox-description[b-kuwx1tkn1t] {
    color: #3b3b3b;
    font-size: 0.98rem;
    line-height: 1.7;
}

.gallery-lightbox-actions[b-kuwx1tkn1t] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.65rem 1.25rem;
    margin-top: 0.2rem;
}

.gallery-lightbox-action[b-kuwx1tkn1t] {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    border: 0;
    background: transparent;
    color: inherit;
    padding: 0;
    font-size: 0.93rem;
    line-height: 1.5;
    font-weight: 600;
    text-decoration: none;
    cursor: pointer;
}

.gallery-lightbox-link[b-kuwx1tkn1t] {
    align-self: flex-start;
    margin-top: 0.2rem;
}

button.gallery-lightbox-action:hover:not(:disabled)[b-kuwx1tkn1t],
a.gallery-lightbox-action:hover[b-kuwx1tkn1t] {
    color: #1f1f1f;
    text-decoration: none;
}

button.gallery-lightbox-action:focus-visible[b-kuwx1tkn1t],
a.gallery-lightbox-action:focus-visible[b-kuwx1tkn1t] {
    outline: none;
    border-radius: 0.35rem;
    box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.08);
}

button.gallery-lightbox-action:disabled[b-kuwx1tkn1t] {
    opacity: 0.65;
    cursor: default;
}

.gallery-lightbox-favorite[b-kuwx1tkn1t] {
    cursor: pointer;
}

    .gallery-lightbox-favorite i[b-kuwx1tkn1t] {
        font-size: 0.98rem;
        color: #1f1f1f;
    }

    .gallery-lightbox-favorite.is-active[b-kuwx1tkn1t] {
        color: inherit;
    }

    .gallery-lightbox-favorite.is-active i[b-kuwx1tkn1t] {
        color: #b42318;
    }

.gallery-lightbox-auth-prompt[b-kuwx1tkn1t] {
    margin: 0;
    color: #3b3b3b;
    font-size: 0.88rem;
    line-height: 1.5;
}

.gallery-lightbox-auth-link[b-kuwx1tkn1t] {
    color: inherit;
    font-weight: 600;
    text-decoration: none;
    cursor: pointer;
}

    .gallery-lightbox-auth-link:hover[b-kuwx1tkn1t] {
        color: #1f1f1f;
        text-decoration: none;
    }

    .gallery-lightbox-auth-link:focus-visible[b-kuwx1tkn1t] {
        outline: none;
        border-radius: 0.35rem;
        box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.08);
    }

.gallery-lightbox-action-error[b-kuwx1tkn1t] {
    margin: 0;
    color: #7a2f2f;
    font-size: 0.88rem;
    line-height: 1.5;
}

@media (max-width: 1040px) {
    .gallery-lightbox-content[b-kuwx1tkn1t] {
        grid-template-columns: minmax(0, 1fr) minmax(15rem, 19rem);
    }
}

@media (max-width: 820px) {
    .gallery-lightbox-body[b-kuwx1tkn1t] {
        display: grid;
        grid-template-columns: 1fr 1fr;
        grid-template-areas:
            "content content"
            "previous next";
        align-items: start;
    }

    .gallery-lightbox-content[b-kuwx1tkn1t] {
        grid-area: content;
        grid-template-columns: 1fr;
    }

    .gallery-lightbox-nav-previous[b-kuwx1tkn1t] {
        grid-area: previous;
        justify-self: start;
    }

    .gallery-lightbox-nav-next[b-kuwx1tkn1t] {
        grid-area: next;
        justify-self: end;
    }

    .gallery-lightbox-image[b-kuwx1tkn1t] {
        max-height: min(58vh, 42rem);
    }
}

@media (max-width: 560px) {
    .gallery-lightbox[b-kuwx1tkn1t] {
        padding: 0;
    }

    .gallery-lightbox-panel[b-kuwx1tkn1t] {
        width: 100%;
        height: 100%;
        max-height: none;
        border: 0;
    }

    .gallery-lightbox-body[b-kuwx1tkn1t] {
        max-height: 100vh;
        padding-top: 4rem;
    }

    .gallery-lightbox-close[b-kuwx1tkn1t] {
        top: 0.75rem;
        right: 0.75rem;
    }

    .gallery-lightbox-actions[b-kuwx1tkn1t] {
        gap: 0.6rem 1rem;
    }
}
/* /Components/Shared/Home/HomeNews.razor.rz.scp.css */
.home-news[b-zjcoinum7o] {
    --news-card-height: 20rem;
    --home-news-card-gap: clamp(1rem, 2vw, 1.35rem);
    --news-summary-height: 7.5rem;
    margin-top: 0;
    padding-top: clamp(0.95rem, 1.8vw, 1.25rem);
    padding-bottom: clamp(1.6rem, 3vw, 2.1rem);
    border-top: 1px solid #d8d8d8;
    border-bottom: 1px solid #d8d8d8;
    display: flex;
    flex-direction: column;
    gap: clamp(1.1rem, 2.2vw, 1.55rem);
    width: 100%;
    align-self: stretch;
}

.home-news-header[b-zjcoinum7o] {
    text-align: center;
    display: flex;
    flex-direction: column;
    gap: 0.55rem;
}

.home-news-header h2[b-zjcoinum7o] {
    margin: 0;
    font-size: clamp(1.2rem, 2.7vw, 1.75rem);
    letter-spacing: 0.14em;
    font-weight: 550;
}

.home-news-header p[b-zjcoinum7o] {
    margin: 0 auto;
    max-width: 44rem;
    color: #4a4a4a;
}

.home-news-carousel[b-zjcoinum7o] {
    display: flex;
    align-items: center;
    justify-content: stretch;
    gap: clamp(0.65rem, 1.5vw, 0.9rem);
    width: 100%;
}

.home-news-carousel-mobile[b-zjcoinum7o] {
    display: none;
}

.home-news-carousel-viewport[b-zjcoinum7o] {
    flex: 1 1 auto;
    min-width: 0;
}

.home-news-carousel-control[b-zjcoinum7o] {
    width: 2.6rem;
    height: 2.6rem;
    padding: 0;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
}

.home-news-carousel-control:disabled[b-zjcoinum7o] {
    opacity: 0.45;
}

.home-news-carousel-control .bi[b-zjcoinum7o] {
    font-size: 1rem;
}

.news-articles[b-zjcoinum7o] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    justify-content: stretch;
    align-items: stretch;
    gap: var(--home-news-card-gap);
    width: 100%;
}

@media (max-width: 900px) {
    .home-news-carousel-desktop[b-zjcoinum7o] {
        display: none;
    }

    .home-news-carousel-mobile[b-zjcoinum7o] {
        display: flex;
    }

    .home-news-carousel-mobile .news-articles[b-zjcoinum7o] {
        grid-template-columns: minmax(0, 1fr);
    }

    .home-news-carousel-mobile .news-card[b-zjcoinum7o] {
        width: 100%;
    }

    .home-news[b-zjcoinum7o] {
        --news-card-height: 18.5rem;
        --news-summary-height: 7rem;
        padding-top: 0.85rem;
        padding-bottom: 1.75rem;
    }
}
/* /Components/Shared/Home/PhotoCard.razor.rz.scp.css */
.photo-card[b-46lfdwnta2] {
    width: 250px;
    min-width: 250px;
    max-width: 250px;
    flex: 0 0 250px;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    padding: 0.75rem;
    border: 1px solid #dcdcdc;
    border-radius: 8px;
    background-color: #fff;
}

.photo-card-link[b-46lfdwnta2],
.photo-card-image-link[b-46lfdwnta2] {
    color: inherit;
    text-decoration: none;
}

.photo-card-link[b-46lfdwnta2] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    min-height: 100%;
}

.photo-card-image[b-46lfdwnta2] {
    width: 200px;
    height: 200px;
    object-fit: cover;
    display: block;
    margin-left: auto;
    margin-right: auto;
    flex: 0 0 auto;
    border-radius: 4px;
}

.photo-card-title[b-46lfdwnta2] {
    margin: 0;
    font-size: 0.95rem;
    line-height: 1.2;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.photo-card-subtitle[b-46lfdwnta2] {
    margin: 0;
    font-size: 0.82rem;
    line-height: 1.25;
    color: #5a5a5a;
    min-height: 1.05rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.card-actions[b-46lfdwnta2] {
    display: flex;
    flex-direction: row;
    justify-content: space-around;
    align-items: center;
    width: 100%;
    margin-top: auto;
    padding-top: 0.35rem;
}

.card-action-link[b-46lfdwnta2] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    color: #1f1f1f;
    text-decoration: none;
    font-size: 0.82rem;
}

.action-label[b-46lfdwnta2] {
    line-height: 1;
}

.photo-card-category .photo-card-title[b-46lfdwnta2] {
    margin-top: 0.2rem;
}
/* /Components/Shared/Home/PhotoCollage.razor.rz.scp.css */
.photo-collage[b-l96427rlfm] {
    display: flex;
    flex-direction: column;
    gap: clamp(1rem, 2vw, 1.75rem);
}

.collage-empty[b-l96427rlfm] {
    margin: 0;
    color: #5f5f5f;
    text-align: center;
}

.home-featured-photos[b-l96427rlfm] {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    gap: clamp(1.5rem, 3vw, 2rem);
    width: 100%;
}

.home-featured-photo[b-l96427rlfm] {
    flex: 0 1 40%;
    max-width: 560px;
    min-width: 0;
}

.featured-photo-link[b-l96427rlfm] {
    position: relative;
    display: block;
    color: inherit;
    text-decoration: none;
    overflow: hidden;
    border-radius: 4px;
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.featured-photo-link:hover[b-l96427rlfm],
.featured-photo-link:focus-visible[b-l96427rlfm] {
    transform: translateY(-2px);
}

.featured-photo-image[b-l96427rlfm] {
    width: 100%;
    height: auto;
    max-height: 360px;
    display: block;
    object-fit: contain;
    background: #f5f3ef;
}

.featured-photo-overlay[b-l96427rlfm] {
    position: absolute;
    inset: auto 0 0 0;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    padding: 1rem 1.05rem;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.56), rgba(0, 0, 0, 0.05));
    color: #fff;
    opacity: 0;
    transform: translateY(8px);
    transition: opacity 0.2s ease, transform 0.2s ease;
}

.featured-photo-link:hover .featured-photo-overlay[b-l96427rlfm],
.featured-photo-link:focus-visible .featured-photo-overlay[b-l96427rlfm] {
    opacity: 1;
    transform: translateY(0);
}

.featured-photo-title[b-l96427rlfm] {
    font-size: 0.98rem;
    font-weight: 500;
    line-height: 1.25;
}

.featured-photo-location[b-l96427rlfm],
.featured-photo-view[b-l96427rlfm] {
    font-size: 0.82rem;
    line-height: 1.2;
}

@media (max-width: 900px) {
    .home-featured-photos[b-l96427rlfm] {
        flex-direction: column;
        align-items: stretch;
        gap: 1.25rem;
    }

    .home-featured-photo[b-l96427rlfm] {
        flex-basis: auto;
        max-width: none;
    }

    .featured-photo-overlay[b-l96427rlfm] {
        opacity: 1;
        transform: none;
    }
}
/* /Components/Shared/News/NewsArticleCard.razor.rz.scp.css */
.news-card[b-dniz7ypwx2] {
    width: 100%;
    height: var(--news-card-height, 20rem);
    min-height: var(--news-card-height, 20rem);
    min-width: 0;
    background-color: #fffdf9;
    border: 1px solid rgba(0, 0, 0, 0.1);
    border-radius: 6px;
    box-shadow: 0 3px 14px rgba(0, 0, 0, 0.06);
    transition: transform 0.25s ease, box-shadow 0.25s ease;
    overflow: hidden;
}

.news-card-body[b-dniz7ypwx2] {
    display: flex;
    flex-direction: column;
    gap: 0;
    height: 100%;
    min-height: 0;
    overflow: hidden;
    padding: clamp(1.15rem, 1.8vw, 1.45rem);
}

.news-card-content[b-dniz7ypwx2] {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    gap: 0.9rem;
    min-height: 0;
    overflow: hidden;
}

.news-card:hover[b-dniz7ypwx2] {
    transform: translateY(-3px);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1);
}

.news-category[b-dniz7ypwx2] {
    margin: 0;
    padding-bottom: 0.45rem;
    border-bottom: 1px solid rgba(0, 0, 0, 0.08);
    font-size: 0.82rem;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    color: #6b6258;
    font-weight: 600;
}

.news-title[b-dniz7ypwx2] {
    margin: 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.2rem, 1.7vw, 1.5rem);
    line-height: 1.15;
    font-weight: 500;
    letter-spacing: -0.01em;
    color: #171717;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    line-clamp: 3;
    overflow: hidden;
}

.news-summary[b-dniz7ypwx2] {
    margin: 0;
    color: #333;
    font-size: clamp(0.96rem, 1vw, 1.02rem);
    line-height: 1.55;
}

.news-summary-region[b-dniz7ypwx2] {
    flex: 0 0 var(--news-summary-height, 7.5rem);
    min-height: var(--news-summary-height, 7.5rem);
    max-height: var(--news-summary-height, 7.5rem);
    overflow-x: hidden;
    overflow-y: auto;
    padding-right: 0.35rem;
    scrollbar-gutter: stable;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
}

.news-impact-region[b-dniz7ypwx2] {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    gap: 0.35rem;
    min-height: 0;
    overflow: hidden;
}

.news-impact-label[b-dniz7ypwx2] {
    margin: 0;
    color: #6b6258;
    font-size: 0.76rem;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.news-impact-copy[b-dniz7ypwx2] {
    flex: 1 1 auto;
    min-height: 0;
    overflow-x: hidden;
    overflow-y: auto;
    padding-right: 0.35rem;
    scrollbar-gutter: stable;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
}

.news-impact[b-dniz7ypwx2] {
    margin: 0;
    color: #333;
    font-size: 0.94rem;
    line-height: 1.5;
}

.news-card-footer[b-dniz7ypwx2] {
    flex: 0 0 auto;
    margin-top: auto;
    padding-top: 0.95rem;
    border-top: 1px solid rgba(0, 0, 0, 0.08);
}

.news-meta[b-dniz7ypwx2] {
    margin: 0;
    font-size: 0.88rem;
    color: #696969;
    line-height: 1.4;
}

.news-card-footer .news-link[b-dniz7ypwx2] {
    display: inline-block;
    margin-top: 0.45rem;
}

.news-link[b-dniz7ypwx2] {
    width: fit-content;
    font-size: 0.95rem;
    color: inherit;
    text-decoration: underline;
    text-underline-offset: 0.18em;
    text-decoration-thickness: 1px;
    transition: color 0.15s ease, transform 0.15s ease;
}

.news-link:hover[b-dniz7ypwx2] {
    color: #000;
    transform: translateX(1px);
}
/* /Components/Shared/WallPreview.razor.rz.scp.css */
/* Wall Preview Component Styles */

.wall-preview[b-54cl1a9k2r] {
    display: block;
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
}

.wall-preview-container[b-54cl1a9k2r] {
    position: relative;
    display: block;
    width: 100%;
    max-width: 100%;
    aspect-ratio: var(--wall-preview-design-width) / var(--wall-preview-design-height);
    overflow: hidden;
    background-color: #f5f5f5;
}

.room-image[b-54cl1a9k2r] {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* Artwork positioner - centers artwork at anchor point */
.wall-art-positioner[b-54cl1a9k2r] {
    position: absolute;
    left: var(--anchor-x, 50%);
    top: var(--anchor-y, 30%);
    transform: translate(-50%, -50%);
    z-index: 10;
}

/* Frame - outer black molding */
.frame[b-54cl1a9k2r] {
    position: relative;
    width: 100%;
    height: 100%;
    background-color: #1a1a1a;
    /* Thin frame border - matches Bay Photo reference */
    /* Border is OUTSIDE the matted area (content-box) */
    border: 4px solid #000;
    box-shadow: 
        2px 3px 6px rgba(0, 0, 0, 0.15),
        4px 6px 12px rgba(0, 0, 0, 0.2),
        6px 9px 18px rgba(0, 0, 0, 0.25);
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: content-box;
}

/* Subtle frame bevel effect */
.frame[b-54cl1a9k2r]::before {
    content: '';
    position: absolute;
    top: 2px;
    left: 2px;
    right: 2px;
    bottom: 2px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    pointer-events: none;
    z-index: 1;
}

/* Mat - white/off-white matting (fills the frame completely) */
.mat[b-54cl1a9k2r] {
    position: relative;
    width: 100%;
    height: 100%;
    background-color: #fafaf8;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    /* Subtle mat texture */
    background-image: 
        linear-gradient(
            rgba(0, 0, 0, 0.01) 1px, 
            transparent 1px
        );
    background-size: 100% 2px;
}

/* Mat color variants */
.mat.mat-black[b-54cl1a9k2r] {
    background-color: #0f0f0f; /* deep charcoal for black mat */
}

.mat.mat-white[b-54cl1a9k2r] {
    background-color: #fafaf8; /* explicit white mat (default) */
}

/* Mat inner shadow for depth */
.mat[b-54cl1a9k2r]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    box-shadow: inset 0 0 4px rgba(0, 0, 0, 0.1);
    pointer-events: none;
    z-index: 1;
}

/* Artwork opening - sized to exact physical dimensions (ImageWidth × ImageHeight) */
.artwork-opening[b-54cl1a9k2r] {
    position: relative;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    z-index: 2;
}

/* Artwork image - fills the artwork opening completely */
.artwork[b-54cl1a9k2r] {
    width: 100%;
    height: 100%;
    /* Use contain to preserve aspect ratio - Bay Photo images are pre-cropped for each size */
    object-fit: contain;
    object-position: center;
    display: block;
}

/* Placeholder for missing room */
.wall-preview-placeholder[b-54cl1a9k2r] {
    padding: 3rem;
    text-align: center;
    background-color: #f5f5f5;
    border: 2px dashed #ccc;
    border-radius: 8px;
    color: #666;
}

.wall-preview-placeholder p[b-54cl1a9k2r] {
    margin: 0;
    font-size: 1rem;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .wall-preview[b-54cl1a9k2r] {
        max-width: 100%;
    }

    .wall-preview-container[b-54cl1a9k2r] {
        min-height: 0;
    }
}

/* Product size overlay - customer-facing size information */
.size-overlay[b-54cl1a9k2r] {
    position: absolute;
    left: 12px;
    bottom: 12px;
    z-index: 1000;

    width: auto;
    max-width: calc(100% - 24px);

    padding: 7px 10px;

    background: rgba(0, 0, 0, 0.68);
    color: #fff;

    border-radius: 5px;

    font-family: inherit;
    line-height: 1.25;

    pointer-events: none;
}

.size-overlay-title[b-54cl1a9k2r] {
    font-size: 0.85rem;
    font-weight: 600;
    margin-bottom: 2px;
}

.size-overlay-subtitle[b-54cl1a9k2r] {
    font-size: 0.72rem;
    font-weight: 400;
    color: rgba(255, 255, 255, 0.82);
    margin-bottom: 2px;
}

.size-overlay-dimensions[b-54cl1a9k2r] {
    font-size: 0.75rem;
    margin-bottom: 2px;
}

.size-overlay-disclaimer[b-54cl1a9k2r] {
    font-size: 0.67rem;
    opacity: 0.78;
}

/* Frame color variants - controlled by Product Details via a CSS class on the frame element */
.frame.frame-white[b-54cl1a9k2r] {
    background-color: #ffffff;
    border-color: #ffffff;
    /* Keep subtle bevel but adjust inner highlight for light frames */
}

.frame.frame-black[b-54cl1a9k2r] {
    background-color: #1a1a1a;
    border-color: #000000;
}

/* Unframed wall-preview media share the same calibrated geometry. */
.unframed-panel[b-54cl1a9k2r] {
    position: relative;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.unframed-panel[b-54cl1a9k2r]::before,
.unframed-panel[b-54cl1a9k2r]::after {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
}

.unframed-panel.material-metal[b-54cl1a9k2r] {
    box-shadow: 
        2px 3px 6px rgba(0, 0, 0, 0.12),
        4px 6px 12px rgba(0, 0, 0, 0.15);
}

.unframed-panel.material-metal[b-54cl1a9k2r]::before {
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.14);
}

.unframed-panel.material-canvas[b-54cl1a9k2r] {
    box-shadow:
        3px 5px 10px rgba(0, 0, 0, 0.13),
        7px 12px 20px rgba(0, 0, 0, 0.17);
}

.unframed-panel.material-canvas[b-54cl1a9k2r]::before {
    box-shadow:
        inset 0 0 0 1px rgba(255, 255, 255, 0.08),
        inset -5px 0 8px rgba(0, 0, 0, 0.06),
        inset 0 -5px 8px rgba(0, 0, 0, 0.05);
}

.unframed-panel.material-canvas[b-54cl1a9k2r]::after {
    opacity: 0.14;
    background-image:
        repeating-linear-gradient(
            0deg,
            rgba(255, 255, 255, 0.06) 0,
            rgba(255, 255, 255, 0.06) 1px,
            rgba(0, 0, 0, 0.03) 1px,
            rgba(0, 0, 0, 0.03) 2px,
            transparent 2px,
            transparent 5px
        ),
        repeating-linear-gradient(
            90deg,
            rgba(255, 255, 255, 0.025) 0,
            rgba(255, 255, 255, 0.025) 1px,
            transparent 1px,
            transparent 6px
        );
    mix-blend-mode: soft-light;
}

.unframed-panel.material-wood[b-54cl1a9k2r] {
    box-shadow:
        2px 4px 8px rgba(0, 0, 0, 0.11),
        5px 9px 16px rgba(0, 0, 0, 0.15);
}

.unframed-panel.material-wood[b-54cl1a9k2r]::before {
    background:
        linear-gradient(rgba(224, 198, 164, 0.1), rgba(224, 198, 164, 0.1)),
        repeating-linear-gradient(
            90deg,
            rgba(137, 101, 53, 0.035) 0,
            rgba(137, 101, 53, 0.035) 2px,
            rgba(255, 255, 255, 0.02) 2px,
            rgba(255, 255, 255, 0.02) 5px,
            transparent 5px,
            transparent 12px
        );
    mix-blend-mode: multiply;
    opacity: 0.18;
}

.unframed-panel.material-wood[b-54cl1a9k2r]::after {
    background: linear-gradient(180deg, rgba(255, 244, 227, 0.08), rgba(120, 88, 44, 0.06));
    mix-blend-mode: soft-light;
}

/* Unframed artwork - edge-to-edge without cropping or stretching */
.unframed-artwork[b-54cl1a9k2r] {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
    display: block;
}

.unframed-panel.material-wood .unframed-artwork[b-54cl1a9k2r] {
    filter: saturate(0.93) contrast(0.95) brightness(0.99) sepia(0.08);
}

