@tailwind base; @tailwind components; @tailwind utilities; :root { color-scheme: light; --font-vazirmatn: Vazirmatn, Tahoma, sans-serif; --color-bg: #eef4fb; --color-bg-soft: #f8fafc; --color-surface: rgba(255, 255, 255, 0.78); --color-surface-strong: rgba(255, 255, 255, 0.92); --color-card: rgba(255, 255, 255, 0.72); --color-elevated: rgba(255, 255, 255, 0.9); --color-text: #0f172a; --color-text-secondary: #475569; --color-text-muted: #64748b; --color-border: rgba(148, 163, 184, 0.34); --color-divider: rgba(148, 163, 184, 0.24); --color-accent: #0891b2; --color-accent-hover: #0e7490; --color-info: #0284c7; --color-success: #059669; --color-warning: #d97706; --color-danger: #e11d48; --color-disabled-bg: rgba(148, 163, 184, 0.22); --color-disabled-text: #94a3b8; --color-input-bg: rgba(255, 255, 255, 0.86); --color-input-border: rgba(148, 163, 184, 0.42); --color-table-header: rgba(226, 232, 240, 0.7); --color-table-row-hover: rgba(14, 165, 233, 0.1); --color-selected: rgba(14, 165, 233, 0.16); --color-focus-ring: rgba(14, 165, 233, 0.32); --color-overlay: rgba(15, 23, 42, 0.28); --shadow-soft: 0 18px 54px rgba(15, 23, 42, 0.14); --shadow-elevated: 0 28px 90px rgba(15, 23, 42, 0.18); --glass-opacity: 0.72; --glass-light-alpha-strong: calc(0.34 + (var(--glass-opacity) * 0.38)); --glass-light-alpha-soft: calc(0.18 + (var(--glass-opacity) * 0.2)); --glass-dark-alpha-strong: calc(var(--glass-opacity) * 0.86); --glass-dark-alpha-soft: calc(var(--glass-opacity) * 0.42); } .dark { color-scheme: dark; --color-bg: #07111f; --color-bg-soft: #0f172a; --color-surface: rgba(15, 23, 42, 0.78); --color-surface-strong: rgba(15, 23, 42, 0.92); --color-card: rgba(30, 41, 59, 0.66); --color-elevated: rgba(15, 23, 42, 0.9); --color-text: #f8fafc; --color-text-secondary: #cbd5e1; --color-text-muted: #94a3b8; --color-border: rgba(226, 232, 240, 0.16); --color-divider: rgba(226, 232, 240, 0.12); --color-accent: #22d3ee; --color-accent-hover: #67e8f9; --color-info: #38bdf8; --color-success: #34d399; --color-warning: #fbbf24; --color-danger: #fb7185; --color-disabled-bg: rgba(71, 85, 105, 0.42); --color-disabled-text: #64748b; --color-input-bg: rgba(15, 23, 42, 0.84); --color-input-border: rgba(226, 232, 240, 0.18); --color-table-header: rgba(30, 41, 59, 0.82); --color-table-row-hover: rgba(34, 211, 238, 0.1); --color-selected: rgba(34, 211, 238, 0.16); --color-focus-ring: rgba(34, 211, 238, 0.32); --color-overlay: rgba(2, 6, 23, 0.58); --shadow-soft: 0 22px 70px rgba(0, 0, 0, 0.36); --shadow-elevated: 0 30px 100px rgba(0, 0, 0, 0.48); } * { box-sizing: border-box; } html, body { min-height: 100%; margin: 0; direction: rtl; } body { overflow: hidden; font-family: var(--font-vazirmatn); color: var(--color-text); background: var(--color-bg); } button, input, textarea, select { font: inherit; } select { direction: rtl; min-height: 2.5rem; color: var(--color-text); background-color: var(--color-input-bg) !important; border: 1px solid var(--color-input-border); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.35), 0 10px 30px rgba(15, 23, 42, 0.08); backdrop-filter: blur(18px) saturate(1.25); -webkit-backdrop-filter: blur(18px) saturate(1.25); } select:not([multiple]) { appearance: none; -webkit-appearance: none; padding-inline-start: 2.5rem !important; padding-inline-end: 0.85rem !important; background-image: linear-gradient(45deg, transparent 50%, currentColor 50%), linear-gradient(135deg, currentColor 50%, transparent 50%); background-position: 1.15rem calc(50% - 0.12rem), 0.85rem calc(50% - 0.12rem); background-size: 0.38rem 0.38rem, 0.38rem 0.38rem; background-repeat: no-repeat; } select:focus { border-color: var(--color-accent); box-shadow: 0 0 0 3px var(--color-focus-ring), inset 0 1px 0 rgba(255, 255, 255, 0.4); } select option, select optgroup { color: rgb(15 23 42); background-color: rgb(248 250 252); } select option:checked { background-color: rgb(224 242 254); } .dark select { color: rgb(248 250 252); background-color: rgba(15, 23, 42, 0.82) !important; border-color: rgba(255, 255, 255, 0.18); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 14px 40px rgba(0, 0, 0, 0.22); } .dark select option, .dark select optgroup { color: rgb(248 250 252); background-color: rgb(15 23 42); } .dark select option:checked { background-color: rgb(30 41 59); } .liquid-glass { border: 1px solid var(--color-border); background: linear-gradient(135deg, rgba(255, 255, 255, var(--glass-light-alpha-strong)), rgba(226, 238, 249, var(--glass-light-alpha-soft))), linear-gradient(180deg, rgba(255, 255, 255, 0.18), rgba(148, 163, 184, 0.08)); box-shadow: 0 24px 80px rgba(15, 23, 42, 0.14), 0 2px 16px rgba(15, 23, 42, 0.08), inset 0 1px 0 rgba(255, 255, 255, 0.62); backdrop-filter: blur(var(--glass-blur, 26px)) saturate(1.35); -webkit-backdrop-filter: blur(var(--glass-blur, 26px)) saturate(1.35); } .dark .liquid-glass { border-color: var(--color-border); background: linear-gradient(135deg, rgba(16, 24, 39, var(--glass-dark-alpha-strong)), rgba(16, 24, 39, var(--glass-dark-alpha-soft))); box-shadow: 0 24px 90px rgba(0, 0, 0, 0.45), inset 0 1px 0 rgba(255, 255, 255, 0.12); } .ui-surface { border: 1px solid var(--color-border); background: var(--color-surface); color: var(--color-text); box-shadow: var(--shadow-soft); backdrop-filter: blur(22px) saturate(1.24); -webkit-backdrop-filter: blur(22px) saturate(1.24); } .ui-card { border: 1px solid var(--color-border); background: var(--color-card); color: var(--color-text); } .ui-elevated { border: 1px solid var(--color-border); background: var(--color-elevated); color: var(--color-text); box-shadow: var(--shadow-elevated); backdrop-filter: blur(24px) saturate(1.26); -webkit-backdrop-filter: blur(24px) saturate(1.26); } .ui-muted { color: var(--color-text-muted); } .ui-secondary { color: var(--color-text-secondary); } .ui-input { border: 1px solid var(--color-input-border); background: var(--color-input-bg); color: var(--color-text); } .ui-input::placeholder { color: var(--color-text-muted); } .ui-focus { outline: none; box-shadow: 0 0 0 3px var(--color-focus-ring); } .mac-scrollbar { scrollbar-width: thin; scrollbar-color: rgba(148, 163, 184, 0.8) transparent; } .mac-scrollbar::-webkit-scrollbar { width: 8px; } .mac-scrollbar::-webkit-scrollbar-thumb { border-radius: 99px; background: rgba(148, 163, 184, 0.7); } .persian-digits { font-feature-settings: "ss01"; } .modern-range { --range-value: 72%; appearance: none; -webkit-appearance: none; cursor: pointer; border-radius: 999px; background: transparent; direction: ltr; } .modern-range::-webkit-slider-runnable-track { height: 7px; border-radius: 999px; border: 1px solid rgba(255, 255, 255, 0.36); background: linear-gradient(90deg, rgb(14 165 233) 0 var(--range-value), rgba(255, 255, 255, 0.36) var(--range-value) 100%); box-shadow: inset 0 1px 2px rgba(15, 23, 42, 0.14), 0 5px 16px rgba(14, 165, 233, 0.12); } .modern-range::-webkit-slider-thumb { -webkit-appearance: none; height: 14px; width: 14px; margin-top: -4.5px; border-radius: 999px; border: 2px solid rgba(255, 255, 255, 0.94); background: linear-gradient(135deg, #ffffff, #dff7ff); box-shadow: 0 5px 14px rgba(15, 23, 42, 0.2), 0 0 0 1px rgba(14, 165, 233, 0.18); } .modern-range::-moz-range-track { height: 7px; border-radius: 999px; border: 1px solid rgba(255, 255, 255, 0.42); background: rgba(255, 255, 255, 0.36); } .modern-range::-moz-range-progress { height: 7px; border-radius: 999px; background: rgb(14 165 233); } .modern-range::-moz-range-thumb { height: 12px; width: 12px; border-radius: 999px; border: 2px solid rgba(255, 255, 255, 0.92); background: linear-gradient(135deg, #ffffff, #dff7ff); box-shadow: 0 5px 14px rgba(15, 23, 42, 0.2); }