:root{--bg-color:#f8fafc;--text-color:#1e293b;--card-bg:#fff;--border-color:#e2e8f0;--primary-color:#4f46e5;--hover-color:#f1f5f9}.dark-mode{--bg-color:#0f172a;--text-color:#f8fafc;--card-bg:#1e293b;--border-color:#334155;--primary-color:#818cf8;--hover-color:#1e293b}body{transition:background-color .3s,color .3s}.app-container.dark,.app-container.light,body{background-color:#f8fafc;background-color:var(--bg-color);color:#1e293b;color:var(--text-color)}.login-container{background-color:#f5f5f5;min-height:100vh}.login-box{background:#fff;border-radius:10px;box-shadow:0 4px 20px #0000001a;max-width:400px;padding:2.5rem;width:100%}.login-box h2{color:#333;text-align:center}.form-group,.login-box h2{margin-bottom:1.5rem}.form-group label{color:#555;display:block;font-weight:500;margin-bottom:.5rem}.form-group input{border:1px solid #ddd;border-radius:6px;font-size:1rem;padding:.8rem;transition:border-color .3s;width:100%}.form-group input:focus{border-color:#3a86ff;outline:none}.login-button{background-color:#3a86ff;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:1rem;transition:background-color .3s;width:100%}.login-button:hover{background-color:#2667d6}.error-message{border-radius:6px;font-size:.9rem;margin-top:1rem;padding:.8rem}.admin-header{box-shadow:0 2px 10px #0000001a;height:70px;left:0;padding:0 2rem;position:fixed;right:0;top:0;transition:all .3s ease;z-index:1000}.admin-header.light{background-color:#fff;border-bottom:1px solid #eaeaea;color:#333}.admin-header.dark{background-color:#1a1a2e;border-bottom:1px solid #2d2d42;color:#fff}.header-left .logo{font-size:1.5rem;font-weight:700}.header-left .logo span{color:#4f46e5}.header-right{align-items:center;display:flex;gap:1.5rem}.theme-toggle-btn{align-items:center;background:none;border:none;border-radius:50%;color:inherit;cursor:pointer;display:flex;font-size:1.2rem;height:40px;justify-content:center;transition:all .3s ease;width:40px}.theme-toggle-btn:hover{background-color:#0000001a}.admin-header.dark .theme-toggle-btn:hover{background-color:#ffffff1a}.theme-icon{transition:transform .2s ease}.theme-toggle-btn:hover .theme-icon{transform:scale(1.1)}.admin-profile{align-items:center;border-radius:50px;display:flex;gap:1rem;padding:.5rem;transition:all .3s ease}.admin-header.light .admin-profile:hover{background-color:#0000000d}.admin-header.dark .admin-profile:hover{background-color:#ffffff0d}.admin-avatar{border:2px solid #4f46e5;border-radius:50%;height:40px;object-fit:cover;width:40px}.admin-info{display:flex;flex-direction:column}.admin-name{font-size:.9rem;font-weight:600}.admin-email{font-size:.8rem;opacity:.8}.logout-btn{align-items:center;background:none;border:none;border-radius:50%;color:inherit;cursor:pointer;display:flex;justify-content:center;padding:.5rem;transition:all .3s ease}.logout-icon{font-size:1.1rem;transition:all .2s ease}.admin-header.light .logout-btn:hover{background-color:#0000001a}.admin-header.light .logout-btn:hover .logout-icon{color:#4f46e5;transform:translateX(2px)}.admin-header.dark .logout-btn:hover{background-color:#ffffff1a}.admin-header.dark .logout-btn:hover .logout-icon{color:#818cf8;transform:translateX(2px)}.sidebar{border-right:1px solid;overflow:hidden;padding:1rem 0;transition:all .3s ease;width:250px;z-index:900}.sidebar.light{background:#fff;border-right-color:#e5e7eb}.sidebar.light .nav-item{color:#374151}.sidebar.light .nav-item:hover{background:#f3f4f6}.sidebar.light .nav-item.active{background:#4f46e5;color:#fff}.sidebar.light .sidebar-toggle{background:#fff;box-shadow:0 2px 8px #0000001a;color:#6b7280}.sidebar.dark{background:#1e1e2e;border-right-color:#2d2d3d}.sidebar.dark .nav-item{color:#e5e7eb}.sidebar.dark .nav-item:hover{background:#2d2d3d}.sidebar.dark .nav-item.active{background:#818cf8;color:#fff}.sidebar.dark .sidebar-toggle{background:#2d2d3d;box-shadow:0 2px 8px #0000004d;color:#d1d5db}.sidebar-nav{display:flex;flex-direction:column;gap:4px;margin-top:2rem;padding:0 .75rem}.nav-item{align-items:center;border-radius:6px;display:flex;gap:12px;padding:.75rem 1rem;text-decoration:none;transition:all .2s ease}.nav-icon{font-size:1.25rem;text-align:center;width:24px}.sidebar.collapsed{width:100px}.sidebar.collapsed .nav-item{justify-content:center;padding:.75rem 0}.sidebar.collapsed .nav-item span{display:none}.sidebar.collapsed .nav-icon{font-size:1.4rem}.sidebar-toggle{align-items:center;border:none;border-radius:50%;cursor:pointer;display:flex;height:28px;justify-content:center;position:absolute;right:-14px;top:20px;transition:all .2s ease;width:28px;z-index:950}.sidebar-toggle:hover{transform:scale(1.1)}.sidebar:not(.collapsed) .nav-item.active:before{background:#fff;border-radius:0 3px 3px 0;content:"";height:60%;left:0;position:absolute;top:50%;transform:translateY(-50%);width:3px}.sidebar.collapsed .nav-item:hover:after{background:#fff;background:var(--card-bg,#fff);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:6px;color:#374151;color:var(--text-color,#374151);content:attr(data-tooltip);font-size:.85rem;left:calc(100% + 12px);padding:6px 12px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);white-space:nowrap;z-index:999}.dark-mode .sidebar.collapsed .nav-item:hover:after{background:#2d2d3d;border-color:#3e3e4e;color:#e5e7eb}@media (max-width:768px){.sidebar:not(.collapsed){width:100%;z-index:1000}}.dashboard-layout{display:flex;flex-direction:column;min-height:100vh}.layout-container{display:flex;flex:1 1;margin-top:70px;position:relative}.sidebar{bottom:0;left:0;position:fixed;top:70px;z-index:100}.content-area{flex:1 1;margin-left:200px;transition:margin-left .3s cubic-bezier(.4,0,.2,1)}.content-scrollable{height:calc(100vh - 70px);overflow-y:auto;padding:0}.sidebar.collapsed~.content-area{margin-left:100px}.dashboard-layout.dark{background:#121212}.dashboard-layout.dark .content-area{background:#1e1e1e;color:#e0e0e0}@media (max-width:768px){.sidebar:not(.collapsed){width:100%;z-index:1000}.sidebar:not(.collapsed)~.content-area{margin-left:0;opacity:.3;pointer-events:none}.content-scrollable{padding:15px}}.dashboard-container{display:flex;flex-direction:column;gap:24px;padding:24px;transition:background-color .3s ease,color .3s ease}.dashboard-container.light{background-color:#f8fafc;color:#1e293b}.dashboard-container.dark{background-color:#0f172a;color:#f8fafc}.dashboard-header{margin-bottom:16px}.dashboard-title{font-size:28px;font-weight:600;margin-bottom:8px;transition:color .3s ease}.dashboard-container.light .dashboard-title{color:#111827}.dashboard-container.dark .dashboard-title{color:#f8fafc}.dashboard-subtitle{font-size:16px;margin:0;transition:color .3s ease}.dashboard-container.light .dashboard-subtitle{color:#6b7280}.dashboard-container.dark .dashboard-subtitle{color:#94a3b8}.stats-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(1,1fr)}@media (min-width:768px){.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.stats-grid{grid-template-columns:repeat(4,1fr)}}.stat-card{align-items:center;border-radius:8px;display:flex;padding:20px;transition:all .3s ease}.stat-card.light{background-color:#fff;box-shadow:0 1px 3px #0000001a}.stat-card.dark{background-color:#1e293b;box-shadow:0 1px 3px #0000004d}.stat-card:hover{box-shadow:0 4px 6px #00000026;transform:translateY(-2px)}.stat-icon{align-items:center;border-radius:50%;display:flex;font-size:20px;height:48px;justify-content:center;margin-right:16px;width:48px}.users-card .stat-icon{background-color:#e0f2fe;color:#0369a1}.messages-card .stat-icon{background-color:#ede9fe;color:#7c3aed}.premium-card .stat-icon{background-color:#fef3c7;color:#d97706}.system-card .stat-icon{background-color:#dcfce7;color:#166534}.stat-content h3{font-size:14px;font-weight:500;margin:0 0 4px;transition:color .3s ease}.dashboard-container.light .stat-content h3{color:#6b7280}.dashboard-container.dark .stat-content h3{color:#94a3b8}.stat-main{font-size:24px;font-weight:600;margin-bottom:4px;transition:color .3s ease}.dashboard-container.light .stat-main{color:#111827}.dashboard-container.dark .stat-main{color:#f8fafc}.stat-change{font-size:12px;transition:color .3s ease}.dashboard-container.light .stat-change{color:#6b7280}.dashboard-container.dark .stat-change{color:#94a3b8}.change-positive{font-weight:500}.dashboard-container.light .change-positive{color:#166534}.dashboard-container.dark .change-positive{color:#4ade80}.change-negative{font-weight:500}.dashboard-container.light .change-negative{color:#b91c1c}.dashboard-container.dark .change-negative{color:#f87171}.change-neutral{font-weight:500}.dashboard-container.light .change-neutral{color:#d97706}.dashboard-container.dark .change-neutral{color:#f59e0b}.dashboard-content{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(1,1fr)}@media (min-width:768px){.dashboard-content{grid-template-columns:repeat(2,1fr)}}.chart-container{border-radius:8px;padding:20px;transition:all .3s ease}.chart-container.light{background-color:#fff;box-shadow:0 1px 3px #0000001a}.chart-container.dark{background-color:#1e293b;box-shadow:0 1px 3px #0000004d}.chart-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.chart-header h3{font-size:16px;margin:0;transition:color .3s ease}.dashboard-container.light .chart-header h3{color:#111827}.dashboard-container.dark .chart-header h3{color:#f8fafc}.chart-period{border-radius:9999px;font-size:12px;padding:4px 8px;transition:all .3s ease}.dashboard-container.light .chart-period{background-color:#f3f4f6;color:#6b7280}.dashboard-container.dark .chart-period{background-color:#334155;color:#cbd5e1}.chart-placeholder{height:200px;justify-content:space-around;padding-top:20px}.chart-mock,.chart-placeholder{align-items:flex-end;display:flex}.chart-mock{gap:8px;height:100%;width:100%}.chart-bar{border-radius:4px 4px 0 0;transition:all .5s ease;width:100%}.chart-bar.light{background-color:#3b82f6}.chart-bar.dark{background-color:#60a5fa}.activity-container{border-radius:8px;padding:20px;transition:all .3s ease}.activity-container.light{background-color:#fff;box-shadow:0 1px 3px #0000001a}.activity-container.dark{background-color:#1e293b;box-shadow:0 1px 3px #0000004d}.activity-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.activity-header h3{font-size:16px;margin:0;transition:color .3s ease}.dashboard-container.light .activity-header h3{color:#111827}.dashboard-container.dark .activity-header h3{color:#f8fafc}.activity-icon{transition:color .3s ease}.dashboard-container.light .activity-icon{color:#6b7280}.dashboard-container.dark .activity-icon{color:#94a3b8}.activity-list{display:flex;flex-direction:column;gap:16px;list-style:none;margin:0;padding:0}.activity-item{align-items:center;display:flex;padding-bottom:16px;transition:border-color .3s ease}.dashboard-container.light .activity-item{border-bottom:1px solid #f3f4f6}.dashboard-container.dark .activity-item{border-bottom:1px solid #334155}.activity-item:last-child{border-bottom:none;padding-bottom:0}.activity-dot{border-radius:50%;flex-shrink:0;height:8px;margin-right:12px;transition:background-color .3s ease;width:8px}.activity-dot.light{background-color:#3b82f6}.activity-dot.dark{background-color:#60a5fa}.activity-user{font-size:14px;font-weight:500;transition:color .3s ease}.dashboard-container.light .activity-user{color:#111827}.dashboard-container.dark .activity-user{color:#f8fafc}.activity-action{font-size:13px;transition:color .3s ease}.dashboard-container.light .activity-action{color:#6b7280}.dashboard-container.dark .activity-action{color:#94a3b8}.activity-time{font-size:12px;margin-left:12px;transition:color .3s ease}.dashboard-container.light .activity-time{color:#9ca3af}.dashboard-container.dark .activity-time{color:#64748b}.users-container{background-color:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;padding:24px;transition:background-color .3s ease,box-shadow .3s ease}.users-container.dark{background-color:#1a1a2e;box-shadow:0 1px 3px #0000004d}.users-header{display:flex;flex-direction:column;margin-bottom:16px}.users-title{color:#111827;font-size:24px;font-weight:600;margin-bottom:16px;transition:color .3s ease}.users-title.dark{color:#f8fafc}.table-container{transition:border-color .3s ease}.users-table{background-color:#fff;border-collapse:collapse;transition:background-color .3s ease;width:100%}.users-table.dark{background-color:#1e293b}.table-header{transition:background-color .3s ease}.star-icon{color:#f59e0b}.star-icon.dark{color:#fbbf24}.table-body{transition:background-color .3s ease}.table-row.dark{background-color:#1e293b}.user-cell{white-space:nowrap}.user-info{gap:12px}.user-avatar{background-color:#e5e7eb;color:#6b7280;flex-shrink:0;height:40px;transition:all .3s ease;width:40px}.user-avatar.dark{background-color:#334155;color:#94a3b8}.user-details{display:flex;flex-direction:column}.username{color:#111827;transition:color .3s ease}.username.dark{color:#f8fafc}.user-id{color:#6b7280;transition:color .3s ease}.user-id.dark{color:#94a3b8}.badge{border-radius:9999px;display:inline-block;font-size:12px;font-weight:500;padding:6px 10px;transition:all .3s ease}.badge-normal{background-color:#e5e7eb;color:#374151}.badge-normal.dark{background-color:#334155;color:#e2e8f0}.badge-premium{background-color:#ede9fe;color:#7c3aed}.badge-premium.dark{background-color:#4c1d95;color:#c4b5fd}.badge-admin{background-color:#dbeafe;color:#1d4ed8}.badge-admin.dark{background-color:#1e3a8a;color:#bfdbfe}.premium-badge{background-color:#fef3c7;border-radius:9999px;color:#d97706;display:inline-block;font-size:12px;padding:6px 10px;transition:all .3s ease}.premium-badge.dark{background-color:#78350f;color:#fcd34d}.no-premium{color:#9ca3af;font-style:italic;transition:color .3s ease}.no-premium.dark{color:#64748b}.edit-btn{background-color:#dbeafe;color:#2563eb}.edit-btn:hover{background-color:#bfdbfe}.edit-btn.dark{background-color:#2563eb1a;color:#60a5fa}.edit-btn.dark:hover{background-color:#2563eb33}@media (min-width:768px){.users-header{align-items:center;flex-direction:row;justify-content:space-between}.search-container{margin-bottom:0;width:300px}}@media (max-width:640px){.users-container{padding:16px}.table-td{padding:12px}.action-btn{height:28px;width:28px}}.loading-spinner{align-items:center;color:#666;display:flex;font-size:1.2rem;height:200px;justify-content:center}.pagination-controls{gap:1rem;margin-top:2rem;padding:1rem}.pagination-controls.dark{color:#e0e0e0}.page-btn{background-color:#3a86ff;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:.5rem 1rem}.page-btn.dark{background-color:#2667d6}.page-btn:disabled{background-color:#ccc;cursor:not-allowed}.page-btn.dark:disabled{background-color:#555}.page-info{font-weight:500}.messages-container{background-color:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;padding:24px;transition:all .3s ease}.messages-container.dark{background-color:#1e293b;box-shadow:0 1px 3px #0000004d}.messages-header{display:flex;flex-direction:column;margin-bottom:16px}@media (min-width:768px){.messages-header{align-items:center;flex-direction:row;justify-content:space-between}}.messages-title{color:#111827;font-size:24px;font-weight:600;margin-bottom:16px;transition:color .3s ease}.messages-title.dark{color:#f8fafc}.search-container{margin-bottom:16px;transition:all .3s ease;width:100%}@media (min-width:768px){.search-container{margin-bottom:0;width:300px}}.search-container.dark{background-color:#1e293b}.search-input{border:1px solid #d1d5db;border-radius:6px;padding:10px 10px 10px 36px;transition:all .3s ease}.search-input.dark{background-color:#1e293b;border-color:#334155;color:#f8fafc}.search-input:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f633;outline:none}.search-input.dark:focus{border-color:#60a5fa;box-shadow:0 0 0 2px #60a5fa4d}.search-icon{color:#6b7280;left:12px;transition:color .3s ease}.search-icon.dark{color:#94a3b8}.table-container{border:1px solid #e5e7eb;border-radius:6px;transition:all .3s ease}.table-container.dark{border-color:#334155}.messages-table{background-color:#fff;border-collapse:collapse;transition:all .3s ease;width:100%}.messages-table.dark{background-color:#1e293b}.table-header{background-color:#f9fafb;transition:all .3s ease}.table-header.dark{background-color:#1e293b}.table-th{color:#6b7280;font-size:12px;font-weight:500;letter-spacing:.05em;padding:12px 16px;text-transform:uppercase;transition:all .3s ease}.table-th.dark{background-color:#1e293b;color:#94a3b8}.table-th.sortable{cursor:pointer;transition:background-color .2s ease}.table-th.sortable:hover{background-color:#f3f4f6}.table-th.sortable.dark:hover{background-color:#334155}.th-content{align-items:center;display:flex;gap:4px}.sort-icon{font-size:12px;margin-left:4px;transition:color .3s ease}.sort-icon.dark{color:#94a3b8}.table-body{background-color:#fff;transition:all .3s ease}.table-body.dark{background-color:#1e293b}.table-row{transition:background-color .2s ease}.table-row:hover{background-color:#f9fafb}.table-row.dark:hover{background-color:#334155}.table-td{border-top:1px solid #e5e7eb;font-size:14px;padding:16px;transition:all .3s ease}.table-td.dark{border-top-color:#334155;color:#e2e8f0}.name-cell{color:#111827;font-weight:500;transition:color .3s ease}.name-cell.dark{color:#f8fafc}.email-cell{color:#4b5563;transition:color .3s ease}.email-cell.dark{color:#cbd5e1}.subject-cell{color:#4b5563;transition:color .3s ease}.subject-cell.dark{color:#cbd5e1}.date-cell{color:#4b5563;transition:color .3s ease;white-space:nowrap}.date-cell.dark{color:#cbd5e1}.actions-cell{display:flex;gap:8px;justify-content:flex-end}.action-btn{border-radius:6px;display:flex;height:32px;transition:all .3s ease;width:32px}.view-btn{background-color:#e0f2fe;color:#0369a1}.view-btn:hover{background-color:#bae6fd}.view-btn.dark{background-color:#0369a11a;color:#7dd3fc}.view-btn.dark:hover{background-color:#0369a133}.delete-btn{background-color:#fee2e2;color:#dc2626}.delete-btn:hover{background-color:#fecaca}.delete-btn.dark{background-color:#dc26261a;color:#f87171}.delete-btn.dark:hover{background-color:#dc262633}.no-results{color:#6b7280;font-size:14px;padding:40px;transition:color .3s ease}.no-results.dark{color:#94a3b8}.message-modal,.modal-content{transition:all .3s ease}.modal-content{overflow:auto}.modal-content.dark{background-color:#1e293b;color:#f8fafc}.modal-header{border-bottom:1px solid #e5e7eb;padding:16px;transition:all .3s ease}.modal-header.dark{border-bottom-color:#334155}.modal-close{color:#6b7280;transition:all .3s ease}.modal-close.dark{color:#94a3b8}.modal-close:hover{color:#111827}.modal-close.dark:hover{color:#f8fafc}.modal-body{padding:16px}.message-meta{border-bottom:1px solid #e5e7eb;margin-bottom:16px;padding-bottom:16px;transition:all .3s ease}.message-meta.dark{border-bottom-color:#334155}.message-meta p{margin:8px 0}.message-text{line-height:1.6}.modal-footer{border-top:1px solid #e5e7eb;padding:16px;transition:all .3s ease}.modal-footer.dark{border-top-color:#334155}.modal-button{background-color:#3b82f6;transition:all .3s ease}.modal-button.dark{background-color:#60a5fa}.modal-button:hover{background-color:#2563eb}.modal-button.dark:hover{background-color:#3b82f6}@media (max-width:640px){.messages-container{padding:16px}.table-td{padding:12px}.action-btn{height:28px;width:28px}}.loading{font-size:1.2rem;padding:2rem;text-align:center}.error-message{background-color:#ffebee;border-radius:4px;color:#d32f2f;margin:1rem;padding:1rem}.message-modal{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.message-modal.dark{background-color:#000000b3}.modal-content{border-radius:8px;max-height:80vh;max-width:600px;padding:2rem;width:90%}.modal-content.dark{background-color:#2d3748;color:#fff}.modal-header{margin-bottom:1rem;padding-bottom:1rem}.modal-header.dark{border-bottom:1px solid #4a5568}.modal-close{color:#666;font-size:1.5rem}.modal-close.dark{color:#a0aec0}.message-meta p{margin:.5rem 0}.message-text{background-color:#f5f5f5;border-radius:4px;margin-top:1.5rem;padding:1rem}.message-text.dark{background-color:#4a5568}.modal-footer{margin-top:1.5rem;text-align:right}.modal-button{background-color:#3a86ff;border-radius:4px;color:#fff;padding:.5rem 1rem}.modal-button.dark{background-color:#2667d6}.premium-container{min-height:100vh;padding:20px;transition:all .3s ease}.premium-container.dark{background-color:#1a1a1a;color:#e0e0e0}.premium-header{display:flex;flex-direction:column;gap:20px;margin-bottom:30px}.premium-title{color:#333;font-size:24px;font-weight:600}.dark .premium-title{color:#f0f0f0}.controls-container{align-items:center;display:flex;flex-wrap:wrap;gap:15px}.search-container{flex-grow:1;max-width:400px;position:relative}.search-input{border:1px solid #ddd;border-radius:8px;font-size:14px;padding:10px 15px 10px 35px;transition:all .3s;width:100%}.dark .search-input{background-color:#2d2d2d;border-color:#444;color:#e0e0e0}.search-icon{color:#777;left:10px;position:absolute;top:50%;transform:translateY(-50%)}.dark .search-icon{color:#aaa}.status-filter-container{display:flex;gap:8px}.status-filter{background-color:#f0f0f0;border:none;border-radius:6px;color:#555;cursor:pointer;font-size:13px;padding:8px 12px;transition:all .2s}.status-filter.active{background-color:#4a6bff;color:#fff}.dark .status-filter{background-color:#333;color:#ccc}.dark .status-filter.active{background-color:#5a7aff;color:#fff}.refresh-button{align-items:center;background:none;border:none;border-radius:50%;color:#666;cursor:pointer;display:flex;justify-content:center;padding:8px;transition:all .2s}.refresh-button:hover{background-color:#f0f0f0;color:#333}.dark .refresh-button{color:#aaa}.dark .refresh-button:hover{background-color:#333;color:#fff}.table-container{border-radius:8px;box-shadow:0 2px 10px #0000000d;margin-bottom:20px;overflow-x:auto}.dark .table-container{box-shadow:0 2px 10px #0003}.premium-table{background-color:#fff;border-collapse:collapse;width:100%}.dark .premium-table{background-color:#222}.table-header{background-color:#f8f9fa}.dark .table-header{background-color:#2d2d2d}.table-th{border-bottom:2px solid #eee;color:#444;font-weight:600;padding:12px 15px;text-align:left}.dark .table-th{border-bottom-color:#444;color:#ddd}.table-row{border-bottom:1px solid #eee;transition:background-color .2s}.dark .table-row{border-bottom-color:#444}.table-row:hover{background-color:#f9f9f9}.dark .table-row:hover{background-color:#333}.table-td{padding:12px 15px;vertical-align:middle}.user-cell{min-width:200px}.user-info{gap:10px}.user-avatar,.user-info{align-items:center;display:flex}.user-avatar{background-color:#e9ecef;border-radius:50%;color:#6c757d;height:36px;justify-content:center;width:36px}.dark .user-avatar{background-color:#333;color:#aaa}.username{color:#333;font-weight:500}.dark .username{color:#e0e0e0}.user-id{color:#777;font-size:12px}.dark .user-id{color:#aaa}.status-badge{border-radius:12px;display:inline-block;font-size:12px;font-weight:500;padding:4px 8px}.status-pending{background-color:#fff3cd;color:#856404}.status-approved{background-color:#d4edda;color:#155724}.status-rejected{background-color:#f8d7da;color:#721c24}.dark .status-pending{background-color:#3a3100;color:gold}.dark .status-approved{background-color:#1a3a1e;color:#90ee90}.dark .status-rejected{background-color:#3a1216;color:#ff7f7f}.actions-cell{white-space:nowrap}.action-btn{align-items:center;background:none;border:none;border-radius:50%;cursor:pointer;display:inline-flex;justify-content:center;margin-right:5px;padding:6px;transition:all .2s}.action-btn:hover{background-color:#f0f0f0}.dark .action-btn:hover{background-color:#333}.view-btn{color:#6c757d}.approve-btn{color:#28a745}.reject-btn{color:#dc3545}.no-results{color:#6c757d;font-style:italic;padding:30px;text-align:center}.dark .no-results{color:#aaa}.pagination-controls{align-items:center;display:flex;gap:15px;justify-content:center;margin-top:20px}.page-button{background-color:#fff;border:1px solid #ddd;border-radius:6px;cursor:pointer;padding:8px 16px;transition:all .2s}.page-button:disabled{cursor:not-allowed;opacity:.5}.page-button:hover:not(:disabled){background-color:#f0f0f0}.dark .page-button{background-color:#2d2d2d;border-color:#444;color:#e0e0e0}.dark .page-button:hover:not(:disabled){background-color:#333}.page-info{font-size:14px}.dark .page-info{color:#ccc}.request-modal{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.modal-content{background-color:#fff;border-radius:10px;box-shadow:0 5px 20px #0003;max-height:90vh;max-width:700px;overflow-y:auto;width:100%}.dark .modal-content{background-color:#2d2d2d}.modal-header{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding:20px}.dark .modal-header{border-bottom-color:#444}.modal-close{background:none;border:none;color:#777;cursor:pointer;font-size:24px;transition:color .2s}.dark .modal-close{color:#aaa}.modal-close:hover{color:#333}.dark .modal-close:hover{color:#fff}.modal-body{padding:20px}.request-meta{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));margin-bottom:20px}.meta-row{display:flex;gap:10px}.meta-label{color:#555;font-weight:600;min-width:80px}.dark .meta-label{color:#bbb}.meta-value{color:#333}.dark .meta-value{color:#e0e0e0}.proof-section{margin-top:20px}.proof-section h4{color:#444;margin-bottom:10px}.dark .proof-section h4{color:#ddd}.proof-image-container{align-items:center;border:1px dashed #ddd;border-radius:8px;display:flex;justify-content:center;min-height:200px;padding:15px}.dark .proof-image-container{background-color:#252525;border-color:#555}.proof-thumbnail{align-items:center;color:#666;cursor:pointer;display:flex;flex-direction:column;gap:10px;text-align:center}.dark .proof-thumbnail{color:#aaa}.thumbnail-icon{font-size:40px;opacity:.7}.proof-image{border-radius:4px;cursor:zoom-out;max-height:400px;max-width:100%}.modal-footer{border-top:1px solid #eee;display:flex;gap:10px;justify-content:flex-end;padding:15px 20px}.dark .modal-footer{border-top-color:#444}.modal-button{border:none;border-radius:6px;cursor:pointer;font-weight:500;padding:8px 16px;transition:all .2s}.close-button{background-color:#f0f0f0;color:#333}.dark .close-button{background-color:#3a3a3a;color:#e0e0e0}.approve-button{background-color:#28a745;color:#fff}.reject-button{background-color:#dc3545;color:#fff}.loading{align-items:center;color:#666;display:flex;height:200px;justify-content:center}.dark .loading{color:#aaa}.error-message{color:#dc3545;margin-bottom:15px;text-align:center}.retry-button{background-color:#4a6bff;border:none;border-radius:6px;color:#fff;cursor:pointer;display:block;margin:0 auto;padding:8px 16px}.dark .retry-button{background-color:#5a7aff}@media (max-width:768px){.controls-container{align-items:stretch;flex-direction:column}.search-container{max-width:100%}.status-filter-container{justify-content:center}.table-td{padding:8px 10px}.request-meta{grid-template-columns:1fr}}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Arial,sans-serif}.login-container{align-items:center;background:#f5f5f5;display:flex;height:100vh;justify-content:center}.login-container form{background:#fff;border-radius:8px;box-shadow:0 0 10px #0000001a;max-width:400px;padding:2rem;width:100%}.login-container input{border:1px solid #ddd;border-radius:4px;margin:10px 0;padding:10px;width:100%}.login-container button{background:#333;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:10px;width:100%}.dashboard{display:flex;flex-direction:column;height:100vh}.admin-header{align-items:center;background:#333;color:#fff;display:flex;justify-content:space-between;padding:1rem}.dashboard-content{display:flex;flex:1 1}.sidebar{background:#f0f0f0;padding:1rem;width:200px}.sidebar nav{display:flex;flex-direction:column;gap:10px}.sidebar a{color:#333;padding:8px;text-decoration:none}.sidebar a.active{background:#ddd;border-radius:4px}main{flex:1 1;overflow-y:auto;padding:1rem}.notification-sender{margin:0 auto;max-width:1000px;padding:20px}.notification-sender.dark{background-color:#1a1a1a;color:#f0f0f0}.page-title{align-items:center;color:#333;display:flex;margin-bottom:25px}.page-title.dark{color:#f0f0f0}.title-icon{margin-right:10px}.alert{align-items:center;border-radius:5px;display:flex;margin-bottom:20px;padding:12px 15px}.alert.error{background-color:#ffebee;color:#c62828}.alert.error.dark{background-color:#3a1e1e;color:#ff8a80}.alert.success{background-color:#e8f5e9;color:#2e7d32}.alert.success.dark{background-color:#1e3a21;color:#69f0ae}.alert svg{margin-right:8px}.notification-container{display:flex;flex-direction:column;gap:30px}.notification-form{background:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;padding:25px}.notification-form.dark{background:#2d2d2d;box-shadow:0 2px 10px #0000004d}.form-group{margin-bottom:20px}.form-label{color:#555;display:block;font-weight:500;margin-bottom:8px}.form-label.dark{color:#ccc}.form-input,.form-textarea{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:10px 12px;width:100%}.form-input.dark,.form-textarea.dark{background:#3d3d3d;border-color:#555;color:#f0f0f0}.form-textarea{min-height:80px;resize:vertical}.form-hint{color:#666;display:block;font-size:12px;margin-top:5px}.form-hint.dark{color:#999}.radio-group{display:flex;gap:20px;margin-top:10px}.radio-label{align-items:center;cursor:pointer;display:flex;gap:8px}.radio-label.dark{color:#ccc}.user-selector{border:1px solid #eee;border-radius:5px;margin-top:20px;max-height:300px;overflow-y:auto;padding:15px}.user-selector.dark{border-color:#444}.user-selector-header{align-items:center;display:flex;font-weight:500;gap:10px;margin-bottom:15px}.selector-icon{color:#555}.user-list{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.user-item{background:#f9f9f9;border-radius:4px;padding:8px 10px}.user-item.dark{background:#3a3a3a}.user-label{align-items:center;cursor:pointer;display:flex;gap:8px}.user-label.dark{color:#ddd}.form-actions{display:flex;gap:15px;justify-content:flex-end;margin-top:25px}.preview-btn,.submit-btn{border:none;border-radius:5px;cursor:pointer;font-weight:500;padding:10px 20px;transition:all .2s}.preview-btn{background:#e0e0e0;color:#333}.preview-btn.dark{background:#4a4a4a;color:#ddd}.preview-btn:hover{background:#d0d0d0}.preview-btn.dark:hover{background:#5a5a5a}.submit-btn{background:#2196f3;color:#fff}.submit-btn.dark,.submit-btn:hover{background:#1976d2}.submit-btn:disabled{background:#90caf9;cursor:not-allowed}.submit-btn.dark:disabled{background:#0d47a1}.notification-preview{background:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;margin-top:20px;padding:20px}.notification-preview.dark{background:#2d2d2d;box-shadow:0 2px 10px #0000004d}.notification-preview h3{color:#333;margin-bottom:15px}.notification-preview.dark h3{color:#f0f0f0}.preview-content{border:1px solid #eee;border-radius:5px;padding:15px}.preview-content.dark{border-color:#444}.preview-title{font-size:16px;font-weight:700;margin-bottom:10px}.preview-body{line-height:1.5;margin-bottom:15px}.preview-data{border-top:1px dashed #ddd;margin-top:15px;padding-top:15px}.preview-data.dark{border-top-color:#555}.preview-data pre{background:#f5f5f5;border-radius:4px;font-size:13px;overflow-x:auto;padding:10px}.preview-data.dark pre{background:#3a3a3a;color:#f0f0f0}