.inv-wrap { max-width: 960px; margin: 0 auto; }
.inv-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 12px; margin-bottom: 16px; }
.inv-grid .full { grid-column: 1 / -1; }
.inv-form label { display:block; font-weight:600; margin-bottom:6px; }
.inv-form input[type="text"],
.inv-form input[type="email"],
.inv-form input[type="number"],
.inv-form input[type="date"],
.inv-form textarea { width:100%; padding:8px; border:1px solid #ddd; border-radius:4px; }
.inv-table { width:100%; border-collapse: collapse; margin-top: 8px; }
.inv-table th, .inv-table td { border:1px solid #eee; padding:8px; text-align:left; }
.inv-table th { background:#fafafa; }
.inv-alert { padding:10px 12px; border-radius:4px; margin-bottom:12px; }
.inv-alert.success { background:#eef9f0; border:1px solid #ccecd3; }
.muted { color:#888; }
.inv-accordion { border:1px solid #eee; border-radius:6px; margin:12px 0; }
.inv-acc-head { padding:10px 12px; background:#fafafa; border-bottom:1px solid #eee; cursor:pointer; }
.inv-acc-body { padding:12px; display:block; }
.inv-accordion:not(.open) .inv-acc-body { display:none; }
.inv-table .right { text-align: right; }
.inv-table textarea { width: 100%; min-height: 38px; }
.inv-table input[type="number"],
.inv-table input[type="text"] { width: 100%; }
.inv-topbar .button-primary { background:#2271b1; color:#fff; }
