/* Zazulê Progressive Calculator – Styles (v1.1.0) */
.zzp-wrap{--gap:16px;font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif;color:var(--zzp-dark);}
.zzp-card{background:var(--zzp-light);border:1px solid #eee;border-radius:16px;box-shadow:0 6px 18px rgba(0,0,0,.06);overflow:hidden}
.zzp-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #f1f1f1;background:linear-gradient(0deg,#fff,#fff 50%,rgba(0,0,0,.015))}
.zzp-title{margin:0;font-size:20px;color:var(--zzp-dark)}
.zzp-basis .zzp-basis-pill{background:var(--zzp-accent);color:#232323;font-weight:600;padding:6px 10px;border-radius:24px;font-size:12px}

.zzp-body{padding:20px}
.zzp-table-responsive{width:100%;overflow-x:auto}
.zzp-table{width:100%;border-collapse:collapse;table-layout:fixed}
.zzp-table th{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#666;text-align:left;padding:10px;border-bottom:1px solid #f0f0f0;background:#fafafa}
.zzp-table td{padding:10px;border-bottom:1px solid #f5f5f5;vertical-align:middle}
.zzp-rows tr:hover{background:#fffdfd}
.zzp-model-select,.zzp-qty{width:100%;padding:10px 12px;border:1px solid #e5e5e5;border-radius:10px;font-size:14px;background:#fff}
.zzp-qty[type=number]{-moz-appearance:textfield}
.zzp-qty::-webkit-outer-spin-button,.zzp-qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.zzp-unit-price,.zzp-line-subtotal{font-weight:700;white-space:nowrap}
.zzp-line-actions{display:flex;gap:8px;justify-content:flex-end}
.zzp-btn{background:var(--zzp-primary);color:#fff;border:none;border-radius:12px;padding:10px 14px;font-weight:600;cursor:pointer;transition:.15s box-shadow ease,.15s transform ease}
.zzp-btn:hover{box-shadow:0 8px 20px rgba(0,0,0,.12);transform:translateY(-1px)}
.zzp-btn.zzp-remove{background:#fff;color:#c00;border:1px solid #f2caca}

/* ---------- Acessórios por item ---------- */
.zzp-row-acc td{background:rgba(0,0,0,0.02);border-top:none}
.zzp-accessory-wrap{padding:10px 8px 14px;border-left:3px solid var(--zzp-primary);border-radius:8px;background:var(--zzp-light)}
.zzp-accessory-hidden{display:none}
.zzp-accessory-title{font-weight:600;font-size:14px;margin-bottom:8px;color:var(--zzp-dark)}
.zzp-accessory-list{display:flex;flex-wrap:wrap;gap:8px}
.zzp-acc-pill{border:1px solid rgba(31,31,31,0.15);background:#fff;padding:6px 10px;border-radius:999px;cursor:pointer;font-size:13px;line-height:1;transition:all .15s ease-in-out}
.zzp-acc-pill:hover{border-color:var(--zzp-primary);transform:translateY(-1px)}
.zzp-acc-pill.active,.zzp-acc-pill[aria-pressed="true"]{background:var(--zzp-primary);color:#fff;border-color:var(--zzp-primary);box-shadow:0 2px 8px rgba(255,45,119,0.25)}

.zzp-summary{margin-top:20px;border-top:1px dashed #e9e9e9;padding-top:16px;display:grid;gap:10px}
.zzp-summary-line{display:flex;justify-content:space-between;align-items:center}
.zzp-total{font-size:18px}
.zzp-next-hint{margin-top:8px;font-size:13px;color:#666}
.zzp-ref{margin-top:24px}
.zzp-ref h4{margin:0 0 10px 0}
.zzp-ref-table{width:100%;border-collapse:collapse}
.zzp-ref-table th,.zzp-ref-table td{padding:8px 10px;border:1px solid #f0f0f0;text-align:center}
.zzp-note{font-size:12px;color:#666;margin-top:8px}

/* Mobile */
@media (max-width:720px){
  .zzp-header{flex-direction:column;align-items:flex-start;gap:8px}
  .zzp-table th:nth-child(1),.zzp-table td:nth-child(1){width:50%}
  .zzp-table th:nth-child(2),.zzp-table td:nth-child(2){width:20%}
  .zzp-table th:nth-child(3),.zzp-table td:nth-child(3){width:15%}
  .zzp-table th:nth-child(4),.zzp-table td:nth-child(4){width:15%}
  .zzp-table-responsive{overflow-x:auto}
}
