body {

background:#0f172a;
color:#e5e7eb;

font-family:
Inter,
Segoe UI,
sans-serif;

margin:0;
padding:0;

}

.topbar {

display:flex;
justify-content:space-between;
align-items:center;

padding:25px 40px;

background:#111827;

border-bottom:1px solid #1f2937;

}

.topbar h1 {

margin:0;
font-size:32px;
color:white;

}

.subtitle {

margin-top:5px;
color:#9ca3af;

}

.topbar-right {

display:flex;
align-items:center;
gap:15px;

}

.status-pill {

background:#1d4ed8;
padding:10px 16px;
border-radius:999px;
font-weight:bold;
color:white;

}

.logout-btn {

background:#dc2626;
color:white;

padding:10px 16px;

border-radius:8px;

text-decoration:none;

font-weight:bold;

}

.dashboard-grid {

display:grid;

grid-template-columns:
repeat(auto-fit, minmax(400px, 1fr));

gap:20px;

padding:30px;

}

.full-width {

grid-column:1 / -1;

}

.card {

background:#111827;

border:1px solid #1f2937;

border-radius:14px;

padding:24px;

box-shadow:
0 10px 25px rgba(0,0,0,0.35);

}

.card h2 {

margin-top:0;
margin-bottom:20px;

font-size:22px;

color:white;

}

label {

display:block;

margin-top:15px;
margin-bottom:8px;

font-weight:bold;

}

input {

width:100%;

padding:12px;

border-radius:8px;

border:1px solid #374151;

background:#0f172a;

color:white;

box-sizing:border-box;

}

button {

margin-top:18px;

padding:12px 18px;

border:none;

border-radius:8px;

font-weight:bold;

cursor:pointer;

transition:0.2s;

}

button:hover {

opacity:0.9;

transform:translateY(-1px);

}

.green-btn {

background:#16a34a;
color:white;

}

.blue-btn {

background:#2563eb;
color:white;

}

.purple-btn {

background:#9333ea;
color:white;

}

.orange-btn {

background:#f59e0b;
color:white;

}

.blue-btn-small {

background:#2563eb;
color:white;

padding:8px 12px;

margin-right:5px;

}

.red-btn-small {

background:#dc2626;
color:white;

padding:8px 12px;

}

.status-online {

color:#22c55e;
font-weight:bold;

}

.status-offline {

color:#ef4444;
font-weight:bold;

}

table {

width:100%;

border-collapse:collapse;

margin-top:15px;

}

th {

background:#1f2937;

padding:14px;

text-align:left;

}

td {

padding:14px;

border-bottom:1px solid #374151;

}

.search-box {

margin-bottom:15px;

}

.log-box {

background:#020617;

padding:20px;

border-radius:10px;

overflow:auto;

color:#cbd5e1;

max-height:400px;

}

.service-list {

list-style:none;
padding:0;
margin:0;

}

.service-list li {

padding:8px 0;

border-bottom:1px solid #1f2937;

}

a {

color:#60a5fa;

}

.table-container {

max-height:500px;

overflow:auto;

border-radius:10px;

border:1px solid #1f2937;

margin-top:15px;

}

.logs-container {

max-height:320px;

overflow:auto;

border-radius:10px;

}

.flash-message {

margin:30px;

padding:18px 22px;

border-radius:12px;

font-weight:700;

font-size:15px;

box-shadow:
0 8px 20px rgba(0,0,0,0.25);

animation:fadeIn 0.25s ease;

}

.flash-message.success {

background:#14532d;

border:1px solid #22c55e;

color:#dcfce7;

}

.flash-message.error {

background:#7f1d1d;

border:1px solid #ef4444;

color:#fee2e2;

}

@keyframes fadeIn {

from {

opacity:0;
transform:translateY(-5px);

}

to {

opacity:1;
transform:translateY(0);

}

}

::-webkit-scrollbar {

width:10px;
height:10px;

}

::-webkit-scrollbar-track {

background:#0f172a;

}

::-webkit-scrollbar-thumb {

background:#374151;
border-radius:999px;

}

::-webkit-scrollbar-thumb:hover {

background:#4b5563;

}

@media (max-width: 768px) {

.dashboard-grid {

grid-template-columns:1fr;

}

.topbar {

flex-direction:column;
align-items:flex-start;

gap:20px;

padding:20px;

}

.topbar-right {

width:100%;
justify-content:space-between;

}

}