* { margin: 0; padding: 0; box-sizing: border-box; } :root { --bg: #0d1117; --surface: #161b22; --border: #30363d; --text: #e6edf3; --text-muted: #8b949e; --accent: #00d4ff; --accent-hover: #33ddff; --danger: #f85149; --success: #3fb950; --warning: #d29922; --radius: 8px; } body { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; background: var(--bg); color: var(--text); min-height: 100vh; } #app { display: flex; min-height: 100vh; } .sidebar { width: 220px; background: var(--surface); border-right: 1px solid var(--border); padding: 16px 0; position: fixed; height: 100vh; overflow-y: auto; } .logo { padding: 0 16px 16px; font-size: 18px; font-weight: 700; border-bottom: 1px solid var(--border); } .nav-links { list-style: none; padding: 12px 0; } .nav-links a { display: block; padding: 10px 16px; color: var(--text-muted); text-decoration: none; font-size: 14px; transition: all 0.15s; } .nav-links a:hover, .nav-links a.active { color: var(--text); background: rgba(0,212,255,0.1); border-right: 2px solid var(--accent); } .content { flex: 1; margin-left: 220px; padding: 24px; } .panel { background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); padding: 20px; margin-bottom: 16px; } .panel h2 { margin-bottom: 16px; font-size: 20px; } /* Mobile */ @media (max-width: 768px) { .sidebar { width: 100%; height: auto; position: relative; display: flex; flex-wrap: wrap; padding: 8px 0; } .logo { width: 100%; padding: 8px 16px; border-bottom: none; } .nav-links { display: flex; width: 100%; padding: 0; overflow-x: auto; } .nav-links a { padding: 8px 14px; white-space: nowrap; border-right: none; border-bottom: 2px solid transparent; } .nav-links a.active { border-right: none; border-bottom-color: var(--accent); } .content { margin-left: 0; padding: 12px; } }