/**
 * ART B2B - Premium Siyah & Gold Tema
 * Bootstrap 5.3 Override
 */

/* ========================================
   CSS Değişkenleri
   ======================================== */
:root {
    --art-black:        #0a0a0a;
    --art-black-light:  #141414;
    --art-black-card:   #1a1a1a;
    --art-black-hover:  #222222;
    --art-gold:         #C9A227;
    --art-gold-light:   #D4AF37;
    --art-gold-dark:    #A8861E;
    --art-gold-glow:    rgba(201, 162, 39, 0.25);
    --art-text:         #f5f5f5;
    --art-text-secondary: #b8b8b8;
    --art-text-muted:   #8f8f8f;
    --art-text-error:   #ff6b6b;
    --art-border:       #2a2a2a;
    --art-sidebar-width: 260px;
    --art-navbar-height: 64px;
    --art-transition:   0.3s ease;
}

/* ========================================
   Genel
   ======================================== */
*,
*::before,
*::after {
    box-sizing: border-box;
}

body {
    font-family: 'Segoe UI', system-ui, -apple-system, sans-serif;
    background-color: var(--art-black);
    color: var(--art-text);
    line-height: 1.6;
    overflow-x: hidden;
}

a {
    color: var(--art-gold);
    text-decoration: none;
    transition: color var(--art-transition);
}

a:hover {
    color: var(--art-gold-light);
}

/* ========================================
   Login Sayfası
   ======================================== */
.art-login-body {
    min-height: 100vh;
    background: var(--art-black);
}

.art-login-wrapper {
    position: relative;
    min-height: 100vh;
}

.art-login-bg {
    position: fixed;
    inset: 0;
    background:
        radial-gradient(ellipse at 20% 50%, rgba(201, 162, 39, 0.08) 0%, transparent 50%),
        radial-gradient(ellipse at 80% 20%, rgba(201, 162, 39, 0.05) 0%, transparent 40%),
        linear-gradient(180deg, var(--art-black) 0%, #0f0f0f 100%);
    z-index: 0;
}

.art-login-card {
    position: relative;
    z-index: 1;
    background: var(--art-black-card);
    border: 1px solid var(--art-border);
    border-radius: 16px;
    padding: 2.5rem 2rem;
    box-shadow:
        0 20px 60px rgba(0, 0, 0, 0.5),
        0 0 40px var(--art-gold-glow);
}

.art-login-logo-wrap {
    margin: 0 auto 1rem;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 72px;
}

.art-login-logo-img {
    display: block;
    max-width: 260px;
    max-height: 90px;
    width: auto;
    height: auto;
    object-fit: contain;
}

.art-login-logo-fallback {
    font-size: 1.35rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    color: var(--art-gold-light);
}

.art-login-logo {
    width: 72px;
    height: 72px;
    margin: 0 auto 1rem;
    background: linear-gradient(135deg, var(--art-gold), var(--art-gold-dark));
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.75rem;
    color: var(--art-black);
    box-shadow: 0 4px 20px var(--art-gold-glow);
}

.art-login-title {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--art-gold-light);
    margin-bottom: 0.25rem;
}

.art-login-subtitle {
    color: var(--art-text-muted);
    font-size: 0.875rem;
    margin-bottom: 0;
}

.art-login-form .form-label {
    color: var(--art-text-muted);
    font-size: 0.875rem;
    font-weight: 500;
}

.art-input-group .input-group-text {
    background: var(--art-black-hover);
    border: 1px solid var(--art-border);
    color: var(--art-gold);
}

.art-input-group .form-control {
    background: var(--art-black-hover);
    border: 1px solid var(--art-border);
    color: var(--art-text);
    padding: 0.625rem 0.875rem;
}

.art-input-group .form-control:focus {
    background: var(--art-black-hover);
    border-color: var(--art-gold);
    color: var(--art-text);
    box-shadow: 0 0 0 0.2rem var(--art-gold-glow);
}

.art-input-group .form-control::placeholder {
    color: #555;
}

.art-toggle-password {
    background: var(--art-black-hover);
    border: 1px solid var(--art-border);
    color: var(--art-text-muted);
    padding: 0 0.875rem;
}

.art-toggle-password:hover {
    color: var(--art-gold);
    background: var(--art-black-hover);
    border-color: var(--art-border);
}

.art-btn-primary {
    background: linear-gradient(135deg, var(--art-gold), var(--art-gold-dark));
    border: none;
    color: var(--art-black);
    font-weight: 600;
    padding: 0.75rem 1.5rem;
    border-radius: 8px;
    transition: all var(--art-transition);
}

.art-btn-primary:hover {
    background: linear-gradient(135deg, var(--art-gold-light), var(--art-gold));
    color: var(--art-black);
    transform: translateY(-1px);
    box-shadow: 0 4px 20px var(--art-gold-glow);
}

.art-alert {
    background: rgba(220, 53, 69, 0.15);
    border: 1px solid rgba(220, 53, 69, 0.3);
    color: #f5a0a8;
    border-radius: 8px;
    font-size: 0.875rem;
}

.art-login-footer small {
    color: var(--art-text-muted);
}

/* ========================================
   Dashboard Layout
   ======================================== */
.art-body {
    padding-top: var(--art-navbar-height);
}

.art-wrapper {
    display: flex;
    min-height: calc(100vh - var(--art-navbar-height));
}

/* Navbar */
.art-navbar {
    background: var(--art-black-light);
    border-bottom: 1px solid var(--art-border);
    height: var(--art-navbar-height);
    padding: 0 1rem;
    z-index: 1030;
}

.art-brand {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    color: var(--art-text) !important;
    text-decoration: none;
}

.art-brand-icon {
    width: 40px;
    height: 40px;
    background: linear-gradient(135deg, var(--art-gold), var(--art-gold-dark));
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--art-black);
    font-size: 1.1rem;
}

.art-brand-text {
    display: flex;
    flex-direction: column;
    line-height: 1.2;
}

.art-brand-text strong {
    color: var(--art-gold-light);
    font-size: 1.1rem;
}

.art-brand-text small {
    color: var(--art-text-muted);
    font-size: 0.7rem;
    letter-spacing: 0.5px;
}

.art-sidebar-toggle {
    color: var(--art-gold) !important;
    font-size: 1.25rem;
    padding: 0.25rem 0.5rem;
    margin-right: 0.5rem;
}

.art-user-avatar {
    width: 36px;
    height: 36px;
    background: var(--art-black-card);
    border: 2px solid var(--art-gold);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--art-gold);
    font-size: 0.875rem;
}

.art-user-details {
    display: flex;
    flex-direction: column;
    line-height: 1.2;
}

.art-user-name {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--art-text);
}

.art-user-company {
    font-size: 0.75rem;
    color: var(--art-text-muted);
}

.art-dropdown-btn {
    background: transparent;
    border: 1px solid var(--art-border);
    color: var(--art-text-muted);
    padding: 0.375rem 0.75rem;
    border-radius: 8px;
}

.art-dropdown-btn:hover {
    background: var(--art-black-hover);
    border-color: var(--art-gold);
    color: var(--art-gold);
}

.art-dropdown-menu {
    background: var(--art-black-card);
    border: 1px solid var(--art-border);
    border-radius: 8px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.5);
    padding: 0.5rem;
}

.art-dropdown-menu .dropdown-item {
    color: var(--art-text);
    border-radius: 6px;
    padding: 0.5rem 0.75rem;
    font-size: 0.875rem;
}

.art-dropdown-menu .dropdown-item:hover {
    background: var(--art-black-hover);
    color: var(--art-gold);
}

.art-dropdown-header {
    color: var(--art-text-muted) !important;
    font-size: 0.8rem;
}

.art-dropdown-menu .dropdown-divider {
    border-color: var(--art-border);
}

/* Sidebar */
.art-sidebar {
    width: var(--art-sidebar-width);
    background: var(--art-black-light);
    border-right: 1px solid var(--art-border);
    position: fixed;
    top: var(--art-navbar-height);
    left: 0;
    bottom: 0;
    z-index: 1020;
    transition: transform var(--art-transition);
    overflow-y: auto;
}

.art-sidebar-inner {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 1rem 0;
}

.art-sidebar-nav .nav-link {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 1.25rem;
    color: var(--art-text-muted);
    font-size: 0.9rem;
    border-left: 3px solid transparent;
    transition: all var(--art-transition);
}

.art-sidebar-nav .nav-link i {
    width: 20px;
    text-align: center;
    font-size: 1rem;
}

.art-sidebar-nav .nav-link:hover {
    color: var(--art-gold-light);
    background: rgba(201, 162, 39, 0.05);
}

.art-sidebar-nav .nav-link.active {
    color: var(--art-gold);
    background: rgba(201, 162, 39, 0.1);
    border-left-color: var(--art-gold);
    font-weight: 600;
}

.art-sidebar-nav .nav-link.disabled {
    opacity: 0.5;
    pointer-events: none;
}

.art-sidebar-nav .nav-section {
    padding: 1.25rem 1.25rem 0.5rem;
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: var(--art-text-muted);
}

.art-badge-soon {
    margin-left: auto;
    background: rgba(201, 162, 39, 0.15);
    color: var(--art-gold);
    font-size: 0.65rem;
    font-weight: 600;
    padding: 0.2rem 0.5rem;
    border-radius: 4px;
}

.art-sidebar-footer {
    margin-top: auto;
    padding: 1rem 1.25rem;
    border-top: 1px solid var(--art-border);
    display: flex;
    justify-content: space-between;
}

.art-sidebar-footer small {
    color: var(--art-text-muted);
    font-size: 0.7rem;
}

.art-sidebar-overlay {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.6);
    z-index: 1010;
}

/* Main Content */
.art-main {
    flex: 1;
    margin-left: var(--art-sidebar-width);
    min-height: calc(100vh - var(--art-navbar-height));
    background: var(--art-black);
}

.art-content {
    padding: 1.5rem;
}

/* Page Header */
.art-page-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 1.5rem;
    flex-wrap: wrap;
    gap: 1rem;
}

.art-page-title {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--art-text);
    margin-bottom: 0.25rem;
}

.art-page-subtitle {
    color: var(--art-text-muted);
    font-size: 0.875rem;
    margin-bottom: 0;
}

.art-badge-role {
    background: rgba(201, 162, 39, 0.15);
    color: var(--art-gold);
    padding: 0.375rem 0.875rem;
    border-radius: 20px;
    font-size: 0.8rem;
    font-weight: 600;
    border: 1px solid rgba(201, 162, 39, 0.3);
}

/* Stat Cards */
.art-stat-card {
    background: var(--art-black-card);
    border: 1px solid var(--art-border);
    border-radius: 12px;
    padding: 1.25rem;
    display: flex;
    align-items: center;
    gap: 1rem;
    transition: all var(--art-transition);
}

.art-stat-card:hover {
    border-color: rgba(201, 162, 39, 0.3);
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.3);
}

.art-stat-icon {
    width: 52px;
    height: 52px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    flex-shrink: 0;
}

.art-stat-icon-gold  { background: rgba(201, 162, 39, 0.15); color: var(--art-gold); }
.art-stat-icon-blue  { background: rgba(52, 152, 219, 0.15); color: #3498db; }
.art-stat-icon-green { background: rgba(46, 204, 113, 0.15); color: #2ecc71; }
.art-stat-icon-purple { background: rgba(155, 89, 182, 0.15); color: #9b59b6; }

.art-stat-value {
    display: block;
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--art-text);
    line-height: 1.2;
}

.art-stat-label {
    display: block;
    font-size: 0.8rem;
    color: var(--art-text-muted);
}

.art-report-stat-card {
    min-height: 100%;
    align-items: stretch !important;
}

.art-report-card-title {
    display: block;
    font-size: 0.95rem;
    font-weight: 600;
    color: var(--art-text);
    line-height: 1.35;
}

.art-report-card-subtitle {
    font-size: 0.8rem;
    color: var(--art-text-secondary);
    margin-top: 0.15rem;
}

.art-report-currency-lines {
    font-size: 1rem;
    font-weight: 700;
    color: var(--art-gold);
    line-height: 1.7;
}

.art-report-meta {
    margin-top: 0.75rem;
    font-size: 0.8rem;
    color: var(--art-text-muted);
}

.art-text-error {
    color: var(--art-text-error) !important;
}

/* Cards */
.art-card {
    background: var(--art-black-card);
    border: 1px solid var(--art-border);
    border-radius: 12px;
    overflow: hidden;
}

.art-card-header {
    padding: 1rem 1.25rem;
    border-bottom: 1px solid var(--art-border);
    background: rgba(255, 255, 255, 0.02);
}

.art-card-header h5 {
    margin: 0;
    font-size: 1rem;
    font-weight: 600;
    color: var(--art-text);
}

.art-card-header h5 i {
    color: var(--art-gold);
}

.art-card-body {
    padding: 1.25rem;
}

.art-divider {
    border-color: var(--art-border);
    margin: 1.25rem 0;
}

/* Welcome Message */
.art-welcome-message {
    display: flex;
    align-items: flex-start;
    gap: 1.25rem;
}

.art-welcome-icon {
    width: 56px;
    height: 56px;
    background: linear-gradient(135deg, var(--art-gold), var(--art-gold-dark));
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    color: var(--art-black);
    flex-shrink: 0;
}

.art-welcome-message h4 {
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--art-gold-light);
    margin-bottom: 0.5rem;
}

.art-text-readable {
    color: var(--art-text-secondary) !important;
    font-size: 0.9rem;
    line-height: 1.6;
}

.art-text-secondary {
    color: var(--art-text-secondary) !important;
}

.art-text-muted {
    color: var(--art-text-muted) !important;
}

.art-content .text-muted,
.art-main .text-muted,
.art-card-body .text-muted {
    color: var(--art-text-muted) !important;
}

.art-content .text-secondary,
.art-main .text-secondary {
    color: var(--art-text-secondary) !important;
}

.art-content .text-danger,
.art-main .text-danger,
.art-content .text-danger.small,
.art-main .text-danger.small {
    color: var(--art-text-error) !important;
}

.art-content .small.text-muted,
.art-main .small.text-muted,
.art-empty-state {
    color: var(--art-text-muted) !important;
}

.art-detail-list .small,
.art-detail-list .art-text-muted {
    color: var(--art-text-secondary) !important;
}

/* Flash Alerts */
.art-alert-dismissible {
    border-radius: 8px;
    font-size: 0.875rem;
    margin-bottom: 0;
}

.art-content > .art-alert-dismissible {
    margin-bottom: 1rem;
}

.alert-success.art-alert-dismissible {
    background: rgba(46, 204, 113, 0.12);
    border: 1px solid rgba(46, 204, 113, 0.3);
    color: #7dcea0;
}

.alert-danger.art-alert-dismissible {
    background: rgba(220, 53, 69, 0.12);
    border: 1px solid rgba(220, 53, 69, 0.3);
    color: #f5a0a8;
}

.alert-warning.art-alert-dismissible {
    background: rgba(201, 162, 39, 0.12);
    border: 1px solid rgba(201, 162, 39, 0.3);
    color: var(--art-gold-light);
}

/* Badges */
.art-badge-active {
    background: rgba(46, 204, 113, 0.15);
    color: #2ecc71;
    font-weight: 600;
}

.art-badge-passive {
    background: rgba(136, 136, 136, 0.15);
    color: #888;
    font-weight: 600;
}

.bg-orange {
    background-color: #e67e22 !important;
    color: #fff !important;
}

/* Admin Table */
.art-table {
    color: var(--art-text);
    margin-bottom: 0;
}

.art-table thead th {
    background: var(--art-black-hover);
    color: var(--art-gold);
    border-color: var(--art-border);
    font-size: 0.8rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    white-space: nowrap;
}

.art-table tbody td {
    background: var(--art-black-card);
    border-color: var(--art-border);
    vertical-align: middle;
    font-size: 0.875rem;
}

.art-table tbody tr:hover td {
    background: var(--art-black-hover);
}

.art-form-label {
    color: var(--art-text-muted);
    font-size: 0.875rem;
    font-weight: 500;
}

.art-form-control,
.art-form-select {
    background: var(--art-black-hover);
    border: 1px solid var(--art-border);
    color: var(--art-text);
}

.art-form-control:focus,
.art-form-select:focus {
    background: var(--art-black-hover);
    border-color: var(--art-gold);
    color: var(--art-text);
    box-shadow: 0 0 0 0.2rem var(--art-gold-glow);
}

.art-form-control::placeholder {
    color: #555;
}

.art-form-select option {
    background: var(--art-black-card);
    color: var(--art-text);
}

.art-btn-gold {
    background: linear-gradient(135deg, var(--art-gold), var(--art-gold-dark));
    border: none;
    color: var(--art-black);
    font-weight: 600;
}

.art-btn-gold:hover {
    background: linear-gradient(135deg, var(--art-gold-light), var(--art-gold));
    color: var(--art-black);
}

.art-btn-outline {
    border: 1px solid var(--art-border);
    color: var(--art-text-muted);
    background: transparent;
}

.art-btn-outline:hover {
    border-color: var(--art-gold);
    color: var(--art-gold);
    background: rgba(201, 162, 39, 0.05);
}

.art-detail-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.art-detail-list li {
    display: flex;
    justify-content: space-between;
    padding: 0.75rem 0;
    border-bottom: 1px solid var(--art-border);
    gap: 1rem;
}

.art-detail-list li:last-child {
    border-bottom: none;
}

.art-detail-label {
    color: var(--art-text-muted);
    font-size: 0.85rem;
    flex-shrink: 0;
}

.art-detail-value {
    color: var(--art-text);
    font-size: 0.875rem;
    text-align: right;
}

.is-invalid-art {
    border-color: #dc3545 !important;
}

.invalid-feedback-art {
    color: #f5a0a8;
    font-size: 0.8rem;
    margin-top: 0.25rem;
}

.art-filter-bar {
    background: var(--art-black-card);
    border: 1px solid var(--art-border);
    border-radius: 12px;
    padding: 1rem 1.25rem;
    margin-bottom: 1.25rem;
}

.art-action-btn {
    padding: 0.25rem 0.5rem;
    font-size: 0.8rem;
    border-radius: 6px;
}

/* Info Items */
.art-info-item {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    padding: 0.5rem 0;
    font-size: 0.875rem;
    color: var(--art-text-muted);
}

.art-info-item i {
    font-size: 1rem;
}

/* Account List */
.art-account-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.art-account-list li {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.75rem 0;
    border-bottom: 1px solid var(--art-border);
}

.art-account-list li:last-child {
    border-bottom: none;
}

.art-account-label {
    font-size: 0.8rem;
    color: var(--art-text-muted);
}

.art-account-value {
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--art-text);
    text-align: right;
}

/* Todo List */
.art-todo-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.art-todo-list li {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    padding: 0.5rem 0;
    font-size: 0.875rem;
    color: var(--art-text-muted);
}

.art-todo-list li i {
    font-size: 0.4rem;
    color: var(--art-gold);
}

/* DataTables Override */
.dataTables_wrapper {
    color: var(--art-text);
}

table.dataTable {
    border-color: var(--art-border) !important;
}

table.dataTable thead th {
    background: var(--art-black-hover) !important;
    color: var(--art-gold) !important;
    border-color: var(--art-border) !important;
}

table.dataTable tbody td {
    background: var(--art-black-card) !important;
    color: var(--art-text) !important;
    border-color: var(--art-border) !important;
}

.page-link {
    background: var(--art-black-card);
    border-color: var(--art-border);
    color: var(--art-text-muted);
}

.page-link:hover {
    background: var(--art-black-hover);
    border-color: var(--art-gold);
    color: var(--art-gold);
}

.page-item.active .page-link {
    background: var(--art-gold);
    border-color: var(--art-gold);
    color: var(--art-black);
}

/* ========================================
   Responsive
   ======================================== */
@media (max-width: 991.98px) {
    .art-sidebar {
        transform: translateX(-100%);
    }

    .art-sidebar.show {
        transform: translateX(0);
    }

    .art-sidebar-overlay.show {
        display: block;
    }

    .art-main {
        margin-left: 0;
    }
}

@media (max-width: 575.98px) {
    .art-content {
        padding: 1rem;
    }

    .art-login-card {
        padding: 2rem 1.5rem;
    }

    .art-login-logo-img {
        max-width: 190px;
        max-height: 72px;
    }

    .art-stat-card {
        padding: 1rem;
    }
}

.art-product-search-results {
    max-height: 240px;
    overflow-y: auto;
    border: 1px solid var(--art-border, #333);
    border-radius: 0.375rem;
}

.art-product-search-item {
    cursor: pointer;
    background: var(--art-card-bg, #1a1a1a);
    color: var(--art-text, #f5f5f5);
    border-color: var(--art-border, #333) !important;
}

.art-product-search-item:hover {
    background: rgba(212, 175, 55, 0.12);
}

.art-entity-search-results {
    position: absolute;
    z-index: 1050;
    width: 100%;
    max-height: 280px;
    overflow-y: auto;
    margin-top: 0.25rem;
    border: 1px solid var(--art-border, #333);
    border-radius: 0.375rem;
    background: var(--art-card-bg, #1a1a1a);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.35);
}

.art-campaign-picker,
.art-campaign-cari-picker {
    position: relative;
}

.art-entity-search-item {
    display: block;
    width: 100%;
    text-align: left;
    border: 0;
    border-bottom: 1px solid var(--art-border, #333);
    padding: 0.65rem 0.85rem;
    background: transparent;
    color: var(--art-text, #f5f5f5);
    cursor: pointer;
}

.art-entity-search-item:last-child {
    border-bottom: 0;
}

.art-entity-search-item:hover,
.art-entity-search-item.active {
    background: rgba(212, 175, 55, 0.12);
}

.art-entity-search-title {
    font-weight: 600;
    color: var(--art-text, #f5f5f5);
}

.art-entity-search-sub {
    font-size: 0.875rem;
    color: var(--art-gold, #d4af37);
    margin-top: 0.15rem;
}

.art-entity-search-sub code {
    color: var(--art-gold, #d4af37);
}

.art-entity-search-meta {
    font-size: 0.8rem;
    color: #aaa;
    margin-top: 0.2rem;
}

.art-entity-search-empty {
    padding: 0.75rem 0.85rem;
    color: #aaa;
}

.art-campaign-rule-card {
    border: 1px solid var(--art-border, #333);
    border-radius: 0.5rem;
    padding: 0.85rem 1rem;
    margin-bottom: 0.75rem;
    background: rgba(255, 255, 255, 0.02);
}

.art-campaign-rule-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 0.75rem;
}

.art-campaign-rule-title {
    font-weight: 600;
    color: var(--art-text, #f5f5f5);
}

.art-campaign-rule-meta {
    font-size: 0.875rem;
    color: #aaa;
    margin-top: 0.15rem;
}

.art-campaign-rule-meta code {
    color: var(--art-gold, #d4af37);
}

.art-campaign-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.art-campaign-chip {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.35rem 0.6rem;
    border-radius: 999px;
    background: rgba(212, 175, 55, 0.15);
    border: 1px solid rgba(212, 175, 55, 0.35);
    color: var(--art-text, #f5f5f5);
    font-size: 0.875rem;
}

.art-campaign-chip-remove {
    border: 0;
    background: transparent;
    color: #f5f5f5;
    font-size: 1.1rem;
    line-height: 1;
    padding: 0 0.15rem;
    cursor: pointer;
}

.art-campaign-section-divider {
    border-color: var(--art-border, #333);
    margin: 1.5rem 0;
}

@media (max-width: 767.98px) {
    .art-campaign-rule-card .row > [class*="col-"] {
        margin-bottom: 0.25rem;
    }
}

.art-campaign-product-panel .art-card-header {
    border-bottom: 1px solid var(--art-border, #333);
}

.art-campaign-results-table-wrap {
    max-height: 420px;
    overflow: auto;
    border: 1px solid var(--art-border, #333);
    border-radius: 0.375rem;
}

.art-campaign-results-table-wrap table {
    margin-bottom: 0;
}

.art-campaign-results-table-wrap thead th {
    position: sticky;
    top: 0;
    z-index: 1;
    background: var(--art-card-bg, #1a1a1a);
}

.art-campaign-bulk-rules {
    border: 1px dashed rgba(212, 175, 55, 0.35);
}
