/* /Components/Layout/MainLayout.razor.rz.scp.css */
#blazor-error-ui[b-woehqgfcnd] {
    background: #1b1714;
    color: #f6efe2;
    bottom: 0;
    box-shadow: 0 -2px 12px rgba(0, 0, 0, 0.3);
    box-sizing: border-box;
    display: none;
    left: 0;
    padding: 0.8rem 1.4rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

    #blazor-error-ui .reload[b-woehqgfcnd] {
        color: #e0772e;
        margin-left: 0.5rem;
    }

    #blazor-error-ui .dismiss[b-woehqgfcnd] {
        cursor: pointer;
        position: absolute;
        right: 0.9rem;
        top: 0.7rem;
    }
/* /Components/Storefront/B2bOrders.razor.rz.scp.css */
/* „Importovat do objednávky…" in the order's header sits beside the export at its natural width. */
.od-import[b-degpy7qx64] { flex: none; white-space: nowrap; }

@media (max-width: 760px) {
    .od-import[b-degpy7qx64] { align-self: flex-start; }   /* the stacked head must not stretch it full-width */
}
/* /Components/Storefront/OrderExportMenu.razor.rz.scp.css */
/* EXPORT ONE ORDER — the button in the order's header and its small format dialog. Theme tokens only. */
.oe[b-ozz8x8dd0c] { position: relative; flex: none; }
.oe-pop[b-ozz8x8dd0c] {
    position: absolute;
    right: 0;
    top: calc(100% + 6px);
    z-index: 40;
    width: min(360px, calc(100vw - 32px));
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    gap: .7rem;
    padding: .9rem 1rem;
    background: var(--card);
    color: var(--ink);
    border: 1px solid var(--line);
    border-radius: var(--radius-sm, 10px);
    box-shadow: var(--shadow);
}
.oe-formats[b-ozz8x8dd0c] { border: 0; margin: 0; padding: 0; display: flex; flex-direction: column; gap: .4rem; }
.oe-formats legend[b-ozz8x8dd0c] { font-size: .78rem; text-transform: uppercase; letter-spacing: .06em; color: var(--muted); margin-bottom: .25rem; }
.oe-format[b-ozz8x8dd0c] { display: flex; gap: .55rem; align-items: flex-start; cursor: pointer; }
.oe-format input[b-ozz8x8dd0c] { margin-top: .25rem; accent-color: var(--accent); }
.oe-format span[b-ozz8x8dd0c] { display: flex; flex-direction: column; }
.oe-format small[b-ozz8x8dd0c] { color: var(--muted); font-size: .78rem; }
.oe-options[b-ozz8x8dd0c] { display: flex; flex-direction: column; gap: .45rem; font-size: .9rem; }
.oe-options label[b-ozz8x8dd0c] { display: flex; justify-content: space-between; align-items: center; gap: .6rem; }
.oe-options label.oe-check[b-ozz8x8dd0c] { justify-content: flex-start; }
.oe-options select[b-ozz8x8dd0c] {
    font: inherit;
    max-width: 62%;
    padding: .2rem .4rem;
    border: 1px solid var(--line);
    border-radius: 6px;
    background: var(--card);
    color: var(--ink);
}
.oe-actions[b-ozz8x8dd0c] { display: flex; gap: .5rem; justify-content: flex-end; flex-wrap: wrap; }
.oe-actions .btn[b-ozz8x8dd0c] { padding: 9px 16px; }
.oe-note[b-ozz8x8dd0c] { margin: 0; font-size: .85rem; color: var(--warn); }

@media (max-width: 760px) {
    .oe[b-ozz8x8dd0c] { align-self: flex-start; }
    .oe-pop[b-ozz8x8dd0c] { right: auto; left: 0; }
    /* THE PHONE: a thumb's controls, and a 16px select so the page does not zoom when it opens */
    .oe-options select[b-ozz8x8dd0c] { font-size: 16px; min-height: 40px; }
    .oe-format[b-ozz8x8dd0c] { min-height: 40px; }
    .oe-actions .btn[b-ozz8x8dd0c] { min-height: 44px; }
}
/* /Components/Storefront/OrderImport.razor.rz.scp.css */
/* IMPORT INTO AN ORDER — the review panel above the order's lines. Theme tokens only (all four themes define them). */
.oi[b-g5jfmr0ttm] {
    margin: .2rem 0 1.2rem;
    padding: 1rem 1.1rem;
    background: var(--card);
    color: var(--ink);
    border: 1px solid var(--line);
    border-radius: var(--radius-sm, 10px);
    box-shadow: var(--shadow-sm);
    display: flex;
    flex-direction: column;
    gap: .9rem;
}
.oi-head[b-g5jfmr0ttm] { display: flex; align-items: center; justify-content: space-between; gap: .8rem; flex-wrap: wrap; }
.oi-head h3[b-g5jfmr0ttm] { margin: 0; font-size: 1.05rem; }

.oi-source[b-g5jfmr0ttm] { display: flex; flex-direction: column; gap: .6rem; align-items: flex-start; }
.oi-tabs[b-g5jfmr0ttm] { display: inline-flex; border: 1px solid var(--line); border-radius: 999px; overflow: hidden; }
.oi-tab[b-g5jfmr0ttm] { font: inherit; border: 0; background: transparent; color: var(--muted); padding: .4rem .95rem; cursor: pointer; }
.oi-tab.on[b-g5jfmr0ttm] { background: color-mix(in srgb, var(--accent) 14%, var(--card)); color: var(--ink); font-weight: 600; }
.oi-file[b-g5jfmr0ttm] { display: flex; flex-direction: column; gap: .35rem; font-size: .88rem; color: var(--muted); }
.oi-paste[b-g5jfmr0ttm] {
    width: 100%;
    box-sizing: border-box;
    font: .85rem/1.4 ui-monospace, "Cascadia Mono", Consolas, monospace;
    padding: .5rem .6rem;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--bg-2);
    color: var(--ink);
    resize: vertical;
}
.oi-options[b-g5jfmr0ttm] { font-size: .88rem; color: var(--muted); }
.oi-options summary[b-g5jfmr0ttm] { cursor: pointer; }
.oi-options label[b-g5jfmr0ttm] { display: inline-flex; align-items: center; gap: .4rem; margin: .45rem 1rem 0 0; color: var(--ink); }
.oi select[b-g5jfmr0ttm] { font: inherit; padding: .2rem .4rem; border: 1px solid var(--line); border-radius: 6px; background: var(--card); color: var(--ink); }

.oi-error[b-g5jfmr0ttm] { margin: 0; color: var(--danger); font-weight: 600; }
.oi-warn[b-g5jfmr0ttm] { margin: 0; color: var(--warn); font-weight: 600; }
.oi-hint[b-g5jfmr0ttm] { margin: 0; color: var(--muted); font-size: .88rem; }
.oi-muted[b-g5jfmr0ttm] { color: var(--muted); font-size: .82rem; }
.oi-check[b-g5jfmr0ttm] { display: inline-flex; align-items: center; gap: .35rem; cursor: pointer; }
/* A wide table scrolls inside its own box. Nothing inside it may be absolutely positioned: an absolute element whose
   containing block lies outside the box escapes its clipping — hidden header labels once widened a phone's whole page
   to the table's width. The label-less header cells are named with aria-label instead. */
.oi-scroll[b-g5jfmr0ttm] { overflow-x: auto; max-width: 100%; }

/* The column map: one column of the file per column here — its header, its role, two samples. */
.oi-map[b-g5jfmr0ttm] { display: flex; flex-direction: column; gap: .5rem; }
.oi-map-head[b-g5jfmr0ttm] { display: flex; align-items: center; gap: .5rem 1.2rem; flex-wrap: wrap; font-size: .9rem; }
.oi-what[b-g5jfmr0ttm] { color: var(--muted); }
.oi-what b[b-g5jfmr0ttm] { color: var(--ink); }
.oi-cols[b-g5jfmr0ttm] { border-collapse: collapse; font-size: .82rem; }
.oi-cols th[b-g5jfmr0ttm], .oi-cols td[b-g5jfmr0ttm] {
    border: 1px solid var(--line);
    padding: .3rem .45rem;
    text-align: left;
    vertical-align: top;
    min-width: 7rem;
    max-width: 14rem;
}
.oi-cols th[b-g5jfmr0ttm] { background: color-mix(in srgb, var(--ink) 5%, var(--card)); font-weight: 600; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.oi-cols td.oi-guess select[b-g5jfmr0ttm] { border-style: dashed; }
.oi-sample[b-g5jfmr0ttm] { color: var(--muted); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

/* The review: every line with its confidence mark, under ONE bar — the tally, the filter and the one „Přidat". The
   bar heads the list rather than trailing it: the order below has its own sticky foot, and two sticky feet collide. */
.oi-review[b-g5jfmr0ttm] { display: flex; flex-direction: column; gap: .5rem; }
.oi-bar[b-g5jfmr0ttm] {
    display: flex;
    flex-direction: column;
    gap: .45rem;
    padding: .5rem 0;
    background: var(--card);
    border-bottom: 1px solid var(--line);
}
.oi-summary[b-g5jfmr0ttm] { display: flex; flex-wrap: wrap; gap: .35rem .5rem; align-items: center; }
.oi-filter[b-g5jfmr0ttm] { margin-left: auto; font-size: .85rem; }
.oi-apply[b-g5jfmr0ttm] { display: flex; align-items: center; gap: .4rem .8rem; flex-wrap: wrap; }
@media (min-width: 761px) {
    /* On a wide screen the orders panel scrolls on its own, so the bar can stay in view over a long list. No z-index:
       the list scrolls under it, and the bar in turn passes under the order's own sticky foot. */
    .oi-bar[b-g5jfmr0ttm] { position: sticky; top: 0; }
}
.oi-mark[b-g5jfmr0ttm] {
    display: inline-block;
    padding: .08rem .5rem;
    border-radius: 999px;
    font-size: .75rem;
    font-weight: 600;
    white-space: nowrap;
    border: 1px solid transparent;
}
.oi-mark.ok[b-g5jfmr0ttm] { background: color-mix(in srgb, var(--green) 14%, var(--card)); color: var(--green); border-color: color-mix(in srgb, var(--green) 35%, transparent); }
.oi-mark.hint[b-g5jfmr0ttm] { background: color-mix(in srgb, var(--ochre) 18%, var(--card)); color: var(--ink); border-color: color-mix(in srgb, var(--ochre) 50%, transparent); }
.oi-mark.open[b-g5jfmr0ttm] { background: color-mix(in srgb, var(--warn) 14%, var(--card)); color: var(--warn); border-color: color-mix(in srgb, var(--warn) 40%, transparent); }
.oi-mark.bad[b-g5jfmr0ttm] { background: color-mix(in srgb, var(--danger) 12%, var(--card)); color: var(--danger); border-color: color-mix(in srgb, var(--danger) 35%, transparent); }

.oi-lines[b-g5jfmr0ttm] { width: 100%; border-collapse: collapse; font-size: .86rem; }
.oi-lines th[b-g5jfmr0ttm] {
    text-align: left;
    font-size: .72rem;
    text-transform: uppercase;
    letter-spacing: .05em;
    color: var(--muted);
    font-weight: 600;
    padding: .3rem .4rem;
    border-bottom: 2px solid var(--line);
    white-space: nowrap;
}
.oi-lines td[b-g5jfmr0ttm] { padding: .35rem .4rem; border-bottom: 1px solid var(--line); vertical-align: top; }
.oi-line.open[b-g5jfmr0ttm] { background: color-mix(in srgb, var(--warn) 6%, transparent); }
.oi-inc[b-g5jfmr0ttm] { width: 2rem; }
.oi-inc input[b-g5jfmr0ttm] { accent-color: var(--accent); }
.oi-row[b-g5jfmr0ttm] { width: 3.5rem; color: var(--muted); font-variant-numeric: tabular-nums; }
.oi-said[b-g5jfmr0ttm] { max-width: 16rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--muted); }
.oi-qty[b-g5jfmr0ttm] { width: 5.5rem; }
.oi-qty input[b-g5jfmr0ttm] { width: 5rem; font: inherit; padding: .15rem .3rem; border: 1px solid var(--line); border-radius: 6px; background: var(--card); color: var(--ink); }
.oi-product[b-g5jfmr0ttm] { min-width: 14rem; }
.oi-code[b-g5jfmr0ttm] { font-variant-numeric: tabular-nums; font-weight: 600; margin-right: .4rem; }
.oi-product small[b-g5jfmr0ttm] { display: block; color: var(--muted); }
.oi-kind small[b-g5jfmr0ttm] { display: block; color: var(--muted); font-size: .76rem; margin-top: .15rem; }
.oi-bad-text[b-g5jfmr0ttm] { color: var(--danger) !important; }
.oi-act[b-g5jfmr0ttm] { width: 1%; white-space: nowrap; }
.oi-find[b-g5jfmr0ttm] { padding: 4px 10px; font-size: .8rem; }

/* The picker, opened under its line: the candidates, then the table's own search. */
.oi-picker-row td[b-g5jfmr0ttm] { background: color-mix(in srgb, var(--accent) 5%, var(--card)); }
.oi-picker[b-g5jfmr0ttm] { display: flex; flex-direction: column; gap: .3rem; align-items: stretch; max-width: 46rem; }
.oi-picker p[b-g5jfmr0ttm] { margin: .1rem 0; }
.oi-search[b-g5jfmr0ttm] { font: inherit; padding: .35rem .55rem; border: 1px solid var(--line); border-radius: 8px; background: var(--card); color: var(--ink); }
.oi-pick[b-g5jfmr0ttm] {
    font: inherit;
    text-align: left;
    background: var(--card);
    color: var(--ink);
    border: 1px solid var(--line);
    border-radius: 8px;
    padding: .35rem .6rem;
    cursor: pointer;
}
.oi-pick:hover[b-g5jfmr0ttm], .oi-pick:focus-visible[b-g5jfmr0ttm] { border-color: var(--accent); }
.oi-pick small[b-g5jfmr0ttm] { color: var(--muted); margin-left: .4rem; }
.oi-picker .btn[b-g5jfmr0ttm] { align-self: flex-start; padding: 6px 14px; }

.oi-result[b-g5jfmr0ttm] { display: flex; flex-direction: column; gap: .6rem; align-items: flex-start; }
.oi-result-main[b-g5jfmr0ttm] { margin: 0; font-weight: 600; }
.oi-notes[b-g5jfmr0ttm] { margin: 0; padding-left: 1.2rem; font-size: .88rem; color: var(--muted); }
.oi-actions[b-g5jfmr0ttm] { display: flex; gap: .5rem; flex-wrap: wrap; }

@media (max-width: 760px) {
    .oi[b-g5jfmr0ttm] { padding: .8rem; }
    .oi-row[b-g5jfmr0ttm] { display: none; }
    .oi-filter[b-g5jfmr0ttm] { margin-left: 0; }
    /* THE PHONE (26 Sep 2026): the review's lines are CARDS — what the file said and its quantity on top, the article it
       matched across the whole width, the verdict and „Najít…" under it. As a table the matched article — the one
       thing to check — sat off the right edge of the screen. Fields at 16px, so the page never zooms when typing. */
    .oi input:not([type="checkbox"])[b-g5jfmr0ttm], .oi select[b-g5jfmr0ttm], .oi-paste[b-g5jfmr0ttm], .oi-search[b-g5jfmr0ttm] { font-size: 16px; }
    .oi-scroll:has(> .oi-lines)[b-g5jfmr0ttm] { overflow-x: visible; }
    .oi-lines[b-g5jfmr0ttm], .oi-lines tbody[b-g5jfmr0ttm] { display: block; }
    .oi-lines thead[b-g5jfmr0ttm] { display: none; }
    .oi-lines tr.oi-line[b-g5jfmr0ttm] {
        display: grid;
        grid-template-columns: 2rem minmax(0, 1fr) auto;
        grid-template-areas: "inc said qty" "inc product product" "inc kind act";
        align-items: center;
        gap: .35rem .5rem;
        padding: .6rem .1rem;
        border-bottom: 1px solid var(--line);
    }
    .oi-lines tr.oi-line td[b-g5jfmr0ttm] { display: block; padding: 0; border: 0; }
    .oi-lines tr.oi-line td.oi-row[b-g5jfmr0ttm] { display: none; }
    .oi-lines td.oi-inc[b-g5jfmr0ttm] { grid-area: inc; align-self: start; padding-top: .55rem; }
    .oi-lines td.oi-inc input[b-g5jfmr0ttm] { width: 20px; height: 20px; }
    .oi-lines td.oi-said[b-g5jfmr0ttm] { grid-area: said; max-width: none; }
    .oi-lines td.oi-qty[b-g5jfmr0ttm] { grid-area: qty; width: auto; }
    .oi-lines td.oi-qty input[b-g5jfmr0ttm] { width: 5.5rem; min-height: 40px; text-align: center; }
    .oi-lines td.oi-product[b-g5jfmr0ttm] { grid-area: product; min-width: 0; }
    .oi-lines td.oi-kind[b-g5jfmr0ttm] { grid-area: kind; }
    .oi-lines td.oi-act[b-g5jfmr0ttm] { grid-area: act; width: auto; }
    .oi-find[b-g5jfmr0ttm] { min-height: 40px; }
    .oi-lines tr.oi-picker-row[b-g5jfmr0ttm], .oi-lines tr.oi-picker-row td[b-g5jfmr0ttm] { display: block; padding: .5rem 0; }
    .oi-pick[b-g5jfmr0ttm] { min-height: 44px; }
    .oi-tab[b-g5jfmr0ttm] { min-height: 40px; }
}
/* /Components/Storefront/PriceListExportButton.razor.rz.scp.css */
/* The price-list button keeps its natural width wherever the host places it. */
.pl-export[b-1j419bjeqi] { flex: none; white-space: nowrap; }
