.posting-rules-page .page-title {
    font-weight: 700;
    letter-spacing: -0.3px;
}

.posting-rules-page .page-subtitle {
    font-size: 0.92rem;
}

.rule-list-card,
.rule-editor-card {
    border-radius: 18px;
    overflow: hidden;
}

.rules-table thead th {
    font-size: 0.84rem;
    color: #5b6472;
    border-bottom: 1px solid #e9ecef;
    white-space: nowrap;
}

.rules-table tbody td {
    vertical-align: middle;
}

.editor-title {
    font-size: 1rem;
    font-weight: 700;
}

.editor-subtitle {
    font-size: 0.84rem;
}

.mapping-box {
    border: 1px dashed #d8dee8;
    border-radius: 14px;
    padding: 14px;
    background: #fafbfd;
}

.mapping-title {
    font-weight: 700;
}

.mapping-subtitle {
    font-size: 0.84rem;
}

.mapping-summary {
    min-height: 44px;
}

.mapping-chip {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 6px 10px;
    border-radius: 999px;
    background: #eef4ff;
    color: #1d4ed8;
    margin: 4px 6px 0 0;
    font-size: 0.82rem;
}

.mapping-chip-role {
    font-weight: 700;
}

.role-card {
    border: 1px solid #e6ebf2;
    border-radius: 14px;
    padding: 12px;
    background: #fff;
}

.role-label {
    font-weight: 600;
    margin-bottom: 8px;
    display: block;
}

#accountsModal .modal-content {
    border-radius: 20px;
}

#accountsModal .modal-header,
#accountsModal .modal-footer {
    border-color: #edf1f5;
}

.select2-container .select2-selection--single {
    height: 38px !important;
    border: 1px solid #ced4da !important;
    border-radius: 0.375rem !important;
    display: flex !important;
    align-items: center !important;
}

.select2-container .select2-selection__rendered {
    line-height: 36px !important;
    padding-left: 12px !important;
    padding-right: 28px !important;
}

.select2-container .select2-selection__arrow {
    height: 36px !important;
}

@media (max-width: 991px) {
    .rule-list-card,
    .rule-editor-card {
        border-radius: 14px;
    }
}