/* KGNPAY LEAD — live dashboard polish (safe overlay, no Vue rebuild) */
:root {
    --kgn-card-radius: 14px;
    --kgn-gap: 16px;
    --kgn-shadow: 0 4px 20px rgba(6, 27, 58, 0.07);
}

/* Dashboard grid / cards */
.dashboard-page .ant-row,
.admin-dashboard .ant-row,
.theme-container .ant-row {
    row-gap: var(--kgn-gap);
}

.theme-container .ant-card {
    border-radius: var(--kgn-card-radius) !important;
    box-shadow: var(--kgn-shadow) !important;
    border: 1px solid rgba(6, 27, 58, 0.06) !important;
    overflow: hidden;
}

.theme-container .ant-card-head {
    border-bottom-color: rgba(6, 27, 58, 0.06) !important;
    min-height: 48px;
}

.theme-container .ant-card-body {
    padding: 16px 18px !important;
}

/* Equal-feel stat widgets */
.theme-container .ant-statistic-title {
    color: #8b95a8 !important;
    font-size: 13px !important;
}

.theme-container .ant-statistic-content {
    color: #1a2b4a !important;
}

/* Call manager / lead details readability */
.theme-container .ant-form-item {
    margin-bottom: 12px !important;
}

.theme-container .ant-input,
.theme-container .ant-input-affix-wrapper,
.theme-container .ant-select-selector,
.theme-container .ant-picker {
    border-radius: 10px !important;
}

/* Sticky header comfort */
.theme-container .ant-layout-header {
    box-shadow: 0 1px 0 rgba(6, 27, 58, 0.06);
}

/* Mobile: reduce padding / avoid overflow */
@media (max-width: 768px) {
    .theme-container .ant-card-body {
        padding: 12px 14px !important;
    }

    .theme-container .ant-layout-content {
        padding-left: 12px !important;
        padding-right: 12px !important;
    }

    body {
        overflow-x: hidden;
    }
}

/* Call Manager live polish */
.call-portal {
    overflow-x: hidden !important;
}

.call-portal-body {
    grid-template-columns: 270px minmax(0, 1fr) 300px !important;
    min-height: calc(100vh - 145px) !important;
}

.call-center-panel {
    min-width: 0 !important;
    padding-bottom: 96px !important;
}

.call-action-panel {
    position: sticky !important;
    bottom: 0 !important;
    left: auto !important;
    transform: none !important;
    width: 100% !important;
    border-radius: 0 !important;
    z-index: 30 !important;
}

@media (max-width: 1200px) {
    .call-portal-body {
        grid-template-columns: 240px minmax(0, 1fr) !important;
    }
}

@media (max-width: 768px) {
    .call-portal-body {
        display: block !important;
    }
}
