:root{ --bg:#0b0b0b; --fg:#e6e3d7; --accent:#e0b84b; --topbar-h:52px; } html,body{ margin:0; padding:0; height:100%; background:var(--bg); color:var(--fg); font-family:Inter,ui-sans-serif,system-ui; } .topbar{ position:fixed; top:0;left:0;right:0; height:var(--topbar-h); display:flex; align-items:center; background:#111; color:var(--accent); z-index:1000; border-bottom:1px solid #222; padding:0 1rem; } #menuBtn{ font-size:1.4rem; background:none; border:0; color:var(--accent); cursor:pointer; margin-right:1rem; } .primary-nav{ display:flex; flex-wrap:wrap; align-items:center; gap:24px; } .primary-nav a{ color:var(--accent); text-decoration:none; font-weight:600; } .primary-nav a:hover{ text-shadow:0 0 5px var(--accent); } #sidebar{ position:fixed; top:var(--topbar-h); left:0; width:280px; bottom:0; overflow:auto; background:#111; border-right:1px solid #222; transform:translateX(-100%); transition:transform .3s; z-index:900; } body.sidebar-open #sidebar{ transform:translateX(0); } .sidebar-controls{ display:flex; flex-direction:column; gap:8px; padding:1rem; } #postList{ list-style:none; margin:0; padding:0 1rem 2rem; } #postList li{ margin:.5rem 0; } #postList a{ color:var(--fg); text-decoration:none; } #postList a:hover{ color:var(--accent); } .content{ margin-top:var(--topbar-h); margin-left:0; transition:margin-left .3s; min-height:calc(100vh - var(--topbar-h)); } @media(min-width:1024px){ #sidebar{ transform:translateX(0); } .content{ margin-left:280px; } } .viewer > *{ max-width:720px; margin:auto; padding:2rem 1rem; } /* iframe resets */ .viewer iframe{ width:100%; border:0; margin:0; min-height:calc(100vh - var(--topbar-h) - 40px); border-radius:12px; background: #fff; /* For PDF contrast */ }