#view-analise-fornecedores { max-width: 1540px; margin: 0 auto; }
.sa-page { --sa-ink:#102a43; --sa-muted:#627387; --sa-line:#d9e4ee; --sa-soft:#f5f9fc; --sa-green:#059669; --sa-teal:#0f766e; --sa-cyan:#0284c7; --sa-orange:#d97706; --sa-navy:#17345b; --sa-purple:#7c3aed; --sa-gold:#a16207; color:var(--sa-ink); padding:4px 0 28px; }
.sa-page *, .sa-page *::before, .sa-page *::after { box-sizing:border-box; }
.sa-hero { display:flex; justify-content:space-between; gap:24px; align-items:flex-start; padding:27px 30px; border:1px solid #c9dfd5; border-radius:22px; background:linear-gradient(115deg,#f6fffb 0%,#f0faff 58%,#fdf8ec 100%); box-shadow:0 13px 30px rgba(15,35,60,.06); }
.sa-eyebrow,.sa-form header span,.sa-brands header span,.sa-items header span,.sa-contract header span { display:block; color:var(--sa-green); font-size:11px; font-weight:800; letter-spacing:.12em; }
.sa-hero h2 { margin:7px 0 6px; font-size:30px; line-height:1.08; letter-spacing:-.035em; }
.sa-hero p { margin:0; color:var(--sa-muted); font-size:14px; max-width:700px; }
.sa-hero-note { min-width:192px; padding:12px 14px; border:1px solid #c8e3d4; border-radius:14px; color:#166534; background:#effbf4; }
.sa-hero-note b,.sa-hero-note span { display:block; }.sa-hero-note b { font-size:11px; letter-spacing:.09em; }.sa-hero-note span { margin-top:4px; color:#547364; font-size:12px; }
.sa-toolbar { display:grid; grid-template-columns:180px minmax(260px,1fr) auto minmax(250px,1.3fr); gap:12px; align-items:end; margin:17px 0; padding:15px; border:1px solid var(--sa-line); border-radius:18px; background:#fff; box-shadow:0 7px 19px rgba(15,35,60,.045); }
.sa-toolbar label,.sa-form label { display:grid; gap:6px; color:#56697d; font-size:12px; font-weight:750; }.sa-toolbar label span { font-size:12px; }.sa-toolbar small { align-self:center; color:var(--sa-muted); font-size:12px; }
.sa-page input,.sa-page select,.sa-page textarea { width:100%; min-height:40px; padding:9px 11px; border:1px solid #cddae7; border-radius:10px; outline:none; color:var(--sa-ink); background:#fbfdff; font:inherit; transition:border-color .16s,box-shadow .16s; }
.sa-page textarea { min-height:72px; resize:vertical; line-height:1.42; }.sa-page input:focus,.sa-page select:focus,.sa-page textarea:focus { border-color:#28a57f; box-shadow:0 0 0 3px rgba(16,185,129,.13); }
.sa-primary,.sa-secondary { min-height:40px; padding:9px 15px; border:0; border-radius:10px; cursor:pointer; color:#fff; background:linear-gradient(112deg,#047857,#0ea56f); font:700 13px/1 inherit; box-shadow:0 6px 12px rgba(5,150,105,.17); }.sa-secondary { color:#0d684d; border:1px solid #a9dccc; background:#f0fbf5; box-shadow:none; }
.sa-workspace { display:grid; grid-template-columns:minmax(280px,340px) minmax(0,1fr); min-height:720px; overflow:hidden; border:1px solid var(--sa-line); border-radius:22px; background:#fff; box-shadow:0 15px 36px rgba(15,35,60,.065); }
.sa-suppliers { border-right:1px solid var(--sa-line); background:linear-gradient(180deg,#f7fbfd 0%,#fff 32%); }.sa-suppliers>header { padding:21px 18px 16px; border-bottom:1px solid #e3edf4; }.sa-suppliers header div { display:flex; justify-content:space-between; align-items:baseline; }.sa-suppliers header span { color:#567188; font-size:11px; font-weight:800; letter-spacing:.1em; }.sa-suppliers header b { color:#0f513f; font-size:13px; }.sa-suppliers header small { display:block; margin-top:7px; color:var(--sa-muted); font-size:12px; }
.sa-list { max-height:calc(100vh - 265px); min-height:620px; overflow:auto; padding:9px; }.sa-supplier { width:100%; margin:0 0 8px; padding:13px; border:1px solid transparent; border-radius:13px; color:var(--sa-ink); background:transparent; cursor:pointer; text-align:left; transition:background .16s,border-color .16s,transform .16s; }.sa-supplier:hover { border-color:#c9dedb; background:#fff; transform:translateY(-1px); }.sa-supplier.active { border-color:#8fd5ba; background:linear-gradient(130deg,#edfdf5,#f3fbf8); box-shadow:0 8px 18px rgba(5,150,105,.09); }.sa-supplier-head,.sa-supplier-metrics { display:flex; justify-content:space-between; gap:9px; align-items:baseline; }.sa-supplier-head b { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:13px; }.sa-supplier-head i { flex:none; padding:3px 6px; border-radius:999px; color:#2b7260; background:#e8f8f1; font-size:10px; font-style:normal; font-weight:800; }.sa-supplier-head i.risk { color:#a44d0d; background:#fff1e3; }.sa-supplier small { display:block; overflow:hidden; margin:5px 0 9px; color:var(--sa-muted); font-size:11px; text-overflow:ellipsis; white-space:nowrap; }.sa-supplier-metrics strong { color:#146248; font-size:12px; }.sa-supplier-metrics em { color:#5f7489; font-size:11px; font-style:normal; }
.sa-detail { min-width:0; padding:25px; background:linear-gradient(145deg,#fff,#fbfdff); }.sa-empty,.sa-loading-detail { display:grid; min-height:580px; place-content:center; justify-items:center; color:var(--sa-muted); text-align:center; }.sa-empty b { margin-bottom:7px; color:var(--sa-ink); font-size:17px; }.sa-empty span { max-width:340px; font-size:13px; }.sa-loading,.sa-empty-list,.sa-error { padding:20px 12px; color:var(--sa-muted); text-align:center; font-size:13px; }.sa-error { color:#b42318; }
.sa-detail-hero { display:flex; justify-content:space-between; gap:20px; padding-bottom:18px; border-bottom:1px solid var(--sa-line); }.sa-detail-hero span { color:#14805d; font-size:11px; font-weight:800; letter-spacing:.1em; }.sa-detail-hero h3 { margin:7px 0 5px; font-size:26px; letter-spacing:-.03em; }.sa-detail-hero p { margin:0; color:var(--sa-muted); font-size:13px; }.sa-detail-tags { display:flex; flex-wrap:wrap; align-content:flex-start; justify-content:flex-end; gap:7px; max-width:420px; }.sa-detail-tags i { padding:6px 9px; border:1px solid #d5e3ea; border-radius:999px; color:#4a667d; background:#f8fbfc; font-size:11px; font-style:normal; font-weight:750; }
.sa-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin:17px 0; }.sa-metric { min-width:0; min-height:106px; padding:13px; border:1px solid #dce8ef; border-radius:14px; background:#fff; box-shadow:0 6px 15px rgba(15,35,60,.035); }.sa-metric span,.sa-metric small { display:block; color:#66788b; font-size:11px; font-weight:700; }.sa-metric b { display:block; overflow:hidden; margin:7px 0 5px; color:var(--sa-ink); font-size:19px; letter-spacing:-.03em; text-overflow:ellipsis; white-space:nowrap; }.sa-metric small { font-weight:500; line-height:1.35; }.sa-metric.teal { border-top:3px solid var(--sa-teal); }.sa-metric.good { border-top:3px solid var(--sa-green); }.sa-metric.warn { border-top:3px solid var(--sa-orange); }.sa-metric.blue { border-top:3px solid var(--sa-cyan); }.sa-metric.orange { border-top:3px solid #f59e0b; }.sa-metric.navy { border-top:3px solid var(--sa-navy); }.sa-metric.purple { border-top:3px solid var(--sa-purple); }.sa-metric.gold { border-top:3px solid #c58a18; }
.sa-alert-grid,.sa-commercial-summary { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin:0 0 17px; }.sa-alert-grid article { padding:12px; border:1px solid #f1dfbd; border-radius:12px; background:#fffaf0; }.sa-alert-grid b,.sa-alert-grid span,.sa-commercial-summary span,.sa-commercial-summary b,.sa-commercial-summary small { display:block; }.sa-alert-grid b { color:#855813; font-size:12px; }.sa-alert-grid span { margin-top:5px; color:#806c50; font-size:11px; line-height:1.38; }.sa-commercial-summary article { padding:13px; border:1px solid #dbe8e8; border-radius:13px; background:linear-gradient(145deg,#fafffc,#f7fbff); }.sa-commercial-summary span { color:#6a7d91; font-size:10px; font-weight:800; letter-spacing:.06em; }.sa-commercial-summary b { margin:5px 0; color:#173750; font-size:16px; }.sa-commercial-summary small { color:#607489; font-size:11px; }
.sa-detail-columns { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:15px; align-items:start; }.sa-form,.sa-brands,.sa-items,.sa-contract { margin-bottom:15px; padding:17px; border:1px solid var(--sa-line); border-radius:16px; background:#fff; box-shadow:0 7px 18px rgba(15,35,60,.035); }.sa-form header,.sa-brands header,.sa-items header,.sa-contract header { display:flex; justify-content:space-between; gap:13px; margin-bottom:14px; }.sa-form header b,.sa-brands header b,.sa-items header b,.sa-contract header b { display:block; margin-top:4px; color:var(--sa-ink); font-size:15px; }.sa-form header small,.sa-brands header small,.sa-items header small { max-width:172px; color:var(--sa-muted); font-size:11px; text-align:right; }.sa-form>label { margin-top:12px; }.sa-form footer,.sa-brands footer { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-top:14px; }.sa-form footer small { color:#698095; font-size:11px; line-height:1.4; }.sa-form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }.sa-form-grid.three { grid-template-columns:repeat(3,minmax(0,1fr)); }.sa-warranty { border-color:#e4d9ff; background:linear-gradient(165deg,#fff,#fcfaff); }.sa-evaluation { border-color:#ead9b1; background:linear-gradient(165deg,#fffef8,#fffaf0); }
.sa-table-wrap { overflow:auto; border:1px solid #e0eaf0; border-radius:11px; }.sa-page table { width:100%; min-width:640px; border-collapse:collapse; }.sa-page th { padding:10px; color:#63778b; background:#f5f9fb; font-size:10px; letter-spacing:.045em; text-align:left; text-transform:uppercase; }.sa-page td { padding:10px; border-top:1px solid #e6edf2; color:#2d485e; font-size:12px; vertical-align:middle; }.sa-page td b,.sa-page td small { display:block; }.sa-page td b { color:#18384f; font-size:12px; }.sa-page td small { margin-top:3px; color:#738599; font-size:10px; }.sa-page td select { min-width:125px; min-height:34px; padding:6px; font-size:11px; }.sa-page td input[type=checkbox] { width:17px; min-height:17px; accent-color:#079669; }.sa-items { grid-column:1 / -1; margin-top:0; }.sa-contract ul { display:grid; gap:8px; margin:0; padding:0; list-style:none; }.sa-contract li { padding:8px 9px; border-radius:8px; font-size:12px; }.sa-contract li.ok { color:#136447; background:#ecfaf2; }.sa-contract li.wait { color:#7c5d2c; background:#fff7e8; }.sa-contract p { margin:13px 0 0; color:#687d91; font-size:11px; line-height:1.45; }
.sa-toolbar [data-tone=error] { color:#b42318; }.sa-toolbar [data-tone=success] { color:#0a7851; font-weight:700; }
.sa-form-feedback { margin-left:auto; color:#60758a; font-size:11px; font-weight:750; }.sa-form-feedback[data-tone=error] { color:#b42318; }.sa-form-feedback[data-tone=pending] { color:#8a5a00; }.sa-form button:disabled { cursor:wait; opacity:.68; }.sa-save-notice { margin:13px 0 0; padding:10px 12px; border:1px solid #b6dfcc; border-radius:10px; color:#08734d; background:#ebf9f2; font-size:12px; font-weight:800; }.sa-save-notice.error { border-color:#f1b7af; color:#a83225; background:#fff0ee; }

.sa-cnpj-field { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px; align-items:end; }.sa-cnpj-field .sa-secondary { min-width:126px; }.sa-cnpj-result { margin:12px 0 2px; padding:13px 14px; border:1px solid #b8dfcf; border-radius:12px; color:#284b3e; background:#f0fbf5; }.sa-cnpj-result[data-tone=error] { border-color:#f1b7af; color:#a83225; background:#fff0ee; }.sa-cnpj-result[data-tone=pending] { border-color:#eed39b; color:#8a5a00; background:#fff8e8; }.sa-cnpj-result>header { align-items:flex-start; margin:0 0 10px; }.sa-cnpj-result>header span,.sa-cnpj-result>header b { display:block; }.sa-cnpj-result>header span { color:#0b805b; font-size:9px; font-weight:850; letter-spacing:.09em; }.sa-cnpj-result>header b { margin-top:3px; font-size:14px; }.sa-cnpj-result>header strong { padding:4px 7px; border-radius:7px; color:#08734d; background:#dff7e9; font-size:10px; }.sa-cnpj-result-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px 16px; }.sa-cnpj-result-grid p { margin:0; }.sa-cnpj-result-grid span,.sa-cnpj-result-grid b { display:block; }.sa-cnpj-result-grid span { color:#678072; font-size:9px; font-weight:800; text-transform:uppercase; }.sa-cnpj-result-grid b { margin-top:2px; color:#24483b; font-size:11px; line-height:1.35; }.sa-cnpj-result>small { display:block; margin-top:10px; color:#60796d; font-size:10px; line-height:1.4; }

@media (max-width:860px) { .sa-cnpj-field,.sa-cnpj-result-grid { grid-template-columns:1fr; }.sa-cnpj-field .sa-secondary { width:100%; }.sa-cnpj-result>header { display:flex; } }
@media (max-width:1180px) { .sa-workspace { grid-template-columns:300px minmax(0,1fr); }.sa-metrics { grid-template-columns:repeat(3,minmax(0,1fr)); }.sa-toolbar { grid-template-columns:170px minmax(200px,1fr) auto; }.sa-toolbar small { grid-column:1/-1; }.sa-detail { padding:19px; }.sa-alert-grid { grid-template-columns:1fr; }.sa-commercial-summary { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (max-width:860px) { .sa-hero { display:block; }.sa-hero-note { width:max-content; margin-top:16px; }.sa-workspace { grid-template-columns:1fr; }.sa-suppliers { border-right:0; border-bottom:1px solid var(--sa-line); }.sa-list { display:flex; min-height:0; max-height:none; overflow:auto; }.sa-supplier { flex:0 0 270px; margin:0 8px 0 0; }.sa-detail-columns,.sa-form-grid.three,.sa-commercial-summary { grid-template-columns:1fr; }.sa-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }.sa-toolbar { grid-template-columns:1fr 1fr; }.sa-toolbar .sa-search,.sa-toolbar small { grid-column:1/-1; }.sa-detail-tags { justify-content:flex-start; }.sa-detail-hero { display:block; }.sa-detail-tags { margin-top:12px; }.sa-form header,.sa-brands header,.sa-items header { display:block; }.sa-form header small,.sa-brands header small,.sa-items header small { margin-top:5px; text-align:left; } }

/* Supplier analysis: carteira first, drill-down only after the supplier row is opened. */
.sa-guide { margin:0 0 17px; border:1px solid #d7e7df; border-radius:16px; background:linear-gradient(105deg,#f8fffb,#f8fbff); overflow:hidden; }
.sa-history-range { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); grid-column:1 / -1; gap:12px; padding:11px; border:1px solid #d7e7df; border-radius:12px; background:#f6fcf9; }.sa-history-range[hidden] { display:none; }.sa-history-range label { display:grid; gap:6px; color:#56697d; font-size:12px; font-weight:750; }
.sa-guide summary { display:grid; grid-template-columns:auto 1fr auto; gap:12px; align-items:center; padding:14px 17px; cursor:pointer; list-style:none; }.sa-guide summary::-webkit-details-marker { display:none; }
.sa-guide summary span { color:#07815b; font-size:10px; font-weight:850; letter-spacing:.1em; }.sa-guide summary b { color:var(--sa-ink); font-size:14px; }.sa-guide summary i { color:#648195; font-size:18px; font-style:normal; transition:transform .18s; }.sa-guide:not([open]) summary i { transform:rotate(-90deg); }
.sa-guide-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1px; border-top:1px solid #d7e7df; background:#dfeae6; }.sa-guide-grid article { min-height:92px; padding:13px 16px; background:rgba(255,255,255,.82); }.sa-guide-grid strong,.sa-guide-grid b,.sa-guide-grid small { display:block; }.sa-guide-grid strong { color:#18805d; font-size:11px; letter-spacing:.04em; text-transform:uppercase; }.sa-guide-grid b { margin:5px 0; color:#263e55; font-size:12px; line-height:1.3; }.sa-guide-grid small { color:var(--sa-muted); font-size:11px; line-height:1.38; }
.sa-listing { overflow:hidden; border:1px solid var(--sa-line); border-radius:20px; background:#fff; box-shadow:0 13px 30px rgba(15,35,60,.055); }.sa-listing-head { display:flex; justify-content:space-between; gap:18px; align-items:end; padding:20px 22px 15px; border-bottom:1px solid #e5edf2; background:linear-gradient(110deg,#fbfffd,#fbfdff); }.sa-listing-head span,.sa-listing-head b,.sa-listing-head small { display:block; }.sa-listing-head span { color:#13835f; font-size:10px; font-weight:850; letter-spacing:.1em; }.sa-listing-head b { margin-top:4px; color:var(--sa-ink); font-size:17px; }.sa-listing-head small { max-width:420px; color:var(--sa-muted); font-size:12px; text-align:right; }
.sa-column-head,.sa-supplier-grid { display:grid; grid-template-columns:minmax(225px,1.45fr) minmax(118px,.78fr) minmax(118px,.78fr) minmax(88px,.56fr) minmax(128px,.73fr) minmax(115px,.65fr) 58px; gap:10px; align-items:center; }.sa-column-head { padding:10px 22px; color:#74869a; background:#f5f9fb; border-bottom:1px solid #e3edf2; font-size:10px; font-weight:850; letter-spacing:.07em; text-transform:uppercase; }.sa-full-list { min-height:270px; }.sa-supplier-row { border-bottom:1px solid #e7eef3; }.sa-supplier-row:last-child { border-bottom:0; }.sa-supplier-row.active { background:linear-gradient(105deg,#f6fffb,#fbfdff); }.sa-supplier-grid { width:100%; padding:15px 22px; border:0; color:var(--sa-ink); background:transparent; cursor:pointer; font:inherit; text-align:left; transition:background .15s; }.sa-supplier-grid:hover { background:#f4faf8; }.sa-row-name,.sa-row-value,.sa-row-kpi,.sa-row-open { min-width:0; }.sa-row-name b,.sa-row-value b,.sa-row-kpi b { display:block; overflow:hidden; color:#18364f; text-overflow:ellipsis; white-space:nowrap; }.sa-row-name b { font-size:13px; }.sa-row-name small,.sa-row-value small,.sa-row-kpi small { display:block; overflow:hidden; margin-top:4px; color:#77889a; font-size:10.5px; text-overflow:ellipsis; white-space:nowrap; }.sa-row-value b,.sa-row-kpi b { font-size:12px; }.sa-row-kpi b em { color:#7890a3; font-size:10px; font-style:normal; font-weight:700; }.sa-status { display:inline-flex !important; align-items:center; width:max-content; padding:2px 6px; border-radius:999px; font-size:10px !important; font-weight:800; }.sa-status.good { color:#08734d; background:#e5f8ee; }.sa-status.watch { color:#9a5d00; background:#fff3dc; }.sa-status.risk { color:#ab3f22; background:#fff0eb; }.sa-status.neutral { color:#65798d; background:#edf3f7; }.sa-row-open { display:flex; justify-content:flex-end; align-items:center; gap:5px; color:#147a59; font-size:11px; font-weight:800; }.sa-row-open i { font-size:21px; font-style:normal; line-height:1; }.sa-supplier-row.active .sa-row-open i { transform:rotate(90deg); }
.sa-expand { margin:0 15px 17px; padding:20px; border:1px solid #bfded1; border-radius:16px; background:#fff; box-shadow:0 11px 24px rgba(8,89,64,.075); }.sa-loading-detail { min-height:110px; display:grid; place-content:center; color:var(--sa-muted); font-size:13px; }.sa-expand-head { display:flex; justify-content:space-between; gap:18px; align-items:flex-start; padding-bottom:16px; }.sa-expand-head span { color:#0b8a61; font-size:10px; font-weight:850; letter-spacing:.1em; }.sa-expand-head h3 { margin:6px 0 4px; color:var(--sa-ink); font-size:22px; letter-spacing:-.028em; }.sa-expand-head small { color:var(--sa-muted); font-size:12px; }.sa-tabs { display:flex; gap:6px; overflow:auto; margin:0 -20px; padding:11px 20px; border-top:1px solid #e3ede8; border-bottom:1px solid #e3ede8; background:#fbfefd; scrollbar-width:thin; }.sa-tabs button { flex:none; padding:8px 10px; border:1px solid transparent; border-radius:9px; color:#577086; background:transparent; cursor:pointer; font:750 11px/1.15 inherit; white-space:nowrap; }.sa-tabs button:hover { color:#0c7e59; background:#edf9f3; }.sa-tabs button.active { border-color:#abdac6; color:#087550; background:#e5f8ee; box-shadow:inset 0 0 0 1px rgba(8,117,80,.04); }.sa-tab-content { padding-top:17px; }.sa-tab-content .sa-form,.sa-tab-content .sa-brands,.sa-tab-content .sa-items,.sa-tab-content .sa-contract { margin-bottom:0; }.sa-tab-content .sa-items { width:100%; }
.sa-reading-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:10px; }.sa-reading-grid article { min-height:112px; padding:14px; border:1px solid #dce8ef; border-top:3px solid #91a8ba; border-radius:13px; background:#fff; }.sa-reading-grid article.good { border-top-color:#0bb477; }.sa-reading-grid article.watch { border-top-color:#f09a1b; }.sa-reading-grid article.risk { border-top-color:#e76d4c; }.sa-reading-grid article.neutral { border-top-color:#5caee0; }.sa-reading-grid span,.sa-reading-grid b,.sa-reading-grid small { display:block; }.sa-reading-grid span { color:#6d8093; font-size:10px; font-weight:850; letter-spacing:.06em; text-transform:uppercase; }.sa-reading-grid b { margin:8px 0 5px; color:#173750; font-size:20px; letter-spacing:-.035em; }.sa-reading-grid b em { color:#7290a4; font-size:12px; font-style:normal; }.sa-reading-grid small { color:#657a8e; font-size:11px; line-height:1.35; }.sa-interpretation { margin-top:12px; padding:13px 15px; border:1px solid #dce9e4; border-radius:12px; background:linear-gradient(105deg,#f4fcf8,#f7fbff); }.sa-interpretation b { color:#137453; font-size:12px; }.sa-interpretation p { margin:5px 0 0; color:#60768a; font-size:12px; line-height:1.45; }.sa-operation-panel .sa-metrics { grid-template-columns:repeat(3,minmax(0,1fr)); margin:0 0 13px; }.sa-operation-panel .sa-contract { margin:0; }

.sa-metric.risk { border-top:3px solid #d92d20; }.sa-row-kpi b.sa-row-attention,.sa-page td b.sa-cell-attention { color:#b42318; }.sa-attention-banner { display:flex; align-items:flex-start; gap:10px; margin:0 0 12px; padding:12px 14px; border:1px solid #f5b8b1; border-left:4px solid #d92d20; border-radius:12px; color:#8d241b; background:linear-gradient(105deg,#fff2f1,#fff9f8); }.sa-attention-banner b { flex:none; color:#b42318; font-size:12px; }.sa-attention-banner span { color:#8d241b; font-size:12px; line-height:1.45; }
.sa-reading-grid-four { grid-template-columns:repeat(4,minmax(0,1fr)); }.sa-reading-drill,.sa-metric-drill { position:relative; width:100%; min-width:0; min-height:112px; padding:14px; border:1px solid #dce8ef; border-top:3px solid #91a8ba; border-radius:13px; color:inherit; background:#fff; cursor:pointer; font:inherit; text-align:left; transition:transform .15s,box-shadow .15s,border-color .15s; }.sa-reading-drill:hover,.sa-metric-drill:hover { transform:translateY(-1px); box-shadow:0 8px 18px rgba(18,57,82,.09); }.sa-reading-drill.is-open,.sa-metric-drill.is-open { border-color:#79c9ae; background:linear-gradient(135deg,#f4fcf8,#fff); }.sa-reading-drill.good { border-top-color:#0bb477; }.sa-reading-drill.watch { border-top-color:#f09a1b; }.sa-reading-drill.risk { border-top-color:#d92d20; }.sa-reading-drill.neutral { border-top-color:#5caee0; }.sa-reading-drill span,.sa-reading-drill b,.sa-reading-drill small,.sa-reading-drill i,.sa-metric-drill span,.sa-metric-drill b,.sa-metric-drill small,.sa-metric-drill i { display:block; }.sa-reading-drill span,.sa-metric-drill span { color:#6d8093; font-size:10px; font-weight:850; letter-spacing:.06em; text-transform:uppercase; }.sa-reading-drill b,.sa-metric-drill b { margin:8px 0 5px; color:#173750; font-size:20px; letter-spacing:-.035em; }.sa-reading-drill small,.sa-metric-drill small { color:#657a8e; font-size:11px; line-height:1.35; }.sa-reading-drill i,.sa-metric-drill i { margin-top:8px; color:#087a55; font-size:10px; font-style:normal; font-weight:850; }.sa-metric-drill { min-height:106px; }.sa-metric-drill.teal { border-top-color:var(--sa-teal); }.sa-metric-drill.good { border-top-color:var(--sa-green); }.sa-metric-drill.warn { border-top-color:var(--sa-orange); }.sa-metric-drill.blue { border-top-color:var(--sa-cyan); }.sa-metric-drill.orange { border-top-color:#f59e0b; }.sa-metric-drill.risk { border-top-color:#d92d20; }.sa-card-drill { margin:0 0 13px; overflow:hidden; border:1px solid #b9dccc; border-radius:14px; background:#fbfefd; }.sa-card-drill>header { display:flex; justify-content:space-between; gap:16px; align-items:center; padding:13px 15px; border-bottom:1px solid #dcece4; }.sa-card-drill>header span,.sa-card-drill>header b { display:block; }.sa-card-drill>header span { color:#118261; font-size:10px; font-weight:850; letter-spacing:.08em; }.sa-card-drill>header b { margin-top:3px; color:#173750; font-size:14px; }.sa-card-drill>header button { border:0; color:#087a55; background:transparent; cursor:pointer; font:800 11px inherit; }.sa-card-drill>p { margin:0; padding:10px 15px; color:#65798d; font-size:11px; line-height:1.4; }.sa-drill-list { display:grid; gap:8px; max-height:560px; overflow:auto; padding:0 15px 15px; }.sa-drill-row { padding:12px; border:1px solid #e0eaf0; border-left:3px solid #3392d8; border-radius:10px; background:#fff; }.sa-drill-row.attention { border-left-color:#d92d20; background:#fff8f7; }.sa-drill-row header { display:flex; justify-content:space-between; gap:14px; align-items:flex-start; }.sa-drill-row header b,.sa-drill-row header span,.sa-drill-row header small { display:block; }.sa-drill-row header b { color:#18384f; font-size:13px; }.sa-drill-row header span { margin-top:3px; color:#314c62; font-size:12px; font-weight:750; }.sa-drill-row header small,.sa-drill-row>small { margin-top:3px; color:#718397; font-size:10px; }.sa-drill-row header strong { flex:none; padding:4px 7px; border-radius:7px; color:#0b7653; background:#e9f8f0; font-size:10px; }.sa-drill-dates { display:flex; flex-wrap:wrap; gap:6px 14px; margin-top:9px; }.sa-drill-dates span { color:#75869a; font-size:10px; }.sa-drill-dates b { margin-left:4px; color:#29465d; }.sa-drill-row p { margin:9px 0 2px; color:#355267; font-size:11px; line-height:1.5; }.sa-drill-empty { padding:16px; border:1px dashed #b9ceda; border-radius:9px; color:#6c8091; background:#fff; font-size:12px; }
.sa-drill-product { overflow:hidden; border:1px solid #d7e7df; border-radius:11px; background:#fff; }.sa-drill-product-head { padding:12px 14px; border-left:4px solid #0ea76e; background:linear-gradient(105deg,#f3fcf7,#fbfdff); }.sa-drill-product-head span,.sa-drill-product-head b,.sa-drill-product-head strong { display:block; }.sa-drill-product-head span { color:#12845f; font-size:10px; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }.sa-drill-product-head b { margin-top:3px; color:#102f4b; font-size:20px; letter-spacing:-.025em; }.sa-drill-product-head strong { margin-top:5px; color:#224b68; font-size:14px; letter-spacing:.01em; }.sa-drill-order-list { display:grid; gap:8px; padding:8px; }.sa-drill-row { padding:13px 14px; }.sa-drill-row header b { color:#163b59; font-size:16px; letter-spacing:-.015em; }.sa-drill-row header small { max-width:720px; margin-top:4px; color:#6e8194; font-size:11px; line-height:1.35; }.sa-deadline { flex:none; max-width:235px; padding:6px 9px !important; border:1px solid transparent; border-radius:8px; font-size:11px !important; font-weight:850; line-height:1.25; text-align:right; }.sa-deadline.good { color:#08734d !important; border-color:#b7e7cf; background:#eaf9f0; }.sa-deadline.watch { color:#9a5d00 !important; border-color:#f1d69d; background:#fff7e6; }.sa-deadline.risk { color:#a83225 !important; border-color:#f1b7af; background:#fff0ee; }.sa-deadline.neutral { color:#586f83 !important; border-color:#d5e2ea; background:#f2f6f9; }.sa-drill-dates { gap:8px 20px; margin-top:12px; }.sa-drill-dates span { color:#657a8e; font-size:11px; font-weight:700; }.sa-drill-dates b { margin-left:5px; color:#183b57; font-size:13px; }.sa-drill-row p { margin:11px 0 4px; color:#294d68; font-size:12px; font-weight:700; line-height:1.5; }.sa-drill-row>small { color:#6e8295; font-size:11px; }

@media (max-width:860px) { .sa-drill-product-head b { font-size:18px; }.sa-drill-product-head strong { font-size:13px; }.sa-drill-row header { display:block; }.sa-deadline { display:inline-block; max-width:none; margin-top:8px; text-align:left; }.sa-drill-dates { gap:7px 12px; }.sa-drill-dates span { font-size:10px; }.sa-drill-dates b { font-size:12px; } }

/* Totalizador por referência: a linha é a leitura rápida; as OCs só aparecem no drill-down. */
.sa-item-totalizer .sa-table-wrap>table { min-width:1480px; }.sa-item-total-row { transition:background .14s; }.sa-item-total-row:hover { background:#f7fcfa; }.sa-item-total-row.is-open { background:linear-gradient(105deg,#f1fbf6,#fbfdff); }.sa-item-total-row td { min-width:116px; }.sa-item-total-row td:first-child { min-width:285px; }.sa-item-total-row td b { color:#173a56; font-size:13px; }.sa-item-total-row td small { color:#6d8295; font-size:10px; }.sa-item-toggle { display:block; width:100%; padding:0; border:0; color:inherit; background:transparent; cursor:pointer; font:inherit; text-align:left; }.sa-item-toggle b { color:#0d7251 !important; font-size:15px !important; letter-spacing:.01em; }.sa-item-toggle small { line-height:1.4; }.sa-item-toggle i { display:inline-block; margin-left:5px; color:#0a7b56; font-size:16px; font-style:normal; font-weight:900; line-height:.6; transition:transform .14s; }.sa-item-total-row.is-open .sa-item-toggle i { transform:rotate(90deg); }.sa-item-total-row td.attention b,.sa-item-total-row td.late b { color:#b42318; }.sa-item-total-row td.attention small,.sa-item-total-row td.late small { color:#a94232; font-weight:800; }.sa-item-attendance.good { color:#08734d !important; }.sa-item-attendance.watch { color:#9a5d00 !important; }.sa-item-attendance.risk { color:#b42318 !important; }.sa-item-detail-row>td { padding:0 !important; background:#f7fcfa; }.sa-item-detail-state { padding:18px 20px; color:#62778b; font-size:12px; }.sa-item-detail-state.error { color:#a83225; }.sa-item-order-detail { padding:15px 16px 17px; border-top:1px solid #b9ddcf; border-bottom:1px solid #d7e9e1; }.sa-item-order-detail>header { display:flex; justify-content:space-between; gap:14px; align-items:center; }.sa-item-order-detail>header span,.sa-item-order-detail>header b { display:block; }.sa-item-order-detail>header span { color:#0b8460; font-size:10px; font-weight:850; letter-spacing:.09em; }.sa-item-order-detail>header b { margin-top:3px; color:#143b57; font-size:18px; }.sa-item-order-detail>header button { border:0; padding:6px 0; color:#087a55; background:transparent; cursor:pointer; font:800 11px inherit; }.sa-item-order-detail>p { margin:9px 0 12px; color:#60778b; font-size:11px; line-height:1.42; }.sa-item-order-detail .sa-table-wrap { border-color:#d4e5de; background:#fff; }.sa-item-order-detail .sa-table-wrap>table { min-width:1250px; }.sa-item-order-detail td { min-width:112px; }.sa-item-order-detail td:first-child { min-width:220px; }.sa-item-order-detail tbody tr.attention { background:#fff7f6; }.sa-item-order-detail td.attention b,.sa-item-order-detail td.late b { color:#b42318; }.sa-item-order-detail td.attention small,.sa-item-order-detail td.late small { color:#a94232; font-weight:800; }


/* Os dois cards centrais preservam o resumo e expõem os quatro filtros sem multiplicar a tela. */
.sa-reading-split { min-width:0; }.sa-reading-split>b { margin-bottom:4px; }.sa-reading-segments { display:grid; grid-template-columns:1fr 1fr; gap:7px; margin-top:10px; }.sa-reading-segment { min-width:0; padding:8px; border:1px solid #dce8ef; border-radius:9px; color:inherit; background:#fbfdff; cursor:pointer; font:inherit; text-align:left; }.sa-reading-segment:hover,.sa-reading-segment.is-open { border-color:#74caae; background:#f0faf5; }.sa-reading-segment span { color:#677d91; font-size:9px; font-weight:850; letter-spacing:.04em; text-transform:uppercase; }.sa-reading-segment b { margin:4px 0 2px; color:#173750; font-size:14px; letter-spacing:-.02em; }.sa-reading-segment small { min-height:26px; color:#647b8e; font-size:9.5px; line-height:1.3; }.sa-reading-segment i { display:block; margin-top:4px; color:#087a55; font-size:9px; font-style:normal; font-weight:850; }.sa-reading-segment.good { border-left:3px solid #0bb477; }.sa-reading-segment.risk { border-left:3px solid #d92d20; }.sa-reading-segment.neutral { border-left:3px solid #8ca3b6; }

/* O drill do card usa a mesma leitura compacta da aba Itens; OCs só entram ao expandir a referência. */
.sa-card-item-totalizer { margin-top:13px; }.sa-item-totalizer>header { align-items:flex-start; }.sa-item-totalizer>header aside { display:grid; justify-items:end; gap:7px; max-width:290px; text-align:right; }.sa-filter-close { border:0; padding:3px 0; color:#087a55; background:transparent; cursor:pointer; font:800 11px inherit; }@media (max-width:860px) { .sa-item-totalizer>header { display:block; }.sa-item-totalizer>header aside { justify-items:start; max-width:none; margin-top:8px; text-align:left; } }

/* Visão geral: cartões são somente leitura; a grade abaixo é o único ponto de investigação. */
.sa-reading-segment { cursor:default; }.sa-reading-segment:hover { border-color:#dce8ef; background:#fbfdff; }.sa-reading-segment b { font-size:12px; }.sa-reading-segment small { min-height:0; }.sa-item-totalizer .sa-table-wrap { overflow-x:auto; }.sa-item-totalizer .sa-table-wrap>table { width:100%; min-width:1280px; table-layout:fixed; }.sa-item-totalizer th,.sa-item-totalizer td { min-width:0; }.sa-item-totalizer th:first-child,.sa-item-totalizer td:first-child { width:25%; min-width:260px; }.sa-item-totalizer th:nth-child(2),.sa-item-totalizer td:nth-child(2) { width:7%; }.sa-item-totalizer th:nth-child(3),.sa-item-totalizer td:nth-child(3),.sa-item-totalizer th:nth-child(4),.sa-item-totalizer td:nth-child(4),.sa-item-totalizer th:nth-child(5),.sa-item-totalizer td:nth-child(5),.sa-item-totalizer th:nth-child(6),.sa-item-totalizer td:nth-child(6) { width:8%; }.sa-item-totalizer th:nth-child(7),.sa-item-totalizer td:nth-child(7) { width:10%; }.sa-item-totalizer th:nth-child(8),.sa-item-totalizer td:nth-child(8) { width:11%; }.sa-item-totalizer th:nth-child(9),.sa-item-totalizer td:nth-child(9) { width:8%; }.sa-item-totalizer th:nth-child(10),.sa-item-totalizer td:nth-child(10) { width:7%; }.sa-item-sort { display:inline-flex; align-items:center; gap:4px; max-width:100%; padding:0; border:0; color:inherit; background:transparent; cursor:pointer; font:inherit; font-weight:inherit; letter-spacing:inherit; text-align:left; text-transform:inherit; }.sa-item-sort:hover,.sa-item-sort.active { color:#087a55; }.sa-item-sort i { color:#168461; font-size:12px; font-style:normal; line-height:1; }

/* Uma só rolagem vertical: o drill acompanha a página, sem painel interno. */
.sa-card-drill .sa-drill-list { max-height:none; overflow:visible; }
@media (max-width:1180px) { .sa-listing { overflow-x:auto; }.sa-column-head,.sa-supplier-grid { min-width:950px; grid-template-columns:minmax(220px,1.45fr) minmax(118px,.78fr) minmax(118px,.78fr) minmax(88px,.56fr) minmax(128px,.73fr) minmax(115px,.65fr) 54px; gap:8px; padding-left:15px; padding-right:15px; }.sa-column-head { padding-top:10px; padding-bottom:10px; }.sa-guide-grid,.sa-reading-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.sa-operation-panel .sa-metrics { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (max-width:860px) { .sa-guide-grid { grid-template-columns:1fr; }.sa-history-range { grid-template-columns:1fr; }.sa-column-head { display:none; }.sa-supplier-grid { grid-template-columns:minmax(0,1fr) auto; gap:9px; padding:14px; }.sa-row-value,.sa-row-kpi { display:none; }.sa-row-open { grid-column:2; grid-row:1; }.sa-expand { margin:0 8px 12px; padding:14px; }.sa-expand-head { display:block; }.sa-detail-tags { justify-content:flex-start; margin-top:10px; }.sa-tabs { margin:0 -14px; padding-left:14px; padding-right:14px; }.sa-reading-grid,.sa-operation-panel .sa-metrics { grid-template-columns:1fr; }.sa-listing-head { display:block; padding:16px; }.sa-listing-head small { margin-top:6px; text-align:left; }.sa-guide summary { grid-template-columns:1fr auto; }.sa-guide summary span { grid-column:1/-1; } }
@media (max-width:860px) { .sa-supplier-grid,.sa-column-head { min-width:0; } }

/* Fechamentos explícitos mantêm o drill enxuto e devolvem o foco à carteira. */
.sa-expand-side { display:grid; justify-items:end; gap:10px; max-width:430px; }.sa-collapse-supplier { display:inline-flex; align-items:center; padding:7px 10px; border:1px solid #abdcc8; border-radius:9px; color:#087a55; background:#edf9f3; cursor:pointer; font:800 11px/1.2 inherit; white-space:nowrap; }.sa-collapse-supplier:hover { border-color:#78c9aa; background:#e4f6ed; }.sa-item-order-detail>header.sa-item-order-toolbar { min-height:26px; justify-content:flex-end; }.sa-item-order-detail>header.sa-item-order-toolbar button { padding:2px 0; }.sa-item-order-detail>header.sa-item-order-toolbar+p { margin-top:2px; }
@media (max-width:860px) { .sa-expand-side { justify-items:start; max-width:none; margin-top:12px; }.sa-detail-tags { margin-top:0; } }

/* HML21: novas colunas preservam leitura compacta, ordenação e responsividade. */
.sa-item-totalizer>.sa-table-wrap>table { min-width:1460px; }
.sa-item-totalizer th:first-child,.sa-item-totalizer td:first-child { width:21%; min-width:245px; }
.sa-item-totalizer th:nth-child(2),.sa-item-totalizer td:nth-child(2) { width:5.5%; }
.sa-item-totalizer th:nth-child(3),.sa-item-totalizer td:nth-child(3),
.sa-item-totalizer th:nth-child(4),.sa-item-totalizer td:nth-child(4),
.sa-item-totalizer th:nth-child(5),.sa-item-totalizer td:nth-child(5),
.sa-item-totalizer th:nth-child(6),.sa-item-totalizer td:nth-child(6),
.sa-item-totalizer th:nth-child(7),.sa-item-totalizer td:nth-child(7) { width:7%; }
.sa-item-totalizer th:nth-child(8),.sa-item-totalizer td:nth-child(8) { width:9%; }
.sa-item-totalizer th:nth-child(9),.sa-item-totalizer td:nth-child(9) { width:10%; }
.sa-item-totalizer th:nth-child(10),.sa-item-totalizer td:nth-child(10),
.sa-item-totalizer th:nth-child(11),.sa-item-totalizer td:nth-child(11) { width:7%; }
.sa-item-order-detail .sa-table-wrap>table { width:100%; min-width:1420px; table-layout:fixed; }
.sa-item-order-detail th:first-child,.sa-item-order-detail td:first-child { width:18%; min-width:210px; }
.sa-item-order-detail th:not(:first-child),.sa-item-order-detail td:not(:first-child) { width:8.2%; min-width:102px; }
.sa-order-sort { display:inline-flex; align-items:center; gap:4px; max-width:100%; padding:0; border:0; color:inherit; background:transparent; cursor:pointer; font:inherit; font-weight:inherit; letter-spacing:inherit; text-align:left; text-transform:inherit; }
.sa-order-sort:hover,.sa-order-sort.active { color:#087a55; }
.sa-order-sort i { color:#168461; font-size:12px; font-style:normal; line-height:1; }

.sa-lead-average { display:inline-flex; margin:0 5px 4px 0; padding:2px 6px; border-radius:999px; color:#075f45; background:#e4f7ee; font-size:10px; font-weight:850; }


@media (max-width:720px) {
  .sa-item-totalizer>.sa-table-wrap { overflow:visible; border:0; background:transparent; }
  .sa-item-totalizer>.sa-table-wrap>table,
  .sa-item-totalizer>.sa-table-wrap>table>tbody { display:block; width:100%; min-width:0; }
  .sa-item-totalizer>.sa-table-wrap>table>thead { display:none; }
  .sa-item-totalizer>.sa-table-wrap>table>tbody>.sa-item-total-row { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0; overflow:hidden; margin:0 0 10px; border:1px solid #d9e7e1; border-radius:12px; background:#fff; }
  .sa-item-totalizer>.sa-table-wrap>table>tbody>.sa-item-total-row>td { display:block; width:auto; min-width:0; padding:10px 12px; border:0; border-top:1px solid #edf2f5; }
  .sa-item-totalizer>.sa-table-wrap>table>tbody>.sa-item-total-row>td:nth-child(even) { border-right:1px solid #edf2f5; }
  .sa-item-totalizer>.sa-table-wrap>table>tbody>.sa-item-total-row>td:first-child { grid-column:1/-1; min-width:0; border-top:0; border-right:0; background:#f4fbf7; }
  .sa-item-totalizer>.sa-table-wrap>table>tbody>.sa-item-total-row>td::before,
  .sa-item-order-detail tbody tr>td::before { content:attr(data-label); display:block; margin-bottom:4px; color:#718598; font-size:9px; font-weight:850; letter-spacing:.05em; text-transform:uppercase; }
  .sa-item-total-row td b { font-size:12px; }
  .sa-item-toggle b { font-size:16px !important; }
  .sa-item-detail-row { display:block; margin:-10px 0 12px; }
  .sa-item-detail-row>td { display:block; width:100%; min-width:0 !important; }
  .sa-item-order-detail { padding:12px 10px; }
  .sa-item-order-detail .sa-table-wrap { overflow:visible; border:0; background:transparent; }
  .sa-item-order-detail .sa-table-wrap>table,
  .sa-item-order-detail .sa-table-wrap>table>tbody { display:block; width:100%; min-width:0; }
  .sa-item-order-detail .sa-table-wrap>table>thead { display:none; }
  .sa-item-order-detail tbody tr { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); overflow:hidden; margin:0 0 10px; border:1px solid #d7e5df; border-radius:11px; background:#fff; }
  .sa-item-order-detail tbody tr>td { display:block; width:auto !important; min-width:0 !important; padding:9px 10px; border:0; border-top:1px solid #edf2f5; }
  .sa-item-order-detail tbody tr>td:nth-child(even) { border-right:1px solid #edf2f5; }
  .sa-item-order-detail tbody tr>td:first-child { grid-column:1/-1; border-top:0; border-right:0; background:#f5faf8; }
  .sa-item-order-detail>header.sa-item-order-toolbar { min-height:34px; }
  .sa-item-order-detail>p { margin-top:5px; }
  
  
  
  
}

@media (max-width:430px) {
  .sa-item-totalizer>.sa-table-wrap>table>tbody>.sa-item-total-row,
  .sa-item-order-detail tbody tr { grid-template-columns:1fr; }
  .sa-item-totalizer>.sa-table-wrap>table>tbody>.sa-item-total-row>td,
  .sa-item-totalizer>.sa-table-wrap>table>tbody>.sa-item-total-row>td:nth-child(even),
  .sa-item-order-detail tbody tr>td,
  .sa-item-order-detail tbody tr>td:nth-child(even) { border-right:0; }
}

/* HML23: zoom acessível sem corte. O módulo usa toda a largura e reage à área real do totalizador. */
#view-analise-fornecedores { width:100%; max-width:none; margin-inline:0; }
.sa-expand { margin-inline:clamp(4px,.65vw,12px); padding:clamp(14px,.9vw,18px); }
.sa-item-totalizer { container-name:supplier-items; container-type:inline-size; padding:clamp(12px,.9vw,17px); }
.sa-item-toggle small {
  display:-webkit-box;
  overflow:hidden;
  overflow-wrap:anywhere;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
}

/* 1920px em zoom de 125% oferece cerca de 1536px CSS: preserva a grade e a fonte. */
@media (min-width:721px) and (max-width:1600px) {
  .sa-item-totalizer>.sa-table-wrap>table { width:100%; min-width:0; table-layout:fixed; }
  .sa-item-totalizer th,.sa-item-totalizer td { padding-inline:6px; }
  .sa-item-totalizer th:first-child,.sa-item-totalizer td:first-child { width:19%; min-width:0; }
  .sa-item-totalizer th:nth-child(2),.sa-item-totalizer td:nth-child(2) { width:5%; }
  .sa-item-totalizer th:nth-child(3),.sa-item-totalizer td:nth-child(3),
  .sa-item-totalizer th:nth-child(4),.sa-item-totalizer td:nth-child(4),
  .sa-item-totalizer th:nth-child(5),.sa-item-totalizer td:nth-child(5),
  .sa-item-totalizer th:nth-child(6),.sa-item-totalizer td:nth-child(6),
  .sa-item-totalizer th:nth-child(7),.sa-item-totalizer td:nth-child(7) { width:7%; }
  .sa-item-totalizer th:nth-child(8),.sa-item-totalizer td:nth-child(8) { width:9%; }
  .sa-item-totalizer th:nth-child(9),.sa-item-totalizer td:nth-child(9) { width:10%; }
  .sa-item-totalizer th:nth-child(10),.sa-item-totalizer td:nth-child(10) { width:7%; }
  .sa-item-totalizer th:nth-child(11),.sa-item-totalizer td:nth-child(11) { width:8%; }
  .sa-item-toggle small { font-size:9.5px; line-height:1.28; }
  .sa-item-sort,.sa-order-sort { gap:2px; line-height:1.16; }
  .sa-item-order-detail { padding-inline:10px; }
  .sa-item-order-detail .sa-table-wrap>table { width:100%; min-width:0; table-layout:fixed; }
  .sa-item-order-detail th,.sa-item-order-detail td { min-width:0; padding-inline:6px; }
  .sa-item-order-detail th:first-child,.sa-item-order-detail td:first-child { width:16%; min-width:0; }
  .sa-item-order-detail th:not(:first-child),.sa-item-order-detail td:not(:first-child) { width:8.4%; min-width:0; }
}

/* O mesmo encaixe acompanha o painel quando menu lateral ou janela reduzem a área útil. */
@container supplier-items (max-width:1450px) {
  .sa-item-totalizer>.sa-table-wrap>table { width:100%; min-width:0; table-layout:fixed; }
  .sa-item-totalizer th,.sa-item-totalizer td { padding-inline:6px; }
  .sa-item-totalizer th:first-child,.sa-item-totalizer td:first-child { width:19%; min-width:0; }
  .sa-item-totalizer th:nth-child(2),.sa-item-totalizer td:nth-child(2) { width:5%; }
  .sa-item-totalizer th:nth-child(3),.sa-item-totalizer td:nth-child(3),
  .sa-item-totalizer th:nth-child(4),.sa-item-totalizer td:nth-child(4),
  .sa-item-totalizer th:nth-child(5),.sa-item-totalizer td:nth-child(5),
  .sa-item-totalizer th:nth-child(6),.sa-item-totalizer td:nth-child(6),
  .sa-item-totalizer th:nth-child(7),.sa-item-totalizer td:nth-child(7) { width:7%; }
  .sa-item-totalizer th:nth-child(8),.sa-item-totalizer td:nth-child(8) { width:9%; }
  .sa-item-totalizer th:nth-child(9),.sa-item-totalizer td:nth-child(9) { width:10%; }
  .sa-item-totalizer th:nth-child(10),.sa-item-totalizer td:nth-child(10) { width:7%; }
  .sa-item-totalizer th:nth-child(11),.sa-item-totalizer td:nth-child(11) { width:8%; }
  .sa-item-toggle small { font-size:9.5px; line-height:1.28; }
  .sa-item-sort,.sa-order-sort { gap:2px; line-height:1.16; }
  .sa-item-order-detail { padding-inline:10px; }
  .sa-item-order-detail .sa-table-wrap>table { width:100%; min-width:0; table-layout:fixed; }
  .sa-item-order-detail th,.sa-item-order-detail td { min-width:0; padding-inline:6px; }
  .sa-item-order-detail th:first-child,.sa-item-order-detail td:first-child { width:16%; min-width:0; }
  .sa-item-order-detail th:not(:first-child),.sa-item-order-detail td:not(:first-child) { width:8.4%; min-width:0; }
}

/* Abaixo do limite legível, as mesmas informações se reorganizam em cartões rotulados. */
@container supplier-items (max-width:1250px) {
  .sa-item-totalizer>.sa-table-wrap { overflow:visible; border:0; background:transparent; }
  .sa-item-totalizer>.sa-table-wrap>table,
  .sa-item-totalizer>.sa-table-wrap>table>tbody { display:block; width:100%; min-width:0; }
  .sa-item-totalizer>.sa-table-wrap>table>thead { display:none; }
  .sa-item-totalizer>.sa-table-wrap>table>tbody>.sa-item-total-row { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0; overflow:hidden; margin:0 0 10px; border:1px solid #d9e7e1; border-radius:12px; background:#fff; }
  .sa-item-totalizer>.sa-table-wrap>table>tbody>.sa-item-total-row>td { display:block; width:auto; min-width:0; padding:10px 12px; border:0; border-top:1px solid #edf2f5; }
  .sa-item-totalizer>.sa-table-wrap>table>tbody>.sa-item-total-row>td:nth-child(even) { border-right:1px solid #edf2f5; }
  .sa-item-totalizer>.sa-table-wrap>table>tbody>.sa-item-total-row>td:first-child { grid-column:1/-1; min-width:0; border-top:0; border-right:0; background:#f4fbf7; }
  .sa-item-totalizer>.sa-table-wrap>table>tbody>.sa-item-total-row>td::before,
  .sa-item-order-detail tbody tr>td::before { content:attr(data-label); display:block; margin-bottom:4px; color:#718598; font-size:9px; font-weight:850; letter-spacing:.05em; text-transform:uppercase; }
  .sa-item-total-row td b { font-size:12px; }
  .sa-item-toggle b { font-size:16px !important; }
  .sa-item-toggle small { font-size:10px; }
  .sa-item-detail-row { display:block; margin:-10px 0 12px; }
  .sa-item-detail-row>td { display:block; width:100%; min-width:0 !important; }
  .sa-item-order-detail { padding:12px 10px; }
  .sa-item-order-detail .sa-table-wrap { overflow:visible; border:0; background:transparent; }
  .sa-item-order-detail .sa-table-wrap>table,
  .sa-item-order-detail .sa-table-wrap>table>tbody { display:block; width:100%; min-width:0; }
  .sa-item-order-detail .sa-table-wrap>table>thead { display:none; }
  .sa-item-order-detail tbody tr { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); overflow:hidden; margin:0 0 10px; border:1px solid #d7e5df; border-radius:11px; background:#fff; }
  .sa-item-order-detail tbody tr>td { display:block; width:auto !important; min-width:0 !important; padding:9px 10px; border:0; border-top:1px solid #edf2f5; }
  .sa-item-order-detail tbody tr>td:nth-child(even) { border-right:1px solid #edf2f5; }
  .sa-item-order-detail tbody tr>td:first-child { grid-column:1/-1; border-top:0; border-right:0; background:#f5faf8; }
  .sa-item-order-detail>header.sa-item-order-toolbar { min-height:34px; }
  .sa-item-order-detail>p { margin-top:5px; }
  
  
  
  
}

@container supplier-items (max-width:620px) {
  .sa-item-totalizer>.sa-table-wrap>table>tbody>.sa-item-total-row,
  .sa-item-order-detail tbody tr { grid-template-columns:1fr; }
  .sa-item-totalizer>.sa-table-wrap>table>tbody>.sa-item-total-row>td,
  .sa-item-totalizer>.sa-table-wrap>table>tbody>.sa-item-total-row>td:nth-child(even),
  .sa-item-order-detail tbody tr>td,
  .sa-item-order-detail tbody tr>td:nth-child(even) { border-right:0; }
}

/* HML24: mantém no DOM somente uma página de referências e torna a navegação leve. */
.sa-item-pager { display:flex; justify-content:space-between; gap:12px; align-items:center; padding:9px 2px; color:#60778b; font-size:10.5px; }
.sa-item-pager div { display:flex; gap:8px; align-items:center; }
.sa-item-pager b { color:#25445d; font-size:10.5px; white-space:nowrap; }
.sa-item-pager button { min-height:30px; padding:6px 9px; border:1px solid #b8ddce; border-radius:8px; color:#087a55; background:#effaf5; cursor:pointer; font:800 10.5px/1 inherit; }
.sa-item-pager button:hover:not(:disabled) { border-color:#79c5a8; background:#e5f6ed; }
.sa-item-pager button:disabled { cursor:default; opacity:.45; }



@media (max-width:720px) { .sa-item-pager { display:grid; justify-content:stretch; }.sa-item-pager div { justify-content:space-between; }.sa-item-pager button { min-height:36px; } }

/* HML: plano de cobertura compacto, sem cards por item e sem rolagem vertical interna. */
.sa-coverage-panel { padding:15px; border:1px solid #d9e8e2; border-radius:14px; background:#fff; }
.sa-coverage-head { display:flex; justify-content:space-between; gap:18px; align-items:flex-start; padding:1px 2px 13px; }
.sa-coverage-head span,.sa-coverage-head b,.sa-coverage-head small { display:block; }
.sa-coverage-head span { color:#08825c; font-size:10px; font-weight:900; letter-spacing:.1em; }
.sa-coverage-head b { margin-top:3px; color:#173851; font-size:17px; }
.sa-coverage-head small { margin-top:4px; color:#687e90; font-size:10.5px; line-height:1.35; }
.sa-coverage-head aside { min-width:250px; text-align:right; }
.sa-coverage-head aside strong { display:block; color:#08754f; font-size:14px; }
.sa-coverage-toolbar { display:flex; gap:7px; align-items:center; padding:8px 9px; border:1px solid #deebe6; border-radius:10px; background:#f7fbf9; }
.sa-coverage-toolbar button { min-height:30px; padding:6px 11px; border:1px solid transparent; border-radius:8px; color:#4c6579; background:transparent; cursor:pointer; font:800 10.5px/1 inherit; }
.sa-coverage-toolbar button:hover,.sa-coverage-toolbar button.active { border-color:#9dd5bd; color:#08734f; background:#e9f7f0; }
.sa-coverage-toolbar button:disabled { cursor:not-allowed; opacity:.48; }
.sa-coverage-toolbar>span { color:#748898; font-size:10px; font-weight:700; }
.sa-coverage-actions { display:flex; gap:7px; align-items:center; margin-left:auto; }
.sa-coverage-actions strong { display:flex; gap:6px; align-items:baseline; min-height:30px; padding:6px 10px; border:1px solid #b9dfcf; border-radius:8px; color:#08734f; background:#edfaf4; font-size:12px; white-space:nowrap; }
.sa-coverage-actions strong small { color:#647c8d; font-size:9px; font-weight:850; text-transform:uppercase; }
.sa-coverage-toolbar .sa-coverage-export { border-color:#0b8b61; color:#fff; background:#0b8b61; }
.sa-coverage-toolbar .sa-coverage-export:hover:not(:disabled) { border-color:#08734f; color:#fff; background:#08734f; }
.sa-coverage-toolbar .sa-coverage-clear { border-color:#e3b1aa; color:#a9362b; background:#fff7f5; }
.sa-coverage-toolbar .sa-coverage-clear:hover:not(:disabled) { border-color:#cf776c; color:#92281f; background:#ffefec; }
.sa-coverage-table-wrap { overflow-x:auto; margin-top:9px; border:1px solid #dbe7e2; border-radius:11px; background:#fff; }
.sa-coverage-table { width:100%; min-width:1320px; border-collapse:collapse; table-layout:fixed; }
.sa-coverage-table th { padding:9px 7px; border-bottom:1px solid #d7e5df; color:#5b7185; background:#f2f7f9; font-size:9px; font-weight:900; letter-spacing:.035em; text-align:left; text-transform:uppercase; }
.sa-coverage-table td { height:54px; padding:7px; border-bottom:1px solid #e5eeea; color:#173851; font-size:11px; vertical-align:middle; }
.sa-coverage-table tbody tr:last-child td { border-bottom:0; }
.sa-coverage-table tbody tr { transition:background .13s,box-shadow .13s; }
.sa-coverage-table tbody tr:hover { background:#f8fcfa; }
.sa-coverage-table tbody tr.is-purchased { background:#f0faf5; }
.sa-coverage-table tbody tr.is-not-purchased { background:#fff9ef; }
.sa-coverage-table tbody tr.is-saving { box-shadow:inset 3px 0 #f0a020; }
.sa-coverage-table tbody tr.is-error { background:#fff4f2; box-shadow:inset 3px 0 #c5392d; }
.sa-coverage-table td b,.sa-coverage-table td small { display:block; }
.sa-coverage-table td b { overflow:hidden; color:#173851; font-size:11.5px; text-overflow:ellipsis; white-space:nowrap; }
.sa-coverage-table td small { overflow:hidden; margin-top:2px; color:#718596; font-size:9.5px; line-height:1.25; text-overflow:ellipsis; white-space:nowrap; }
.sa-coverage-table th:nth-child(1),.sa-coverage-table td:nth-child(1) { width:145px; text-align:center; }
.sa-coverage-table th:nth-child(2),.sa-coverage-table td:nth-child(2) { width:245px; }
.sa-coverage-table th:nth-child(3),.sa-coverage-table td:nth-child(3) { width:90px; text-align:center; }
.sa-coverage-table th:nth-child(4),.sa-coverage-table td:nth-child(4) { width:108px; }
.sa-coverage-table th:nth-child(5),.sa-coverage-table td:nth-child(5),
.sa-coverage-table th:nth-child(6),.sa-coverage-table td:nth-child(6) { width:96px; }
.sa-coverage-table th:nth-child(7),.sa-coverage-table td:nth-child(7) { width:108px; }
.sa-coverage-table th:nth-child(8),.sa-coverage-table td:nth-child(8) { width:170px; }
.sa-coverage-table th:nth-child(9),.sa-coverage-table td:nth-child(9) { width:112px; }
.sa-coverage-table th:nth-child(10),.sa-coverage-table td:nth-child(10) { width:135px; }
.sa-coverage-sort { display:inline-flex; gap:3px; align-items:center; padding:0; border:0; color:inherit; background:transparent; cursor:pointer; font:inherit; font-weight:inherit; letter-spacing:inherit; text-align:left; text-transform:inherit; }
.sa-coverage-sort:hover,.sa-coverage-sort.active { color:#087550; }
.sa-coverage-sort i { color:#168461; font-size:11px; font-style:normal; }
.sa-coverage-check label { display:inline-grid; place-items:center; width:26px; height:26px; margin:auto; cursor:pointer; }
.sa-coverage-check input { position:absolute; width:1px; height:1px; opacity:0; }
.sa-coverage-check span { display:grid; place-items:center; width:22px; height:22px; border:1px solid #a7cbbc; border-radius:6px; color:transparent; background:#fff; font-size:13px; font-weight:950; }
.sa-coverage-check input:checked+span { border-color:#0a8a5f; color:#fff; background:#0a8a5f; }
.sa-coverage-check input:focus-visible+span { outline:2px solid #2a79d0; outline-offset:2px; }
.sa-coverage-decision-controls { display:flex; justify-content:center; gap:5px; }
.sa-coverage-decision-controls label { position:relative; display:block; cursor:pointer; }
.sa-coverage-decision-controls input { position:absolute; width:1px; height:1px; opacity:0; }
.sa-coverage-decision-controls span { display:grid; place-items:center; width:28px; height:24px; border:1px solid #a7cbbc; border-radius:6px; color:#658174; background:#fff; font-size:12px; font-weight:950; }
.sa-coverage-decision-controls em { position:absolute; overflow:hidden; width:1px; height:1px; clip:rect(0 0 0 0); white-space:nowrap; }
.sa-coverage-decision-controls input[data-sa-coverage-decision="PURCHASED"]:checked+span { border-color:#0a8a5f; color:#fff; background:#0a8a5f; }
.sa-coverage-decision-controls input[data-sa-coverage-decision="NOT_PURCHASED"]:checked+span { border-color:#d17d12; color:#fff; background:#d98a1c; }
.sa-coverage-decision-controls input:focus-visible+span { outline:2px solid #2a79d0; outline-offset:2px; }
.sa-coverage-decision select { width:100%; min-height:25px; margin-top:5px; padding:3px 5px; border:1px solid #e4c38e; border-radius:6px; color:#805112; background:#fffaf1; font:750 9px/1.1 inherit; }
.sa-coverage-decision select[hidden] { display:none; }
.sa-coverage-class { display:inline-flex; min-width:46px; justify-content:center; padding:5px 7px; border-radius:999px; color:#08714e; background:#e8f7ef; font-size:11px; letter-spacing:.06em; }
.sa-coverage-risk { color:#b42318 !important; }
.sa-coverage-table input[type="text"] { width:100%; min-height:34px; padding:7px 8px; border:1px solid #cbdde5; border-radius:8px; color:#173851; background:#fff; font:750 11px/1.1 inherit; }
.sa-coverage-table input[type="text"]:focus { border-color:#31a77d; outline:2px solid rgba(49,167,125,.13); }
.sa-coverage-table input:disabled { cursor:not-allowed; opacity:.7; }
.sa-coverage-price { display:grid; grid-template-columns:auto minmax(0,1fr); align-items:center; overflow:hidden; border:1px solid #cbdde5; border-radius:8px; background:#fff; }
.sa-coverage-price span { padding-left:7px; color:#6f8291; font-size:9.5px; font-weight:850; }
.sa-coverage-price input { border:0 !important; outline:0 !important; }
.sa-coverage-pager { padding-inline:0; }

@media (max-width:860px) {
  .sa-coverage-panel { padding:11px 9px; }
  .sa-coverage-head { display:block; }
  .sa-coverage-head aside { min-width:0; margin-top:8px; text-align:left; }
  .sa-coverage-toolbar { flex-wrap:wrap; }
  .sa-coverage-actions { order:2; width:100%; margin-left:0; flex-wrap:wrap; }
  .sa-coverage-toolbar>span { order:3; flex-basis:100%; margin-left:2px; }
  .sa-coverage-table { min-width:1250px; }
}
