/* ---------- Product details custom styles ---------- */

/* Product summary card */
.product-summary-card {
    border-radius: 8px;
    -webkit-box-shadow: 0 6px 18px rgba(23,28,39,0.06);
    box-shadow: 0 6px 18px rgba(23,28,39,0.06);
    overflow: hidden;
}

/* status badge */
.status-badge {
    padding: .35rem .65rem;
    border-radius: 999px;
    font-weight: 600;
    font-size: .85rem;
}
.status-badge.status-active { background: #e6ffed; color: #117a37; }
.status-badge.status-suspended { background: #fff4e6; color: #8a4b00; }
.status-badge.status-terminated { background: #ffecec; color: #8b1b1b; }
.status-badge.status-pending { background: #eef6ff; color: #1356a6; }

/* unpaid invoice block */
.unpaid-invoice-alert {
    padding: 16px;
    border-radius: 6px;
    display: flex;
    align-items: center;
    gap: 16px;
}
.unpaid-invoice-left { flex-shrink: 0; }
.btn-payinvoice { font-weight: 700; padding: 8px 18px; }
.unpaid-invoice-text { font-size: 0.95rem; }

/* hook output block */
.hook-output-block { margin-bottom: 1rem; }

/* Tabs connector small */
.responsive-tabs-sm-connector { margin-top: -1px; }

/* product-details-tab-container */
.product-details-tab-container { border-radius: 6px; }

/* module client area block: ensure fit */
.module-client-area { margin-top: 1rem; }

/* dial usage (knob) center */
.dial-usage { display: inline-block; }

/* Responsive tweaks */
@media (max-width: 767.98px) {
    .product-summary-card .product-icon { display: none; }
    .product-summary-card .product-info h3 { font-size: 1.05rem; }
    .unpaid-invoice-alert { flex-direction: column; text-align: center; }
}
