.pec-config, .pec-medida { margin: 0 0 1.5em; }
.pec-campo { margin: 0 0 .8em; }
.pec-campo label { display: block; font-weight: 600; margin-bottom: .25em; }
.pec-campo select { width: 100%; max-width: 420px; }
.pec-total { font-size: 1.25em; margin: 1em 0 .5em; }
.pec-total small { font-size: .65em; opacity: .7; }
.pec-escaloes { width: 100%; max-width: 420px; border-collapse: collapse; font-size: .9em; }
.pec-escaloes th, .pec-escaloes td { padding: .35em .6em; border-bottom: 1px solid rgba(0,0,0,.08); text-align: right; }
.pec-escaloes th:first-child, .pec-escaloes td:first-child { text-align: left; }
.pec-escaloes tbody tr { cursor: pointer; }
.pec-escaloes tbody tr:hover { background: rgba(0,0,0,.04); }
.pec-escaloes tr.pec-atual { background: rgba(0,0,0,.08); font-weight: 600; }
.pec-dimensoes { display: flex; gap: 1em; max-width: 420px; }
.pec-dimensoes span { flex: 1; }
.pec-dimensoes input { width: 100%; }
.pec-medida-regras, .pec-medida-area { font-size: .85em; opacity: .75; margin: .2em 0; }
.pec-upload { margin: 0 0 1.5em; max-width: 420px; }
.pec-upload label { display: block; margin-bottom: .35em; }
.pec-upload-lista { list-style: none; margin: .5em 0; padding: 0; font-size: .9em; }
.pec-upload-lista li { margin: .2em 0; }
.pec-upload-lista progress { width: 120px; vertical-align: middle; }
.pec-upload-lista .pec-ok { color: #2a7d3f; }
.pec-upload-lista .pec-erro { color: #b32d2e; }
.pec-upload-ajuda { font-size: .8em; opacity: .75; margin: .3em 0 0; }
/* a quantidade é escolhida na lista de escalões */
form.cart:has(.pec-config) .quantity { display: none; }
