.overlay { position: fixed; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0, 0, 0, 0); z-index: 1000; transition: background 0.3s ease; } .overlayVisible { background: rgba(0, 0, 0, 0.6); } .sidePanel { position: fixed; top: 0; right: 0; bottom: 0; width: 50%; background: #1e1e1e; z-index: 1001; box-shadow: -4px 0 20px rgba(0, 0, 0, 0.5); display: flex; flex-direction: column; transform: translateX(100%); transition: transform 0.3s ease; } .sidePanelOpen { transform: translateX(0); } .closeButton { position: absolute; top: 16px; right: 16px; background: transparent; border: none; color: #cccccc; font-size: 32px; cursor: pointer; padding: 4px 12px; line-height: 1; transition: color 0.2s ease, background 0.2s ease; border-radius: 4px; z-index: 1; } .closeButton:hover { color: #ffffff; background: rgba(255, 255, 255, 0.1); } .content { padding: 24px 32px; overflow-y: auto; height: 100%; color: #e0e0e0; } .content h1 { font-size: 28px; margin: 0 0 24px 0; color: #ffffff; font-weight: 600; } .content h2 { font-size: 20px; margin: 32px 0 16px 0; color: #ffffff; font-weight: 600; } .content h3 { font-size: 16px; margin: 24px 0 12px 0; color: #e0e0e0; font-weight: 600; } .content p { line-height: 1.6; margin: 0 0 16px 0; color: #cccccc; } .content ul, .content ol { margin: 0 0 16px 0; padding-left: 24px; } .content li { line-height: 1.6; margin-bottom: 8px; color: #cccccc; } .content code { background: #2d2d30; padding: 2px 6px; border-radius: 3px; font-family: "Consolas", "Monaco", "Courier New", monospace; font-size: 13px; color: #4fc3f7; } .content pre { background: #2d2d30; padding: 16px; border-radius: 4px; overflow-x: auto; margin: 0 0 16px 0; } .content pre code { background: transparent; padding: 0; } .content a { color: #4fc3f7; text-decoration: none; } .content a:hover { text-decoration: underline; } .content kbd { background: #2d2d30; border: 1px solid #444; border-radius: 3px; padding: 2px 6px; font-family: "Consolas", "Monaco", "Courier New", monospace; font-size: 12px; color: #e0e0e0; box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2); } @keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } } @keyframes slideIn { from { transform: translateX(100%); } to { transform: translateX(0); } } @media (max-width: 768px) { .sidePanel { width: 100%; } }