:root { --primary: #0f172a; --primary-light: #1e293b; --accent: #3b82f6; --bg: #f8fafc; --surface: #ffffff; --text: #334155; --text-muted: #64748b; --border: #e2e8f0; --radius: 4px; --sidebar-width: 250px; } body { font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; background-color: var(--bg); color: var(--text); margin: 0; overflow-x: hidden; } [dir="rtl"] { font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; } /* Sidebar */ .sidebar { width: var(--sidebar-width); height: 100vh; background-color: var(--primary); color: white; position: fixed; top: 0; transition: all 0.3s; z-index: 1000; } [dir="ltr"] .sidebar { left: 0; } [dir="rtl"] .sidebar { right: 0; } .sidebar-header { padding: 1.5rem; font-size: 1.25rem; font-weight: 700; border-bottom: 1px solid var(--primary-light); } .nav-link { color: #cbd5e1; padding: 0.75rem 1.5rem; display: flex; align-items: center; text-decoration: none; transition: background 0.2s; } .nav-link:hover, .nav-link.active { background-color: var(--primary-light); color: white; } .nav-link i { width: 20px; margin-right: 10px; } .nav-section-title { font-size: 0.7rem; font-weight: 600; color: #64748b !important; letter-spacing: 0.05em; } [dir="rtl"] .nav-link i { margin-right: 0; margin-left: 10px; } /* Main Content */ .main-content { margin-left: var(--sidebar-width); padding: 2rem; transition: all 0.3s; } [dir="rtl"] .main-content { margin-left: 0; margin-right: var(--sidebar-width); } .topbar { background: var(--surface); border-bottom: 1px solid var(--border); padding: 1rem 2rem; margin: -2rem -2rem 2rem -2rem; display: flex; justify-content: space-between; align-items: center; } /* UI Components */ .card { background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); box-shadow: 0 1px 2px rgba(0,0,0,0.05); } .btn-primary { background-color: var(--accent); border: none; border-radius: var(--radius); } .table { color: var(--text); } .table th { font-weight: 600; color: var(--text-muted); text-transform: uppercase; font-size: 0.75rem; letter-spacing: 0.05em; border-bottom: 2px solid var(--border); } /* RTL Adjustments */ [dir="rtl"] .ms-auto { margin-right: auto !important; margin-left: 0 !important; } [dir="rtl"] .text-end { text-align: left !important; } [dir="rtl"] .text-start { text-align: right !important; }