/* Soft badges for older Bootstrap versions (fixes text visibility issues) */
.badge-soft-info {
    background-color: rgba(17, 205, 239, 0.15) !important;
    color: #11cdef !important;
    border: 1px solid rgba(17, 205, 239, 0.3) !important;
}
.badge-soft-secondary {
    background-color: rgba(134, 142, 150, 0.15) !important;
    color: #868e96 !important;
    border: 1px solid rgba(134, 142, 150, 0.3) !important;
}

/* Enquiry List styles */
.assign-admin-select {
    min-width: 120px;
    font-size: .78rem;
    padding: 3px 6px;
    border-radius: 6px;
    border: 1px solid #dee2e6;
    background: #fff;
    cursor: pointer;
}
.assign-admin-select:focus {
    outline: none;
    box-shadow: 0 0 0 2px rgba(13,110,253,.25);
}
.attend-badge {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 10px;
    font-size: .72rem;
    font-weight: 600;
    background: #e9f5ff;
    color: #0d6efd;
    border: 1px solid #bbd6fb;
}
.last-attend-text {
    font-size: .72rem;
    color: #6c757d;
}
.status-badge {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: .76rem;
    font-weight: 600;
    cursor: pointer;
    transition: opacity .15s;
}
.status-badge:hover {
    opacity: .85;
}

/* Enquiry Performance View styles */
.perf-card {
    border-radius: 16px;
    box-shadow: 0 4px 24px rgba(0,0,0,.07);
    overflow: hidden;
    transition: transform .2s, box-shadow .2s;
}
.perf-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 32px rgba(0,0,0,.1);
}
.admin-header {
    background: linear-gradient(135deg, #1a1a2e 0%, #16213e 55%, #0f3460 100%);
}
.stat-pill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 5px 13px;
    border-radius: 50px;
    font-size: .76rem;
    font-weight: 600;
}
.status-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(148px, 1fr));
    gap: 10px;
}
.status-cell {
    background: #f8f9fa;
    border-radius: 10px;
    padding: 11px 12px;
    text-align: center;
    border: 1px solid #e9ecef;
    transition: background .15s;
}
.status-cell:hover {
    background: #eef4ff;
}
.status-cell .sc-count {
    font-size: 1.55rem;
    font-weight: 700;
    line-height: 1;
}
.status-cell .sc-label {
    font-size: .7rem;
    color: #6c757d;
    margin-top: 3px;
}

/* Status top-borders */
.s-pending                { border-top: 3px solid #6c757d; }
.s-call_not_attended      { border-top: 3px solid #fd7e14; }
.s-switch_off             { border-top: 3px solid #495057; }
.s-incoming_not_available { border-top: 3px solid #868e96; }
.s-invalid_phone          { border-top: 3px solid #dc3545; }
.s-call_later             { border-top: 3px solid #17a2b8; }
.s-dont_want_to_order_now { border-top: 3px solid #6610f2; }
.s-price_issue            { border-top: 3px solid #ffc107; }
.s-misbehaved_or_abusive  { border-top: 3px solid #dc3545; }
.s-order_rejected         { border-top: 3px solid #dc3545; }
.s-order_approved         { border-top: 3px solid #28a745; }

.summary-footer {
    background: #f0f4ff;
}

/* Summary table */
.summary-table th {
    background: #f8f9fa;
    font-size:.75rem;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.04em;
}
.summary-table td {
    font-size:.83rem;
    vertical-align:middle;
}

/* Daily chart */
.day-bar-wrap {
    display:flex;
    align-items:flex-end;
    gap:3px;
    height:60px;
}
.day-bar {
    flex:1;
    background: linear-gradient(180deg,#0d6efd,#6ea8fe);
    border-radius: 4px 4px 0 0;
    min-height: 4px;
    position: relative;
    cursor: default;
    transition: opacity .15s;
}
.day-bar:hover {
    opacity:.75;
}
.day-bar-label {
    font-size:.6rem;
    color:#6c757d;
    text-align:center;
    margin-top:2px;
}
.rank-badge {
    width:26px;
    height:26px;
    border-radius:50%;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    font-weight:700;
    font-size:.75rem;
}
