/**
 * KB Seller Staff - Front Styles
 *
 * @author    KnowBand
 * @copyright 2024
 */

/* Common wrapper */
.kbss-staff-wrapper {
    padding: 20px 0;
}

.kbss-staff-wrapper .kbss-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
    flex-wrap: wrap;
    gap: 15px;
}

.kbss-staff-wrapper .kbss-header h1 {
    margin: 0;
    font-size: 24px;
}

.kbss-staff-wrapper .kbss-actions {
    display: flex;
    gap: 10px;
}

/* Info bar */
.kbss-info-bar {
    background: #f7f7f7;
    padding: 10px 15px;
    border-radius: 4px;
    margin-bottom: 15px;
    font-size: 14px;
}

/* Filters */
.kbss-filters {
    display: flex;
    gap: 10px;
    margin-bottom: 20px;
    flex-wrap: wrap;
    align-items: center;
}

.kbss-filters .form-control {
    max-width: 200px;
}

/* Staff list */
.kbss-staff-list .table {
    margin-bottom: 20px;
}

.kbss-staff-list .table th {
    background: #f7f7f7;
    font-weight: 600;
    white-space: nowrap;
}

.kbss-staff-list .table td {
    vertical-align: middle;
}

.kbss-staff-list .kbss-actions {
    display: flex;
    gap: 5px;
}

.kbss-staff-list .btn-sm {
    padding: 5px 10px;
}

.kbss-staff-list .btn-sm .material-icons {
    font-size: 18px;
}

/* Badges */
.kbss-staff-wrapper .badge {
    padding: 4px 8px;
    font-size: 11px;
    font-weight: 500;
}

.kbss-staff-wrapper .badge-success {
    background-color: #4CAF50;
    color: #fff;
}

.kbss-staff-wrapper .badge-warning {
    background-color: #FF9800;
    color: #fff;
}

.kbss-staff-wrapper .badge-danger {
    background-color: #f44336;
    color: #fff;
}

.kbss-staff-wrapper .badge-info {
    background-color: #2196F3;
    color: #fff;
}

/* Pagination */
.kbss-pagination {
    display: flex;
    justify-content: center;
    margin-top: 20px;
}

.kbss-pagination .pagination {
    margin: 0;
}

/* Form container */
.kbss-form-container {
    max-width: 600px;
}

.kbss-form-container .form-group {
    margin-bottom: 20px;
}

.kbss-form-container .form-label {
    display: block;
    margin-bottom: 8px;
    font-weight: 600;
}

.kbss-form-container .form-label.required::after {
    content: ' *';
    color: #f44336;
}

.kbss-form-container .form-text {
    margin-top: 5px;
    font-size: 13px;
}

/* Form actions */
.form-actions {
    display: flex;
    gap: 10px;
    margin-top: 30px;
    padding-top: 20px;
    border-top: 1px solid #eee;
}

/* Info box */
.kbss-info-box {
    background: #e3f2fd;
    border: 1px solid #90CAF9;
    border-radius: 4px;
    padding: 15px 20px;
    margin: 20px 0;
}

.kbss-info-box h4 {
    margin: 0 0 10px 0;
    font-size: 16px;
    color: #1976D2;
    display: flex;
    align-items: center;
    gap: 8px;
}

.kbss-info-box h4 .material-icons {
    font-size: 20px;
}

.kbss-info-box ul {
    margin: 0;
    padding-left: 20px;
}

.kbss-info-box li {
    margin-bottom: 5px;
}

/* Staff info */
.kbss-staff-info {
    background: #f5f5f5;
    padding: 15px 20px;
    border-radius: 4px;
    margin-bottom: 20px;
}

.kbss-staff-info h4 {
    margin: 0 0 10px 0;
    font-size: 16px;
}

.kbss-staff-info p {
    margin: 5px 0;
}

/* Permissions table */
.kbss-permissions-table {
    margin: 20px 0;
}

.kbss-permissions-table .table td:first-child {
    width: 40%;
}

.kbss-permissions-table .table td,
.kbss-permissions-table .table th {
    vertical-align: middle;
}

.kbss-permissions-table input[type="checkbox"] {
    width: 18px;
    height: 18px;
    cursor: pointer;
}

.kbss-bulk-actions {
    display: flex;
    gap: 10px;
    margin-bottom: 20px;
}

.kbss-instructions {
    color: #666;
    font-size: 14px;
    margin-bottom: 20px;
}

/* Customer invitations */
.kbss-invitations-wrapper {
    padding: 20px 0;
}

.kbss-section {
    margin-bottom: 30px;
}

.kbss-section h2 {
    margin: 0 0 10px 0;
    font-size: 20px;
}

.kbss-intro {
    color: #666;
    margin-bottom: 15px;
}

/* Invitation cards */
.kbss-invitation-cards {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 20px;
}

.kbss-invitation-card {
    border: 1px solid #ddd;
    border-radius: 8px;
    overflow: hidden;
}

.kbss-invitation-header {
    background: #f7f7f7;
    padding: 15px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.kbss-invitation-header h4 {
    margin: 0;
    font-size: 16px;
}

.kbss-invitation-body {
    padding: 15px;
}

.kbss-invitation-body p {
    margin: 0;
    color: #666;
    font-size: 13px;
}

.kbss-invitation-actions {
    padding: 15px;
    border-top: 1px solid #eee;
    display: flex;
    gap: 10px;
}

/* Account block hook */
.kbss-account-block {
    margin-bottom: 20px;
}

.kbss-account-block .card-header {
    display: flex;
    align-items: center;
    gap: 8px;
}

.kbss-account-block .card-header .material-icons {
    font-size: 20px;
    color: #FF9800;
}

.kbss-account-block .card-header .badge {
    margin-left: auto;
}

/* Responsive */
@media (max-width: 768px) {
    .kbss-staff-wrapper .kbss-header {
        flex-direction: column;
        align-items: flex-start;
    }

    .kbss-filters {
        flex-direction: column;
    }

    .kbss-filters .form-control {
        max-width: 100%;
        width: 100%;
    }

    .kbss-staff-list .table {
        font-size: 13px;
    }

    .form-actions {
        flex-direction: column;
    }
}
