/**
 * Unified token-driven components — Masar
 *
 * يُحمَّل بعد style.css. يطبّق قواعد المكوّنات (أزرار/بطاقات/حقول/topbar/قوائم)
 * على **كل** الـ presets عبر `body[class*="sam-style-"]` مستهلكاً tokens فقط
 * (التي يبثّها inc/customizer/output.php لكل preset). هكذا تعمل كل تحكّمات
 * التخصيص (اللون/النصف قطر/الخط...) على كل الـ presets بلا قواعد ناقصة.
 *
 * المرجع البصري = preset «Modern»: القيم هنا تطابق قواعده، فلا يتغيّر شكله.
 * الـ tokens (--primary-color, --primary-gradient, --bg-surface, --shadow-md ...)
 * مصدرها PHP — حرّرها هناك، لا هنا.
 */

/* ===== الأساس: خلفية/نص/خط ===== */
body[class*="sam-style-"],
body[class*="sam-style-"] body {
    background-color: var(--bg-main) !important;
    color: var(--text-main) !important;
    font-family: var(--sam-font-family, "Inter", system-ui, -apple-system, sans-serif) !important;
}

body[class*="sam-style-"] h1,
body[class*="sam-style-"] h2,
body[class*="sam-style-"] h3,
body[class*="sam-style-"] h4,
body[class*="sam-style-"] h5,
body[class*="sam-style-"] h6,
body[class*="sam-style-"] .card-title,
body[class*="sam-style-"] .modal-title {
    font-family: var(--sam-font-family, "Outfit", sans-serif) !important;
    font-weight: 700 !important;
}

/* ===== Topbar (تأثير الزجاج) ===== */
body[class*="sam-style-"] header.topbar {
    background: var(--glass-bg) !important;
    backdrop-filter: var(--glass-blur) !important;
    -webkit-backdrop-filter: var(--glass-blur) !important;
    border-bottom: 1px solid var(--glass-border) !important;
}

body[class*="sam-style-"] .badge-number {
    border: 2px solid #fff;
    box-shadow: var(--shadow-sm);
    border-radius: 50%;
}

/* ===== Cards ===== */
body[class*="sam-style-"] .card {
    background: var(--bg-surface) !important;
    border: 1px solid var(--border-color) !important;
    border-radius: var(--sam-radius) !important;
    box-shadow: var(--shadow-md) !important;
    padding: 0 !important;
}

/* ===== Dropdowns ===== */
body[class*="sam-style-"] .dropdown-menu {
    border: 1px solid var(--border-color) !important;
    border-radius: var(--sam-radius) !important;
    box-shadow: var(--shadow-xl) !important;
    margin-top: 10px !important;
    padding: 0.5rem !important;
}

body[class*="sam-style-"] .dropdown-item {
    border-radius: calc(var(--sam-radius) / 2) !important;
    padding: 0.75rem 1rem !important;
    font-weight: 500;
    transition: var(--transition-fast);
}

body[class*="sam-style-"] .dropdown-item:hover {
    background-color: color-mix(in srgb, var(--primary-color) 8%, transparent) !important;
    color: var(--primary-color) !important;
}

/* ===== Buttons ===== */
body[class*="sam-style-"] .btn {
    font-family: var(--sam-font-family, "Inter", sans-serif);
    border-radius: var(--sam-radius) !important;
}

body[class*="sam-style-"] .btn-primary {
    background: var(--primary-gradient) !important;
    border: none !important;
    color: #fff !important;
}

body[class*="sam-style-"] .btn-success {
    background: var(--success-gradient) !important;
    border: none !important;
    color: #fff !important;
}

body[class*="sam-style-"] .btn-danger {
    background: var(--danger-gradient) !important;
    border: none !important;
    color: #fff !important;
}

body[class*="sam-style-"] .btn-warning {
    background: var(--warning-gradient) !important;
    border: none !important;
    color: #fff !important;
}

body[class*="sam-style-"] .btn-info {
    background: var(--info-gradient) !important;
    border: none !important;
    color: #fff !important;
}

body[class*="sam-style-"] .btn-secondary {
    background: var(--secondary-color) !important;
    border: none !important;
    color: #fff !important;
}

body[class*="sam-style-"] .btn-outline-primary {
    border: 1.5px solid var(--primary-color) !important;
    color: var(--primary-color) !important;
    background: transparent !important;
}

body[class*="sam-style-"] .btn-outline-primary:hover {
    background: var(--primary-color) !important;
    color: #fff !important;
}

/* ===== Form fields (الحدود/النصف قطر — الحشو والخط من output.php) ===== */
body[class*="sam-style-"] .form-control,
body[class*="sam-style-"] .form-select,
body[class*="sam-style-"] .sam-input,
body[class*="sam-style-"] .sam-select,
body[class*="sam-style-"] .sam-textarea {
    border: 1.5px solid var(--border-color) !important;
    border-radius: var(--sam-radius) !important;
}

body[class*="sam-style-"] .form-control:focus,
body[class*="sam-style-"] .form-select:focus,
body[class*="sam-style-"] .sam-input:focus,
body[class*="sam-style-"] .sam-textarea:focus {
    border-color: var(--primary-color) !important;
    box-shadow: 0 0 0 0.2rem color-mix(in srgb, var(--primary-color) 20%, transparent) !important;
}

/* ===== AG Grid: النصف قطر فقط (لون الرأس يتحكّم به إعداد «Table header color») ===== */
body[class*="sam-style-"] .ag-theme-balham {
    border-radius: var(--sam-radius) !important;
}
