/* Consolidated CSS from user with minor layout tweaks */
body { margin:0; font-family: Arial, sans-serif; background:#f5f6fa; }
.sidebar { width:180px; background:#414245; color:#fcfcfc; position:fixed; top:0; bottom:0; left:0; overflow-y:auto; }
.sidebar a { text-decoration:none; color:inherit; display:block; }
.sidebar-header { padding:20px; display:flex; align-items:center; gap:10px; background:#414245; position:sticky; top:0; z-index:10; }
.sidebar-header h2 { font-size:1.2rem; font-weight:400; color:#ffffff; }
.sidebar-menu { padding:15px 0; }
.sidebar-item { padding:12px 20px; display:flex; align-items:center; gap:12px; cursor:pointer; transition:all .2s; border-left:4px solid transparent; font-size:14px; color:#fcfafa; }
.sidebar-item:hover { background:rgba(255,255,255,0.08); color:#fff; }
.sidebar-item.active { background:rgba(67,97,238,0.15); border-left-color:#2563eb; color:#fcfafa; }
.sidebar-item i { width:20px; text-align:center; font-size:16px; }
.sidebar-item:hover i { color:#60a5fa; }
.sidebar-item.active i { color:#2563eb; }
.content { margin-left:200px; display:flex; flex-direction:column; height:100vh; width:calc(100% - 200px); }
.topbar { background:#414245; padding:8px 20px; display:flex; justify-content:space-between; align-items:center; color:#fff; height:50px; flex-shrink:0; box-shadow:0 2px 5px rgba(0,0,0,0.2); position:sticky; top:0; z-index:1000; }
.topbar-left { font-size:16px; font-weight:bold; }
.topbar-right { display:flex; align-items:center; gap:20px; }
.icon-btn { position:relative; font-size:18px; cursor:pointer; }
.icon-btn i { color:#fff; }
.user-info { display:flex; align-items:center; cursor:pointer; }
.user-avatar { width:32px; height:32px; border-radius:50%; margin-right:8px; background:#60a5fa; display:flex; align-items:center; justify-content:center; color:#fff; font-weight:bold; }
.username { font-size:14px; font-weight:500; }
.main { margin-left:210px; margin-top:10px; padding:10px; font-size:13px; }
.welcome { margin:13px 0 15px 0; font-size:18px; }
.grid { display:grid; gap:12px; margin-bottom:12px; }
.grid-cols-4 { grid-template-columns: repeat(4, 1fr); }
.grid-cols-3 { grid-template-columns: repeat(3, 1fr); }
.grid-cols-1 { grid-template-columns: 1fr; }
.card, .card-colored { background:#fff; border-radius:8px; padding:10px; box-shadow:0 1px 3px rgba(0,0,0,0.1); font-size:13px; }
.card h4 { margin:0 0 8px 0; font-size:13px; }
/*.status-box { background:#f9fafb; border:1px solid #e5e7eb; border-radius:8px; padding:10px; max-width:850px; margin:auto; box-shadow:0 2px 4px rgba(0,0,0,0.05); }
.status-grid { display:grid; grid-template-columns:repeat(4, 1fr); gap:8px; }
.status-card { display:flex; align-items:center; justify-content:center; background:#fff; border-radius:6px; padding:6px 10px; font-size:11px; font-weight:bold; color:#fff; box-shadow:0 1px 2px rgba(0,0,0,0.08); min-width:120px; max-width:140px; margin:auto; }
.status-card span { margin-right:5px; font-size:14px; }
.green { background:#4ade80; } .blue { background:#60a5fa; } .pink { background:#f472b6; } .yellow { background:#facc15; } .red { background:#ef4444; } .gray { background:#9ca3af; }
.small-row { margin-top:10px; }
.small-card { height:200px; padding:8px; } .small-card canvas { height:140px !important; }*/
#campaignTable { font-size:13px; border-collapse:collapse; width:100%; }
#campaignTable th, #campaignTable td { padding:8px; text-align:center; }
.switch { position:relative; display:inline-block; width:40px; height:20px; }
.switch input { display:none; }
.slider { position:absolute; cursor:pointer; top:0; left:0; right:0; bottom:0; background-color:#ccc; transition:.4s; border-radius:20px; }
.slider:before { position:absolute; content:""; height:14px; width:14px; left:3px; bottom:3px; background-color:white; transition:.4s; border-radius:50%; }
input:checked + .slider { background-color:#4ade80; }
input:checked + .slider:before { transform:translateX(20px); }
#campaignTable { border-collapse:collapse; width:100%; font-size:13px; }
#campaignTable thead { background:#2563eb; color:#fff; }
#campaignTable th, #campaignTable td { padding:10px 12px; text-align:center; border-bottom:1px solid #e5e7eb; }
#campaignTable tbody tr:nth-child(even) { background:#f9fafb; }
#campaignTable tbody tr:hover { background:#eef2ff; transition:.2s; }
.dataTables_wrapper { margin-top:10px; font-size:13px; }
.dataTables_length select, .dataTables_filter input { padding:5px 8px; border:1px solid #ccc; border-radius:4px; outline:none; }
.dataTables_filter input:focus { border-color:#2563eb; box-shadow:0 0 3px rgba(37,99,235,.5); }
.dataTables_wrapper .dataTables_paginate .paginate_button { padding:5px 10px; margin:2px; border:1px solid #2563eb; border-radius:4px; color:#2563eb !important; background:#fff; cursor:pointer; transition:.2s; }
.dataTables_wrapper .dataTables_paginate .paginate_button:hover { background:#2563eb; color:#fff !important; }
.dataTables_wrapper .dataTables_paginate .paginate_button.current { background:#2563eb !important; color:#fff !important; border:1px solid #2563eb; }
.dataTables_wrapper .dataTables_length, .dataTables_wrapper .dataTables_filter { margin-bottom:12px; }
.dataTables_wrapper .dataTables_length { margin-right:20px; }
@media(max-width:1200px){ .grid-cols-4{grid-template-columns:repeat(2,1fr);} .grid-cols-3{grid-template-columns:repeat(1,1fr);} }