@import 'Price.Client.627plzvzfw.bundle.scp.css';

/* /Components/Pages/Admin/Jobber.razor.rz.scp.css */
.jobber-page[b-4wlabr5ght] {
    padding: 24px;
    max-width: 960px;
}

.jobber-header[b-4wlabr5ght] { margin-bottom: 20px; }
.jobber-header h2[b-4wlabr5ght] { font-size: 1.4rem; font-weight: 700; }
.jobber-subtitle[b-4wlabr5ght] { color: var(--text-muted); font-size: 0.9rem; margin-top: 4px; }

.job-card[b-4wlabr5ght] {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    margin-bottom: 12px;
    overflow: hidden;
    transition: box-shadow 0.15s;
}

.job-card--running[b-4wlabr5ght] {
    border-color: var(--accent);
    box-shadow: 0 0 0 2px var(--accent-dim);
}

.job-card-header[b-4wlabr5ght] {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 14px 18px;
    flex-wrap: wrap;
}

.job-card-info[b-4wlabr5ght] { flex: 1; min-width: 0; }

.job-name[b-4wlabr5ght] {
    display: block;
    font-weight: 600;
    font-size: 0.95rem;
}

.job-desc[b-4wlabr5ght] {
    display: block;
    color: var(--text-muted);
    font-size: 0.82rem;
    margin-top: 2px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.job-card-status[b-4wlabr5ght] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
}

.badge[b-4wlabr5ght] { display: inline-block; padding: 2px 8px; border-radius: 20px; font-size: 0.75rem; font-weight: 600; }
.badge-ok[b-4wlabr5ght]   { background: #d1fae5; color: #065f46; }
.badge-fail[b-4wlabr5ght] { background: #fee2e2; color: #991b1b; }

.job-lastrun[b-4wlabr5ght], .job-nextrun[b-4wlabr5ght] { font-size: 0.78rem; color: var(--text-muted); }
.job-nextrun[b-4wlabr5ght] { color: var(--text-dim); }

.job-card-actions[b-4wlabr5ght] { display: flex; gap: 8px; flex-shrink: 0; }

.btn-run[b-4wlabr5ght] {
    background: var(--accent);
    color: #fff;
    border: none;
    border-radius: 8px;
    padding: 6px 14px;
    font-size: 0.85rem;
    font-weight: 600;
    cursor: pointer;
}
.btn-run:disabled[b-4wlabr5ght] { opacity: 0.5; cursor: not-allowed; }

.btn-secondary[b-4wlabr5ght] {
    background: var(--surface2);
    color: var(--text);
    border: 1px solid var(--border);
    border-radius: 8px;
    padding: 6px 12px;
    font-size: 0.82rem;
    cursor: pointer;
}

.btn-sm[b-4wlabr5ght] { padding: 4px 10px; font-size: 0.8rem; }

.btn-ghost[b-4wlabr5ght] {
    background: none;
    border: none;
    color: var(--text-muted);
    font-size: 0.82rem;
    cursor: pointer;
    padding: 4px 8px;
    border-radius: 6px;
}
.btn-ghost:hover[b-4wlabr5ght] { color: var(--text); background: var(--overlay); }

.btn-icon[b-4wlabr5ght] {
    background: none;
    border: none;
    cursor: pointer;
    font-size: 0.8rem;
    padding: 3px 6px;
    border-radius: 6px;
    color: var(--text-muted);
    line-height: 1;
}
.btn-icon:hover[b-4wlabr5ght] { color: #dc2626; background: #fee2e2; }

/* Schedules panel */
.job-schedules[b-4wlabr5ght] {
    border-top: 1px solid var(--border);
    padding: 14px 18px;
    background: var(--surface2);
}

/* Schedule list rows */
.sched-list[b-4wlabr5ght] { margin-bottom: 12px; }

.sched-row[b-4wlabr5ght] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 7px 0;
    border-bottom: 1px solid var(--border-soft);
}

.sched-human[b-4wlabr5ght] {
    font-size: 0.88rem;
    font-weight: 500;
    min-width: 180px;
}

.sched-cron[b-4wlabr5ght] {
    font-family: monospace;
    font-size: 0.78rem;
    color: var(--text-muted);
    background: var(--overlay);
    padding: 1px 6px;
    border-radius: 4px;
}

.sched-label[b-4wlabr5ght] {
    font-size: 0.78rem;
    color: var(--text-muted);
    font-style: italic;
}

/* Toggle switch */
.sched-toggle[b-4wlabr5ght] { display: flex; align-items: center; margin-left: auto; cursor: pointer; }
.sched-toggle input[b-4wlabr5ght] { display: none; }
.toggle-track[b-4wlabr5ght] {
    width: 34px;
    height: 18px;
    background: var(--border);
    border-radius: 9px;
    position: relative;
    transition: background 0.2s;
}
.toggle-track[b-4wlabr5ght]::after {
    content: '';
    position: absolute;
    top: 3px; left: 3px;
    width: 12px; height: 12px;
    background: #fff;
    border-radius: 50%;
    transition: transform 0.2s;
}
.sched-toggle input:checked + .toggle-track[b-4wlabr5ght] { background: var(--accent); }
.sched-toggle input:checked + .toggle-track[b-4wlabr5ght]::after { transform: translateX(16px); }

/* Empty state */
.sched-empty[b-4wlabr5ght] {
    display: flex;
    align-items: center;
    gap: 10px;
    color: var(--text-muted);
    font-size: 0.85rem;
    padding: 4px 0 12px;
}

/* Add bar */
.sched-add-bar[b-4wlabr5ght] { padding-top: 10px; }

/* Builder */
.sched-builder[b-4wlabr5ght] {
    border: 1px solid var(--border);
    border-radius: var(--radius);
    padding: 14px;
    background: var(--surface);
    margin-top: 10px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.builder-row[b-4wlabr5ght] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.builder-row--label[b-4wlabr5ght] { gap: 6px; }

.builder-label[b-4wlabr5ght] {
    font-size: 0.85rem;
    color: var(--text-muted);
    white-space: nowrap;
}

.builder-select[b-4wlabr5ght] {
    background: var(--surface2);
    border: 1px solid var(--border);
    border-radius: 8px;
    padding: 5px 10px;
    font-size: 0.85rem;
    cursor: pointer;
}

.builder-select-sm[b-4wlabr5ght] {
    background: var(--surface2);
    border: 1px solid var(--border);
    border-radius: 8px;
    padding: 5px 8px;
    font-size: 0.85rem;
    cursor: pointer;
    width: 68px;
    text-align: center;
}

.builder-colon[b-4wlabr5ght] { font-weight: 600; color: var(--text-muted); }

/* Day picker chips */
.day-picker[b-4wlabr5ght] { display: flex; gap: 4px; flex-wrap: wrap; }

.day-chip[b-4wlabr5ght] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 32px;
    border-radius: 8px;
    font-size: 0.78rem;
    font-weight: 500;
    cursor: pointer;
    background: var(--surface2);
    border: 1px solid var(--border);
    user-select: none;
    transition: background 0.15s, color 0.15s, border-color 0.15s;
}

.day-chip--on[b-4wlabr5ght] {
    background: var(--accent);
    color: #fff;
    border-color: var(--accent);
}

.sr-only[b-4wlabr5ght] {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0,0,0,0);
    white-space: nowrap;
}

.input-label[b-4wlabr5ght] {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 8px;
    padding: 5px 10px;
    font-size: 0.85rem;
    width: 200px;
}

.builder-preview[b-4wlabr5ght] {
    font-size: 0.8rem;
    color: var(--text-muted);
}
.builder-preview code[b-4wlabr5ght] {
    background: var(--overlay);
    padding: 1px 5px;
    border-radius: 4px;
    font-family: monospace;
}

/* Log panel */
.job-log[b-4wlabr5ght] {
    border-top: 1px solid var(--border);
    background: #0f1117;
    color: #c8c8d8;
    padding: 12px 18px;
    font-family: 'Courier New', monospace;
    font-size: 0.78rem;
    max-height: 220px;
    overflow-y: auto;
}

.log-line[b-4wlabr5ght] { padding: 1px 0; line-height: 1.5; }
/* /Components/Pages/Prices.razor.rz.scp.css */
.prices-page[b-2n3bmbtg34] {
    padding: 20px 16px;
    max-width: 900px;
    margin: 0 auto;
}

.prices-latest[b-2n3bmbtg34],
.prices-browse[b-2n3bmbtg34] {
    margin-bottom: 40px;
}

.prices-section-header[b-2n3bmbtg34] {
    display: flex;
    align-items: baseline;
    gap: 12px;
    margin-bottom: 12px;
}

.prices-section-header h2[b-2n3bmbtg34] {
    font-size: 1.15rem;
    font-weight: 700;
    margin: 0;
}

.prices-total[b-2n3bmbtg34] {
    color: var(--text-muted);
    font-size: 0.82rem;
}

.prices-empty[b-2n3bmbtg34] {
    color: var(--text-muted);
    font-size: 0.9rem;
    padding: 24px 0;
}

/* ── table ── */
.prices-table-wrap[b-2n3bmbtg34] {
    overflow-x: auto;
    border: 1px solid var(--border);
    border-radius: var(--radius, 8px);
}

.prices-table[b-2n3bmbtg34] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.875rem;
}

.prices-table th[b-2n3bmbtg34] {
    text-align: left;
    padding: 8px 12px;
    color: var(--text-muted);
    font-weight: 600;
    font-size: 0.78rem;
    border-bottom: 1px solid var(--border);
    white-space: nowrap;
}

.prices-table td[b-2n3bmbtg34] {
    padding: 8px 12px;
    border-bottom: 1px solid var(--border-soft, #f0f0f0);
    vertical-align: middle;
}

.prices-table tbody tr:last-child td[b-2n3bmbtg34] {
    border-bottom: none;
}

.prices-table tbody tr:hover td[b-2n3bmbtg34] {
    background: var(--surface2, #f6f8fa);
}

.col-name[b-2n3bmbtg34]    { min-width: 180px; }
.col-price[b-2n3bmbtg34]   { text-align: right; white-space: nowrap; font-variant-numeric: tabular-nums; }
.col-date[b-2n3bmbtg34]    { color: var(--text-muted); white-space: nowrap; font-size: 0.8rem; }

.prices-brand[b-2n3bmbtg34] {
    display: inline-block;
    margin-left: 6px;
    color: var(--text-muted);
    font-size: 0.78rem;
}

.prices-member[b-2n3bmbtg34] {
    display: inline-block;
    margin-left: 4px;
    color: var(--accent, #0969da);
    font-size: 0.78rem;
}

.prices-loading[b-2n3bmbtg34],
.prices-empty-cell[b-2n3bmbtg34] {
    text-align: center;
    color: var(--text-muted);
    padding: 20px !important;
    font-size: 0.88rem;
}

/* ── source badge ── */
.prices-source[b-2n3bmbtg34] {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 20px;
    font-size: 0.73rem;
    font-weight: 600;
    white-space: nowrap;
}

.prices-source--tilbudsavis[b-2n3bmbtg34] { background: #dbeafe; color: #1d4ed8; }
.prices-source--webshop[b-2n3bmbtg34]     { background: #dcfce7; color: #166534; }
.prices-source--scan[b-2n3bmbtg34]        { background: #fef3c7; color: #92400e; }
.prices-source--other[b-2n3bmbtg34]       { background: var(--surface2); color: var(--text-muted); }

/* ── pager ── */
.prices-pager[b-2n3bmbtg34] {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-top: 12px;
    justify-content: center;
}

.btn-page[b-2n3bmbtg34] {
    background: var(--surface2, #f6f8fa);
    border: 1px solid var(--border);
    border-radius: 8px;
    padding: 6px 14px;
    font-size: 0.85rem;
    cursor: pointer;
}

.btn-page:disabled[b-2n3bmbtg34] {
    opacity: 0.4;
    cursor: not-allowed;
}

.prices-page-info[b-2n3bmbtg34] {
    font-size: 0.85rem;
    color: var(--text-muted);
}

/* ── source tabs ── */
.prices-source-tabs[b-2n3bmbtg34] {
    display: flex;
    gap: 4px;
    margin-bottom: 12px;
    border-bottom: 1px solid var(--border);
    padding-bottom: 0;
}

.prices-tab[b-2n3bmbtg34] {
    background: none;
    border: none;
    border-bottom: 2px solid transparent;
    padding: 8px 16px;
    font-size: 0.88rem;
    font-weight: 500;
    cursor: pointer;
    color: var(--text-muted);
    margin-bottom: -1px;
    display: flex;
    align-items: center;
    gap: 6px;
    transition: color 0.15s;
}

.prices-tab:hover[b-2n3bmbtg34] { color: var(--text); }

.prices-tab--active[b-2n3bmbtg34] {
    color: var(--accent, #0969da);
    border-bottom-color: var(--accent, #0969da);
    font-weight: 600;
}

.prices-tab-count[b-2n3bmbtg34] {
    background: var(--surface2);
    border-radius: 20px;
    padding: 1px 7px;
    font-size: 0.72rem;
    font-weight: 600;
    color: var(--text-muted);
}

/* ── search ── */
.prices-search-row[b-2n3bmbtg34] {
    position: relative;
    display: flex;
    align-items: center;
    margin-bottom: 12px;
    max-width: 360px;
}

.prices-search-input[b-2n3bmbtg34] {
    width: 100%;
    padding: 8px 36px 8px 12px;
    border: 1px solid var(--border);
    border-radius: 8px;
    font-size: 0.875rem;
    background: var(--surface);
}

.prices-search-clear[b-2n3bmbtg34] {
    position: absolute;
    right: 8px;
    background: none;
    border: none;
    cursor: pointer;
    color: var(--text-muted);
    font-size: 0.8rem;
    padding: 2px 4px;
}

.prices-search-clear:hover[b-2n3bmbtg34] { color: var(--text); }
/* /Components/Pages/ProductGraph.razor.rz.scp.css */
/* ── mode toggle ── */
.pg-mode-toggle[b-n9xpgsxy7i] {
    display: flex;
    border: 1px solid var(--border);
    border-radius: 8px;
    overflow: hidden;
}

.pg-mode-btn[b-n9xpgsxy7i] {
    background: none;
    border: none;
    padding: 5px 14px;
    font-size: .82rem;
    font-weight: 500;
    cursor: pointer;
    color: var(--text-muted);
    border-right: 1px solid var(--border);
    transition: background .12s, color .12s;
}

.pg-mode-btn:last-child[b-n9xpgsxy7i] { border-right: none; }
.pg-mode-btn:hover[b-n9xpgsxy7i] { background: var(--surface2); color: var(--text); }
.pg-mode-btn--active[b-n9xpgsxy7i] { background: var(--accent, #0969da); color: #fff; }
.pg-mode-btn--active:hover[b-n9xpgsxy7i] { background: var(--accent, #0969da); }

/* ── chain view summary strip ── */
.pg-chain-summary[b-n9xpgsxy7i] {
    display: flex;
    gap: 24px;
    flex-wrap: wrap;
    margin-bottom: 16px;
    padding: 12px 16px;
    background: var(--surface2);
    border: 1px solid var(--border);
    border-radius: 10px;
}

.pg-chain-summary-item[b-n9xpgsxy7i] {
    display: flex;
    flex-direction: column;
    align-items: center;
    min-width: 60px;
}

.pg-chain-summary-val[b-n9xpgsxy7i] {
    font-size: 1.3rem;
    font-weight: 700;
    line-height: 1.1;
}

.pg-chain-summary-lbl[b-n9xpgsxy7i] {
    font-size: .72rem;
    color: var(--text-muted);
    margin-top: 2px;
}

.pg-chain-summary-item--tilbud .pg-chain-summary-val[b-n9xpgsxy7i] { color: #1d4ed8; }
.pg-chain-summary-item--web    .pg-chain-summary-val[b-n9xpgsxy7i] { color: #166534; }
.pg-chain-summary-item--scan   .pg-chain-summary-val[b-n9xpgsxy7i] { color: #92400e; }

/* ── legend ── */
.pg-chain-legend[b-n9xpgsxy7i] {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: .78rem;
    color: var(--text-muted);
    margin-bottom: 12px;
}

.pg-leg-dot[b-n9xpgsxy7i] {
    display: inline-block;
    width: 10px;
    height: 10px;
    border-radius: 2px;
}

.pg-leg-dot--tilbud[b-n9xpgsxy7i] { background: #3b82f6; }
.pg-leg-dot--web[b-n9xpgsxy7i]    { background: #22c55e; }
.pg-leg-dot--scan[b-n9xpgsxy7i]   { background: #f59e0b; }
.pg-leg-dot--other[b-n9xpgsxy7i]  { background: #94a3b8; }

/* ── chain rows ── */
.pg-chain-list[b-n9xpgsxy7i] {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.pg-chain-row[b-n9xpgsxy7i] {
    display: grid;
    grid-template-columns: 130px 1fr auto;
    align-items: center;
    gap: 12px;
}

.pg-chain-name[b-n9xpgsxy7i] {
    font-weight: 600;
    font-size: .88rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.pg-chain-bar-wrap[b-n9xpgsxy7i] {
    flex: 1;
    background: var(--surface2);
    border-radius: 6px;
    height: 22px;
    overflow: hidden;
    border: 1px solid var(--border-soft, #eee);
}

.pg-chain-bar[b-n9xpgsxy7i] {
    height: 100%;
    display: flex;
    min-width: 2px;
    transition: width .3s ease;
}

.pg-bar-seg[b-n9xpgsxy7i] {
    height: 100%;
}

.pg-bar-seg--tilbud[b-n9xpgsxy7i] { background: #3b82f6; }
.pg-bar-seg--web[b-n9xpgsxy7i]    { background: #22c55e; }
.pg-bar-seg--scan[b-n9xpgsxy7i]   { background: #f59e0b; }
.pg-bar-seg--other[b-n9xpgsxy7i]  { background: #94a3b8; }

.pg-chain-counts[b-n9xpgsxy7i] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 1px;
    min-width: 180px;
}

.pg-chain-total[b-n9xpgsxy7i] {
    font-size: .9rem;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
}

.pg-chain-prods[b-n9xpgsxy7i] {
    font-size: .72rem;
    color: var(--text-muted);
}

.pg-chain-detail[b-n9xpgsxy7i] {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    justify-content: flex-end;
}

.pg-ct[b-n9xpgsxy7i] {
    font-size: .7rem;
    padding: 1px 6px;
    border-radius: 20px;
    font-weight: 600;
    white-space: nowrap;
}

.pg-ct--tilbud[b-n9xpgsxy7i] { background: #dbeafe; color: #1d4ed8; }
.pg-ct--web[b-n9xpgsxy7i]    { background: #dcfce7; color: #166534; }
.pg-ct--scan[b-n9xpgsxy7i]   { background: #fef3c7; color: #92400e; }
.pg-ct--other[b-n9xpgsxy7i]  { background: var(--surface2); color: var(--text-muted); border: 1px solid var(--border); }

/* ── clickable chain rows ── */
.pg-chain-row--clickable[b-n9xpgsxy7i] {
    cursor: pointer;
    border-radius: 8px;
    padding: 4px 8px;
    margin: 0 -8px;
    transition: background .12s;
}
.pg-chain-row--clickable:hover[b-n9xpgsxy7i] { background: var(--surface2); }

/* ── per-chain detail ── */
.pg-detail-header[b-n9xpgsxy7i] {
    margin-bottom: 16px;
}

.pg-detail-source-blocks[b-n9xpgsxy7i] {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin-bottom: 12px;
}

.pg-detail-block[b-n9xpgsxy7i] {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 10px 18px;
    border-radius: 10px;
    border: 1px solid var(--border);
    background: var(--surface2);
    min-width: 80px;
}

.pg-detail-block--tilbud[b-n9xpgsxy7i] { border-color: #93c5fd; background: #dbeafe; }
.pg-detail-block--web[b-n9xpgsxy7i]    { border-color: #86efac; background: #dcfce7; }
.pg-detail-block--scan[b-n9xpgsxy7i]   { border-color: #fcd34d; background: #fef3c7; }
.pg-detail-block--other[b-n9xpgsxy7i]  { border-color: var(--border); }

.pg-detail-val[b-n9xpgsxy7i] {
    font-size: 1.4rem;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
    line-height: 1.1;
}

.pg-detail-lbl[b-n9xpgsxy7i] {
    font-size: .72rem;
    color: var(--text-muted);
    margin-top: 3px;
}

.pg-detail-block--tilbud .pg-detail-val[b-n9xpgsxy7i] { color: #1d4ed8; }
.pg-detail-block--web    .pg-detail-val[b-n9xpgsxy7i] { color: #166534; }
.pg-detail-block--scan   .pg-detail-val[b-n9xpgsxy7i] { color: #92400e; }

.pg-detail-bar-wrap[b-n9xpgsxy7i] {
    display: flex;
    height: 28px;
    border-radius: 8px;
    overflow: hidden;
    border: 1px solid var(--border-soft, #eee);
    background: var(--surface2);
}

/* ── detail table ── */
.pg-detail-table[b-n9xpgsxy7i] {
    width: 100%;
    border-collapse: collapse;
    font-size: .875rem;
}

.pg-detail-table th[b-n9xpgsxy7i] {
    text-align: left;
    padding: 8px 12px;
    color: var(--text-muted);
    font-weight: 600;
    font-size: .78rem;
    border-bottom: 1px solid var(--border);
    white-space: nowrap;
}

.pg-detail-table td[b-n9xpgsxy7i] {
    padding: 8px 12px;
    border-bottom: 1px solid var(--border-soft, #f0f0f0);
}

.pg-detail-table tbody tr:last-child td[b-n9xpgsxy7i] { border-bottom: none; }
.pg-detail-table tbody tr:hover td[b-n9xpgsxy7i] { background: var(--surface2); }

.col-r[b-n9xpgsxy7i] { text-align: right; }

.pg-detail-brand[b-n9xpgsxy7i] {
    margin-left: 6px;
    color: var(--text-muted);
    font-size: .78rem;
}
