/* V1472 — formulário de insumo (Estoque › Insumos) em seções */
.ins72 { padding: 0 !important; overflow: hidden; }
.ins72-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; padding: 14px 18px 12px; border-bottom: 1px solid #e3eaf3; background: linear-gradient(180deg, #f7faff, #fff); }
.ins72-head h3 { margin: 0; font-size: 17px; color: #12315e; }
.ins72-head p { margin: 3px 0 0; font-size: 12.5px; color: #637b98; }
.ins72-cod { display: inline-block; font-weight: 700; color: #c25e05; background: #fff4e8; border-radius: 6px; padding: 1px 7px; margin-right: 4px; font-variant-numeric: tabular-nums; }
.ins72-fechar { width: 32px; height: 32px; border: 1px solid #d5dfec; border-radius: 8px; background: #fff; color: #8a9bb0; font-size: 20px; line-height: 1; cursor: pointer; }
.ins72-fechar:hover { color: #b42318; border-color: #efbbb7; }
.ins72-form { padding: 6px 18px 0; }
.ins72-sec { padding: 12px 0; border-bottom: 1px dashed #e1e8f1; }
.ins72-sec h4 { display: flex; align-items: center; gap: 8px; margin: 0 0 10px; font-size: 13px; font-weight: 700; color: #12315e; text-transform: uppercase; letter-spacing: .03em; }
.ins72-sec h4 span { display: inline-grid; place-items: center; width: 20px; height: 20px; border-radius: 50%; background: #12315e; color: #fff; font-size: 11px; letter-spacing: 0; }
.ins72-sec h4 em { font-style: normal; font-weight: 600; font-size: 11px; text-transform: none; letter-spacing: 0; color: #6b7a8f; background: #f1f5fa; border-radius: 10px; padding: 1px 8px; }
.ins72-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px 14px; }
.ins72-grid .field { margin: 0; min-width: 0; }
.ins72-grid input, .ins72-grid select, .ins72-grid textarea { width: 100%; box-sizing: border-box; }
.ins72-grid .field small { display: block; margin-top: 3px; font-size: 11.5px; color: #6b7a8f; }
.ins72-span2 { grid-column: span 2; }
.ins72-span3 { grid-column: span 3; }
.ins72-span4 { grid-column: 1 / -1; }
.ins72-ro { background: var(--bg-panel-2, #f3f6fa) !important; color: var(--text-secondary, #5b6b80) !important; font-weight: 600; }
.ins72-pre { position: relative; }
.ins72-pre span { position: absolute; left: 10px; top: 50%; transform: translateY(-50%); font-size: 12px; color: #6b7a8f; pointer-events: none; }
.ins72-pre input { padding-left: 32px !important; text-align: right; font-variant-numeric: tabular-nums; }
.ins72-ajuda { margin: -4px 0 8px; font-size: 12px; color: #637b98; }
.ins72-link { margin-top: 8px; border: 0; background: none; padding: 0; font: inherit; font-size: 12.5px; font-weight: 600; color: #c25e05; cursor: pointer; text-decoration: underline; text-underline-offset: 2px; }
.ins72-det { border-bottom: 0; }
.ins72-det summary { cursor: pointer; list-style: none; }
.ins72-det summary::-webkit-details-marker { display: none; }
.ins72-det summary h4 { margin: 0; }
.ins72-det summary h4::after { content: "▾"; margin-left: auto; color: #8a9bb0; font-size: 12px; transition: transform .15s; }
.ins72-det:not([open]) summary h4::after { transform: rotate(-90deg); }
.ins72-rodape { position: sticky; bottom: 0; display: flex; justify-content: flex-end; gap: 8px; margin: 0 -18px; padding: 12px 18px; background: #f8fafd; border-top: 1px solid #e3eaf3; }
@media (max-width: 900px) { .ins72-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .ins72-span3 { grid-column: 1 / -1; } }
@media (max-width: 560px) { .ins72-grid { grid-template-columns: minmax(0, 1fr); } .ins72-span2, .ins72-span3 { grid-column: auto; } }
