/* masarX Custom Styles */ @import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&family=Outfit:wght@600;700&display=swap'); :root { --primary-dark: #1A1A1D; --accent-orange: #FF922B; --soft-cloud: #F8F9FA; --slate-blue: #4D96FF; --glass-bg: rgba(255, 255, 255, 0.1); } body { font-family: 'Inter', sans-serif; background-color: var(--soft-cloud); color: var(--primary-dark); } h1, h2, h3, h4, h5, h6 { font-family: 'Outfit', sans-serif; font-weight: 700; } .hero-section { background: linear-gradient(135deg, var(--primary-dark) 0%, #2D2D30 100%); padding: 100px 0; color: white; position: relative; overflow: hidden; } .hero-section::before { content: ''; position: absolute; top: -50px; right: -50px; width: 200px; height: 200px; background: var(--accent-orange); filter: blur(80px); opacity: 0.2; } .glass-card { background: rgba(255, 255, 255, 0.05); backdrop-filter: blur(15px); -webkit-backdrop-filter: blur(15px); border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 20px; padding: 30px; } .btn-masarx-primary { background-color: var(--accent-orange); color: white; border: none; padding: 12px 30px; border-radius: 12px; font-weight: 600; transition: all 0.3s ease; } .btn-masarx-primary:hover { background-color: #E87E1B; transform: translateY(-2px); color: white; } .tracking-input { background: rgba(255, 255, 255, 0.1); border: 1px solid rgba(255, 255, 255, 0.2); color: white; border-radius: 12px 0 0 12px; padding: 15px 20px; } .tracking-input:focus { background: rgba(255, 255, 255, 0.15); border-color: var(--accent-orange); box-shadow: none; color: white; } .feature-icon { width: 60px; height: 60px; background: var(--accent-orange); border-radius: 15px; display: flex; align-items: center; justify-content: center; margin-bottom: 20px; color: white; font-size: 24px; } .parcel-status-badge { padding: 8px 16px; border-radius: 50px; font-size: 14px; font-weight: 600; } .status-pending { background: #FFE8CC; color: #D9480F; } .status-picked_up { background: #E3FAFC; color: #0B7285; } .status-in_transit { background: #E7F5FF; color: #1864AB; } .status-delivered { background: #EBFBEE; color: #2B8A3E; } /* Chat Widget */ #masar-chat-widget { position: fixed; bottom: 90px; right: 20px; width: 350px; height: 500px; z-index: 9999; display: flex; flex-direction: column; } #masar-chat-toggle { position: fixed; bottom: 20px; right: 20px; width: 60px; height: 60px; border-radius: 50%; z-index: 9999; box-shadow: 0 4px 12px rgba(0,0,0,0.15); background-color: var(--accent-orange); color: white; border: none; transition: transform 0.2s; } #masar-chat-toggle:hover { transform: scale(1.05); } /* RTL Support */ [dir="rtl"] #masar-chat-widget { right: auto; left: 20px; } [dir="rtl"] #masar-chat-toggle { right: auto; left: 20px; } .typing-dots span { display: inline-block; width: 8px; height: 8px; background-color: #adb5bd; border-radius: 50%; margin: 0 2px; animation: typing 1s infinite; } .typing-dots span:nth-child(2) { animation-delay: 0.2s; } .typing-dots span:nth-child(3) { animation-delay: 0.4s; } @keyframes typing { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-5px); } } /* --- Admin Panel Customizations --- */ /* Fix: Prevent accidental file dialog open when clicking labels for logos/favicons */ body.model-platformprofile label[for="id_logo"], body.model-platformprofile label[for="id_favicon"], body.model-platformprofile label[for="id_admin_panel_logo"] { pointer-events: none; cursor: default; } /* Improve Admin Form Spacing */ .form-row { padding: 15px 10px; border-bottom: 1px solid #f0f0f0; } /* --- Fix Admin Search Box & Filter Layout --- */ /* Target the search form container in Jazzmin/AdminLTE */ #changelist-search .input-group { display: flex !important; flex-wrap: nowrap !important; max-width: 300px !important; } /* Make the input field take available space */ #changelist-search input[type="text"] { flex-grow: 1 !important; width: auto !important; } /* Ensure the button stays inline */ #changelist-search button[type="submit"], #changelist-search .btn { white-space: nowrap !important; } /* Force filters to sit nicely in a row */ .filter-wrapper .form-group, .filter-wrapper select, .filter-wrapper .select2-container { margin-bottom: 0 !important; display: inline-block !important; width: auto !important; } /* Fix for Date Range Inputs if they appear */ .admindatefilter .controls { display: inline-flex !important; align-items: center !important; } /* --- Search Box RTL/LTR Border Radius Handling --- */ /* LTR (Default) */ .masar-search-input { border-top-right-radius: 0; border-bottom-right-radius: 0; } .masar-search-btn { border-top-left-radius: 0; border-bottom-left-radius: 0; } /* RTL Override */ [dir="rtl"] .masar-search-input { border-top-right-radius: 0.25rem; border-bottom-right-radius: 0.25rem; border-top-left-radius: 0; border-bottom-left-radius: 0; } [dir="rtl"] .masar-search-btn { border-top-left-radius: 0.25rem; border-bottom-left-radius: 0.25rem; border-top-right-radius: 0; border-bottom-right-radius: 0; } /* --- Admin Panel RTL Sidebar Override (Force Right Side) --- */ @media (min-width: 992px) { [dir="rtl"] .main-sidebar { left: auto !important; right: 0 !important; } [dir="rtl"] .content-wrapper, [dir="rtl"] .main-header, [dir="rtl"] .main-footer { margin-left: 0 !important; margin-right: 250px !important; } /* Collapsed State */ [dir="rtl"].sidebar-collapse .content-wrapper, [dir="rtl"].sidebar-collapse .main-header, [dir="rtl"].sidebar-collapse .main-footer { margin-right: 4.6rem !important; margin-left: 0 !important; } /* Fix Brand Logo Area */ [dir="rtl"] .brand-link { float: right; } } /* Mobile Sidebar Fix for RTL */ @media (max-width: 991.98px) { /* Usually Jazzmin handles mobile via overlay, checking if we need to flip slide direction */ /* For now, ensuring sidebar stays hidden off-screen properly might be needed */ [dir="rtl"] .main-sidebar { box-shadow: -3px 0 8px rgba(0,0,0,0.125); } } /* RTL Icon Spacing in Sidebar */ [dir="rtl"] .nav-sidebar .nav-icon { margin-left: .2rem !important; margin-right: 0 !important; }