/* ═══════════════════════════════════════════════════════════ YUUKA BOT DASHBOARD — live system stats ═══════════════════════════════════════════════════════════ */ /* ── LAYOUT: edit these to change the grid ────────────────── */ :root { --dash-columns: 2; /* number of columns (2 = 2×2, 3 = 3-wide, etc.) */ --dash-gap: 24px; /* space between boxes */ --dash-min-card-height: 220px;/* minimum height of each box */ --dash-max-width: 1100px; /* max width of the whole grid */ --dash-padding: 120px 40px 60px; /* top right/left bottom */ } /* To make boxes take different amounts of space, add a class to the HTML like "wide" or "tall" and define it here: .dash-card.wide { grid-column: span 2; } .dash-card.tall { grid-row: span 2; } */ /* ── Tab header ───────────────────────────────────────────── */ .dash-header { padding: 120px 20px 30px; text-align: center; } .dash-header h1 { font-size: 2.8rem; color: #fff; margin: 0 0 6px; text-shadow: 0 0 30px rgba(91, 111, 222, 0.5); } .dash-header .status-dot { display: inline-block; width: 14px; height: 14px; border-radius: 50%; background: #22c55e; margin-right: 8px; box-shadow: 0 0 12px #22c55e; animation: pulse 2s infinite; } @keyframes pulse { 0%, 100% { box-shadow: 0 0 8px #22c55e; } 50% { box-shadow: 0 0 20px #22c55e, 0 0 40px rgba(34,197,94,0.4); } } .dash-header .offline { background: #ef4444; box-shadow: 0 0 12px #ef4444; animation: none; } /* ── Card grid ────────────────────────────────────────────── */ .dash-grid { display: grid; grid-template-columns: repeat(var(--dash-columns), 1fr); gap: var(--dash-gap); max-width: var(--dash-max-width); margin: 0 auto; padding: 0 40px 60px; } /* ── Glass card ───────────────────────────────────────────── */ .dash-card { background: rgba(15, 15, 35, 0.55); backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px); border: 1px solid rgba(91, 111, 222, 0.2); border-radius: 16px; padding: 28px 30px; min-height: var(--dash-min-card-height); display: flex; flex-direction: column; justify-content: space-between; transition: border-color 0.3s, box-shadow 0.3s; } .dash-card:hover { border-color: rgba(91, 111, 222, 0.5); box-shadow: 0 6px 28px rgba(91, 111, 222, 0.12); } /* ── Card header (icon + label) ───────────────────────────── */ .card-top { display: flex; align-items: center; gap: 12px; } .card-icon { font-size: 1.6rem; width: 44px; height: 44px; display: flex; align-items: center; justify-content: center; background: rgba(91, 111, 222, 0.12); border-radius: 10px; } .card-label { font-size: 0.8rem; text-transform: uppercase; letter-spacing: 1.5px; color: rgba(255, 255, 255, 0.45); font-family: Arial, Helvetica, sans-serif; } /* ── Card value ───────────────────────────────────────────── */ .card-value { font-size: 3rem; font-weight: bold; color: #fff; margin: 0; line-height: 1; } .card-value span { font-size: 1.2rem; color: rgba(255, 255, 255, 0.4); font-weight: 400; } /* ── Progress bar (CPU / RAM / Disk) ──────────────────────── */ .card-bar-wrap { width: 100%; height: 8px; background: rgba(255, 255, 255, 0.08); border-radius: 4px; overflow: hidden; margin-top: 12px; } .card-bar-fill { height: 100%; border-radius: 4px; transition: width 0.8s ease; } .card-bar-fill.cpu { background: linear-gradient(90deg, #5b6fde, #818cf8); } .card-bar-fill.ram { background: linear-gradient(90deg, #a78bfa, #c4b5fd); } .card-bar-fill.disk { background: linear-gradient(90deg, #34d399, #6ee7b7); } /* ── Detail text (used / total) ───────────────────────────── */ .card-detail { font-size: 0.78rem; color: rgba(255, 255, 255, 0.3); font-family: Arial, Helvetica, sans-serif; margin-top: 6px; } /* ── Footer ───────────────────────────────────────────────── */ .dash-footer { text-align: center; color: rgba(255, 255, 255, 0.2); font-size: 0.7rem; padding-bottom: 50px; font-family: Arial, Helvetica, sans-serif; } /* ── Yuuka Bot nav button ─────────────────────────────────── */ #yuukabot-btn { background-color: #5b6fde; color: #fff; border: none !important; padding: 12px 24px; border-radius: 8px; cursor: pointer; transition: box-shadow 0.3s, transform 0.2s; } #yuukabot-btn:hover { box-shadow: 0 0 20px rgba(91, 111, 222, 0.8); transform: scale(1.03); }