/* /Components/Account/Shared/AuthLayout.razor.rz.scp.css */
.auth-shell[b-a46o5qmrz1] {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(420px, 1fr);
    min-height: 100vh;
    background: var(--z-1000);
}

/* ============ Side (operator OS pane) ============ */
.auth-side[b-a46o5qmrz1] {
    position: relative;
    background: var(--z-975);
    border-right: 1px solid var(--z-850);
    color: var(--z-100);
    overflow: hidden;
    padding: 56px;
    display: flex;
}

.auth-side[b-a46o5qmrz1]::before {
    content: '';
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 20% 20%, var(--amber-tint-10), transparent 45%),
        radial-gradient(circle at 80% 90%, rgba(56, 189, 248, .08), transparent 50%);
    pointer-events: none;
}

.auth-side-inner[b-a46o5qmrz1] {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 100%;
    max-width: 520px;
}

.brand-mark[b-a46o5qmrz1] {
    color: var(--z-50);
    display: flex;
    align-items: center;
    gap: 14px;
}

.auth-mark[b-a46o5qmrz1] {
    width: 52px;
    height: 52px;
    flex-shrink: 0;
    display: block;
}

.auth-wordmark[b-a46o5qmrz1] {
    font-family: var(--font-display);
    font-size: 38px;
    font-weight: 400;
    letter-spacing: .01em;
    line-height: 1;
    color: var(--z-50);
}

.auth-brand-mark[b-a46o5qmrz1] {
    width: 26px;
    height: 26px;
    flex-shrink: 0;
    display: block;
}

.auth-side-label[b-a46o5qmrz1] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.auth-side-eye[b-a46o5qmrz1] {
    font-family: var(--font-mono);
    font-size: 11px;
    font-weight: 500;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: var(--z-500);
}

.auth-side-sig[b-a46o5qmrz1] {
    font-family: var(--font-sans);
    font-size: 22px;
    font-weight: 600;
    letter-spacing: -.012em;
    color: var(--z-50);
}

.auth-side-sig em[b-a46o5qmrz1] {
    font-style: normal;
    font-weight: 500;
    color: var(--z-500);
}

.auth-side-tag[b-a46o5qmrz1] {
    font-family: var(--font-mono);
    font-size: 10px;
    font-weight: 500;
    letter-spacing: .16em;
    text-transform: uppercase;
    color: var(--amber);
}

/* ============ Main (form pane) ============ */
.auth-main[b-a46o5qmrz1] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 48px 32px;
    position: relative;
    background: var(--z-1000);
}

.auth-card[b-a46o5qmrz1] {
    position: relative;
    width: 100%;
    max-width: 440px;
    background: var(--z-925);
    border: 1px solid var(--z-850);
    border-radius: var(--r-lg);
    padding: 40px 36px !important;
    box-shadow: var(--shadow-lg);
}

.auth-brand[b-a46o5qmrz1] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 24px;
    color: var(--z-50);
}

.auth-brand-name[b-a46o5qmrz1] {
    font-family: var(--font-display);
    font-size: 20px;
    font-weight: 400;
    letter-spacing: .01em;
    color: var(--z-50);
}

.auth-foot[b-a46o5qmrz1] {
    margin-top: 20px;
    font-size: 11px;
    color: var(--z-600);
}

[b-a46o5qmrz1] .mud-typography.mud-typography-h5 {
    font-family: var(--font-sans);
    font-size: 22px;
    font-weight: 600;
    letter-spacing: -.018em;
    color: var(--z-50) !important;
}

@media (max-width: 900px) {
    .auth-shell[b-a46o5qmrz1] {
        grid-template-columns: 1fr;
    }
    .auth-side[b-a46o5qmrz1] {
        display: none;
    }
}
/* /Components/Costing/ChargeWaterfall.razor.rz.scp.css */
.wf[b-3w9qf0enlf] {
    display: flex;
    flex-direction: column;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 12px;
    overflow: hidden;
}

.wf-head[b-3w9qf0enlf] {
    display: flex;
    align-items: baseline;
    gap: 10px;
    padding: 14px 16px;
    border-bottom: 1px solid var(--border);
}

.wf-title[b-3w9qf0enlf] {
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: var(--z-300);
}

.wf-sub[b-3w9qf0enlf] {
    font-size: 12px;
    color: var(--z-500);
}

.wf-total[b-3w9qf0enlf] {
    margin-left: auto;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
}

.wf-row[b-3w9qf0enlf] {
    border-bottom: 1px solid var(--border);
}

.wf-row:last-child[b-3w9qf0enlf] {
    border-bottom: none;
}

.wf-row-main[b-3w9qf0enlf] {
    display: grid;
    grid-template-columns: 18px minmax(160px, 1.2fr) minmax(80px, 1fr) auto 64px 130px;
    align-items: center;
    gap: 10px;
    width: 100%;
    padding: 10px 16px;
    background: transparent;
    border: none;
    cursor: pointer;
    text-align: left;
    font: inherit;
    color: inherit;
    transition: background-color .12s;
}

.wf-row-main:hover[b-3w9qf0enlf] {
    background: color-mix(in srgb, var(--border) 35%, transparent);
}

[b-3w9qf0enlf] .wf-chev {
    width: 14px;
    height: 14px;
    color: var(--z-500);
}

.wf-name[b-3w9qf0enlf] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    font-weight: 600;
    color: var(--z-200);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.wf-bar-track[b-3w9qf0enlf] {
    height: 8px;
    border-radius: 4px;
    background: color-mix(in srgb, var(--border) 55%, transparent);
    overflow: hidden;
}

.wf-bar[b-3w9qf0enlf] {
    display: block;
    height: 100%;
    border-radius: 4px;
    background: var(--rose);
    opacity: .75;
}

.wf-bar-pos[b-3w9qf0enlf] {
    background: var(--emerald);
}

.wf-delta[b-3w9qf0enlf] {
    font-size: 11px;
    color: var(--z-500);
    white-space: nowrap;
    justify-self: end;
}

.wf-pct[b-3w9qf0enlf] {
    font-size: 12px;
    color: var(--z-400);
    font-variant-numeric: tabular-nums;
    text-align: right;
}

.wf-amount[b-3w9qf0enlf] {
    font-size: 13px;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
    text-align: right;
    white-space: nowrap;
}

.wf-detail[b-3w9qf0enlf] {
    display: flex;
    flex-direction: column;
    padding: 4px 16px 10px 44px;
    gap: 2px;
}

.wf-line[b-3w9qf0enlf] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 4px 0;
    font-size: 12.5px;
    color: var(--z-400);
}

.wf-type[b-3w9qf0enlf] {
    display: inline-block;
    min-width: 64px;
    font-size: 11px;
    color: var(--z-500);
    cursor: help;
    border-bottom: 1px dotted color-mix(in srgb, var(--z-500) 55%, transparent);
}

.wf-label[b-3w9qf0enlf] {
    flex: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.wf-line-amount[b-3w9qf0enlf] {
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}

.pos[b-3w9qf0enlf] { color: var(--emerald); }
.neg[b-3w9qf0enlf] { color: var(--rose); }
.mono[b-3w9qf0enlf] { font-variant-numeric: tabular-nums; }

@media (max-width: 720px) {
    .wf-row-main[b-3w9qf0enlf] {
        grid-template-columns: 18px 1fr 72px 110px;
    }

    .wf-bar-track[b-3w9qf0enlf], .wf-delta[b-3w9qf0enlf] {
        display: none;
    }
}

/* --- De qué ventas vienen las bonificaciones (apertura por período de origen) --- */
.wf-origin[b-3w9qf0enlf] {
    border: 1px solid var(--border);
    border-radius: 6px;
    padding: 0.5rem 0.65rem;
    margin-bottom: 0.6rem;
    background: var(--surface);
}

.wf-origin-title[b-3w9qf0enlf] {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--z-400);
    text-transform: uppercase;
    letter-spacing: 0.03em;
    margin-bottom: 0.4rem;
    display: flex;
    align-items: center;
    gap: 0.35rem;
}

.wf-origin-help[b-3w9qf0enlf] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    border: 1px solid var(--border);
    font-size: 0.6rem;
    color: var(--z-400);
    cursor: help;
}

.wf-origin-row[b-3w9qf0enlf] {
    display: grid;
    grid-template-columns: 1fr auto auto;
    align-items: baseline;
    gap: 0.6rem;
    padding: 0.22rem 0;
    font-size: 0.82rem;
}

/* La fila que responde la pregunta del cliente: se destaca sobre el resto. */
.wf-origin-row.is-prior[b-3w9qf0enlf] {
    border-top: 1px solid var(--border);
    border-bottom: 1px solid var(--border);
    margin: 0.2rem 0;
    padding: 0.35rem 0;
    font-weight: 600;
}

.wf-origin-row.is-slice[b-3w9qf0enlf] {
    padding-left: 1rem;
    font-size: 0.78rem;
    color: var(--z-400);
}

.wf-origin-name[b-3w9qf0enlf] {
    display: flex;
    align-items: baseline;
    gap: 0.4rem;
    flex-wrap: wrap;
}

.wf-origin-share[b-3w9qf0enlf] {
    font-size: 0.72rem;
    font-weight: 500;
    color: var(--emerald);
}

.wf-origin-count[b-3w9qf0enlf] {
    font-size: 0.72rem;
    color: var(--z-400);
    font-variant-numeric: tabular-nums;
}

.wf-origin-count[b-3w9qf0enlf]::after {
    content: " líneas";
}

.wf-origin-amount[b-3w9qf0enlf] {
    text-align: right;
    min-width: 6.5rem;
}

@media (max-width: 640px) {
    .wf-origin-count[b-3w9qf0enlf] {
        display: none;
    }
}
/* /Components/Costing/CostVariationBanner.razor.rz.scp.css */
.preview[b-azy6trvww4] {
    display: inline-block;
    margin-left: .35rem;
    font-variant-numeric: tabular-nums;
    font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
    font-size: .8rem;
    opacity: .8;
}
/* /Components/Costing/PeriodReturnsTable.razor.rz.scp.css */
.ret-head[b-8kric1teo3] {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    margin: 34px 0 16px;
}

.ret-head h3[b-8kric1teo3] {
    margin: 0 0 4px;
    font-size: 1rem;
}

.ret-sub[b-8kric1teo3] {
    margin: 0;
    max-width: 62ch;
    font-size: .8rem;
    color: var(--z-500);
}

.ret-filters[b-8kric1teo3] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 16px;
    min-width: 320px;
}

.ret-kpis[b-8kric1teo3] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
    gap: 14px;
    padding: 16px 18px;
    margin-bottom: 16px;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: var(--r-lg);
}

.kpi .k[b-8kric1teo3] {
    display: block;
    margin-bottom: 4px;
    font-size: .7rem;
    color: var(--z-500);
}

.kpi .v[b-8kric1teo3] {
    display: block;
    font-size: 1.05rem;
}

.tbl-wrap[b-8kric1teo3] {
    padding: 4px;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: var(--r-lg);
    overflow-x: auto;
}

.ret-empty[b-8kric1teo3] {
    padding: 28px;
    text-align: center;
    color: var(--z-500);
}

.sub[b-8kric1teo3] {
    display: block;
    margin-top: 2px;
    font-size: .68rem;
    color: var(--z-500);
}

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

.badge[b-8kric1teo3] {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 999px;
    border: 1px solid currentColor;
    font-size: .68rem;
    font-weight: 600;
    white-space: nowrap;
}

.t-ok[b-8kric1teo3] {
    color: var(--emerald);
}

.t-bad[b-8kric1teo3] {
    color: var(--rose);
}

.t-warn[b-8kric1teo3] {
    color: var(--amber);
}

.t-info[b-8kric1teo3] {
    color: var(--sky);
}
/* /Components/Costing/PeriodSalesTable.razor.rz.scp.css */
.sales-head[b-soz2wofhkq] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin: 28px 0 14px;
}

.sales-head h3[b-soz2wofhkq] {
    margin: 0;
    font-size: 1rem;
}

.sales-filters[b-soz2wofhkq] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 16px;
}

.tbl-wrap[b-soz2wofhkq] {
    padding: 4px;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: var(--r-lg);
    overflow-x: auto;
}

.neg[b-soz2wofhkq] {
    color: var(--rose);
}

.sub[b-soz2wofhkq] {
    display: block;
    margin-top: 2px;
    font-size: .68rem;
    color: var(--z-500);
}

.ellipsis[b-soz2wofhkq] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.badge[b-soz2wofhkq] {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 999px;
    font-size: .68rem;
    font-weight: 600;
    white-space: nowrap;
    border: 1px solid currentColor;
}

.b-lot[b-soz2wofhkq] {
    color: var(--emerald);
}

.b-mixed[b-soz2wofhkq] {
    color: var(--amber);
}

.b-fallback[b-soz2wofhkq] {
    color: var(--sky);
}

.b-none[b-soz2wofhkq] {
    color: var(--rose);
}
/* /Components/Costing/StaleCloseBanner.razor.rz.scp.css */
.stale[b-j3j48mt7oq] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.stale-note[b-j3j48mt7oq] {
    margin-top: .35rem;
    font-size: .78rem;
    opacity: .8;
}

.mono[b-j3j48mt7oq] {
    font-variant-numeric: tabular-nums;
    font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
}
/* /Components/Costing/VatSettlementCard.razor.rz.scp.css */
.vat-card[b-z60qy535fr] {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: 16px;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 12px;
}

.vat-head[b-z60qy535fr] {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 4px;
}

.vat-title[b-z60qy535fr] {
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: var(--z-300);
}

[b-z60qy535fr] .vat-info {
    width: 14px;
    height: 14px;
    color: var(--z-500);
    cursor: help;
}

.vat-line[b-z60qy535fr] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    font-size: 13px;
    color: var(--z-300);
}

.vat-line span:first-child[b-z60qy535fr] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

.vat-debit[b-z60qy535fr] {
    font-weight: 600;
    color: var(--z-100);
}

.vat-block-label[b-z60qy535fr] {
    margin-top: 6px;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: var(--z-500);
}

.vat-credit[b-z60qy535fr] {
    padding-left: 10px;
}

.vat-total[b-z60qy535fr] {
    margin-top: 4px;
    padding-top: 8px;
    border-top: 1px dashed var(--border);
    font-weight: 600;
}

.vat-payable[b-z60qy535fr] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 8px;
    padding: 10px 12px;
    border-radius: 9px;
    background: color-mix(in srgb, var(--amber) 12%, transparent);
    border: 1px solid color-mix(in srgb, var(--amber) 45%, transparent);
    font-size: 14px;
    font-weight: 700;
    color: var(--z-50);
}

.pos[b-z60qy535fr] { color: var(--emerald); }
.mono[b-z60qy535fr] { font-variant-numeric: tabular-nums; white-space: nowrap; }
/* /Components/Dialogs/CampaignRenewalConfigDialog.razor.rz.scp.css */
.dlg-body[b-z4l98xiv4k] {
    display: flex;
    flex-direction: column;
    gap: 14px;
    min-width: 380px;
    padding: 4px 0;
}

.dlg-lede[b-z4l98xiv4k] {
    margin: 0;
    color: var(--z-300);
    font-size: 13.5px;
    line-height: 1.55;
}

.dlg-meta[b-z4l98xiv4k] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 14px;
    background: var(--z-900);
    border: 1px solid var(--z-850);
    border-radius: var(--r-md);
}

.dlg-meta-label[b-z4l98xiv4k] {
    font-size: 12.5px;
    color: var(--z-400);
    font-weight: 500;
}

.dlg-meta-value[b-z4l98xiv4k] {
    font-weight: 500;
    color: var(--z-50);
}

.dlg-error[b-z4l98xiv4k] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    background: var(--rose-tint);
    border: 1px solid rgba(244, 63, 94, .25);
    border-radius: var(--r-md);
    color: var(--rose);
    font-size: 12.5px;
    line-height: 1.4;
}

.dlg-section[b-z4l98xiv4k] {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding-top: 6px;
    border-top: 1px solid var(--z-850);
}

.dlg-section:first-of-type[b-z4l98xiv4k] {
    padding-top: 0;
    border-top: none;
}

.dlg-section-title[b-z4l98xiv4k] {
    margin: 0;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: var(--z-400);
    font-weight: 600;
}

.dlg-note[b-z4l98xiv4k] {
    margin: 0;
    color: var(--z-400);
    font-size: 12.5px;
    line-height: 1.5;
}
/* /Components/Dialogs/SaleCostTraceDialog.razor.rz.scp.css */
.trace[b-t98febeqtn] {
    min-width: 480px;
    max-width: 640px;
    padding: 4px 2px;
}

.t-eyebrow[b-t98febeqtn] {
    font-size: .68rem;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: var(--z-500);
    margin-bottom: 6px;
}

.t-sep[b-t98febeqtn] {
    margin-top: 26px;
}

.t-sale[b-t98febeqtn] {
    padding: 16px 18px;
    background: var(--surface-2);
    border: 1px solid var(--border);
    border-radius: var(--r-lg);
}

.t-title[b-t98febeqtn] {
    font-size: 1rem;
    margin-bottom: 14px;
}

.t-grid[b-t98febeqtn] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 12px 20px;
}

.t-grid .k[b-t98febeqtn] {
    display: block;
    margin-bottom: 2px;
    font-size: .7rem;
    color: var(--z-500);
}

.t-grid .v[b-t98febeqtn] {
    display: block;
    font-size: .9rem;
}

.t-lot[b-t98febeqtn] {
    padding: 14px 16px;
    margin-top: 10px;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: var(--r-md);
}

.t-lot-head[b-t98febeqtn] {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 6px;
    padding-bottom: 10px;
    margin-bottom: 12px;
    border-bottom: 1px solid var(--border);
}

.t-units[b-t98febeqtn] {
    margin-left: auto;
    font-size: .84rem;
}

.pos[b-t98febeqtn] {
    color: var(--emerald);
}

.neg[b-t98febeqtn] {
    color: var(--rose);
}

@media (max-width: 640px) {
    .trace[b-t98febeqtn] {
        min-width: 0;
    }
}
/* /Components/Layout/MainLayout.razor.rz.scp.css */
/* ============================================================
   Operator OS shell — drawer + main + topbar
   ============================================================ */

.shell[b-579nmlt3to] {
    display: grid;
    grid-template-columns: var(--drawer-w) 1fr;
    min-height: 100vh;
}

.main[b-579nmlt3to] {
    grid-column: 2;
    min-width: 0;
    display: flex;
    flex-direction: column;
}

/* ============================================================
   Topbar
   ============================================================ */
.topbar[b-579nmlt3to] {
    height: var(--topbar-h);
    border-bottom: 1px solid var(--z-875);
    background: rgba(11, 11, 14, .72);
    backdrop-filter: blur(14px) saturate(180%);
    -webkit-backdrop-filter: blur(14px) saturate(180%);
    position: sticky;
    top: 0;
    z-index: 50;
    display: flex;
    align-items: center;
    padding: 0 24px;
    gap: 16px;
}

[data-theme="light"] .topbar[b-579nmlt3to] {
    background: rgba(251, 251, 248, .78);
}

.crumb[b-579nmlt3to] {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 13px;
    color: var(--z-400);
    min-width: 0;
}

.c-org[b-579nmlt3to] {
    font-weight: 500;
    color: var(--z-100);
    max-width: 200px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.c-current[b-579nmlt3to] {
    color: var(--z-100);
    font-weight: 500;
}

.c-sep[b-579nmlt3to] {
    color: var(--z-700);
}

.spacer[b-579nmlt3to] {
    flex: 1;
}

/* env pill — match design, with dev/prod variants */
.env-pill[b-579nmlt3to] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 10px 4px 8px;
    background: var(--z-925);
    border: 1px solid var(--z-850);
    border-radius: 999px;
    font-size: 11px;
    font-family: var(--font-mono);
    color: var(--z-400);
    text-transform: uppercase;
    letter-spacing: .08em;
}

.env-dot[b-579nmlt3to] {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--emerald);
    box-shadow: 0 0 8px var(--emerald);
    animation: env-pulse-b-579nmlt3to 2.4s var(--ease) infinite;
}

.env-dot-dev[b-579nmlt3to] {
    background: var(--rose);
    box-shadow: 0 0 8px var(--rose);
}

.env-dot-prod[b-579nmlt3to] {
    background: var(--emerald);
    box-shadow: 0 0 8px var(--emerald);
}

@keyframes env-pulse-b-579nmlt3to {
    0%, 100% { opacity: 1; transform: scale(1); }
    50% { opacity: .55; transform: scale(.92); }
}

/* user pill — match design */
.user-pill[b-579nmlt3to] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 3px 10px 3px 3px;
    border-radius: 999px;
    border: 1px solid var(--z-850);
    background: var(--z-925);
    cursor: pointer;
    transition: border-color var(--t-fast) var(--ease);
    text-decoration: none;
    color: var(--z-200);
}

.user-pill:hover[b-579nmlt3to] {
    border-color: var(--z-750);
}

.user-pill .user-name[b-579nmlt3to] {
    font-size: 12.5px;
    color: var(--z-200);
    font-weight: 500;
    padding-right: 4px;
    max-width: 140px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* ============================================================
   Mobile nav — hamburger toggle + scrim (off-canvas drawer)
   Hidden on desktop; the drawer lives in the grid as a column.
   ============================================================ */
.nav-toggle[b-579nmlt3to] {
    display: none;
    width: 34px;
    height: 34px;
    margin-right: 2px;
    border-radius: var(--r-md);
    border: 1px solid transparent;
    background: transparent;
    color: var(--z-300);
    place-items: center;
    transition: background var(--t-fast) var(--ease), color var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease);
}

.nav-toggle:hover[b-579nmlt3to] {
    background: var(--z-875);
    color: var(--z-100);
    border-color: var(--z-850);
}

.scrim[b-579nmlt3to] {
    display: none;
    position: fixed;
    inset: 0;
    z-index: 90;
    background: rgba(0, 0, 0, .55);
    backdrop-filter: blur(2px);
    -webkit-backdrop-filter: blur(2px);
    opacity: 0;
    transition: opacity var(--t-med) var(--ease);
}

/* ============================================================
   Content area
   ============================================================ */
.content[b-579nmlt3to] {
    padding: 28px 32px 96px;
    width: 100%;
    max-width: var(--content-max);
    margin: 0 auto;
}

@media (max-width: 960px) {
    /* Drawer becomes fixed/off-canvas; the shell collapses to a single
       full-width column so main no longer reserves the drawer track. */
    .shell[b-579nmlt3to] {
        display: block;
    }
    .content[b-579nmlt3to] {
        padding: 20px 16px 64px;
    }
    .user-name[b-579nmlt3to],
    .env-pill[b-579nmlt3to] {
        display: none;
    }
    .nav-toggle[b-579nmlt3to] {
        display: grid;
    }
    .shell.drawer-open .scrim[b-579nmlt3to] {
        display: block;
        opacity: 1;
    }
}

@media (max-width: 560px) {
    .content[b-579nmlt3to] {
        padding: 16px 12px 56px;
    }
    .topbar[b-579nmlt3to] {
        padding: 0 14px;
        gap: 10px;
    }
    .user-pill[b-579nmlt3to] {
        padding: 3px;
    }
}

/* ============================================================
   Not-authorized fallback
   ============================================================ */
.noauth[b-579nmlt3to] {
    min-height: 100vh;
    display: grid;
    place-items: center;
    padding: 40px 20px;
    background: var(--z-1000);
}

.noauth-card[b-579nmlt3to] {
    max-width: 420px;
    background: var(--z-925);
    border: 1px solid var(--z-850);
    border-radius: var(--r-lg);
    padding: 36px 32px;
    text-align: center;
    box-shadow: var(--shadow-md);
    display: flex;
    flex-direction: column;
    gap: 14px;
    align-items: center;
}

.noauth-card .eyebrow[b-579nmlt3to] {
    font-family: var(--font-mono);
    font-size: 11px;
    font-weight: 500;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: var(--z-500);
}

.noauth-title[b-579nmlt3to] {
    font-family: var(--font-sans);
    font-size: 22px;
    font-weight: 600;
    letter-spacing: -.02em;
    margin: 0;
    color: var(--z-50);
}

.noauth-copy[b-579nmlt3to] {
    color: var(--z-400);
    font-size: 13.5px;
    line-height: 1.55;
    margin: 0 0 8px;
    max-width: 38ch;
}
/* /Components/Layout/NavMenu.razor.rz.scp.css */
/* ============================================================
   NavMenu — Operator OS drawer
   ============================================================
   Most base classes (.drawer, .brand, .nav-item, .org-switch, etc.)
   come from operator-os.components.css. This file only adds
   things that depend on Razor structure, plus the OrganizationSwitcher
   popover specific to this drawer.
   ============================================================ */

.drawer[b-strceo3ueb] {
    grid-column: 1;
    height: 100vh;
    position: sticky;
    top: 0;
    background: var(--z-975);
    border-right: 1px solid var(--z-850);
    display: flex;
    flex-direction: column;
    overflow-y: auto;
    overflow-x: hidden;
}

.nav-label-admin[b-strceo3ueb] {
    color: var(--amber-tint-30);
}

/* Renewbify brand lockup — yellow mark (theme-agnostic PNG) + themeable
   wordmark so it stays legible in both dark and light themes. */
.brand-mark[b-strceo3ueb] {
    width: 30px;
    height: 30px;
    flex-shrink: 0;
    display: block;
}

.brand-text .b1[b-strceo3ueb] {
    font-family: var(--font-display);
    font-size: 19px;
    font-weight: 400;
    letter-spacing: .01em;
    line-height: 1;
}

/* ============================================================
   Mobile — off-canvas drawer.
   The toggle state (.drawer-open) lives on .shell in MainLayout;
   scoped CSS still matches because only the trailing .drawer is
   scoped to this component, while .shell/.drawer-open are ancestors.
   ============================================================ */
@media (max-width: 960px) {
    .drawer[b-strceo3ueb] {
        position: fixed;
        top: 0;
        left: 0;
        bottom: 0;
        height: 100dvh;
        width: min(84vw, 290px);
        z-index: 100;
        transform: translateX(-100%);
        transition: transform var(--t-med) var(--ease);
        box-shadow: var(--shadow-lg);
    }

    .shell.drawer-open .drawer[b-strceo3ueb] {
        transform: translateX(0);
    }
}

/* NavLink (Blazor's <NavLink>) — collapse to .nav-item active behaviour */
.nav-item[b-strceo3ueb] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 7px 12px;
    border-radius: var(--r-sm);
    color: var(--z-400);
    font-size: 13px;
    font-weight: 500;
    letter-spacing: -.005em;
    transition: background var(--t-fast) var(--ease), color var(--t-fast) var(--ease);
    position: relative;
    text-decoration: none;
}

.nav-item:hover[b-strceo3ueb] {
    background: var(--z-875);
    color: var(--z-200);
}

.nav-item.active[b-strceo3ueb] {
    background: var(--z-850);
    color: var(--z-50);
}

.nav-item.active[b-strceo3ueb]::before {
    content: '';
    position: absolute;
    left: -8px;
    top: 50%;
    transform: translateY(-50%);
    width: 2px;
    height: 16px;
    background: var(--amber);
    border-radius: 0 2px 2px 0;
    box-shadow: 0 0 8px var(--amber);
}

.nav-icon[b-strceo3ueb] {
    width: 16px;
    height: 16px;
    color: currentColor;
    opacity: .85;
    flex-shrink: 0;
}

.nav-item.active .nav-icon[b-strceo3ueb] {
    color: var(--amber);
    opacity: 1;
}

.nav-ext[b-strceo3ueb] {
    margin-left: auto;
    width: 12px;
    height: 12px;
    opacity: .6;
}

[data-theme="light"] .nav-item.active[b-strceo3ueb] {
    background: #EDE8DA;
    color: var(--z-50);
}

[data-theme="light"] .nav-item:hover[b-strceo3ueb] {
    background: #F0EFEA;
}

/* ============================================================
   OrganizationSwitcher (details/summary popover inside drawer)
   ============================================================ */
.org-switch-wrap[b-strceo3ueb] {
    margin: 12px 12px 4px;
    position: relative;
}

.org-switch-wrap > .org-switch[b-strceo3ueb] {
    margin: 0;
    width: 100%;
    list-style: none;
    cursor: pointer;
}

.org-switch-wrap > .org-switch[b-strceo3ueb]::-webkit-details-marker {
    display: none;
}

.org-switch-wrap[open] > .org-switch .o-chev[b-strceo3ueb] {
    transform: rotate(180deg);
}

.o-chev[b-strceo3ueb] {
    transition: transform var(--t-fast) var(--ease);
}

.org-switch-static[b-strceo3ueb] {
    cursor: default;
}

.org-menu[b-strceo3ueb] {
    position: absolute;
    top: calc(100% + 6px);
    left: 0;
    right: 0;
    /* El drawer (232px) tiene overflow-x:hidden; un min-width mayor al ancho útil
       hacía que el popover se cortara a la derecha. left/right:0 ya lo dimensiona. */
    min-width: 0;
    background: var(--z-925);
    border: 1px solid var(--z-800);
    border-radius: var(--r-md);
    box-shadow: var(--shadow-md);
    padding: 8px;
    z-index: 200;
    animation: org-pop-b-strceo3ueb .14s var(--ease);
}

@keyframes org-pop-b-strceo3ueb {
    from { opacity: 0; transform: translateY(-4px); }
    to { opacity: 1; transform: translateY(0); }
}

.org-menu-head[b-strceo3ueb] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 4px 8px 8px;
    border-bottom: 1px solid var(--z-875);
}

.o-count[b-strceo3ueb] {
    font-size: 10.5px;
    color: var(--z-500);
}

.org-list[b-strceo3ueb] {
    list-style: none;
    margin: 6px 0 0;
    padding: 0;
    max-height: 280px;
    overflow-y: auto;
}

.org-list li + li[b-strceo3ueb] { margin-top: 1px; }

.org-form[b-strceo3ueb] { margin: 0; padding: 0; }

.org-item[b-strceo3ueb] {
    display: flex;
    align-items: center;
    gap: 9px;
    width: 100%;
    background: transparent;
    border: 0;
    border-radius: var(--r-sm);
    padding: 7px 10px;
    cursor: pointer;
    text-align: left;
    font-family: var(--font-sans);
    font-size: 12.5px;
    color: var(--z-200);
    transition: background var(--t-fast) var(--ease), color var(--t-fast) var(--ease);
}

.org-item:hover[b-strceo3ueb] {
    background: var(--z-875);
    color: var(--z-50);
}

.org-item.is-current[b-strceo3ueb] {
    background: var(--amber-tint-10);
    color: var(--amber-bright);
    font-weight: 500;
}

.org-dot[b-strceo3ueb] {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--z-600);
    flex-shrink: 0;
}

.org-item.is-current .org-dot[b-strceo3ueb] {
    background: var(--amber);
    box-shadow: 0 0 6px var(--amber-tint-30);
}

.org-name[b-strceo3ueb] {
    flex: 1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.org-check[b-strceo3ueb] {
    width: 12px;
    height: 12px;
    color: var(--amber-bright);
    flex-shrink: 0;
}

.org-menu-foot[b-strceo3ueb] {
    padding: 8px 10px 4px;
    margin-top: 6px;
    border-top: 1px solid var(--z-875);
}

.org-menu-foot a[b-strceo3ueb] {
    font-size: 12px;
    color: var(--z-400);
    text-decoration: none;
    font-weight: 500;
    letter-spacing: -.005em;
}

.org-menu-foot a:hover[b-strceo3ueb] {
    color: var(--z-100);
}
/* /Components/Pages/ActivityPage.razor.rz.scp.css */
.act-subject[b-d1l8q89lr2] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    max-width: 280px;
}

.act-title[b-d1l8q89lr2] {
    color: var(--z-50);
    font-weight: 500;
    overflow-wrap: anywhere;
}

.act-title-link[b-d1l8q89lr2] {
    text-decoration: none;
    border-bottom: 1px solid transparent;
    transition: border-color .15s ease;
}

.act-title-link:hover[b-d1l8q89lr2] {
    border-bottom-color: var(--z-400);
}

.act-item[b-d1l8q89lr2] {
    color: var(--z-500);
    font-size: 11.5px;
}

.act-summary[b-d1l8q89lr2] {
    color: var(--z-300);
    font-size: 12.5px;
    line-height: 1.45;
    display: inline-block;
    max-width: 420px;
}
/* /Components/Pages/Admin/Organizations.razor.rz.scp.css */
.orgs-grid[b-0b4xe93p2c] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 360px;
    gap: 16px;
    align-items: start;
}

@media (max-width: 1100px) {
    .orgs-grid[b-0b4xe93p2c] {
        grid-template-columns: 1fr;
    }
}

.orgs-list[b-0b4xe93p2c] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    min-width: 0;
}

.sec-meta[b-0b4xe93p2c] {
    font-size: 11px;
    color: var(--z-600);
    letter-spacing: .04em;
}

.row-sub[b-0b4xe93p2c] {
    display: block;
    font-size: 11.5px;
    color: var(--z-500);
    margin-top: 2px;
    max-width: 320px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.slug-tag[b-0b4xe93p2c] {
    font-size: 11px;
    background: var(--z-875);
    padding: 3px 8px;
    border-radius: var(--r-xs);
    color: var(--z-300);
    border: 1px solid var(--z-850);
}

.is-inactive td[b-0b4xe93p2c] {
    color: var(--z-500);
    opacity: .8;
}

.orgs-form[b-0b4xe93p2c] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    position: sticky;
    top: 76px;
}

.form-banner[b-0b4xe93p2c] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    border-radius: var(--r-md);
    font-size: 12.5px;
    line-height: 1.4;
}

.form-banner.err[b-0b4xe93p2c] {
    background: var(--rose-tint);
    border: 1px solid rgba(244, 63, 94, .25);
    color: var(--rose);
}

.form-banner.ok[b-0b4xe93p2c] {
    background: var(--emerald-tint);
    border: 1px solid rgba(16, 185, 129, .25);
    color: var(--emerald);
}

[b-0b4xe93p2c] .validation-message {
    color: var(--rose);
    font-size: 11.5px;
    margin-top: 2px;
    display: block;
}
/* /Components/Pages/Admin/Users.razor.rz.scp.css */
.users-grid[b-vplc8divyv] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 360px;
    gap: 16px;
    align-items: start;
}

@media (max-width: 1100px) {
    .users-grid[b-vplc8divyv] {
        grid-template-columns: 1fr;
    }
}

.users-list[b-vplc8divyv] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    min-width: 0;
}

.sec-meta[b-vplc8divyv] {
    font-size: 11px;
    color: var(--z-600);
    letter-spacing: .04em;
}

.row-sub[b-vplc8divyv] {
    display: block;
    font-size: 11px;
    color: var(--z-500);
    margin-top: 2px;
}

.row-actions[b-vplc8divyv] {
    display: inline-flex;
    gap: 6px;
    align-items: center;
}

.users-form[b-vplc8divyv] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    position: sticky;
    top: 76px;
}

.user-pwd[b-vplc8divyv] {
    display: block;
    margin-top: 8px;
    padding: 8px 10px;
    border-radius: var(--r-md);
    background: var(--z-925);
    border: 1px dashed var(--emerald);
    color: var(--z-50);
    font-size: 12.5px;
    user-select: all;
    word-break: break-all;
}

.form-banner[b-vplc8divyv] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 14px;
    border-radius: var(--r-md);
    font-size: 12.5px;
    line-height: 1.4;
}

.form-banner.err[b-vplc8divyv] {
    background: var(--rose-tint);
    border: 1px solid rgba(244, 63, 94, .25);
    color: var(--rose);
}

.form-banner.ok[b-vplc8divyv] {
    background: var(--emerald-tint);
    border: 1px solid rgba(16, 185, 129, .25);
    color: var(--emerald);
}

[b-vplc8divyv] .validation-message {
    color: var(--rose);
    font-size: 11.5px;
    margin-top: 2px;
    display: block;
}
/* /Components/Pages/CatalogCompetition/CatalogCompetitionPage.razor.rz.scp.css */
.tbl-wrap[b-1e2qo65ogx] {
    margin-top: 16px;
}

.cc-pub[b-1e2qo65ogx] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}

.cc-pub-title-link[b-1e2qo65ogx],
.cc-pub-title[b-1e2qo65ogx] {
    font-weight: 500;
    color: var(--z-50);
    text-decoration: none;
    overflow: hidden;
    text-overflow: ellipsis;
}

.cc-pub-title-link:hover[b-1e2qo65ogx] {
    text-decoration: underline;
}

.cc-pub-id[b-1e2qo65ogx] {
    font-size: 12px;
    color: var(--z-500);
}

.cc-state[b-1e2qo65ogx] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.cc-reason-hint[b-1e2qo65ogx] {
    font-size: 12px;
    color: var(--z-500);
    cursor: help;
    text-decoration: underline dotted;
}

.cc-ptw[b-1e2qo65ogx] {
    display: flex;
    align-items: baseline;
    gap: 8px;
}

.cc-price[b-1e2qo65ogx] {
    font-weight: 600;
    color: var(--z-50);
}

.cc-gap[b-1e2qo65ogx] {
    font-size: 12px;
    color: #B42318;
}

.cc-checked[b-1e2qo65ogx] {
    font-size: 13px;
    color: var(--z-300);
}

.cc-muted[b-1e2qo65ogx] {
    color: var(--z-500);
}
/* /Components/Pages/CatalogCompetition/MatchPriceToWinDialog.razor.rz.scp.css */
.mpw-prices[b-m8vgkvn3pa] {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: 12px;
    background: var(--z-950, #f2f2ee);
    border-radius: 8px;
}

.mpw-price-row[b-m8vgkvn3pa] {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
}

.mpw-label[b-m8vgkvn3pa] {
    font-size: 13px;
    color: var(--z-300);
}

.mpw-val[b-m8vgkvn3pa] {
    font-weight: 600;
    color: var(--z-50);
}

.mpw-target[b-m8vgkvn3pa] {
    color: #047857;
}

.mpw-hint[b-m8vgkvn3pa] {
    font-size: 12px;
    color: var(--z-500);
}
/* /Components/Pages/Costing/BillingPeriodReport.razor.rz.scp.css */
.head-actions[b-2pno0902m7] {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

[b-2pno0902m7] .cross-link {
    font-size: 13px;
    white-space: nowrap;
}

/* Switch neto/bruto: segmentado chico, neto por defecto. */
.mode-row[b-2pno0902m7] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    margin-bottom: 12px;
}

.mode-toggle[b-2pno0902m7] {
    display: inline-flex;
    padding: 3px;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 10px;
    gap: 2px;
}

.mode-toggle button[b-2pno0902m7] {
    appearance: none;
    border: none;
    background: transparent;
    padding: 5px 14px;
    border-radius: 7px;
    font-size: 12.5px;
    font-weight: 600;
    color: var(--z-400);
    cursor: pointer;
    transition: background .12s ease, color .12s ease;
}

.mode-toggle button:hover[b-2pno0902m7] {
    color: var(--z-100);
}

.mode-toggle button.is-active[b-2pno0902m7] {
    background: color-mix(in srgb, var(--emerald) 14%, var(--surface));
    color: var(--emerald);
}

[b-2pno0902m7] .mode-info {
    width: 15px;
    height: 15px;
    color: var(--z-500);
    cursor: help;
}

/* Cadena hero: Ventas → Rentabilidad MELI → IVA → Ingreso real. */
.hero-chain[b-2pno0902m7] {
    display: flex;
    align-items: stretch;
    gap: 8px;
    margin-bottom: 18px;
}

.hero-tile[b-2pno0902m7] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 5px;
    padding: 18px;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 14px;
    min-width: 0;
}

.hero-final[b-2pno0902m7] {
    border-color: var(--emerald);
    background: color-mix(in srgb, var(--emerald) 6%, var(--surface));
}

.hero-label[b-2pno0902m7] {
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: var(--z-500);
}

.hero-value[b-2pno0902m7] {
    font-size: clamp(17px, 1.7vw, 24px);
    font-weight: 800;
    color: var(--z-50);
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
    line-height: 1.15;
}

.hero-sub[b-2pno0902m7] {
    font-size: 11.5px;
    color: var(--z-500);
}

[b-2pno0902m7] .hero-arrow {
    width: 18px;
    height: 18px;
    align-self: center;
    flex-shrink: 0;
    color: var(--z-500);
}

/* Grilla principal: cascada a la izquierda, IVA/negocio a la derecha. */
.report-grid[b-2pno0902m7] {
    display: grid;
    grid-template-columns: minmax(0, 1.6fr) minmax(300px, 1fr);
    gap: 16px;
    align-items: start;
}

/* Período sin historial de ventas: solo la factura, a ancho completo. */
.report-grid.charges-only[b-2pno0902m7] {
    grid-template-columns: 1fr;
}

.report-main[b-2pno0902m7],
.report-side[b-2pno0902m7] {
    display: flex;
    flex-direction: column;
    gap: 16px;
    min-width: 0;
}

.side-card[b-2pno0902m7] {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: 16px;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 12px;
}

.side-title[b-2pno0902m7] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: var(--z-300);
    margin-bottom: 2px;
}

[b-2pno0902m7] .side-info {
    width: 14px;
    height: 14px;
    color: var(--z-500);
    cursor: help;
}

.side-line[b-2pno0902m7] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    font-size: 13px;
    color: var(--z-300);
}

.side-line span:first-child[b-2pno0902m7] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

.side-final[b-2pno0902m7] {
    margin-top: 4px;
    padding-top: 8px;
    border-top: 1px dashed var(--border);
    font-weight: 700;
    color: var(--z-100);
}

.side-note[b-2pno0902m7] {
    font-size: 11.5px;
    color: var(--z-500);
    line-height: 1.45;
}

.side-divider[b-2pno0902m7] {
    height: 1px;
    background: var(--border);
    margin: 8px 0;
}

.business-card[b-2pno0902m7] {
    border-color: color-mix(in srgb, var(--emerald) 55%, var(--border));
}

.pos[b-2pno0902m7] { color: var(--emerald); }
.neg[b-2pno0902m7] { color: var(--rose); }
.mono[b-2pno0902m7] { font-variant-numeric: tabular-nums; white-space: nowrap; }

@media (max-width: 1100px) {
    .hero-chain[b-2pno0902m7] {
        flex-direction: column;
    }

    [b-2pno0902m7] .hero-arrow {
        transform: rotate(90deg);
        align-self: flex-start;
        margin-left: 24px;
    }

    .report-grid[b-2pno0902m7] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Pages/Costing/CostingConfig.razor.rz.scp.css */
.cfg-top[b-bkkwe6p8n9] {
    display: flex;
    gap: 16px;
    margin-bottom: 20px;
}

.cfg-h[b-bkkwe6p8n9] {
    font-size: 0.95rem;
    font-weight: 600;
    color: var(--z-100, #e6e6ee);
    margin: 8px 0 12px;
}

.prov-grid[b-bkkwe6p8n9] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 10px 18px;
}

.prov-item[b-bkkwe6p8n9] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 4px 0;
}

.prov-name[b-bkkwe6p8n9] {
    font-size: 0.88rem;
    color: var(--z-200, #c4c4d0);
}
/* /Components/Pages/Costing/ProfitSimulator.razor.rz.scp.css */
.sim-grid[b-hk6tvtl7q2] {
    display: grid;
    grid-template-columns: minmax(280px, 360px) 1fr;
    gap: 18px;
    align-items: start;
}

.sim-form[b-hk6tvtl7q2] {
    display: flex;
    flex-direction: column;
    gap: 14px;
    padding: 18px;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 12px;
}

.sim-actions[b-hk6tvtl7q2] {
    margin-top: 8px;
    padding-top: 14px;
    border-top: 1px solid var(--border);
}

.sim-result[b-hk6tvtl7q2] {
    padding: 18px 22px;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 12px;
    min-height: 220px;
}

.res-line[b-hk6tvtl7q2] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 8px 0;
    border-bottom: 1px solid var(--border);
    font-variant-numeric: tabular-nums;
    color: var(--z-300);
}

.res-line b[b-hk6tvtl7q2] { color: var(--z-50); }

.res-total[b-hk6tvtl7q2] {
    border-bottom: none;
    font-size: 1.15rem;
    padding-top: 12px;
}

.res-empty[b-hk6tvtl7q2] {
    color: var(--z-500);
    padding: 40px 0;
    text-align: center;
}

.pos[b-hk6tvtl7q2] { color: var(--emerald); }
.neg[b-hk6tvtl7q2] { color: var(--rose); }

@media (max-width: 760px) {
    .sim-grid[b-hk6tvtl7q2] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Pages/Costing/SkuCosts.razor.rz.scp.css */
.ellipsis[b-npk45fg6fx] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: var(--z-100, #e6e6ee);
}

.muted[b-npk45fg6fx] {
    color: var(--z-400, #8a8a99);
}

/* Fecha del conteo, bajo el input: sin ella el número no dice desde cuándo cuenta. */
.stock-date[b-npk45fg6fx] {
    font-size: .68rem;
    line-height: 1.2;
    margin-top: 2px;
    color: var(--z-400, #8a8a99);
    white-space: nowrap;
}

/* Stock agotado: la señal de "las próximas ventas ya no toman este costo". */
.stock-out[b-npk45fg6fx] {
    color: var(--amber, #e0a33e);
    font-weight: 600;
}
/* /Components/Pages/Dev/MeliSandbox.razor.rz.scp.css */
.dev-wrap[b-zdyf5bic5t] {
    max-width: 1080px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.dev-section header[b-zdyf5bic5t] {
    margin-bottom: 16px;
}

.dev-section-title[b-zdyf5bic5t] {
    font-family: var(--font-sans);
    font-size: 17px;
    font-weight: 600;
    letter-spacing: -.012em;
    color: var(--z-50);
    margin: 0 0 4px;
}

.dev-section-copy[b-zdyf5bic5t] {
    font-size: 13px;
    color: var(--z-400);
    line-height: 1.55;
    margin: 0;
}

.dev-section-copy code[b-zdyf5bic5t] {
    background: var(--z-875);
    padding: 1px 6px;
    border-radius: var(--r-xs);
    font-family: var(--font-mono);
    font-size: .85em;
    color: var(--z-200);
    border: 1px solid var(--z-850);
}

.dev-form[b-zdyf5bic5t] {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    align-items: flex-end;
}

.dev-form-grid[b-zdyf5bic5t] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 12px;
    align-items: flex-end;
}

.dev-actions[b-zdyf5bic5t] {
    margin-top: 14px;
    display: flex;
    justify-content: flex-end;
}

.dev-result[b-zdyf5bic5t] {
    margin-top: 16px;
    padding: 12px 16px;
    border-radius: var(--r-md);
    border: 1px solid var(--z-850);
    background: var(--z-900);
    font-size: 12.5px;
    color: var(--z-300);
}

.dev-result-success[b-zdyf5bic5t] {
    border-color: rgba(16, 185, 129, .25);
    background: var(--emerald-tint);
    color: var(--z-100);
}

.dev-result strong[b-zdyf5bic5t] {
    display: block;
    margin-bottom: 6px;
    color: var(--z-50);
}

.dev-result ul[b-zdyf5bic5t] {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 4px;
    color: var(--z-300);
}

.dev-result a[b-zdyf5bic5t] {
    color: var(--amber-bright);
    text-decoration: none;
    border-bottom: 1px solid var(--amber-tint-30);
}

.dev-result a:hover[b-zdyf5bic5t] {
    border-bottom-color: var(--amber);
}
/* /Components/Pages/DynamicPricing/DynamicPricingPage.razor.rz.scp.css */
.dp-settings[b-b6m8kwy07j] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    flex-wrap: wrap;
    padding: 16px 18px;
    margin-bottom: 18px;
    background: var(--z-900);
    border: 1px solid var(--z-800);
    border-radius: 12px;
}

.dp-settings-main[b-b6m8kwy07j] {
    display: flex;
    flex-direction: column;
    gap: 6px;
    max-width: 680px;
}

.dp-settings-text[b-b6m8kwy07j] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.dp-settings-hint[b-b6m8kwy07j] {
    font-size: 12.5px;
    color: var(--z-400);
    line-height: 1.45;
}

.dp-settings-control[b-b6m8kwy07j] {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

.dp-row-actions[b-b6m8kwy07j] {
    display: flex;
    align-items: center;
    gap: 2px;
}

.dp-exp[b-b6m8kwy07j] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.dp-exp-value[b-b6m8kwy07j] {
    font-weight: 600;
    color: var(--z-100);
    font-size: 12.5px;
}

.dp-pub[b-b6m8kwy07j] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.dp-pub-title[b-b6m8kwy07j] {
    color: var(--z-50);
    font-weight: 500;
}

.dp-pub-title-link[b-b6m8kwy07j] {
    color: var(--z-50);
    font-weight: 500;
    text-decoration: none;
    border-bottom: 1px solid transparent;
}

.dp-pub-title-link:hover[b-b6m8kwy07j] {
    border-bottom-color: var(--z-500);
}

.dp-pub-id[b-b6m8kwy07j] {
    font-size: 11px;
    color: var(--z-500);
}

.dp-price[b-b6m8kwy07j] {
    color: var(--z-100);
    font-weight: 500;
}

.dp-state[b-b6m8kwy07j] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.dp-state-price[b-b6m8kwy07j] {
    font-weight: 600;
    color: var(--amber-400, #f59e0b);
}

.dp-muted[b-b6m8kwy07j] {
    color: var(--z-500);
    font-size: 12.5px;
}

.dp-pct[b-b6m8kwy07j] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.dp-pct-value[b-b6m8kwy07j] {
    color: var(--z-100);
    font-weight: 600;
}

.dp-checked[b-b6m8kwy07j] {
    color: var(--z-500);
    font-size: 12px;
}
/* /Components/Pages/DynamicPricing/ExperienceDiagnosisDialog.razor.rz.scp.css */
.diag-loading[b-518ybcdq43] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 16px 0;
    color: var(--z-300);
    font-size: 0.875rem;
}

.diag-header[b-518ybcdq43] {
    margin-bottom: 14px;
}

.diag-title[b-518ybcdq43] {
    display: block;
    font-weight: 600;
    margin-bottom: 6px;
}

.diag-meta[b-518ybcdq43] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.diag-value[b-518ybcdq43] {
    font-weight: 600;
}

.diag-checked[b-518ybcdq43] {
    color: var(--z-300);
    font-size: 0.75rem;
}

.diag-summary[b-518ybcdq43] {
    margin: 0 0 14px;
    font-size: 0.875rem;
    line-height: 1.5;
    white-space: pre-line;
}

.diag-recommendations[b-518ybcdq43] {
    margin: 0 0 14px;
    padding: 10px 12px;
    border-radius: 8px;
    background: color-mix(in srgb, var(--accent, #d49b00) 8%, transparent);
}

.diag-rec-list[b-518ybcdq43] {
    margin: 6px 0 0;
    padding-left: 18px;
    font-size: 0.8125rem;
    line-height: 1.5;
}

.diag-empty[b-518ybcdq43] {
    color: var(--z-300);
}

.diag-problems[b-518ybcdq43] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.diag-problem[b-518ybcdq43] {
    border: 1px solid var(--z-800, #e2e2da);
    border-radius: 8px;
    padding: 12px 14px;
}

.diag-problem-head[b-518ybcdq43] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.diag-problem-title[b-518ybcdq43] {
    font-weight: 600;
    font-size: 0.875rem;
}

.diag-problem-qty[b-518ybcdq43] {
    color: var(--z-300);
    font-size: 0.75rem;
}

.diag-problem-detail[b-518ybcdq43] {
    margin-top: 4px;
    font-size: 0.8125rem;
    color: var(--z-200);
}

.diag-problem-counts[b-518ybcdq43] {
    margin-top: 4px;
    font-size: 0.75rem;
    color: var(--z-300);
}

.diag-remedy[b-518ybcdq43] {
    margin-top: 10px;
    padding: 8px 10px;
    border-radius: 6px;
    background: color-mix(in srgb, var(--accent, #d49b00) 8%, transparent);
    font-size: 0.8125rem;
    line-height: 1.45;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.diag-remedy-label[b-518ybcdq43] {
    font-size: 0.6875rem;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--accent, #d49b00);
}
/* /Components/Pages/DynamicPricing/ExperienceHistoryDialog.razor.rz.scp.css */
.hist-loading[b-mo5q9093qp] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 24px 4px;
    color: var(--z-500);
    font-size: 13px;
}

.hist-header[b-mo5q9093qp] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-bottom: 16px;
}

.hist-title[b-mo5q9093qp] {
    font-weight: 600;
    color: var(--z-50);
    font-size: 14.5px;
}

.hist-meta[b-mo5q9093qp] {
    color: var(--z-500);
    font-size: 11.5px;
}

.hist-section[b-mo5q9093qp] {
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin-bottom: 20px;
}

.hist-section-label[b-mo5q9093qp] {
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: var(--z-500);
}

.hist-note[b-mo5q9093qp] {
    font-size: 11.5px;
    color: var(--z-500);
    line-height: 1.5;
}

.hist-empty[b-mo5q9093qp] {
    color: var(--z-500);
    padding: 8px 0 16px;
}
/* /Components/Pages/DynamicPricing/MeasureProgressOverlay.razor.rz.scp.css */
.mpo-backdrop[b-sbrq1vp127] {
    position: fixed;
    inset: 0;
    background: rgba(7, 7, 10, 0.78);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    z-index: 4000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
    animation: mpo-fade-in-b-sbrq1vp127 var(--t-med, 180ms) var(--ease, ease-out);
}

.mpo-card[b-sbrq1vp127] {
    width: min(560px, 100%);
    background: var(--surface, var(--z-925));
    border: 1px solid var(--border-strong, var(--z-800));
    border-radius: var(--r-xl, 16px);
    box-shadow: var(--shadow-lg);
    padding: 28px 28px 24px;
    color: var(--text, var(--z-100));
}

.mpo-head[b-sbrq1vp127] {
    display: flex;
    gap: 16px;
    align-items: flex-start;
    margin-bottom: 22px;
}

.mpo-head-text[b-sbrq1vp127] {
    flex: 1;
    min-width: 0;
}

.mpo-title[b-sbrq1vp127] {
    font-size: 16px;
    font-weight: 600;
    color: var(--text-hi, var(--z-50));
    line-height: 1.2;
    margin-bottom: 4px;
}

.mpo-sub[b-sbrq1vp127] {
    font-size: 12.5px;
    color: var(--text-dim, var(--z-400));
    line-height: 1.45;
}

.mpo-spinner[b-sbrq1vp127] {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    border: 2.5px solid var(--amber-tint-20);
    border-top-color: var(--amber);
    animation: mpo-spin-b-sbrq1vp127 720ms linear infinite;
    flex-shrink: 0;
    margin-top: 2px;
}

.mpo-progress[b-sbrq1vp127] {
    margin-bottom: 4px;
}

.mpo-progress-row[b-sbrq1vp127] {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    margin-bottom: 8px;
    font-size: 12px;
    color: var(--text-dim, var(--z-400));
}

.mpo-step-pct[b-sbrq1vp127] {
    color: var(--text-hi, var(--z-50));
    font-weight: 600;
    font-size: 13px;
}

.mpo-bar[b-sbrq1vp127] {
    width: 100%;
    height: 6px;
    background: var(--z-850);
    border-radius: 999px;
    overflow: hidden;
}

.mpo-bar-fill[b-sbrq1vp127] {
    height: 100%;
    background: linear-gradient(90deg, var(--amber), var(--amber-bright));
    border-radius: 999px;
    transition: width var(--t-slow, 280ms) var(--ease, ease-out);
}

.mono[b-sbrq1vp127] {
    font-family: var(--font-mono, ui-monospace, monospace);
}

@keyframes mpo-spin-b-sbrq1vp127 {
    to { transform: rotate(360deg); }
}

@keyframes mpo-fade-in-b-sbrq1vp127 {
    from { opacity: 0; }
    to { opacity: 1; }
}

@media (prefers-reduced-motion: reduce) {
    .mpo-backdrop[b-sbrq1vp127] { animation: none; }
    .mpo-spinner[b-sbrq1vp127] { animation: none; border-top-color: var(--amber); }
    .mpo-bar-fill[b-sbrq1vp127] { transition: none; }
}
/* /Components/Pages/Home.razor.rz.scp.css */
/* ============================================================
   Home — operator cockpit + admin overview · Operator OS
   ============================================================ */

.kpi-grid[b-1ad0nboyal] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
    margin-bottom: 24px;
}

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

@media (max-width: 560px) {
    .kpi-grid[b-1ad0nboyal] {
        grid-template-columns: 1fr;
    }
}

/* ----- Status strip (operator only) ----- */
.status-strip[b-1ad0nboyal] {
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
    padding: 14px 18px;
    margin-bottom: 20px;
    background: var(--z-925);
    border: 1px solid var(--z-850);
    border-radius: var(--r-lg);
}

.status-cell[b-1ad0nboyal] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 12.5px;
}

.status-label[b-1ad0nboyal] {
    color: var(--z-500);
}

.status-value[b-1ad0nboyal] {
    color: var(--z-100);
    font-weight: 500;
}

/* ----- 2-column panels grid ----- */
.home-grid[b-1ad0nboyal] {
    display: grid;
    grid-template-columns: minmax(0, 1.6fr) minmax(280px, 1fr);
    gap: 16px;
}

@media (max-width: 900px) {
    .home-grid[b-1ad0nboyal] {
        grid-template-columns: 1fr;
    }
}

.panel[b-1ad0nboyal] {
    display: flex;
    flex-direction: column;
    gap: 14px;
    padding: 20px 22px;
}

.panel-thin[b-1ad0nboyal] {
    padding: 18px 20px;
}

.sec-head[b-1ad0nboyal] {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 14px;
}

.sec-head-left[b-1ad0nboyal] {
    display: flex;
    align-items: baseline;
    gap: 12px;
}

.sec-head-meta[b-1ad0nboyal] {
    font-family: var(--font-mono);
    font-size: 10.5px;
    color: var(--z-600);
    letter-spacing: .12em;
    text-transform: uppercase;
}

.quiet-link[b-1ad0nboyal] {
    font-family: var(--font-sans);
    font-size: 12.5px;
    color: var(--z-400);
    text-decoration: none;
    border-bottom: 1px solid transparent;
    transition: color var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease);
}

.quiet-link:hover[b-1ad0nboyal] {
    color: var(--amber-bright);
    border-bottom-color: var(--amber-tint-30);
}

/* ----- Attention list ----- */
.attn-list[b-1ad0nboyal] {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
}

.attn-item[b-1ad0nboyal] {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: start;
    gap: 12px;
    padding: 12px 0;
    border-bottom: 1px solid var(--z-875);
}

.attn-item:last-child[b-1ad0nboyal] {
    border-bottom: 0;
}

.attn-item .dot[b-1ad0nboyal] {
    margin-top: 6px;
}

.attn-body[b-1ad0nboyal] {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.attn-title[b-1ad0nboyal] {
    font-size: 13.5px;
    font-weight: 500;
    color: var(--z-100);
    letter-spacing: -.005em;
}

.attn-meta[b-1ad0nboyal] {
    font-size: 12px;
    color: var(--z-400);
    line-height: 1.45;
    overflow-wrap: anywhere;
}

/* ----- Shortcut list ----- */
.shortcut-list[b-1ad0nboyal] {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
}

.shortcut-list li + li[b-1ad0nboyal] {
    border-top: 1px solid var(--z-875);
}

.shortcut-list a[b-1ad0nboyal] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 11px 0;
    font-size: 13px;
    color: var(--z-200);
    text-decoration: none;
    transition: color var(--t-fast) var(--ease);
}

.shortcut-list a:hover[b-1ad0nboyal] {
    color: var(--amber-bright);
}

.shortcut-list a > svg[b-1ad0nboyal] {
    color: var(--z-500);
}

.shortcut-list a:hover > svg[b-1ad0nboyal] {
    color: var(--amber);
}

/* ----- Sales decline list ----- */
.decline-list[b-1ad0nboyal] {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
}

.decline-item[b-1ad0nboyal] {
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: center;
    gap: 12px;
    padding: 11px 0;
    border-bottom: 1px solid var(--z-875);
}

.decline-item:last-child[b-1ad0nboyal] {
    border-bottom: 0;
}

.decline-body[b-1ad0nboyal] {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.decline-title[b-1ad0nboyal] {
    font-size: 13px;
    font-weight: 500;
    color: var(--z-100);
    letter-spacing: -.005em;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.decline-meta[b-1ad0nboyal] {
    font-size: 11.5px;
    color: var(--z-500);
}

.decline-delta[b-1ad0nboyal] {
    font-size: 13px;
    font-weight: 600;
    color: var(--rose);
    flex-shrink: 0;
}
/* /Components/Pages/MeliAccount.razor.rz.scp.css */
.meli-wrap[b-o5hejiro3j] {
    max-width: 1080px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.meli-list[b-o5hejiro3j] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.account-card[b-o5hejiro3j] {
    display: grid;
    grid-template-columns: auto 1fr auto;
    gap: 18px;
    align-items: start;
}

.acct-body[b-o5hejiro3j] {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.acct-head[b-o5hejiro3j] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.acct-nick[b-o5hejiro3j] {
    font-size: 16px;
    font-weight: 600;
    color: var(--z-50);
    margin: 0;
    letter-spacing: -.012em;
}

.acct-id[b-o5hejiro3j] {
    font-size: 11.5px;
    color: var(--z-500);
    letter-spacing: .04em;
}

.acct-actions[b-o5hejiro3j] {
    display: flex;
    flex-direction: column;
    gap: 8px;
    align-items: stretch;
    min-width: 200px;
}

.acct-actions .btn[b-o5hejiro3j] {
    justify-content: flex-start;
}

.unlink-form[b-o5hejiro3j] {
    margin: 0;
    padding: 0;
}

.unlink-form .btn[b-o5hejiro3j] {
    width: 100%;
    color: var(--rose);
}

.unlink-form .btn:hover[b-o5hejiro3j] {
    background: var(--rose-tint);
    color: var(--rose);
}

@media (max-width: 720px) {
    .account-card[b-o5hejiro3j] {
        grid-template-columns: 1fr;
    }
    .acct-actions[b-o5hejiro3j] {
        min-width: 0;
    }
}

/* Add-another aside */
.meli-add[b-o5hejiro3j] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    background: var(--z-925);
    border: 1px dashed var(--z-800);
    border-radius: var(--r-lg);
    padding: 18px 20px;
    margin-top: 8px;
}

.meli-add-tip[b-o5hejiro3j] {
    display: flex;
    gap: 10px;
    align-items: flex-start;
    padding: 10px 14px;
    background: var(--sky-tint);
    border: 1px solid rgba(56, 189, 248, .25);
    border-radius: var(--r-md);
    font-size: 12.5px;
    color: var(--z-300);
    line-height: 1.5;
}

.meli-add-tip a[b-o5hejiro3j] {
    color: var(--amber-bright);
    text-decoration: none;
    border-bottom: 1px solid var(--amber-tint-30);
    font-weight: 500;
}

.meli-add-tip a:hover[b-o5hejiro3j] {
    color: var(--amber);
    border-bottom-color: var(--amber);
}

.link-form[b-o5hejiro3j] {
    display: flex;
    gap: 10px;
    align-items: flex-end;
    flex-wrap: wrap;
}

[b-o5hejiro3j] .link-form .mud-input-control {
    min-width: 140px;
}
/* /Components/Pages/NotFound.razor.rz.scp.css */
.nf-wrap[b-kn8k6tlab8] {
    max-width: 640px;
    margin: 40px auto;
    text-align: center;
    padding: 48px 24px;
}

.nf-mark[b-kn8k6tlab8] {
    font-family: var(--lc-font-display);
    font-size: clamp(5rem, 16vw, 9rem);
    font-weight: 300;
    line-height: 1;
    letter-spacing: -.05em;
    color: var(--lc-ink);
    display: inline-flex;
    gap: .04em;
    font-variation-settings: "opsz" 144;
    margin-bottom: 18px;
}

.nf-zero[b-kn8k6tlab8] {
    font-style: italic;
    font-weight: 400;
    color: var(--lc-amber-deep);
}

.nf-title[b-kn8k6tlab8] {
    font-family: var(--lc-font-display);
    font-size: 1.75rem;
    font-weight: 500;
    letter-spacing: -.02em;
    color: var(--lc-ink);
    margin: 0 0 10px;
}

.nf-copy[b-kn8k6tlab8] {
    font-family: var(--lc-font-body);
    font-size: .9375rem;
    color: var(--lc-ink-soft);
    line-height: 1.55;
    max-width: 48ch;
    margin: 0 auto 28px;
}

.nf-cta[b-kn8k6tlab8] {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 12px 20px;
    border-radius: 999px;
    background: var(--lc-ink);
    color: var(--lc-paper);
    font-family: var(--lc-font-body);
    font-size: .875rem;
    font-weight: 500;
    text-decoration: none;
    transition: background .2s ease, transform .15s ease;
}

.nf-cta svg[b-kn8k6tlab8] { width: 14px; height: 14px; transition: transform .2s ease; }

.nf-cta:hover[b-kn8k6tlab8] { background: #0A0B0F; }
.nf-cta:hover svg[b-kn8k6tlab8] { transform: translateX(3px); }
/* /Components/Pages/Notifications.razor.rz.scp.css */
.notif-wrap[b-espltgfe89] {
    max-width: 760px;
}

.pref-list[b-espltgfe89] {
    list-style: none;
    margin: 0;
    padding: 0;
    background: var(--z-925);
    border: 1px solid var(--z-850);
    border-radius: var(--r-lg);
    overflow: hidden;
    box-shadow: var(--shadow-sm);
}

.pref-row[b-espltgfe89] {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 16px;
    padding: 18px 20px;
    border-bottom: 1px solid var(--z-875);
    transition: background var(--t-fast) var(--ease);
}

.pref-row:last-child[b-espltgfe89] {
    border-bottom: 0;
}

.pref-row:hover[b-espltgfe89] {
    background: var(--z-900);
}

.pref-icon[b-espltgfe89] {
    width: 36px;
    height: 36px;
    border-radius: var(--r-md);
    display: grid;
    place-items: center;
    background: var(--z-875);
    color: var(--z-300);
    flex-shrink: 0;
}

.pref-icon.ok[b-espltgfe89]   { background: var(--emerald-tint); color: var(--emerald); }
.pref-icon.warn[b-espltgfe89] { background: var(--amber-tint-10); color: var(--amber); }
.pref-icon.err[b-espltgfe89]  { background: var(--rose-tint); color: var(--rose); }

.pref-copy[b-espltgfe89] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
}

.pref-label[b-espltgfe89] {
    font-size: 14px;
    font-weight: 500;
    color: var(--z-100);
    letter-spacing: -.005em;
}

.pref-desc[b-espltgfe89] {
    font-size: 12.5px;
    color: var(--z-400);
    line-height: 1.5;
    max-width: 58ch;
}
/* /Components/Pages/Profile.razor.rz.scp.css */
.profile-grid[b-9itrgtj1ut] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 360px;
    gap: 16px;
    align-items: start;
}

.profile-security[b-9itrgtj1ut] {
    grid-row: 1;
    grid-column: 1;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.profile-identity[b-9itrgtj1ut] {
    grid-row: 1;
    grid-column: 2;
    display: flex;
    flex-direction: column;
    gap: 18px;
}

@media (max-width: 880px) {
    .profile-grid[b-9itrgtj1ut] {
        grid-template-columns: 1fr;
    }
    .profile-security[b-9itrgtj1ut],
    .profile-identity[b-9itrgtj1ut] {
        grid-row: auto;
        grid-column: auto;
    }
}

.identity-head[b-9itrgtj1ut] {
    display: flex;
    align-items: center;
    gap: 16px;
}

.big-avatar[b-9itrgtj1ut] {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: linear-gradient(135deg, #2A4FB8, #5B5BD6);
    color: white;
    display: grid;
    place-items: center;
    font-size: 20px;
    font-weight: 600;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .18), 0 0 0 1px var(--z-850);
}

.identity-text[b-9itrgtj1ut] {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.identity-name[b-9itrgtj1ut] {
    font-size: 17px;
    font-weight: 600;
    color: var(--z-50);
    margin: 0;
    letter-spacing: -.012em;
}

.identity-email[b-9itrgtj1ut] {
    font-size: 12px;
    color: var(--z-500);
}

.identity-chips[b-9itrgtj1ut] {
    display: flex;
    gap: 6px;
    margin-top: 4px;
}

.logout-form[b-9itrgtj1ut] {
    margin: 4px 0 0;
    padding: 0;
}

.logout-btn[b-9itrgtj1ut] {
    color: var(--rose);
    width: 100%;
    justify-content: center;
}

.logout-btn:hover[b-9itrgtj1ut] {
    background: var(--rose-tint);
    color: var(--rose);
}

.form-banner[b-9itrgtj1ut] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    border-radius: var(--r-md);
    font-size: 12.5px;
    line-height: 1.4;
}

.form-banner.err[b-9itrgtj1ut] {
    background: var(--rose-tint);
    border: 1px solid rgba(244, 63, 94, .25);
    color: var(--rose);
}

.form-banner.ok[b-9itrgtj1ut] {
    background: var(--emerald-tint);
    border: 1px solid rgba(16, 185, 129, .25);
    color: var(--emerald);
}

.form-actions[b-9itrgtj1ut] {
    margin-top: 6px;
    display: flex;
    justify-content: flex-end;
}

[b-9itrgtj1ut] .validation-message {
    color: var(--rose);
    font-size: 11.5px;
    margin-top: 2px;
    display: block;
}
/* /Components/Pages/Promotions.razor.rz.scp.css */
.anti[b-5yfdybv327] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.anti-value[b-5yfdybv327] {
    font-family: var(--font-mono);
    font-weight: 500;
    color: var(--z-100);
    font-size: 12.5px;
}

.price-cell[b-5yfdybv327] {
    font-family: var(--font-mono);
    font-weight: 500;
    color: var(--z-100);
    font-size: 12.5px;
    white-space: nowrap;
}

.price-stack[b-5yfdybv327] {
    display: inline-flex;
    flex-direction: column;
    gap: 2px;
    line-height: 1.2;
}

.price-sub[b-5yfdybv327] {
    color: var(--z-500);
    font-size: 11px;
}

[b-5yfdybv327] .row-link:hover {
    border-bottom-color: var(--amber) !important;
    color: var(--amber-bright) !important;
}
/* /Components/Pages/Purchasing/CostVariations.razor.rz.scp.css */
.tbl-wrap[b-4t0149vfl7] {
    overflow-x: auto;
}

.sub[b-4t0149vfl7] {
    margin-top: 3px;
    font-size: .74rem;
    color: var(--z-500);
}

.var-alert[b-4t0149vfl7] {
    font-weight: 700;
    color: var(--amber);
}

.var-ok[b-4t0149vfl7] {
    color: var(--z-500);
}
/* /Components/Pages/Purchasing/PurchaseInvoiceEditor.razor.rz.scp.css */
/* Misma escala que el resto del módulo de costos (ver ProfitSimulator): 18px de padding,
   14px de gap, --r-lg de radio y los tokens de superficie del tema. */
.inv-head[b-g9nbd531gs] {
    display: grid;
    grid-template-columns: repeat(3, minmax(180px, 1fr));
    gap: 18px 20px;
    padding: 20px;
    margin-bottom: 24px;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: var(--r-lg);
}

/* Proveedor y Notas ocupan la fila entera: son los dos campos largos. */
.f-wide[b-g9nbd531gs] {
    grid-column: 1 / -1;
}

.lines-head[b-g9nbd531gs] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 12px;
}

.lines-head h3[b-g9nbd531gs] {
    margin: 0;
    font-size: 1rem;
}

.lines-wrap[b-g9nbd531gs] {
    padding: 6px 18px 18px;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: var(--r-lg);
    overflow-x: auto;
}

table.lines[b-g9nbd531gs] {
    width: 100%;
    min-width: 1100px;
    border-collapse: separate;
    /* separate + spacing en vez de collapse: le da aire vertical a cada fila sin que los
       inputs densos de Mud queden pegados uno arriba del otro. */
    border-spacing: 10px 8px;
}

table.lines th[b-g9nbd531gs] {
    padding: 10px 2px 4px;
    font-size: .72rem;
    font-weight: 600;
    letter-spacing: .04em;
    text-transform: uppercase;
    text-align: left;
    color: var(--z-500);
    white-space: nowrap;
    vertical-align: bottom;
}

table.lines td[b-g9nbd531gs] {
    padding: 2px;
    vertical-align: top;
}

table.lines .r[b-g9nbd531gs] {
    text-align: right;
}

table.lines tbody tr + tr td[b-g9nbd531gs] {
    border-top: 1px solid var(--border);
    padding-top: 12px;
}

table.lines tfoot td[b-g9nbd531gs] {
    padding-top: 16px;
    font-size: .95rem;
}

.calc-cell[b-g9nbd531gs] {
    display: block;
    padding-top: 10px;
}

.manual-tag[b-g9nbd531gs] {
    display: block;
    margin-top: 4px;
    font-size: .68rem;
    color: var(--amber);
}

/* Fila de variación: cuelga de la línea de arriba, sin separador propio. */
.var-row td[b-g9nbd531gs] {
    padding: 0 2px 8px;
    font-size: .76rem;
}

.var-row td[b-g9nbd531gs] {
    border-top: 0;
}

.var-alert[b-g9nbd531gs] {
    font-weight: 600;
    color: var(--amber);
    margin-right: 6px;
}

.var-ok[b-g9nbd531gs] {
    color: var(--z-500);
    margin-right: 6px;
}

@media (max-width: 900px) {
    .inv-head[b-g9nbd531gs] {
        grid-template-columns: 1fr;
        gap: 16px;
    }
}
/* /Components/Pages/Purchasing/PurchaseInvoices.razor.rz.scp.css */
.filters[b-us1gxy3sez] {
    display: grid;
    grid-template-columns: repeat(4, minmax(160px, 1fr));
    gap: 16px 20px;
    padding: 18px 20px;
    margin-bottom: 22px;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: var(--r-lg);
}

.empty-wrap[b-us1gxy3sez] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
}

.empty-cta[b-us1gxy3sez] {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;
    margin-bottom: 32px;
}

.tbl-wrap[b-us1gxy3sez] {
    overflow-x: auto;
}

.clickable[b-us1gxy3sez]  tbody tr {
    cursor: pointer;
}

/* Barra de consumo: de un vistazo se ve cuánto de la factura ya se vendió. */
.fifo-bar[b-us1gxy3sez] {
    position: relative;
    width: 100%;
    max-width: 140px;
    height: 6px;
    margin: 0 auto 5px;
    border-radius: 999px;
    background: var(--surface-3);
    overflow: hidden;
}

.fifo-fill[b-us1gxy3sez] {
    height: 100%;
    border-radius: 999px;
    background: var(--emerald);
    transition: width .2s ease;
}

.fifo-text[b-us1gxy3sez] {
    display: block;
    font-size: .72rem;
    color: var(--z-500);
}

@media (max-width: 1100px) {
    .filters[b-us1gxy3sez] {
        grid-template-columns: repeat(2, minmax(150px, 1fr));
    }
}

@media (max-width: 620px) {
    .filters[b-us1gxy3sez] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Pages/Purchasing/Suppliers.razor.rz.scp.css */
.sup-form[b-9n4y5gbt2c] {
    display: grid;
    grid-template-columns: repeat(3, minmax(180px, 1fr));
    gap: 18px 20px;
    padding: 20px;
    margin-bottom: 24px;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: var(--r-lg);
}

.sup-form-foot[b-9n4y5gbt2c] {
    grid-column: 1 / -1;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding-top: 16px;
    border-top: 1px solid var(--border);
}

.sup-form-actions[b-9n4y5gbt2c] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.tbl-wrap[b-9n4y5gbt2c] {
    overflow-x: auto;
}

@media (max-width: 820px) {
    .sup-form[b-9n4y5gbt2c] {
        grid-template-columns: 1fr;
        gap: 16px;
    }
}
/* /Components/Pages/Replenishment/BaseSkuLinkDialog.razor.rz.scp.css */
.bsd-suggest-list[b-eisxttk1bq] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.bsd-suggest[b-eisxttk1bq] {
    border: 1px solid var(--z-800);
    border-radius: 10px;
    padding: 12px 14px;
    background: var(--z-900);
}

.bsd-suggest-head[b-eisxttk1bq] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 8px;
}

.bsd-suggest-code[b-eisxttk1bq] {
    color: var(--z-50);
    font-weight: 600;
    font-size: 14px;
}

.bsd-suggest-count[b-eisxttk1bq] {
    color: var(--z-500);
    font-size: 12px;
}

.bsd-suggest-members[b-eisxttk1bq] {
    list-style: none;
    margin: 0 0 8px 0;
    padding: 0;
    max-height: 140px;
    overflow-y: auto;
}

.bsd-suggest-members li[b-eisxttk1bq] {
    display: flex;
    gap: 10px;
    padding: 4px 0;
    font-size: 12.5px;
    color: var(--z-300);
}

.bsd-suggest-sku[b-eisxttk1bq] {
    flex-shrink: 0;
    width: 130px;
    color: var(--z-200);
}

.bsd-suggest-title[b-eisxttk1bq] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.bsd-suggest-actions[b-eisxttk1bq] {
    display: flex;
    justify-content: flex-end;
    margin-top: 4px;
}
/* /Components/Pages/Replenishment/ReplenishmentPlan.razor.rz.scp.css */
.rep-meta[b-zi8l0cc399] {
    display: flex;
    flex-wrap: wrap;
    gap: 16px 24px;
    padding: 12px 16px;
    background: var(--z-900);
    border: 1px solid var(--z-800);
    border-radius: 12px;
    margin-bottom: 18px;
    color: var(--z-300);
    font-size: 13px;
}

.rep-meta-item[b-zi8l0cc399] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.rep-meta-item.rep-meta-warn[b-zi8l0cc399] {
    color: var(--amber-400, #f59e0b);
}

.rep-meta-icon[b-zi8l0cc399] {
    width: 14px;
    height: 14px;
    opacity: 0.7;
}

.rep-suggest[b-zi8l0cc399] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 14px 18px;
    background: linear-gradient(135deg, rgba(56, 189, 248, 0.06), rgba(56, 189, 248, 0.02));
    border: 1px solid rgba(56, 189, 248, 0.25);
    border-radius: 12px;
    margin-bottom: 18px;
}

.rep-suggest-head[b-zi8l0cc399] {
    display: flex;
    gap: 12px;
    align-items: flex-start;
}

.rep-suggest-icon[b-zi8l0cc399] {
    width: 18px;
    height: 18px;
    color: var(--sky-300, #7dd3fc);
    margin-top: 2px;
}

.rep-suggest-title[b-zi8l0cc399] {
    color: var(--z-50);
    font-weight: 500;
    font-size: 14px;
}

.rep-suggest-sub[b-zi8l0cc399] {
    color: var(--z-400);
    font-size: 12px;
    margin-top: 2px;
}

.rep-toolbar[b-zi8l0cc399] {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    padding: 12px 4px 4px 4px;
}

.rep-link-chip[b-zi8l0cc399] {
    background: var(--z-800);
    border: 1px solid var(--z-700);
    border-radius: 6px;
    padding: 4px 10px;
    color: var(--z-100);
    cursor: pointer;
    font-size: 12px;
    transition: background 120ms ease;
}

.rep-link-chip:hover[b-zi8l0cc399] {
    background: var(--z-700);
}

.rep-stock-meta[b-zi8l0cc399] {
    color: var(--z-500);
    font-size: 11px;
    margin-top: 4px;
}

.stock-cell[b-zi8l0cc399] {
    display: inline-flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 6px;
}

.stock-stepper[b-zi8l0cc399] {
    display: inline-flex;
    align-items: stretch;
    background: var(--z-925);
    border: 1px solid var(--border-strong, var(--z-800));
    border-radius: var(--r-md, 8px);
    overflow: hidden;
    transition: border-color var(--t-fast, 120ms) var(--ease, ease-out),
                box-shadow var(--t-fast, 120ms) var(--ease, ease-out);
}

.stock-stepper:hover[b-zi8l0cc399] {
    border-color: var(--border-hover, var(--z-700));
}

.stock-stepper:focus-within[b-zi8l0cc399] {
    border-color: var(--amber);
    box-shadow: var(--ring-amber);
}

.stock-stepper-btn[b-zi8l0cc399] {
    width: 28px;
    background: transparent;
    border: 0;
    color: var(--text-dim, var(--z-400));
    font-size: 16px;
    font-weight: 500;
    line-height: 1;
    cursor: pointer;
    padding: 0;
    transition: background var(--t-fast, 120ms) var(--ease, ease-out),
                color var(--t-fast, 120ms) var(--ease, ease-out);
}

.stock-stepper-btn:hover[b-zi8l0cc399] {
    background: var(--z-850);
    color: var(--text-hi, var(--z-50));
}

.stock-stepper-btn:active[b-zi8l0cc399] {
    background: var(--z-800);
}

.stock-stepper-btn:first-child[b-zi8l0cc399] {
    border-right: 1px solid var(--border, var(--z-850));
}

.stock-stepper-btn:last-child[b-zi8l0cc399] {
    border-left: 1px solid var(--border, var(--z-850));
}

.stock-stepper-value[b-zi8l0cc399] {
    width: 64px;
    background: transparent;
    border: 0;
    outline: 0;
    color: var(--text-hi, var(--z-50));
    text-align: center;
    font-size: 14px;
    font-weight: 600;
    padding: 6px 4px;
    -moz-appearance: textfield;
}

.stock-stepper-value[b-zi8l0cc399]::-webkit-outer-spin-button,
.stock-stepper-value[b-zi8l0cc399]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.stock-source-chip[b-zi8l0cc399] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 3px 8px;
    border-radius: 999px;
    font-size: 10.5px;
    font-weight: 500;
    letter-spacing: 0.01em;
    border: 1px solid transparent;
    cursor: help;
    white-space: nowrap;
}

.stock-source-dot[b-zi8l0cc399] {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    flex-shrink: 0;
}

.stock-source-manual[b-zi8l0cc399] {
    background: var(--amber-tint-10);
    color: var(--amber-bright);
    border-color: var(--amber-tint-20);
}

.stock-source-manual .stock-source-dot[b-zi8l0cc399] {
    background: var(--amber);
}

.stock-source-meli[b-zi8l0cc399] {
    background: var(--sky-tint);
    color: var(--sky);
    border-color: rgba(56, 189, 248, 0.18);
}

.stock-source-meli .stock-source-dot[b-zi8l0cc399] {
    background: var(--sky);
}

/* Sugerencia "en MELI: N · usar" cuando hay override manual: reemplaza el manual por el stock fresco. */
.stock-meli-suggestion[b-zi8l0cc399] {
    margin-top: 4px;
    padding: 2px 8px;
    font-size: 0.72rem;
    line-height: 1.2;
    color: var(--sky);
    background: var(--sky-tint);
    border: 1px solid rgba(56, 189, 248, 0.18);
    border-radius: 999px;
    cursor: pointer;
    transition: background 0.15s ease;
}

.stock-meli-suggestion:hover[b-zi8l0cc399] {
    background: rgba(56, 189, 248, 0.18);
}

/* Celda "A comprar al proveedor" con precio subido por bajo stock */
.buy-raised-cell[b-zi8l0cc399] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    align-items: flex-end;
}

.buy-raised-row[b-zi8l0cc399] {
    display: flex;
    align-items: center;
    gap: 5px;
}

.buy-raised-badge[b-zi8l0cc399] {
    display: flex;
    align-items: center;
    color: var(--amber);
    flex-shrink: 0;
}

.buy-raised-icon[b-zi8l0cc399] {
    width: 13px;
    height: 13px;
}

.buy-raised-label[b-zi8l0cc399] {
    font-size: 11px;
    color: var(--z-500);
    white-space: nowrap;
}

.buy-raised-value-pre[b-zi8l0cc399] {
    font-weight: 700;
    color: var(--amber);
    font-size: 13.5px;
}

.buy-raised-value-now[b-zi8l0cc399] {
    font-weight: 500;
    color: var(--z-300);
    font-size: 12px;
}
/* /Components/Pages/Replenishment/ReplenishmentProgressOverlay.razor.rz.scp.css */
.rpo-backdrop[b-paaeqlodez] {
    position: fixed;
    inset: 0;
    background: rgba(7, 7, 10, 0.78);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    z-index: 4000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
    animation: rpo-fade-in-b-paaeqlodez var(--t-med, 180ms) var(--ease, ease-out);
}

.rpo-card[b-paaeqlodez] {
    width: min(560px, 100%);
    background: var(--surface, var(--z-925));
    border: 1px solid var(--border-strong, var(--z-800));
    border-radius: var(--r-xl, 16px);
    box-shadow: var(--shadow-lg);
    padding: 28px 28px 24px;
    color: var(--text, var(--z-100));
}

.rpo-head[b-paaeqlodez] {
    display: flex;
    gap: 16px;
    align-items: flex-start;
    margin-bottom: 22px;
}

.rpo-head-text[b-paaeqlodez] {
    flex: 1;
    min-width: 0;
}

.rpo-title[b-paaeqlodez] {
    font-size: 16px;
    font-weight: 600;
    color: var(--text-hi, var(--z-50));
    line-height: 1.2;
    margin-bottom: 4px;
}

.rpo-sub[b-paaeqlodez] {
    font-size: 12.5px;
    color: var(--text-dim, var(--z-400));
    line-height: 1.45;
}

.rpo-spinner[b-paaeqlodez] {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    border: 2.5px solid var(--amber-tint-20);
    border-top-color: var(--amber);
    animation: rpo-spin-b-paaeqlodez 720ms linear infinite;
    flex-shrink: 0;
    margin-top: 2px;
}

.rpo-progress[b-paaeqlodez] {
    margin-bottom: 22px;
}

.rpo-progress-row[b-paaeqlodez] {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    margin-bottom: 8px;
    font-size: 12px;
    color: var(--text-dim, var(--z-400));
}

.rpo-step-pct[b-paaeqlodez] {
    color: var(--text-hi, var(--z-50));
    font-weight: 600;
    font-size: 13px;
}

.rpo-bar[b-paaeqlodez] {
    width: 100%;
    height: 6px;
    background: var(--z-850);
    border-radius: 999px;
    overflow: hidden;
}

.rpo-bar-fill[b-paaeqlodez] {
    height: 100%;
    background: linear-gradient(90deg, var(--amber), var(--amber-bright));
    border-radius: 999px;
    transition: width var(--t-slow, 280ms) var(--ease, ease-out);
}

.rpo-stages[b-paaeqlodez] {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.rpo-stage[b-paaeqlodez] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 8px 10px;
    border-radius: var(--r-sm, 6px);
    font-size: 13px;
    transition: background var(--t-fast, 120ms) var(--ease, ease-out);
}

.rpo-stage-marker[b-paaeqlodez] {
    width: 18px;
    height: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    line-height: 1;
    flex-shrink: 0;
}

.rpo-stage-label[b-paaeqlodez] {
    flex: 1;
    min-width: 0;
}

.rpo-stage-count[b-paaeqlodez] {
    font-size: 11.5px;
    color: var(--text-mute, var(--z-500));
    padding: 2px 8px;
    background: var(--z-900);
    border-radius: 999px;
}

.rpo-stage-pending[b-paaeqlodez] {
    color: var(--text-mute, var(--z-500));
}

.rpo-stage-pending .rpo-stage-marker[b-paaeqlodez] {
    color: var(--z-700);
}

.rpo-stage-active[b-paaeqlodez] {
    background: var(--amber-tint-10);
    color: var(--text-hi, var(--z-50));
    font-weight: 500;
}

.rpo-stage-active .rpo-stage-marker[b-paaeqlodez] {
    color: var(--amber);
    animation: rpo-pulse-b-paaeqlodez 1.2s ease-in-out infinite;
}

.rpo-stage-active .rpo-stage-count[b-paaeqlodez] {
    color: var(--amber);
    background: var(--amber-tint-20);
}

.rpo-stage-done[b-paaeqlodez] {
    color: var(--text-dim, var(--z-400));
}

.rpo-stage-done .rpo-stage-marker[b-paaeqlodez] {
    color: var(--emerald);
}

.mono[b-paaeqlodez] {
    font-family: var(--font-mono, ui-monospace, monospace);
}

@keyframes rpo-spin-b-paaeqlodez {
    to { transform: rotate(360deg); }
}

@keyframes rpo-pulse-b-paaeqlodez {
    0%, 100% { opacity: 1; transform: scale(1); }
    50% { opacity: 0.55; transform: scale(0.78); }
}

@keyframes rpo-fade-in-b-paaeqlodez {
    from { opacity: 0; }
    to { opacity: 1; }
}

@media (prefers-reduced-motion: reduce) {
    .rpo-backdrop[b-paaeqlodez] { animation: none; }
    .rpo-spinner[b-paaeqlodez] { animation: none; border-top-color: var(--amber); }
    .rpo-stage-active .rpo-stage-marker[b-paaeqlodez] { animation: none; }
    .rpo-bar-fill[b-paaeqlodez] { transition: none; }
}
/* /Components/Pages/SalesStats.razor.rz.scp.css */
.period-bar[b-rstsf5dfjo] {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

/* Selector de período: pills separadas, no un grupo pegado. Activa en ámbar de marca. */
.period-presets[b-rstsf5dfjo] {
    display: inline-flex;
    gap: 6px;
}

.seg[b-rstsf5dfjo] {
    padding: 6px 14px;
    border-radius: 9px;
    border: 1px solid var(--border);
    background: transparent;
    color: var(--z-400);
    font-size: 13px;
    font-weight: 500;
    cursor: pointer;
    transition: background-color .12s, border-color .12s, color .12s;
}

.seg:hover[b-rstsf5dfjo] {
    border-color: var(--border-hover);
    color: var(--z-200);
}

.seg.is-active[b-rstsf5dfjo] {
    background: var(--amber);
    border-color: var(--amber);
    color: var(--z-1000);
    font-weight: 600;
}

.compare-line[b-rstsf5dfjo] {
    color: var(--z-300);
    font-size: 13px;
    margin: 0 0 18px;
}

.compare-line strong[b-rstsf5dfjo] { color: var(--z-50); font-weight: 600; }

.compare-vs[b-rstsf5dfjo] {
    color: var(--z-500);
    margin-left: 8px;
}

/* Link al permalink de MELI desde el SKU. */
.prod-sku[b-rstsf5dfjo] {
    font-size: 12.5px;
    font-weight: 600;
    color: var(--z-50);
    text-decoration: none;
    border-bottom: 1px solid transparent;
    transition: color .12s, border-color .12s;
}

a.prod-sku:hover[b-rstsf5dfjo] {
    color: var(--amber-bright);
    border-bottom-color: var(--amber);
}

.prod-sku.no-link[b-rstsf5dfjo] { color: var(--z-300); cursor: default; }

.cell-product[b-rstsf5dfjo] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
    max-width: 380px;
}

.cell-title[b-rstsf5dfjo] {
    font-size: 11.5px;
    color: var(--z-500);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.th-sub[b-rstsf5dfjo] {
    display: block;
    font-size: 10.5px;
    font-weight: 400;
    color: var(--z-600);
    letter-spacing: 0;
    text-transform: none;
    margin-top: 1px;
}

.tbl-head[b-rstsf5dfjo] { display: flex; flex-direction: column; gap: 1px; }
.tbl-title[b-rstsf5dfjo] { font-size: 14px; font-weight: 600; color: var(--z-100); }
.tbl-sub[b-rstsf5dfjo] { font-size: 11.5px; color: var(--z-500); }

.kpi-grid[b-rstsf5dfjo] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 14px;
    margin-bottom: 22px;
}

.kpi[b-rstsf5dfjo] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding: 16px 18px;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 12px;
}

.kpi-label[b-rstsf5dfjo] {
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: var(--z-500);
}

.kpi-value[b-rstsf5dfjo] {
    font-size: 26px;
    font-weight: 700;
    color: var(--z-50);
    line-height: 1.1;
}

/* El acento de color vive en el chip de tendencia, no en el número entero — un "0" gigante
   en verde distrae. El número queda neutro; el badge chico lleva el semáforo. */
.kpi-badge[b-rstsf5dfjo] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    align-self: flex-start;
    padding: 2px 9px;
    border-radius: 999px;
    font-size: 11.5px;
    font-weight: 600;
    margin-top: 2px;
}

.kpi-badge.up[b-rstsf5dfjo] { background: var(--emerald-tint); color: var(--emerald); }
.kpi-badge.down[b-rstsf5dfjo] { background: var(--rose-tint); color: var(--rose); }
.kpi-badge.mute[b-rstsf5dfjo] { color: var(--z-500); }

.kpi-delta[b-rstsf5dfjo] {
    font-size: 12px;
    color: var(--z-500);
}

.movers-grid[b-rstsf5dfjo] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    margin-bottom: 22px;
}

@media (max-width: 820px) {
    .movers-grid[b-rstsf5dfjo] { grid-template-columns: 1fr; }
}

/* MudTable toolbar on mobile: stack the title block and the search so they
   don't collide with the responsive sort selector MudTable renders below Sm.
   ::deep reaches MudBlazor's rendered markup; !important beats the inline
   min-width on the search field. */
@media (max-width: 700px) {
    [b-rstsf5dfjo] .mud-table-toolbar {
        height: auto;
        flex-wrap: wrap;
        gap: 10px;
        padding: 12px 12px 6px;
    }
    [b-rstsf5dfjo] .mud-table-toolbar .mud-spacer { display: none; }
    [b-rstsf5dfjo] .mud-table-toolbar .mud-input-control {
        width: 100% !important;
        min-width: 0 !important;
    }
    .tbl-head[b-rstsf5dfjo] { width: 100%; }
}

.mover-panel[b-rstsf5dfjo] {
    padding: 16px 18px;
}

.mover-head[b-rstsf5dfjo] {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 8px;
    margin: 0 0 6px;
}

.mover-title[b-rstsf5dfjo] {
    font-size: 13px;
    font-weight: 600;
    letter-spacing: .04em;
    text-transform: uppercase;
    margin: 0;
}

.mover-title.up[b-rstsf5dfjo] { color: var(--emerald); }
.mover-title.down[b-rstsf5dfjo] { color: var(--rose); }

.mover-hint[b-rstsf5dfjo] {
    font-size: 11px;
    color: var(--z-600);
}

.mover-flow[b-rstsf5dfjo] { color: var(--z-400); }

.mover-row[b-rstsf5dfjo] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 0;
    border-top: 1px solid var(--border);
}

.mover-id[b-rstsf5dfjo] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}

.mover-sku[b-rstsf5dfjo] {
    font-size: 12.5px;
    font-weight: 600;
    color: var(--z-50);
}

.mover-title-text[b-rstsf5dfjo] {
    font-size: 11.5px;
    color: var(--z-500);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 260px;
}

.mover-nums[b-rstsf5dfjo] {
    display: flex;
    align-items: center;
    gap: 10px;
    white-space: nowrap;
    color: var(--z-400);
    font-size: 12px;
}

.mover-empty[b-rstsf5dfjo] {
    color: var(--z-500);
    font-size: 12.5px;
    padding: 8px 0;
}

.delta[b-rstsf5dfjo] { font-weight: 600; font-size: 12.5px; }
.delta.up[b-rstsf5dfjo] { color: var(--emerald); }
.delta.down[b-rstsf5dfjo] { color: var(--rose); }
.delta.mute[b-rstsf5dfjo] { color: var(--z-500); }

.mono-item[b-rstsf5dfjo] {
    font-size: 12.5px;
    color: var(--z-200);
    display: inline-block;
    max-width: 360px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    vertical-align: bottom;
}
/* /Components/Pages/StockPricing/StockPricingControl.razor.rz.scp.css */
.rep-toolbar[b-nfrng7szav] {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    padding: 12px 4px 4px 4px;
}

/* Hint cuando no hay reglas: empuja el resto del toolbar a la derecha */
.sp-lens-hint[b-nfrng7szav] {
    margin-right: auto;
    align-self: center;
    font-size: 12.5px;
    color: var(--z-400);
    max-width: 520px;
    line-height: 1.4;
}

/* Leyenda explicativa de cobertura/ventana, arriba de la tabla de Seguimiento */
.sp-coverage-legend[b-nfrng7szav] {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    padding: 10px 14px;
    margin: 4px 2px 10px;
    background: var(--sky-tint, rgba(56, 189, 248, 0.06));
    border: 1px solid rgba(56, 189, 248, 0.18);
    border-radius: 10px;
    font-size: 12.5px;
    line-height: 1.45;
    color: var(--z-300);
}

.sp-legend-icon[b-nfrng7szav] {
    width: 15px;
    height: 15px;
    flex-shrink: 0;
    margin-top: 1px;
    color: var(--sky, #38bdf8);
}

/* Celda de Ventas: número + ritmo/día debajo */
.sp-sales-cell[b-nfrng7szav] {
    display: inline-flex;
    flex-direction: column;
    align-items: flex-end;
    line-height: 1.2;
}

.sp-rate[b-nfrng7szav] {
    font-size: 11px;
    color: var(--z-500);
}

/* Encabezado explicativo de las solapas de precio por stock */
.sp-intro[b-nfrng7szav] {
    font-size: 13px;
    color: var(--z-400);
    line-height: 1.5;
    margin: 12px 2px 8px;
}

/* Master switch de la automatización de precio por stock */
.sp-master[b-nfrng7szav] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    flex-wrap: wrap;
    padding: 16px 18px;
    margin-top: 12px;
    margin-bottom: 4px;
    background: var(--z-900);
    border: 1px solid var(--z-800);
    border-radius: 12px;
}

.sp-master-main[b-nfrng7szav] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.sp-master-hint[b-nfrng7szav] {
    font-size: 12.5px;
    color: var(--z-400);
    line-height: 1.45;
    max-width: 640px;
}

/* Solapa "Reglas de precio" */
.rule-type-chip[b-nfrng7szav] {
    display: inline-block;
    font-size: 11.5px;
    font-weight: 500;
    color: var(--z-200);
    background: var(--z-900);
    border: 1px solid var(--z-700);
    border-radius: 6px;
    padding: 2px 8px;
    cursor: help;
}

.rule-status-chip[b-nfrng7szav] {
    display: inline-block;
    font-size: 11px;
    font-weight: 600;
    border-radius: 6px;
    padding: 2px 8px;
}

.rule-status-on[b-nfrng7szav] {
    color: #4ade80;
    background: rgba(74, 222, 128, 0.1);
    border: 1px solid rgba(74, 222, 128, 0.3);
}

.rule-status-off[b-nfrng7szav] {
    color: var(--z-500);
    background: var(--z-900);
    border: 1px solid var(--z-700);
}

/* Solapa "Seguimiento" */

/* Fila con precio subido por bajo stock: fondo ámbar muy sutil */
[b-nfrng7szav] .sp-row-raised td {
    background: rgba(245, 158, 11, 0.05);
}

/* Cobertura crítica (≤ 3 días) */
.sp-cov-low[b-nfrng7szav] {
    color: var(--amber);
    font-weight: 600;
}

/* Precio fusionado: chip + flecha */
.sp-price-raised[b-nfrng7szav] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.sp-price-arrow[b-nfrng7szav] {
    color: var(--z-300);
    font-size: 12.5px;
}
/* /Components/Pages/StockPricing/StockPricingRuleDialog.razor.rz.scp.css */
/* Sin estilos adicionales requeridos — el diálogo usa MudBlazor estándar */
/* /Components/Purchasing/DiscountChipsField.razor.rz.scp.css */
.disc[b-opgc1ke7zy] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    padding: 4px 0;
}

.disc-chip[b-opgc1ke7zy] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 8px 4px 5px;
    background: var(--surface-2);
    border: 1px solid var(--border);
    border-radius: 999px;
    font-size: .76rem;
    white-space: nowrap;
}

.disc-step[b-opgc1ke7zy] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 17px;
    height: 17px;
    border-radius: 50%;
    background: var(--sky);
    color: var(--z-1000);
    font-size: .62rem;
    font-weight: 700;
}

.disc-x[b-opgc1ke7zy] {
    border: 0;
    background: none;
    cursor: pointer;
    padding: 0 2px;
    font-size: 1rem;
    line-height: 1;
    color: var(--z-500);
}

.disc-x:hover[b-opgc1ke7zy] {
    color: var(--rose);
}

.disc-arrow[b-opgc1ke7zy] {
    color: var(--z-600);
    font-size: .72rem;
}

.disc-add[b-opgc1ke7zy] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
/* /Components/Shared/PageHeader.razor.rz.scp.css */
/* Renewbify brand accent: page titles render in the display face
   (Neue Helvetica Condensed Heavy). Body/tables stay on Geist.
   Only font-family/tracking are set here — size, weight and color
   come from the global .h1 rule in operator-os.components.css. */
.h1[b-v5ipnkjjxn] {
    font-family: var(--font-display);
    letter-spacing: .004em;
}
/* /Components/UI/EmptyState.razor.rz.scp.css */
.empty-actions[b-bnhmmzz1d7] {
    margin-top: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

.empty-foot[b-bnhmmzz1d7] {
    margin-top: 22px;
    font-size: 12px;
    color: var(--z-500);
}

.empty-foot a[b-bnhmmzz1d7] {
    color: var(--z-300);
    text-decoration: none;
    border-bottom: 1px solid var(--z-800);
    transition: color var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease);
}

.empty-foot a:hover[b-bnhmmzz1d7] {
    color: var(--amber-bright);
    border-bottom-color: var(--amber);
}

.empty .steps[b-bnhmmzz1d7] {
    margin: 8px auto 24px;
    max-width: 640px;
    width: 100%;
}
