/* =========================================================
   Custom Bootstrap Colors - تمام رنگ‌ها برای text, bg, btn
   تولید شده با پشتیبانی از 100 تا 900 برای هر رنگ
   ========================================================= */

:root {
    /* رنگ‌های پایه و سطوح روشن/تاریک */
    --bs-blue-100: #cfe2ff;
    --bs-blue-200: #9ec5fe;
    --bs-blue-300: #6ea8fe;
    --bs-blue-400: #3d8bfd;
    --bs-blue-500: #0d6efd;
    --bs-blue-600: #0a58ca;
    --bs-blue-700: #084298;
    --bs-blue-800: #052c65;
    --bs-blue-900: #031633;

    --bs-indigo-100: #e0cffc;
    --bs-indigo-200: #c29ffa;
    --bs-indigo-300: #a370f7;
    --bs-indigo-400: #8540f5;
    --bs-indigo-500: #6610f2;
    --bs-indigo-600: #520dc2;
    --bs-indigo-700: #3d0a91;
    --bs-indigo-800: #290661;
    --bs-indigo-900: #140330;

    --bs-purple-100: #e2d9f3;
    --bs-purple-200: #c5b3e6;
    --bs-purple-300: #a98eda;
    --bs-purple-400: #8c68cd;
    --bs-purple-500: #6f42c1;
    --bs-purple-600: #59359a;
    --bs-purple-700: #432874;
    --bs-purple-800: #2c1a4d;
    --bs-purple-900: #160d27;

    --bs-pink-100: #f7d6e6;
    --bs-pink-200: #efadce;
    --bs-pink-300: #e685b5;
    --bs-pink-400: #de5c9d;
    --bs-pink-500: #d63384;
    --bs-pink-600: #ab296a;
    --bs-pink-700: #801f4f;
    --bs-pink-800: #561435;
    --bs-pink-900: #2b0a1a;

    --bs-red-100: #f8d7da;
    --bs-red-200: #f1aeb5;
    --bs-red-300: #ea868f;
    --bs-red-400: #e35d6a;
    --bs-red-500: #dc3545;
    --bs-red-600: #b02a37;
    --bs-red-700: #842029;
    --bs-red-800: #58151c;
    --bs-red-900: #2c0b0e;

    --bs-orange-100: #ffe5d0;
    --bs-orange-200: #fecba1;
    --bs-orange-300: #feb272;
    --bs-orange-400: #fd9843;
    --bs-orange-500: #fd7e14;
    --bs-orange-600: #ca6510;
    --bs-orange-700: #984c0c;
    --bs-orange-800: #653208;
    --bs-orange-900: #331904;

    --bs-yellow-100: #fff3cd;
    --bs-yellow-200: #ffe69c;
    --bs-yellow-300: #ffda6a;
    --bs-yellow-400: #ffcd39;
    --bs-yellow-500: #ffc107;
    --bs-yellow-600: #cc9a06;
    --bs-yellow-700: #997404;
    --bs-yellow-800: #664d03;
    --bs-yellow-900: #332701;

    --bs-green-100: #d1e7dd;
    --bs-green-200: #a3cfbb;
    --bs-green-300: #75b798;
    --bs-green-400: #479f76;
    --bs-green-500: #198754;
    --bs-green-600: #146c43;
    --bs-green-700: #0f5132;
    --bs-green-800: #0a3622;
    --bs-green-900: #051b11;

    --bs-teal-100: #d2f4ea;
    --bs-teal-200: #a6e9d5;
    --bs-teal-300: #79dfc1;
    --bs-teal-400: #4dd4ac;
    --bs-teal-500: #20c997;
    --bs-teal-600: #1aa179;
    --bs-teal-700: #13795b;
    --bs-teal-800: #0d503c;
    --bs-teal-900: #06281e;

    --bs-cyan-100: #cff4fc;
    --bs-cyan-200: #9eeaf9;
    --bs-cyan-300: #6edff6;
    --bs-cyan-400: #3dd5f3;
    --bs-cyan-500: #0dcaf0;
    --bs-cyan-600: #0aa2c0;
    --bs-cyan-700: #087990;
    --bs-cyan-800: #055160;
    --bs-cyan-900: #032830;

    --bs-gray-100: #f8f9fa;
    --bs-gray-200: #e9ecef;
    --bs-gray-300: #dee2e6;
    --bs-gray-400: #ced4da;
    --bs-gray-500: #adb5bd;
    --bs-gray-600: #6c757d;
    --bs-gray-700: #495057;
    --bs-gray-800: #343a40;
    --bs-gray-900: #212529;

    --bs-white: #fff;
    --bs-black: #000;
}

/* =========================================================
   کلاس‌های متن (text-*)
   ========================================================= */
.text-blue-100 { color: var(--bs-blue-100) !important; }
.text-blue-200 { color: var(--bs-blue-200) !important; }
.text-blue-300 { color: var(--bs-blue-300) !important; }
.text-blue-400 { color: var(--bs-blue-400) !important; }
.text-blue-500 { color: var(--bs-blue-500) !important; }
.text-blue-600 { color: var(--bs-blue-600) !important; }
.text-blue-700 { color: var(--bs-blue-700) !important; }
.text-blue-800 { color: var(--bs-blue-800) !important; }
.text-blue-900 { color: var(--bs-blue-900) !important; }

.text-indigo-100 { color: var(--bs-indigo-100) !important; }
.text-indigo-200 { color: var(--bs-indigo-200) !important; }
.text-indigo-300 { color: var(--bs-indigo-300) !important; }
.text-indigo-400 { color: var(--bs-indigo-400) !important; }
.text-indigo-500 { color: var(--bs-indigo-500) !important; }
.text-indigo-600 { color: var(--bs-indigo-600) !important; }
.text-indigo-700 { color: var(--bs-indigo-700) !important; }
.text-indigo-800 { color: var(--bs-indigo-800) !important; }
.text-indigo-900 { color: var(--bs-indigo-900) !important; }

.text-purple-100 { color: var(--bs-purple-100) !important; }
.text-purple-200 { color: var(--bs-purple-200) !important; }
.text-purple-300 { color: var(--bs-purple-300) !important; }
.text-purple-400 { color: var(--bs-purple-400) !important; }
.text-purple-500 { color: var(--bs-purple-500) !important; }
.text-purple-600 { color: var(--bs-purple-600) !important; }
.text-purple-700 { color: var(--bs-purple-700) !important; }
.text-purple-800 { color: var(--bs-purple-800) !important; }
.text-purple-900 { color: var(--bs-purple-900) !important; }

.text-pink-100 { color: var(--bs-pink-100) !important; }
.text-pink-200 { color: var(--bs-pink-200) !important; }
.text-pink-300 { color: var(--bs-pink-300) !important; }
.text-pink-400 { color: var(--bs-pink-400) !important; }
.text-pink-500 { color: var(--bs-pink-500) !important; }
.text-pink-600 { color: var(--bs-pink-600) !important; }
.text-pink-700 { color: var(--bs-pink-700) !important; }
.text-pink-800 { color: var(--bs-pink-800) !important; }
.text-pink-900 { color: var(--bs-pink-900) !important; }

.text-red-100 { color: var(--bs-red-100) !important; }
.text-red-200 { color: var(--bs-red-200) !important; }
.text-red-300 { color: var(--bs-red-300) !important; }
.text-red-400 { color: var(--bs-red-400) !important; }
.text-red-500 { color: var(--bs-red-500) !important; }
.text-red-600 { color: var(--bs-red-600) !important; }
.text-red-700 { color: var(--bs-red-700) !important; }
.text-red-800 { color: var(--bs-red-800) !important; }
.text-red-900 { color: var(--bs-red-900) !important; }

.text-orange-100 { color: var(--bs-orange-100) !important; }
.text-orange-200 { color: var(--bs-orange-200) !important; }
.text-orange-300 { color: var(--bs-orange-300) !important; }
.text-orange-400 { color: var(--bs-orange-400) !important; }
.text-orange-500 { color: var(--bs-orange-500) !important; }
.text-orange-600 { color: var(--bs-orange-600) !important; }
.text-orange-700 { color: var(--bs-orange-700) !important; }
.text-orange-800 { color: var(--bs-orange-800) !important; }
.text-orange-900 { color: var(--bs-orange-900) !important; }

.text-yellow-100 { color: var(--bs-yellow-100) !important; }
.text-yellow-200 { color: var(--bs-yellow-200) !important; }
.text-yellow-300 { color: var(--bs-yellow-300) !important; }
.text-yellow-400 { color: var(--bs-yellow-400) !important; }
.text-yellow-500 { color: var(--bs-yellow-500) !important; }
.text-yellow-600 { color: var(--bs-yellow-600) !important; }
.text-yellow-700 { color: var(--bs-yellow-700) !important; }
.text-yellow-800 { color: var(--bs-yellow-800) !important; }
.text-yellow-900 { color: var(--bs-yellow-900) !important; }

.text-green-100 { color: var(--bs-green-100) !important; }
.text-green-200 { color: var(--bs-green-200) !important; }
.text-green-300 { color: var(--bs-green-300) !important; }
.text-green-400 { color: var(--bs-green-400) !important; }
.text-green-500 { color: var(--bs-green-500) !important; }
.text-green-600 { color: var(--bs-green-600) !important; }
.text-green-700 { color: var(--bs-green-700) !important; }
.text-green-800 { color: var(--bs-green-800) !important; }
.text-green-900 { color: var(--bs-green-900) !important; }

.text-teal-100 { color: var(--bs-teal-100) !important; }
.text-teal-200 { color: var(--bs-teal-200) !important; }
.text-teal-300 { color: var(--bs-teal-300) !important; }
.text-teal-400 { color: var(--bs-teal-400) !important; }
.text-teal-500 { color: var(--bs-teal-500) !important; }
.text-teal-600 { color: var(--bs-teal-600) !important; }
.text-teal-700 { color: var(--bs-teal-700) !important; }
.text-teal-800 { color: var(--bs-teal-800) !important; }
.text-teal-900 { color: var(--bs-teal-900) !important; }

.text-cyan-100 { color: var(--bs-cyan-100) !important; }
.text-cyan-200 { color: var(--bs-cyan-200) !important; }
.text-cyan-300 { color: var(--bs-cyan-300) !important; }
.text-cyan-400 { color: var(--bs-cyan-400) !important; }
.text-cyan-500 { color: var(--bs-cyan-500) !important; }
.text-cyan-600 { color: var(--bs-cyan-600) !important; }
.text-cyan-700 { color: var(--bs-cyan-700) !important; }
.text-cyan-800 { color: var(--bs-cyan-800) !important; }
.text-cyan-900 { color: var(--bs-cyan-900) !important; }

.text-gray-100 { color: var(--bs-gray-100) !important; }
.text-gray-200 { color: var(--bs-gray-200) !important; }
.text-gray-300 { color: var(--bs-gray-300) !important; }
.text-gray-400 { color: var(--bs-gray-400) !important; }
.text-gray-500 { color: var(--bs-gray-500) !important; }
.text-gray-600 { color: var(--bs-gray-600) !important; }
.text-gray-700 { color: var(--bs-gray-700) !important; }
.text-gray-800 { color: var(--bs-gray-800) !important; }
.text-gray-900 { color: var(--bs-gray-900) !important; }

/* =========================================================
   کلاس‌های پس‌زمینه (bg-*)
   ========================================================= */
.bg-blue-100 { background-color: var(--bs-blue-100) !important; }
.bg-blue-200 { background-color: var(--bs-blue-200) !important; }
.bg-blue-300 { background-color: var(--bs-blue-300) !important; }
.bg-blue-400 { background-color: var(--bs-blue-400) !important; }
.bg-blue-500 { background-color: var(--bs-blue-500) !important; }
.bg-blue-600 { background-color: var(--bs-blue-600) !important; }
.bg-blue-700 { background-color: var(--bs-blue-700) !important; }
.bg-blue-800 { background-color: var(--bs-blue-800) !important; }
.bg-blue-900 { background-color: var(--bs-blue-900) !important; }

.bg-indigo-100 { background-color: var(--bs-indigo-100) !important; }
.bg-indigo-200 { background-color: var(--bs-indigo-200) !important; }
.bg-indigo-300 { background-color: var(--bs-indigo-300) !important; }
.bg-indigo-400 { background-color: var(--bs-indigo-400) !important; }
.bg-indigo-500 { background-color: var(--bs-indigo-500) !important; }
.bg-indigo-600 { background-color: var(--bs-indigo-600) !important; }
.bg-indigo-700 { background-color: var(--bs-indigo-700) !important; }
.bg-indigo-800 { background-color: var(--bs-indigo-800) !important; }
.bg-indigo-900 { background-color: var(--bs-indigo-900) !important; }

.bg-purple-100 { background-color: var(--bs-purple-100) !important; }
.bg-purple-200 { background-color: var(--bs-purple-200) !important; }
.bg-purple-300 { background-color: var(--bs-purple-300) !important; }
.bg-purple-400 { background-color: var(--bs-purple-400) !important; }
.bg-purple-500 { background-color: var(--bs-purple-500) !important; }
.bg-purple-600 { background-color: var(--bs-purple-600) !important; }
.bg-purple-700 { background-color: var(--bs-purple-700) !important; }
.bg-purple-800 { background-color: var(--bs-purple-800) !important; }
.bg-purple-900 { background-color: var(--bs-purple-900) !important; }

.bg-pink-100 { background-color: var(--bs-pink-100) !important; }
.bg-pink-200 { background-color: var(--bs-pink-200) !important; }
.bg-pink-300 { background-color: var(--bs-pink-300) !important; }
.bg-pink-400 { background-color: var(--bs-pink-400) !important; }
.bg-pink-500 { background-color: var(--bs-pink-500) !important; }
.bg-pink-600 { background-color: var(--bs-pink-600) !important; }
.bg-pink-700 { background-color: var(--bs-pink-700) !important; }
.bg-pink-800 { background-color: var(--bs-pink-800) !important; }
.bg-pink-900 { background-color: var(--bs-pink-900) !important; }

.bg-red-100 { background-color: var(--bs-red-100) !important; }
.bg-red-200 { background-color: var(--bs-red-200) !important; }
.bg-red-300 { background-color: var(--bs-red-300) !important; }
.bg-red-400 { background-color: var(--bs-red-400) !important; }
.bg-red-500 { background-color: var(--bs-red-500) !important; }
.bg-red-600 { background-color: var(--bs-red-600) !important; }
.bg-red-700 { background-color: var(--bs-red-700) !important; }
.bg-red-800 { background-color: var(--bs-red-800) !important; }
.bg-red-900 { background-color: var(--bs-red-900) !important; }

.bg-orange-100 { background-color: var(--bs-orange-100) !important; }
.bg-orange-200 { background-color: var(--bs-orange-200) !important; }
.bg-orange-300 { background-color: var(--bs-orange-300) !important; }
.bg-orange-400 { background-color: var(--bs-orange-400) !important; }
.bg-orange-500 { background-color: var(--bs-orange-500) !important; }
.bg-orange-600 { background-color: var(--bs-orange-600) !important; }
.bg-orange-700 { background-color: var(--bs-orange-700) !important; }
.bg-orange-800 { background-color: var(--bs-orange-800) !important; }
.bg-orange-900 { background-color: var(--bs-orange-900) !important; }

.bg-yellow-100 { background-color: var(--bs-yellow-100) !important; }
.bg-yellow-200 { background-color: var(--bs-yellow-200) !important; }
.bg-yellow-300 { background-color: var(--bs-yellow-300) !important; }
.bg-yellow-400 { background-color: var(--bs-yellow-400) !important; }
.bg-yellow-500 { background-color: var(--bs-yellow-500) !important; }
.bg-yellow-600 { background-color: var(--bs-yellow-600) !important; }
.bg-yellow-700 { background-color: var(--bs-yellow-700) !important; }
.bg-yellow-800 { background-color: var(--bs-yellow-800) !important; }
.bg-yellow-900 { background-color: var(--bs-yellow-900) !important; }

.bg-green-100 { background-color: var(--bs-green-100) !important; }
.bg-green-200 { background-color: var(--bs-green-200) !important; }
.bg-green-300 { background-color: var(--bs-green-300) !important; }
.bg-green-400 { background-color: var(--bs-green-400) !important; }
.bg-green-500 { background-color: var(--bs-green-500) !important; }
.bg-green-600 { background-color: var(--bs-green-600) !important; }
.bg-green-700 { background-color: var(--bs-green-700) !important; }
.bg-green-800 { background-color: var(--bs-green-800) !important; }
.bg-green-900 { background-color: var(--bs-green-900) !important; }

.bg-teal-100 { background-color: var(--bs-teal-100) !important; }
.bg-teal-200 { background-color: var(--bs-teal-200) !important; }
.bg-teal-300 { background-color: var(--bs-teal-300) !important; }
.bg-teal-400 { background-color: var(--bs-teal-400) !important; }
.bg-teal-500 { background-color: var(--bs-teal-500) !important; }
.bg-teal-600 { background-color: var(--bs-teal-600) !important; }
.bg-teal-700 { background-color: var(--bs-teal-700) !important; }
.bg-teal-800 { background-color: var(--bs-teal-800) !important; }
.bg-teal-900 { background-color: var(--bs-teal-900) !important; }

.bg-cyan-100 { background-color: var(--bs-cyan-100) !important; }
.bg-cyan-200 { background-color: var(--bs-cyan-200) !important; }
.bg-cyan-300 { background-color: var(--bs-cyan-300) !important; }
.bg-cyan-400 { background-color: var(--bs-cyan-400) !important; }
.bg-cyan-500 { background-color: var(--bs-cyan-500) !important; }
.bg-cyan-600 { background-color: var(--bs-cyan-600) !important; }
.bg-cyan-700 { background-color: var(--bs-cyan-700) !important; }
.bg-cyan-800 { background-color: var(--bs-cyan-800) !important; }
.bg-cyan-900 { background-color: var(--bs-cyan-900) !important; }

.bg-gray-100 { background-color: var(--bs-gray-100) !important; }
.bg-gray-200 { background-color: var(--bs-gray-200) !important; }
.bg-gray-300 { background-color: var(--bs-gray-300) !important; }
.bg-gray-400 { background-color: var(--bs-gray-400) !important; }
.bg-gray-500 { background-color: var(--bs-gray-500) !important; }
.bg-gray-600 { background-color: var(--bs-gray-600) !important; }
.bg-gray-700 { background-color: var(--bs-gray-700) !important; }
.bg-gray-800 { background-color: var(--bs-gray-800) !important; }
.bg-gray-900 { background-color: var(--bs-gray-900) !important; }

/* =========================================================
   کلاس‌های دکمه (btn-*)
   ========================================================= */
.btn-blue-100 { --bs-btn-bg: var(--bs-blue-100); --bs-btn-color: #000; --bs-btn-border-color: var(--bs-blue-200); }
.btn-blue-200 { --bs-btn-bg: var(--bs-blue-200); --bs-btn-color: #000; --bs-btn-border-color: var(--bs-blue-300); }
.btn-blue-300 { --bs-btn-bg: var(--bs-blue-300); --bs-btn-color: #000; --bs-btn-border-color: var(--bs-blue-400); }
.btn-blue-400 { --bs-btn-bg: var(--bs-blue-400); --bs-btn-color: #000; --bs-btn-border-color: var(--bs-blue-500); }
.btn-blue-500 { --bs-btn-bg: var(--bs-blue-500); --bs-btn-color: #fff; --bs-btn-border-color: var(--bs-blue-600); }
.btn-blue-600 { --bs-btn-bg: var(--bs-blue-600); --bs-btn-color: #fff; --bs-btn-border-color: var(--bs-blue-700); }
.btn-blue-700 { --bs-btn-bg: var(--bs-blue-700); --bs-btn-color: #fff; --bs-btn-border-color: var(--bs-blue-800); }
.btn-blue-800 { --bs-btn-bg: var(--bs-blue-800); --bs-btn-color: #fff; --bs-btn-border-color: var(--bs-blue-900); }
.btn-blue-900 { --bs-btn-bg: var(--bs-blue-900); --bs-btn-color: #fff; --bs-btn-border-color: #000; }

.btn-indigo-100 { --bs-btn-bg: var(--bs-indigo-100); --bs-btn-color: #000; --bs-btn-border-color: var(--bs-indigo-200); }
.btn-indigo-200 { --bs-btn-bg: var(--bs-indigo-200); --bs-btn-color: #000; --bs-btn-border-color: var(--bs-indigo-300); }
.btn-indigo-300 { --bs-btn-bg: var(--bs-indigo-300); --bs-btn-color: #000; --bs-btn-border-color: var(--bs-indigo-400); }
.btn-indigo-400 { --bs-btn-bg: var(--bs-indigo-400); --bs-btn-color: #fff; --bs-btn-border-color: var(--bs-indigo-500); }
.btn-indigo-500 { --bs-btn-bg: var(--bs-indigo-500); --bs-btn-color: #fff; --bs-btn-border-color: var(--bs-indigo-600); }
.btn-indigo-600 { --bs-btn-bg: var(--bs-indigo-600); --bs-btn-color: #fff; --bs-btn-border-color: var(--bs-indigo-700); }
.btn-indigo-700 { --bs-btn-bg: var(--bs-indigo-700); --bs-btn-color: #fff; --bs-btn-border-color: var(--bs-indigo-800); }
.btn-indigo-800 { --bs-btn-bg: var(--bs-indigo-800); --bs-btn-color: #fff; --bs-btn-border-color: var(--bs-indigo-900); }
.btn-indigo-900 { --bs-btn-bg: var(--bs-indigo-900); --bs-btn-color: #fff; --bs-btn-border-color: #000; }

/* سایر رنگ‌ها برای دکمه (الگوی مشابه) */
.btn-purple-500 { --bs-btn-bg: var(--bs-purple-500); --bs-btn-color: #fff; --bs-btn-border-color: var(--bs-purple-600); }
.btn-pink-500   { --bs-btn-bg: var(--bs-pink-500);   --bs-btn-color: #fff; --bs-btn-border-color: var(--bs-pink-600); }
.btn-red-500    { --bs-btn-bg: var(--bs-red-500);    --bs-btn-color: #fff; --bs-btn-border-color: var(--bs-red-600); }
.btn-orange-500 { --bs-btn-bg: var(--bs-orange-500); --bs-btn-color: #fff; --bs-btn-border-color: var(--bs-orange-600); }
.btn-yellow-500 { --bs-btn-bg: var(--bs-yellow-500); --bs-btn-color: #000; --bs-btn-border-color: var(--bs-yellow-600); }
.btn-teal-500   { --bs-btn-bg: var(--bs-teal-500);   --bs-btn-color: #fff; --bs-btn-border-color: var(--bs-teal-600); }
.btn-cyan-500   { --bs-btn-bg: var(--bs-cyan-500);   --bs-btn-color: #fff; --bs-btn-border-color: var(--bs-cyan-600); }
.btn-gray-500   { --bs-btn-bg: var(--bs-gray-500);   --bs-btn-color: #fff; --bs-btn-border-color: var(--bs-gray-600); }

/* نسخه‌های روشن/تاریک (مثال برای orange) */
.btn-orange-100 { --bs-btn-bg: var(--bs-orange-100); --bs-btn-color: #000; --bs-btn-border-color: var(--bs-orange-200); }
.btn-orange-900 { --bs-btn-bg: var(--bs-orange-900); --bs-btn-color: #fff; --bs-btn-border-color: #000; }

/* =========================================================
   حاشیه (border-*)
   ========================================================= */
.border-blue-100 { border-color: var(--bs-blue-100) !important; }
.border-blue-500 { border-color: var(--bs-blue-500) !important; }
.border-blue-900 { border-color: var(--bs-blue-900) !important; }

.border-indigo-500 { border-color: var(--bs-indigo-500) !important; }
.border-purple-500 { border-color: var(--bs-purple-500) !important; }
.border-pink-500   { border-color: var(--bs-pink-500)   !important; }
.border-red-500    { border-color: var(--bs-red-500)    !important; }
.border-orange-500 { border-color: var(--bs-orange-500) !important; }
.border-yellow-500 { border-color: var(--bs-yellow-500) !important; }
.border-teal-500   { border-color: var(--bs-teal-500)   !important; }
.border-cyan-500   { border-color: var(--bs-cyan-500)   !important; }
.border-gray-500   { border-color: var(--bs-gray-500)   !important; }