:root { --bg: #0f0f10; --panel: #19191b; --gold: #d4af37; --text: #e0e0e0; --muted: #888; } body { background: var(--bg); color: var(--text); margin: 0; font-family: "Inter", system-ui, sans-serif; height: 100vh; overflow: hidden; } #app { display: grid; grid-template-columns: 320px 1fr; height: 100%; } .sidebar { background: var(--panel); overflow-y: auto; border-right: 1px solid var(--gold); padding: 0.5em 1em; } h1 { color: var(--gold); font-size: 1.4em; margin: 0.5em 0; } .controls { display: flex; flex-direction: column; gap: 0.5em; font-size: 0.9em; } select { background: #000; color: var(--gold); border: 1px solid var(--gold); border-radius: 4px; } nav { margin-top: 1em; line-height: 1.6; } .file, .dir { display: block; padding: 2px 4px; border-radius: 4px; cursor: pointer; text-decoration: none; color: var(--text); } .file.active, .file:hover, .dir:hover { background: rgba(212,175,55,0.15); } .pin { font-weight: bold; color: var(--gold); } .content { overflow-y: auto; position: relative; } .viewer { padding: 1.5em; max-width: 700px; margin: 0 auto; } #meta { color: var(--muted); font-size: 0.9em; margin-bottom: 1em; } iframe, .md { width: 100%; border: none; background: transparent; color: var(--text); } .md pre, .md code { background: #111; padding: 0.5em; border-radius: 4px; overflow-x: auto; color: var(--gold); } /* --- Mobile Drawer --- */ .nav-toggle { position: fixed; top: 10px; left: 10px; z-index: 2000; background: var(--panel); color: var(--gold); border: 1px solid var(--gold); border-radius: 8px; padding: 6px 10px; font-size: 20px; display: none; } @media (max-width: 900px) { #app { grid-template-columns: 1fr; } .nav-toggle { display: block; } .sidebar { position: fixed; top: 0; left: 0; width: 80%; max-width: 340px; height: 100%; transform: translateX(-100%); transition: transform 0.3s ease; z-index: 1500; } .sidebar.open { transform: translateX(0); } .content { margin-left: 0; overflow-y: auto; } }