/* /Components/Account/Pages/Manage/EnableAuthenticator.razor.rz.scp.css */
.setup-steps[b-rbkpgns7n4] {
    display: grid;
    gap: var(--space-4);
    margin: 0;
    padding-left: var(--space-5);
}

.shared-key[b-rbkpgns7n4] {
    display: inline-block;
    padding: var(--space-2) var(--space-3);
    font-size: var(--text-lg);
    letter-spacing: 0.08em;
    word-break: break-all;
}

.authenticator-qr[b-rbkpgns7n4] {
    display: block;
    margin: var(--space-2) 0 var(--space-3);
}
/* /Components/Account/Pages/Manage/Passkeys.razor.rz.scp.css */
.passkeys[b-l5r586hrdr] {
    margin-bottom: var(--space-5);
}

.passkeys__actions[b-l5r586hrdr] {
    justify-content: flex-end;
    margin: 0;
}
/* /Components/Account/Shared/AccountLayout.razor.rz.scp.css */
.account[b-z1ij9l1vfl] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--space-5);
    min-height: 100vh;
    padding: var(--space-7) var(--space-4);
    background: var(--color-surface-alt);
}

.account__logo[b-z1ij9l1vfl] {
    font-size: 1.25rem;
    text-decoration: none;
}

.account__card[b-z1ij9l1vfl] {
    width: min(100%, 27rem);
    padding: var(--space-6);
    border-radius: var(--radius);
    background: var(--color-surface);
    box-shadow: var(--shadow-card);
}

.account__card[b-z1ij9l1vfl]  h1 {
    font-size: var(--text-xl);
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

.account__card[b-z1ij9l1vfl]  .account-links {
    display: grid;
    gap: var(--space-2);
    margin: var(--space-5) 0 0;
    font-size: var(--text-sm);
}
/* /Components/Account/Shared/ManageLayout.razor.rz.scp.css */
.manage[b-lihfxa4sp7] {
    min-height: 100vh;
    padding: var(--space-6) var(--space-4);
    background: var(--color-surface-alt);
}

.manage__header[b-lihfxa4sp7] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-4);
    max-width: 64rem;
    margin: 0 auto var(--space-5);
}

.manage__logo[b-lihfxa4sp7] {
    font-size: 1.25rem;
    text-decoration: none;
}

.manage__back[b-lihfxa4sp7] {
    font-size: var(--text-sm);
    font-weight: 600;
}

.manage__card[b-lihfxa4sp7] {
    max-width: 64rem;
    margin: 0 auto;
    padding: var(--space-6);
    border-radius: var(--radius);
    background: var(--color-surface);
    box-shadow: var(--shadow-card);
}

.manage__title[b-lihfxa4sp7] {
    margin-bottom: var(--space-5);
    font-size: var(--text-xl);
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

.manage__body[b-lihfxa4sp7] {
    display: grid;
    grid-template-columns: 14rem minmax(0, 1fr);
    gap: var(--space-6);
}

.manage__content[b-lihfxa4sp7] {
    max-width: 34rem;
}

.manage__content[b-lihfxa4sp7]  h2 {
    font-size: var(--text-lg);
}

.manage__content[b-lihfxa4sp7]  h3 {
    margin-top: var(--space-5);
    font-size: var(--text-base);
}

@media (max-width: 48rem) {
    .manage__body[b-lihfxa4sp7] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Account/Shared/ManageNavMenu.razor.rz.scp.css */
.manage-nav[b-ula3hxbs3d] {
    display: grid;
    gap: var(--space-1);
    margin: 0;
    padding: 0;
    list-style: none;
}

/* the links are rendered by NavLink, so they need ::deep */
.manage-nav[b-ula3hxbs3d]  a {
    display: block;
    padding: var(--space-2) var(--space-3);
    border-radius: var(--radius-sm);
    color: var(--color-ink);
    font-size: var(--text-sm);
    font-weight: 600;
    text-decoration: none;
}

.manage-nav[b-ula3hxbs3d]  a:hover {
    background: var(--color-surface-alt);
}

.manage-nav[b-ula3hxbs3d]  a.active {
    background: #fff4ea;
    box-shadow: inset 3px 0 0 var(--color-brand);
    color: var(--color-brand-dark);
}
/* /Components/Account/Shared/ShowRecoveryCodes.razor.rz.scp.css */
.recovery-codes[b-c49n13qc74] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-2);
    margin: 0;
    padding: 0;
    list-style: none;
}

.recovery-codes code[b-c49n13qc74] {
    display: block;
    padding: var(--space-2) var(--space-3);
    font-size: var(--text-base);
    text-align: center;
    letter-spacing: 0.05em;
}
/* /Components/Admin/AdminSubNav.razor.rz.scp.css */
/* like MudTabs: grey labels, the current one dark with an orange line; scrolls sideways on a narrow phone */
.subnav[b-814lkja542] {
    display: flex;
    gap: 0.25rem;
    margin: 0 0 1.25rem;
    border-bottom: 1px solid #e6e6e1;
    overflow-x: auto;
    scrollbar-width: none;
}

.subnav__link[b-814lkja542] {
    flex: none;
    padding: 0.7rem 0.9rem 0.6rem;
    border-bottom: 2px solid transparent;
    color: var(--mud-palette-text-secondary);
    font-size: 0.875rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-decoration: none;
    text-transform: uppercase;
    white-space: nowrap;
}

.subnav__link:hover[b-814lkja542] {
    color: var(--mud-palette-text-primary);
}

.subnav__link--current[b-814lkja542] {
    border-bottom-color: var(--color-brand);
    color: var(--mud-palette-text-primary);
}
/* /Components/Admin/ComplaintFields.razor.rz.scp.css */
.complaint-fields[b-k3ol8yvpsp] {
    display: grid;
    gap: 1.25rem;
}

.complaint-fields__part[b-k3ol8yvpsp] {
    display: grid;
    gap: 0.25rem;
}

.complaint-fields__title[b-k3ol8yvpsp] {
    margin: 0;
    color: var(--color-muted);
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}
/* /Components/Admin/DiscountSendDialog.razor.rz.scp.css */
.send[b-6q4vpjfr09] {
    display: grid;
    gap: 0.6rem;
}

/* the value, % or € and how long, on one line */
.send__new[b-6q4vpjfr09] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 5rem minmax(0, 1fr);
    gap: 0.75rem;
}

.send__templates[b-6q4vpjfr09] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.1rem;
    margin-top: 0.25rem;
}
/* /Components/Admin/Integrations.razor.rz.scp.css */
.integrations[b-fd8ovs1hkf] {
    display: grid;
    gap: 0.9rem;
}

.integrations__row[b-fd8ovs1hkf] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 0.75rem;
    align-items: start;
}

.integrations__name[b-fd8ovs1hkf] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.25rem 0.5rem;
}

.integrations__text[b-fd8ovs1hkf] {
    margin: 0.15rem 0 0;
    color: var(--color-muted);
    font-size: 0.875rem;
    line-height: 1.5;
    overflow-wrap: anywhere;
}
/* /Components/Admin/MailComposeDialog.razor.rz.scp.css */
.compose[b-3x4xwprbzu] {
    display: grid;
    gap: 0.75rem;
}
/* /Components/Admin/MailExtrasFields.razor.rz.scp.css */
/* the button keeps its width wherever it stands (a grid would stretch it) */
.mail-extras__open[b-s69719sgth] {
    display: flex;
}

.mail-extras[b-s69719sgth] {
    display: grid;
    gap: 0.5rem;
    margin-top: 0.5rem;
    padding: 0.75rem;
    border: 1px solid #e0e0dc;
    border-radius: 8px;
}

.mail-extras__files[b-s69719sgth] {
    display: grid;
    gap: 0.25rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.mail-extras__files li[b-s69719sgth] {
    display: flex;
    gap: 0.5rem;
    align-items: center;
    min-width: 0;
}

.mail-extras__name[b-s69719sgth] {
    flex: 1;
    min-width: 0;
    overflow: hidden;
    font-size: 0.875rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}
/* /Components/Admin/MailFrame.razor.rz.scp.css */
.mail-frame[b-75c9h7sz6z] {
    display: grid;
    gap: 0.5rem;
}

.mail-frame[b-75c9h7sz6z]  .mail-frame__looks {
    justify-self: end;
    margin: 0;
}

.mail-frame__view[b-75c9h7sz6z] {
    display: block;
    width: 100%;
    border: 1px solid #e6e6e1;
    border-radius: 6px;
    background: #f4f4f1;
}

.mail-frame__view--dark[b-75c9h7sz6z] {
    border-color: #3a3a37;
    background: #121211;
}
/* /Components/Admin/MailPreviewDialog.razor.rz.scp.css */
.mail-dialog__head[b-gxi3xsezf3] {
    display: grid;
    gap: 0.25rem;
    margin: 0 0 0.5rem;
    font-size: 0.875rem;
}

.mail-dialog__head div[b-gxi3xsezf3] {
    display: grid;
    grid-template-columns: 8.5rem minmax(0, 1fr);
    gap: 0.5rem;
}

.mail-dialog__head dt[b-gxi3xsezf3] {
    color: var(--color-muted);
}

.mail-dialog__head dd[b-gxi3xsezf3] {
    margin: 0;
    overflow-wrap: anywhere;
}

/* the e-mail as it arrives, in a frame of its own */
.mail-dialog__text[b-gxi3xsezf3] {
    max-height: 68vh;
    margin: 0;
    padding: 1rem;
    overflow: auto;
    border-radius: 6px;
    background: #f5f5f3;
    font-family: Consolas, "Courier New", monospace;
    font-size: 0.8125rem;
    white-space: pre-wrap;
    overflow-wrap: anywhere;
}
/* /Components/Admin/MailTextDialog.razor.rz.scp.css */
/* phones: the words, then the e-mail; wide: side by side */
.mail-text[b-4js14cdn1z] {
    display: grid;
    gap: 1.25rem;
}

@media (min-width: 60em) {
    .mail-text[b-4js14cdn1z] {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr);
        align-items: start;
    }
}

.mail-text__form[b-4js14cdn1z] {
    display: grid;
    gap: 0.75rem;
}

.mail-text__hint[b-4js14cdn1z] {
    margin: 0;
    color: var(--color-muted);
    font-size: 0.8125rem;
}

.mail-text__fields[b-4js14cdn1z] {
    padding: 0.75rem 0.9rem;
    border-radius: 8px;
    background: #f5f5f3;
    font-size: 0.8125rem;
}

.mail-text__fields p[b-4js14cdn1z] {
    margin: 0 0 0.4rem;
}

.mail-text__fields dl[b-4js14cdn1z] {
    display: grid;
    gap: 0.2rem;
    margin: 0;
}

.mail-text__fields div[b-4js14cdn1z] {
    display: grid;
    grid-template-columns: 6.5rem minmax(0, 1fr);
    gap: 0.5rem;
}

.mail-text__fields dd[b-4js14cdn1z] {
    margin: 0;
    color: var(--color-muted);
}

.mail-text__subject[b-4js14cdn1z] {
    margin: 0 0 0.5rem;
    font-size: 0.875rem;
    overflow-wrap: anywhere;
}

/* /Components/Admin/RoleDialog.razor.rz.scp.css */
.role-dialog__title[b-v8r9mn3gj4] {
    margin: 1.25rem 0 0.1rem;
    font-weight: 700;
}

.role-dialog__hint[b-v8r9mn3gj4] {
    margin: 0 0 0.5rem;
    color: var(--color-muted);
    font-size: 0.8125rem;
}

.role-dialog__list[b-v8r9mn3gj4] {
    display: grid;
    gap: 0.1rem;
}

.role-dialog__label[b-v8r9mn3gj4] {
    display: block;
    font-size: 0.9rem;
    line-height: 1.3;
}

.role-dialog__sub[b-v8r9mn3gj4] {
    display: block;
    color: var(--color-muted);
    font-size: 0.78rem;
    line-height: 1.3;
}
/* /Components/Admin/SalesChart.razor.rz.scp.css */
.sales-chart[b-9quwpytzna] {
    display: block;
    width: 100%;
    height: auto;
    overflow: visible;
}

.sales-chart__grid[b-9quwpytzna] {
    stroke: #e8e8e4;
    stroke-width: 1;
}

.sales-chart__bar[b-9quwpytzna] {
    fill: #f7a15e;
    transition: fill 0.15s;
}

.sales-chart__bar:hover[b-9quwpytzna] {
    fill: #c94f15;
}

.sales-chart__bar--today[b-9quwpytzna] {
    fill: #f37a1f;
}

.sales-chart__bar--empty[b-9quwpytzna] {
    fill: #e2e2de;
}
/* /Components/Admin/SignatureLine.razor.rz.scp.css */
.signature-line[b-lzh9pp49r3] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.35rem;
    margin: 0.5rem 0 0;
    color: var(--color-muted);
    font-size: 0.8125rem;
}

.signature-line b[b-lzh9pp49r3] {
    color: var(--color-ink);
}
/* /Components/Layout/AdminLayout.razor.rz.scp.css */
/* a row that opens on a click has its title as a button (class row-open), so the keyboard opens it too */
.admin-body[b-nd2cfjx1gj]  .row-open {
    all: unset;
    cursor: pointer;
    overflow-wrap: anywhere;
}

.admin-body[b-nd2cfjx1gj]  .row-open:focus-visible {
    outline: 2px solid var(--mud-palette-primary);
    outline-offset: 2px;
    border-radius: 2px;
}

.admin-brand[b-nd2cfjx1gj] {
    margin-left: var(--space-2);
    /* a finger-sized target around the thin logo; the bar keeps its height */
    padding-block: 0.6rem;
    margin-block: -0.6rem;
    font-size: 1.05rem;
    text-decoration: none;
}

/* Admin lists on phones and tablets. MudTable (Breakpoint.Sm) puts every cell on a line of its own with
   its label below 960 px; a table with Class="admin-cards" shows each row as a compact card instead, its
   cells saying where they go: card-photo and card-title open the card, card-end sits at its right,
   card-line and then card-after are lines of their own, card-stat is a small "label value" beside the
   others, card-bottom closes it (chips side by side) and card-hide is left out. card-small, card-inline
   (the cell's parts on one line) and card-label (its label before it) only change the look. */
@media (max-width: 960px) {
    .admin-body[b-nd2cfjx1gj]  .admin-cards.mud-sm-table .mud-table-body .mud-table-row {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 0.15rem 0;
        padding: 0.75rem 1rem;
        border-bottom: 1px solid var(--mud-palette-table-lines);
    }

    .admin-body[b-nd2cfjx1gj]  .admin-cards.mud-sm-table .mud-table-body .mud-table-cell {
        display: block;
        min-width: 0 !important;
        max-width: none !important;
        padding: 0 !important;
        border: 0 !important;
        white-space: normal !important;
    }

    .admin-body[b-nd2cfjx1gj]  .admin-cards.mud-sm-table .mud-table-body .mud-table-cell::before {
        content: none;
    }

    /* line breaks: the stats and the closing chips start lines of their own */
    .admin-body[b-nd2cfjx1gj]  .admin-cards.mud-sm-table .mud-table-body .mud-table-row::before,
    .admin-body[b-nd2cfjx1gj]  .admin-cards.mud-sm-table .mud-table-body .mud-table-row::after {
        content: "";
        order: 4;
        flex-basis: 100%;
        height: 0;
    }

    .admin-body[b-nd2cfjx1gj]  .admin-cards.mud-sm-table .mud-table-body .mud-table-row::after {
        order: 6;
    }

    .admin-body[b-nd2cfjx1gj]  .admin-cards.mud-sm-table .mud-table-body .card-photo {
        order: -1;
        flex: 0 0 auto;
        margin-right: 0.75rem;
    }

    /* at least 40 %: a line after it never fits beside it */
    .admin-body[b-nd2cfjx1gj]  .admin-cards.mud-sm-table .mud-table-body .card-title {
        flex: 1 1 0;
        min-width: 40% !important;
        font-weight: 700;
    }

    .admin-body[b-nd2cfjx1gj]  .admin-cards.mud-sm-table .mud-table-body .card-end {
        order: 1;
        margin-left: auto;
        padding-left: 0.75rem !important;
        text-align: right !important;
    }

    .admin-body[b-nd2cfjx1gj]  .admin-cards.mud-sm-table .mud-table-body .card-line {
        order: 2;
        flex-basis: 100%;
    }

    .admin-body[b-nd2cfjx1gj]  .admin-cards.mud-sm-table .mud-table-body .card-after {
        order: 3;
        flex-basis: 100%;
    }

    .admin-body[b-nd2cfjx1gj]  .admin-cards.mud-sm-table .mud-table-body .card-stat {
        order: 5;
        margin-right: 0.9rem;
        font-size: 0.8125rem;
    }

    .admin-body[b-nd2cfjx1gj]  .admin-cards.mud-sm-table .mud-table-body .card-bottom {
        order: 7;
        margin: 0.2rem 0.4rem 0 0;
    }

    .admin-body[b-nd2cfjx1gj]  .admin-cards.mud-sm-table .mud-table-body .card-hide {
        display: none;
    }

    .admin-body[b-nd2cfjx1gj]  .admin-cards.mud-sm-table .mud-table-body .card-pre {
        white-space: pre-line !important;
    }

    .admin-body[b-nd2cfjx1gj]  .admin-cards.mud-sm-table .mud-table-body .card-small {
        color: var(--mud-palette-text-secondary);
        font-size: 0.8125rem;
    }

    .admin-body[b-nd2cfjx1gj]  .admin-cards.mud-sm-table .mud-table-body .card-stat::before,
    .admin-body[b-nd2cfjx1gj]  .admin-cards.mud-sm-table .mud-table-body .card-label::before {
        content: attr(data-label) " ";
        color: var(--mud-palette-text-secondary);
    }

    .admin-body[b-nd2cfjx1gj]  .admin-cards.mud-sm-table .mud-table-body .card-inline > * {
        display: inline;
        white-space: normal !important;
    }

    .admin-body[b-nd2cfjx1gj]  .admin-cards.mud-sm-table .mud-table-body .card-inline > * + *::before {
        content: " · ";
    }
}

.admin-logout[b-nd2cfjx1gj] {
    margin: 0 0 0 var(--space-2);
}

.admin-shop__icon[b-nd2cfjx1gj],
.admin-logout__icon[b-nd2cfjx1gj] {
    display: none;
}

/* phones: Obchod and Odhlásiť sa as icons */
@media (max-width: 39.99em) {
    .admin-shop[b-nd2cfjx1gj],
    .admin-logout__text[b-nd2cfjx1gj] {
        display: none;
    }

    .admin-shop__icon[b-nd2cfjx1gj],
    .admin-logout__icon[b-nd2cfjx1gj] {
        display: inline-flex;
    }
}

/* who is signed in, at the top of the profile menu */
.admin-me[b-nd2cfjx1gj] {
    display: grid;
    padding: 0.6rem 1rem 0.7rem;
    font-size: 0.875rem;
    line-height: 1.4;
}

.admin-me span[b-nd2cfjx1gj] {
    color: var(--color-muted);
    font-size: 0.8125rem;
}

/* Prehľad: the menu's first item, like the others but a little larger and bolder, clear of the bar above */
.admin-nav__home[b-nd2cfjx1gj] {
    padding-top: 0.6rem;
}

.admin-nav__home[b-nd2cfjx1gj]  .mud-nav-link {
    padding-top: 10px;
    padding-bottom: 10px;
    font-size: 1rem;
    font-weight: 700;
}

.admin-nav__home[b-nd2cfjx1gj]  .mud-nav-link .mud-nav-link-icon {
    color: var(--color-brand);
}

/* the menu: sections under small grey headings */
.admin-nav__section[b-nd2cfjx1gj] {
    margin: 0.9rem 0 0.2rem;
    padding: 0 1rem 0 1.15rem;
    color: var(--color-muted);
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.admin-nav__item[b-nd2cfjx1gj] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    width: 100%;
}

.admin-nav__badge[b-nd2cfjx1gj] {
    min-width: 1.35rem;
    padding: 0.05rem 0.45rem;
    border-radius: 999px;
    background: var(--color-brand);
    color: #fff;
    font-size: 0.72rem;
    font-weight: 700;
    line-height: 1.35;
    text-align: center;
}

/* shown by Blazor when an interactive component throws */
#blazor-error-ui[b-nd2cfjx1gj] {
    display: none;
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 2000;
    width: 100%;
    padding: var(--space-3) var(--space-5);
    background: #fff4ea;
    box-shadow: 0 -1px 2px rgb(0 0 0 / 0.2);
    color: var(--color-ink);
}

#blazor-error-ui .dismiss[b-nd2cfjx1gj] {
    position: absolute;
    top: var(--space-2);
    right: var(--space-3);
    cursor: pointer;
}
/* /Components/Layout/Logo.razor.rz.scp.css */
.logo[b-frasxcp7s1] {
    display: block;
    width: 16em;
    max-width: 100%;
    height: auto;
}
/* /Components/Layout/NoticeBar.razor.rz.scp.css */
.notice-bar[b-uaxchn6cxm] {
    margin: 0;
    padding: 0.55rem 1rem 0.6rem;
    background: var(--color-black);
    color: #fff;
    font-size: 0.875rem;
    font-weight: 600;
    letter-spacing: 0.01em;
    line-height: 1.4;
    text-align: center;
    text-wrap: balance;
}
/* /Components/Layout/ReconnectModal.razor.rz.scp.css */
.components-reconnect-first-attempt-visible[b-dc5p01soha],
.components-reconnect-repeated-attempt-visible[b-dc5p01soha],
.components-reconnect-failed-visible[b-dc5p01soha],
.components-pause-visible[b-dc5p01soha],
.components-resume-failed-visible[b-dc5p01soha],
.components-rejoining-animation[b-dc5p01soha] {
    display: none;
}

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


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

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

}

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

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

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

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

    100% {
        opacity: 1;
    }
}

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

    100% {
        opacity: 0;
    }
}

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

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

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

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

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

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

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

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

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

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

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

    100% {
        top: 0px;
        left: 0px;
        width: 80px;
        height: 80px;
        opacity: 0;
    }
}
/* /Components/Layout/ShopLayout.razor.rz.scp.css */
.skip-link[b-6le7jyszt3] {
    position: absolute;
    top: -3rem;
    left: 1rem;
    z-index: 100;
    padding: 0.5rem 1rem;
    background: var(--color-black);
    color: #fff;
}

.skip-link:focus[b-6le7jyszt3] {
    top: 1rem;
}

.site-main[b-6le7jyszt3] {
    display: block;
    min-height: 50vh;
    overflow-x: clip;
}
/* /Components/Layout/SiteFooter.razor.rz.scp.css */
/* as on the staging site: name 30 px and headings 18 px in Titling, text 16 px with the values in bold,
   links 14 px in Display Medium */

.site-footer[b-dj48bt3xub] {
    padding: clamp(2rem, 2.8vw, 2.75rem) 0 1.25rem;
    background: var(--color-brand);
    color: #fff;
}

.site-footer__columns[b-dj48bt3xub] {
    display: grid;
    gap: 1.75rem;
    font-size: 1rem;
    line-height: 1.35;
}

.site-footer__columns p[b-dj48bt3xub] {
    margin: 0 0 0.85em;
}

.site-footer a[b-dj48bt3xub] {
    color: inherit;
    text-decoration: none;
    text-underline-offset: 0.2em;
}

.site-footer a:hover[b-dj48bt3xub] {
    text-decoration: underline;
}

.site-footer__name[b-dj48bt3xub] {
    font-family: var(--font-title);
    font-size: 1.875rem;
    letter-spacing: 0.02em;
    line-height: 1;
    text-transform: uppercase;
}

.site-footer__tagline[b-dj48bt3xub] {
    max-width: 21em;
    font-family: var(--font-display);
    font-size: 0.875rem;
    line-height: 1.2;
    text-transform: uppercase;
}

.site-footer__heading[b-dj48bt3xub] {
    margin: 0 0 0.6rem;
    font-family: var(--font-title);
    font-size: 1.125rem;
    font-weight: 400;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

.site-footer__links[b-dj48bt3xub] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.55em;
    margin: 0;
    padding: 0;
    font-family: var(--font-display);
    font-size: 0.875rem;
    line-height: 1.2;
    list-style: none;
    text-transform: uppercase;
}

.site-footer .site-footer__legal[b-dj48bt3xub] {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 0.25rem 1.5rem;
    margin: clamp(1.25rem, 2vw, 2rem) auto 0;
    padding-top: 1rem;
    border-top: 1px solid rgb(255 255 255 / 0.35);
    font-size: 0.8125rem;
}

.site-footer__legal p[b-dj48bt3xub] {
    margin: 0;
}

/* who made the web - white like the rest of the footer (Simon, 2026-09-28: the dark one stood out too much), in the
   text's light cut: small, the regular one looked bolder than the copyright */
.site-footer__credits[b-dj48bt3xub] {
    display: flex;
    flex-wrap: wrap;
    gap: 0 1.25rem;
    font-size: 0.75rem;
    font-weight: 300;
    letter-spacing: 0.01em;
}

/* the columns spread over the header's width: the name starts under the logo, the last column ends under the cart */
@media (min-width: 48em) {
    .site-footer__columns[b-dj48bt3xub] {
        display: flex;
        justify-content: space-between;
        gap: 2rem;
    }
}
/* /Components/Layout/SiteHeader.razor.rz.scp.css */
/* sizes from the staging site: bar 83 px, menu 40 px, logo 281 px wide */

/* always on screen; once the page scrolls, a soft shadow separates it from the content
   (browsers without scroll-driven animations simply keep the menu's line) */
.site-header[b-yqw53vq75q] {
    position: sticky;
    top: 0;
    z-index: 30;
    background: #fff;
}

/* stays put while a page glides into the next one (PageTransitions); the shadow stays out of it - a
   snapshot with the shadow around it came out stretched on the next page, the logo "vanished" */
.site-header__frame[b-yqw53vq75q] {
    background: #fff;
    view-transition-name: site-header;
}

/* the shadow is drawn once and only fades in: an opacity animation runs off the main thread, an
   animated box-shadow would repaint the header on every frame of scrolling and of page transitions */
.site-header[b-yqw53vq75q]::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    box-shadow: 0 10px 24px -14px rgb(0 0 0 / 0.3);
    opacity: 0;
    pointer-events: none;
}

@media (prefers-reduced-motion: no-preference) {
    @supports (animation-timeline: scroll()) {
        .site-header[b-yqw53vq75q]::after {
            animation: header-lift-b-yqw53vq75q linear both;
            animation-timeline: scroll();
            animation-range: 0 5rem;
        }
    }
}

@keyframes header-lift-b-yqw53vq75q {
    to {
        opacity: 1;
    }
}

.site-header__bar[b-yqw53vq75q] {
    display: flex;
    align-items: center;
    gap: clamp(0.75rem, 1.25vw, 1.25rem);
    height: var(--header-bar);
}

/* the logo is 16em wide: 281 px on wide screens */
.site-header__logo[b-yqw53vq75q] {
    margin-right: auto;
    /* a finger-sized target around the thin logo; the bar keeps its height */
    padding-block: 0.6rem;
    margin-block: -0.6rem;
    font-size: clamp(0.75rem, 1.1vw, 1.1rem);
    line-height: 0;
}

.site-header__search[b-yqw53vq75q] {
    position: relative;
    display: none;
    width: 14.5rem;
}

.site-header__search input[b-yqw53vq75q] {
    width: 100%;
    height: 1.9375rem;
    padding: 0 0.85rem 0 2rem;
    border: 1px solid #b5b5b5;
    border-radius: var(--radius-pill);
    background: #fff;
    color: var(--color-black);
    font: inherit;
    font-size: 0.875rem;
    transition: border-color 0.2s var(--ease-out), box-shadow 0.2s var(--ease-out);
}

.site-header__search input:focus[b-yqw53vq75q] {
    outline: none;
    border-color: var(--color-brand);
    box-shadow: var(--focus-ring);
}

.site-header[b-yqw53vq75q]  .site-header__search-icon {
    position: absolute;
    top: 50%;
    left: 0.65rem;
    width: 0.95rem;
    height: 0.95rem;
    color: var(--color-muted);
    transform: translateY(-50%);
    pointer-events: none;
}

.site-header__cart[b-yqw53vq75q] {
    position: relative;
    display: inline-flex;
    color: var(--color-black);
    transition: color 0.2s var(--ease-out);
}

/* how many pieces are in the cart */
.site-header__cart-count[b-yqw53vq75q] {
    position: absolute;
    top: -0.3rem;
    right: -0.45rem;
    display: grid;
    place-items: center;
    min-width: 1.15rem;
    height: 1.15rem;
    padding: 0 0.25rem;
    border-radius: var(--radius-pill);
    background: var(--color-brand);
    color: #fff;
    font-size: 0.6875rem;
    font-weight: 700;
    line-height: 1;
}

.site-header__cart[b-yqw53vq75q]  .icon {
    width: 1.8rem;
    height: 1.8rem;
}

.site-header__cart:hover[b-yqw53vq75q] {
    color: var(--color-brand);
}

/* ---- the category menu (desktop) ---- */

/* a fine line above and below the categories */
.main-menu[b-yqw53vq75q] {
    display: none;
    border-top: 1px solid var(--color-line);
    border-bottom: 1px solid var(--color-line);
}

/* spread over the whole width: the first item starts under the logo, the last ends under the cart.
   More top categories would wrap to a second row, never scroll sideways. */
.main-menu__list[b-yqw53vq75q] {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    column-gap: 1.5rem;
    margin-block: 0;
    padding: 0;
    list-style: none;
}

.main-menu__item[b-yqw53vq75q] {
    position: relative;
}

.main-menu__link[b-yqw53vq75q] {
    position: relative;
    display: flex;
    align-items: center;
    height: var(--header-menu);
    color: var(--color-black);
    font-size: var(--fs-nav);
    font-weight: 700;
    letter-spacing: 0.015em;
    text-decoration: none;
    text-transform: uppercase;
    white-space: nowrap;
    transition: color 0.2s var(--ease-out);
}

/* the orange bar under the current or pointed-at section grows from the middle */
.main-menu__link[b-yqw53vq75q]::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 3px;
    background: var(--color-brand);
    transform: scaleX(0);
    transition: transform 0.3s var(--ease-menu);
}

.main-menu__link[aria-current][b-yqw53vq75q]::after,
.main-menu__item:hover > .main-menu__link[b-yqw53vq75q]::after,
.main-menu__item:focus-within > .main-menu__link[b-yqw53vq75q]::after {
    transform: scaleX(1);
}

.main-menu__link:hover[b-yqw53vq75q] {
    color: var(--color-black);
}

.main-menu__link--service[b-yqw53vq75q],
.main-menu__link--service:hover[b-yqw53vq75q] {
    color: var(--color-brand);
}

/* ---- drop-down levels: fade and slide in; closing waits a moment, so a slightly wobbly pointer doesn't close it ---- */

.dropdown[b-yqw53vq75q] {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 1;
    min-width: 14.5rem;
    max-width: 20rem;
    width: max-content;
    margin: 0;
    padding: 0;
    background: #fff;
    box-shadow: 0 4px 10px -2px rgb(0 0 0 / 0.1), 0 18px 36px -12px rgb(0 0 0 / 0.14);
    list-style: none;
    visibility: hidden;
    opacity: 0;
    transform: translateY(0.4rem);
    transition: opacity 0.2s var(--ease-out) 0.1s, transform 0.25s var(--ease-out) 0.1s, visibility 0s linear 0.35s;
}

/* deeper levels open beside their item */
.dropdown .dropdown[b-yqw53vq75q] {
    top: 0;
    left: 100%;
    transform: translateX(-0.4rem);
}

.main-menu__item:hover > .dropdown[b-yqw53vq75q],
.main-menu__item:focus-within > .dropdown[b-yqw53vq75q],
.dropdown__item:hover > .dropdown[b-yqw53vq75q],
.dropdown__item:focus-within > .dropdown[b-yqw53vq75q] {
    visibility: visible;
    opacity: 1;
    transform: none;
    transition: opacity 0.2s var(--ease-out), transform 0.3s var(--ease-out), visibility 0s;
}

.dropdown__item[b-yqw53vq75q] {
    position: relative;
}

.dropdown__item + .dropdown__item[b-yqw53vq75q] {
    border-top: 1px solid #f0f0ee;
}

.dropdown__link[b-yqw53vq75q] {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 0.8rem 1.25rem 0.8rem 1.35rem;
    color: var(--color-black);
    font-size: 0.875rem;
    font-weight: 700;
    letter-spacing: 0.015em;
    line-height: 1.25;
    text-decoration: none;
    text-transform: uppercase;
    transition: color 0.2s var(--ease-out), background-color 0.2s var(--ease-out);
}

.dropdown__link > span[b-yqw53vq75q] {
    transition: transform 0.3s var(--ease-menu);
}

/* the pointed-at item turns orange across the whole row */
.dropdown__item:hover > .dropdown__link[b-yqw53vq75q],
.dropdown__item:focus-within > .dropdown__link[b-yqw53vq75q] {
    background: var(--color-brand);
    color: #fff;
}

.dropdown__item:hover > .dropdown__link > span[b-yqw53vq75q],
.dropdown__item:focus-within > .dropdown__link > span[b-yqw53vq75q] {
    transform: translateX(0.25rem);
}

.dropdown__link[b-yqw53vq75q]  .dropdown__arrow {
    flex: none;
    width: 0.9rem;
    height: 0.9rem;
    color: var(--color-faint);
    transition: transform 0.3s var(--ease-menu), color 0.2s var(--ease-out);
}

.dropdown__item:hover > .dropdown__link[b-yqw53vq75q]  .dropdown__arrow,
.dropdown__item:focus-within > .dropdown__link[b-yqw53vq75q]  .dropdown__arrow {
    color: #fff;
    transform: translateX(3px);
}

/* ---- the menu button and panel (small screens) ---- */

.mobile-menu__toggle[b-yqw53vq75q] {
    display: inline-flex;
    padding: 0.25rem;
    color: var(--color-black);
    cursor: pointer;
    list-style: none;
}

.mobile-menu__toggle[b-yqw53vq75q]::-webkit-details-marker,
.mobile-menu__group summary[b-yqw53vq75q]::-webkit-details-marker {
    display: none;
}

.mobile-menu__toggle[b-yqw53vq75q]  .icon {
    width: 1.625rem;
    height: 1.625rem;
}

.mobile-menu[b-yqw53vq75q]  .mobile-menu__close,
.mobile-menu[open][b-yqw53vq75q]  .mobile-menu__open {
    display: none;
}

.mobile-menu[open][b-yqw53vq75q]  .mobile-menu__close {
    display: inline;
}

.mobile-menu__panel[b-yqw53vq75q] {
    position: absolute;
    top: 100%;
    right: 0;
    left: 0;
    max-height: calc(100dvh - var(--header-bar));
    overflow-y: auto;
    padding: 1rem var(--gutter) 2rem;
    border-top: 1px solid var(--color-line);
    background: #fff;
    box-shadow: 0 24px 40px rgb(0 0 0 / 0.1);
    animation: menu-in-b-yqw53vq75q 0.25s var(--ease-out);
}

@keyframes menu-in-b-yqw53vq75q {
    from {
        opacity: 0;
        transform: translateY(-0.5rem);
    }
}

.mobile-menu__search[b-yqw53vq75q] {
    display: flex;
    gap: 0.5rem;
    margin-bottom: 0.75rem;
}

.mobile-menu__search input[b-yqw53vq75q] {
    flex: 1;
    min-width: 0;
    height: 2.5rem;
    padding: 0 1rem;
    border: 1px solid #b5b5b5;
    border-radius: var(--radius-pill);
    font: inherit;
    font-size: 0.9375rem;
}

.mobile-menu__search .pill[b-yqw53vq75q] {
    font-size: 0.8125rem;
    padding-inline: 1.1em;
}

.mobile-menu__list[b-yqw53vq75q],
.mobile-menu__list ul[b-yqw53vq75q] {
    margin: 0;
    padding: 0;
    list-style: none;
}

.mobile-menu__group summary[b-yqw53vq75q],
.mobile-menu__link[b-yqw53vq75q] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.8rem 0;
    border-bottom: 1px solid var(--color-line);
    color: var(--color-black);
    font-size: var(--fs-nav);
    font-weight: 700;
    letter-spacing: 0.015em;
    text-decoration: none;
    text-transform: uppercase;
    cursor: pointer;
    list-style: none;
}

.mobile-menu__group[b-yqw53vq75q]  .mobile-menu__chevron {
    width: 1.1rem;
    height: 1.1rem;
    color: var(--color-faint);
    transition: transform 0.3s var(--ease-menu);
}

.mobile-menu__group[open][b-yqw53vq75q]  .mobile-menu__chevron {
    transform: rotate(180deg);
}

.mobile-menu__link--service[b-yqw53vq75q] {
    color: var(--color-brand);
}

.mobile-menu__group ul[b-yqw53vq75q] {
    padding: 0.35rem 0 0.6rem;
}

.mobile-menu__group ul a[b-yqw53vq75q] {
    display: block;
    padding: 0.5rem 0 0.5rem 1rem;
    color: var(--color-ink-soft);
    font-size: 0.9375rem;
    text-decoration: none;
}

.mobile-menu__group ul a:hover[b-yqw53vq75q] {
    color: var(--color-brand);
}

@media (min-width: 48em) {
    .site-header__search[b-yqw53vq75q] {
        display: block;
    }

    .mobile-menu__search[b-yqw53vq75q] {
        display: none;
    }
}

@media (min-width: 75em) {
    .main-menu[b-yqw53vq75q] {
        display: block;
    }

    .mobile-menu[b-yqw53vq75q] {
        display: none;
    }

    /* the bag's outline ends where SERVIS ends; the icon has some empty space on its right */
    .site-header__cart[b-yqw53vq75q] {
        margin-right: -0.375rem;
    }
}
/* /Components/Pages/Admin/ChangesPage.razor.rz.scp.css */
/* a word, what and who; one under the other on a phone */
.changes-filter[b-ufo48t3reo] {
    display: grid;
    gap: 0.75rem;
    align-items: center;
    max-width: 70rem;
    margin-bottom: 1rem;
}

@media (min-width: 60em) {
    .changes-filter[b-ufo48t3reo] {
        grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr) minmax(0, 1.2fr);
    }
}

.changes-area[b-ufo48t3reo] {
    display: block;
    color: var(--mud-palette-text-secondary);
    font-size: 0.75rem;
    font-weight: 400;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

.changes-lines[b-ufo48t3reo] {
    margin: 0;
    padding: 0;
    list-style: none;
    font-size: 0.875rem;
    overflow-wrap: anywhere;
}

.changes-lines li + li[b-ufo48t3reo] {
    margin-top: 0.15rem;
}
/* /Components/Pages/Admin/ComplaintDetail.razor.rz.scp.css */
.complaint-head[b-8uxwqm1qbp] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.25rem;
}

/* the parts stay whole when the line wraps on a phone */
.complaint-meta[b-8uxwqm1qbp] {
    display: flex;
    flex-wrap: wrap;
    gap: 0 0.4rem;
    margin: 0 0 1rem;
    color: var(--mud-palette-text-secondary);
}

.complaint-meta span[b-8uxwqm1qbp] {
    white-space: nowrap;
}

.complaint-meta span + span[b-8uxwqm1qbp]::before {
    content: "·";
    margin-right: 0.4rem;
}

.complaint-card[b-8uxwqm1qbp] {
    display: grid;
    gap: 0.6rem;
    align-content: start;
    min-width: 0;
    margin-bottom: 1rem;
    padding: 1.1rem 1.25rem 1.25rem;
    border: 1px solid #e6e6e1;
    border-radius: 10px;
    background: #fff;
}

.complaint-card__head[b-8uxwqm1qbp] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 0.25rem 0.75rem;
}

.complaint-card__head .complaint-card__title[b-8uxwqm1qbp] {
    margin: 0;
}

.complaint-card__title[b-8uxwqm1qbp] {
    margin: 0 0 0.25rem;
    font-size: 1rem;
    font-weight: 700;
}

.complaint-card__lines[b-8uxwqm1qbp] {
    margin: 0;
    font-size: 0.9rem;
    line-height: 1.6;
}

.complaint-card__muted[b-8uxwqm1qbp] {
    color: var(--color-muted);
}

.complaint-card__defect[b-8uxwqm1qbp],
.complaint-card__outcome[b-8uxwqm1qbp] {
    padding: 0.6rem 0.75rem;
    border-radius: 6px;
    background: #f7f7f5;
}

.complaint-card__outcome[b-8uxwqm1qbp] {
    background: #eef6ea;
}

.complaint-card__defect small[b-8uxwqm1qbp],
.complaint-card__outcome small[b-8uxwqm1qbp] {
    color: var(--color-muted);
    font-weight: 700;
}

.complaint-card__defect p[b-8uxwqm1qbp],
.complaint-card__outcome p[b-8uxwqm1qbp] {
    margin: 0.2rem 0 0;
    font-size: 0.9rem;
    white-space: pre-line;
}

.complaint-card__mail[b-8uxwqm1qbp] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 0.25rem;
}

.complaint-facts[b-8uxwqm1qbp] {
    display: grid;
    gap: 0.3rem;
    margin: 0;
    font-size: 0.9rem;
}

.complaint-facts div[b-8uxwqm1qbp] {
    display: grid;
    grid-template-columns: 9rem minmax(0, 1fr);
    gap: 0.75rem;
}

.complaint-facts dt[b-8uxwqm1qbp] {
    color: var(--color-muted);
}

.complaint-facts dd[b-8uxwqm1qbp] {
    margin: 0;
    overflow-wrap: anywhere;
}

/* phones: the label above its value */
@media (max-width: 30em) {
    .complaint-facts div[b-8uxwqm1qbp] {
        grid-template-columns: minmax(0, 1fr);
        gap: 0;
    }
}

.complaint-history[b-8uxwqm1qbp] {
    display: grid;
    gap: 0.75rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.complaint-history__entry[b-8uxwqm1qbp] {
    display: grid;
    grid-template-columns: 1.25rem minmax(0, 1fr);
    gap: 0.6rem;
}

.complaint-history__entry--note .complaint-history__text[b-8uxwqm1qbp] {
    color: var(--color-brand-dark);
}

.complaint-history__text[b-8uxwqm1qbp] {
    margin: 0;
    font-size: 0.875rem;
    white-space: pre-line;
    overflow-wrap: anywhere;
}

.complaint-history__entry small[b-8uxwqm1qbp] {
    color: var(--color-muted);
    font-size: 0.75rem;
}
/* /Components/Pages/Admin/ComplaintList.razor.rz.scp.css */
.complaints-head[b-xcfwiuhgc4] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 0.5rem;
}
/* /Components/Pages/Admin/ComplaintSheet.razor.rz.scp.css */
/* an A4 sheet on screen and on paper, like the service sheet */

.sheet[b-zd5s50xygm] {
    position: relative;
    max-width: 50rem;
    margin: 2rem auto;
    padding: 4rem 2.5rem 2.5rem;    /* the top clears the print button */
    background: #fff;
    box-shadow: 0 2px 16px rgb(0 0 0 / 0.12);
    color: #000;
    font-size: 0.875rem;
    line-height: 1.45;
}

.sheet__print[b-zd5s50xygm] {
    position: absolute;
    top: 1rem;
    right: 1rem;
    padding: 0.5rem 1.1rem;
    border: 0;
    border-radius: 999px;
    background: var(--color-brand);
    color: #fff;
    font: inherit;
    font-weight: 700;
    cursor: pointer;
}

.sheet__print:hover[b-zd5s50xygm] {
    background: var(--color-brand-dark);
}

.sheet__head[b-zd5s50xygm] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 2rem;
    padding-bottom: 1rem;
    border-bottom: 3px solid var(--color-brand);
    font-size: 0.9rem;
}

.sheet__title[b-zd5s50xygm] {
    text-align: right;
}

.sheet__title h1[b-zd5s50xygm] {
    margin: 0;
    font-family: var(--font-title);
    font-size: 1.5rem;
    font-weight: 400;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

.sheet__title p[b-zd5s50xygm] {
    margin: 0;
}

.sheet__parties[b-zd5s50xygm] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.5rem;
    margin: 1.5rem 0;
}

.sheet h2[b-zd5s50xygm] {
    margin: 0 0 0.35rem;
    color: #555;
    font-size: 0.75rem;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.sheet__parties p[b-zd5s50xygm] {
    margin: 0;
}

.sheet__facts[b-zd5s50xygm] {
    width: 100%;
    border-collapse: collapse;
    border-top: 2px solid #000;
}

.sheet__facts th[b-zd5s50xygm],
.sheet__facts td[b-zd5s50xygm] {
    padding: 0.5rem 0.5rem 0.5rem 0;
    border-bottom: 1px solid #ccc;
    text-align: left;
    vertical-align: top;
}

.sheet__facts th[b-zd5s50xygm] {
    width: 12rem;
    color: #555;
    font-weight: 400;
}

.sheet__text[b-zd5s50xygm] {
    white-space: pre-line;
}

.sheet__signatures[b-zd5s50xygm] {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 1.5rem 2rem;
    margin-top: 3.5rem;
}

.sheet__signatures p[b-zd5s50xygm] {
    margin: 0;
}

/* a phone shows it without the paper look */
@media (max-width: 40em) {
    .sheet[b-zd5s50xygm] {
        margin: 0;
        padding: 4rem 1rem 1.5rem;
        box-shadow: none;
    }

    .sheet__head[b-zd5s50xygm],
    .sheet__parties[b-zd5s50xygm] {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
        gap: 1rem;
    }

    .sheet__title[b-zd5s50xygm] {
        text-align: left;
    }

    .sheet__facts th[b-zd5s50xygm] {
        width: 7.5rem;
    }
}

@media print {
    .sheet[b-zd5s50xygm] {
        max-width: none;
        margin: 0;
        padding: 0;
        box-shadow: none;
    }

    .sheet__print[b-zd5s50xygm] {
        display: none;
    }
}

@page {
    size: A4;
    margin: 15mm;
}
/* /Components/Pages/Admin/ContactMessageDetail.razor.rz.scp.css */
.message-head[b-8r7qbi4q56] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.25rem;
}

.message-card[b-8r7qbi4q56] {
    display: grid;
    gap: 0.6rem;
    align-content: start;
    min-width: 0;
    margin-bottom: 1rem;
    padding: 1.1rem 1.25rem 1.25rem;
    border: 1px solid #e6e6e1;
    border-radius: 10px;
    background: #fff;
}

.message-card__head[b-8r7qbi4q56] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
}

.message-card__title[b-8r7qbi4q56] {
    margin: 0 0 0.25rem;
    font-size: 1rem;
    font-weight: 700;
}

/* the customer's own words, as they wrote them */
.message-card__text[b-8r7qbi4q56] {
    margin: 0;
    padding: 0.9rem 1rem;
    border-radius: 6px;
    background: #fff8f2;
    font-size: 0.95rem;
    line-height: 1.6;
    white-space: pre-line;
}

.message-card__lines[b-8r7qbi4q56],
.message-card__muted[b-8r7qbi4q56] {
    margin: 0;
    font-size: 0.9rem;
    line-height: 1.5;
}

.message-card__muted[b-8r7qbi4q56] {
    color: var(--color-muted);
}

.message-card__actions[b-8r7qbi4q56] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
}

.message-card__buttons[b-8r7qbi4q56] {
    display: flex;
    gap: 0.5rem;
    margin-left: auto;
}

.message-links[b-8r7qbi4q56] {
    display: grid;
    gap: 0.35rem;
    margin: 0 0 0.5rem;
    padding: 0;
    list-style: none;
    font-size: 0.85rem;
}

.message-links li[b-8r7qbi4q56] {
    display: grid;
    min-width: 0;
}

.message-links span[b-8r7qbi4q56] {
    color: var(--color-muted);
}

.message-links__text[b-8r7qbi4q56] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* ---- history ---- */

.message-history[b-8r7qbi4q56] {
    display: grid;
    gap: 0.9rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.message-history__entry[b-8r7qbi4q56] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 0.6rem;
    align-items: start;
}

.message-history__entry--note .message-history__text[b-8r7qbi4q56] {
    padding: 0.4rem 0.6rem;
    border-radius: 6px;
    background: #fff8f2;
}

.message-history__what[b-8r7qbi4q56] {
    display: block;
    color: var(--color-ink);
    font-weight: 700;
}

.message-history__text[b-8r7qbi4q56] {
    margin: 0;
    font-size: 0.875rem;
    white-space: pre-line;
}

.message-history small[b-8r7qbi4q56] {
    color: var(--color-muted);
    font-size: 0.75rem;
}
/* /Components/Pages/Admin/ContentPages.razor.rz.scp.css */
/* the preview uses the shop's own text styles (.rich-text in app.css) */
.content-preview[b-nevpcsxn1o] {
    max-height: 80vh;
    overflow-y: auto;
    font-family: var(--font-body);
    font-size: 0.9375rem;
    line-height: 1.6;
}

.content-preview__title[b-nevpcsxn1o] {
    margin: 0.25rem 0 1rem;
    font-family: var(--font-title);
    font-size: 1.75rem;
    font-weight: 400;
    line-height: 1.15;
    text-transform: uppercase;
}

/* phones: 16 px, or the iPhone zooms into the text while it is written */
@media (max-width: 47.99em) {
    .content-source[b-nevpcsxn1o]  textarea {
        font-size: 1rem !important;
    }
}
/* /Components/Pages/Admin/CustomerPage.razor.rz.scp.css */
.customer-contact[b-00m7yyy2so] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.25rem 1.25rem;
    margin: 0.25rem 0 1.25rem;
    overflow-wrap: anywhere;
}

.customer-card[b-00m7yyy2so] {
    display: grid;
    gap: 0.6rem;
    align-content: start;
    min-width: 0;
    margin-bottom: 1rem;
    padding: 1.1rem 1.25rem 1.25rem;
    border: 1px solid #e6e6e1;
    border-radius: 10px;
    background: #fff;
}

.customer-card__title[b-00m7yyy2so] {
    margin: 0;
    font-size: 1rem;
    font-weight: 700;
}

.customer-card__muted[b-00m7yyy2so],
.customer-card__hint[b-00m7yyy2so] {
    margin: 0;
    color: var(--color-muted);
    font-size: 0.875rem;
}

.customer-card__hint[b-00m7yyy2so] {
    margin-top: -0.25rem;
    font-size: 0.8125rem;
}

.customer-list[b-00m7yyy2so] {
    display: grid;
    gap: 0.5rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.customer-list li[b-00m7yyy2so] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.15rem 0.6rem;
    padding-bottom: 0.5rem;
    border-bottom: 1px solid #f0f0ec;
    font-size: 0.875rem;
}

.customer-list li:last-child[b-00m7yyy2so] {
    padding-bottom: 0;
    border-bottom: 0;
}

.customer-list span[b-00m7yyy2so] {
    flex: 1 1 10rem;
    min-width: 0;
    color: var(--color-muted);
}

.customer-list__sum[b-00m7yyy2so] {
    white-space: nowrap;
}

.customer-list--messages li[b-00m7yyy2so] {
    align-items: start;
}

.customer-list__text[b-00m7yyy2so] {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    white-space: pre-line;
}
/* /Components/Pages/Admin/Dashboard.razor.rz.scp.css */
/* Prehľad: sections in a column; cards are plain boxes so the page's own styles reach them */

.dash[b-n2tck8khgg] {
    --dash-line: #e6e6e1;
    --dash-soft: #fafaf8;
    display: grid;
    gap: 2.25rem;
}

.dash-head[b-n2tck8khgg] {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    justify-content: space-between;
    gap: 1rem;
}

.dash-head__date[b-n2tck8khgg] {
    margin: 0.25rem 0 0;
    color: var(--color-muted);
}

.dash-head__actions[b-n2tck8khgg] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
}

.dash-section[b-n2tck8khgg] {
    display: grid;
    gap: 1rem;
}

.dash-section__head[b-n2tck8khgg] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem 1rem;
    margin-bottom: 0.75rem;
}

.dash-range[b-n2tck8khgg] {
    display: inline-block;
    width: 17rem;
    max-width: 100%;
}

.dash-card__subtitle[b-n2tck8khgg] {
    margin: 0.9rem 0 0.35rem;
    font-size: 0.85rem;
    font-weight: 700;
}

.dash-payments[b-n2tck8khgg] {
    display: grid;
    gap: 0.3rem;
    margin: 0;
    padding: 0;
    list-style: none;
    font-size: 0.85rem;
}

.dash-payments li[b-n2tck8khgg] {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
}

.dash-section__title[b-n2tck8khgg] {
    margin: 0;
    color: var(--color-muted);
    font-size: 0.8125rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

/* ---- what waits ---- */

.dash-todo[b-n2tck8khgg] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(13.5rem, 1fr));
    gap: 0.75rem;
}

.dash-tile[b-n2tck8khgg] {
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-rows: auto auto;
    align-items: center;
    column-gap: 0.85rem;
    padding: 0.9rem 1rem;
    border: 1px solid var(--dash-line);
    border-radius: 10px;
    background: #fff;
    color: var(--color-ink);
    text-decoration: none;
    transition: border-color 0.15s, box-shadow 0.15s, transform 0.15s;
}

.dash-tile:hover[b-n2tck8khgg] {
    border-color: var(--color-brand);
    box-shadow: 0 6px 18px -8px rgb(0 0 0 / 0.18);
    transform: translateY(-1px);
}

.dash-tile__icon[b-n2tck8khgg] {
    display: grid;
    grid-row: 1 / span 2;
    place-items: center;
    width: 2.6rem;
    height: 2.6rem;
    border-radius: 50%;
    background: #f1f1ee;
    color: var(--color-muted);
}

.dash-tile__count[b-n2tck8khgg] {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.1;
}

.dash-tile__label[b-n2tck8khgg] {
    color: var(--color-muted);
    font-size: 0.85rem;
    line-height: 1.3;
}

.dash-tile__note[b-n2tck8khgg] {
    display: block;
    color: var(--color-brand-dark);
    font-weight: 600;
}

.dash-tile--urgent[b-n2tck8khgg] {
    border-color: #f7c39a;
    background: #fff8f2;
}

.dash-tile--urgent .dash-tile__icon[b-n2tck8khgg] {
    background: var(--color-brand);
    color: #fff;
}

.dash-tile--urgent .dash-tile__count[b-n2tck8khgg] {
    color: var(--color-brand-dark);
}

.dash-tile--alert[b-n2tck8khgg] {
    border-color: #f2b8a8;
    background: #fdefeb;
}

.dash-tile--alert .dash-tile__icon[b-n2tck8khgg] {
    background: var(--color-danger);
    color: #fff;
}

.dash-tile--none[b-n2tck8khgg] {
    opacity: 0.55;
}

.dash-tile--none:hover[b-n2tck8khgg] {
    opacity: 1;
}

.dash-done[b-n2tck8khgg] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 1rem 1.25rem;
    border: 1px solid #cfe3b6;
    border-radius: 10px;
    background: #f5faef;
}

/* ---- sales ---- */

.dash-kpis[b-n2tck8khgg] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr));
    gap: 0.75rem;
}

.dash-kpi[b-n2tck8khgg] {
    display: grid;
    gap: 0.2rem;
    padding: 1.1rem 1.25rem;
    border: 1px solid var(--dash-line);
    border-radius: 10px;
    background: #fff;
}

.dash-kpi__label[b-n2tck8khgg] {
    color: var(--color-muted);
    font-size: 0.85rem;
}

.dash-kpi__value[b-n2tck8khgg] {
    font-size: 1.75rem;
    font-weight: 700;
    line-height: 1.15;
    white-space: nowrap;
}

.dash-kpi__sub[b-n2tck8khgg] {
    color: var(--color-muted);
    font-size: 0.8rem;
}

.dash-kpi__trend[b-n2tck8khgg] {
    display: block;
    margin-top: 0.15rem;
    font-weight: 700;
}

.dash-kpi__trend--up[b-n2tck8khgg] {
    color: var(--color-available);
}

.dash-kpi__trend--down[b-n2tck8khgg] {
    color: var(--color-danger);
}

.dash-grid[b-n2tck8khgg] {
    display: grid;
    gap: 0.75rem;
}

.dash-card[b-n2tck8khgg] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    min-width: 0;
    padding: 1.1rem 1.25rem 1.25rem;
    border: 1px solid var(--dash-line);
    border-radius: 10px;
    background: #fff;
}

.dash-card__head[b-n2tck8khgg] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem 1rem;
}

.dash-card__title[b-n2tck8khgg] {
    margin: 0;
    font-size: 1rem;
    font-weight: 700;
}

.dash-card__note[b-n2tck8khgg],
.dash-card__text[b-n2tck8khgg] {
    margin: 0;
    color: var(--color-muted);
    font-size: 0.85rem;
}

.dash-card[b-n2tck8khgg]  .dash-card__more {
    margin-top: auto;
    padding-top: 0.25rem;
}

.dash-empty[b-n2tck8khgg] {
    margin: 0;
    color: var(--color-muted);
    font-size: 0.9rem;
}

.dash-rank[b-n2tck8khgg] {
    display: grid;
    gap: 0.55rem;
    margin: 0;
    padding: 0;
    list-style: none;
    counter-reset: rank;
}

.dash-rank li[b-n2tck8khgg] {
    display: grid;
    grid-template-columns: 1.6rem 1fr;
    column-gap: 0.4rem;
    counter-increment: rank;
}

.dash-rank li[b-n2tck8khgg]::before {
    content: counter(rank);
    grid-row: 1 / span 2;
    display: grid;
    place-items: center;
    width: 1.6rem;
    height: 1.6rem;
    border-radius: 50%;
    background: #f1f1ee;
    font-size: 0.8rem;
    font-weight: 700;
}

.dash-rank__name[b-n2tck8khgg] {
    font-weight: 700;
    font-size: 0.9rem;
}

.dash-rank__meta[b-n2tck8khgg] {
    color: var(--color-muted);
    font-size: 0.8rem;
}

.dash-orders[b-n2tck8khgg] {
    display: grid;
}

.dash-order[b-n2tck8khgg] {
    display: grid;
    grid-template-columns: 6.5rem minmax(0, 1fr) auto auto;
    align-items: center;
    gap: 1rem;
    padding: 0.65rem 0.5rem;
    border-top: 1px solid var(--dash-line);
    color: var(--color-ink);
    text-decoration: none;
}

.dash-order:hover[b-n2tck8khgg] {
    background: var(--dash-soft);
}

.dash-order__number[b-n2tck8khgg] {
    font-weight: 700;
}

.dash-order__customer[b-n2tck8khgg] {
    display: grid;
    min-width: 0;
    font-size: 0.9rem;
}

.dash-order__customer small[b-n2tck8khgg] {
    color: var(--color-muted);
}

.dash-order__chips[b-n2tck8khgg] {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 0.25rem;
}

.dash-order__total[b-n2tck8khgg] {
    font-weight: 700;
    text-align: right;
    white-space: nowrap;
}

/* ---- workshop and messages ---- */

.dash-list[b-n2tck8khgg] {
    display: grid;
    gap: 0.7rem;
    margin: 0;
    padding: 0;
    list-style: none;
    font-size: 0.875rem;
}

.dash-list li[b-n2tck8khgg] {
    display: grid;
    gap: 0.1rem;
    padding-bottom: 0.7rem;
    border-bottom: 1px solid var(--dash-line);
}

.dash-list li:last-child[b-n2tck8khgg] {
    padding-bottom: 0;
    border-bottom: 0;
}

.dash-list small[b-n2tck8khgg] {
    color: var(--color-muted);
}

.dash-list__head[b-n2tck8khgg] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
}

.dash-list__text[b-n2tck8khgg] {
    display: -webkit-box;
    overflow: hidden;
    color: var(--color-ink-soft);
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.dash-rating[b-n2tck8khgg] {
    display: flex;
    align-items: baseline;
    gap: 0.6rem;
    margin: 0;
}

.dash-rating__value[b-n2tck8khgg] {
    font-size: 2.25rem;
    font-weight: 700;
    line-height: 1;
}

.dash-rating__stars[b-n2tck8khgg] {
    color: #fbbc04;
    font-size: 1.2rem;
    letter-spacing: 0.05em;
}

/* ---- catalog ---- */

.dash-numbers[b-n2tck8khgg] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(9.5rem, 1fr));
    gap: 0.75rem;
    align-content: start;
}

.dash-number[b-n2tck8khgg] {
    display: grid;
    gap: 0.15rem;
    padding: 0.9rem 1rem;
    border: 1px solid var(--dash-line);
    border-radius: 10px;
    background: #fff;
    color: var(--color-ink);
    text-decoration: none;
    transition: border-color 0.15s;
}

.dash-number:hover[b-n2tck8khgg] {
    border-color: var(--color-brand);
}

.dash-number__value[b-n2tck8khgg] {
    font-size: 1.4rem;
    font-weight: 700;
}

.dash-number__label[b-n2tck8khgg] {
    color: var(--color-muted);
    font-size: 0.8rem;
}

.dash-number--warn[b-n2tck8khgg] {
    border-color: #f7c39a;
    background: #fff8f2;
}

.dash-number--warn .dash-number__value[b-n2tck8khgg] {
    color: var(--color-brand-dark);
}

.dash-facts[b-n2tck8khgg] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(7.5rem, 1fr));
    gap: 0.5rem 1rem;
    margin: 0;
}

.dash-facts div[b-n2tck8khgg] {
    display: grid;
}

.dash-facts dt[b-n2tck8khgg] {
    color: var(--color-muted);
    font-size: 0.8rem;
}

.dash-facts dd[b-n2tck8khgg] {
    margin: 0;
    font-weight: 700;
}

.dash-tile__icon[b-n2tck8khgg]  .mud-icon-root {
    font-size: 1.35rem;
}

@media (min-width: 64em) {
    .dash-grid--wide[b-n2tck8khgg] {
        grid-template-columns: minmax(0, 1.7fr) minmax(0, 1fr);
    }

    .dash-grid--three[b-n2tck8khgg] {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 47.99em) {
    /* the number and the sum on top, the customer and the state below */
    .dash-order[b-n2tck8khgg] {
        grid-template-columns: minmax(0, 1fr) auto;
        grid-template-areas:
            "number total"
            "customer chips";
        gap: 0.15rem 0.75rem;
    }

    .dash-order__number[b-n2tck8khgg] {
        grid-area: number;
    }

    .dash-order__total[b-n2tck8khgg] {
        grid-area: total;
    }

    .dash-order__customer[b-n2tck8khgg] {
        grid-area: customer;
    }

    .dash-order__chips[b-n2tck8khgg] {
        grid-area: chips;
        align-self: start;
    }

    /* two tiles and two numbers a row */
    .dash-todo[b-n2tck8khgg],
    .dash-kpis[b-n2tck8khgg] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 0.6rem;
    }

    .dash-tile[b-n2tck8khgg] {
        column-gap: 0.6rem;
        padding: 0.75rem;
    }

    .dash-tile__icon[b-n2tck8khgg] {
        width: 2.2rem;
        height: 2.2rem;
    }

    .dash-tile__count[b-n2tck8khgg] {
        font-size: 1.35rem;
    }

    .dash-tile__label[b-n2tck8khgg] {
        font-size: 0.8rem;
    }

    .dash-kpi[b-n2tck8khgg] {
        padding: 0.85rem 1rem;
    }

    .dash-kpi__value[b-n2tck8khgg] {
        font-size: 1.3rem;
    }

    .dash-payments li span:last-child[b-n2tck8khgg] {
        white-space: nowrap;
    }
}
/* /Components/Pages/Admin/DiscountCodeEdit.razor.rz.scp.css */
.code-head[b-tcwoyrpiax] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.25rem;
}

.code-head__code[b-tcwoyrpiax] {
    font-family: Consolas, "Courier New", monospace;
    letter-spacing: 0.04em;
    overflow-wrap: anywhere;
}

.code-card[b-tcwoyrpiax] {
    display: grid;
    gap: 0.6rem;
    margin-bottom: 1rem;
    padding: 1.1rem 1.25rem 1.25rem;
    border: 1px solid #e6e6e1;
    border-radius: 10px;
    background: #fff;
}

.code-card__title[b-tcwoyrpiax] {
    margin: 0;
    font-size: 1rem;
    font-weight: 700;
}

.code-card__muted[b-tcwoyrpiax] {
    margin: 0;
    color: var(--color-muted);
    font-size: 0.875rem;
}

.code-list[b-tcwoyrpiax] {
    display: grid;
    gap: 0.5rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.code-list li[b-tcwoyrpiax] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.15rem 0.6rem;
    padding-bottom: 0.5rem;
    border-bottom: 1px solid #f0f0ec;
    font-size: 0.875rem;
    overflow-wrap: anywhere;
}

.code-list li:last-child[b-tcwoyrpiax] {
    padding-bottom: 0;
    border-bottom: 0;
}

.code-list span[b-tcwoyrpiax] {
    flex: 1 1 10rem;
    min-width: 0;
    color: var(--color-muted);
}

.code-list__amount[b-tcwoyrpiax] {
    color: var(--color-brand-dark);
    white-space: nowrap;
}
/* /Components/Pages/Admin/DiscountCodeList.razor.rz.scp.css */
.codes-head[b-cfpzd305tk] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 0.5rem;
}

.codes-code[b-cfpzd305tk] {
    font-family: Consolas, "Courier New", monospace;
    letter-spacing: 0.04em;
}
/* /Components/Pages/Admin/HomeHeroPage.razor.rz.scp.css */
/* the first screen as the web shows it: the page at 1440 px, made smaller to fit (MudBlazor has nothing for a frame) */
.hero-preview[b-870j05p2hd] {
    position: relative;
    container-type: inline-size;
    aspect-ratio: 1440 / 880;
    overflow: hidden;
    border: 1px solid #e0e0dc;
    border-radius: 8px;
    background: #fff;
}

.hero-preview iframe[b-870j05p2hd] {
    width: 1440px;
    height: 880px;
    border: 0;
    transform-origin: 0 0;
    transform: scale(0.24);
    pointer-events: none;
}

@container (min-width: 400px) { .hero-preview iframe[b-870j05p2hd] { transform: scale(0.28); } }
@container (min-width: 450px) { .hero-preview iframe[b-870j05p2hd] { transform: scale(0.31); } }
@container (min-width: 500px) { .hero-preview iframe[b-870j05p2hd] { transform: scale(0.35); } }
@container (min-width: 550px) { .hero-preview iframe[b-870j05p2hd] { transform: scale(0.38); } }
@container (min-width: 600px) { .hero-preview iframe[b-870j05p2hd] { transform: scale(0.42); } }
@container (min-width: 650px) { .hero-preview iframe[b-870j05p2hd] { transform: scale(0.45); } }
@container (min-width: 700px) { .hero-preview iframe[b-870j05p2hd] { transform: scale(0.49); } }
@container (min-width: 800px) { .hero-preview iframe[b-870j05p2hd] { transform: scale(0.56); } }
@container (min-width: 900px) { .hero-preview iframe[b-870j05p2hd] { transform: scale(0.63); } }

/* the variant's photos in their order, and the ones to choose from */
.photo-list[b-870j05p2hd],
.photo-pick[b-870j05p2hd] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(9.5rem, 1fr));
    gap: 0.75rem;
    margin: 0.5rem 0 0;
    padding: 0;
    list-style: none;
}

.photo-list__item[b-870j05p2hd],
.photo-pick__item[b-870j05p2hd] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    min-width: 0;
}

.photo-list__item img[b-870j05p2hd],
.photo-pick__add img[b-870j05p2hd] {
    display: block;
    width: 100%;
    aspect-ratio: 5 / 4;
    object-fit: cover;
    border-radius: 6px;
    background: #ecebe7;
}

.photo-list__item:first-child img[b-870j05p2hd] {
    outline: 3px solid var(--mud-palette-primary);
    outline-offset: -3px;
}

.photo-list__name[b-870j05p2hd],
.photo-pick__alt[b-870j05p2hd] {
    overflow: hidden;
    font-size: 0.8125rem;
    line-height: 1.3;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.photo-pick__alt[b-870j05p2hd] {
    color: var(--mud-palette-text-secondary);
}

.photo-list__tools[b-870j05p2hd] {
    display: flex;
    justify-content: space-between;
}

.photo-pick__add[b-870j05p2hd] {
    display: grid;
    gap: 0.25rem;
    padding: 0;
    border: 0;
    background: none;
    color: var(--mud-palette-primary);
    font: inherit;
    font-size: 0.8125rem;
    font-weight: 600;
    text-align: left;
    cursor: pointer;
}

.photo-pick__add:disabled[b-870j05p2hd] {
    color: var(--mud-palette-text-secondary);
    cursor: default;
}

.photo-pick__add:disabled img[b-870j05p2hd] {
    opacity: 0.55;
}

.photo-pick__add:focus-visible img[b-870j05p2hd] {
    outline: 3px solid var(--mud-palette-primary);
    outline-offset: 2px;
}

/* the promo's photo beside its name */
.promo-choice[b-870j05p2hd] {
    display: flex;
    gap: 1rem;
    align-items: flex-start;
    margin-top: 0.5rem;
}

.promo-choice img[b-870j05p2hd] {
    flex: none;
    width: 6rem;
    aspect-ratio: 3 / 4;
    object-fit: cover;
    border-radius: 6px;
    background: #ecebe7;
}
/* /Components/Pages/Admin/HomeProductsPage.razor.rz.scp.css */
/* the chosen products and what the web shows now: a small picture, the name, the tools */
.picks[b-kxp7hdwok9] {
    display: grid;
    gap: 0.5rem;
    margin: 1rem 0 0;
    padding: 0;
    list-style: none;
}

.pick[b-kxp7hdwok9] {
    display: grid;
    grid-template-columns: 2.75rem minmax(0, 1fr) auto;
    gap: 0.75rem;
    align-items: center;
    width: 100%;
}

.picks .pick[b-kxp7hdwok9] {
    padding: 0.35rem 0.5rem;
    border: 1px solid #e0e0dc;
    border-radius: 8px;
}

.pick__photo[b-kxp7hdwok9] {
    display: grid;
    place-items: center;
    width: 2.75rem;
    height: 2.75rem;
    overflow: hidden;
    border-radius: 6px;
    background: #f5f5f3;
}

.pick__photo img[b-kxp7hdwok9] {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.pick__name[b-kxp7hdwok9] {
    display: grid;
    min-width: 0;
    line-height: 1.35;
}

.pick__note[b-kxp7hdwok9] {
    color: var(--mud-palette-warning-darken);
}

.pick__tools[b-kxp7hdwok9] {
    display: flex;
}
/* /Components/Pages/Admin/LogsPage.razor.rz.scp.css */
/* the day, what to show, a search and the file; one under the other on a phone */
.logs-filter[b-gj668f56bf] {
    display: grid;
    gap: 0.75rem;
    align-items: center;
    max-width: 70rem;
    margin-bottom: 1rem;
}

@media (min-width: 60em) {
    .logs-filter[b-gj668f56bf] {
        grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr) minmax(0, 1.3fr) auto;
    }
}

.logs-filter__buttons[b-gj668f56bf] {
    display: flex;
    gap: 0.25rem;
    align-items: center;
}

.logs-detail pre[b-gj668f56bf] {
    margin: 0;
    padding: 0.75rem 1rem;
    max-height: 28rem;
    overflow: auto;
    background: #f5f5f3;
    font-family: Consolas, "Courier New", monospace;
    font-size: 0.8125rem;
    white-space: pre-wrap;
    overflow-wrap: anywhere;
}
/* /Components/Pages/Admin/MailPage.razor.rz.scp.css */
.mail-preview[b-7oqprtbw2w] {
    display: grid;
    gap: 0.75rem;
    padding: 1rem 1.25rem 1.25rem;
    border: 1px solid #e6e6e1;
    border-radius: 10px;
    background: #fff;
}

.mail-preview__head[b-7oqprtbw2w] {
    display: grid;
    gap: 0.25rem;
    margin: 0;
    font-size: 0.875rem;
}

.mail-preview__head div[b-7oqprtbw2w] {
    display: grid;
    grid-template-columns: 7.5rem minmax(0, 1fr);
    gap: 0.5rem;
}

.mail-preview__head dt[b-7oqprtbw2w] {
    color: var(--color-muted);
}

.mail-preview__head dd[b-7oqprtbw2w] {
    margin: 0;
    overflow-wrap: anywhere;
}

/* the e-mail as it arrives, in a frame of its own */
.mail-preview__text[b-7oqprtbw2w] {
    margin: 0;
    padding: 1rem;
    border-radius: 6px;
    background: #f5f5f3;
    font-family: Consolas, "Courier New", monospace;
    font-size: 0.8125rem;
    white-space: pre-wrap;
    overflow-wrap: anywhere;
}

.mail-list[b-7oqprtbw2w]  .mail-row--open {
    background: #fff4ea;
}

/* the test: which e-mail, to whom, send */
.mail-test[b-7oqprtbw2w] {
    display: grid;
    gap: 0.75rem;
    align-items: center;
}

@media (min-width: 48em) {
    .mail-test[b-7oqprtbw2w] {
        grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr) auto;
    }
}

/* every e-mail the shop sends, in groups; the open one on the right */
.mail-gallery[b-7oqprtbw2w] {
    display: grid;
    gap: 0.35rem;
}

.mail-gallery__group[b-7oqprtbw2w] {
    margin: 0.9rem 0 0.15rem;
    color: var(--color-muted);
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.mail-gallery__group:first-child[b-7oqprtbw2w] {
    margin-top: 0;
}

/* a block, not a grid: a button centres a grid narrower than itself, so short texts moved right */
.mail-gallery__item[b-7oqprtbw2w] {
    display: block;
    width: 100%;
    padding: 0.6rem 0.85rem;
    border: 1px solid #e6e6e1;
    border-radius: 8px;
    background: #fff;
    color: inherit;
    font: inherit;
    text-align: left;
    cursor: pointer;
    transition: border-color 0.2s, background-color 0.2s;
}

.mail-gallery__item:hover[b-7oqprtbw2w] {
    border-color: #f3c7a3;
}

.mail-gallery__item--open[b-7oqprtbw2w] {
    border-color: var(--color-brand);
    background: #fff4ea;
}

.mail-gallery__item b[b-7oqprtbw2w] {
    display: block;
    font-size: 0.875rem;
}

.mail-gallery__item span[b-7oqprtbw2w] {
    display: block;
    margin-top: 0.1rem;
    color: var(--color-muted);
    font-size: 0.78rem;
    line-height: 1.35;
}

.mail-gallery__item .mail-gallery__signed[b-7oqprtbw2w] {
    color: var(--color-brand-dark);
}

/* phones and tablets: the e-mail opens over the list instead (MailPreviewDialog) */
@media (max-width: 79.99em) {
    .mail-side[b-7oqprtbw2w] {
        display: none;
    }
}

/* the title and "Napísať e-mail" */
.mail-head[b-7oqprtbw2w] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem 1.5rem;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 1rem;
}

/* a sample and the pencil for its words */
.mail-gallery__row[b-7oqprtbw2w] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 0.15rem;
    align-items: center;
}

.mail-gallery__item .mail-gallery__changed[b-7oqprtbw2w] {
    color: var(--color-brand-dark);
    font-weight: 600;
}

.mail-side__tools[b-7oqprtbw2w] {
    display: flex;
    justify-content: flex-end;
    margin-bottom: 0.5rem;
}

.mail-sent__text pre[b-7oqprtbw2w] {
    margin: 0;
    padding: 0.75rem 1rem;
    background: #f5f5f3;
    font: inherit;
    font-size: 0.875rem;
    white-space: pre-wrap;
    overflow-wrap: anywhere;
}
/* /Components/Pages/Admin/MessageTemplatesPage.razor.rz.scp.css */
/* how a quick reply gets into an e-mail, in three steps */
.quick-steps[b-d65g9mpil9] {
    display: grid;
    gap: 0.75rem;
    max-width: 72rem;
    margin: 0 0 1.75rem;
    padding: 0;
    list-style: none;
    counter-reset: step;
}

@media (min-width: 60em) {
    .quick-steps[b-d65g9mpil9] {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

.quick-steps li[b-d65g9mpil9] {
    position: relative;
    padding: 0.85rem 1rem 0.9rem 3.1rem;
    border: 1px solid #e6e6e1;
    border-radius: 10px;
    background: #fff;
    font-size: 0.875rem;
    line-height: 1.45;
    counter-increment: step;
}

.quick-steps li[b-d65g9mpil9]::before {
    content: counter(step);
    position: absolute;
    top: 0.8rem;
    left: 0.9rem;
    display: grid;
    place-items: center;
    width: 1.6rem;
    height: 1.6rem;
    border-radius: 50%;
    background: #fff1e5;
    color: var(--color-brand-dark);
    font-weight: 700;
}

.template-keys[b-d65g9mpil9] {
    display: grid;
    gap: 0.2rem;
    margin: 0;
    padding: 0;
    list-style: none;
    color: var(--color-muted);
    font-size: 0.85rem;
}

.template-keys code[b-d65g9mpil9] {
    margin-right: 0.35rem;
    padding: 0.05rem 0.35rem;
    border-radius: 4px;
    background: #f5f5f3;
    color: var(--color-ink);
    font-size: 0.8rem;
}
/* /Components/Pages/Admin/OrderDetail.razor.rz.scp.css */
.order-head[b-zivg4e49t6] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.25rem;
}

/* ---- the workflow as a line of steps ---- */

.order-steps[b-zivg4e49t6] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin: 0 0 1.75rem;
    padding: 0;
    list-style: none;
}

.order-steps__step[b-zivg4e49t6] {
    position: relative;
    display: grid;
    justify-items: center;
    gap: 0.4rem;
    color: var(--color-muted);
    font-size: 0.85rem;
    text-align: center;
}

/* the line to the previous step */
.order-steps__step + .order-steps__step[b-zivg4e49t6]::before {
    content: "";
    position: absolute;
    top: 0.55rem;
    right: 50%;
    width: 100%;
    height: 2px;
    background: #e3e3de;
}

.order-steps__dot[b-zivg4e49t6] {
    position: relative;
    z-index: 1;
    width: 1.1rem;
    height: 1.1rem;
    border: 2px solid #d6d6d1;
    border-radius: 50%;
    background: #fff;
}

.order-steps__step--done[b-zivg4e49t6],
.order-steps__step--current[b-zivg4e49t6] {
    color: var(--color-ink);
}

.order-steps__step--done .order-steps__dot[b-zivg4e49t6] {
    border-color: var(--color-brand);
    background: var(--color-brand);
}

.order-steps__step--done + .order-steps__step[b-zivg4e49t6]::before {
    background: var(--color-brand);
}

.order-steps__step--current .order-steps__dot[b-zivg4e49t6] {
    border-color: var(--color-brand);
    box-shadow: 0 0 0 4px rgb(243 122 31 / 0.2);
}

.order-steps__step--current .order-steps__label[b-zivg4e49t6] {
    font-weight: 700;
}

.order-steps__step--cancelled[b-zivg4e49t6] {
    color: var(--color-danger);
    font-weight: 700;
}

.order-steps__step--cancelled .order-steps__dot[b-zivg4e49t6] {
    border-color: var(--color-danger);
    background: var(--color-danger);
}

/* ---- cards ---- */

.order-card[b-zivg4e49t6] {
    display: grid;
    gap: 0.6rem;
    align-content: start;
    min-width: 0;
    margin-bottom: 1rem;
    padding: 1.1rem 1.25rem 1.25rem;
    border: 1px solid #e6e6e1;
    border-radius: 10px;
    background: #fff;
}

.order-card__title[b-zivg4e49t6] {
    margin: 0 0 0.25rem;
    font-size: 1rem;
    font-weight: 700;
}

.order-card__head[b-zivg4e49t6] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
}

.order-card__lines[b-zivg4e49t6],
.order-card__muted[b-zivg4e49t6],
.order-card__note[b-zivg4e49t6] {
    margin: 0;
    font-size: 0.9rem;
    line-height: 1.5;
}

.order-card__muted[b-zivg4e49t6] {
    color: var(--color-muted);
}

.order-card__note[b-zivg4e49t6] {
    white-space: pre-line;
}

.order-cards[b-zivg4e49t6] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(17rem, 100%), 1fr));
    column-gap: 1rem;
}

.order-card__customer-note[b-zivg4e49t6] {
    padding: 0.6rem 0.75rem;
    border-radius: 6px;
    background: #fff8f2;
}

.order-card__customer-note small[b-zivg4e49t6] {
    color: var(--color-brand-dark);
    font-weight: 700;
}

/* ---- the goods ---- */

.order-items[b-zivg4e49t6] {
    display: grid;
}

.order-item[b-zivg4e49t6] {
    display: grid;
    grid-template-columns: 3.5rem minmax(0, 1fr) auto auto;
    align-items: center;
    gap: 1rem;
    padding: 0.75rem 0;
    border-top: 1px solid #efefeb;
}

.order-item__photo[b-zivg4e49t6] {
    display: grid;
    place-items: center;
    width: 3.5rem;
    height: 3.5rem;
    border-radius: 6px;
    background: #f5f5f3;
    overflow: hidden;
}

.order-item__photo img[b-zivg4e49t6] {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.order-item__text[b-zivg4e49t6] {
    display: grid;
    gap: 0.1rem;
    min-width: 0;
}

.order-item__text small[b-zivg4e49t6] {
    color: var(--color-muted);
}

.order-item__in[b-zivg4e49t6] {
    color: var(--color-available) !important;
}

.order-item__out[b-zivg4e49t6] {
    color: #b8660f !important;
}

.order-item__gone[b-zivg4e49t6] {
    color: var(--color-danger) !important;
}

.order-item__qty[b-zivg4e49t6] {
    font-weight: 700;
    white-space: nowrap;
}

.order-item__price[b-zivg4e49t6] {
    display: grid;
    text-align: right;
    white-space: nowrap;
}

.order-item__price small[b-zivg4e49t6] {
    color: var(--color-muted);
}

.order-totals[b-zivg4e49t6] {
    display: grid;
    gap: 0.2rem;
    width: min(100%, 22rem);
    margin: 0.5rem 0 0 auto;
    padding-top: 0.75rem;
    border-top: 1px solid #efefeb;
    font-size: 0.9rem;
}

.order-totals div[b-zivg4e49t6] {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
}

.order-totals dd[b-zivg4e49t6] {
    margin: 0;
    white-space: nowrap;
}

.order-totals__discount dd[b-zivg4e49t6] {
    color: var(--color-brand-dark);
    font-weight: 700;
}

.order-totals__sum[b-zivg4e49t6] {
    margin-top: 0.3rem;
    font-size: 1.05rem;
    font-weight: 700;
}

.order-totals__vat[b-zivg4e49t6] {
    color: var(--color-muted);
    font-size: 0.8rem;
}

.order-others[b-zivg4e49t6] {
    display: grid;
    gap: 0.3rem;
    margin: 0;
    padding: 0;
    list-style: none;
    font-size: 0.85rem;
}

.order-others li[b-zivg4e49t6] {
    display: grid;
}

.order-others span[b-zivg4e49t6] {
    color: var(--color-muted);
}

.order-pay[b-zivg4e49t6] {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-top: 0.25rem;
}

.order-pay dl[b-zivg4e49t6] {
    display: grid;
    gap: 0.3rem;
    margin: 0;
    font-size: 0.85rem;
}

.order-pay dt[b-zivg4e49t6] {
    color: var(--color-muted);
}

/* an IBAN may break between its groups of four, never inside them */
.order-pay dd[b-zivg4e49t6] {
    margin: 0;
    font-weight: 700;
}

.order-attempts[b-zivg4e49t6] {
    display: grid;
    gap: 0.4rem;
    margin: 0;
    padding: 0;
    list-style: none;
    font-size: 0.85rem;
}

.order-attempts li[b-zivg4e49t6] {
    display: grid;
}

.order-attempts small[b-zivg4e49t6] {
    color: var(--color-muted);
}

/* ---- history ---- */

.order-history[b-zivg4e49t6] {
    display: grid;
    gap: 0.9rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.order-history__entry[b-zivg4e49t6] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 0.6rem;
    align-items: start;
}

.order-history__entry--note .order-history__text[b-zivg4e49t6] {
    padding: 0.4rem 0.6rem;
    border-radius: 6px;
    background: #fff8f2;
}

.order-history__entry--problem .order-history__text[b-zivg4e49t6] {
    color: var(--color-danger);
}

.order-history__text[b-zivg4e49t6] {
    margin: 0;
    font-size: 0.875rem;
    white-space: pre-line;
}

.order-history small[b-zivg4e49t6] {
    color: var(--color-muted);
    font-size: 0.75rem;
}

@media (max-width: 47.99em) {
    .order-steps[b-zivg4e49t6] {
        font-size: 0.75rem;
    }

    .order-item[b-zivg4e49t6] {
        grid-template-columns: 3rem minmax(0, 1fr) auto;
    }

    .order-item__qty[b-zivg4e49t6] {
        display: none;
    }

    .order-item__count[b-zivg4e49t6] {
        color: var(--color-ink);
        font-weight: 700;
    }
}

/* the count beside the price only where its own column is hidden */
@media (min-width: 48em) {
    .order-item__count[b-zivg4e49t6] {
        display: none;
    }
}

/* the e-mail of a step: who signs it, a look at it */
.order-card__mail[b-zivg4e49t6] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 0.25rem 0.5rem;
}

.order-complaints[b-zivg4e49t6] {
    display: grid;
    gap: 0.4rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.order-complaints li[b-zivg4e49t6] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.25rem 0.6rem;
    font-size: 0.875rem;
}

.order-complaints span[b-zivg4e49t6] {
    flex: 1 1 12rem;
    min-width: 0;
    color: var(--color-muted);
}
/* /Components/Pages/Admin/OrderForm.razor.rz.scp.css */
/* the same cards as the order's detail */
.edit-card[b-5572kfmoi5] {
    display: grid;
    gap: 0.75rem;
    align-content: start;
    min-width: 0;
    margin-bottom: 1rem;
    padding: 1.1rem 1.25rem 1.25rem;
    border: 1px solid #e6e6e1;
    border-radius: 10px;
    background: #fff;
}

.edit-card__title[b-5572kfmoi5] {
    margin: 0;
    font-size: 1rem;
    font-weight: 700;
}

/* beside the form on a wide screen, where the totals stay in view */
@media (min-width: 80em) {
    .edit-summary[b-5572kfmoi5] {
        position: sticky;
        top: 5rem;
    }
}

.edit-muted[b-5572kfmoi5],
.edit-empty[b-5572kfmoi5] {
    margin: 0;
    color: var(--color-muted);
    font-size: 0.875rem;
}

.edit-empty[b-5572kfmoi5] {
    padding: 0.75rem 0;
}

/* ---- adding goods ---- */

.edit-add[b-5572kfmoi5] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 0.5rem;
    align-items: center;
}

@media (max-width: 40em) {
    .edit-add[b-5572kfmoi5] {
        grid-template-columns: minmax(0, 1fr);
        justify-items: start;
    }
}

.edit-pick[b-5572kfmoi5] {
    display: grid;
    grid-template-columns: 2.75rem minmax(0, 1fr) auto;
    gap: 0.75rem;
    align-items: center;
    width: 100%;
}

.edit-pick__photo[b-5572kfmoi5] {
    display: grid;
    place-items: center;
    width: 2.75rem;
    height: 2.75rem;
    border-radius: 6px;
    background: #f5f5f3;
    overflow: hidden;
}

.edit-pick__photo img[b-5572kfmoi5] {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.edit-pick__text[b-5572kfmoi5],
.edit-pick__price[b-5572kfmoi5] {
    display: grid;
    min-width: 0;
    line-height: 1.35;
}

.edit-pick__text small[b-5572kfmoi5],
.edit-pick__price small[b-5572kfmoi5] {
    color: var(--color-muted);
}

.edit-pick__price[b-5572kfmoi5] {
    text-align: right;
    white-space: nowrap;
}

.edit-pick__note[b-5572kfmoi5] {
    color: #b8660f !important;
}

.edit-in[b-5572kfmoi5] {
    color: var(--color-available) !important;
}

.edit-out[b-5572kfmoi5] {
    color: #b8660f !important;
}

/* ---- the lines: the product, then pieces, price and the line's total; below the product on a phone ---- */

.edit-line[b-5572kfmoi5] {
    display: grid;
    grid-template-columns: 3rem minmax(0, 1fr) auto auto;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 0;
    border-top: 1px solid #efefeb;
}

.edit-line__photo[b-5572kfmoi5] {
    display: grid;
    place-items: center;
    width: 3rem;
    height: 3rem;
    border-radius: 6px;
    background: #f5f5f3;
    color: var(--color-muted);
    overflow: hidden;
}

.edit-line__photo img[b-5572kfmoi5] {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.edit-line__text[b-5572kfmoi5] {
    display: grid;
    gap: 0.1rem;
    min-width: 0;
    font-size: 0.9rem;
}

.edit-line__text small[b-5572kfmoi5] {
    color: var(--color-muted);
}

.edit-line__note[b-5572kfmoi5] {
    color: #b8660f !important;
}

.edit-line__fields[b-5572kfmoi5] {
    display: flex;
    gap: 0.5rem;
    align-items: center;
}

.edit-line__qty[b-5572kfmoi5] {
    width: 6rem;
}

.edit-line__price[b-5572kfmoi5] {
    width: 8.5rem;
}

.edit-line__total[b-5572kfmoi5] {
    min-width: 5.5rem;
    font-weight: 700;
    text-align: right;
    white-space: nowrap;
}

@media (max-width: 48em) {
    .edit-line[b-5572kfmoi5] {
        grid-template-columns: 3rem minmax(0, 1fr) auto;
    }

    .edit-line__fields[b-5572kfmoi5] {
        grid-column: 1 / -1;
        grid-row: 2;
    }

    .edit-line__qty[b-5572kfmoi5] {
        flex: 0 0 5.5rem;
        width: auto;
    }

    .edit-line__price[b-5572kfmoi5] {
        flex: 1 1 7rem;
        width: auto;
    }

    .edit-line__remove[b-5572kfmoi5] {
        grid-column: 3;
        grid-row: 1;
    }
}

/* ---- delivery and payment side by side, one under the other on a phone ---- */

.edit-choices[b-5572kfmoi5] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(16rem, 100%), 1fr));
    gap: 0.5rem 1.5rem;
}

.edit-choices[b-5572kfmoi5]  .mud-radio-group {
    display: grid;
}

/* ---- the totals ---- */

.edit-totals[b-5572kfmoi5] {
    display: grid;
    gap: 0.25rem;
    margin: 0;
    font-size: 0.9rem;
}

.edit-totals div[b-5572kfmoi5] {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
}

.edit-totals dd[b-5572kfmoi5] {
    margin: 0;
    white-space: nowrap;
}

.edit-totals__discount dd[b-5572kfmoi5] {
    color: var(--color-brand-dark);
    font-weight: 700;
}

.edit-totals__sum[b-5572kfmoi5] {
    margin-top: 0.35rem;
    padding-top: 0.5rem;
    border-top: 2px solid var(--color-ink);
    font-size: 1.1rem;
    font-weight: 700;
}
/* /Components/Pages/Admin/PackingSlip.razor.rz.scp.css */
/* an A4 sheet on screen and on paper */

.slip[b-3gbjpmx3s8] {
    position: relative;
    max-width: 50rem;
    margin: 2rem auto;
    padding: 4rem 2.5rem 2.5rem;    /* the top clears the print button */
    background: #fff;
    box-shadow: 0 2px 16px rgb(0 0 0 / 0.12);
    color: #000;
    font-size: 0.875rem;
    line-height: 1.45;
}

.slip__print[b-3gbjpmx3s8] {
    position: absolute;
    top: 1rem;
    right: 1rem;
    padding: 0.5rem 1.1rem;
    border: 0;
    border-radius: 999px;
    background: var(--color-brand);
    color: #fff;
    font: inherit;
    font-weight: 700;
    cursor: pointer;
}

.slip__print:hover[b-3gbjpmx3s8] {
    background: var(--color-brand-dark);
}

.slip__head[b-3gbjpmx3s8] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 2rem;
    padding-bottom: 1rem;
    border-bottom: 3px solid var(--color-brand);
    font-size: 0.9rem;
}

.slip__title[b-3gbjpmx3s8] {
    text-align: right;
}

.slip__title h1[b-3gbjpmx3s8] {
    margin: 0;
    font-family: var(--font-title);
    font-size: 1.75rem;
    font-weight: 400;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

.slip__title p[b-3gbjpmx3s8] {
    margin: 0;
}

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

.slip__parties h2[b-3gbjpmx3s8] {
    margin: 0 0 0.35rem;
    color: #555;
    font-size: 0.75rem;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.slip__parties p[b-3gbjpmx3s8] {
    margin: 0;
}

.slip__items[b-3gbjpmx3s8] {
    width: 100%;
    border-collapse: collapse;
}

.slip__items th[b-3gbjpmx3s8],
.slip__items td[b-3gbjpmx3s8] {
    padding: 0.45rem 0.5rem 0.45rem 0;
    border-bottom: 1px solid #ccc;
    text-align: left;
    vertical-align: top;
}

.slip__items thead th[b-3gbjpmx3s8] {
    border-bottom: 2px solid #000;
    font-size: 0.75rem;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.slip__items tfoot th[b-3gbjpmx3s8],
.slip__items tfoot td[b-3gbjpmx3s8] {
    border-bottom: 0;
    font-weight: 400;
    text-align: right;
}

.slip__items tfoot tr:first-child :is(th, td)[b-3gbjpmx3s8] {
    padding-top: 0.75rem;
    font-size: 1rem;
    font-weight: 700;
}

.slip__vat :is(th, td)[b-3gbjpmx3s8] {
    padding-top: 0;
    color: #555;
    font-size: 0.8rem;
}

.slip__number[b-3gbjpmx3s8] {
    padding-right: 0 !important;
    text-align: right !important;
    white-space: nowrap;
}

.slip__variant[b-3gbjpmx3s8] {
    display: block;
    color: #555;
    font-size: 0.8rem;
}

.slip__note[b-3gbjpmx3s8] {
    margin: 1.25rem 0 0;
    padding: 0.75rem 1rem;
    border: 1px solid #ccc;
}

.slip__signatures[b-3gbjpmx3s8] {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 1rem 2rem;
    margin-top: 3.5rem;
}

.slip__signatures p[b-3gbjpmx3s8] {
    margin: 0;
}

@media print {
    .slip[b-3gbjpmx3s8] {
        max-width: none;
        margin: 0;
        padding: 0;
        box-shadow: none;
    }

    .slip__print[b-3gbjpmx3s8] {
        display: none;
    }
}

@page {
    size: A4;
    margin: 15mm;
}
/* /Components/Pages/Admin/ProductDetail.razor.rz.scp.css */
.photos__head[b-3uu2c792s1] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
}

.photos[b-3uu2c792s1] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(9rem, 1fr));
    gap: 0.75rem;
}

.photos__item[b-3uu2c792s1] {
    display: grid;
    gap: 0.35rem;
    padding: 0.5rem;
    border: 1px solid #e6e6e1;
    border-radius: 8px;
}

.photos__item--hidden .photos__picture[b-3uu2c792s1] {
    opacity: 0.4;
}

.photos__picture[b-3uu2c792s1] {
    display: grid;
    place-items: center;
    aspect-ratio: 4 / 3;
    border-radius: 6px;
    background: #f5f5f3;
    color: var(--color-muted);
    font-size: 0.75rem;
    overflow: hidden;
}

.photos__picture img[b-3uu2c792s1] {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.photos__tags[b-3uu2c792s1] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.15rem;
}

.photos__actions[b-3uu2c792s1] {
    display: flex;
    justify-content: flex-end;
}

/* the description as the shop will show it */
.description-preview[b-3uu2c792s1] {
    margin-top: 0.75rem;
    padding: 0.75rem 1rem;
    border: 1px dashed #d9d9d4;
    border-radius: 8px;
    background: #fbfbfa;
}

.description-preview__text[b-3uu2c792s1] {
    font-size: 0.875rem;
    line-height: 1.6;
}

.description-preview__text[b-3uu2c792s1]  :is(p, ul, ol) {
    margin: 0 0 0.6rem;
}

.description-preview__text[b-3uu2c792s1]  h3 {
    margin: 0.8rem 0 0.35rem;
    font-size: 1rem;
}

/* six columns in the page's left part: less padding keeps the selling price in view on a laptop (under 960 px
   each variant is a card, AdminLayout) */
.variant-table[b-3uu2c792s1]  .mud-table .mud-table-cell {
    padding-left: 6px;
    padding-right: 6px;
}
/* /Components/Pages/Admin/ProfilePage.razor.rz.scp.css */
.profile-account[b-gczx7s95dc] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.75rem 1rem;
    max-width: 72rem;
    margin: 0 0 1.5rem;
    padding: 1rem 1.25rem;
    border: 1px solid #e6e6e1;
    border-radius: 10px;
    background: #fff;
}

.profile-account div[b-gczx7s95dc] {
    display: grid;
}

.profile-account span[b-gczx7s95dc] {
    color: var(--color-muted);
    font-size: 0.875rem;
}

.profile-card[b-gczx7s95dc] {
    display: grid;
    gap: 0.5rem;
    padding: 1.25rem 1.4rem 1.4rem;
    border: 1px solid #e6e6e1;
    border-radius: 10px;
    background: #fff;
}

.profile-card + .profile-card[b-gczx7s95dc] {
    margin-top: 1rem;
}

.profile-choice p[b-gczx7s95dc] {
    margin: -0.35rem 0 0.5rem 3.4rem;
    color: var(--color-muted);
    font-size: 0.8125rem;
}

/* the choice under the switch (MudRadioGroup draws the box, hence ::deep) */
.profile-choice[b-gczx7s95dc]  .profile-choice__when {
    display: grid;
    margin: -0.25rem 0 0.5rem 2.6rem;
}

.profile-choice__when small[b-gczx7s95dc] {
    color: var(--color-muted);
}

.profile-card__title[b-gczx7s95dc] {
    margin: 0;
    font-size: 1.1rem;
    font-weight: 700;
}

.profile-card__muted[b-gczx7s95dc] {
    margin: 0 0 0.25rem;
    color: var(--color-muted);
    font-size: 0.875rem;
}

.profile-closings[b-gczx7s95dc] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.1rem;
}

.profile-pair[b-gczx7s95dc] {
    display: grid;
    gap: 0 1rem;
}

@media (min-width: 40em) {
    .profile-pair[b-gczx7s95dc] {
        grid-template-columns: 1fr 1fr;
    }
}
/* /Components/Pages/Admin/SalesPage.razor.rz.scp.css */
.sales-head[b-akwxv2xrja] {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.75rem 1.5rem;
    margin-bottom: 1rem;
}

/* month or year, and the one shown with arrows either side */
.sales-period[b-akwxv2xrja] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem 1rem;
    margin-bottom: 1rem;
}

.sales-period__step[b-akwxv2xrja] {
    display: flex;
    align-items: center;
}

.sales-period__label[b-akwxv2xrja] {
    min-width: 9.5rem;
    font-size: 1.15rem;
    font-weight: 700;
    text-align: center;
}

.sales-period__note[b-akwxv2xrja] {
    color: var(--color-muted);
    font-size: 0.85rem;
}

/* ---- the sums ---- */

.sales-kpis[b-akwxv2xrja] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr));
    gap: 0.75rem;
    margin-bottom: 0.75rem;
}

.sales-kpi[b-akwxv2xrja] {
    display: grid;
    align-content: start;
    gap: 0.2rem;
    padding: 1.1rem 1.25rem;
    border: 1px solid #e6e6e1;
    border-radius: 10px;
    background: #fff;
}

.sales-kpi__label[b-akwxv2xrja] {
    color: var(--color-muted);
    font-size: 0.85rem;
}

.sales-kpi__value[b-akwxv2xrja] {
    font-size: 1.75rem;
    font-weight: 700;
    line-height: 1.15;
    white-space: nowrap;
}

.sales-kpi__sub[b-akwxv2xrja],
.sales-kpi__trend[b-akwxv2xrja] {
    color: var(--color-muted);
    font-size: 0.8rem;
}

.sales-kpi__trend[b-akwxv2xrja] {
    font-weight: 700;
}

.sales-up[b-akwxv2xrja] {
    color: var(--color-available) !important;
}

.sales-down[b-akwxv2xrja] {
    color: var(--color-danger) !important;
}

/* ---- the cards ---- */

.sales-grid[b-akwxv2xrja] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(20rem, 100%), 1fr));
    gap: 0.75rem;
    align-items: start;
}

.sales-card[b-akwxv2xrja] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    min-width: 0;
    margin-bottom: 0.75rem;
    padding: 1.1rem 1.25rem 1.25rem;
    border: 1px solid #e6e6e1;
    border-radius: 10px;
    background: #fff;
}

.sales-grid .sales-card[b-akwxv2xrja] {
    margin-bottom: 0;
}

.sales-card__head[b-akwxv2xrja] {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    justify-content: space-between;
    gap: 0.25rem 1rem;
}

.sales-card__title[b-akwxv2xrja] {
    margin: 0;
    font-size: 1rem;
    font-weight: 700;
}

.sales-card__subtitle[b-akwxv2xrja] {
    margin: 0.5rem 0 0;
    font-size: 0.9rem;
    font-weight: 700;
}

.sales-card__note[b-akwxv2xrja],
.sales-empty[b-akwxv2xrja] {
    margin: 0;
    color: var(--color-muted);
    font-size: 0.8rem;
}

.sales-empty[b-akwxv2xrja] {
    font-size: 0.9rem;
}

/* ---- tables ---- */

.sales-table[b-akwxv2xrja] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.875rem;
}

.sales-table th[b-akwxv2xrja] {
    padding: 0.35rem 0.5rem 0.35rem 0;
    border-bottom: 1px solid #e6e6e1;
    color: var(--color-muted);
    font-weight: 400;
    text-align: left;
}

.sales-table td[b-akwxv2xrja] {
    padding: 0.4rem 0.5rem 0.4rem 0;
    border-bottom: 1px solid #f0f0ec;
    vertical-align: top;
}

.sales-table .num[b-akwxv2xrja] {
    padding-right: 0;
    padding-left: 0.75rem;
    text-align: right;
    white-space: nowrap;
}

.sales-table__current td[b-akwxv2xrja] {
    background: #fff8f2;
    font-weight: 700;
}

/* the chart beside the months on a wide screen, above them otherwise */
.sales-months[b-akwxv2xrja] {
    display: grid;
    gap: 1rem 2rem;
    align-items: start;
}

@media (min-width: 80em) {
    .sales-months[b-akwxv2xrja] {
        grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr);
    }
}

/* a phone: the orders under the month, not in a column of their own */
.sales-table__count[b-akwxv2xrja] {
    display: none;
    color: var(--color-muted);
    font-size: 0.75rem;
    font-weight: 400;
}

@media (max-width: 40em) {
    .sales-table__orders[b-akwxv2xrja] {
        display: none;
    }

    .sales-table__count[b-akwxv2xrja] {
        display: block;
    }
}

.sales-till[b-akwxv2xrja] {
    display: flex;
    gap: 0.5rem;
    align-items: flex-start;
    margin: 0;
    padding: 0.6rem 0.75rem;
    border-radius: 6px;
    background: #f5faef;
    font-size: 0.875rem;
}

/* ---- the categories, each with its share as a bar ---- */

.sales-bars[b-akwxv2xrja] {
    display: grid;
    gap: 0.75rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.sales-bars li[b-akwxv2xrja] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 0.25rem 0.75rem;
    font-size: 0.875rem;
}

.sales-bars__value[b-akwxv2xrja] {
    font-weight: 700;
    white-space: nowrap;
}

.sales-bars__bar[b-akwxv2xrja] {
    grid-column: 1 / -1;
    height: 0.5rem;
    border-radius: 999px;
    background: #f0f0ec;
    overflow: hidden;
}

.sales-bars__bar span[b-akwxv2xrja] {
    display: block;
    height: 100%;
    border-radius: 999px;
    background: var(--color-brand);
}

.sales-bars__meta[b-akwxv2xrja] {
    grid-column: 1 / -1;
    color: var(--color-muted);
    font-size: 0.8rem;
}

/* ---- the best sellers ---- */

.sales-rank[b-akwxv2xrja] {
    display: grid;
    gap: 0.5rem;
    margin: 0;
    padding-left: 1.4rem;
    font-size: 0.875rem;
}

.sales-rank li[b-akwxv2xrja] {
    padding-left: 0.2rem;
}

.sales-rank__name[b-akwxv2xrja] {
    display: block;
    font-weight: 600;
}

.sales-rank__meta[b-akwxv2xrja] {
    color: var(--color-muted);
    font-size: 0.8rem;
}
/* /Components/Pages/Admin/StoreSettingsPage.razor.rz.scp.css */
/* the notice as the shop shows it (NoticeBar) */
.notice-preview[b-ve2k65shi3] {
    margin: 1rem 0 0;
    padding: 0.55rem 1rem 0.6rem;
    border-radius: 4px;
    background: var(--color-black);
    color: #fff;
    font-size: 0.875rem;
    font-weight: 600;
    line-height: 1.4;
    text-align: center;
}

.settings-save[b-ve2k65shi3] {
    display: flex;
    justify-content: flex-end;
    margin-top: 1rem;
}

@media (max-width: 47.99em) {
    .settings-save[b-ve2k65shi3] {
        position: sticky;
        bottom: 0;
        z-index: 2;
        margin: 1rem -1rem 0;
        padding: 0.75rem 1rem;
        border-top: 1px solid #e6e6e1;
        background: rgb(255 255 255 / 0.96);
    }

    .settings-save[b-ve2k65shi3]  .mud-button-root {
        width: 100%;
    }
}
/* /Components/Pages/Admin/UsersPage.razor.rz.scp.css */
.roles-head[b-sq2il9dmbg] {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1.25rem;
}

/* one card per role: its name, who has it and what it may do */
.roles[b-sq2il9dmbg] {
    display: grid;
    gap: 1rem;
}

@media (min-width: 48em) {
    .roles[b-sq2il9dmbg] {
        grid-template-columns: repeat(auto-fill, minmax(min(20rem, 100%), 1fr));
    }
}

.role-card[b-sq2il9dmbg] {
    display: grid;
    align-content: start;
    gap: 0.6rem;
    padding: 1rem 1.1rem 1.1rem;
    border: 1px solid #e6e6e1;
    border-radius: 10px;
    background: #fff;
}

.role-card--built-in[b-sq2il9dmbg] {
    background: #fbfaf8;
}

.role-card__head[b-sq2il9dmbg] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.5rem;
}

.role-card__name[b-sq2il9dmbg] {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    margin: 0;
    font-size: 1.05rem;
    font-weight: 700;
}

.role-card__users[b-sq2il9dmbg] {
    color: var(--color-muted);
    font-size: 0.8125rem;
}

.role-card__actions[b-sq2il9dmbg] {
    display: flex;
    flex: none;
    margin: -0.35rem -0.35rem 0 0;
}

.role-card__text[b-sq2il9dmbg] {
    margin: 0;
    color: #4d4d4a;
    font-size: 0.875rem;
}

.role-card__permissions[b-sq2il9dmbg] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.role-card__permissions li[b-sq2il9dmbg] {
    padding: 0.2rem 0.6rem;
    border-radius: 999px;
    background: #f1f1ee;
    font-size: 0.78rem;
}

.role-card__permissions .role-card__full[b-sq2il9dmbg] {
    background: #fff1e5;
    color: var(--color-brand-dark);
    font-weight: 600;
}

.role-card__permissions .role-card__none[b-sq2il9dmbg] {
    background: #fff8e1;
    color: #8a6100;
}
/* /Components/Pages/Admin/WorkshopDetail.razor.rz.scp.css */
.job-head[b-9x45psb2py] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.25rem;
}

/* ---- the workflow as a line of steps ---- */

.job-steps[b-9x45psb2py] {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    margin: 0 0 1.75rem;
    padding: 0;
    list-style: none;
}

.job-steps__step[b-9x45psb2py] {
    position: relative;
    display: grid;
    justify-items: center;
    gap: 0.4rem;
    color: var(--color-muted);
    font-size: 0.85rem;
    text-align: center;
}

/* the line to the previous step */
.job-steps__step + .job-steps__step[b-9x45psb2py]::before {
    content: "";
    position: absolute;
    top: 0.55rem;
    right: 50%;
    width: 100%;
    height: 2px;
    background: #e3e3de;
}

.job-steps__dot[b-9x45psb2py] {
    position: relative;
    z-index: 1;
    width: 1.1rem;
    height: 1.1rem;
    border: 2px solid #d6d6d1;
    border-radius: 50%;
    background: #fff;
}

.job-steps__step--done[b-9x45psb2py],
.job-steps__step--current[b-9x45psb2py] {
    color: var(--color-ink);
}

.job-steps__step--done .job-steps__dot[b-9x45psb2py] {
    border-color: var(--color-brand);
    background: var(--color-brand);
}

.job-steps__step--done + .job-steps__step[b-9x45psb2py]::before {
    background: var(--color-brand);
}

.job-steps__step--current .job-steps__dot[b-9x45psb2py] {
    border-color: var(--color-brand);
    box-shadow: 0 0 0 4px rgb(243 122 31 / 0.2);
}

.job-steps__step--current .job-steps__label[b-9x45psb2py] {
    font-weight: 700;
}

.job-steps__step--cancelled[b-9x45psb2py] {
    color: var(--color-danger);
    font-weight: 700;
}

.job-steps__step--cancelled .job-steps__dot[b-9x45psb2py] {
    border-color: var(--color-danger);
    background: var(--color-danger);
}

/* ---- cards ---- */

.job-card[b-9x45psb2py] {
    display: grid;
    gap: 0.6rem;
    align-content: start;
    min-width: 0;
    margin-bottom: 1rem;
    padding: 1.1rem 1.25rem 1.25rem;
    border: 1px solid #e6e6e1;
    border-radius: 10px;
    background: #fff;
}

.job-card__title[b-9x45psb2py] {
    margin: 0 0 0.25rem;
    font-size: 1rem;
    font-weight: 700;
}

.job-card__head[b-9x45psb2py] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
}

.job-card__lines[b-9x45psb2py],
.job-card__muted[b-9x45psb2py],
.job-card__note[b-9x45psb2py] {
    margin: 0;
    font-size: 0.9rem;
    line-height: 1.5;
}

.job-card__muted[b-9x45psb2py] {
    color: var(--color-muted);
}

.job-card__note[b-9x45psb2py] {
    white-space: pre-line;
}

.job-card__customer-note[b-9x45psb2py] {
    padding: 0.6rem 0.75rem;
    border-radius: 6px;
    background: #fff8f2;
}

.job-card__customer-note small[b-9x45psb2py] {
    color: var(--color-brand-dark);
    font-weight: 700;
}

.job-cards[b-9x45psb2py] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(17rem, 100%), 1fr));
    column-gap: 1rem;
}

/* ---- the machine and the services ---- */

.job-machine[b-9x45psb2py] {
    display: grid;
    grid-template-columns: 4rem minmax(0, 1fr);
    align-items: center;
    gap: 1rem;
}

.job-machine__photo[b-9x45psb2py] {
    display: grid;
    place-items: center;
    width: 4rem;
    height: 4rem;
    border-radius: 6px;
    background: #f5f5f3;
    overflow: hidden;
}

.job-machine__photo img[b-9x45psb2py] {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.job-machine__text[b-9x45psb2py] {
    display: grid;
    gap: 0.1rem;
    min-width: 0;
}

.job-machine__text small[b-9x45psb2py] {
    color: var(--color-muted);
}

.job-services[b-9x45psb2py] {
    display: grid;
    margin: 0;
    padding: 0;
    list-style: none;
    font-size: 0.9rem;
}

.job-services li[b-9x45psb2py] {
    display: grid;
    gap: 0.2rem;
    padding: 0.55rem 0;
    border-top: 1px solid #efefeb;
}

.job-services__row[b-9x45psb2py] {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
}

.job-services__row b[b-9x45psb2py] {
    white-space: nowrap;
}

.job-others[b-9x45psb2py] {
    display: grid;
    gap: 0.3rem;
    margin: 0;
    padding: 0;
    list-style: none;
    font-size: 0.85rem;
}

.job-others li[b-9x45psb2py] {
    display: grid;
}

.job-others span[b-9x45psb2py] {
    color: var(--color-muted);
}

/* the day and the time side by side, the two prices too */
.job-appointment[b-9x45psb2py],
.job-prices[b-9x45psb2py] {
    display: grid;
    grid-template-columns: minmax(0, 3fr) minmax(0, 2fr);
    gap: 0.75rem;
}

.job-prices[b-9x45psb2py] {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

/* ---- history ---- */

.job-history[b-9x45psb2py] {
    display: grid;
    gap: 0.9rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.job-history__entry[b-9x45psb2py] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 0.6rem;
    align-items: start;
}

.job-history__entry--note .job-history__text[b-9x45psb2py] {
    padding: 0.4rem 0.6rem;
    border-radius: 6px;
    background: #fff8f2;
}

.job-history__entry--problem .job-history__text[b-9x45psb2py] {
    color: var(--color-danger);
}

.job-history__text[b-9x45psb2py] {
    margin: 0;
    font-size: 0.875rem;
    white-space: pre-line;
}

.job-history small[b-9x45psb2py] {
    color: var(--color-muted);
    font-size: 0.75rem;
}

@media (max-width: 47.99em) {
    .job-steps[b-9x45psb2py] {
        font-size: 0.7rem;
    }
}

/* the e-mail of a step: who signs it, a look at it */
.job-card__mail[b-9x45psb2py] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 0.25rem 0.5rem;
}
/* /Components/Pages/Admin/WorkshopSheet.razor.rz.scp.css */
/* an A4 sheet on screen and on paper, like the packing slip */

.sheet[b-l96mht654c] {
    position: relative;
    max-width: 50rem;
    margin: 2rem auto;
    padding: 4rem 2.5rem 2.5rem;    /* the top clears the print button */
    background: #fff;
    box-shadow: 0 2px 16px rgb(0 0 0 / 0.12);
    color: #000;
    font-size: 0.875rem;
    line-height: 1.45;
}

.sheet__print[b-l96mht654c] {
    position: absolute;
    top: 1rem;
    right: 1rem;
    padding: 0.5rem 1.1rem;
    border: 0;
    border-radius: 999px;
    background: var(--color-brand);
    color: #fff;
    font: inherit;
    font-weight: 700;
    cursor: pointer;
}

.sheet__print:hover[b-l96mht654c] {
    background: var(--color-brand-dark);
}

.sheet__head[b-l96mht654c] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 2rem;
    padding-bottom: 1rem;
    border-bottom: 3px solid var(--color-brand);
    font-size: 0.9rem;
}

.sheet__title[b-l96mht654c] {
    text-align: right;
}

.sheet__title h1[b-l96mht654c] {
    margin: 0;
    font-family: var(--font-title);
    font-size: 1.75rem;
    font-weight: 400;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

.sheet__title p[b-l96mht654c] {
    margin: 0;
}

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

.sheet h2[b-l96mht654c] {
    margin: 0 0 0.35rem;
    color: #555;
    font-size: 0.75rem;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.sheet__parties p[b-l96mht654c] {
    margin: 0;
}

.sheet__items[b-l96mht654c] {
    width: 100%;
    border-collapse: collapse;
}

.sheet__items th[b-l96mht654c],
.sheet__items td[b-l96mht654c] {
    padding: 0.45rem 0.5rem 0.45rem 0;
    border-bottom: 1px solid #ccc;
    text-align: left;
    vertical-align: top;
}

.sheet__items thead th[b-l96mht654c] {
    border-bottom: 2px solid #000;
    font-size: 0.75rem;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.sheet__number[b-l96mht654c] {
    padding-right: 0 !important;
    text-align: right !important;
    white-space: nowrap;
}

.sheet__details[b-l96mht654c] {
    display: block;
    color: #555;
    font-size: 0.8rem;
}

.sheet__box[b-l96mht654c] {
    margin: 1.25rem 0 0;
    padding: 0.75rem 1rem;
    border: 1px solid #ccc;
    white-space: pre-line;
}

.sheet__work[b-l96mht654c] {
    margin-top: 1.75rem;
}

.sheet__work-text[b-l96mht654c] {
    margin: 0;
    white-space: pre-line;
}

/* empty lines to write on by hand */
.sheet__lines[b-l96mht654c] {
    display: grid;
}

.sheet__lines span[b-l96mht654c] {
    height: 1.9rem;
    border-bottom: 1px dotted #888;
}

.sheet__prices[b-l96mht654c] {
    display: grid;
    gap: 0.3rem;
    width: min(100%, 20rem);
    margin: 1.25rem 0 0 auto;
}

.sheet__prices div[b-l96mht654c] {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
}

.sheet__prices dd[b-l96mht654c] {
    margin: 0;
    font-weight: 700;
}

.sheet__signatures[b-l96mht654c] {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 1.5rem 2rem;
    margin-top: 3.5rem;
}

.sheet__signatures p[b-l96mht654c] {
    margin: 0;
}

@media print {
    .sheet[b-l96mht654c] {
        max-width: none;
        margin: 0;
        padding: 0;
        box-shadow: none;
    }

    .sheet__print[b-l96mht654c] {
        display: none;
    }
}

@page {
    size: A4;
    margin: 15mm;
}
/* /Components/Pages/Shop/CartPage.razor.rz.scp.css */
/* Step 1: the lines and the tips on the left, the order box on the right (it stays in view).
   Phones: the lines, the box with the button, then the tips. What changes glides into place (app.css). */

.cart-notice[b-up3faops9o] {
    margin: 0 0 1.25rem;
    padding: 0.9rem 1.1rem;
    border-left: 3px solid var(--color-brand);
    background: #fff6ef;
    font-size: 0.9375rem;
}

.cart-notice--warning[b-up3faops9o] {
    border-left-color: var(--color-unavailable);
    background: #fff1f1;
}

/* ---- an empty cart ---- */

.cart-empty[b-up3faops9o] {
    display: grid;
    justify-items: center;
    gap: 0.75rem;
    padding: clamp(1rem, 4vw, 2.5rem) 1rem clamp(1rem, 3vw, 2rem);
    text-align: center;
}

.cart-empty__icon[b-up3faops9o] {
    display: grid;
    place-items: center;
    width: 6.5rem;
    height: 6.5rem;
    margin-bottom: 0.5rem;
    border-radius: 50%;
    background: var(--color-surface-alt);
    color: var(--color-ink-soft);
}

.cart-empty__icon[b-up3faops9o]  .icon {
    width: 3rem;
    height: 3rem;
}

.cart-empty__text[b-up3faops9o] {
    margin: 0;
    font-family: var(--font-title);
    font-size: 1.375rem;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

.cart-empty__hint[b-up3faops9o] {
    margin: 0;
    color: var(--color-muted);
    font-family: var(--font-body);
}

.cart-empty__button[b-up3faops9o] {
    margin-top: 0.75rem;
    padding: 0.95em 1.8em;
    font-size: 0.875rem;
}

/* ---- the layout ---- */

.basket[b-up3faops9o] {
    display: grid;
    gap: 2.5rem;
}

.basket__lines[b-up3faops9o],
.basket__summary[b-up3faops9o],
.basket__tips[b-up3faops9o] {
    min-width: 0;
}

@media (min-width: 64em) {
    .basket[b-up3faops9o] {
        grid-template-columns: minmax(0, 1fr) clamp(21rem, 27vw, 26rem);
        grid-template-rows: auto 1fr;
        grid-template-areas:
            "lines summary"
            "tips summary";
        gap: 0 clamp(2.5rem, 4.5vw, 5rem);
        align-items: start;
    }

    .basket__lines[b-up3faops9o] {
        grid-area: lines;
    }

    .basket__tips[b-up3faops9o] {
        grid-area: tips;
    }

    .basket__summary[b-up3faops9o] {
        grid-area: summary;
        position: sticky;
        top: calc(var(--header-height) + 1.25rem);
    }
}

.basket__title[b-up3faops9o] {
    display: flex;
    align-items: baseline;
    gap: 0.75rem;
    margin: 0 0 0.5rem;
    font-family: var(--font-title);
    font-size: clamp(1.5rem, 2.2vw, 2rem);
    font-weight: 400;
    letter-spacing: 0.02em;
    line-height: 1.1;
    text-transform: uppercase;
}

.basket__count[b-up3faops9o] {
    color: var(--color-faint);
    font-family: var(--font-text);
    font-size: 0.9375rem;
    font-weight: 700;
    letter-spacing: 0.04em;
}

/* ---- the lines ---- */

.cart-lines[b-up3faops9o] {
    margin: 0;
    padding: 0;
    list-style: none;
}

/* the photo beside the name and the price, the quantity under the name */
.cart-line[b-up3faops9o] {
    display: grid;
    grid-template-columns: 5rem minmax(0, 1fr);
    grid-template-areas:
        "photo info"
        "photo price"
        "actions actions";
    gap: 0.75rem 1rem;
    padding: 1.25rem 0;
    border-bottom: 1px solid var(--color-line);
}

.cart-line__photo[b-up3faops9o] {
    grid-area: photo;
    position: relative;
    display: block;
    align-self: start;
    aspect-ratio: 1;
}

.cart-line__photo[b-up3faops9o]  .product-photo {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: contain;
    transition: transform 0.45s var(--ease-out);
}

.cart-line:hover .cart-line__photo[b-up3faops9o]  .product-photo {
    transform: scale(1.06);
}

.cart-line__info[b-up3faops9o] {
    grid-area: info;
    min-width: 0;
}

.cart-line__info p[b-up3faops9o],
.cart-line__price p[b-up3faops9o] {
    margin: 0;
}

/* the name gets a line drawn under it */
.cart-line__name[b-up3faops9o] {
    background: linear-gradient(currentColor, currentColor) 0 100% / 0 1px no-repeat;
    color: var(--color-black);
    font-family: var(--font-title);
    font-size: clamp(1.0625rem, 1.3vw, 1.3125rem);
    letter-spacing: 0.01em;
    line-height: 1.2;
    text-decoration: none;
    text-transform: uppercase;
    transition: color 0.2s var(--ease-out), background-size 0.35s var(--ease-out);
}

.cart-line__name:hover[b-up3faops9o] {
    background-size: 100% 1px;
    color: var(--color-brand);
}

.cart-line__info .cart-line__detail[b-up3faops9o] {
    margin-top: 0.3rem;
    color: var(--color-ink-soft);
    font-family: var(--font-body);
    font-size: 0.875rem;
    line-height: 1.4;
}

.cart-line__info .cart-line__meta[b-up3faops9o] {
    margin-top: 0.35rem;
    color: var(--color-muted);
    font-size: var(--fs-small);
}

.cart-line__info .cart-line__gone[b-up3faops9o] {
    margin-top: 0.4rem;
    color: var(--color-unavailable);
    font-size: 0.8125rem;
    font-weight: 700;
}

.cart-line--gone .cart-line__photo[b-up3faops9o],
.cart-line--gone .cart-line__name[b-up3faops9o],
.cart-line--gone .cart-line__detail[b-up3faops9o],
.cart-line--gone .cart-line__price[b-up3faops9o] {
    opacity: 0.5;
}

.cart-line__price[b-up3faops9o] {
    grid-area: price;
}

.cart-line__total[b-up3faops9o] {
    font-family: var(--font-title);
    font-size: clamp(1.25rem, 1.6vw, 1.5rem);
    letter-spacing: 0.01em;
    white-space: nowrap;
}

.cart-line__price .cart-line__unit[b-up3faops9o] {
    color: var(--color-muted);
    font-size: 0.8125rem;
    white-space: nowrap;
}

.cart-line__actions[b-up3faops9o] {
    grid-area: actions;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

/* − 2 +, three joined squares */
.cart-line__quantity[b-up3faops9o] {
    display: inline-flex;
    margin: 0;
    border: 1px solid var(--color-black);
}

.cart-line__step[b-up3faops9o] {
    display: grid;
    place-items: center;
    width: 2.25rem;
    height: 2.25rem;
    padding: 0;
    border: 0;
    background: #fff;
    color: var(--color-black);
    cursor: pointer;
    transition: background-color 0.2s var(--ease-out), color 0.2s var(--ease-out);
}

.cart-line__step:hover:not(:disabled)[b-up3faops9o] {
    background: var(--color-black);
    color: #fff;
}

.cart-line__step:focus-visible[b-up3faops9o] {
    outline: 2px solid var(--color-brand);
    outline-offset: -2px;
}

.cart-line__step:disabled[b-up3faops9o] {
    color: #c9c9c6;
    cursor: default;
}

.cart-line__step[b-up3faops9o]  .icon {
    width: 0.85rem;
    height: 0.85rem;
    transition: transform 0.15s var(--ease-out);
}

.cart-line__step:active:not(:disabled)[b-up3faops9o]  .icon {
    transform: scale(0.7);
}

.cart-line__count[b-up3faops9o] {
    display: grid;
    place-items: center;
    min-width: 2.5rem;
    border-inline: 1px solid var(--color-black);
    font-weight: 700;
    font-variant-numeric: tabular-nums;
}

.cart-line__remove[b-up3faops9o] {
    margin: 0;
}

.cart-line__remove button[b-up3faops9o] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.4rem 0.2rem;
    border: 0;
    background: none;
    color: var(--color-muted);
    font: inherit;
    font-size: 0.8125rem;
    cursor: pointer;
    transition: color 0.2s var(--ease-out);
}

.cart-line__remove button:hover[b-up3faops9o] {
    color: var(--color-unavailable);
}

.cart-line__remove[b-up3faops9o]  .icon {
    width: 1.1rem;
    height: 1.1rem;
    transition: transform 0.3s var(--ease-out);
}

.cart-line__remove button:hover[b-up3faops9o]  .icon {
    transform: rotate(-12deg) scale(1.1);
}

/* the line of what was just put into the cart lights up for a moment, once it has glided into place;
   a tint layer that fades (opacity) instead of a changing background, so nothing repaints meanwhile */
@media (prefers-reduced-motion: no-preference) {
    .cart-line--added[b-up3faops9o] {
        position: relative;
        isolation: isolate;
    }

    .cart-line--added[b-up3faops9o]::before {
        content: "";
        position: absolute;
        inset: 0;
        z-index: -1;
        background: rgb(243 122 31 / 0.14);
        opacity: 0;
        pointer-events: none;
        animation: line-added-b-up3faops9o 2.4s var(--ease-out) 0.5s both;
    }
}

@keyframes line-added-b-up3faops9o {
    from {
        opacity: 1;
    }

    to {
        opacity: 0;
    }
}

/* wider: the price on the right of the name, the quantity and "Odstrániť" under it */
@media (min-width: 40em) {
    .cart-line[b-up3faops9o] {
        grid-template-columns: clamp(5.5rem, 7vw, 7rem) minmax(0, 1fr) auto;
        grid-template-areas:
            "photo info price"
            "photo actions price";
        gap: 0.9rem clamp(1rem, 2vw, 1.75rem);
        padding: 1.5rem 0;
    }

    .cart-line__price[b-up3faops9o] {
        text-align: right;
    }

    .cart-line__actions[b-up3faops9o] {
        align-self: end;
        justify-content: flex-start;
        gap: 1.5rem;
    }
}

/* ---- the order box ---- */

/* one column as wide as the box: the code's field and button don't push it wider */
.order-box[b-up3faops9o] {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 1.15rem;
    padding: clamp(1.25rem, 2vw, 1.75rem);
    border-radius: 8px;
    background: var(--color-surface-alt);
}

.order-box__title[b-up3faops9o] {
    margin: 0;
    font-family: var(--font-title);
    font-size: 1.25rem;
    font-weight: 400;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

.order-box__reservation[b-up3faops9o] {
    margin: 0;
    padding: 0.9rem 1rem;
    border-radius: 6px;
    background: #fff;
    font-size: 0.875rem;
}

.order-box__delivery[b-up3faops9o] {
    display: grid;
    gap: 0.5rem;
    margin: 0;
    font-size: 0.9375rem;
}

.order-box__delivery div[b-up3faops9o] {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
}

.order-box__delivery dt[b-up3faops9o] {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    color: var(--color-ink-soft);
}

.order-box__delivery dd[b-up3faops9o] {
    margin: 0;
    font-weight: 700;
    white-space: nowrap;
}

.order-box[b-up3faops9o]  .icon {
    flex: none;
    width: 1.15rem;
    height: 1.15rem;
}

/* a discount code: a quiet "Máte zľavový kód?" that opens a field (16 px, or an iPhone zooms in); an
   applied one on the brand's light orange, one that doesn't count on grey with the reason */
.code__toggle[b-up3faops9o] {
    display: inline-flex;
    align-items: center;
    color: var(--color-ink-soft);
    font-size: 0.875rem;
    text-decoration: underline;
    text-underline-offset: 0.2em;
    cursor: pointer;
    list-style: none;
}

.code__toggle[b-up3faops9o]::-webkit-details-marker {
    display: none;
}

.code__toggle:hover[b-up3faops9o] {
    color: var(--color-black);
}

.code__field[b-up3faops9o] {
    display: flex;
    gap: 0.5rem;
    margin-top: 0.65rem;
}

.code__field input[b-up3faops9o] {
    flex: 1 1 auto;
    min-width: 0;
    height: 2.75rem;
    padding: 0 1rem;
    border: 1px solid #c9c9c6;
    border-radius: var(--radius-pill);
    background: #fff;
    color: var(--color-black);
    font: inherit;
    font-size: 1rem;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.code__field input[b-up3faops9o]::placeholder {
    color: var(--color-faint);
    letter-spacing: 0;
    text-transform: none;
}

.code__field input:focus-visible[b-up3faops9o] {
    border-color: var(--color-black);
    outline: none;
    box-shadow: var(--focus-ring);
}

.code__apply[b-up3faops9o] {
    flex: none;
    height: 2.75rem;
}

.code__problem[b-up3faops9o] {
    margin: 0.5rem 0 0;
    color: var(--color-unavailable);
    font-size: 0.8125rem;
    line-height: 1.4;
}

.code__applied[b-up3faops9o] {
    display: grid;
    gap: 0.3rem;
    padding: 0.75rem 0.9rem;
    border-radius: 8px;
    background: #fff4ea;
}

.code__applied--off[b-up3faops9o] {
    background: #fff;
}

.code__applied--off .code__problem[b-up3faops9o] {
    margin: 0;
}

.code__row[b-up3faops9o] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin: 0;
    font-size: 0.9375rem;
}

.code__name[b-up3faops9o] {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    min-width: 0;
    overflow-wrap: anywhere;
}

.code__amount[b-up3faops9o] {
    color: #b8470f;
    white-space: nowrap;
}

.code__remove[b-up3faops9o] {
    padding: 0;
    border: 0;
    background: none;
    color: var(--color-ink-soft);
    font: inherit;
    font-size: 0.8125rem;
    text-decoration: underline;
    text-underline-offset: 0.2em;
    cursor: pointer;
}

.code__remove:hover[b-up3faops9o] {
    color: var(--color-black);
}

.order-box__total[b-up3faops9o] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 1rem;
    margin: 0;
    padding-top: 1.1rem;
    border-top: 1px solid #dcdcd7;
}

.order-box__total span[b-up3faops9o] {
    font-size: 0.9375rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.order-box__total small[b-up3faops9o] {
    display: block;
    color: var(--color-muted);
    font-size: 0.75rem;
    font-weight: 400;
    letter-spacing: 0;
    text-transform: none;
}

.order-box__total strong[b-up3faops9o] {
    font-family: var(--font-title);
    font-size: clamp(1.75rem, 2.3vw, 2.25rem);
    font-weight: 400;
    letter-spacing: 0.01em;
    line-height: 1;
    white-space: nowrap;
}

/* phones: the button's label on one line */
@media (max-width: 29.99em) {
    .order-box .shop-form__submit[b-up3faops9o] {
        padding-inline: 1rem;
        font-size: 1rem;
    }
}

.order-box__blocked[b-up3faops9o] {
    margin: 0;
    color: var(--color-unavailable);
    font-size: 0.875rem;
    font-weight: 700;
}

.order-box__trust[b-up3faops9o] {
    display: grid;
    gap: 0.5rem;
    margin: 0.1rem 0 0;
    padding: 0;
    color: var(--color-ink-soft);
    font-size: 0.8125rem;
    list-style: none;
}

.order-box__trust li[b-up3faops9o] {
    display: flex;
    align-items: center;
    gap: 0.55rem;
}

.order-box__trust[b-up3faops9o]  .icon {
    color: var(--color-brand);
}

.order-box__trust a[b-up3faops9o] {
    color: var(--color-ink);
    font-weight: 700;
    text-decoration: none;
    white-space: nowrap;
}

.order-box__trust a:hover[b-up3faops9o] {
    color: var(--color-brand);
}

/* ---- towards the cheaper and the free courier ---- */

.courier[b-up3faops9o] {
    --track: 0.5rem;
    padding: 1rem 1.1rem 1.1rem;
    border-radius: 6px;
    background: #fff;
    box-shadow: 0 1px 2px rgb(0 0 0 / 0.05);
}

.courier__text[b-up3faops9o] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    margin: 0 0 1.1rem;
    font-size: 0.9375rem;
    line-height: 1.4;
}

.courier__text strong[b-up3faops9o] {
    color: var(--color-brand-dark);
}

.courier--free .courier__text[b-up3faops9o] {
    align-items: center;
}

.courier--free .courier__text strong[b-up3faops9o] {
    color: var(--color-ink);
}

.courier__icon[b-up3faops9o] {
    display: grid;
    flex: none;
    place-items: center;
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 50%;
    background: #fff1e6;
    color: var(--color-brand);
}

.courier .courier__icon[b-up3faops9o]  .icon {
    width: 1.3rem;
    height: 1.3rem;
}

.courier__tips[b-up3faops9o] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    width: fit-content;
    margin-top: 0.3rem;
    color: var(--color-ink);
    font-size: 0.8125rem;
    font-weight: 700;
    text-decoration: none;
}

.courier__tips:hover[b-up3faops9o] {
    color: var(--color-brand);
}

.courier .courier__tips[b-up3faops9o]  .icon {
    width: 0.9rem;
    height: 0.9rem;
}

/* a container, so the truck can ride along it in cqi units: the fill and the truck move by transform
   only, which the graphics card does on its own (js/cart.js glides them from the old amount) */
.courier__bar[b-up3faops9o] {
    position: relative;
    margin: 0 0.25rem;
    padding-bottom: 2.6rem;
    container-type: inline-size;
}

.courier--free .courier__bar[b-up3faops9o] {
    padding-bottom: 0.9rem;
}

.courier__track[b-up3faops9o] {
    display: block;
    height: var(--track);
    overflow: hidden;
    border-radius: var(--radius-pill);
    background: #e7e7e3;
}

/* the track rounds its ends; the fill's own end hides under the truck */
.courier__fill[b-up3faops9o] {
    position: relative;
    display: block;
    height: 100%;
    overflow: hidden;
    background: linear-gradient(90deg, #f8a660, var(--color-brand));
    transform: scaleX(max(0.001, var(--progress)));
    transform-origin: left;
}

/* a glint runs along it once the page has glided in */
.courier__fill[b-up3faops9o]::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(100deg, transparent 25%, rgb(255 255 255 / 0.65) 50%, transparent 75%);
    transform: translateX(-100%);
}

@media (prefers-reduced-motion: no-preference) {
    .courier__fill[b-up3faops9o]::after {
        animation: courier-glint-b-up3faops9o 1.4s var(--ease-out) 0.5s both;
    }
}

@keyframes courier-glint-b-up3faops9o {
    to {
        transform: translateX(100%);
    }
}

/* the goals: a notch through the track and what it brings under it */
.courier__mark[b-up3faops9o] {
    position: absolute;
    top: 0;
    display: grid;
    justify-items: center;
    color: var(--color-muted);
    font-size: 0.6875rem;
    line-height: 1.3;
    text-align: center;
    white-space: nowrap;
}

.courier__mark[b-up3faops9o]::before {
    content: "";
    width: 2px;
    height: calc(var(--track) + 0.5rem);
    margin: -0.25rem 0 0.6rem;
    border-radius: 1px;
    background: #b9b9b6;
}

.courier__mark b[b-up3faops9o] {
    color: var(--color-ink-soft);
    font-size: 0.75rem;
}

.courier__mark--half[b-up3faops9o] {
    left: 50%;
    transform: translateX(-50%);
}

.courier__mark--end[b-up3faops9o] {
    right: 0;
    justify-items: end;
    text-align: right;
}

.courier__mark--reached[b-up3faops9o]::before {
    background: var(--color-brand-dark);
}

.courier__mark--reached b[b-up3faops9o] {
    color: var(--color-brand-dark);
}

/* the truck rides on the end of the orange part; over 100 € it has arrived */
.courier__truck[b-up3faops9o] {
    position: absolute;
    top: calc(var(--track) / 2);
    left: 0;
    z-index: 1;
    display: grid;
    place-items: center;
    width: 1.8rem;
    height: 1.8rem;
    border: 2px solid #fff;
    border-radius: 50%;
    background: var(--color-brand);
    color: #fff;
    box-shadow: 0 4px 10px -3px rgb(243 122 31 / 0.75);
    transform: translate(calc(clamp(0.9rem, var(--progress) * 100cqi, 100cqi - 0.9rem) - 50%), -50%);
}

@media (prefers-reduced-motion: no-preference) {
    .courier__fill[b-up3faops9o],
    .courier__truck[b-up3faops9o] {
        transition: transform 0.6s var(--ease-glide);
    }

    /* coming into the cart from a product (html.cart-arriving, js/cart.js): the bar fills up, then the
       truck turns up at its end */
    html.cart-arriving .courier__fill[b-up3faops9o] {
        animation: courier-fill-b-up3faops9o 0.6s var(--ease-glide) 0.12s both;
    }

    html.cart-arriving .courier__truck[b-up3faops9o] {
        animation: courier-truck-b-up3faops9o 0.3s var(--ease-out) 0.55s both;
    }
}

@keyframes courier-fill-b-up3faops9o {
    from {
        transform: scaleX(0.001);
    }
}

@keyframes courier-truck-b-up3faops9o {
    from {
        opacity: 0;
        scale: 0.4;
    }
}

.courier .courier__truck[b-up3faops9o]  .icon {
    width: 1rem;
    height: 1rem;
}

.courier--free .courier__truck[b-up3faops9o]::after {
    content: "";
    position: absolute;
    inset: -2px;
    border: 2px solid var(--color-brand);
    border-radius: 50%;
    opacity: 0;
}

@media (prefers-reduced-motion: no-preference) {
    .courier--free .courier__truck[b-up3faops9o]::after {
        animation: courier-ring-b-up3faops9o 1.6s var(--ease-out) 0.5s;
    }
}

@keyframes courier-ring-b-up3faops9o {
    from {
        opacity: 0.8;
        transform: scale(1);
    }

    to {
        opacity: 0;
        transform: scale(2.2);
    }
}

/* ---- tips ---- */

.tips[b-up3faops9o] {
    margin-top: 0;
}

.basket__tips[b-up3faops9o] {
    padding-top: clamp(0.5rem, 2vw, 2.5rem);
}

.tips--wide[b-up3faops9o] {
    margin-top: clamp(1.5rem, 4vw, 3rem);
}

.tips__title[b-up3faops9o] {
    margin: 0 0 1.1rem;
    font-family: var(--font-title);
    font-size: clamp(1.25rem, 1.6vw, 1.5rem);
    font-weight: 400;
    letter-spacing: 0.02em;
    line-height: 1.2;
    text-transform: uppercase;
}

.tips--wide .tips__title[b-up3faops9o] {
    text-align: center;
}

/* phones: a row to swipe through */
.tips__list[b-up3faops9o] {
    display: grid;
    grid-auto-columns: min(62%, 15rem);
    grid-auto-flow: column;
    gap: 0.9rem;
    margin: 0 calc(-1 * var(--gutter));
    padding: 0.25rem var(--gutter) 0.75rem;
    overflow-x: auto;
    list-style: none;
    scroll-padding-inline: var(--gutter);
    scroll-snap-type: x mandatory;
    scrollbar-width: thin;
}

.tip[b-up3faops9o] {
    position: relative;
    display: flex;
    flex-direction: column;
    padding: 0.9rem;
    border: 1px solid var(--color-line);
    border-radius: 8px;
    background: #fff;
    scroll-snap-align: start;
    transition: transform 0.3s var(--ease-out);
}

/* the hover's darker border and shadow are a layer that fades in: a changing border colour or shadow
   would be redrawn on every frame, and tips slide under the pointer when the cart changes */
.tip[b-up3faops9o]::before {
    content: "";
    position: absolute;
    inset: -1px;
    z-index: 2;
    border: 1px solid #d6d6d2;
    border-radius: inherit;
    box-shadow: 0 14px 28px -16px rgb(0 0 0 / 0.28);
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s var(--ease-out);
}

.tip:hover[b-up3faops9o] {
    transform: translateY(-2px);
}

.tip:hover[b-up3faops9o]::before {
    opacity: 1;
}

.tip__photo[b-up3faops9o] {
    position: relative;
    display: block;
    height: 8.5rem;
    margin-bottom: 0.8rem;
}

.tip__photo[b-up3faops9o]  .product-photo {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: contain;
    transition: transform 0.45s var(--ease-out);
}

.tip:hover .tip__photo[b-up3faops9o]  .product-photo {
    transform: scale(1.05);
}

/* "S týmto máte dopravu zadarmo" over the photo */
.tip__badge[b-up3faops9o] {
    position: absolute;
    top: 0.6rem;
    left: 0.6rem;
    z-index: 1;
    display: flex;
    align-items: center;
    gap: 0.35rem;
    margin: 0;
    padding: 0.3rem 0.6rem;
    border-radius: var(--radius-pill);
    background: var(--color-brand);
    color: #fff;
    font-size: 0.6875rem;
    font-weight: 700;
    line-height: 1.2;
}

.tip__badge[b-up3faops9o]  .icon {
    flex: none;
    width: 0.95rem;
    height: 0.95rem;
}

.tip__name[b-up3faops9o] {
    color: var(--color-black);
    font-family: var(--font-title);
    font-size: 0.9375rem;
    letter-spacing: 0.01em;
    line-height: 1.2;
    text-decoration: none;
    text-transform: uppercase;
    transition: color 0.2s var(--ease-out);
}

/* the whole card opens the product; the button stays its own */
.tip__name[b-up3faops9o]::after {
    content: "";
    position: absolute;
    inset: 0;
}

.tip:hover .tip__name[b-up3faops9o] {
    color: var(--color-brand);
}

.tip__text[b-up3faops9o] {
    display: -webkit-box;
    margin: 0.3rem 0 0;
    overflow: hidden;
    color: var(--color-muted);
    font-family: var(--font-body);
    font-size: 0.8125rem;
    line-height: 1.35;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.tip__bottom[b-up3faops9o] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    margin-top: auto;
    padding-top: 0.8rem;
}

.tip__price[b-up3faops9o] {
    margin: 0;
    font-size: 1rem;
    font-weight: 700;
    white-space: nowrap;
}

.tip__form[b-up3faops9o] {
    position: relative;
    z-index: 1;
    margin: 0;
}

.tip__add[b-up3faops9o] {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    padding: 0.5rem 0.85rem;
    border: 0;
    border-radius: var(--radius-pill);
    background: var(--color-black);
    color: #fff;
    font: inherit;
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-decoration: none;
    text-transform: uppercase;
    white-space: nowrap;
    cursor: pointer;
    transition: background-color 0.2s var(--ease-out), transform 0.15s var(--ease-out);
}

.tip__add:hover[b-up3faops9o] {
    background: var(--color-brand);
    color: #fff;
}

.tip__add:active[b-up3faops9o] {
    transform: scale(0.95);
}

.tip__add[b-up3faops9o]  .icon {
    width: 0.85rem;
    height: 0.85rem;
    transition: transform 0.3s var(--ease-out);
}

.tip__add:hover[b-up3faops9o]  .icon {
    transform: rotate(90deg);
}

/* tablets and the column beside the order box: two by two; wide screens and an empty cart: a row of four */
@media (min-width: 48em) {
    .tips__list[b-up3faops9o] {
        grid-auto-flow: row;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        margin: 0;
        padding: 0;
        overflow: visible;
    }
}

@media (min-width: 90em) {
    .tips__list[b-up3faops9o] {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

@media (min-width: 64em) {
    .tips--wide .tips__list[b-up3faops9o] {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}
/* /Components/Pages/Shop/CategoryPage.razor.rz.scp.css */
/* as on the staging site: filters about 265 px wide, "Filter" 17 px, options 14 px, counts 13 px */

.listing[b-jev496s4bw] {
    --listing-top: clamp(1.25rem, 2vw, 2rem);
    padding: var(--listing-top) 0 clamp(3rem, 5vw, 5rem);
}

/* the breadcrumb sits on the level of "Filter", above the products */
.listing[b-jev496s4bw]  .listing__breadcrumbs {
    display: flex;
    align-items: center;
    min-height: 2.6rem;
    margin-bottom: 0.75rem;
}

.listing__layout[b-jev496s4bw] {
    display: grid;
    gap: 1.5rem;
}

/* ---- filters ---- */

.filters[b-jev496s4bw] {
    position: relative;
}

.filters__switch[b-jev496s4bw] {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.filters__switch:focus-visible + .filters__toggle[b-jev496s4bw] {
    outline: 2px solid var(--color-brand);
    outline-offset: 2px;
}

.filters__toggle[b-jev496s4bw] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.75rem 0;
    border-bottom: 1px solid var(--color-line-strong);
    color: var(--color-faint);
    font-size: 1.0625rem;
    cursor: pointer;
}

.filters__toggle[b-jev496s4bw]  .icon {
    width: 1.5rem;
    height: 1.5rem;
    color: var(--color-muted);
}

.filters__section[b-jev496s4bw] {
    margin: 0;
    padding: 0.9rem 0 1rem;
    border: 0;
    border-bottom: 1px solid var(--color-line-strong);
}

.filters__section legend[b-jev496s4bw] {
    float: left;
    width: 100%;
    margin-bottom: 0.6rem;
    padding: 0;
    font-size: 0.8125rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.filters__option[b-jev496s4bw] {
    clear: both;
    display: flex;
    align-items: center;
    gap: 0.7rem;
    padding: 0.35rem 0;
    font-size: 0.875rem;
    cursor: pointer;
    transition: color 0.2s var(--ease-out);
}

.filters__option:hover[b-jev496s4bw] {
    color: var(--color-brand);
}

.filters__option input[b-jev496s4bw] {
    width: 1rem;
    height: 1rem;
    margin: 0;
    accent-color: var(--color-black);
}

.filters__count[b-jev496s4bw] {
    margin-left: auto;
    color: var(--color-faint);
    font-size: 0.75rem;
}

/* sizes are short: small boxes side by side, the ticked one in orange. The boxes' own row is the flex
   box, not the fieldset: Safari puts the legend of a flex fieldset on its top line. */
.filters__options[b-jev496s4bw] {
    clear: both;
}

.filters__section--velkost .filters__options[b-jev496s4bw] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
}

.filters__section--velkost .filters__option[b-jev496s4bw] {
    clear: none;
    position: relative;
    justify-content: center;
    min-width: 2.75rem;
    padding: 0.35rem 0.55rem;
    border: 1px solid var(--color-line-strong);
    border-radius: 3px;
    font-size: 0.8125rem;
    transition: border-color 0.2s var(--ease-out), background-color 0.2s var(--ease-out);
}

.filters__section--velkost .filters__option input[b-jev496s4bw] {
    position: absolute;
    opacity: 0;
}

.filters__section--velkost .filters__count[b-jev496s4bw] {
    display: none;
}

.filters__section--velkost .filters__option:has(input:checked)[b-jev496s4bw] {
    border-color: var(--color-brand);
    background: var(--color-brand);
    color: #fff;
}

.filters__section--velkost .filters__option:has(input:focus-visible)[b-jev496s4bw] {
    outline: 2px solid var(--color-brand);
    outline-offset: 2px;
}

.filters__apply[b-jev496s4bw] {
    width: 100%;
    margin-top: 1.25rem;
    padding: 0.9em 1em;
    font-size: 0.75rem;
}

.filters__reset[b-jev496s4bw] {
    display: block;
    margin-top: 0.9rem;
    color: var(--color-muted);
    font-size: var(--fs-small);
    text-align: center;
}

/* ---- results ---- */

.listing__head[b-jev496s4bw] {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    justify-content: space-between;
    gap: 0.5rem 1.5rem;
    margin-bottom: clamp(1.25rem, 2vw, 2.5rem);
}

.listing__title[b-jev496s4bw] {
    margin: 0;
    font-family: var(--font-title);
    font-size: clamp(1.375rem, 1.8vw, 1.75rem);
    font-weight: 400;
    letter-spacing: 0.01em;
    line-height: 1.16;
    text-transform: uppercase;
}

.listing__count[b-jev496s4bw] {
    margin: 0;
    color: var(--color-muted);
    font-size: 0.8125rem;
}

.listing__empty[b-jev496s4bw] {
    padding: 3rem 0;
    color: var(--color-muted);
    font-family: var(--font-body);
    font-size: var(--fs-lead);
}

@media (max-width: 63.99em) {
    .filters__switch:not(:checked) ~ .filters__form[b-jev496s4bw] {
        display: none;
    }
}

@media (min-width: 64em) {
    .listing__layout[b-jev496s4bw] {
        grid-template-columns: minmax(13rem, 16.5rem) minmax(0, 1fr);
        gap: clamp(1.5rem, 2.4vw, 2.5rem);
    }

    /* On wide screens the filter is always open and sticks exactly where it starts, so it doesn't
       move at all while the products scroll. A filter taller than the window scrolls on its own;
       the right padding keeps the counts clear of that scrollbar (overlay scrollbars too). */
    .filters[b-jev496s4bw] {
        position: sticky;
        top: calc(var(--header-height) + var(--listing-top));
        align-self: start;
        max-height: calc(100vh - var(--header-height) - var(--listing-top) - 1rem);
        padding-right: 0.875rem;
        overflow-y: auto;
        overscroll-behavior: contain;
        scrollbar-width: thin;
    }

    .filters__toggle[b-jev496s4bw] {
        cursor: default;
    }
}
/* /Components/Pages/Shop/CheckoutDeliveryPage.razor.rz.scp.css */
.choice[b-b5iq5c2t7r] {
    min-width: 0;
    margin: 0;
    padding: 0;
    border: 0;
}

.choice__options[b-b5iq5c2t7r] {
    display: grid;
    gap: 0.75rem;
}

.choice__submit[b-b5iq5c2t7r] {
    margin-top: 1.75rem;
}
/* /Components/Pages/Shop/CheckoutDetailsPage.razor.rz.scp.css */
.details[b-573sag0ffn] {
    display: grid;
    gap: 1.75rem;
}

.details__group[b-573sag0ffn] {
    min-width: 0;
    margin: 0;
    padding: 0;
    border: 0;
}

.details__fields[b-573sag0ffn] {
    display: grid;
    gap: 0.75rem;
    align-items: start;
}

/* the design's taller square fields */
.details[b-573sag0ffn]  input:not([type="checkbox"]) {
    min-height: 3rem;
}

/* Krajina is always Slovensko */
.details[b-573sag0ffn]  input:disabled {
    background: var(--color-surface-alt);
    color: var(--color-ink-soft);
    -webkit-text-fill-color: var(--color-ink-soft);
    opacity: 1;
}

.details__country[b-573sag0ffn] {
    margin: 0.5rem 0 0;
    color: var(--color-muted);
    font-size: 0.8125rem;
}

/* the company fields only after "Nakupujem na firmu" (a browser without :has() shows them all the time) */
.details__company[b-573sag0ffn] {
    margin-top: -0.75rem;
}

.details:has(.details__company-toggle input:not(:checked)) .details__company[b-573sag0ffn] {
    display: none;
}

@media (min-width: 40em) {
    .details__fields[b-573sag0ffn] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    /* Krajina wide and PSČ narrow, as in the design */
    .details__fields--address[b-573sag0ffn] {
        grid-template-columns: minmax(0, 2.3fr) minmax(0, 1fr);
    }

    .details__wide[b-573sag0ffn] {
        grid-column: 1 / -1;
    }
}
/* /Components/Pages/Shop/CheckoutPaymentPage.razor.rz.scp.css */
.payment[b-jr2gdzcynm] {
    display: grid;
    gap: 1.75rem;
}

.payment__problems[b-jr2gdzcynm] {
    margin: 0;
    padding: 0.9rem 1.1rem 0.9rem 2.2rem;
    border-left: 3px solid var(--color-unavailable);
    background: #fff1f1;
    color: var(--color-unavailable);
    font-weight: 700;
}

.payment__group[b-jr2gdzcynm] {
    min-width: 0;
    margin: 0;
    padding: 0;
    border: 0;
}

.payment__options[b-jr2gdzcynm] {
    display: grid;
    gap: 0.75rem;
}

/* what the customer is about to order, each part with a link back to its step */
.review[b-jr2gdzcynm] {
    margin: 0;
    border-top: 1px solid var(--color-line);
}

.review__row[b-jr2gdzcynm] {
    display: grid;
    grid-template-columns: 6rem minmax(0, 1fr) auto;
    gap: 1rem;
    padding: 0.8rem 0;
    border-bottom: 1px solid var(--color-line);
    font-size: 0.9375rem;
}

.review__row dt[b-jr2gdzcynm] {
    color: var(--color-muted);
}

.review__row dd[b-jr2gdzcynm] {
    margin: 0;
}

.review__line[b-jr2gdzcynm] {
    display: block;
}

.review__edit[b-jr2gdzcynm] {
    color: var(--color-brand-dark);
    font-size: 0.8125rem;
    font-weight: 700;
}

.payment__terms[b-jr2gdzcynm] {
    margin: 0;
    color: var(--color-muted);
    font-size: 0.8125rem;
}

.payment__terms a[b-jr2gdzcynm] {
    color: var(--color-brand-dark);
}

.payment__total[b-jr2gdzcynm] {
    display: flex;
    justify-content: space-between;
    margin: 0;
    padding-top: 0.75rem;
    border-top: 2px solid var(--color-black);
    font-size: 1.125rem;
    font-weight: 700;
}

/* beside the form, the summary shows the total */
@media (min-width: 64em) {
    .payment__total[b-jr2gdzcynm] {
        display: none;
    }
}

@media (max-width: 39.99em) {
    .review__row[b-jr2gdzcynm] {
        grid-template-columns: minmax(0, 1fr) auto;
    }

    .review__row dt[b-jr2gdzcynm] {
        grid-column: 1 / -1;
    }
}

.payment__reviews[b-jr2gdzcynm] {
    color: var(--color-muted);
    font-size: 0.8125rem;
}
/* /Components/Pages/Shop/ContactPage.razor.rz.scp.css */
/* as on the staging site: three columns - the store with its hours, the contacts with a photo, the form */

.contact[b-jfr6d2c4d7] {
    padding: clamp(1.75rem, 3vw, 3rem) 0 clamp(3rem, 5vw, 5rem);
}

.contact__title[b-jfr6d2c4d7] {
    margin: 0 0 clamp(1.25rem, 2.5vw, 2.25rem);
    font-size: var(--fs-title);
}

.contact__columns[b-jfr6d2c4d7] {
    display: grid;
    gap: 2.5rem clamp(2rem, 4vw, 4.5rem);
}

.contact__heading[b-jfr6d2c4d7] {
    margin: 0 0 1rem;
    font-family: var(--font-title);
    font-size: 1.25rem;
    font-weight: 400;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

.contact__label[b-jfr6d2c4d7] {
    margin: 0;
    color: var(--color-muted);
    font-size: 0.875rem;
}

.contact__label--hours[b-jfr6d2c4d7] {
    margin-top: 1.75rem;
}

.contact__value[b-jfr6d2c4d7] {
    margin: 0.15rem 0 0.75rem;
    font-weight: 700;
    line-height: 1.4;
}

.contact__map[b-jfr6d2c4d7] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    color: var(--color-brand-dark);
    font-size: 0.875rem;
    font-weight: 600;
    text-decoration: none;
}

.contact__map:hover[b-jfr6d2c4d7] {
    text-decoration: underline;
}

.contact__map[b-jfr6d2c4d7]  .icon {
    width: 1.1rem;
    height: 1.1rem;
}

.contact__hours[b-jfr6d2c4d7] {
    width: 100%;
    max-width: 22rem;
    margin-top: 0.5rem;
    border-collapse: collapse;
    font-size: 0.875rem;
}

.contact__hours th[b-jfr6d2c4d7],
.contact__hours td[b-jfr6d2c4d7] {
    padding: 0.45rem 0;
    border-bottom: 1px solid var(--color-line);
    text-align: left;
    vertical-align: top;
}

.contact__hours th[b-jfr6d2c4d7] {
    padding-right: 1.5rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

.contact__hours td[b-jfr6d2c4d7] {
    text-align: right;
    white-space: nowrap;
}

/* a note to the days above (the lunch break): smaller, grey, tucked under them */
.contact__hours tr:has(+ .contact__hours-note) :is(th, td)[b-jfr6d2c4d7] {
    border-bottom: 0;
    padding-bottom: 0.1rem;
}

.contact__hours-note :is(th, td)[b-jfr6d2c4d7] {
    padding-top: 0;
    color: var(--color-muted);
    font-size: 0.8125rem;
}

.contact__hours-note th[b-jfr6d2c4d7] {
    padding-left: 0.9rem;
    font-weight: 400;
    letter-spacing: 0;
    text-transform: none;
}

.contact__list[b-jfr6d2c4d7] {
    display: grid;
    gap: 0.7rem;
    margin: 0;
    padding: 0;
    font-size: 0.9375rem;
    list-style: none;
}

.contact__list li[b-jfr6d2c4d7] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
}

.contact__list a[b-jfr6d2c4d7] {
    color: var(--color-ink);
    font-weight: 700;
    text-decoration: none;
}

.contact__list a:hover[b-jfr6d2c4d7] {
    color: var(--color-brand);
}

.contact__list[b-jfr6d2c4d7]  .icon {
    flex: none;
    width: 1.2rem;
    height: 1.2rem;
    color: var(--color-brand);
}

/* the store's photos, one in view: swiped, or the arrows where the browser has CSS scroll buttons (as the
   home page's carousels); nothing moves by itself */
.contact__photos[b-jfr6d2c4d7] {
    position: relative;
    display: grid;
    aspect-ratio: 4 / 3;
    margin-top: 2rem;
    overflow: hidden;
    border-radius: 4px;
    background: #f4f4f1;
}

.contact__slides[b-jfr6d2c4d7] {
    display: grid;
    grid-auto-columns: 100%;
    grid-auto-flow: column;
    min-height: 0;
    margin: 0;
    padding: 0;
    overflow-x: auto;
    list-style: none;
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
    scrollbar-width: thin;
}

.contact__slides li[b-jfr6d2c4d7] {
    scroll-snap-align: start;
}

.contact__slides img[b-jfr6d2c4d7] {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

@supports selector(::scroll-button(*)) {
    .contact__slides[b-jfr6d2c4d7] {
        scrollbar-width: none;
    }

    /* the arrow is a picture in the middle of the circle: a letter sits where its font puts it */
    .contact__slides[b-jfr6d2c4d7]::scroll-button(*) {
        position: absolute;
        top: 50%;
        width: 2.125rem;
        height: 2.125rem;
        border: 0;
        border-radius: 50%;
        background: rgb(255 255 255 / 0.7) var(--arrow) center / 1rem no-repeat;
        box-shadow: 0 2px 8px rgb(0 0 0 / 0.14);
        cursor: pointer;
        translate: 0 -50%;
        transition: background-color 0.2s var(--ease-out), opacity 0.2s var(--ease-out);
    }

    .contact__slides[b-jfr6d2c4d7]::scroll-button(*):hover {
        background-color: #fff;
        background-image: var(--arrow-hover);
    }

    .contact__slides[b-jfr6d2c4d7]::scroll-button(*):disabled {
        opacity: 0;
        cursor: default;
    }

    .contact__slides[b-jfr6d2c4d7]::scroll-button(left) {
        --arrow: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000000' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14.5 5.5 8 12l6.5 6.5'/%3E%3C/svg%3E");
        --arrow-hover: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23c94f15' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14.5 5.5 8 12l6.5 6.5'/%3E%3C/svg%3E");
        content: "" / "Predchádzajúca fotka";
        left: 0.625rem;
    }

    .contact__slides[b-jfr6d2c4d7]::scroll-button(right) {
        --arrow: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000000' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9.5 5.5 16 12l-6.5 6.5'/%3E%3C/svg%3E");
        --arrow-hover: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23c94f15' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9.5 5.5 16 12l-6.5 6.5'/%3E%3C/svg%3E");
        content: "" / "Ďalšia fotka";
        right: 0.625rem;
    }
}

/* ---- the map: a cover to click, then Google's frame ---- */

.contact__location[b-jfr6d2c4d7] {
    margin-top: clamp(2.5rem, 4vw, 3.5rem);
}

.map__cover[b-jfr6d2c4d7] {
    display: grid;
    justify-items: center;
    align-content: center;
    gap: 0.6rem;
    min-height: 22rem;
    padding: 2rem 1rem;
    border-radius: 6px;
    background:
        repeating-linear-gradient(0deg, transparent 0 39px, rgb(0 0 0 / 0.04) 39px 40px),
        repeating-linear-gradient(90deg, transparent 0 39px, rgb(0 0 0 / 0.04) 39px 40px),
        #f4f4f1;
    text-align: center;
    cursor: pointer;
    list-style: none;
}

.map__cover[b-jfr6d2c4d7]::-webkit-details-marker {
    display: none;
}

.map__pin[b-jfr6d2c4d7] {
    display: grid;
    place-items: center;
    width: 3.25rem;
    height: 3.25rem;
    border-radius: 50%;
    background: var(--color-brand);
    color: #fff;
    box-shadow: 0 8px 18px -6px rgb(243 122 31 / 0.6);
}

.map__pin[b-jfr6d2c4d7]  .icon {
    width: 1.6rem;
    height: 1.6rem;
}

.map__address[b-jfr6d2c4d7] {
    font-weight: 700;
}

.map__button[b-jfr6d2c4d7] {
    padding: 0.8em 1.6em;
    font-size: 0.8125rem;
}

.map__cover:hover .map__button[b-jfr6d2c4d7] {
    background: #333;
}

.map__note[b-jfr6d2c4d7] {
    color: var(--color-muted);
    font-size: 0.75rem;
}

.map[open] > .map__cover[b-jfr6d2c4d7] {
    display: none;
}

.map__frame[b-jfr6d2c4d7] {
    display: block;
    width: 100%;
    height: 26rem;
    border: 0;
    border-radius: 6px;
}

.contact__company[b-jfr6d2c4d7] {
    margin-top: clamp(2.5rem, 4vw, 4rem);
    padding-top: 1.5rem;
    border-top: 1px solid var(--color-line);
    color: var(--color-muted);
    font-size: 0.875rem;
}

.contact__company .contact__heading[b-jfr6d2c4d7] {
    font-size: 1rem;
}

.contact__company p[b-jfr6d2c4d7] {
    margin: 0;
}

@media (min-width: 48em) {
    .contact__columns[b-jfr6d2c4d7] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .contact__column--form[b-jfr6d2c4d7] {
        grid-column: 1 / -1;
    }
}

/* Three columns of the same height, aligned at the top and at the bottom: the opening hours, the
   photo and the Odoslať button all end on one line. The photo fills what the column has left,
   the message field grows to the button. */
@media (min-width: 64em) {
    .contact__columns[b-jfr6d2c4d7] {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1.15fr);
    }

    .contact__column[b-jfr6d2c4d7] {
        display: flex;
        flex-direction: column;
    }

    .contact__column--form[b-jfr6d2c4d7] {
        grid-column: auto;
    }

    .contact__opening[b-jfr6d2c4d7] {
        margin-top: auto;
    }

    .contact__photos[b-jfr6d2c4d7] {
        flex: 1 1 0;
        min-height: 15rem;
        aspect-ratio: auto;
    }

    .contact__column--form[b-jfr6d2c4d7]  .shop-form {
        display: flex;
        flex: 1;
        flex-direction: column;
    }

    .contact__message[b-jfr6d2c4d7] {
        display: flex;
        flex: 1;
        flex-direction: column;
    }

    .contact__message[b-jfr6d2c4d7]  textarea {
        flex: 1;
        min-height: 9rem;
    }
}
/* /Components/Pages/Shop/HeroSeasonArt.razor.rz.scp.css */
.hero-art[b-nkzyk50hzf] {
    position: absolute;
    inset: 0;
    z-index: 3;
    pointer-events: none;
}

.hero-art__item[b-nkzyk50hzf] {
    position: absolute;
    height: auto;
    filter: drop-shadow(0 4px 6px rgb(0 0 0 / 0.12));
    animation: hero-art-float-b-nkzyk50hzf var(--d, 8s) ease-in-out var(--delay, 0s) infinite;
}

/* the sun turns slowly at the photos' corner */
.hero-art__item--sun[b-nkzyk50hzf] {
    filter: none;
    animation-name: hero-art-turn-b-nkzyk50hzf;
    animation-timing-function: linear;
}

@keyframes hero-art-float-b-nkzyk50hzf {
    0%,
    100% {
        transform: translateY(0) rotate(var(--r, 0deg));
    }

    50% {
        transform: translateY(-10px) rotate(calc(var(--r, 0deg) + 12deg));
    }
}

@keyframes hero-art-turn-b-nkzyk50hzf {
    to {
        transform: rotate(360deg);
    }
}

@media (max-width: 47.99em) {
    .hero-art__item[b-nkzyk50hzf] {
        scale: 0.75;
    }
}

@media (prefers-reduced-motion: reduce) {
    .hero-art__item[b-nkzyk50hzf] {
        animation: none;
        transform: rotate(var(--r, 0deg));
    }
}
/* /Components/Pages/Shop/Home.razor.rz.scp.css */
/* The Figma layout with the staging site's type sizes: headings in Titling (hero 46 px, promo 40 px,
   sections 18 px), texts in Univers. Pictures scale with the viewport width. */

.text-light[b-c98qjtr225] {
    font-weight: 300;
}

.text-accent[b-c98qjtr225] {
    color: var(--color-brand);
}

[b-c98qjtr225] .home-decoration {
    position: absolute;
    z-index: 0;
    height: auto;
    pointer-events: none;
    user-select: none;
}

/* ---- hero: exactly the first screen under the header, in the season's colours - the words on the left, the store's
   photos on the right (under the words on phones) ---- */

.hero[b-c98qjtr225] {
    --season: var(--color-brand);
    --season-ink: var(--color-brand-dark);
    --season-soft: #fde7d6;
    --season-glow: var(--color-glow);
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    min-height: calc(100vh - var(--header-height) - var(--notice-height, 0rem));
    min-height: calc(100svh - var(--header-height) - var(--notice-height, 0rem));
    padding: clamp(1.5rem, 3vw, 3rem) 0 calc(clamp(1rem, 2vw, 1.75rem) + 1.5rem);
    /* the glow under the menu */
    background: radial-gradient(90% 8rem at 50% 0, rgb(var(--season-glow) / 0.8), rgb(var(--season-glow) / 0) 100%);
}

.hero--spring[b-c98qjtr225] {
    --season: #6fae3a;
    --season-ink: #3d6f1e;
    --season-soft: #e8f4dc;
    --season-glow: 150 200 100;
}

.hero--summer[b-c98qjtr225] {
    --season: #f0b322;
    --season-ink: #8a5a00;
    --season-soft: #fdf1cc;
    --season-glow: 248 202 72;
}

.hero--autumn[b-c98qjtr225] {
    --season: #e2622a;
    --season-ink: #b3420d;
    --season-soft: #fce3d4;
    --season-glow: 236 118 50;
}

.hero--winter[b-c98qjtr225] {
    --season: #4f95cf;
    --season-ink: #2a6496;
    --season-soft: #e2eef9;
    --season-glow: 150 195 232;
}

/* the owners' notice above the header takes its part of the first screen (one line, two on phones) */
html:has(.notice-bar) .hero[b-c98qjtr225] {
    --notice-height: 2.4rem;
}

@media (max-width: 40em) {
    html:has(.notice-bar) .hero[b-c98qjtr225] {
        --notice-height: 3.7rem;
    }
}

/* a little above the middle */
.hero__content[b-c98qjtr225] {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 2.5rem;
    align-items: center;
    margin-block: auto;
    padding-bottom: 3vh;
}

.hero__text[b-c98qjtr225] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.hero__eyebrow[b-c98qjtr225] {
    margin: 0 0 0.9rem;
    color: var(--season-ink);
    font-family: var(--font-display);
    font-size: clamp(0.8125rem, 1vw, 0.9375rem);
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.hero__title[b-c98qjtr225] {
    max-width: 13em;
    margin: 0;
    font-size: var(--fs-hero);
    text-wrap: balance;
}

.hero__lead[b-c98qjtr225] {
    max-width: 32em;
    margin: 1.1rem 0 0;
    color: var(--color-ink-soft);
    font-size: clamp(1rem, 1.2vw, 1.125rem);
    line-height: 1.5;
}

.hero__actions[b-c98qjtr225] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem clamp(0.75rem, 1.5vw, 1.25rem);
    margin-top: clamp(1.5rem, 3vw, 2rem);
}

.hero__button[b-c98qjtr225] {
    padding: 0.6em 1.4em 0.55em;
    font-size: clamp(1rem, 1.3vw, 1.25rem);
}

/* the season's links: soft pills in its colour, the arrow nudges on pointing */
.hero__tips[b-c98qjtr225] {
    margin-top: clamp(1.4rem, 2.6vw, 2rem);
}

.hero__tips-title[b-c98qjtr225] {
    margin: 0 0 0.55rem;
    color: var(--color-muted);
    font-family: var(--font-display);
    font-size: 0.8125rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.hero__tips-list[b-c98qjtr225] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.hero__tip[b-c98qjtr225] {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    padding: 0.5rem 0.85rem 0.5rem 1rem;
    border-radius: 999px;
    background: var(--season-soft);
    color: var(--season-ink);
    font-size: 0.9375rem;
    font-weight: 600;
    text-decoration: none;
    transition: background-color 0.2s var(--ease-out), color 0.2s var(--ease-out);
}

.hero__tip[b-c98qjtr225]  .icon {
    width: 1rem;
    height: 1rem;
    transition: transform 0.2s var(--ease-out);
}

.hero__tip:hover[b-c98qjtr225] {
    background: var(--season-ink);
    color: #fff;
}

.hero__tip:hover[b-c98qjtr225]  .icon {
    transform: translateX(3px);
}

/* the photos on a block of the season's colour that peeks out at the bottom right, a soft glow of it behind */
.hero__visual[b-c98qjtr225] {
    position: relative;
    margin: 0 1.25rem 1.25rem 0;
}

.hero__visual[b-c98qjtr225]::before {
    content: "";
    position: absolute;
    inset: -14% -16% -12% -8%;
    border-radius: 50%;
    background: radial-gradient(closest-side, var(--season-soft), rgb(255 255 255 / 0));
}

.hero__photos[b-c98qjtr225] {
    position: relative;
    z-index: 1;
    aspect-ratio: 4 / 3;
}

.hero__photos[b-c98qjtr225]::before {
    content: "";
    position: absolute;
    inset: 1.25rem -1.25rem -1.25rem 1.25rem;
    border-radius: 16px;
    background: var(--season);
}

.hero__slides[b-c98qjtr225] {
    position: absolute;
    inset: 0;
    isolation: isolate;
    overflow: hidden;
    border-radius: 16px;
    background: #ecebe7;
    box-shadow: 0 18px 40px rgb(0 0 0 / 0.18);
}

/* The photos take turns (js/hero.js): the new one fades in over the one before. Without the script the first stays. */
.hero__slide[b-c98qjtr225] {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hero__slide:not(:first-child)[b-c98qjtr225],
.is-live .hero__slide[b-c98qjtr225] {
    opacity: 0;
}

.is-live .hero__slides[b-c98qjtr225] {
    cursor: pointer;
}

.is-live .hero__slide.is-leaving[b-c98qjtr225] {
    z-index: 1;
    opacity: 1;
}

.is-live .hero__slide.is-shown[b-c98qjtr225] {
    z-index: 2;
    opacity: 1;
    transition: opacity 0.9s var(--ease-out);
}

/* the dots say which photo shows and show another; the button stops the turns (so does pointing at the photos) */
.hero__dots[b-c98qjtr225] {
    position: absolute;
    right: 3.6rem;
    bottom: 1.05rem;
    z-index: 2;
    display: none;
    padding: 0 0.3rem;
    border-radius: 999px;
    background: rgb(0 0 0 / 0.45);
}

.is-live .hero__dots[b-c98qjtr225] {
    display: flex;
}

.hero__dot[b-c98qjtr225] {
    display: grid;
    place-items: center;
    width: 1.3rem;
    height: 1.3rem;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: none;
    cursor: pointer;
}

.hero__dot[b-c98qjtr225]::before {
    content: "";
    width: 0.45rem;
    height: 0.45rem;
    border-radius: 50%;
    background: rgb(255 255 255 / 0.55);
    transition: background-color 0.3s var(--ease-out), scale 0.3s var(--ease-out);
}

.hero__dot:hover[b-c98qjtr225]::before {
    background: rgb(255 255 255 / 0.85);
}

.hero__dot[aria-current="true"][b-c98qjtr225]::before {
    background: #fff;
    scale: 1.35;
}

.hero__dot:focus-visible[b-c98qjtr225] {
    outline: 2px solid #fff;
    outline-offset: -2px;
}

.hero__pause[b-c98qjtr225] {
    position: absolute;
    right: 0.75rem;
    bottom: 0.75rem;
    z-index: 2;
    display: none;
    place-items: center;
    width: 2.25rem;
    height: 2.25rem;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: rgb(255 255 255 / 0.92);
    color: var(--color-ink);
    box-shadow: 0 4px 12px rgb(0 0 0 / 0.18);
    cursor: pointer;
    transition: color 0.2s var(--ease-out);
}

.is-live .hero__pause[b-c98qjtr225] {
    display: grid;
}

.hero__pause:hover[b-c98qjtr225] {
    color: var(--season-ink);
}

.hero__pause:focus-visible[b-c98qjtr225] {
    outline: 2px solid var(--season-ink);
    outline-offset: 2px;
}

.hero__pause[b-c98qjtr225]  .icon {
    width: 1.05rem;
    height: 1.05rem;
}

.hero__pause[b-c98qjtr225]  .hero__pause-go,
.hero__pause[aria-pressed="true"][b-c98qjtr225]  .hero__pause-stop {
    display: none;
}

.hero__pause[aria-pressed="true"][b-c98qjtr225]  .hero__pause-go {
    display: block;
}

/* today's hours on a card at the photos' corner */
.hero__today[b-c98qjtr225] {
    position: absolute;
    bottom: 0.75rem;
    left: 0.75rem;
    z-index: 2;
    display: grid;
    gap: 0.1rem;
    margin: 0;
    padding: 0.75rem 1rem;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 8px 24px rgb(0 0 0 / 0.16);
    font-size: 0.875rem;
    line-height: 1.35;
}

.hero__today a[b-c98qjtr225] {
    color: var(--color-ink);
    text-decoration: none;
}

.hero__today a:hover[b-c98qjtr225] {
    text-decoration: underline;
}

.hero__state--open[b-c98qjtr225] {
    color: var(--color-available);
}

.hero__state--onbreak[b-c98qjtr225] {
    color: #a65f00;
}

.hero__state--closed[b-c98qjtr225] {
    color: var(--color-unavailable);
}

@media (min-width: 64em) {
    .hero__content[b-c98qjtr225] {
        grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
        column-gap: clamp(2rem, 5vw, 5rem);
    }

    /* the photos a little smaller than their half and a little below the words' middle */
    .hero__visual[b-c98qjtr225] {
        justify-self: end;
        width: 92%;
        margin-top: 3rem;
    }

    .hero__photos[b-c98qjtr225] {
        aspect-ratio: 5 / 4;
    }

    .hero__today[b-c98qjtr225] {
        bottom: 1.5rem;
        left: -1.5rem;
    }

    /* the orange words stay on one line */
    .hero__title .text-accent[b-c98qjtr225] {
        white-space: nowrap;
    }
}

/* phones: the store's hours take the photos' lower edge, the dots would hide under them (a tap shows the next) */
@media (max-width: 47.99em) {
    .is-live .hero__dots[b-c98qjtr225] {
        display: none;
    }
}

/* less motion: the photos change only when asked, at once */
@media (prefers-reduced-motion: reduce) {
    .is-live .hero__slide.is-shown[b-c98qjtr225] {
        transition: none;
    }

    .is-live .hero__pause[b-c98qjtr225] {
        display: none;
    }

    .hero__dots[b-c98qjtr225] {
        right: 0.75rem;
    }
}

/* the arrow to the next section; a slow nudge says "there's more below" */
.hero__down[b-c98qjtr225] {
    position: relative;
    z-index: 1;
    display: grid;
    place-items: center;
    width: 2.75rem;
    height: 2.75rem;
    margin-top: 1.5rem;
    border: 1px solid var(--color-line-strong);
    border-radius: 50%;
    background: #fff;
    color: var(--color-black);
    animation: hero-nudge-b-c98qjtr225 2.6s var(--ease-out) infinite;
    transition: border-color 0.2s var(--ease-out), color 0.2s var(--ease-out);
}

.hero__down[b-c98qjtr225]  .icon {
    width: 1.2rem;
    height: 1.2rem;
}

.hero__down:hover[b-c98qjtr225] {
    border-color: var(--color-brand);
    color: var(--color-brand);
    animation-play-state: paused;
}

@keyframes hero-nudge-b-c98qjtr225 {
    0%,
    55%,
    100% {
        transform: translateY(0);
    }

    25% {
        transform: translateY(5px);
    }
}

/* ---- bestsellers ---- */

.bestsellers[b-c98qjtr225] {
    position: relative;
    padding-top: var(--section-gap);
}

.carousel[b-c98qjtr225] {
    position: relative;
    padding-inline: clamp(0rem, 2.5vw, 3rem);
}

/* four cards in view; the rest scroll sideways (arrows where the browser supports CSS scroll buttons).
   The track has room around the cards, so their hover shadows aren't cut off. */
.carousel__track[b-c98qjtr225] {
    --gap: clamp(0.5rem, 1.5vw, 1.5rem);
    --room: 0.75rem;
    display: grid;
    grid-auto-columns: calc((100% - 3 * var(--gap)) / 4);
    grid-auto-flow: column;
    gap: var(--gap);
    margin: calc(-1 * var(--room)) calc(-1 * var(--room)) 0;
    padding: var(--room) var(--room) 1rem;
    overflow-x: auto;
    list-style: none;
    scroll-behavior: smooth;
    scroll-padding-inline: var(--room);
    scroll-snap-type: x mandatory;
    scrollbar-width: thin;
}

.carousel__item[b-c98qjtr225] {
    scroll-snap-align: start;
}

@supports selector(::scroll-button(*)) {
    .carousel__track[b-c98qjtr225] {
        scrollbar-width: none;
    }

    .carousel__track[b-c98qjtr225]::scroll-button(*) {
        position: absolute;
        top: 35%;
        display: grid;
        place-items: center;
        width: 2.5rem;
        height: 2.5rem;
        border: 0;
        border-radius: 50%;
        background: none;
        color: var(--color-black);
        font: inherit;
        font-size: 2rem;
        line-height: 1;
        cursor: pointer;
        transition: color 0.2s var(--ease-out), background-color 0.2s var(--ease-out);
    }

    .carousel__track[b-c98qjtr225]::scroll-button(*):hover {
        background: #f3f3f1;
        color: var(--color-brand);
    }

    .carousel__track[b-c98qjtr225]::scroll-button(*):disabled {
        background: none;
        color: var(--color-black);
        opacity: 0.2;
        cursor: default;
    }

    .carousel__track[b-c98qjtr225]::scroll-button(left) {
        content: "‹" / "Predchádzajúce";
        left: -0.75rem;
    }

    .carousel__track[b-c98qjtr225]::scroll-button(right) {
        content: "›" / "Ďalšie";
        right: -0.75rem;
    }

    /* phones swipe; the arrows would only cover the cards */
    @media (max-width: 47.99em) {
        .carousel__track[b-c98qjtr225]::scroll-button(left),
        .carousel__track[b-c98qjtr225]::scroll-button(right) {
            content: none;
        }
    }
}

/* ---- promo ---- */

.promo[b-c98qjtr225] {
    position: relative;
    padding-top: var(--section-gap);
}

.promo[b-c98qjtr225]  .promo__beanie {
    top: 1vw;
    right: 2vw;
    width: min(27vw, 520px);
}

.promo__body[b-c98qjtr225] {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 2.5rem;
    align-items: center;
}

.promo__pictures[b-c98qjtr225] {
    position: relative;
    justify-self: center;
    width: min(100%, 21rem);
}

/* any photo the owners choose shows upright */
.promo__photo[b-c98qjtr225] {
    position: relative;
    z-index: 1;
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 3 / 4;
    object-fit: cover;
}

.promo[b-c98qjtr225]  .promo__watch {
    z-index: 2;
    bottom: -16%;
    left: -42%;
    width: 100%;
}

.promo__title[b-c98qjtr225] {
    max-width: 11em;
    margin: 0 0 1.1rem;
    font-size: var(--fs-display);
    line-height: 1.2;
}

.promo__text p[b-c98qjtr225] {
    max-width: 30em;
    margin: 0 0 1.75rem;
    color: var(--color-ink-soft);
    font-family: var(--font-body);
    font-size: var(--fs-text);
    line-height: 1.5;
}

.promo__button[b-c98qjtr225] {
    padding: 0.6em 1.5em 0.55em;
    font-size: clamp(1rem, 1.3vw, 1.25rem);
}

@media (min-width: 64em) {
    .promo__body[b-c98qjtr225] {
        grid-template-columns: 1fr 1.2fr;
        gap: clamp(2rem, 6vw, 6.5rem);
    }

    .promo__pictures[b-c98qjtr225] {
        justify-self: end;
    }

    .promo[b-c98qjtr225]  .promo__watch {
        left: -50%;
    }

    .promo__text[b-c98qjtr225] {
        padding-top: 3vw;
    }
}

/* ---- reviews: the Google score, then the reviews gliding by ---- */

.reviews[b-c98qjtr225] {
    position: relative;
    padding-top: calc(var(--section-gap) + 1rem);
}

/* the reviews and the benefits share one width, a little in from the container: wider on the left,
   where the helmet peeks in, so that the block sits in the middle of the page */
.reviews[b-c98qjtr225],
.benefits[b-c98qjtr225] {
    --band-left: 0rem;
    --band-right: 0rem;
}

/* the helmet peeks in at the left edge on wide screens, where the widget leaves it room */
.reviews[b-c98qjtr225]  .reviews__helmet {
    bottom: -1vw;
    left: -3vw;
    display: none;
    width: min(16vw, 300px);
}

.reviews__widget[b-c98qjtr225] {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 0.5rem 2rem;
    align-items: center;
}

.reviews__summary[b-c98qjtr225] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.35rem;
    text-align: center;
}

.reviews__summary p[b-c98qjtr225] {
    margin: 0;
}

.reviews__verdict[b-c98qjtr225] {
    font-family: var(--font-title);
    font-size: 1.375rem;
    letter-spacing: 0.02em;
    line-height: 1.1;
    text-transform: uppercase;
}

.reviews__summary[b-c98qjtr225]  .reviews__stars {
    font-size: 1.5rem;
}

.reviews__count[b-c98qjtr225] {
    color: var(--color-muted);
    font-size: 0.8125rem;
}

.reviews__count strong[b-c98qjtr225] {
    color: var(--color-ink);
}

/* "Google Maps" as Google's terms want it: Roboto or the page's sans serif, regular, #5e5e5e, 12-16 px, one line */
.reviews__google[b-c98qjtr225] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    margin-top: 0.3rem;
    color: #5e5e5e;
    font-family: Roboto, var(--font-body);
    font-size: 1rem;
    font-weight: 400;
    white-space: nowrap;
    text-decoration: none;
}

.reviews__google:hover[b-c98qjtr225] {
    color: var(--color-black);
}

.reviews__summary[b-c98qjtr225]  .reviews__google-mark {
    width: 1.2rem;
    height: 1.2rem;
}

/* the same carousel as the bestsellers, three reviews in view next to the score */
.reviews__carousel[b-c98qjtr225] {
    min-width: 0;
}

.reviews__track[b-c98qjtr225] {
    grid-auto-columns: calc((100% - 2 * var(--gap)) / 3);
}

.reviews__sample[b-c98qjtr225] {
    margin: 1.75rem 0 0;
    color: var(--color-muted);
    font-size: 0.75rem;
    text-align: center;
}

@media (min-width: 64em) {
    .reviews__widget[b-c98qjtr225] {
        grid-template-columns: 11rem minmax(0, 1fr);
    }
}

@media (min-width: 75em) {
    .reviews[b-c98qjtr225],
    .benefits[b-c98qjtr225] {
        --band-left: min(8vw, 8rem);
        --band-right: min(5vw, 5rem);
    }

    .reviews[b-c98qjtr225]  .reviews__helmet {
        display: block;
    }

    .reviews__widget[b-c98qjtr225] {
        padding-inline: var(--band-left) var(--band-right);
    }
}

/* no reviews loaded: a box with the link to Google */
.reviews__box[b-c98qjtr225] {
    position: relative;
    z-index: 1;
    max-width: 40rem;
    margin: 0 auto;
    padding: clamp(1.5rem, 2.5vw, 2.5rem);
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 2px 12px rgb(0 0 0 / 0.12);
    text-align: center;
}

.reviews__lead[b-c98qjtr225] {
    margin: 0 0 0.4rem;
    font-size: var(--fs-card-name);
    font-weight: 700;
    text-transform: uppercase;
}

.reviews__text[b-c98qjtr225] {
    margin: 0 0 1.25rem;
    font-family: var(--font-body);
    font-size: 0.875rem;
}

.reviews__button[b-c98qjtr225] {
    padding: 0.8em 1.4em;
    font-size: 0.75rem;
}

/* ---- benefits ---- */

.benefits[b-c98qjtr225] {
    position: relative;
    padding: calc(var(--section-gap) + 1rem) 0 var(--section-gap);
}

/* peeks in at the right edge beside the heading, clear of the last benefit */
.benefits[b-c98qjtr225]  .benefits__chainsaw {
    top: -5.5vw;
    right: 0;
    width: clamp(7.5rem, 11vw, 11.25rem);
}

.benefits__list[b-c98qjtr225] {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 2.5rem 1.5rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.benefit[b-c98qjtr225] {
    max-width: 13rem;
    margin-inline: auto;
}

/* the icon and its orange tick lift together */
.benefit__icon[b-c98qjtr225] {
    position: relative;
    display: inline-flex;
    margin-bottom: 0.9rem;
    transition: transform 0.4s var(--ease-out);
}

.benefit:hover .benefit__icon[b-c98qjtr225] {
    transform: translateY(-4px);
}

.benefit__icon[b-c98qjtr225]  .icon {
    width: 3.25rem;
    height: 3.25rem;
}

.benefit__check[b-c98qjtr225] {
    position: absolute;
    right: -0.35rem;
    bottom: -0.1rem;
    display: grid;
    place-items: center;
    width: 1.25rem;
    height: 1.25rem;
    border-radius: 50%;
    background: var(--color-brand);
    color: #fff;
}

.benefit__check[b-c98qjtr225]  .icon {
    width: 0.75rem;
    height: 0.75rem;
}

.benefit__title[b-c98qjtr225] {
    max-width: 8em;
    margin: 0 0 0.6rem;
    color: var(--color-ink-soft);
    font-family: var(--font-title);
    font-size: clamp(1.25rem, 1.6vw, 1.5625rem);
    font-weight: 400;
    line-height: 1.2;
    text-transform: uppercase;
}

.benefit__text[b-c98qjtr225] {
    max-width: 13em;
    margin: 0;
    font-size: 0.9375rem;
    line-height: 1.35;
}

/* spread as wide as the reviews above: the first under the score, the last ending with the last review
   (the carousel keeps its arrows' room inside) */
@media (min-width: 64em) {
    .benefits__list[b-c98qjtr225] {
        display: flex;
        justify-content: space-between;
        gap: 2rem;
        padding-inline: var(--band-left) calc(var(--band-right) + clamp(0rem, 2.5vw, 3rem));
    }

    .benefit[b-c98qjtr225] {
        margin-inline: 0;
    }
}

/* ---- small screens: faint decorations, the bestsellers as four cards two by two, the benefits centred
   under their heading ---- */

@media (max-width: 47.99em) {
    .benefits[b-c98qjtr225]  .benefits__chainsaw {
        opacity: 0.18;
    }

    .bestsellers .carousel[b-c98qjtr225] {
        padding-inline: 0;
    }

    .bestsellers .carousel__track[b-c98qjtr225] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        grid-auto-columns: auto;
        grid-auto-flow: row;
        gap: 1rem 0.5rem;
        margin: 0;
        padding: 0;
        overflow: visible;
        scroll-snap-type: none;
    }

    .bestsellers .carousel__item:nth-child(n + 5)[b-c98qjtr225] {
        display: none;
    }

    .reviews__track[b-c98qjtr225] {
        grid-auto-columns: 85%;
    }
}

@media (max-width: 63.99em) {
    .benefit[b-c98qjtr225] {
        text-align: center;
    }

    .benefit__title[b-c98qjtr225],
    .benefit__text[b-c98qjtr225] {
        margin-inline: auto;
    }
}

@media (min-width: 48em) and (max-width: 74.99em) {
    .reviews__track[b-c98qjtr225] {
        grid-auto-columns: calc((100% - var(--gap)) / 2);
    }
}

@media (prefers-reduced-motion: reduce) {
    .hero__down[b-c98qjtr225] {
        animation: none;
    }
}
/* /Components/Pages/Shop/LegalPage.razor.rz.scp.css */
/* the contents beside the text (wide screens) or folded above it (phones), and the company's contacts */

.legal-aside[b-b072umt5ks] {
    display: grid;
    gap: 1.25rem;
}

.legal-toc[b-b072umt5ks] {
    padding: 1.25rem 1rem 1rem;
    border-radius: 8px;
    background: var(--color-surface-alt);
}

.legal-toc__title[b-b072umt5ks] {
    margin: 0 0 0.6rem 0.6rem;
    font-family: var(--font-title);
    font-size: 1.0625rem;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

.legal-toc__list[b-b072umt5ks] {
    display: grid;
    gap: 0.1rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.legal-toc__list li[b-b072umt5ks] {
    margin: 0;
}

.legal-toc__list a[b-b072umt5ks] {
    display: block;
    padding: 0.4rem 0.6rem;
    border-left: 2px solid transparent;
    color: var(--color-ink-soft);
    font-family: var(--font-text);
    font-size: 0.875rem;
    line-height: 1.35;
    text-decoration: none;
    transition: color 0.2s var(--ease-out), border-color 0.2s var(--ease-out), background-color 0.2s var(--ease-out);
}

.legal-toc__list a:hover[b-b072umt5ks],
.legal-toc__list a[aria-current][b-b072umt5ks] {
    border-left-color: var(--color-brand);
    background: #fff;
    color: var(--color-black);
}

/* the chapter being read (js/contents.js) */
.legal-toc__list a[aria-current][b-b072umt5ks] {
    color: var(--color-brand-dark);
}

.legal-contact[b-b072umt5ks] {
    display: grid;
    gap: 0.2rem;
    padding: 1.1rem 1.25rem;
    border: 1px solid var(--color-line);
    border-radius: 8px;
    font-size: 0.875rem;
}

.legal-contact p[b-b072umt5ks] {
    margin: 0;
}

.legal-contact .legal-contact__title[b-b072umt5ks] {
    margin-bottom: 0.25rem;
    font-weight: 700;
}

.legal-contact a[b-b072umt5ks] {
    color: var(--color-brand-dark);
    font-weight: 700;
    text-decoration: none;
}

.legal-contact a:hover[b-b072umt5ks] {
    text-decoration: underline;
}

/* phones: the contents folded above the text */
.legal-toc--folded[b-b072umt5ks] {
    margin: 0 0 2rem;
    padding: 0;
}

.legal-toc--folded summary[b-b072umt5ks] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.9rem 1.1rem;
    font-family: var(--font-title);
    font-size: 1rem;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    cursor: pointer;
    list-style: none;
}

.legal-toc--folded summary[b-b072umt5ks]::-webkit-details-marker {
    display: none;
}

.legal-toc--folded summary span[b-b072umt5ks] {
    margin-right: auto;
    margin-left: 0.4rem;
    color: var(--color-muted);
}

.legal-toc--folded summary[b-b072umt5ks]::after {
    content: "+";
    color: var(--color-brand);
    font-family: var(--font-text);
    font-size: 1.4rem;
    line-height: 1;
    transition: transform 0.3s var(--ease-out);
}

.legal-toc--folded[open] summary[b-b072umt5ks]::after {
    transform: rotate(45deg);
}

.legal-toc--folded .legal-toc__list[b-b072umt5ks] {
    padding: 0 0.5rem 0.9rem;
}

@media (min-width: 64em) {
    .legal-toc--folded[b-b072umt5ks] {
        display: none;
    }
}
/* /Components/Pages/Shop/NotFound.razor.rz.scp.css */
.missing[b-6y7bdtendc] {
    padding: clamp(1.75rem, 3.5vw, 3.5rem) 0 clamp(3rem, 5vw, 5rem);
}

.missing__lead[b-6y7bdtendc] {
    max-width: 40rem;
    margin: 0 auto 1.5rem;
    color: var(--color-ink-soft);
    font-family: var(--font-body);
    font-size: var(--fs-lead);
    line-height: 1.6;
    text-align: center;
}

.missing__lead a[b-6y7bdtendc] {
    color: var(--color-brand-dark);
}

.missing__search[b-6y7bdtendc] {
    margin-bottom: clamp(1.5rem, 3vw, 2.5rem);
}

.missing__search[b-6y7bdtendc]  .search-form {
    margin-inline: auto;
}

.missing__body[b-6y7bdtendc]  .nothing-found__categories {
    justify-content: center;
}
/* /Components/Pages/Shop/OrderPlacedPage.razor.rz.scp.css */
/* the tick and the number across the top, then what happens next (payment, the store, questions) on
   the left and the order itself on the right */

.placed[b-i7wrwg4ju1] {
    padding-top: clamp(1.75rem, 3.5vw, 3.25rem);
}

.placed__head[b-i7wrwg4ju1] {
    display: grid;
    justify-items: center;
    gap: 0.35rem;
    margin-bottom: clamp(2rem, 4vw, 3.5rem);
    text-align: center;
}

.placed__head p[b-i7wrwg4ju1] {
    margin: 0;
}

/* the circle pops in, then the tick draws itself */
.placed__tick[b-i7wrwg4ju1] {
    width: 4.25rem;
    height: 4.25rem;
    margin-bottom: 0.6rem;
    overflow: visible;
}

.placed__tick-circle[b-i7wrwg4ju1] {
    fill: var(--color-available);
    transform-origin: center;
}

.placed__tick-check[b-i7wrwg4ju1] {
    fill: none;
    stroke: #fff;
    stroke-dasharray: 1;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 4;
}

@media (prefers-reduced-motion: no-preference) {
    .placed__tick-circle[b-i7wrwg4ju1] {
        animation: placed-pop-b-i7wrwg4ju1 0.5s var(--ease-out) 0.1s both;
    }

    .placed__tick-check[b-i7wrwg4ju1] {
        animation: placed-draw-b-i7wrwg4ju1 0.45s var(--ease-out) 0.45s both;
    }
}

@keyframes placed-pop-b-i7wrwg4ju1 {
    from {
        opacity: 0;
        transform: scale(0.3);
    }

    70% {
        transform: scale(1.08);
    }
}

@keyframes placed-draw-b-i7wrwg4ju1 {
    from {
        stroke-dashoffset: 1;
    }
}

.placed__title[b-i7wrwg4ju1] {
    margin: 0 0 0.35rem;
    font-size: var(--fs-title);
}

.placed__number[b-i7wrwg4ju1] {
    font-size: 1.25rem;
}

.placed__mail[b-i7wrwg4ju1] {
    color: var(--color-ink-soft);
}

.placed__columns[b-i7wrwg4ju1] {
    display: grid;
    gap: 2rem clamp(2.5rem, 5vw, 5.5rem);
    align-items: start;
}

.placed__main[b-i7wrwg4ju1] {
    display: grid;
    gap: 1.25rem;
    min-width: 0;
}

.placed__box[b-i7wrwg4ju1] {
    padding: clamp(1.25rem, 2vw, 1.75rem);
    border: 1px solid var(--color-line);
    border-radius: 8px;
}

.placed__box > :last-child[b-i7wrwg4ju1] {
    margin-bottom: 0;
}

.placed__next[b-i7wrwg4ju1] {
    margin: 0;
    font-family: var(--font-body);
    font-size: var(--fs-lead);
    line-height: 1.55;
}

/* the account, the amount and the symbol beside the QR */
.placed__payment[b-i7wrwg4ju1] {
    display: grid;
    gap: 1.5rem;
    align-items: center;
    margin-top: 1.25rem;
    padding: 1.25rem;
    border-radius: 6px;
    background: var(--color-surface-alt);
}

.placed__pay[b-i7wrwg4ju1] {
    display: grid;
    gap: 0.45rem;
    margin: 0;
}

.placed__pay div[b-i7wrwg4ju1] {
    display: flex;
    flex-wrap: wrap;
    gap: 0 0.6rem;
}

.placed__pay dt[b-i7wrwg4ju1] {
    color: var(--color-muted);
}

.placed__pay dd[b-i7wrwg4ju1] {
    margin: 0;
    font-weight: 700;
}

.placed__qr[b-i7wrwg4ju1] {
    display: grid;
    justify-items: center;
    gap: 0.4rem;
    margin: 0;
}

.placed__qr img[b-i7wrwg4ju1] {
    width: 11rem;
    height: 11rem;
    padding: 0.4rem;
    border-radius: 6px;
    background: #fff;
}

.placed__qr figcaption[b-i7wrwg4ju1] {
    max-width: 12rem;
    color: var(--color-muted);
    font-size: 0.75rem;
    text-align: center;
}

.placed__store-grid[b-i7wrwg4ju1] {
    display: grid;
    gap: 1.25rem 2rem;
}

.placed__address[b-i7wrwg4ju1] {
    display: flex;
    gap: 0.6rem;
    margin: 0 0 0.6rem;
    font-weight: 700;
    line-height: 1.4;
}

.placed__address[b-i7wrwg4ju1]  .icon,
.placed__contacts[b-i7wrwg4ju1]  .icon {
    flex: none;
    width: 1.2rem;
    height: 1.2rem;
    color: var(--color-brand);
}

.placed__map[b-i7wrwg4ju1] {
    margin-left: 1.8rem;
    color: var(--color-brand-dark);
    font-size: 0.875rem;
    font-weight: 700;
}

.placed__hours[b-i7wrwg4ju1] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.875rem;
}

.placed__hours th[b-i7wrwg4ju1],
.placed__hours td[b-i7wrwg4ju1] {
    padding: 0.35rem 0;
    border-bottom: 1px solid var(--color-line);
    text-align: left;
    vertical-align: top;
}

.placed__hours th[b-i7wrwg4ju1] {
    padding-right: 1rem;
    font-weight: 700;
}

.placed__hours td[b-i7wrwg4ju1] {
    text-align: right;
    white-space: nowrap;
}

/* the lunch break: a note under the days above it */
.placed__hours tr:has(+ .placed__hours-note) :is(th, td)[b-i7wrwg4ju1] {
    padding-bottom: 0.1rem;
    border-bottom: 0;
}

.placed__hours-note :is(th, td)[b-i7wrwg4ju1] {
    padding-top: 0;
    color: var(--color-muted);
    font-size: 0.8125rem;
    font-weight: 400;
}

.placed__hours-note th[b-i7wrwg4ju1] {
    padding-left: 0.9rem;
}

.placed__help p[b-i7wrwg4ju1] {
    margin: 0 0 0.75rem;
    color: var(--color-ink-soft);
    font-size: 0.9375rem;
}

.placed__contacts[b-i7wrwg4ju1] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.6rem 1.75rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.placed__contacts li[b-i7wrwg4ju1] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.placed__contacts a[b-i7wrwg4ju1] {
    color: var(--color-ink);
    font-weight: 700;
    text-decoration: none;
}

.placed__contacts a:hover[b-i7wrwg4ju1] {
    color: var(--color-brand);
}

.placed__back[b-i7wrwg4ju1] {
    justify-self: start;
    margin-top: 0.5rem;
    padding: 0.95em 1.7em;
    font-size: 0.8125rem;
}

/* ---- the order ---- */

.placed__order[b-i7wrwg4ju1] {
    min-width: 0;
    padding: clamp(1.25rem, 2vw, 1.75rem);
    border-radius: 8px;
    background: var(--color-surface-alt);
}

.placed__items[b-i7wrwg4ju1] {
    margin: 0;
    padding: 0;
    list-style: none;
}

.placed__item[b-i7wrwg4ju1] {
    display: grid;
    grid-template-columns: 4.5rem minmax(0, 1fr) auto;
    gap: 1rem;
    align-items: center;
    padding: 0.9rem 0;
    border-bottom: 1px solid #dcdcd7;
}

.placed__item:first-child[b-i7wrwg4ju1] {
    padding-top: 0;
}

.placed__photo[b-i7wrwg4ju1] {
    position: relative;
    display: block;
    aspect-ratio: 1;
    border-radius: 6px;
    background: #fff;
}

.placed__photo[b-i7wrwg4ju1]  .product-photo {
    position: absolute;
    inset: 0.3rem;
    width: calc(100% - 0.6rem);
    height: calc(100% - 0.6rem);
    object-fit: contain;
}

.placed__item-info[b-i7wrwg4ju1] {
    min-width: 0;
}

.placed__item p[b-i7wrwg4ju1] {
    margin: 0;
}

.placed__item-name[b-i7wrwg4ju1] {
    font-family: var(--font-title);
    font-size: 1rem;
    letter-spacing: 0.01em;
    line-height: 1.2;
    text-transform: uppercase;
}

.placed__item .placed__variant[b-i7wrwg4ju1],
.placed__item .placed__quantity[b-i7wrwg4ju1] {
    color: var(--color-muted);
    font-size: 0.8125rem;
}

.placed__item .placed__amount[b-i7wrwg4ju1] {
    font-weight: 700;
    white-space: nowrap;
}

.placed__totals[b-i7wrwg4ju1] {
    display: grid;
    gap: 0.45rem;
    margin: 1rem 0 0;
}

.placed__totals div[b-i7wrwg4ju1] {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    font-size: 0.9375rem;
}

.placed__totals dt[b-i7wrwg4ju1] {
    color: var(--color-ink-soft);
}

.placed__totals .placed__discount dd[b-i7wrwg4ju1] {
    color: var(--color-brand-dark);
    font-weight: 700;
}

.placed__totals dd[b-i7wrwg4ju1] {
    margin: 0;
    font-weight: 700;
    text-align: right;
}

.placed__totals .placed__payment-method[b-i7wrwg4ju1] {
    font-weight: 400;
}

/* Spolu in the design's orange */
.placed__totals .placed__total[b-i7wrwg4ju1] {
    align-items: baseline;
    margin-top: 0.5rem;
    padding-top: 0.85rem;
    border-top: 2px solid #c9c9c6;
    color: var(--color-brand);
    font-family: var(--font-title);
    font-size: clamp(1.375rem, 1.8vw, 1.75rem);
    text-transform: uppercase;
}

.placed__totals .placed__total dt[b-i7wrwg4ju1] {
    color: inherit;
}

.placed__totals .placed__total dd[b-i7wrwg4ju1] {
    font-weight: 400;
    white-space: nowrap;
}

.placed__totals .placed__vat[b-i7wrwg4ju1] {
    color: var(--color-muted);
    font-size: 0.8125rem;
}

.placed__totals .placed__vat dt[b-i7wrwg4ju1] {
    color: inherit;
}

.placed__totals .placed__vat dd[b-i7wrwg4ju1] {
    font-weight: 400;
}

.placed__customer[b-i7wrwg4ju1] {
    margin-top: 1.5rem;
    padding-top: 1.25rem;
    border-top: 1px solid #dcdcd7;
}

.placed__subheading[b-i7wrwg4ju1] {
    margin: 0 0 0.4rem;
    font-size: 0.875rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.placed__customer p[b-i7wrwg4ju1] {
    margin: 0;
    color: var(--color-ink-soft);
    font-size: 0.9375rem;
    line-height: 1.55;
}

@media (min-width: 40em) {
    .placed__payment[b-i7wrwg4ju1] {
        grid-template-columns: minmax(0, 1fr) auto;
    }

    .placed__store-grid[b-i7wrwg4ju1] {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr);
    }
}

@media (min-width: 64em) {
    .placed__columns[b-i7wrwg4ju1] {
        grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr);
    }

    .placed__order[b-i7wrwg4ju1] {
        position: sticky;
        top: calc(var(--header-height) + 1.5rem);
    }
}

/* an order paid online: how the payment went, or the button to pay */
.placed__online[b-i7wrwg4ju1] {
    display: grid;
    gap: 0.75rem;
    margin: 1.25rem 0 0;
    padding: 1rem 1.25rem;
    border-radius: 6px;
    background: var(--color-surface-alt, #f5f5f3);
}

.placed__online p[b-i7wrwg4ju1] {
    margin: 0;
}

.placed__online--paid[b-i7wrwg4ju1] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    background: #f5faef;
    color: var(--color-available);
    font-weight: 700;
}

.placed__pay-online[b-i7wrwg4ju1] {
    justify-self: start;
    width: auto;
}
/* /Components/Pages/Shop/ProductPage.razor.rz.scp.css */
/* as on the staging site: intro 17 px Univers, price 26 px, DO KOŠÍKA 17 px and 35 px tall,
   headings 15 px, parameters 14 px; the name in Titling */

.product[b-0a3bzrfz11] {
    padding: clamp(1.25rem, 2vw, 2rem) 0 clamp(3rem, 5vw, 5rem);
}

.product__top[b-0a3bzrfz11] {
    display: grid;
    gap: 2rem;
    margin-top: clamp(1.25rem, 2.2vw, 2.25rem);
}

.product__media[b-0a3bzrfz11] {
    position: relative;
}

.product__badges[b-0a3bzrfz11] {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    display: flex;
    flex-direction: column;
    gap: 0.6rem;
    font-size: 0.875rem;
}

/* the discount, green as on the cards */
.product__sale[b-0a3bzrfz11] {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 1;
    padding: 0.3em 0.8em;
    background: var(--color-sale);
    color: #fff;
    font-size: var(--fs-small);
    font-weight: 700;
    letter-spacing: 0.02em;
}

/* the picture keeps its own shape, up to 32 rem tall */
.product__media[b-0a3bzrfz11]  .product__photo {
    height: auto;
    max-height: 32rem;
    margin-top: 1.5rem;
}

/* no picture from STIHL: the grey box gets the picture's usual room */
.product__media[b-0a3bzrfz11]  .product-photo--missing {
    aspect-ratio: 4 / 3;
    background-size: 5rem;
}

.product__name[b-0a3bzrfz11] {
    margin: 0 0 0.75rem;
    font-family: var(--font-title);
    font-size: var(--fs-title);
    font-weight: 400;
    letter-spacing: 0.01em;
    line-height: 1.12;
    text-transform: uppercase;
}

.product__name--long[b-0a3bzrfz11] {
    font-size: clamp(1.375rem, 1.8vw, 1.875rem);
}

.product__subtitle[b-0a3bzrfz11] {
    margin: 0 0 0.6rem;
    color: #666;
    font-family: var(--font-body);
    font-size: var(--fs-lead);
    line-height: 1.6;
}

.product__sku[b-0a3bzrfz11] {
    margin: 0 0 1.25rem;
    color: var(--color-faint);
    font-size: var(--fs-small);
}

.product__availability[b-0a3bzrfz11] {
    display: flex;
    align-items: center;
    gap: 0.45rem;
    margin: 0 0 1rem;
    font-size: 0.875rem;
}

.product__availability[b-0a3bzrfz11]  .icon {
    width: 1.25rem;
    height: 1.25rem;
    color: var(--color-muted);
}

.product__availability[b-0a3bzrfz11]  .availability {
    font-size: inherit;
}

/* ---- variants: radio buttons that look like buttons; the checked one is orange ---- */

.variants[b-0a3bzrfz11] {
    min-width: 0;
    margin: 0 0 1.25rem;
    padding: 0;
    border: 0;
}

.variants__label[b-0a3bzrfz11] {
    margin: 0 0 0.5rem;
    padding: 0;
    font-size: var(--fs-small);
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.variants__list[b-0a3bzrfz11] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.variants__option[b-0a3bzrfz11] {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
    padding: 0.5rem 0.85rem;
    border: 1px solid var(--color-line-strong);
    border-radius: 4px;
    color: var(--color-black);
    font-size: 0.8125rem;
    line-height: 1.25;
    text-decoration: none;
    cursor: pointer;
    transition: border-color 0.2s var(--ease-out), box-shadow 0.2s var(--ease-out);
}

.variants__option:hover[b-0a3bzrfz11] {
    border-color: var(--color-black);
    color: var(--color-black);
}

.variants__radio[b-0a3bzrfz11] {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: 0;
    opacity: 0;
    pointer-events: none;
}

.variants__option:has(.variants__radio:checked)[b-0a3bzrfz11] {
    border-color: var(--color-brand);
    box-shadow: inset 0 0 0 1px var(--color-brand);
}

.variants__option:has(.variants__radio:focus-visible)[b-0a3bzrfz11] {
    outline: 2px solid var(--color-brand);
    outline-offset: 2px;
}

.variants__price[b-0a3bzrfz11] {
    color: var(--color-muted);
}

.product__variant-note[b-0a3bzrfz11] {
    margin-bottom: 1.25rem;
    color: var(--color-muted);
    font-size: var(--fs-small);
}

.product__variant-note[b-0a3bzrfz11]  p {
    margin: 0;
}

/* ---- buying ---- */

.product__buy[b-0a3bzrfz11] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 1rem 2.5rem;
    margin-top: 1.5rem;
}

.product__cart[b-0a3bzrfz11] {
    height: 2.1875rem;
    padding: 0 2.9em;
    font-size: 1.0625rem;
    letter-spacing: 0.06em;
}

.product__buy[b-0a3bzrfz11]  .product__price {
    font-size: 1.625rem;
}

.product__discount[b-0a3bzrfz11],
.product__note[b-0a3bzrfz11] {
    margin: 0.75rem 0 0;
    color: var(--color-muted);
    font-size: var(--fs-small);
}

/* delivery, pickup, servis, a phone to ask */
.product__perks[b-0a3bzrfz11] {
    display: grid;
    gap: 0.55rem;
    margin: 1.5rem 0 0;
    padding: 1.1rem 1.25rem;
    border-radius: 6px;
    background: var(--color-surface-alt);
    list-style: none;
    font-size: 0.875rem;
    line-height: 1.4;
}

.product__perks li[b-0a3bzrfz11] {
    display: flex;
    align-items: center;
    gap: 0.7rem;
}

.product__perks[b-0a3bzrfz11]  .icon {
    flex: none;
    width: 1.3rem;
    height: 1.3rem;
    color: var(--color-brand);
}

/* a perk's second line, e.g. how long SPS usually takes */
.product__perks small[b-0a3bzrfz11] {
    display: block;
    margin-top: 0.1rem;
    color: var(--color-muted);
    font-size: 0.8125rem;
}

.product__perks a[b-0a3bzrfz11] {
    color: var(--color-black);
    font-weight: 700;
    text-decoration: none;
}

.product__perks a:hover[b-0a3bzrfz11] {
    color: var(--color-brand-dark);
    text-decoration: underline;
}

.product__highlights[b-0a3bzrfz11] {
    display: grid;
    gap: 0.35rem;
    margin: 1.75rem 0 0;
    padding: 1.1rem 0 0;
    border-top: 1px solid var(--color-line);
    list-style: none;
    font-size: 0.875rem;
}

.product__highlights li[b-0a3bzrfz11] {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
}

.product__highlights[b-0a3bzrfz11]  .product__yes {
    display: block;
    width: 1.05rem;
    height: 1.05rem;
    color: var(--color-available);
}

/* ---- description and specs ---- */

.product__details[b-0a3bzrfz11] {
    display: grid;
    gap: 2.5rem;
    margin-top: clamp(2.25rem, 3.5vw, 3.5rem);
    padding-top: clamp(1.75rem, 2.8vw, 2.75rem);
    border-top: 1px solid var(--color-line-strong);
}

.product__heading[b-0a3bzrfz11] {
    margin: 0 0 1.25rem;
    font-size: 0.9375rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.product__description[b-0a3bzrfz11] {
    color: var(--color-ink-soft);
    font-family: var(--font-body);
    font-size: 0.875rem;
    line-height: 1.7;
}

.product__ask[b-0a3bzrfz11] {
    margin-top: 0.5rem;
    padding: 0.7em 1.4em;
    font-family: var(--font-text);
    font-size: 0.8125rem;
}

.spec-table a[b-0a3bzrfz11] {
    color: var(--color-black);
}

.spec-table a:hover[b-0a3bzrfz11] {
    color: var(--color-brand-dark);
}

.spec-table td[b-0a3bzrfz11]  .availability {
    font-size: inherit;
}

.spec-table[b-0a3bzrfz11] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.875rem;
    line-height: 1.5;
}

.spec-table th[b-0a3bzrfz11],
.spec-table td[b-0a3bzrfz11] {
    padding: 0.6rem 0;
    border-bottom: 1px solid #f0f0ee;
    vertical-align: top;
}

.spec-table th[b-0a3bzrfz11] {
    padding-right: 1.5rem;
    color: var(--color-ink-soft);
    font-weight: 400;
    text-align: left;
}

.spec-table td[b-0a3bzrfz11] {
    font-weight: 700;
    text-align: right;
}

.spec-table td.spec-table__note[b-0a3bzrfz11] {
    color: var(--color-muted);
    font-weight: 400;
    text-align: left;
}

.product__related[b-0a3bzrfz11] {
    margin-top: var(--section-gap);
}

@media (min-width: 64em) {
    .product__top[b-0a3bzrfz11] {
        grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr);
        gap: clamp(2rem, 5vw, 5rem);
    }

    .product__details[b-0a3bzrfz11] {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        gap: clamp(2rem, 6vw, 6rem);
    }
}
/* /Components/Pages/Shop/SearchPage.razor.rz.scp.css */
.search[b-p7fhpg2hzb] {
    padding: clamp(1.5rem, 2.6vw, 2.5rem) 0 clamp(3rem, 5vw, 5rem);
}

.search__box[b-p7fhpg2hzb] {
    margin-bottom: clamp(1.5rem, 2.5vw, 2.5rem);
}

.search__head[b-p7fhpg2hzb] {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    justify-content: space-between;
    gap: 0.5rem 1.5rem;
    margin-bottom: clamp(1.25rem, 2vw, 2.5rem);
}

.search__title[b-p7fhpg2hzb] {
    margin: 0;
    font-family: var(--font-title);
    font-size: clamp(1.375rem, 1.8vw, 1.75rem);
    font-weight: 400;
    letter-spacing: 0.01em;
    text-transform: uppercase;
}

.search__title--alone[b-p7fhpg2hzb] {
    margin-bottom: clamp(1.25rem, 2vw, 2rem);
}

.search__count[b-p7fhpg2hzb] {
    margin: 0;
    color: var(--color-muted);
    font-size: 0.8125rem;
}

/* phones: the count under the title, so the title's own font doesn't push it to the next line after the
   page is drawn (a shift of everything below) */
@media (max-width: 47.99em) {
    .search__count[b-p7fhpg2hzb] {
        flex-basis: 100%;
    }
}

.search__empty[b-p7fhpg2hzb] {
    max-width: 44rem;
    margin: 0 0 clamp(2.5rem, 5vw, 4rem);
    color: var(--color-ink-soft);
    font-family: var(--font-body);
    font-size: var(--fs-lead);
    line-height: 1.6;
}

.search__empty p[b-p7fhpg2hzb] {
    margin: 0 0 0.4rem;
}

.search__empty strong[b-p7fhpg2hzb] {
    color: var(--color-black);
    font-family: var(--font-text);
    font-size: 1.125rem;
}

/* Všetky / Len zľavnené */
.search__filters[b-p7fhpg2hzb] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin: calc(-1 * clamp(0.5rem, 1vw, 1.5rem)) 0 clamp(1.25rem, 2vw, 2rem);
}

.search__filter[b-p7fhpg2hzb] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.45rem 1rem;
    border: 1px solid var(--color-line, #d9d9d6);
    border-radius: 999px;
    color: var(--color-ink);
    font-size: 0.875rem;
    text-decoration: none;
}

.search__filter span[b-p7fhpg2hzb] {
    color: var(--color-muted);
    font-size: 0.8125rem;
}

.search__filter:hover[b-p7fhpg2hzb] {
    border-color: var(--color-brand);
}

.search__filter--on[b-p7fhpg2hzb] {
    border-color: var(--color-brand);
    background: var(--color-brand);
    color: #fff;
}

.search__filter--on span[b-p7fhpg2hzb] {
    color: #fff;
}
/* /Components/Pages/Shop/ServicePage.razor.rz.scp.css */
/* as on the staging site: a bold lead on the left, a card with the capacity, the contacts and the
   plea to book ahead on the right; the services as square cards (name and price in Titling, a green
   note, a box to tick on the right), then the details in a wide form and a square orange button */

.workshop[b-cxnx90dhpt] {
    padding: clamp(1.75rem, 3vw, 3rem) 0 clamp(3rem, 5vw, 5rem);
}

.workshop__intro[b-cxnx90dhpt] {
    display: grid;
    gap: 2rem clamp(2rem, 5vw, 5rem);
    align-items: start;
    margin-bottom: clamp(2.25rem, 4vw, 3.5rem);
}

.workshop__title[b-cxnx90dhpt] {
    margin: 0 0 1rem;
    font-size: var(--fs-title);
}

.workshop__lead[b-cxnx90dhpt] {
    max-width: 19em;
    margin: 0 0 1rem;
    font-size: clamp(1.25rem, 1.7vw, 1.5625rem);
    font-weight: 700;
    line-height: 1.15;
}

.workshop__intro p:not(.workshop__lead, .workshop__capacity, .workshop__capacity-note, .workshop__hint)[b-cxnx90dhpt] {
    max-width: 32em;
    margin: 0 0 0.6rem;
    color: var(--color-ink-soft);
    font-size: 0.9375rem;
    line-height: 1.5;
}

/* ---- the card: the capacity, the contacts, the plea to book ahead ---- */

.workshop__card[b-cxnx90dhpt] {
    padding: 1.4rem 1.5rem;
    border: 1px solid var(--color-line);
    border-radius: 6px;
    background: #fff;
    box-shadow: 0 8px 24px -12px rgb(0 0 0 / 0.14);
}

.workshop__capacity[b-cxnx90dhpt] {
    display: flex;
    align-items: center;
    gap: 0.65rem;
    margin: 0;
    font-weight: 700;
}

.workshop__capacity-label[b-cxnx90dhpt] {
    color: var(--color-muted);
    font-weight: 400;
}

.workshop__dot[b-cxnx90dhpt] {
    flex: none;
    width: 0.8rem;
    height: 0.8rem;
    border-radius: 50%;
    background: #3d9a2b;
    box-shadow: 0 0 0 4px rgb(61 154 43 / 0.16);
}

.workshop__capacity--almostfull .workshop__dot[b-cxnx90dhpt] {
    background: #f39200;
    box-shadow: 0 0 0 4px rgb(243 146 0 / 0.18);
}

.workshop__capacity--full .workshop__dot[b-cxnx90dhpt] {
    background: #d9001b;
    box-shadow: 0 0 0 4px rgb(217 0 27 / 0.15);
}

.workshop__capacity-note[b-cxnx90dhpt] {
    margin: 0.5rem 0 0;
    color: var(--color-ink-soft);
    font-size: 0.875rem;
}

.workshop__contacts[b-cxnx90dhpt] {
    display: grid;
    gap: 0.55rem;
    margin: 1.1rem 0 0;
    padding: 1.1rem 0 0;
    border-top: 1px solid var(--color-line);
    font-size: 0.9375rem;
    list-style: none;
}

.workshop__contacts li[b-cxnx90dhpt] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
}

.workshop__contacts a[b-cxnx90dhpt] {
    color: var(--color-ink);
    font-weight: 700;
    text-decoration: none;
}

.workshop__contacts a:hover[b-cxnx90dhpt] {
    color: var(--color-brand);
}

.workshop__contacts[b-cxnx90dhpt]  .icon {
    flex: none;
    width: 1.15rem;
    height: 1.15rem;
    color: var(--color-brand);
}

.workshop__hint[b-cxnx90dhpt] {
    margin: 1.1rem 0 0;
    padding-top: 1.1rem;
    border-top: 1px solid var(--color-line);
    font-family: var(--font-title);
    font-size: 1.125rem;
    line-height: 1.25;
    text-transform: uppercase;
}

/* ---- the booking ---- */

/* "Objednať do servisu" (home page) lands here: the first heading with some room under the header */
.workshop__booking[b-cxnx90dhpt] {
    scroll-margin-top: clamp(1.25rem, 2.5vw, 2rem);
}

.workshop__step[b-cxnx90dhpt] {
    min-width: 0;
    margin: 0 0 clamp(2rem, 3vw, 2.75rem);
    padding: 0;
    border: 0;
}

.workshop__step-title[b-cxnx90dhpt] {
    margin: 0 0 1.1rem;
    padding: 0;
    color: #585858;
    font-size: 1rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

.offers[b-cxnx90dhpt] {
    display: grid;
    gap: 0.75rem clamp(1rem, 3vw, 2.5rem);
    margin: 0 0 0.5rem;
    padding: 0;
    list-style: none;
}

/* a service card; ticking it outlines it in orange */
.offers__item[b-cxnx90dhpt] {
    display: flex;
    flex-direction: column;
    border: 1px solid var(--color-line-strong);
    background: #fff;
    transition: border-color 0.2s var(--ease-out), box-shadow 0.2s var(--ease-out);
}

.offers__item:hover[b-cxnx90dhpt] {
    border-color: #9d9d99;
}

.offers__item:has(.offer__check:checked)[b-cxnx90dhpt] {
    border-color: var(--color-brand);
    box-shadow: inset 0 0 0 1px var(--color-brand);
}

.offers__item:has(.offer__check:focus-visible)[b-cxnx90dhpt] {
    outline: 2px solid var(--color-brand);
    outline-offset: 2px;
}

.offer[b-cxnx90dhpt] {
    position: relative;
    display: flex;
    flex: 1;
    align-items: stretch;
    gap: 1rem;
    padding: 0.875rem 1.125rem;
    cursor: pointer;
}

.offer__check[b-cxnx90dhpt] {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.offer__body[b-cxnx90dhpt] {
    display: grid;
    flex: 1;
    align-content: start;
    gap: 0.2rem;
    min-width: 0;
}

.offer__name[b-cxnx90dhpt] {
    font-family: var(--font-title);
    font-size: 0.875rem;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

.offer__description[b-cxnx90dhpt] {
    color: var(--color-ink-soft);
    font-family: var(--font-body);
    font-size: 0.75rem;
    line-height: 1.4;
}

.offer__note[b-cxnx90dhpt] {
    color: var(--color-available);
    font-family: var(--font-body);
    font-size: 0.6875rem;
    font-weight: 700;
}

/* the price on top, the box to tick below it */
.offer__side[b-cxnx90dhpt] {
    display: flex;
    flex: none;
    flex-direction: column;
    align-items: flex-end;
    justify-content: space-between;
    gap: 0.5rem;
}

.offer__price[b-cxnx90dhpt] {
    font-family: var(--font-title);
    font-size: 1rem;
    white-space: nowrap;
}

.offer__tick[b-cxnx90dhpt] {
    display: grid;
    place-items: center;
    width: 1.125rem;
    height: 1.125rem;
    margin-top: auto;
    border: 1px solid var(--color-line-strong);
    color: transparent;
    transition: background-color 0.2s var(--ease-out), border-color 0.2s var(--ease-out), color 0.2s var(--ease-out);
}

.offer__tick[b-cxnx90dhpt]  .icon {
    width: 0.75rem;
    height: 0.75rem;
}

.offers__item:has(.offer__check:checked) .offer__tick[b-cxnx90dhpt] {
    border-color: var(--color-brand);
    background: var(--color-brand);
    color: #fff;
}

/* "Nie som si istý": a field to describe the fault, shown once the card is ticked */
.offer__details[b-cxnx90dhpt] {
    display: none;
    padding: 0 1.125rem 1rem;
}

.offers__item:has(.offer__check:checked) .offer__details[b-cxnx90dhpt] {
    display: grid;
}

.workshop__fields[b-cxnx90dhpt] {
    display: grid;
    gap: 0.75rem;
    align-items: start;
    margin-bottom: 1.1rem;
}

/* the machine: the list field, or with "Neviem / nie som si istý" a plain text field */
.machine[b-cxnx90dhpt]  .machine__own {
    display: none;
}

.machine:has(.machine__unsure input:checked)[b-cxnx90dhpt]  .machine__pick {
    display: none;
}

.machine:has(.machine__unsure input:checked)[b-cxnx90dhpt]  .machine__own {
    display: block;
}

.machine__unsure[b-cxnx90dhpt] {
    margin-top: 0.15rem;
    color: var(--color-ink-soft);
    font-size: 0.8125rem;
}

.workshop__step[b-cxnx90dhpt]  .shop-check {
    max-width: 40rem;
}

.workshop__step > .shop-check[b-cxnx90dhpt] {
    color: var(--color-muted);
    font-family: var(--font-body);
    font-size: 0.75rem;
}

.workshop__submit[b-cxnx90dhpt] {
    width: auto;
    min-width: 17rem;
    margin-top: 1.25rem;
}

@media (min-width: 48em) {
    .offers[b-cxnx90dhpt] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

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

    .workshop__message[b-cxnx90dhpt] {
        grid-column: 1 / -1;
    }
}

@media (min-width: 64em) {
    .workshop__intro[b-cxnx90dhpt] {
        grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
    }

    .workshop__fields[b-cxnx90dhpt] {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}
/* /Components/Pages/Shop/WithdrawalPage.razor.rz.scp.css */
.withdrawal[b-kc9cocwx0f] {
    padding: clamp(1.75rem, 3.5vw, 3.5rem) 0 clamp(3rem, 5vw, 5rem);
}

.withdrawal__body[b-kc9cocwx0f] {
    max-width: 46rem;
}

.withdrawal__intro[b-kc9cocwx0f] {
    margin: 0 0 1.5rem;
    color: var(--color-ink-soft);
    font-family: var(--font-body);
    font-size: var(--fs-lead);
    line-height: 1.55;
}

.withdrawal__intro a[b-kc9cocwx0f] {
    color: var(--color-brand-dark);
}

.withdrawal__fields[b-kc9cocwx0f] {
    display: grid;
    gap: 0.75rem;
    align-items: start;
}

/* the goods only when not the whole order (a browser without :has() shows them all the time) */
.withdrawal__items[b-kc9cocwx0f] {
    display: grid;
}

.withdrawal:has(.withdrawal__whole input:checked) .withdrawal__items[b-kc9cocwx0f] {
    display: none;
}

.withdrawal__submit[b-kc9cocwx0f] {
    justify-self: start;
    width: auto;
    min-width: 16rem;
}

.withdrawal__review[b-kc9cocwx0f] {
    display: grid;
    margin: 0 0 1.5rem;
    border-top: 1px solid var(--color-line);
}

.withdrawal__review div[b-kc9cocwx0f] {
    display: grid;
    grid-template-columns: 11rem minmax(0, 1fr);
    gap: 1rem;
    padding: 0.7rem 0;
    border-bottom: 1px solid var(--color-line);
}

.withdrawal__review dt[b-kc9cocwx0f] {
    color: var(--color-muted);
}

.withdrawal__review dd[b-kc9cocwx0f] {
    margin: 0;
    font-weight: 700;
    white-space: pre-line;
}

.withdrawal__actions[b-kc9cocwx0f] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 1rem 1.5rem;
}

.withdrawal__actions form[b-kc9cocwx0f] {
    margin: 0;
}

.withdrawal__edit[b-kc9cocwx0f] {
    padding: 0;
    border: 0;
    background: none;
    color: var(--color-brand-dark);
    font: inherit;
    font-weight: 700;
    text-decoration: underline;
    cursor: pointer;
}

.withdrawal__done .withdrawal__review[b-kc9cocwx0f] {
    margin: 1rem 0 0;
}

@media (min-width: 40em) {
    .withdrawal__fields[b-kc9cocwx0f] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 39.99em) {
    .withdrawal__review div[b-kc9cocwx0f] {
        grid-template-columns: minmax(0, 1fr);
        gap: 0.2rem;
    }
}
/* /Components/Shop/Availability.razor.rz.scp.css */
.availability[b-o15vak84gg] {
    font-size: var(--fs-small);
    font-weight: 600;
}

.availability--yes[b-o15vak84gg] {
    color: var(--color-available);
}

.availability--no[b-o15vak84gg] {
    color: var(--color-unavailable);
}
/* /Components/Shop/Breadcrumbs.razor.rz.scp.css */
.breadcrumbs__list[b-7sv1b5pvg2] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.35rem 0;
    margin: 0;
    padding: 0;
    list-style: none;
    color: var(--color-faint);
    font-size: 0.8125rem;
}

.breadcrumbs__item + .breadcrumbs__item[b-7sv1b5pvg2]::before {
    content: "›";
    margin: 0 0.8em;
    font-size: 1.2em;
    line-height: 1;
}

.breadcrumbs a[b-7sv1b5pvg2] {
    color: inherit;
    text-decoration: none;
    transition: color 0.2s var(--ease-out);
}

.breadcrumbs a:hover[b-7sv1b5pvg2] {
    color: var(--color-black);
    text-decoration: underline;
}

.breadcrumbs [aria-current][b-7sv1b5pvg2] {
    color: var(--color-muted);
}

/* phones: the current page is the heading right below, so only the way up stays */
@media (max-width: 39.99em) {
    .breadcrumbs__item:has([aria-current])[b-7sv1b5pvg2] {
        display: none;
    }

    .breadcrumbs:not(:has(a))[b-7sv1b5pvg2] {
        display: none;
    }
}
/* /Components/Shop/CheckoutFrame.razor.rz.scp.css */
.checkout[b-pc693tschh] {
    padding-bottom: clamp(3rem, 5vw, 5rem);
}

.checkout__title[b-pc693tschh] {
    margin: clamp(1.75rem, 3vw, 3rem) 0 clamp(1.25rem, 2.5vw, 2rem);
    font-size: var(--fs-title);
    text-align: center;
}

/* phones: the form first, then the summary */
.checkout__layout[b-pc693tschh] {
    display: grid;
    gap: 2.75rem clamp(2.5rem, 6vw, 7.5rem);
    align-items: start;
}

.checkout__main[b-pc693tschh],
.checkout__side[b-pc693tschh] {
    min-width: 0;
}

/* two halves, the summary on the left and the form on the right (the design's Údaje) */
@media (min-width: 64em) {
    .checkout__layout[b-pc693tschh] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        grid-template-areas: "side main";
    }

    .checkout__main[b-pc693tschh] {
        grid-area: main;
    }

    .checkout__side[b-pc693tschh] {
        grid-area: side;
    }
}
/* /Components/Shop/CheckoutSteps.razor.rz.scp.css */
/* The labels above a thin grey line with a dot for each step, black up to the current one. The dots
   sit at 0, ⅓, ⅔ and the end of the line and the labels are centred on them; the whole thing is inset
   by half a label, so SÚHRN starts and PLATBA ends where the page does. */

.steps[b-g1cyv049c3] {
    --dot: 0.75rem;
    --inset: clamp(1.45rem, 2.2vw, 2.15rem);
    position: relative;
    margin: clamp(1.5rem, 3vw, 2.75rem) 0 clamp(2rem, 3.5vw, 3.5rem);
    padding-inline: var(--inset);
}

.steps__list[b-g1cyv049c3] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr)) 0;
    margin: 0;
    padding: 0;
    list-style: none;
}

/* a zero-wide column at each dot; its label overflows it evenly to both sides */
.steps__item[b-g1cyv049c3] {
    display: flex;
    justify-content: center;
    width: 0;
}

.steps__link[b-g1cyv049c3] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: clamp(0.6rem, 1vw, 0.9rem);
    color: var(--color-faint);
    font-size: clamp(0.6875rem, 1.05vw, 1rem);
    font-weight: 700;
    letter-spacing: 0.05em;
    line-height: 1.2;
    text-decoration: none;
    text-transform: uppercase;
    white-space: nowrap;
    transition: color 0.2s var(--ease-out);
}

.steps__item--done .steps__link[b-g1cyv049c3],
.steps__item--current .steps__link[b-g1cyv049c3] {
    color: var(--color-black);
}

.steps__dot[b-g1cyv049c3] {
    position: relative;
    z-index: 1;
    width: var(--dot);
    height: var(--dot);
    border: 1.5px solid #b9b9b6;
    border-radius: 50%;
    background: #fff;
    transition: transform 0.25s var(--ease-out), border-color 0.2s var(--ease-out), background-color 0.2s var(--ease-out);
}

.steps__item--done .steps__dot[b-g1cyv049c3] {
    border-color: var(--color-black);
    background: var(--color-black);
}

/* the current step has a soft ring; on the next page it slides along the line to its new place */
.steps__item--current .steps__dot[b-g1cyv049c3] {
    border-color: var(--color-black);
    background: var(--color-black);
    box-shadow: 0 0 0 0.3rem rgb(0 0 0 / 0.08);
    view-transition-name: checkout-current;
}

a.steps__link:hover[b-g1cyv049c3] {
    color: var(--color-brand);
}

a.steps__link:hover .steps__dot[b-g1cyv049c3] {
    border-color: var(--color-brand);
    background: var(--color-brand);
    transform: scale(1.35);
}

a.steps__link:focus-visible[b-g1cyv049c3] {
    outline: 2px solid var(--color-brand);
    outline-offset: 4px;
}

/* from the first dot to the last, through their middles */
.steps__line[b-g1cyv049c3] {
    position: absolute;
    right: var(--inset);
    bottom: calc(var(--dot) / 2);
    left: var(--inset);
    height: 1px;
    background: #c9c9c6;
}

/* grows to the next step between the pages: as wide as the line and scaled, so the page transition
   only animates its transform (app.css) - a changing width would be redrawn on every frame */
.steps__fill[b-g1cyv049c3] {
    position: absolute;
    top: -0.5px;
    left: 0;
    width: 100%;
    height: 2px;
    background: var(--color-black);
    transform: scaleX(max(0.001, var(--step) / 3));
    transform-origin: left;
    view-transition-name: checkout-progress;
}

/* the line and the dot move to the next page only from where they were seen: scrolled under the header
   they lose their names, else they flew in from above the screen across the header (phones) */
@supports (animation-timeline: view()) {
    .steps__fill[b-g1cyv049c3],
    .steps__item--current .steps__dot[b-g1cyv049c3] {
        animation: steps-unnamed-b-g1cyv049c3 linear forwards;
        animation-timeline: view(block var(--header-height) 0px);
        animation-range: exit;
    }
}

@keyframes steps-unnamed-b-g1cyv049c3 {
    to {
        view-transition-name: none;
    }
}
/* /Components/Shop/CheckoutSummary.razor.rz.scp.css */
/* as in the design's Údaje: photos, names in the Titling cut, a thicker line and the total in orange */

.summary__head[b-qxk2skl3f9] {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 1rem;
}

.summary__title[b-qxk2skl3f9] {
    margin: 0;
}

.summary__edit[b-qxk2skl3f9] {
    color: var(--color-muted);
    font-size: 0.8125rem;
    font-weight: 700;
    text-underline-offset: 0.2em;
    transition: color 0.2s var(--ease-out);
}

.summary__edit:hover[b-qxk2skl3f9] {
    color: var(--color-brand);
}

.summary__lines[b-qxk2skl3f9] {
    margin: 0;
    padding: 0;
    list-style: none;
}

.summary__line[b-qxk2skl3f9] {
    display: grid;
    grid-template-columns: clamp(4.5rem, 7vw, 7rem) minmax(0, 1fr);
    gap: clamp(1rem, 2vw, 2rem);
    align-items: center;
    padding: 1.25rem 0;
    border-bottom: 1px solid var(--color-line);
}

.summary__line:last-child[b-qxk2skl3f9] {
    border-bottom: 0;
}

.summary__photo[b-qxk2skl3f9] {
    position: relative;
    display: block;
    aspect-ratio: 1;
}

.summary__photo[b-qxk2skl3f9]  .product-photo {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.summary__info[b-qxk2skl3f9] {
    min-width: 0;
}

.summary__info p[b-qxk2skl3f9] {
    margin: 0;
}

.summary__name[b-qxk2skl3f9] {
    font-family: var(--font-title);
    font-size: clamp(1rem, 1.3vw, 1.25rem);
    letter-spacing: 0.01em;
    line-height: 1.2;
    text-transform: uppercase;
}

.summary__info .summary__detail[b-qxk2skl3f9] {
    margin-top: 0.3rem;
    color: var(--color-ink-soft);
    font-family: var(--font-body);
    font-size: 0.875rem;
    line-height: 1.35;
}

.summary__info .summary__meta[b-qxk2skl3f9] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-top: 0.65rem;
}

.summary__quantity[b-qxk2skl3f9] {
    padding: 0.15rem 0.55rem;
    border: 1px solid var(--color-line-strong);
    font-size: 0.8125rem;
    font-weight: 700;
    white-space: nowrap;
}

.summary__amount[b-qxk2skl3f9] {
    font-family: var(--font-title);
    font-size: clamp(1.0625rem, 1.3vw, 1.25rem);
    white-space: nowrap;
}

.summary__totals[b-qxk2skl3f9] {
    display: grid;
    gap: 0.5rem;
    margin: 0.25rem 0 0;
    padding-top: 1.25rem;
    border-top: 2px solid #c9c9c6;
}

.summary__row[b-qxk2skl3f9] {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    font-size: 0.9375rem;
}

.summary__row dt[b-qxk2skl3f9] {
    color: var(--color-ink-soft);
}

.summary__row dd[b-qxk2skl3f9] {
    margin: 0;
    font-weight: 700;
    white-space: nowrap;
}

.summary__row--discount dd[b-qxk2skl3f9] {
    color: var(--color-brand-dark);
}

/* a code that doesn't count, and why */
.summary__problem[b-qxk2skl3f9] {
    margin: 0.9rem 0 0;
    color: var(--color-muted);
    font-size: 0.8125rem;
    line-height: 1.45;
}

/* SPOLU in the design's orange */
.summary__row--total[b-qxk2skl3f9] {
    align-items: baseline;
    margin-top: 0.4rem;
    color: var(--color-brand);
    font-family: var(--font-title);
    font-size: clamp(1.375rem, 1.8vw, 1.75rem);
    letter-spacing: 0.01em;
    text-transform: uppercase;
}

.summary__row--total dt[b-qxk2skl3f9] {
    color: inherit;
}

.summary__row--total dd[b-qxk2skl3f9] {
    font-weight: 400;
}

.summary__row--vat[b-qxk2skl3f9] {
    color: var(--color-muted);
    font-size: 0.8125rem;
}

.summary__row--vat dt[b-qxk2skl3f9] {
    color: inherit;
}

.summary__row--vat dd[b-qxk2skl3f9] {
    font-weight: 400;
}
/* /Components/Shop/NothingFound.razor.rz.scp.css */
.nothing-found__categories[b-8xqfk4kddm] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.6rem;
    margin-bottom: clamp(2.5rem, 5vw, 4.5rem);
}

.nothing-found__category[b-8xqfk4kddm] {
    padding: 0.8em 1.3em;
    border: 1px solid var(--color-line-strong);
    border-radius: var(--radius-pill);
    color: var(--color-black);
    font-size: 0.8125rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    line-height: 1;
    text-decoration: none;
    text-transform: uppercase;
    transition: border-color 0.2s var(--ease-out), color 0.2s var(--ease-out), background-color 0.2s var(--ease-out);
}

.nothing-found__category:hover[b-8xqfk4kddm] {
    border-color: var(--color-brand);
    color: var(--color-brand-dark);
}

.nothing-found__category--service[b-8xqfk4kddm] {
    border-color: var(--color-brand);
    background: var(--color-brand);
    color: #fff;
}

.nothing-found__category--service:hover[b-8xqfk4kddm] {
    background: var(--color-brand-dark);
    color: #fff;
}
/* /Components/Shop/OptionCard.razor.rz.scp.css */
/* square cards like the Servis price list; the radio itself is hidden, a round mark shows the choice */

.option[b-gz06d2pnw8] {
    position: relative;
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem 1.125rem;
    border: 1px solid var(--color-line-strong);
    background: #fff;
    cursor: pointer;
    transition: border-color 0.2s var(--ease-out), box-shadow 0.2s var(--ease-out);
}

.option:hover[b-gz06d2pnw8] {
    border-color: #9d9d99;
}

.option:has(.option__radio:checked)[b-gz06d2pnw8] {
    border-color: var(--color-brand);
    box-shadow: inset 0 0 0 1px var(--color-brand);
}

.option:has(.option__radio:focus-visible)[b-gz06d2pnw8] {
    outline: 2px solid var(--color-brand);
    outline-offset: 2px;
}

.option--disabled[b-gz06d2pnw8] {
    opacity: 0.5;
    cursor: not-allowed;
}

.option--disabled:hover[b-gz06d2pnw8] {
    border-color: var(--color-line-strong);
}

.option__radio[b-gz06d2pnw8] {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.option__mark[b-gz06d2pnw8] {
    display: grid;
    flex: none;
    place-items: center;
    width: 1.25rem;
    height: 1.25rem;
    border: 1.5px solid #b5b5b1;
    border-radius: 50%;
    transition: border-color 0.2s var(--ease-out);
}

.option__mark[b-gz06d2pnw8]::after {
    content: "";
    width: 0.625rem;
    height: 0.625rem;
    border-radius: 50%;
    background: var(--color-brand);
    transform: scale(0);
    transition: transform 0.2s var(--ease-out);
}

/* the mark follows the radio right before it, so the choice shows without :has() too */
.option__radio:checked + .option__mark[b-gz06d2pnw8] {
    border-color: var(--color-brand);
}

.option__radio:checked + .option__mark[b-gz06d2pnw8]::after {
    transform: scale(1);
}

@supports not selector(:has(*)) {
    .option__radio:focus-visible + .option__mark[b-gz06d2pnw8] {
        outline: 2px solid var(--color-brand);
        outline-offset: 2px;
    }
}

.option[b-gz06d2pnw8]  .option__icon {
    flex: none;
    width: 1.75rem;
    height: 1.75rem;
    color: var(--color-ink-soft);
}

.option__body[b-gz06d2pnw8] {
    display: grid;
    flex: 1;
    gap: 0.15rem;
    min-width: 0;
}

.option__title[b-gz06d2pnw8] {
    font-weight: 700;
}

.option__text[b-gz06d2pnw8] {
    color: var(--color-muted);
    font-family: var(--font-body);
    font-size: 0.8125rem;
    line-height: 1.4;
}

.option__price[b-gz06d2pnw8] {
    flex: none;
    font-weight: 700;
    white-space: nowrap;
}
/* /Components/Shop/PageHeading.razor.rz.scp.css */
.page-heading[b-dnmxyn2srt] {
    margin-bottom: clamp(1.75rem, 3.5vw, 3.5rem);
    text-align: center;
}

/* the lines run to the window's edges; a long title wraps between them */
.page-heading__title[b-dnmxyn2srt] {
    display: flex;
    align-items: center;
    gap: clamp(1rem, 2.5vw, 2rem);
    margin: 0;
    font-family: var(--font-title);
    font-size: var(--fs-title);
    font-weight: 400;
    letter-spacing: 0.02em;
    line-height: 1.16;
    text-transform: uppercase;
    text-wrap: balance;
}

.page-heading__title[b-dnmxyn2srt]::before,
.page-heading__title[b-dnmxyn2srt]::after {
    content: "";
    flex: 1 0 clamp(1rem, 5vw, 4rem);
    height: 3px;
    background: var(--color-brand);
}

.page-heading__title span[b-dnmxyn2srt] {
    max-width: 56rem;
}

/* phones: one short line under the title */
@media (max-width: 39.99em) {
    .page-heading__title[b-dnmxyn2srt] {
        flex-direction: column;
        gap: 0.9rem;
        padding-inline: var(--gutter);
    }

    .page-heading__title[b-dnmxyn2srt]::before {
        display: none;
    }

    .page-heading__title[b-dnmxyn2srt]::after {
        flex: none;
        width: 3rem;
    }
}

.page-heading__meta[b-dnmxyn2srt] {
    margin: 0.85rem 0 0;
    padding-inline: var(--gutter);
    color: var(--color-muted);
    font-size: 0.875rem;
}
/* /Components/Shop/Pagination.razor.rz.scp.css */
.pagination[b-xqc8noax9e] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    margin-top: clamp(2rem, 3vw, 3rem);
    font-size: 0.875rem;
}

.pagination__page[b-xqc8noax9e],
.pagination__step[b-xqc8noax9e] {
    display: inline-grid;
    place-items: center;
    min-width: 2.6em;
    height: 2.6em;
    padding: 0 0.6em;
    border-radius: var(--radius-pill);
    color: var(--color-black);
    font-weight: 700;
    text-decoration: none;
    transition: background-color 0.2s var(--ease-out), color 0.2s var(--ease-out);
}

.pagination__page:hover[b-xqc8noax9e],
.pagination__step:hover[b-xqc8noax9e] {
    background: var(--color-surface-alt);
    color: var(--color-black);
}

.pagination__page--current[b-xqc8noax9e] {
    background: var(--color-brand);
    color: #fff;
}

.pagination__gap[b-xqc8noax9e] {
    color: var(--color-faint);
}

.pagination__step[b-xqc8noax9e]  .icon {
    width: 1.2em;
    height: 1.2em;
}
/* /Components/Shop/Price.razor.rz.scp.css */
.price[b-tmqhm7yls5] {
    display: flex;
    flex-direction: column;
    line-height: 1.1;
}

.price__was[b-tmqhm7yls5] {
    color: var(--color-muted);
    font-size: 0.55em;
    font-weight: 400;
}

.price__now[b-tmqhm7yls5] {
    font-weight: 700;
    white-space: nowrap;
}

.price__now--sale[b-tmqhm7yls5] {
    color: var(--color-brand);
}

.price__from[b-tmqhm7yls5] {
    font-size: 0.6em;
    font-weight: 400;
}
/* /Components/Shop/ProductCard.razor.rz.scp.css */
/* as on the staging site: name 15 px bold, description 12 px Univers, price 20 px, DETAIL 11 px */

.product-card[b-qvd6jefi0c] {
    position: relative;
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 0.875rem;
    border: 1px solid transparent;
    border-radius: 4px;
    color: var(--color-black);
}

/* the hover's border and shadow are a layer that fades in (opacity): an animated shadow would be
   redrawn on every frame of the fade */
.product-card[b-qvd6jefi0c]::before {
    content: "";
    position: absolute;
    inset: -1px;
    z-index: 2;
    border: 1px solid #e8e8e5;
    border-radius: inherit;
    box-shadow: 0 12px 28px -10px rgb(0 0 0 / 0.14);
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.35s var(--ease-out);
}

.product-card:hover[b-qvd6jefi0c]::before {
    opacity: 1;
}

/* the name's link covers the whole card */
.product-card__link[b-qvd6jefi0c] {
    color: inherit;
    text-decoration: none;
    transition: color 0.2s var(--ease-out);
}

.product-card__link[b-qvd6jefi0c]::after {
    content: "";
    position: absolute;
    inset: 0;
}

.product-card__link:focus-visible[b-qvd6jefi0c] {
    outline: none;
}

.product-card:has(.product-card__link:focus-visible)[b-qvd6jefi0c] {
    outline: 2px solid var(--color-brand);
    outline-offset: 2px;
}

.product-card:hover .product-card__link[b-qvd6jefi0c] {
    color: var(--color-brand);
}

.product-card__badges[b-qvd6jefi0c] {
    display: flex;
    align-items: flex-start;
    gap: 0.4rem;
    min-height: 1.35rem;
    font-size: 0.75rem;
}

.product-card__discount[b-qvd6jefi0c] {
    margin-left: auto;
    padding: 0.25em 0.65em;
    background: var(--color-sale);
    color: #fff;
    font-size: var(--fs-tiny);
    font-weight: 700;
    letter-spacing: 0.02em;
    line-height: 1.3;
}

/* every card's picture gets the same 8:5 box; tall pictures shrink to fit instead of growing it */
.product-card__photo[b-qvd6jefi0c] {
    position: relative;
    aspect-ratio: 8 / 5;
    margin: 0.25rem 0 0.9rem;
    overflow: hidden;
}

.product-card__photo[b-qvd6jefi0c]  .product-photo {
    position: absolute;
    inset: 0;
    transition: transform 0.6s var(--ease-out);
}

.product-card:hover .product-card__photo[b-qvd6jefi0c]  .product-photo {
    transform: scale(1.05);
}

.product-card__name[b-qvd6jefi0c] {
    margin: 0 0 0.2rem;
    font-size: var(--fs-card-name);
    font-weight: 700;
    line-height: 1.3;
}

.product-card__subtitle[b-qvd6jefi0c] {
    display: -webkit-box;
    margin: 0;
    overflow: hidden;
    color: var(--color-muted);
    font-family: var(--font-body);
    font-size: var(--fs-card-text);
    line-height: 1.45;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.product-card__bottom[b-qvd6jefi0c] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 0.75rem;
    margin-top: auto;
    padding-top: 0.75rem;
}

.product-card__bottom[b-qvd6jefi0c]  .availability {
    display: block;
    margin-bottom: 0.3rem;
}

.product-card[b-qvd6jefi0c]  .product-card__price {
    font-size: var(--fs-price);
}

.product-card__button[b-qvd6jefi0c] {
    padding: 0.75em 1.35em;
    font-size: var(--fs-tiny);
}

.product-card:hover .product-card__button[b-qvd6jefi0c] {
    background: var(--color-brand-dark);
}

.product-card__button--detail[b-qvd6jefi0c]  .icon {
    display: none;
    width: 1.15rem;
    height: 1.15rem;
}

/* phones: two cards a row; DETAIL turns into a round arrow so that "1 299,- €" fits beside it */
@media (max-width: 29.99em) {
    .product-card[b-qvd6jefi0c] {
        padding: 0.5rem;
    }

    .product-card__bottom[b-qvd6jefi0c] {
        gap: 0.5rem;
    }

    .product-card:not(.product-card--carousel)[b-qvd6jefi0c]  .product-card__price {
        font-size: 1.125rem;
    }

    .product-card__button--detail[b-qvd6jefi0c] {
        flex: none;
        width: 2.25rem;
        height: 2.25rem;
        padding: 0;
    }

    .product-card__detail[b-qvd6jefi0c] {
        display: none;
    }

    .product-card__button--detail[b-qvd6jefi0c]  .icon {
        display: block;
    }
}

/* a real button above the card's link */
.product-card__add[b-qvd6jefi0c] {
    position: relative;
    z-index: 1;
    margin: 0;
}

/* home carousel: the button on the left, the price on the right */
.product-card--carousel[b-qvd6jefi0c] {
    container-type: inline-size;
}

.product-card--carousel .product-card__bottom[b-qvd6jefi0c] {
    align-items: center;
}

.product-card--carousel[b-qvd6jefi0c]  .product-card__price {
    align-items: flex-end;
}

/* a card too narrow for both on one row (phones two a row, tablets four): the price above a button as
   wide as the card */
@container (max-width: 14.5rem) {
    .product-card--carousel .product-card__bottom[b-qvd6jefi0c] {
        flex-direction: column-reverse;
        align-items: stretch;
        gap: 0.6rem;
    }

    .product-card--carousel[b-qvd6jefi0c]  .product-card__price {
        align-items: flex-start;
    }

    .product-card--carousel .product-card__add[b-qvd6jefi0c],
    .product-card--carousel .product-card__button[b-qvd6jefi0c] {
        width: 100%;
    }

    .product-card--carousel .product-card__button[b-qvd6jefi0c] {
        padding-inline: 0.5em;
        text-align: center;
    }
}
/* /Components/Shop/ProductGrid.razor.rz.scp.css */
.product-grid[b-mhu0gxfl33] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.25rem clamp(0.5rem, 1.5vw, 1.5rem);
    margin: 0;
    padding: 0;
    list-style: none;
}

/* the design draws a thin line under every row of cards */
.product-grid__item[b-mhu0gxfl33] {
    padding-bottom: 1.25rem;
    border-bottom: 1px solid var(--color-line);
}

@media (min-width: 48em) {
    .product-grid[b-mhu0gxfl33] {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (min-width: 75em) {
    .product-grid[b-mhu0gxfl33] {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}
/* /Components/Shop/ProductPhoto.razor.rz.scp.css */
.product-photo[b-f9r795xkoi] {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

/* no picture yet: a grey box with a faint picture sign */
.product-photo--missing[b-f9r795xkoi] {
    background: var(--color-surface-alt) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23c4c4bf' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3.5' y='5' width='17' height='14' rx='2'/%3E%3Ccircle cx='9' cy='10' r='1.6'/%3E%3Cpath d='m4 17 5-4.5 3.5 3 3-2.5L20 17'/%3E%3C/svg%3E") center / 2.75rem no-repeat;
    border-radius: var(--radius);
}
/* /Components/Shop/ReviewCard.razor.rz.scp.css */
.review[b-cjc3904ejb] {
    display: flex;
    flex-direction: column;
    gap: 0.7rem;
    height: 100%;
    padding: 1.2rem 1.25rem 1.35rem;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 1px 3px rgb(0 0 0 / 0.06), 0 8px 24px -8px rgb(0 0 0 / 0.14);
    transition: transform 0.35s var(--ease-out), box-shadow 0.35s var(--ease-out);
}

.review:hover[b-cjc3904ejb] {
    box-shadow: 0 1px 3px rgb(0 0 0 / 0.06), 0 16px 32px -10px rgb(0 0 0 / 0.2);
    transform: translateY(-3px);
}

.review__head[b-cjc3904ejb] {
    display: flex;
    align-items: center;
    gap: 0.7rem;
}

.review__avatar[b-cjc3904ejb] {
    display: grid;
    flex: none;
    place-items: center;
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 50%;
    color: #fff;
    font-size: 1.05rem;
    font-weight: 700;
    object-fit: cover;
}

.review__avatar--0[b-cjc3904ejb] { background: #f37a1f; }
.review__avatar--1[b-cjc3904ejb] { background: #5b8c2a; }
.review__avatar--2[b-cjc3904ejb] { background: #3f7cc0; }
.review__avatar--3[b-cjc3904ejb] { background: #8e5bb5; }
.review__avatar--4[b-cjc3904ejb] { background: #c0453a; }
.review__avatar--5[b-cjc3904ejb] { background: #2f8f8a; }

.review__who[b-cjc3904ejb] {
    min-width: 0;
}

.review__name[b-cjc3904ejb] {
    margin: 0;
    overflow: hidden;
    font-size: 0.875rem;
    font-weight: 700;
    line-height: 1.3;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.review__name a[b-cjc3904ejb] {
    color: inherit;
    text-decoration: none;
}

.review__name a:hover[b-cjc3904ejb] {
    color: var(--color-brand);
}

.review__date[b-cjc3904ejb] {
    margin: 0;
    color: var(--color-muted);
    font-size: 0.75rem;
}

.review__source-link[b-cjc3904ejb] {
    display: inline-flex;
    margin-left: auto;
    align-self: flex-start;
}

.review[b-cjc3904ejb]  .review__source {
    flex: none;
    width: 1.25rem;
    height: 1.25rem;
}

.review__head[b-cjc3904ejb] >  .review__source {
    margin-left: auto;
    align-self: flex-start;
}

.review[b-cjc3904ejb]  .review__stars {
    font-size: 1.05rem;
}

.review__text[b-cjc3904ejb] {
    display: -webkit-box;
    margin: 0;
    overflow: hidden;
    color: var(--color-ink-soft);
    font-family: var(--font-body);
    font-size: 0.875rem;
    line-height: 1.55;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 6;
}
/* /Components/Shop/SearchForm.razor.rz.scp.css */
.search-form[b-q5bg3ueiwg] {
    display: flex;
    gap: 0.75rem;
    max-width: 36rem;
}

.search-form input[b-q5bg3ueiwg] {
    flex: 1;
    min-width: 0;
    height: 2.5rem;
    padding: 0 1.1rem;
    border: 1px solid #b5b5b5;
    border-radius: var(--radius-pill);
    font: inherit;
    font-size: 0.9375rem;
}

.search-form input:focus[b-q5bg3ueiwg] {
    outline: none;
    border-color: var(--color-brand);
    box-shadow: var(--focus-ring);
}

.search-form .pill[b-q5bg3ueiwg] {
    padding-inline: 1.5em;
    font-size: 0.8125rem;
}
/* /Components/Shop/SpecialDays.razor.rz.scp.css */
.special-days[b-i8ln288ckc] {
    max-width: 22rem;
    margin-top: 1rem;
    padding: 0.75rem 0.9rem;
    border-radius: 6px;
    background: #fff4ea;
    font-size: 0.875rem;
}

.special-days__title[b-i8ln288ckc] {
    margin: 0 0 0.35rem;
    color: #b8470f;             /* the dark orange, a little darker on this ground */
    font-weight: 700;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

.special-days__list[b-i8ln288ckc] {
    display: grid;
    gap: 0.25rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.special-days__list li[b-i8ln288ckc] {
    display: flex;
    flex-wrap: wrap;
    gap: 0 0.75rem;
}

.special-days__dates[b-i8ln288ckc] {
    font-weight: 700;
    white-space: nowrap;
}
/* /Components/Shop/Stars.razor.rz.scp.css */
.stars[b-ljfqjhcus8] {
    position: relative;
    display: inline-flex;
    vertical-align: middle;
    line-height: 0;
}

.stars__row[b-ljfqjhcus8] {
    display: inline-flex;
    gap: 0.08em;
}

.stars svg[b-ljfqjhcus8] {
    width: 1em;
    height: 1em;
    fill: currentColor;
}

.stars__row--empty[b-ljfqjhcus8] {
    color: #dcdcd8;
}

/* the filled row on top, cut off at the rating */
.stars__row--full[b-ljfqjhcus8] {
    position: absolute;
    inset: 0;
    color: #f6b400;
    clip-path: inset(0 calc(100% - var(--rating) * 20%) 0 0);
}
/* /Components/Shop/SystemBadge.razor.rz.scp.css */
/* drawn like the STIHL marks: an italic system name in a battery outline, "SYSTEM" underneath */
.system-badge[b-unb99860or] {
    --system-color: #6b6b6b;
    display: inline-flex;
    flex-direction: column;
    align-items: flex-start;
    color: var(--system-color);
    font-style: italic;
    font-weight: 700;
    line-height: 1;
}

.system-badge__name[b-unb99860or] {
    position: relative;
    padding: 0.08em 0.9em 0.08em 0.3em;
    border: 0.13em solid currentColor;
    border-radius: 0.15em;
    font-size: 1.05em;
    letter-spacing: 0.03em;
}

/* the battery's plus pole */
.system-badge__name[b-unb99860or]::after {
    content: "";
    position: absolute;
    top: 50%;
    right: -0.3em;
    width: 0.18em;
    height: 0.5em;
    background: currentColor;
    transform: translateY(-50%);
}

.system-badge__word[b-unb99860or] {
    margin-top: 0.12em;
    font-size: 0.55em;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.system-badge--ak[b-unb99860or] {
    --system-color: #f2a900;
}

.system-badge--as[b-unb99860or] {
    --system-color: #8db52e;
}

.system-badge--ap[b-unb99860or] {
    --system-color: #7d7d7d;
}

.system-badge--ai[b-unb99860or] {
    --system-color: #3f7cc0;
}
/* /Components/Shop/TextPage.razor.rz.scp.css */
.text-page[b-bsk4ifrgy0] {
    padding: clamp(1.75rem, 3.5vw, 3.5rem) 0 clamp(3rem, 5vw, 5rem);
}

.text-page__layout[b-bsk4ifrgy0] {
    display: grid;
    gap: 2rem clamp(2.5rem, 5vw, 5.5rem);
}

/* the aside stands beside the text on wide screens only */
.text-page__aside[b-bsk4ifrgy0] {
    display: none;
}

.text-page__body[b-bsk4ifrgy0] {
    width: 100%;
    max-width: 52rem;
    margin-inline: auto;
    font-family: var(--font-body);
    font-size: 1rem;
    line-height: 1.7;
}

/* chapters: a thin line above each, a clear heading */
.text-page__body[b-bsk4ifrgy0]  h2 {
    margin: 2.75rem 0 1rem;
    padding-top: 1.75rem;
    border-top: 1px solid var(--color-line);
    font-family: var(--font-text);
    font-size: clamp(1.25rem, 1.8vw, 1.625rem);
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1.25;
    text-transform: none;
}

.text-page__body[b-bsk4ifrgy0]  h2:first-of-type {
    margin-top: 0;
    padding-top: 0;
    border-top: 0;
}

.text-page__body[b-bsk4ifrgy0]  h3 {
    margin: 1.75rem 0 0.6rem;
    font-family: var(--font-text);
    font-size: 1.125rem;
    font-weight: 700;
    letter-spacing: 0;
    text-transform: none;
}

.text-page__body[b-bsk4ifrgy0]  :is(p, li) {
    color: var(--color-ink-soft);
}

.text-page__body[b-bsk4ifrgy0]  li::marker {
    color: var(--color-brand);
}

@media (min-width: 64em) {
    .text-page__layout--aside[b-bsk4ifrgy0] {
        grid-template-columns: minmax(14rem, 18rem) minmax(0, 52rem);
        justify-content: center;
    }

    .text-page__layout--aside .text-page__body[b-bsk4ifrgy0] {
        margin: 0;
    }

    .text-page__aside[b-bsk4ifrgy0] {
        display: block;
        position: sticky;
        top: calc(var(--header-height) + 1.5rem);
        align-self: start;
    }
}
