:root {
  --ui-scale: 1;
  --ui-scale-width: 100%;
  --ui-scale-height: 100vh;
  --canvas: #f6f8fb;
  --paper: #ffffff;
  --ink: #16212b;
  --muted: #697887;
  --line: #dfe6ed;
  --line-strong: #ccd7e1;
  --green: #16785e;
  --green-soft: #e6f4ee;
  --accent-light: #9fdac6;
  --accent-hover: #11634d;
  --red: #c34f43;
  --red-soft: #fbeceb;
  --yellow: #bf7c19;
  --yellow-soft: #fff4de;
  --blue: #316f9c;
  --blue-soft: #eaf3fa;
  --sidebar: #172329;
  --sidebar-muted: #93a4a8;
  --sidebar-line: #2a3a40;
  --radius: 7px;
  --shadow: 0 5px 18px rgba(22, 33, 43, 0.045);
}

* { box-sizing: border-box; }
html { min-width: 320px; overflow-x: clip; background: var(--canvas); }
body { width: 100%; min-width: 0; margin: 0; color: var(--ink); background: var(--canvas); font-family: "Onest", Arial, sans-serif; font-size: 14px; letter-spacing: 0; }
.table-status.resolved { color: #12634d; background: var(--green-soft); }
.table-status.ai_checked { color: #99610c; background: var(--yellow-soft); }
.load-more-matches { width: 100%; min-height: 46px; color: #176f58; background: #f7fbf9; border: 0; border-top: 1px solid var(--line); font-size: 11px; font-weight: 800; }
.ai-recommendation { margin-top: 10px; padding: 11px 13px; background: #eef6fb; border: 1px solid #cddfea; border-radius: 5px; }.ai-recommendation span { display: block; margin-bottom: 4px; color: #527a92; font-size: 9px; font-weight: 800; letter-spacing: .06em; }.ai-recommendation strong { display: block; color: #304c5d; font-size: 12px; }.ai-recommendation small { display: block; margin-top: 5px; color: #68808e; font-size: 10px; line-height: 1.4; }
@media (max-width: 760px) { .mini-offer { grid-template-columns: minmax(0, 1fr) 62px; gap: 11px; padding: 11px 0; }.mini-offer > div:nth-child(2) { grid-column: 1 / -1; }.supplier-tag { grid-column: 1; text-align: left; }.saving { grid-column: 2; grid-row: 3; } }
button, input { font: inherit; }
button { cursor: pointer; }

.app-shell { width: var(--ui-scale-width); min-height: var(--ui-scale-height); transform: scale(var(--ui-scale)); transform-origin: top left; display: grid; grid-template-columns: 252px minmax(0, 1fr); }
.sidebar { position: sticky; top: 0; height: 100vh; padding: 24px 15px 17px; display: flex; flex-direction: column; background: var(--sidebar); color: #eff7f5; border-right: 1px solid #26363c; }
.brand { display: flex; align-items: center; gap: 10px; padding: 3px 9px 31px; color: #fff; font-family: "Manrope", Arial, sans-serif; font-size: 20px; font-weight: 800; letter-spacing: 0; text-decoration: none; }
.brand > span:last-child span { color: var(--accent-light); }
.brand-mark { width: 28px; height: 28px; display: inline-flex; align-items: flex-end; gap: 3px; padding: 6px; background: var(--green); border-radius: 6px; }
.brand-mark span { width: 4px; display: block; background: #fff; border-radius: 1px; }
.brand-mark span:nth-child(1) { height: 8px; }.brand-mark span:nth-child(2) { height: 13px; }.brand-mark span:nth-child(3) { height: 18px; }
.workspace-label { padding: 0 12px 10px; color: #829399; font-size: 10px; font-weight: 700; letter-spacing: .08em; }
.nav-list { display: grid; gap: 3px; }
.nav-item { min-height: 42px; padding: 0 12px; display: flex; align-items: center; gap: 10px; width: 100%; color: #b4c1c4; border: 0; border-radius: 5px; background: transparent; text-align: left; transition: background .18s, color .18s; }
.nav-item:hover { color: #fff; background: rgba(255,255,255,.05); }
.nav-item.active { color: #fff; background: #293c3d; }
.nav-item b { min-width: 20px; margin-left: auto; padding: 2px 6px; color: #17302b; background: var(--accent-light); border-radius: 10px; font-size: 11px; text-align: center; }
.nav-dot { width: 7px; height: 7px; border: 1.5px solid currentColor; border-radius: 50%; opacity: .85; }.nav-item.active .nav-dot { background: var(--accent-light); border-color: var(--accent-light); }
.sidebar-footer { margin-top: auto; padding-top: 14px; border-top: 1px solid var(--sidebar-line); }
.account { display: flex; align-items: center; gap: 10px; margin: 16px 9px 0; color: #edf4f2; }.account strong, .account small { display: block; }.account strong { font-size: 12px; }.account small { margin-top: 3px; color: var(--sidebar-muted); font-size: 10px; }
.avatar { width: 29px; height: 29px; display: grid; place-items: center; color: #14332a; background: #c2e3d6; border-radius: 50%; font-size: 10px; font-weight: 800; }

.main-area { min-width: 0; }
.topbar { height: 72px; display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 0 clamp(24px, 4vw, 62px); background: rgba(246,248,251,.88); border-bottom: 1px solid var(--line); }
.crumbs { display: flex; align-items: center; gap: 9px; color: var(--muted); font-size: 12px; }.crumbs i { width: 4px; height: 4px; background: var(--line-strong); border-radius: 50%; }.crumbs strong { color: var(--ink); }
.topbar-actions, .toolbar { display: flex; align-items: center; gap: 10px; }
.primary-button, .secondary-button, .small-button, .text-button { border-radius: 5px; font-weight: 700; transition: border-color .15s, background .15s; }.primary-button { min-height: 37px; padding: 0 14px; color: #fff; background: var(--green); border: 1px solid var(--green); }.primary-button:hover { background: #11634d; }.secondary-button { min-height: 37px; padding: 0 13px; color: #344653; background: #fff; border: 1px solid var(--line-strong); }.secondary-button:hover, .small-button:hover { border-color: #9dadba; background: #f9fbfc; }.small-button { min-height: 31px; padding: 0 10px; color: #46606e; background: #fff; border: 1px solid var(--line); font-size: 11px; }.text-button { display: inline-flex; align-items: center; gap: 8px; min-height: 35px; padding: 0; color: var(--green); background: transparent; border: 0; }.text-button span { font-size: 18px; line-height: 1; }.secondary-button:disabled { color: #9daab4; background: #f3f5f7; border-color: #e5e9ed; cursor: not-allowed; }

.view { display: none; max-width: 1800px; margin: 0 auto; padding: 37px clamp(24px, 2.8vw, 48px) 50px; }.view.active { display: block; }.title-row { display: flex; justify-content: space-between; align-items: flex-end; gap: 24px; margin-bottom: 27px; }.title-row.tight { align-items: center; }.eyebrow, .section-kicker { margin: 0 0 8px; color: var(--green); font-size: 10px; font-weight: 800; letter-spacing: .085em; }.section-kicker { color: #7c8b96; }h1, h2, h3 { margin: 0; font-family: "Manrope", Arial, sans-serif; letter-spacing: 0; }h1 { font-size: 28px; line-height: 1.24; }h2 { font-size: 16px; line-height: 1.3; }.muted { margin: 7px 0 0; color: var(--muted); line-height: 1.5; }
.metric-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 12px; margin-bottom: 15px; }.metric { min-height: 148px; padding: 20px; background: var(--paper); border: 1px solid var(--line); border-top-width: 3px; border-radius: var(--radius); box-shadow: var(--shadow); }.metric-success { border-top-color: var(--green); }.metric-alert { border-top-color: var(--red); }.metric-review { border-top-color: var(--yellow); }.metric-neutral { border-top-color: var(--blue); }.metric-label { color: var(--muted); font-size: 12px; font-weight: 600; }.metric strong { display: block; margin: 14px 0 8px; font-family: "Manrope", Arial, sans-serif; font-size: 31px; line-height: 1; }.metric-note { color: #7d8a94; font-size: 11px; }.trend { margin-right: 5px; font-weight: 800; }.trend.up { color: var(--green); }
.content-grid { display: grid; grid-template-columns: minmax(0, 1.48fr) minmax(310px, .82fr); gap: 15px; margin-bottom: 15px; }.surface { background: var(--paper); border: 1px solid var(--line); border-radius: var(--radius); box-shadow: var(--shadow); }.surface-header { min-height: 72px; padding: 17px 20px; display: flex; align-items: center; justify-content: space-between; gap: 15px; border-bottom: 1px solid var(--line); }.surface-header.compact { min-height: 63px; }.surface-header .section-kicker { margin-bottom: 3px; }.mini-offer-list { padding: 4px 20px 7px; }.mini-offer { min-height: 89px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 68px 60px; align-items: center; gap: 14px; border-bottom: 1px solid #edf0f3; }.mini-offer:last-child { border-bottom: 0; }.pair-label { display: block; margin-bottom: 4px; color: #5f897b; font-size: 9px; font-weight: 800; letter-spacing: .06em; }.product-name { color: #263540; font-weight: 700; line-height: 1.35; }.product-meta { margin-top: 4px; color: #81909a; font-size: 11px; }.supplier-tag { color: #47606d; font-size: 11px; text-align: right; }.supplier-tag small { display: block; margin-top: 3px; color: #81909a; font-size: 9px; }.saving { color: var(--green); font-size: 13px; font-weight: 800; text-align: right; }
.coverage-surface { padding-bottom: 14px; }.status-chip, .table-status { display: inline-flex; align-items: center; min-height: 23px; padding: 0 7px; border-radius: 4px; font-size: 10px; font-weight: 800; white-space: nowrap; }.stable, .table-status.winner { color: #12634d; background: var(--green-soft); }.status-chip.review, .table-status.review { color: #99610c; background: var(--yellow-soft); }.table-status.risk { color: #a23f35; background: var(--red-soft); }.coverage-total { display: flex; align-items: center; gap: 12px; padding: 19px 20px 14px; }.coverage-total strong { color: var(--ink); font-family: "Manrope"; font-size: 29px; }.coverage-total span { color: var(--muted); font-size: 11px; line-height: 1.4; }.coverage-bar { height: 8px; margin: 0 20px; overflow: hidden; display: flex; background: #eff2f4; border-radius: 5px; }.coverage-bar span { height: 100%; }.coverage-auto, .legend-auto { background: var(--green); }.coverage-manual, .legend-manual { background: #4d91c2; }.coverage-ai, .legend-ai { background: #e0a942; }.coverage-pending, .legend-pending { background: #8a9aa4; }.coverage-excluded, .legend-excluded { background: #c65b55; }.coverage-legend { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 16px; padding: 14px 20px 0; color: var(--muted); font-size: 10px; }.coverage-legend span { display: flex; align-items: center; gap: 7px; min-width: 0; }.coverage-legend i { width: 7px; height: 7px; flex: 0 0 auto; display: inline-block; border-radius: 50%; }.coverage-legend b { margin-left: auto; color: #4d606c; white-space: nowrap; }.surface-footnote { margin: 15px 20px 0; padding-top: 12px; color: #8b6a2b; border-top: 1px solid #f0ece2; font-size: 10px; line-height: 1.45; }
.supplier-surface { margin-top: 15px; }.supplier-overview { display: grid; grid-template-columns: repeat(4, 1fr); }.supplier-item { min-height: 96px; padding: 17px 20px; border-right: 1px solid var(--line); }.supplier-item:last-child { border-right: 0; }.supplier-item strong { display: block; font-size: 13px; }.supplier-item p { margin: 6px 0 0; color: var(--muted); font-size: 11px; }.supplier-item b { display: block; margin-top: 11px; color: #354a57; font-size: 11px; }

.toolbar { align-self: flex-end; }.search-field { width: min(295px, 35vw); height: 37px; display: flex; align-items: center; gap: 6px; padding: 0 10px; background: #fff; border: 1px solid var(--line-strong); border-radius: 5px; }.search-field span { color: #80909b; font-size: 20px; line-height: 1; }.search-field input { min-width: 0; width: 100%; color: var(--ink); outline: 0; border: 0; background: transparent; font-size: 12px; }.filter-row { display: flex; gap: 7px; margin-bottom: 14px; }.filter-button { min-height: 31px; padding: 0 9px; color: #5c6d78; background: transparent; border: 1px solid var(--line-strong); border-radius: 4px; font-size: 11px; }.filter-button b { margin-left: 3px; color: #8a98a1; }.filter-button.active { color: #0e6550; background: var(--green-soft); border-color: #b5dbc9; }.table-surface { overflow: hidden; }.table-scroll { overflow-x: auto; overflow-y: hidden; }.offers-table, .catalog-table { width: 100%; border-collapse: collapse; text-align: left; }.offers-table { min-width: 1180px; }.offers-table th:last-child, .offers-table td:last-child { width: 160px; min-width: 160px; padding-right: 22px; white-space: nowrap; }.offers-table th:last-child { position: sticky; right: 0; z-index: 3; background: #fbfcfd; box-shadow: -10px 0 12px -12px rgba(35, 54, 65, .55); }.offers-table td:last-child { position: sticky; right: 0; z-index: 2; background: var(--paper); box-shadow: -10px 0 12px -12px rgba(35, 54, 65, .55); }.offers-table tbody tr:hover td:last-child { background: #fbfdfd; }.catalog-table { min-width: 890px; }th { height: 39px; padding: 0 18px; color: #778793; background: #fbfcfd; border-bottom: 1px solid var(--line); font-size: 10px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; white-space: nowrap; }td { padding: 13px 18px; color: #3a4c58; border-bottom: 1px solid #edf1f4; font-size: 12px; vertical-align: middle; }.offers-table tbody tr, .catalog-table tbody tr { transition: background .15s; }.offers-table tbody tr:last-child td, .catalog-table tbody tr:last-child td { border-bottom: 0; }.offers-table tbody tr:hover, .catalog-table tbody tr:hover { background: #fbfdfd; }.row-product { max-width: 300px; color: #233540; font-weight: 700; line-height: 1.36; }.row-sub { margin-top: 4px; color: #84919b; font-size: 10px; }.price { color: #233540; font-weight: 800; white-space: nowrap; }.price-sub { color: #82909a; font-size: 10px; }.purchase-history { min-width: 140px; display: grid; grid-template-columns: auto auto; gap: 3px 8px; color: #6d7d87; font-size: 10px; line-height: 1.25; }.purchase-history b { color: #334955; font-size: 11px; text-align: right; }.purchase-history .latest-label, .purchase-history .latest-value { color: #176f58; font-weight: 800; }.delta-positive { color: var(--green); font-weight: 800; }.delta-negative { color: var(--red); font-weight: 800; }.stock { color: #566b78; font-size: 11px; line-height: 1.55; }.risk-text { color: #aa6a0f; }

.queue-actions { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 8px; }.queue-badge { padding: 9px 12px; color: #8c601a; background: var(--yellow-soft); border: 1px solid #f1d8a9; border-radius: 5px; font-size: 11px; font-weight: 700; }.queue-badge span { color: #9b5b08; font-size: 18px; }.batch-selector { display: inline-flex; padding: 2px; background: #e8eef1; border-radius: 5px; }.batch-selector button { min-width: 36px; min-height: 30px; padding: 0 7px; color: #60717c; background: transparent; border: 0; border-radius: 3px; font-size: 10px; font-weight: 800; }.batch-selector button.active { color: #214c40; background: #fff; box-shadow: 0 1px 3px rgba(22, 37, 43, .12); }.bulk-ai-status { max-width: 265px; color: #71818c; font-size: 10px; line-height: 1.35; }.bulk-cancel-button { min-height: 37px; white-space: nowrap; }.match-layout { display: grid; grid-template-columns: minmax(430px, 1.15fr) minmax(350px, .85fr); gap: 15px; }.match-list-surface { overflow: hidden; }.list-header { display: grid; grid-template-columns: minmax(0, 1fr) 92px; padding: 13px 18px; color: #7d8c96; background: #fbfcfd; border-bottom: 1px solid var(--line); font-size: 10px; font-weight: 800; letter-spacing: .06em; }.match-row { width: 100%; min-height: 108px; display: grid; grid-template-columns: minmax(0, 1fr) 92px; gap: 16px; padding: 13px 18px; color: inherit; background: #fff; border: 0; border-bottom: 1px solid #edf1f4; text-align: left; }.match-row:hover, .match-row.active { background: #f4faf7; }.match-row:last-child { border-bottom: 0; }.match-source { margin-bottom: 4px; color: #8a672e; font-size: 10px; font-weight: 700; }.match-pair { display: grid; gap: 10px; }.match-target { padding-top: 9px; border-top: 1px solid #e4ece9; }.match-target span, .catalog-link > span { display: block; margin-bottom: 4px; color: #5e8879; font-size: 9px; font-weight: 800; letter-spacing: .06em; }.match-target strong { display: block; color: #29404c; font-size: 11px; line-height: 1.35; }.match-target small { display: block; margin-top: 3px; color: #70818c; font-size: 10px; }.confidence { display: grid; place-items: center; align-content: center; gap: 4px; font-size: 11px; font-weight: 800; }.confidence span { width: 54px; height: 4px; display: block; overflow: hidden; background: #edf1f3; border-radius: 3px; }.confidence i { display: block; height: 4px; background: var(--yellow); border-radius: 3px; }.match-detail { min-height: 460px; padding: 23px; }.detail-label { margin: 0 0 7px; color: #74848e; font-size: 10px; font-weight: 800; letter-spacing: .07em; }.detail-name { max-width: 390px; color: #21333e; font-family: "Manrope"; font-size: 18px; line-height: 1.36; }.detail-meta { display: flex; flex-wrap: wrap; gap: 6px; margin: 15px 0; }.detail-meta span { padding: 4px 6px; color: #526570; background: #f0f4f6; border-radius: 3px; font-size: 10px; }.catalog-link { margin-top: 18px; padding: 13px; background: #f3faf6; border: 1px solid #cfe3d9; border-radius: 5px; }.catalog-link strong { display: block; color: #29404c; font-size: 13px; line-height: 1.35; }.catalog-link small { display: block; margin-top: 5px; color: #70818c; font-size: 10px; }.candidate-block { margin-top: 23px; padding-top: 17px; border-top: 1px solid var(--line); }.candidate-title { margin-bottom: 10px; color: #6e7d87; font-size: 11px; font-weight: 700; }.candidate { width: 100%; padding: 12px; margin-bottom: 8px; color: inherit; background: #fff; border: 1px solid var(--line); border-radius: 5px; cursor: pointer; text-align: left; }.candidate:hover, .candidate:focus-visible { border-color: #8fbea9; outline: 0; }.candidate.selected { border-color: #4a8b73; background: #f1faf6; }.candidate strong { display: block; color: #29404c; font-size: 12px; line-height: 1.35; }.candidate small { display: block; margin-top: 5px; color: #70818c; font-size: 10px; }.candidate b { display: inline-block; margin-top: 7px; color: var(--green); font-size: 11px; }.detail-actions { display: flex; gap: 8px; margin-top: 22px; }.danger-button { min-height: 37px; padding: 0 12px; color: var(--red); background: #fff; border: 1px solid #e7bbb6; border-radius: 5px; font-weight: 700; }

.catalog-total { color: #1e3540; font-family: "Manrope"; font-size: 25px; font-weight: 800; text-align: right; }.catalog-total span { display: block; margin-top: 2px; color: var(--muted); font-family: "Onest"; font-size: 10px; font-weight: 500; }.barcode-count { color: #4a8b73; font-size: 11px; font-weight: 700; }.catalog-control-surface { margin-bottom: 15px; overflow: hidden; }.catalog-control-body { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 18px 20px; }.catalog-control-body strong { display: block; color: #304650; font-size: 12px; }.catalog-control-body p { max-width: 800px; margin: 7px 0 0; color: var(--muted); font-size: 11px; line-height: 1.5; }.catalog-control-actions { display: flex; flex: 0 0 auto; align-items: center; gap: 9px; }.catalog-control-actions button:disabled { opacity: .55; cursor: not-allowed; }.catalog-update-status { padding: 11px 20px; color: #5b6e78; background: #f8fafb; border-top: 1px solid var(--line); font-size: 11px; line-height: 1.45; }.catalog-update-status.success { color: #2f6e58; background: var(--green-soft); }.catalog-update-status.warning { color: #8b5f22; background: var(--yellow-soft); }.catalog-update-status.working { color: #456e81; background: var(--blue-soft); }
.import-layout { display: grid; grid-template-columns: minmax(0,1.32fr) minmax(300px,.68fr); gap: 15px; margin-bottom: 15px; }.upload-zone { min-height: 260px; padding: 33px 24px; display: grid; place-items: center; align-content: center; color: #586d79; background: #fff; border: 1.5px dashed #aebdc8; border-radius: var(--radius); text-align: center; outline: 0; transition: background .15s, border-color .15s; }.upload-zone:hover, .upload-zone:focus, .upload-zone.dragover { background: #f4fbf8; border-color: var(--green); }.upload-zone h2 { margin-top: 12px; font-size: 17px; }.upload-zone p { max-width: 365px; margin: 8px 0 17px; color: var(--muted); font-size: 12px; line-height: 1.55; }.upload-zone small { margin-top: 13px; color: #8b99a1; font-size: 10px; }.upload-glyph { width: 31px; height: 31px; display: grid; place-items: center; color: var(--green); background: var(--green-soft); border-radius: 50%; font-size: 22px; font-weight: 400; }.import-rules { padding: 22px; }.import-rules h2 { font-size: 16px; }.import-rules ol { margin: 17px 0 0; padding-left: 20px; color: #536671; font-size: 12px; line-height: 2; }.import-rules li::marker { color: var(--green); font-weight: 800; }.rule-note { margin: 19px 0 0; padding-top: 14px; color: #8b6b2f; border-top: 1px solid #eee7d8; font-size: 10px; line-height: 1.45; }.import-history { overflow: hidden; }.import-row { min-height: 62px; display: grid; grid-template-columns: minmax(200px,1.6fr) 120px 90px 124px; align-items: center; gap: 13px; padding: 0 20px; border-bottom: 1px solid #edf1f4; }.import-row:last-child { border-bottom: 0; }.import-file { color: #324752; font-size: 12px; font-weight: 700; }.import-file small, .import-row > span { display: block; margin-top: 4px; color: #82919b; font-size: 10px; }.import-state { color: var(--green); font-size: 11px; font-weight: 700; }.import-state.pending { color: var(--yellow); }.file-pill { display: inline-flex; width: max-content; padding: 3px 5px; color: #5e7080; background: #eef2f5; border-radius: 3px; font-size: 10px; font-weight: 800; }
.settings-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 15px; }.settings-section { min-height: 265px; padding: 23px; }.settings-section h2 { margin-bottom: 20px; }.ai-settings-section { grid-column: 1 / -1; min-height: 0; }.setting-line { min-height: 49px; display: flex; align-items: center; justify-content: space-between; gap: 15px; color: #415560; border-top: 1px solid #edf1f4; font-size: 12px; }.setting-line input { width: 32px; height: 18px; accent-color: var(--green); }.ai-state { display: flex; align-items: flex-start; gap: 10px; min-height: 111px; padding: 14px; margin-bottom: 15px; background: #f6f8fa; border: 1px solid #e3e9ed; border-radius: 5px; }.ai-state > span { width: 8px; height: 8px; margin-top: 4px; background: #c7d0d6; border-radius: 50%; }.ai-state strong { color: #415661; font-size: 12px; }.ai-state p { margin: 5px 0 0; color: #768690; font-size: 11px; line-height: 1.45; }
.setting-line select, .setting-line input[type="number"] { width: 150px; min-height: 31px; padding: 0 8px; color: #334b57; background: #fff; border: 1px solid #d7e0e5; border-radius: 4px; font: inherit; outline: 0; }.setting-line select:focus, .setting-line input[type="number"]:focus { border-color: var(--green); box-shadow: 0 0 0 3px rgba(74,139,115,.12); }.setting-line input[type="number"] { width: 74px; text-align: right; }.ai-state.active > span { background: var(--green); }
.ai-settings-section select[data-business-rule="ai_budget"] { width: 270px; }.rule-guide { margin-top: 17px; padding-top: 14px; border-top: 1px solid #e7edf0; }.rule-guide summary { position: relative; padding-left: 16px; color: #315f51; cursor: pointer; font-size: 11px; font-weight: 800; list-style: none; }.rule-guide summary::-webkit-details-marker { display: none; }.rule-guide summary::before { position: absolute; top: 0; left: 0; content: "+"; color: #4a8b73; }.rule-guide[open] summary::before { content: "-"; }.rule-guide p { margin: 9px 0 0; color: #60737e; font-size: 11px; line-height: 1.5; }.rule-guide p + p { margin-top: 8px; }.rule-guide b { color: #3d5360; }.rule-guide .guide-demo { padding-left: 9px; color: #82652c; border-left: 2px solid #e7bd65; }
.source-profile-surface { margin-bottom: 15px; overflow: hidden; }.source-profile-list { padding: 0 20px; }.source-profile-row { min-height: 74px; display: grid; grid-template-columns: minmax(220px,1.75fr) repeat(5,minmax(72px,.55fr)); align-items: center; gap: 14px; border-top: 1px solid #edf1f4; }.source-profile-row strong, .source-profile-row small, .source-profile-row span, .source-profile-row b { display: block; }.source-profile-row strong { color: #314753; font-size: 12px; }.source-profile-row small { margin-top: 4px; overflow: hidden; color: #81909a; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }.source-profile-row span { margin-bottom: 4px; color: #83919a; font-size: 10px; }.source-profile-row b { color: #416e60; font-size: 12px; }
.toast { position: fixed; right: 24px; bottom: 24px; z-index: 5; max-width: 360px; padding: 13px 15px; color: #fff; background: #273a40; border-radius: 5px; box-shadow: 0 10px 30px rgba(18,37,43,.2); font-size: 12px; transform: translateY(100px); opacity: 0; pointer-events: none; transition: transform .2s, opacity .2s; }.toast.show { transform: translateY(0); opacity: 1; }
.auth-pending .app-shell, .auth-pending .toast { display: none; }
.auth-gate { position: fixed; inset: 0; z-index: 20; display: grid; place-items: center; padding: 24px; background: radial-gradient(circle at top right, #e9f3ee, #f4f7f8 48%, #eaf0f2); }
.auth-card { width: min(100%, 430px); padding: 34px; color: #334955; background: #fff; border: 1px solid #dbe5e8; border-radius: 12px; box-shadow: 0 22px 60px rgba(30, 54, 64, .16); }.auth-card h1 { margin: 5px 0 8px; font-family: "Manrope"; font-size: 30px; }.auth-card > p { color: #61737d; font-size: 13px; line-height: 1.55; }.auth-mark { display: grid; width: 42px; height: 42px; place-items: center; margin-bottom: 20px; color: #fff; background: var(--green); border-radius: 10px; font: 800 15px "Manrope"; }.login-form { display: grid; gap: 14px; margin-top: 23px; }.login-form label, .staff-create-form label, .staff-row label { display: grid; gap: 6px; color: #6a7c86; font-size: 10px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }.login-form input, .staff-create-form input, .staff-create-form select, .staff-row input, .staff-row select { min-height: 37px; padding: 0 9px; color: #2f4753; background: #fff; border: 1px solid #cfdae0; border-radius: 4px; font: 500 12px "Onest"; letter-spacing: normal; text-transform: none; }.login-form input:focus, .staff-create-form input:focus, .staff-create-form select:focus, .staff-row input:focus, .staff-row select:focus { border-color: var(--green); outline: 0; box-shadow: 0 0 0 3px rgba(74,139,115,.12); }.auth-error { margin-top: 18px; padding: 10px 12px; color: #9b4138 !important; background: #fff2f0; border: 1px solid #efc8c3; border-radius: 5px; }.auth-note { margin-top: 20px; padding: 13px; color: #6e5c2a !important; background: #fff8e7; border: 1px solid #eeddae; border-radius: 5px; }.auth-note code { color: #4c5b63; font-size: 11px; }.account { gap: 9px; }.account-logout { margin-left: auto; padding: 4px 0; color: #73838c; background: transparent; border: 0; font-size: 10px; }.account-logout:hover { color: var(--red); }.staff-management-section { grid-column: 1 / -1; min-height: 0; }.staff-management-section > .muted { max-width: 760px; margin: -9px 0 18px; line-height: 1.5; }.staff-create-form { display: grid; grid-template-columns: 1.1fr 1fr .85fr 1.2fr auto; gap: 10px; align-items: end; padding: 14px 0 18px; border-bottom: 1px solid var(--line); }.staff-create-form button { white-space: nowrap; }.staff-list { display: grid; }.staff-row { display: grid; grid-template-columns: minmax(180px, 1.2fr) minmax(120px, .7fr) 100px minmax(150px, .9fr) auto; gap: 11px; align-items: end; padding: 13px 0; border-bottom: 1px solid #edf1f4; }.staff-row:last-child { border-bottom: 0; }.staff-row strong { display: block; color: #314753; font-size: 12px; }.staff-row small { display: block; margin-top: 4px; color: #81909a; font-size: 10px; }.staff-active { display: flex !important; align-items: center; min-height: 37px; gap: 7px; letter-spacing: 0 !important; text-transform: none !important; }.staff-active input { min-height: 0; accent-color: var(--green); }

.appearance-section { grid-column: 1 / -1; padding: 22px; }.appearance-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; }.appearance-heading .section-kicker { margin-bottom: 4px; }.appearance-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0 24px; margin-top: 18px; }.appearance-option, .appearance-toggle { min-height: 77px; display: flex; align-items: center; justify-content: space-between; gap: 14px; border-top: 1px solid var(--line); }.appearance-label { color: #435963; font-size: 12px; font-weight: 700; }.segmented-control { display: inline-flex; padding: 3px; background: #e8eef1; border-radius: 5px; }.segmented-control button { min-height: 29px; padding: 0 9px; color: #647782; background: transparent; border: 0; border-radius: 3px; font-size: 10px; font-weight: 800; }.segmented-control button.active { color: var(--ink); background: #fff; box-shadow: 0 1px 3px rgba(22, 33, 43, .12); }.accent-swatches { display: flex; align-items: center; gap: 9px; }.accent-swatch { width: 22px; height: 22px; padding: 0; border: 2px solid transparent; border-radius: 50%; box-shadow: inset 0 0 0 1px rgba(16, 28, 35, .12); }.accent-swatch.active { border-color: var(--ink); box-shadow: 0 0 0 3px var(--paper), 0 0 0 4px var(--green); }.accent-swatch.jade { background: #16785e; }.accent-swatch.ocean { background: #1f7a9b; }.accent-swatch.indigo { background: #4a62b2; }.accent-swatch.berry { background: #a94e63; }.scale-control { display: grid; grid-template-columns: 29px minmax(100px, 1fr) 43px 29px; align-items: center; gap: 8px; min-width: 230px; }.scale-step { width: 29px; height: 29px; padding: 0; color: #37515d; background: #fff; border: 1px solid var(--line-strong); border-radius: 4px; font-size: 18px; line-height: 1; }.scale-step:hover { color: var(--green); border-color: var(--green); }.scale-control input { width: 100%; accent-color: var(--green); }.scale-control output { color: #415862; font-size: 11px; font-weight: 800; text-align: center; }.appearance-toggle { cursor: pointer; }.appearance-toggle span { min-width: 0; }.appearance-toggle b, .appearance-toggle small { display: block; }.appearance-toggle b { color: #405660; font-size: 12px; }.appearance-toggle small { margin-top: 4px; color: #81909a; font-size: 10px; }.appearance-toggle input { width: 34px; height: 18px; flex: 0 0 auto; accent-color: var(--green); }

html[data-accent="jade"] { --green: #16785e; --green-soft: #e6f4ee; --accent-light: #9fdac6; --accent-hover: #11634d; }html[data-accent="ocean"] { --green: #1f7a9b; --green-soft: #e4f3f7; --accent-light: #9ed4e3; --accent-hover: #17637e; }html[data-accent="indigo"] { --green: #4a62b2; --green-soft: #eceefa; --accent-light: #bbc4ee; --accent-hover: #3e5294; }html[data-accent="berry"] { --green: #a94e63; --green-soft: #f8eaee; --accent-light: #e9b4c2; --accent-hover: #893b4f; }
html[data-contrast="high"] { --muted: #465863; --line: #9dacb6; --line-strong: #70838f; --shadow: none; }html[data-theme="dark"][data-contrast="high"] { --muted: #c2d0d5; --line: #64767e; --line-strong: #91a2a9; }
html[data-density="compact"] td { padding-top: 8px; padding-bottom: 8px; }html[data-density="compact"] .mini-offer { min-height: 70px; }html[data-density="compact"] .match-row { min-height: 88px; padding-top: 9px; padding-bottom: 9px; }html[data-density="compact"] .import-row { min-height: 52px; }
html[data-reduce-motion="true"] *, html[data-reduce-motion="true"] *::before, html[data-reduce-motion="true"] *::after { scroll-behavior: auto !important; transition-duration: 0.01ms !important; animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; }

.excluded-table { width: 100%; min-width: 1140px; border-collapse: collapse; text-align: left; }.excluded-table tbody tr { transition: background .15s; }.excluded-table tbody tr:last-child td { border-bottom: 0; }.excluded-table tbody tr:hover { background: #fbfdfd; }.excluded-table th:last-child, .excluded-table td:last-child { width: 150px; min-width: 150px; padding-right: 20px; white-space: nowrap; }.excluded-reason { max-width: 360px; color: #435964; font-size: 12px; line-height: 1.45; }.excluded-toolbar { justify-content: flex-end; flex-wrap: wrap; }.excluded-actions, .excluded-row-actions { display: flex; align-items: center; justify-content: flex-end; gap: 9px; }.excluded-unavailable { padding: 5px 7px; color: #8a672e; background: var(--yellow-soft); border-radius: 4px; font-size: 10px; font-weight: 700; }.small-button:disabled { color: #9daab4; background: #f3f5f7; border-color: #e5e9ed; cursor: not-allowed; }
.coverage-failed, .legend-failed { background: #9454a7; }
.import-setup-surface { margin-bottom: 15px; overflow: hidden; }.import-setup-empty { padding: 18px 20px; color: var(--muted); font-size: 12px; line-height: 1.5; }.import-quarantine-row { min-height: 92px; display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 16px 20px; border-top: 1px solid #edf1f4; }.import-quarantine-row strong { display: block; color: #334953; font-size: 12px; }.import-quarantine-row p { margin: 5px 0 4px; color: #8a672e; font-size: 11px; line-height: 1.4; }.import-quarantine-row small { display: block; color: var(--muted); font-size: 10px; }.import-workflow-heading { padding: 13px 20px 9px; color: #73858e; background: #f8fafb; border-top: 1px solid #edf1f4; font-size: 10px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }.import-workflow-status { display: flex; align-items: flex-start; gap: 8px; margin: 8px 0 5px; }.import-workflow-status b, .import-workflow-status small { display: block; }.import-workflow-status b { color: #45606b; font-size: 11px; }.import-workflow-status small { margin-top: 3px; line-height: 1.4; }.import-workflow-dot { width: 8px; height: 8px; flex: 0 0 auto; margin-top: 3px; border-radius: 50%; background: #c0cbd1; }.import-workflow-status.configured .import-workflow-dot { background: #e3ab40; }.import-workflow-status.processing .import-workflow-dot { background: var(--green); animation: import-pulse 1s ease-in-out infinite; }.import-workflow-status.completed .import-workflow-dot { background: var(--green); }.import-workflow-status.failed .import-workflow-dot { background: #c75a5a; }.import-workflow-status.quarantine .import-workflow-dot { background: #e3ab40; }.import-completed-row { background: #fbfdfc; }.profile-setup { padding: 20px; }.profile-setup-intro { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; }.profile-setup-intro h3 { color: #304651; font-size: 15px; }.profile-setup-intro p:not(.section-kicker) { max-width: 760px; margin: 7px 0 0; color: var(--muted); font-size: 12px; line-height: 1.5; }.profile-supplier { display: grid; grid-template-columns: 160px minmax(200px, 430px); align-items: center; gap: 12px; margin: 20px 0; color: #526570; font-size: 11px; font-weight: 800; }.profile-supplier input, .profile-mapping select { width: 100%; min-height: 35px; padding: 0 9px; color: #334b57; background: #fff; border: 1px solid #d7e0e5; border-radius: 4px; outline: 0; }.profile-supplier input:focus, .profile-mapping select:focus { border-color: var(--green); box-shadow: 0 0 0 3px rgba(74,139,115,.12); }.profile-detection { margin: 4px 0 16px; padding: 12px 14px; color: #405761; background: #f4faf7; border: 1px solid #cfe3d9; border-radius: 5px; }.profile-detection b, .profile-detection small { display: block; }.profile-detection b { font-size: 11px; }.profile-detection small { margin-top: 5px; color: #6e827c; font-size: 10px; line-height: 1.45; }.profile-header-rows { display: grid; gap: 8px; padding: 15px; background: #f8fafb; border: 1px solid #e6ecef; border-radius: 5px; }.profile-header-rows > span { color: #6d7f8a; font-size: 10px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; }.profile-header-rows label { display: flex; align-items: flex-start; gap: 8px; color: #405761; font-size: 11px; line-height: 1.4; }.profile-header-rows input { margin: 1px 0 0; accent-color: var(--green); }.profile-mapping-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px 14px; margin-top: 16px; }.profile-mapping { min-height: 58px; display: grid; grid-template-columns: minmax(130px, .7fr) minmax(180px, 1fr); align-items: center; gap: 12px; padding: 10px 0; border-top: 1px solid #edf1f4; }.profile-mapping b, .profile-mapping small { display: block; }.profile-mapping b { color: #405761; font-size: 11px; }.profile-mapping small { margin-top: 4px; color: #84939c; font-size: 10px; }.profile-saving-status { display: flex; align-items: center; gap: 8px; margin-top: 14px; padding: 11px 13px; color: #41675b; background: var(--green-soft); border: 1px solid var(--accent-light); border-radius: 5px; font-size: 11px; font-weight: 700; }.profile-saving-status span { width: 8px; height: 8px; border-radius: 50%; background: var(--green); animation: import-pulse 1s ease-in-out infinite; }.profile-setup-actions { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-top: 18px; padding-top: 15px; border-top: 1px solid var(--line); }.profile-setup-actions span { max-width: 650px; color: #81662d; font-size: 10px; line-height: 1.45; }@keyframes import-pulse { 50% { opacity: .35; transform: scale(.72); } }

html[data-theme="dark"] { color-scheme: dark; --canvas: #11191d; --paper: #192429; --ink: #eef4f5; --muted: #a7b7bd; --line: #33434a; --line-strong: #4a5c64; --green-soft: #173a34; --red-soft: #422829; --yellow-soft: #3e321e; --blue-soft: #213747; --sidebar: #0e1518; --sidebar-muted: #98aab0; --sidebar-line: #2b3a40; --shadow: 0 6px 22px rgba(0, 0, 0, .18); }html[data-theme="dark"] .topbar { background: rgba(17, 25, 29, .92); }html[data-theme="dark"] .period-control, html[data-theme="dark"] .segmented-control, html[data-theme="dark"] .batch-selector { background: #28363c; }html[data-theme="dark"] .period-button.active, html[data-theme="dark"] .segmented-control button.active { color: var(--ink); background: #1b272c; box-shadow: none; }html[data-theme="dark"] .secondary-button, html[data-theme="dark"] .small-button, html[data-theme="dark"] .search-field, html[data-theme="dark"] .upload-zone, html[data-theme="dark"] .setting-line select, html[data-theme="dark"] .setting-line input[type="number"], html[data-theme="dark"] .scale-step, html[data-theme="dark"] .candidate { color: #e7eff1; background: #202d32; border-color: var(--line-strong); }html[data-theme="dark"] .secondary-button:hover, html[data-theme="dark"] .small-button:hover { background: #27363c; border-color: #78909a; }html[data-theme="dark"] th, html[data-theme="dark"] .list-header { color: #b6c5ca; background: #1c282d; }html[data-theme="dark"] .offers-table tbody tr:hover, html[data-theme="dark"] .catalog-table tbody tr:hover, html[data-theme="dark"] .match-row:hover, html[data-theme="dark"] .match-row.active { background: #213036; }html[data-theme="dark"] .row-product, html[data-theme="dark"] .product-name, html[data-theme="dark"] .price, html[data-theme="dark"] .purchase-history b, html[data-theme="dark"] .catalog-link strong, html[data-theme="dark"] .candidate strong, html[data-theme="dark"] .detail-name, html[data-theme="dark"] .source-profile-row strong { color: #edf4f5; }html[data-theme="dark"] td, html[data-theme="dark"] .supplier-item b, html[data-theme="dark"] .appearance-label, html[data-theme="dark"] .appearance-toggle b, html[data-theme="dark"] .scale-control output, html[data-theme="dark"] .coverage-legend b { color: #d8e3e6; }html[data-theme="dark"] .row-sub, html[data-theme="dark"] .product-meta, html[data-theme="dark"] .candidate small, html[data-theme="dark"] .source-profile-row small, html[data-theme="dark"] .appearance-toggle small { color: #a7b9bf; }html[data-theme="dark"] .detail-meta span { color: #c4d3d7; background: #27363c; }html[data-theme="dark"] .catalog-link { background: #1c322e; border-color: #3c6559; }html[data-theme="dark"] .ai-state, html[data-theme="dark"] .ai-recommendation { background: #1d2b31; border-color: #3d5662; }html[data-theme="dark"] .ai-recommendation strong { color: #dce9ed; }html[data-theme="dark"] .ai-recommendation small { color: #a9c0ca; }html[data-theme="dark"] .rule-guide p, html[data-theme="dark"] .setting-line, html[data-theme="dark"] .rule-guide b { color: #c3d0d4; }html[data-theme="dark"] .load-more-matches { background: #1c2a2f; }html[data-theme="dark"] .coverage-bar { background: #2a3a40; }html[data-theme="dark"] .surface-footnote { border-color: #3a474c; }html[data-theme="dark"] .table-status.resolved { color: #94e0c6; }html[data-theme="dark"] .table-status.ai_checked { color: #f1c87e; }
html[data-theme="dark"][data-accent="ocean"] { --green-soft: #17343e; }html[data-theme="dark"][data-accent="indigo"] { --green-soft: #272d50; }html[data-theme="dark"][data-accent="berry"] { --green-soft: #452832; }
html[data-theme="dark"] .profile-header-rows { background: #1c282d; border-color: #37474e; }html[data-theme="dark"] .profile-supplier input, html[data-theme="dark"] .profile-mapping select { color: #e7eff1; background: #202d32; border-color: var(--line-strong); }html[data-theme="dark"] .import-quarantine-row strong, html[data-theme="dark"] .profile-setup-intro h3 { color: #edf4f5; }html[data-theme="dark"] .profile-header-rows label, html[data-theme="dark"] .profile-mapping b { color: #d8e3e6; }
.offers-table .leader-product { vertical-align: top; background: #f7fbf9; box-shadow: inset -1px 0 #dcebe4; }.offers-table .leader-offer-row > td { background: #fcfefd; }.offers-table .leader-offer-row td:last-child { background: #fcfefd; }.offers-table .leader-offer-row + .leader-offer-row td { border-top-color: #e4eee9; }.offers-table .leader-offer-row .pair-label { color: #43806c; }
@media (max-width: 1080px) { .appearance-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 20px; } }
@media (max-width: 760px) { .appearance-section { padding: 18px; }.appearance-heading { align-items: center; }.appearance-heading .secondary-button { min-height: 32px; padding: 0 10px; font-size: 10px; }.appearance-grid { grid-template-columns: 1fr; margin-top: 14px; }.appearance-option, .appearance-toggle { min-height: 66px; }.appearance-scale { align-items: flex-start; flex-direction: column; justify-content: center; gap: 7px; }.scale-control { width: 100%; min-width: 0; grid-template-columns: 29px minmax(80px, 1fr) 43px 29px; }.coverage-legend { grid-template-columns: 1fr; } }

@media (max-width: 1080px) { .app-shell { grid-template-columns: 210px minmax(0,1fr); }.sidebar { padding-left: 11px; padding-right: 11px; }.metric-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }.supplier-overview { grid-template-columns: repeat(2,1fr); }.supplier-item:nth-child(2) { border-right: 0; }.supplier-item:nth-child(-n+2) { border-bottom: 1px solid var(--line); }.match-layout { grid-template-columns: 1fr; }.match-detail { min-height: 0; }.import-row { grid-template-columns: minmax(180px,1fr) 105px 80px 105px; }.source-profile-row { grid-template-columns: minmax(190px,1.4fr) repeat(5,minmax(58px,.5fr)); gap: 9px; } }
@media (max-width: 760px) { .app-shell { display: block; }.sidebar { position: static; width: 100%; height: auto; padding: 14px 15px; }.brand { padding: 2px 4px 14px; }.workspace-label, .sidebar-footer { display: none; }.nav-list { display: flex; overflow-x: auto; gap: 5px; }.nav-item { width: auto; min-width: max-content; min-height: 34px; padding: 0 9px; font-size: 11px; }.topbar { height: auto; min-height: 62px; padding: 11px 18px; align-items: flex-start; }.topbar-actions { justify-content: flex-end; }.period-control { display: none; }.topbar .primary-button { min-height: 35px; font-size: 11px; }.view { padding: 26px 18px 35px; }.title-row, .title-row.tight { align-items: flex-start; flex-direction: column; margin-bottom: 20px; }.title-row .toolbar { width: 100%; }.search-field { width: 100%; }.metric-grid, .content-grid, .import-layout, .settings-grid { grid-template-columns: 1fr; }.supplier-overview { grid-template-columns: 1fr; }.supplier-item, .supplier-item:nth-child(2) { border-right: 0; border-bottom: 1px solid var(--line); }.supplier-item:last-child { border-bottom: 0; }.filter-row { overflow-x: auto; padding-bottom: 2px; }.catalog-total { text-align: left; }.setting-line { align-items: flex-start; padding: 10px 0; }.setting-line select[data-business-rule], .setting-line input[type="number"] { max-width: 56%; }.catalog-total { text-align: left; }.import-row { grid-template-columns: 1fr 85px; padding: 13px 17px; }.import-row > span, .import-row .file-pill { display: none; }.source-profile-list { overflow-x: auto; padding: 0 14px; }.source-profile-row { min-width: 640px; grid-template-columns: minmax(210px,1.7fr) repeat(5,minmax(68px,.55fr)); }h1 { font-size: 24px; }.toast { left: 18px; right: 18px; bottom: 18px; } }
@media (max-width: 760px) { .import-quarantine-row, .profile-setup-intro, .profile-setup-actions { align-items: flex-start; flex-direction: column; }.profile-supplier, .profile-mapping { grid-template-columns: 1fr; }.profile-mapping-grid { grid-template-columns: 1fr; }.profile-setup-actions .primary-button { width: 100%; }.import-quarantine-row .secondary-button { width: 100%; } }
.profile-sheet-tabs { display: flex; flex-wrap: wrap; gap: 7px; margin: 4px 0 14px; padding: 9px; background: #f8fafb; border: 1px solid #e5ecef; border-radius: 5px; }.profile-sheet-tab { min-width: 120px; display: grid; gap: 2px; padding: 8px 10px; text-align: left; color: #586b75; background: #fff; border: 1px solid #d9e3e7; border-radius: 4px; cursor: pointer; }.profile-sheet-tab b { font-size: 11px; }.profile-sheet-tab small { color: #8a9aa2; font-size: 9px; text-transform: uppercase; letter-spacing: .04em; }.profile-sheet-tab.active { color: #2f6553; background: var(--green-soft); border-color: var(--accent-light); }.profile-sheet-tab.active small { color: #4d806d; }
.profile-sheet-action { display: flex; align-items: center; gap: 10px 14px; margin: -5px 0 14px; padding: 10px 12px; color: #5c6f77; background: #fbf8ef; border: 1px solid #eadfbd; border-radius: 5px; font-size: 10px; }.profile-sheet-action b { color: #6f5d2c; font-size: 11px; }.profile-sheet-action small { flex: 1; color: #8b7c58; line-height: 1.4; }.profile-sheet-action .text-button { color: #837034; white-space: nowrap; }.profile-sheet-tab.ignored { opacity: .66; }.profile-sheet-tab.ignored:not(.active) { background: #faf8f0; border-style: dashed; }
.source-management-surface { margin-bottom: 15px; overflow: hidden; }.source-management-list { padding: 0 20px; }.source-manage-row { min-height: 78px; display: grid; grid-template-columns: minmax(220px,1.7fr) repeat(3,minmax(88px,.55fr)) auto; align-items: center; gap: 14px; border-top: 1px solid var(--line); }.source-manage-row strong, .source-manage-row span, .source-manage-row b, .source-manage-row small { display: block; }.source-manage-row strong { color: #314753; font-size: 12px; }.source-manage-row > div > small { max-width: 420px; margin-top: 4px; overflow: hidden; color: var(--muted); font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }.source-manage-row span { margin-bottom: 4px; color: #83919a; font-size: 10px; }.source-manage-row b { color: #416e60; font-size: 12px; }.source-manage-row > div:not(:first-child) small { color: #5d6f78; font-size: 10px; line-height: 1.35; }.source-row-actions, .source-profile-actions { display: flex; align-items: center; justify-content: flex-end; gap: 10px; }.source-profile-actions { flex-wrap: wrap; }.source-unavailable { padding: 7px 9px; color: #82652c; background: var(--yellow-soft); border-radius: 4px; font-size: 10px; white-space: nowrap; }.source-status-failed { color: #b45454 !important; }.source-remove { color: #a64d4d; }.period-reset-surface { display: flex; align-items: center; justify-content: space-between; gap: 30px; padding: 22px; border-color: #ead4d4; }.period-reset-surface h2 { color: #4e3c40; font-size: 16px; }.period-reset-surface p:not(.section-kicker) { max-width: 760px; margin: 7px 0 0; color: #6f6266; font-size: 12px; line-height: 1.5; }.danger-button { min-height: 38px; flex: 0 0 auto; padding: 0 14px; color: #fff; background: #ad5454; border: 1px solid #ad5454; border-radius: 4px; font-size: 11px; font-weight: 800; }.danger-button:hover { background: #934444; border-color: #934444; }
.confidence i { height: 100%; }
.ai-error-comparison { max-width: 560px; padding-top: 4px; color: #547464 !important; font-weight: 700; line-height: 1.4; }
.error-toolbar { display: flex; align-items: center; justify-content: flex-end; gap: 9px; }.error-list-surface { overflow: hidden; }.ai-error-row { min-height: 94px; display: grid; grid-template-columns: minmax(250px,1.25fr) minmax(260px,1fr) auto; align-items: center; gap: 18px; padding: 14px 20px; border-top: 1px solid var(--line); }.ai-error-product span, .ai-error-product strong, .ai-error-product small, .ai-error-reason b, .ai-error-reason small { display: block; }.ai-error-product span { margin-bottom: 5px; color: #9b5b5b; font-size: 9px; font-weight: 800; letter-spacing: .05em; }.ai-error-product strong { color: #354b56; font-size: 12px; line-height: 1.4; }.ai-error-product small { margin-top: 5px; color: var(--muted); font-size: 10px; }.ai-error-reason { padding-left: 12px; border-left: 2px solid #d78d8d; }.ai-error-reason b { color: #9c4e4e; font-size: 11px; line-height: 1.4; }.ai-error-reason small { margin-top: 5px; color: #7e8b93; font-size: 10px; line-height: 1.4; }.ai-error-actions { display: flex; align-items: center; justify-content: flex-end; gap: 11px; white-space: nowrap; }html[data-theme="dark"] .ai-error-product strong { color: #edf4f5; }html[data-theme="dark"] .ai-error-reason { border-color: #a76666; }html[data-theme="dark"] .ai-error-reason b { color: #efaaaa; }html[data-theme="dark"] .ai-error-reason small { color: #b3c0c5; }@media (max-width: 760px) { .error-toolbar { width: 100%; justify-content: stretch; }.error-toolbar > button { flex: 1; }.ai-error-row { grid-template-columns: 1fr; gap: 11px; }.ai-error-actions { justify-content: flex-start; }.ai-error-reason { padding-left: 10px; } }
html[data-theme="dark"] .source-manage-row strong { color: #edf4f5; }html[data-theme="dark"] .period-reset-surface { border-color: #684447; }html[data-theme="dark"] .period-reset-surface h2 { color: #f1dddd; }html[data-theme="dark"] .period-reset-surface p:not(.section-kicker) { color: #c9b4b7; }
html[data-theme="dark"] .catalog-control-body strong { color: #edf4f5; }html[data-theme="dark"] .catalog-update-status { background: #1c282d; }html[data-theme="dark"] .catalog-update-status.success { background: #1c322e; }html[data-theme="dark"] .catalog-update-status.warning { background: #3e321e; }html[data-theme="dark"] .catalog-update-status.working { background: #213747; }
@media (max-width: 760px) { .source-management-list { overflow-x: auto; padding: 0 14px; }.source-manage-row { min-width: 680px; grid-template-columns: minmax(210px,1.7fr) repeat(3,minmax(80px,.55fr)) auto; }.period-reset-surface { align-items: flex-start; flex-direction: column; gap: 16px; }.period-reset-surface .danger-button { width: 100%; } }
@media (max-width: 760px) { .excluded-toolbar { align-items: stretch; }.excluded-actions { width: 100%; justify-content: stretch; }.excluded-actions > button { flex: 1; min-width: 0; padding: 0 8px; font-size: 10px; }.excluded-row-actions { justify-content: flex-start; } }
@media (max-width: 760px) { .catalog-control-body { align-items: flex-start; flex-direction: column; }.catalog-control-actions { width: 100%; }.catalog-control-actions button { flex: 1; min-width: 0; padding: 0 9px; font-size: 10px; } }

/* Visual cues for the two sides of a comparison: catalog and supplier. */
.mini-offer-our, .mini-offer-supplier { padding: 10px 11px; border: 1px solid transparent; border-radius: 5px; }
.mini-offer-our, .offer-our-product { background: #f2faf6; }
.mini-offer-supplier, .offer-supplier-product { background: #f6f8fb; }
.mini-offer-our, .offer-our-product { border-color: #d6e9df; }
.mini-offer-supplier, .offer-supplier-product { border-color: #e0e8ee; }
.mini-offer-supplier .pair-label, .offer-supplier-product .pair-label { color: #597382; }
.mini-offer-our .pair-label, .offer-our-product .pair-label { color: #39775f; }
.offers-table td.offer-our-product { box-shadow: inset -1px 0 #d6e9df; }
.offers-table td.offer-supplier-product { box-shadow: inset -1px 0 #e0e8ee; }
.match-pair { gap: 8px; }
.match-supplier-card, .match-target { padding: 10px 11px; border: 1px solid; border-radius: 5px; }
.match-supplier-card { background: #f6f8fb; border-color: #e0e8ee; }
.match-target { background: #f2faf6; border-color: #d6e9df; }
.match-source { margin-bottom: 4px; color: #597382; }
.match-detail-supplier { padding: 13px; background: #f6f8fb; border: 1px solid #e0e8ee; border-radius: 5px; }
.match-detail-supplier .detail-label { color: #597382; }
.match-detail-supplier .detail-meta { margin: 12px 0; }
.match-detail-supplier .muted { margin-bottom: 0; }
html[data-theme="dark"] .mini-offer-our, html[data-theme="dark"] .offer-our-product, html[data-theme="dark"] .match-target { background: #1c322e; border-color: #3c6559; }
html[data-theme="dark"] .mini-offer-supplier, html[data-theme="dark"] .offer-supplier-product, html[data-theme="dark"] .match-supplier-card, html[data-theme="dark"] .match-detail-supplier { background: #202d32; border-color: #40535b; }
html[data-theme="dark"] .offers-table td.offer-our-product { box-shadow: inset -1px 0 #3c6559; }
html[data-theme="dark"] .offers-table td.offer-supplier-product { box-shadow: inset -1px 0 #40535b; }
html[data-theme="dark"] .mini-offer-supplier .pair-label, html[data-theme="dark"] .offer-supplier-product .pair-label, html[data-theme="dark"] .match-source, html[data-theme="dark"] .match-detail-supplier .detail-label { color: #a9c3cf; }

/* The same catalogue/supplier distinction on exceptions and AI failures. */
.excluded-table td.excluded-our-product { background: #f2faf6; box-shadow: inset -1px 0 #d6e9df; }
.excluded-table td.excluded-supplier-product { background: #f6f8fb; box-shadow: inset -1px 0 #e0e8ee; }
.excluded-table .excluded-our-product .pair-label { color: #39775f; }
.excluded-table .excluded-supplier-product .pair-label { color: #597382; }
.ai-error-product { padding: 11px 12px; background: #f6f8fb; border: 1px solid #e0e8ee; border-radius: 5px; }
.ai-error-product > span { color: #597382; }
.ai-error-comparison { display: block; margin-top: 9px !important; padding: 8px 9px; color: #356d59 !important; background: #f2faf6; border: 1px solid #d6e9df; border-radius: 4px; font-weight: 700; }
.ai-error-comparison > span { display: block; margin-bottom: 4px; color: #39775f; font-size: 9px; font-weight: 800; letter-spacing: .05em; }
html[data-theme="dark"] .excluded-table td.excluded-our-product, html[data-theme="dark"] .ai-error-comparison { background: #1c322e; border-color: #3c6559; }
html[data-theme="dark"] .excluded-table td.excluded-supplier-product, html[data-theme="dark"] .ai-error-product { background: #202d32; border-color: #40535b; }
html[data-theme="dark"] .excluded-table td.excluded-our-product { box-shadow: inset -1px 0 #3c6559; }
html[data-theme="dark"] .excluded-table td.excluded-supplier-product { box-shadow: inset -1px 0 #40535b; }
html[data-theme="dark"] .excluded-table .excluded-supplier-product .pair-label, html[data-theme="dark"] .ai-error-product > span { color: #a9c3cf; }
.coverage-memory, .legend-memory { background: #7275b6; }
.mapping-library-count { display: flex; align-items: baseline; gap: 10px; padding: 14px; margin: 0 0 14px; background: #f5f5fb; border: 1px solid #e0e1f0; border-radius: 5px; }
.mapping-library-count strong { color: #51548f; font-family: "Manrope", Arial, sans-serif; font-size: 29px; line-height: 1; }
.mapping-library-count span { color: #6e7890; font-size: 11px; line-height: 1.4; }
.mapping-memory-section > .muted { min-height: 32px; margin: 0 0 14px; font-size: 11px; line-height: 1.45; }
html[data-theme="dark"] .mapping-library-count { background: #252540; border-color: #45466f; }
html[data-theme="dark"] .mapping-library-count strong { color: #b9b9f1; }
html[data-theme="dark"] .mapping-library-count span { color: #c2c2dc; }
.team-settings-section { grid-column: 1 / -1; min-height: 0; }.team-settings-section > .muted { margin: -9px 0 14px; }.team-users { display: grid; gap: 7px; }.team-user-row { display: flex; align-items: center; justify-content: space-between; gap: 14px; min-height: 53px; padding: 9px 0; border-top: 1px solid #edf1f4; }.team-user-row strong, .team-user-row small { display: block; }.team-user-row strong { color: #314753; font-size: 12px; }.team-user-row small { margin-top: 3px; color: #81909a; font-size: 10px; }.team-user-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 9px; }.text-button { padding: 0; color: #315f51; background: transparent; border: 0; font: inherit; font-size: 11px; font-weight: 800; cursor: pointer; }.text-button:hover { text-decoration: underline; }.danger-text { color: #ad4b43; }.team-limit { margin: 2px 0 0; color: #84622b; font-size: 11px; }.team-user-form { display: grid; grid-template-columns: minmax(130px,1fr) minmax(130px,1fr) minmax(180px,1.25fr) auto; gap: 10px; align-items: end; margin-top: 16px; padding-top: 15px; border-top: 1px solid #edf1f4; }.team-user-form label { display: grid; gap: 5px; color: #60737e; font-size: 10px; font-weight: 700; }.team-user-form input { min-width: 0; min-height: 33px; padding: 0 8px; color: #334b57; background: #fff; border: 1px solid #d7e0e5; border-radius: 4px; font: inherit; font-size: 12px; }.team-user-form input:focus { border-color: var(--green); outline: 0; box-shadow: 0 0 0 3px rgba(74,139,115,.12); }@media (max-width: 760px) { .team-user-form { grid-template-columns: 1fr; }.team-user-form button { width: 100%; }.team-user-row { align-items: flex-start; flex-direction: column; }.team-user-actions { justify-content: flex-start; } }
