/* Evolução visual restrita a Produtos e Fornecedores. Sem imports ou alterações globais. */
:is(#produtosView,#fornView){--brand:#7B2FFF;--brand-soft:#F4EDFF;--ink:#25212A;--muted:#655F6B;--line:#E4DFE8;color:var(--ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.5;min-width:0}
:is(#produtosView,#fornView) [hidden]{display:none!important}
:is(#produtosView,#fornView) :is(button,input,select,textarea){font-family:inherit}
:is(#produtosView,#fornView) :is(button,a,input,select,textarea,summary):focus-visible{outline:3px solid #5520AE;outline-offset:3px}
:is(#produtosView,#fornView) :is(button,.ci-detail-nav a,summary){min-height:44px}
:is(#produtosView,#fornView) button{font-size:14px;line-height:1.35;white-space:normal}
:is(#produtosView,#fornView) :is(input,select,textarea){font-size:16px;max-width:100%;box-sizing:border-box}
:is(#produtosView,#fornView) :is(.btn-primary,.btn){border-radius:10px}
:is(#produtosView,#fornView) .btn-primary{background:#7B2FFF;border-color:#7B2FFF;color:#fff}
:is(#produtosView,#fornView) :is(.btn-primary:hover,.btn-primary:focus-visible){background:#6420DB}
:is(#produtosView,#fornView) :is(.btn-ghost,.btn-secondary){border:1px solid #C6BDCF;background:#fff;color:#432365;border-radius:10px;padding:10px 14px}
:is(#produtosView,#fornView) button:disabled{cursor:not-allowed;opacity:.55}

/* Filtros e ações: campos legíveis e quebra natural sem esconder controles. */
:is(#produtosView,#fornView) .ci-toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;padding:16px;background:#FBF9FF;border:1px solid var(--line);border-radius:16px;margin-bottom:12px}
:is(#produtosView,#fornView) .ci-field{display:flex;flex:1 1 180px;flex-direction:column;gap:6px;min-width:0;font-size:14px;font-weight:600;color:var(--muted)}
:is(#produtosView,#fornView) .ci-field:first-child{flex:2 1 240px}
:is(#produtosView,#fornView) .ci-field :is(input,select,textarea){width:100%;min-height:44px;padding:10px 12px;background:#fff;border:1px solid #C6BDCF;border-radius:10px;color:var(--ink);font-weight:400}
:is(#produtosView,#fornView) .ci-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-width:0}
:is(#produtosView,#fornView) .ci-actions button{padding:10px 14px}
:is(#produtosView,#fornView) .ci-chips{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:10px 0 16px}
:is(#produtosView,#fornView) .ci-chip{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 12px;background:#F4EDFF;border:1px solid #D1B5FF;border-radius:999px;color:#4F208A;font-size:14px;text-align:left}
:is(#produtosView,#fornView) .ci-chip[aria-pressed="true"]{border-color:#7B2FFF;box-shadow:inset 0 0 0 1px #7B2FFF;font-weight:700}
:is(#produtosView,#fornView) .ci-list-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin:18px 0 12px}
:is(#produtosView,#fornView) .ci-list-head :is(h2,h3,p){margin:0}
:is(#produtosView,#fornView) .ci-muted{color:var(--muted);font-size:14px;font-weight:400}
:is(#produtosView,#fornView) .ci-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 9px;max-width:100%;border:1px solid #D8C5EE;border-radius:8px;background:#F8F3FF;color:#522781;font-size:14px;font-weight:600;line-height:1.4;white-space:normal}

/* Lista tabular no computador. A identidade é o primeiro ponto de leitura. */
:is(#produtosView,#fornView) .ci-table{max-width:100%;overflow-x:auto;background:#fff;border:1px solid var(--line);border-radius:14px}
:is(#produtosView,#fornView) :is(.ci-table table,table.ci-table){width:100%;border-collapse:collapse;font-size:14px;line-height:1.45;text-align:left}
:is(#produtosView,#fornView) .ci-table :is(th,td){padding:14px 16px;border-bottom:1px solid var(--line);vertical-align:middle;overflow-wrap:anywhere}
:is(#produtosView,#fornView) .ci-table th{background:#FBF9FF;color:var(--muted);font-weight:600;font-size:14px;white-space:normal}
:is(#produtosView,#fornView) .ci-table tbody tr:last-child td{border-bottom:0}
:is(#produtosView,#fornView) .ci-table tbody tr:hover{background:#FCFAFF}
:is(#produtosView,#fornView) .ci-table td:first-child{width:32%;min-width:180px}
:is(#produtosView,#fornView) .ci-table td:last-child{white-space:normal}
:is(#produtosView,#fornView) .ci-name{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:3px;max-width:100%;padding:0;border:0;background:transparent;box-shadow:none;color:#492372;text-align:left;text-decoration:none;font-size:16px;font-weight:650;overflow-wrap:anywhere;cursor:pointer}
:is(#produtosView,#fornView) .ci-name:hover{text-decoration:underline;text-underline-offset:3px}
:is(#produtosView,#fornView) .ci-name small{font-size:14px;color:var(--muted);font-weight:400;text-decoration:none}
:is(#produtosView,#fornView) .ci-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));gap:14px}
:is(#produtosView,#fornView) .ci-card{min-width:0;padding:18px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 2px 8px rgb(37 33 42 / 3%)}
:is(#produtosView,#fornView) .ci-card :is(h3,p){margin:0 0 10px}
:is(#produtosView,#fornView) .ci-card .ci-actions{margin-top:14px}
:is(#produtosView,#fornView) .ci-pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-top:16px;padding:12px 0;font-size:14px}
:is(#produtosView,#fornView) .ci-pagination button{min-width:44px;padding:10px 14px}
:is(#produtosView,#fornView) .ci-empty{padding:28px 20px;background:#FBF9FF;border:1px dashed #B7AFC0;border-radius:16px;color:var(--muted);font-size:16px;text-align:center;overflow-wrap:anywhere}

/* Ficha contínua e detalhes progressivos. */
:is(#produtosView,#fornView) .ci-supplier-record{max-width:1100px;margin:0 auto;min-width:0}
:is(#produtosView,#fornView) .ci-section{padding:20px;background:#fff;border:1px solid var(--line);border-radius:16px;margin:16px 0;scroll-margin-top:120px;min-width:0}
:is(#produtosView,#fornView) .ci-section-title{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin:0 0 14px;color:var(--ink);font-size:18px;font-weight:650;line-height:1.4}
:is(#produtosView,#fornView) .ci-section-title :is(h2,h3){margin:0;font:inherit}
:is(#produtosView,#fornView) .ci-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;min-width:0;margin-bottom:16px}
:is(#produtosView,#fornView) .ci-detail-head>div{min-width:0}
:is(#produtosView,#fornView) .ci-detail-head :is(h2,h3){margin:0 0 6px;font-size:24px;line-height:1.25;overflow-wrap:anywhere}
:is(#produtosView,#fornView) .ci-detail-head p{margin:0;color:var(--muted);font-size:14px}
:is(#produtosView,#fornView) .ci-detail-head>button{flex:0 0 auto;min-width:44px;padding:10px 12px}
:is(#produtosView,#fornView) .ci-detail-nav{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 20px}
:is(#produtosView,#fornView) .ci-detail-nav :is(a,button){display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:9px 12px;border:1px solid var(--line);border-radius:10px;background:#FBF9FF;color:#492372;font-size:14px;text-decoration:none}
:is(#produtosView,#fornView) .ci-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 24px;margin:0;min-width:0}
:is(#produtosView,#fornView) .ci-facts>div{min-width:0}
:is(#produtosView,#fornView) .ci-facts dt{margin:0 0 4px;font-size:14px;color:var(--muted);font-weight:400}
:is(#produtosView,#fornView) .ci-facts dd{margin:0;color:var(--ink);font-size:16px;font-weight:550;overflow-wrap:anywhere}
:is(#produtosView,#fornView) .ci-note{margin:12px 0;padding:12px 14px;background:#FBF9FF;border:1px solid var(--line);border-left:3px solid #7B2FFF;border-radius:10px;color:#514A59;font-size:14px;line-height:1.55;overflow-wrap:anywhere}
:is(#produtosView,#fornView) .ci-disclosure{margin:16px 0;border:1px solid var(--line);border-radius:14px;background:#fff;min-width:0}
:is(#produtosView,#fornView) .ci-disclosure>summary{padding:14px 18px;cursor:pointer;color:var(--ink);font-weight:600;font-size:16px}
:is(#produtosView,#fornView) .ci-disclosure[open]>summary{border-bottom:1px solid var(--line)}
:is(#produtosView,#fornView) .ci-disclosure> :not(summary){margin:16px 18px}

/* Formulários existentes: contrato e campos preservados, leitura uniforme. */
:is(#produtosView,#fornView) :is(.prod-fld,.impr-form label){display:flex;flex-direction:column;gap:6px;min-width:0;margin:10px 0;font-size:14px;color:var(--muted);font-weight:600}
:is(#produtosView,#fornView) :is(.prod-fld,.impr-form) :is(input,select,textarea){width:100%;min-height:44px;padding:10px 12px;border:1px solid #C6BDCF;border-radius:10px;background:#fff;color:var(--ink);font:400 16px/1.4 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
:is(#produtosView,#fornView) :is(.prod-fld,.impr-form) textarea{min-height:100px;resize:vertical}
:is(#produtosView,#fornView) label.ci-check{display:flex;flex-direction:row;align-items:center;gap:10px;min-height:44px;cursor:pointer}
:is(#produtosView,#fornView) .ci-check input[type="checkbox"]{flex:0 0 24px;width:24px;height:24px;min-height:24px;margin:0;padding:0;accent-color:#7B2FFF}
:is(#produtosView,#fornView) .impr-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px}
:is(#produtosView,#fornView) :is(.impr-actions,.prod-ops-actions){display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px}
:is(#produtosView,#fornView) :is(.impr-actions,.prod-ops-actions) button{padding:10px 14px}
:is(#produtosView,#fornView) :is(.prod-ops-err,.impr-err){font-size:14px;line-height:1.5;overflow-wrap:anywhere}
:is(#produtosView,#fornView) .prod-tab-wrap{max-width:100%;overflow-x:auto;border:1px solid var(--line);border-radius:12px;overscroll-behavior-x:contain}
:is(#produtosView,#fornView) .prod-tab{width:100%;font-family:inherit;font-size:14px;line-height:1.5}
:is(#produtosView,#fornView) .prod-tab :is(th,td){padding:12px;text-align:left;vertical-align:top}

/* Controles novos mantêm a identidade visual dentro destas duas abas. */
:is(#produtosView,#fornView) button:not([class]){min-height:44px;padding:10px 14px;border:1px solid #C6BDCF;border-radius:10px;background:#fff;color:#25212A;font:600 14px/1.4 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;cursor:pointer}
:is(#produtosView,#fornView) button:not([class]):hover{background:#FBF9FF;border-color:#7B2FFF}
:is(#produtosView,#fornView) button:not([class]):disabled{cursor:not-allowed;opacity:.55}
:is(#produtosView,#fornView) :is(.impr-add,.impr-save){min-height:44px;border:1px solid #7B2FFF;border-radius:10px;padding:10px 14px;background:#7B2FFF;color:#fff;font-family:inherit}
:is(#produtosView,#fornView) h1{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
:is(#produtosView,#fornView) .ci-cell{min-width:0;overflow-wrap:anywhere}
:is(#produtosView,#fornView) .ci-cell small{display:block;margin-top:4px;font-size:13px;line-height:1.5;color:var(--muted)}

/* Modal dentro da aba: preserva o comportamento nativo do dialog fechado. */
:is(#produtosView,#fornView) #prodDrawer.ci-product-sheet{position:fixed;inset:0 0 0 auto;width:min(650px,100vw);max-width:100vw;height:100dvh;max-height:100dvh;box-sizing:border-box;margin:0;padding:0 20px 24px;background:#fff;border:0;border-left:1px solid var(--line);border-radius:20px 0 0 20px;box-shadow:-12px 0 44px rgb(37 33 42 / 16%);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scroll-padding-top:110px}
:is(#produtosView,#fornView) dialog.ci-product-sheet:not([open]){display:none}
:is(#produtosView,#fornView) .ci-product-sheet::backdrop{background:rgb(37 33 42 / 42%)}
:is(#produtosView,#fornView) .ci-product-sheet>.ci-detail-head{position:sticky;top:0;z-index:3;padding:20px 0 16px;background:#fff;border-bottom:1px solid var(--line);margin:0 0 16px}
:is(#produtosView,#fornView) .ci-product-sheet .ci-section{padding:16px;margin:14px 0}
:is(#produtosView,#fornView) .ci-product-sheet .ci-facts{gap:14px 20px}

@media(max-width:700px){
  :is(#produtosView,#fornView) .ci-toolbar{padding:12px;gap:12px;border-radius:12px}
  :is(#produtosView,#fornView) .ci-field{flex:1 1 calc(50% - 12px)}
  :is(#produtosView,#fornView) .ci-field:first-child{flex-basis:100%}
  :is(#produtosView,#fornView) .ci-toolbar>.ci-actions{flex-basis:100%}
  :is(#produtosView,#fornView) .ci-cards{grid-template-columns:minmax(0,1fr)}
  :is(#produtosView,#fornView) .ci-table{border:0;border-radius:0;background:transparent;overflow:visible}
  :is(#produtosView,#fornView) :is(.ci-table table,table.ci-table,.ci-table tbody){display:block;width:100%;min-width:0}
  :is(#produtosView,#fornView) .ci-table thead{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
  :is(#produtosView,#fornView) .ci-table tbody tr{display:block;width:100%;box-sizing:border-box;padding:8px 14px;margin:0 0 12px;border:1px solid var(--line);border-radius:14px;background:#fff}
  :is(#produtosView,#fornView) .ci-table td{display:grid;grid-template-columns:minmax(90px,.42fr) minmax(0,1fr);gap:10px;padding:10px 0;border-bottom:1px solid #F0EDF3;min-width:0;width:auto;white-space:normal;text-align:left}
  :is(#produtosView,#fornView) .ci-table td[data-label]::before{content:attr(data-label);color:var(--muted);font-size:14px;font-weight:400}
  :is(#produtosView,#fornView) .ci-table td:first-child{display:block;width:auto;min-width:0;padding-top:8px;padding-bottom:12px}
  :is(#produtosView,#fornView) .ci-table td:first-child::before{display:none}
  :is(#produtosView,#fornView) .ci-table td:not([data-label]){display:block}
  :is(#produtosView,#fornView) .ci-table tbody tr:last-child td{border-bottom:1px solid #F0EDF3}
  :is(#produtosView,#fornView) .ci-table tbody tr td:last-child{border-bottom:0}
  :is(#produtosView,#fornView) .ci-section{padding:16px;border-radius:12px}
  :is(#produtosView,#fornView) .ci-detail-head{gap:10px}
  :is(#produtosView,#fornView) .ci-detail-head :is(h2,h3){font-size:22px}
  :is(#produtosView,#fornView) .ci-detail-nav{gap:6px;flex-wrap:wrap}
  :is(#produtosView,#fornView) .ci-facts{gap:14px}
  :is(#produtosView,#fornView) .impr-form{grid-template-columns:minmax(0,1fr)}
  :is(#produtosView,#fornView) .impr-form .impr-span2{grid-column:auto}
  :is(#produtosView,#fornView) .prod-tab-wrap>.prod-tab{min-width:600px}
  :is(#produtosView,#fornView) .prod-tab-wrap::before{content:"Deslize a tabela para ver todas as colunas";display:block;position:sticky;left:0;padding:10px 12px;background:#FBF9FF;color:var(--muted);font-size:14px;white-space:normal}
  :is(#produtosView,#fornView) #prodDrawer.ci-product-sheet{width:100%;height:100dvh;max-height:100dvh;border:0;border-radius:0;padding:0 14px max(24px,env(safe-area-inset-bottom));scroll-padding-top:100px}
  :is(#produtosView,#fornView) .ci-product-sheet>.ci-detail-head{padding-top:max(16px,env(safe-area-inset-top));gap:10px}
  :is(#produtosView,#fornView) .ci-pagination{align-items:flex-start}
}
@media(max-width:380px){
  :is(#produtosView,#fornView) .ci-field{flex-basis:100%}
  :is(#produtosView,#fornView) .ci-facts{grid-template-columns:minmax(0,1fr)}
  :is(#produtosView,#fornView) .ci-actions{gap:8px}
  :is(#produtosView,#fornView) .ci-actions button{flex:1 1 auto;padding-inline:10px}
  :is(#produtosView,#fornView) .ci-table td{grid-template-columns:minmax(78px,.42fr) minmax(0,1fr);gap:8px}
  :is(#produtosView,#fornView) .ci-disclosure>summary{padding-inline:12px}
  :is(#produtosView,#fornView) .ci-disclosure> :not(summary){margin-inline:12px}
}

/* Proporções da prévia aprovada: catálogo compacto, ficha contínua e consulta lateral.
   Este bloco só adapta os componentes destas duas abas; o shell é independente. */
:is(#produtosView,#fornView){font-size:14px;line-height:1.6}
:is(#produtosView,#fornView) .ci-toolbar{display:grid;grid-template-columns:minmax(200px,1.6fr) minmax(0,4fr);gap:12px;padding:0;margin-bottom:14px;border:0;border-radius:0;background:transparent}
:is(#produtosView,#fornView) .ci-field{font-size:13px;font-weight:500}
:is(#produtosView,#fornView) .ci-filter-panel{min-width:0;margin:0;border:0;background:transparent}
:is(#produtosView,#fornView) .ci-filter-fields{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:end;gap:12px;min-width:0}
#fornView .ci-filter-fields{grid-template-columns:repeat(4,minmax(0,1fr))}
:is(#produtosView,#fornView) .ci-filter-panel>summary{min-height:44px;padding:10px 14px;border:1px solid var(--line);border-radius:10px;background:#fff;font-size:13px;font-weight:500;cursor:pointer}
:is(#produtosView,#fornView) .ci-chips{margin:8px 0 18px}
:is(#produtosView,#fornView) .ci-chip{padding:8px 14px;border:1px solid var(--line);border-radius:24px;background:#fff;color:var(--muted);font-size:13px;font-weight:500;line-height:1.45}
:is(#produtosView,#fornView) .ci-chip[aria-pressed="true"]{background:var(--brand-soft);border-color:var(--brand);color:#492372;font-weight:600}
:is(#produtosView,#fornView) .ci-list-head{gap:12px 18px;margin:16px 0}
:is(#produtosView,#fornView) .ci-muted{font-size:13px}
:is(#produtosView,#fornView) .ci-badge{font-size:12px;font-weight:500}
:is(#produtosView,#fornView) :is(.ci-catalog-table,.ci-supplier-table,.ci-reference-table){margin-top:8px;border-radius:12px}
:is(#produtosView,#fornView) .ci-table th{background:#F7F4FA;font-size:12px}
:is(#produtosView,#fornView) .ci-table tbody tr:hover{background:#FBF9FD}
:is(#produtosView,#fornView) :is(.ci-catalog-table,.ci-supplier-table) td:last-child{white-space:nowrap}
:is(#produtosView,#fornView) .ci-name{min-height:44px;font-size:14px;font-weight:600}
:is(#produtosView,#fornView) .ci-name small{font-size:12px}
:is(#produtosView,#fornView) .ci-pagination{gap:10px 16px;margin-top:0;padding:16px 0 4px;font-size:13px}
:is(#produtosView,#fornView) .ci-product-page{min-width:0;max-width:1100px;margin-inline:auto}
:is(#produtosView,#fornView) .ci-summary{display:grid;grid-template-columns:minmax(0,1fr);gap:22px;padding:24px;margin:0 0 22px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 2px 6px rgb(37 33 42 / 2%);scroll-margin-top:82px}
:is(#produtosView,#fornView) .ci-summary>*{min-width:0;margin:0}
:is(#produtosView,#fornView) .ci-summary .ci-detail-head{flex-wrap:wrap;margin-bottom:0;gap:12px 18px}
:is(#produtosView,#fornView) .ci-summary h1{margin:3px 0 0;font-size:21px;line-height:1.35;font-weight:600;letter-spacing:-.3px;overflow-wrap:anywhere}
:is(#produtosView,#fornView) .ci-summary .ci-facts{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
:is(#produtosView,#fornView) .ci-summary .ci-facts>div{padding-left:14px;border-left:2px solid var(--line)}
:is(#produtosView,#fornView) .ci-summary .ci-facts dt{margin:0;font-size:12px}
:is(#produtosView,#fornView) .ci-summary .ci-facts dd{margin:5px 0 0;font-size:17px;font-weight:600;line-height:1.5}
:is(#produtosView,#fornView) .ci-section-nav{position:sticky;top:0;z-index:5;flex-wrap:nowrap;gap:6px;padding:8px 2px;margin:0 0 22px;border-bottom:1px solid var(--line);background:#FAF9FC;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin}
:is(#produtosView,#fornView) .ci-section-nav :is(a,button){flex:0 0 auto;min-height:44px;padding:10px 14px;border:1px solid transparent;border-radius:9px;background:transparent;color:var(--muted);font-size:13px;font-weight:500;white-space:nowrap}
:is(#produtosView,#fornView) .ci-section-nav :is(a,button):hover{background:var(--brand-soft);color:#492372}
:is(#produtosView,#fornView) .ci-section-nav :is([aria-current="page"],[aria-current="location"],.active){border-color:var(--line);background:#fff;color:#492372;box-shadow:inset 0 -2px var(--brand)}
:is(#produtosView,#fornView) .ci-product-section{min-width:0;padding:0;margin:0 0 28px;border:0;border-radius:0;background:transparent;scroll-margin-top:82px}
:is(#produtosView,#fornView) .ci-product-section>h2{margin:0 0 16px;padding-top:8px;font-size:18px;font-weight:600;line-height:1.4}
:is(#produtosView,#fornView) .ci-section-title{gap:12px 18px;margin-bottom:16px;font-size:18px;font-weight:600}
:is(#produtosView,#fornView) .ci-disclosure{margin:12px 0;border-radius:12px}
:is(#produtosView,#fornView) .ci-disclosure>summary{min-height:48px;box-sizing:border-box;padding:12px 16px;font-size:13px;font-weight:500}
:is(#produtosView,#fornView) .ci-disclosure>:not(summary){margin:12px 16px}
:is(#produtosView,#fornView) .ci-source-details{margin-top:6px;font-size:13px}
:is(#produtosView,#fornView) .ci-source-details>summary{display:flex;align-items:center;min-height:44px;cursor:pointer;color:#492372;text-decoration:underline;text-underline-offset:3px}
:is(#produtosView,#fornView) .ci-source-details>summary::before{content:"+";margin-right:7px;text-decoration:none}
:is(#produtosView,#fornView) .ci-source-details[open]>summary::before{content:"−"}
:is(#produtosView,#fornView) .ci-section.ci-commercial{padding:0;margin:0;border:0;border-radius:0;background:transparent;box-shadow:none}
:is(#produtosView,#fornView) .ci-commercial>.ci-list-head{margin-top:0}
:is(#produtosView,#fornView) .ci-offer-card{min-width:0;padding:18px;margin:0 0 16px;border:1px solid var(--line);border-radius:12px;background:#fff}
:is(#produtosView,#fornView) .ci-offer-card .ci-detail-head{flex-wrap:wrap;gap:12px 18px}
:is(#produtosView,#fornView) .ci-offer-card h4{margin:0 0 4px;font-size:15px;font-weight:600;line-height:1.4}
:is(#produtosView,#fornView) .ci-price-table{font-variant-numeric:tabular-nums}
:is(#produtosView,#fornView) [data-compare-grid]{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;border:1px solid var(--line);border-radius:12px;background:#fff}
:is(#produtosView,#fornView) table.ci-comparison-table{min-width:680px;margin:0;border:0;border-radius:0;font-variant-numeric:tabular-nums}
:is(#produtosView,#fornView) .ci-comparison-table td{min-width:120px;max-width:260px}
:is(#produtosView,#fornView) .ci-commercial-form{padding:20px;border-radius:12px}
:is(#produtosView,#fornView) .ci-commercial-form .ci-detail-head :is(h2,h3){font-size:18px;line-height:1.4}
:is(#produtosView,#fornView) .ci-sticky-actions{position:sticky;bottom:0;z-index:10;gap:10px;margin:28px -8px -8px;padding:14px 8px calc(14px + env(safe-area-inset-bottom));border-top:1px solid var(--line);border-radius:0 0 12px 12px;background:#fff;box-shadow:0 -6px 18px rgb(37 33 42 / 5%)}
:is(#produtosView,#fornView) :is(.ci-commercial-form,.ci-product-section) :is(input,select,textarea){scroll-margin-bottom:calc(190px + env(safe-area-inset-bottom))}

/* A consulta breve mantém a posição da lista; só o corpo lateral rola. */
:is(#produtosView,#fornView) #prodDrawer.ci-product-sheet.ci-quick-sheet{inset:12px 12px 12px auto;width:min(650px,calc(100vw - 24px));max-width:calc(100vw - 24px);height:calc(100dvh - 24px);max-height:calc(100dvh - 24px);padding:0;border:1px solid var(--line);border-radius:18px;overflow:hidden;scroll-padding:0;box-shadow:0 18px 60px rgb(37 33 42 / 20%)}
:is(#produtosView,#fornView) #prodDrawer.ci-quick-sheet[open]{display:flex;flex-direction:column}
:is(#produtosView,#fornView) .ci-quick-sheet>.ci-detail-head{position:static;flex:0 0 auto;align-items:center;gap:16px;padding:22px 24px;margin:0;border-bottom:1px solid var(--line)}
:is(#produtosView,#fornView) .ci-sheet-body{flex:1 1 auto;min-height:0;min-width:0;padding:22px 24px max(24px,env(safe-area-inset-bottom));overflow:auto;overscroll-behavior:contain;scroll-padding-bottom:112px}
:is(#produtosView,#fornView) .ci-sheet-body h2{margin:4px 0 12px;font-size:21px;line-height:1.35;font-weight:600;letter-spacing:-.3px;overflow-wrap:anywhere}
:is(#produtosView,#fornView) .ci-sheet-body>.ci-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 20px;margin:20px 0}
:is(#produtosView,#fornView) .ci-sheet-body .ci-facts dt{font-size:12px}
:is(#produtosView,#fornView) .ci-sheet-body .ci-facts dd{font-size:15px}
:is(#produtosView,#fornView) .ci-quick-context{padding:16px 0;border-top:1px solid var(--line)}
:is(#produtosView,#fornView) .ci-sheet-body>.ci-actions{position:sticky;bottom:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:20px -8px 0;padding:12px 8px 16px;background:#fff;box-shadow:0 -6px 16px rgb(37 33 42 / 4%)}
:is(#produtosView,#fornView) .ci-sheet-body>.ci-actions button{width:100%;min-width:0}

@media(min-width:701px){
  :is(#produtosView,#fornView) .ci-filter-panel>summary{display:none}
  /* Reabrir o layout ao alargar a janela independe do atributo open salvo no celular. */
  :is(#produtosView,#fornView) .ci-filter-panel::details-content{display:contents;content-visibility:visible}
  :is(#produtosView,#fornView) .ci-filter-panel>.ci-filter-fields{display:grid!important}
}
@media(min-width:701px) and (max-width:1100px){
  :is(#produtosView,#fornView) .ci-toolbar{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:1050px){
  :is(#produtosView,#fornView) .ci-summary .ci-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
  :is(#produtosView,#fornView) .ci-toolbar{grid-template-columns:minmax(0,1fr);gap:10px;padding:0}
  :is(#produtosView,#fornView) .ci-filter-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 10px;padding:14px 0 4px}
  :is(#produtosView,#fornView) .ci-filter-panel:not([open])>.ci-filter-fields{display:none}
  :is(#produtosView,#fornView) .ci-chips{gap:8px;margin-bottom:16px}
  :is(#produtosView,#fornView) :is(.ci-catalog-table,.ci-supplier-table,.ci-reference-table,.ci-price-table) tbody tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px;padding:15px 16px;margin-bottom:10px;border:1px solid var(--line);border-radius:12px;background:#fff}
  :is(#produtosView,#fornView) :is(.ci-catalog-table,.ci-supplier-table,.ci-reference-table,.ci-price-table) td{display:block;min-width:0;width:auto;padding:0;border:0;font-size:13px;white-space:normal}
  :is(#produtosView,#fornView) :is(.ci-catalog-table,.ci-supplier-table,.ci-reference-table,.ci-price-table) td[data-label]::before{display:none}
  :is(#produtosView,#fornView) :is(.ci-catalog-table,.ci-supplier-table,.ci-reference-table,.ci-price-table) td:first-child{grid-column:1/-1;min-width:0;width:auto;padding:0}
  :is(#produtosView,#fornView) :is(.ci-catalog-table,.ci-supplier-table,.ci-reference-table,.ci-price-table) tbody tr:last-child td{border:0}
  :is(#produtosView,#fornView) :is(.ci-catalog-table,.ci-supplier-table,.ci-reference-table,.ci-price-table) td:last-child{grid-column:1/-1;padding-top:4px;white-space:normal}
  :is(#produtosView,#fornView) :is(.ci-catalog-table,.ci-supplier-table) td:last-child .ci-cell{display:flex;flex-wrap:wrap;gap:8px}
  :is(#produtosView,#fornView) :is(.ci-catalog-table,.ci-supplier-table) td:last-child button{flex:1 1 auto;width:auto}
  :is(#produtosView,#fornView) .ci-name{font-size:15px}
  :is(#produtosView,#fornView) .ci-cell small{font-size:12px}
  :is(#produtosView,#fornView) .ci-summary{gap:18px;padding:18px;scroll-margin-top:128px}
  :is(#produtosView,#fornView) .ci-summary h1{font-size:19px}
  :is(#produtosView,#fornView) .ci-summary .ci-facts{gap:16px 12px}
  :is(#produtosView,#fornView) .ci-summary .ci-facts>div{padding-left:10px}
  :is(#produtosView,#fornView) .ci-summary .ci-facts dd{font-size:16px}
  :is(#produtosView,#fornView) .ci-section-nav{flex-wrap:wrap;gap:4px 3px;overflow:visible;margin-bottom:18px}
  :is(#produtosView,#fornView) .ci-section-nav :is(a,button){flex:0 1 auto;max-width:100%;padding:10px 12px;font-size:12px;white-space:normal}
  :is(#produtosView,#fornView) .ci-product-section{margin-bottom:24px;scroll-margin-top:128px}
  :is(#produtosView,#fornView) .ci-product-section .ci-disclosure[id]{scroll-margin-top:128px}
  :is(#produtosView,#fornView) .ci-offer-card{padding:16px}
  :is(#produtosView,#fornView) .ci-commercial-form{padding:16px}
  /* Comparação é uma tabela alinhada, mesmo quando as listas viram cartões. */
  :is(#produtosView,#fornView) table.ci-table.ci-comparison-table{display:table;min-width:680px;width:100%;background:#fff;overflow:visible}
  :is(#produtosView,#fornView) .ci-comparison-table thead{display:table-header-group;position:static;width:auto;height:auto;overflow:visible;clip-path:none;white-space:normal}
  :is(#produtosView,#fornView) .ci-comparison-table tbody{display:table-row-group;width:auto}
  :is(#produtosView,#fornView) .ci-comparison-table tbody tr{display:table-row;width:auto;margin:0;padding:0;border:0;border-radius:0;background:#fff}
  :is(#produtosView,#fornView) .ci-comparison-table :is(th,td){display:table-cell;min-width:120px;width:auto;padding:13px 14px;border-bottom:1px solid var(--line);vertical-align:top}
  :is(#produtosView,#fornView) .ci-comparison-table td:first-child{display:table-cell;min-width:120px;width:auto;padding:13px 14px}
  :is(#produtosView,#fornView) .ci-comparison-table td[data-label]::before{display:none}
  :is(#produtosView,#fornView) .ci-comparison-table tbody tr:last-child td{border-bottom:0}
  :is(#produtosView,#fornView) #prodDrawer.ci-product-sheet.ci-quick-sheet{inset:0;width:100%;max-width:100%;height:100dvh;max-height:100dvh;padding:0;border:0;border-radius:0}
  :is(#produtosView,#fornView) .ci-quick-sheet>.ci-detail-head{gap:12px;padding:max(16px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) 16px max(16px,env(safe-area-inset-left))}
  :is(#produtosView,#fornView) .ci-sheet-body{padding:18px max(16px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left))}
}
@media(max-width:379px){
  :is(#produtosView,#fornView) :is(.ci-catalog-table,.ci-supplier-table,.ci-reference-table,.ci-price-table) tbody tr{padding:12px 13px;gap:8px 10px}
  :is(#produtosView,#fornView) .ci-summary{padding:15px}
  :is(#produtosView,#fornView) .ci-summary .ci-facts dd{font-size:15px}
  :is(#produtosView,#fornView) .ci-sheet-body{scroll-padding-bottom:156px}
  :is(#produtosView,#fornView) .ci-sheet-body>.ci-actions{grid-template-columns:minmax(0,1fr)}
}

/* Interações do catálogo: ordenação acessível, proveniência e formulário sempre visível. */
:is(#produtosView,#fornView) .ci-table th:has(.ci-sort-button){padding-top:0;padding-bottom:0}
:is(#produtosView,#fornView) .ci-sort-button{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;min-height:44px;padding:8px 0;border:0;border-radius:4px;background:transparent;color:inherit;font:600 12px/1.4 system-ui;text-align:left;cursor:pointer}
:is(#produtosView,#fornView) th:is([aria-sort=ascending],[aria-sort=descending]) .ci-sort-button{color:#5920ba}
:is(#produtosView,#fornView) .ci-sort-button span{flex:0 0 auto}
:is(#produtosView,#fornView) .ci-meta-line{margin:14px 0;color:var(--muted);font-size:12px;line-height:1.6;overflow-wrap:anywhere}
:is(#produtosView,#fornView) .ci-source-meta{display:grid;gap:5px;margin:12px 0;font-size:12px;line-height:1.5;color:var(--muted);overflow-wrap:anywhere}
:is(#produtosView,#fornView) .ci-source-meta>span{min-width:0}
:is(#produtosView,#fornView) .ci-state,:is(#produtosView,#fornView) .ci-author{font-size:12px;color:var(--ink)}
:is(#produtosView,#fornView) .ci-form-section{margin:22px 0;padding:18px 0 0;border-top:1px solid var(--line)}
:is(#produtosView,#fornView) :is(.ci-form-section h4,.ci-form-title){margin:18px 0 10px;font-size:15px;font-weight:600}
:is(#produtosView,#fornView) .ci-form-section h4 small{font-weight:400;color:var(--muted)}
:is(#produtosView,#fornView) a{display:inline-flex;align-items:center;min-height:44px;max-width:100%;overflow-wrap:anywhere}
:is(#produtosView,#fornView) .ci-record-details summary{min-height:44px;padding:8px 0;font-size:12px;cursor:pointer}
@media(max-width:700px){
 #produtosView table.ci-catalog-table tbody tr{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"identity state" "specs specs" "supplier action";gap:9px 12px}
 #produtosView table.ci-catalog-table td.ci-item-identity{grid-area:identity;min-width:0}
 #produtosView table.ci-catalog-table td.ci-item-specs{grid-area:specs}
 #produtosView table.ci-catalog-table td.ci-item-supplier{grid-area:supplier;align-self:center}
 #produtosView table.ci-catalog-table td.ci-item-state{grid-area:state;align-self:start;text-align:right;max-width:112px}
 #produtosView table.ci-catalog-table td.ci-item-action{grid-area:action;align-self:center;padding:0}
 #produtosView .ci-catalog-table .ci-item-specs small{display:inline;margin:0 0 0 6px}
 #produtosView .ci-catalog-table .ci-item-specs small::before{content:'· ';color:var(--muted)}
 #produtosView .ci-catalog-table .ci-item-action button{padding:8px 10px}
 #fornView table.ci-supplier-table tbody tr{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"identity state" "specs specs" "action action";gap:9px 12px}
 #fornView table.ci-supplier-table td.ci-item-identity{grid-area:identity}
 #fornView table.ci-supplier-table td.ci-item-state{grid-area:state;align-self:start;text-align:right}
 #fornView table.ci-supplier-table td.ci-item-specs{grid-area:specs}
 #fornView table.ci-supplier-table td.ci-item-action{grid-area:action;padding:0}
 #fornView .ci-supplier-table .ci-item-specs small{display:inline;margin:0 0 0 6px}
 #fornView .ci-supplier-table .ci-item-specs small::before{content:'· ';color:var(--muted)}
}

/* Identificação editável em seções abertas; sem ocultar campos em acordeões. */
#produtosView .ci-product-editor{display:block;max-width:960px;margin-inline:auto}
#produtosView .ci-product-editor fieldset{border:0;padding:0;margin:0;min-width:0}
#produtosView .ci-editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
#produtosView .ci-product-editor .ci-field{margin-bottom:12px;min-width:0}
#produtosView .ci-product-editor input[readonly]{background:#f5f2f8;color:#655f6b}
#produtosView .ci-product-editor small{font-weight:400;color:#655f6b;line-height:1.5}
#produtosView .ci-editor-actions{position:sticky;bottom:0;background:#fff;padding:14px 0 max(14px,env(safe-area-inset-bottom));border-top:1px solid #e4dfe8;display:flex;gap:12px;align-items:center;flex-wrap:wrap;z-index:3}
#produtosView .ci-editor-actions small{flex:1 1 180px}
#produtosView .ci-card-top,#produtosView .ci-card-bottom{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;min-width:0}
#produtosView .ci-card-top .ci-name{min-width:0;text-align:left}
#produtosView .ci-card-top .ci-badge{flex-shrink:0}
#produtosView .ci-card-specs{margin:0;line-height:1.5}
#produtosView .ci-card-specs small,#produtosView .ci-card-bottom small{display:block;color:#655f6b}
#produtosView .ci-card-bottom{align-items:center}
#produtosView .ci-card-bottom>div{min-width:0;overflow-wrap:anywhere}
#produtosView .ci-card-bottom>button{flex-shrink:0}
@media(max-width:700px){
 #produtosView .ci-editor-grid{grid-template-columns:1fr;gap:4px}
 #produtosView .ci-editor-actions{padding-inline:2px}
 #produtosView .ci-editor-actions small{flex-basis:100%}
 #produtosView .ci-card-top .ci-badge{max-width:108px;white-space:normal;text-align:center}
}

/* Desktop: listas extensas de cores não comprimem fornecedor, situação e ação. */
@media(min-width:701px){
 #produtosView .ci-catalog-scroll{width:100%;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}
 #produtosView table.ci-catalog-table{table-layout:fixed;width:100%;min-width:900px}
 #produtosView table.ci-catalog-table th:nth-child(1){width:32%}
 #produtosView table.ci-catalog-table th:nth-child(3){width:170px}
 #produtosView table.ci-catalog-table th:nth-child(4){width:150px}
 #produtosView table.ci-catalog-table th:nth-child(5){width:124px}
 #produtosView .ci-catalog-table :is(th,.ci-sort-button,.ci-item-state .ci-badge,.ci-item-action button){white-space:nowrap;overflow-wrap:normal;word-break:normal}
 #produtosView .ci-catalog-table .ci-item-specs small{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;max-height:3em}
 #produtosView .ci-catalog-table .ci-item-action button{padding-inline:10px}
}
