@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;700&display=swap'); :root { --bg-color: #0b0c10; --panel-bg: rgba(31, 40, 51, 0.6); --panel-border: rgba(102, 252, 241, 0.2); --text-main: #c5c6c7; --text-bright: #ffffff; --accent-cyan: #66fcf1; --accent-teal: #45a29e; --accent-red: #ff4b4b; --accent-green: #4ade80; --accent-purple: #c084fc; } * { box-sizing: border-box; margin: 0; padding: 0; } body { font-family: 'Inter', sans-serif; background-color: var(--bg-color); color: var(--text-main); background-image: radial-gradient(circle at 15% 50%, rgba(69, 162, 158, 0.15), transparent 25%), radial-gradient(circle at 85% 30%, rgba(192, 132, 252, 0.1), transparent 25%); background-attachment: fixed; min-height: 100vh; overflow-x: hidden; } .glass-panel { background: var(--panel-bg); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); border: 1px solid var(--panel-border); border-radius: 16px; box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.3); } /* Animations */ @keyframes pulseGlow { 0% { box-shadow: 0 0 5px rgba(102, 252, 241, 0.2); } 50% { box-shadow: 0 0 20px rgba(102, 252, 241, 0.6); } 100% { box-shadow: 0 0 5px rgba(102, 252, 241, 0.2); } } @keyframes slideIn { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } } @keyframes fadeInRight { from { opacity: 0; transform: translateX(-20px); } to { opacity: 1; transform: translateX(0); } } .animate-slide-in { animation: slideIn 0.4s ease-out forwards; } .animate-fade-right { animation: fadeInRight 0.3s ease-out forwards; } /* Custom Scrollbar */ ::-webkit-scrollbar { width: 8px; } ::-webkit-scrollbar-track { background: rgba(0, 0, 0, 0.2); } ::-webkit-scrollbar-thumb { background: var(--accent-teal); border-radius: 4px; } ::-webkit-scrollbar-thumb:hover { background: var(--accent-cyan); } .font-mono { font-family: 'JetBrains Mono', monospace; } /* Global utility classes */ .text-cyan { color: var(--accent-cyan); } .text-green { color: var(--accent-green); } .text-red { color: var(--accent-red); } .text-purple { color: var(--accent-purple); } .text-bright { color: var(--text-bright); } .bg-cyan-dim { background-color: rgba(102, 252, 241, 0.1); } .bg-red-dim { background-color: rgba(255, 75, 75, 0.1); } .bg-green-dim { background-color: rgba(74, 222, 128, 0.1); } .bg-purple-dim { background-color: rgba(192, 132, 252, 0.1); } .border-cyan { border-color: var(--accent-cyan); } .border-red { border-color: var(--accent-red); } .border-green { border-color: var(--accent-green); } /* === Main App Responsive Layout === */ .app-container { padding: 1.5rem 2rem; max-width: 1600px; margin: 0 auto; height: 100dvh; display: flex; flex-direction: column; box-sizing: border-box; } .app-content { flex: 1; min-height: 0; margin-top: 1rem; display: flex; flex-direction: column; } @media (max-width: 768px) { .app-container { padding: 0.6rem 0.5rem; height: auto; min-height: 100dvh; } .app-content { margin-top: 0.4rem; min-height: calc(100dvh - 130px); } } @media (max-width: 420px) { .app-container { padding: 0.4rem 0.3rem; } .app-content { margin-top: 0.25rem; } }