/* Custom styles for the C Programming Learning System */ body { font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; background-color: #f8f9fa; } .lesson-card { transition: transform 0.2s, box-shadow 0.2s; height: 100%; } .lesson-card:hover { transform: translateY(-5px); box-shadow: 0 4px 8px rgba(0,0,0,0.1); } .lesson-content { background: white; padding: 20px; border-radius: 8px; box-shadow: 0 2px 4px rgba(0,0,0,0.1); } .lesson-content h1, .lesson-content h2, .lesson-content h3 { color: #2c3e50; margin-top: 20px; } .lesson-content h1 { border-bottom: 2px solid #3498db; padding-bottom: 10px; } .lesson-content p { line-height: 1.6; margin-bottom: 15px; } .lesson-content code { background-color: #f1f1f1; padding: 2px 6px; border-radius: 4px; font-family: 'Courier New', monospace; color: #d6336c; /* More colorful */ } .lesson-content pre { background-color: #f8f9fa; color: #333; padding: 15px; border-radius: 8px; border: 1px solid #e9ecef; overflow-x: auto; margin: 15px 0; } /* More colorful code blocks in lesson content */ .lesson-content pre code { background: none; padding: 0; color: #333; font-family: 'Courier New', monospace; } /* Colorful syntax highlighting for lesson content code blocks */ .lesson-content pre { background-color: #2b2b2b; color: #f8f8f2; border: 1px solid #49483e; padding: 15px; border-radius: 8px; overflow-x: auto; margin: 15px 0; } .lesson-content pre code { background: none; color: #f8f8f2; display: block; overflow-x: auto; } /* Use highlight.js theme for lesson content code blocks */ .lesson-content pre code { background: #2b2b2b; padding: 15px; border-radius: 8px; overflow-x: auto; } /* Override default hljs theme to use dark theme for lesson content */ .lesson-content .hljs { background: #2b2b2b; color: #f8f8f2; padding: 15px; border-radius: 8px; overflow-x: auto; } .lesson-content .hljs-keyword { color: #f92672; /* Red for keywords */ } .lesson-content .hljs-function { color: #a6e22e; /* Green for functions */ } .lesson-content .hljs-number { color: #ae81ff; /* Purple for numbers */ } .lesson-content .hljs-string { color: #e6db74; /* Yellow for strings */ } .lesson-content .hljs-comment { color: #75715e; /* Brown for comments */ } .lesson-content .hljs-meta { color: #f8f8f2; /* Default color for meta */ } .lesson-content .hljs-title { color: #a6e22e; /* Green for titles/functions */ } .lesson-content .hljs-type { color: #66d9ef; /* Light blue for types */ } .lesson-content .hljs-params { color: #fd971f; /* Orange for parameters */ } .lesson-content .hljs-built_in { color: #a6e22e; /* Green for built-in functions */ } .lesson-content table { width: 100%; border-collapse: collapse; margin: 15px 0; } .lesson-content table, .lesson-content th, .lesson-content td { border: 1px solid #ddd; } .lesson-content th { background-color: #f2f2f2; padding: 10px; text-align: left; } .lesson-content td { padding: 10px; } .lesson-content img { max-width: 100%; height: auto; margin: 10px 0; } .lesson-content figure { margin: 15px 0; text-align: center; } .lesson-content figcaption { font-style: italic; color: #666; margin-top: 5px; } .lesson-content pre code { background: none; padding: 0; } .exercise-section { background: white; padding: 25px; border-radius: 8px; box-shadow: 0 2px 4px rgba(0,0,0,0.1); } .exercise-content { background-color: #f8f9fa; padding: 15px; border-left: 4px solid #3498db; border-radius: 0 4px 4px 0; } .editor-section { margin-top: 20px; } #code-editor { font-family: 'Courier New', monospace; font-size: 14px; resize: vertical; } #output { max-height: 300px; overflow-y: auto; } .output-success { color: #28a745; } .output-error { color: #dc3545; } .footer { margin-top: 50px; } .navbar-brand { font-weight: bold; } .card { box-shadow: 0 2px 4px rgba(0,0,0,0.1); } .list-group-item.active { background-color: #3498db; border-color: #3498db; } /* Syntax highlighting for code blocks */ .hljs { display: block; overflow-x: auto; padding: 0.5em; background: #f0f0f0; } /* Dark theme for code editor */ .code-editor-dark { background-color: #272822 !important; color: #f8f8f2 !important; } .code-editor-dark #line-numbers { background-color: #3e3d32 !important; color: #75715e !important; } /* Line numbers container styling */ .line-numbers { background-color: #eef0f3; color: #6c757d; border-right: 1px solid #dee2e6; font-family: monospace; font-size: 14px; line-height: 1.4; padding: 10px 5px; text-align: right; overflow: hidden; user-select: none; flex-shrink: 0; min-width: 40px; } /* Dark theme for line numbers */ .code-editor-dark + .line-numbers, .code-editor-dark .line-numbers { background-color: #3e3d32; color: #75715e; border-right: 1px solid #49483e; } /* Alternative selector for dark theme */ .code-editor-dark ~ div .line-numbers, #editor-wrapper.code-editor-dark .line-numbers { background-color: #3e3d32; color: #75715e; border-right: 1px solid #49483e; } /* Editor wrapper styling */ .editor-wrapper { display: flex; overflow: hidden; } .editor-wrapper textarea { border: none; outline: none; resize: none; font-family: monospace; font-size: 14px; line-height: 1.4; padding: 10px; margin: 0; overflow: auto; flex: 1; } /* Dark theme for output panel */ .output-dark { background-color: #272822 !important; color: #f8f8f2 !important; border: 1px solid #49483e !important; } .output-dark pre { color: #f8f8f2 !important; } /* Responsive adjustments */ @media (max-width: 768px) { .container { padding-left: 15px; padding-right: 15px; } .lesson-content, .exercise-section { padding: 15px; } }