/* Reset and base styles */ * { margin: 0; padding: 0; box-sizing: border-box; } body { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; line-height: 1.6; color: #333; background-color: #f8f9fa; padding: 20px; max-width: 1200px; margin: 0 auto; } /* Main heading */ h1 { color: #2c3e50; margin-bottom: -10px; padding-bottom: 3px; border-bottom: 3px solid #3498db; font-size: 2.2em; } h2 { color: #34495e; margin: 30px 0 20px 0; font-size: 1.5em; } h3 { color: #34495e; margin: 25px 0 15px 0; font-size: 1.3em; } /* Links and buttons */ a { color: #3498db; text-decoration: none; padding: 8px 16px; border-radius: 5px; transition: background-color 0.3s ease; } a:hover { background-color: #e3f2fd; text-decoration: none; } /* Primary action link (Submit New Problem) */ a[href="/problem/new"] { background-color: #3498db; color: white; font-weight: 600; margin-bottom: 30px; display: inline-block; padding: 12px 24px; border-radius: 8px; } a[href="/problem/new"]:hover { background-color: #2980b9; } /* Problem list */ ul { list-style: none; background: white; border-radius: 8px; box-shadow: 0 2px 10px rgba(0,0,0,0.1); padding: 25px; margin: 20px 0; } li { padding: 15px 0; border-bottom: 1px solid #eee; } li:last-child { border-bottom: none; } li a { display: block; padding: 12px 20px; margin: -12px -20px; border-radius: 6px; font-size: 1.1em; } li a:hover { background-color: #f8f9fa; transform: translateX(5px); transition: all 0.2s ease; } /* Problem page specific styles */ .problem-header { display: flex; align-items: center; margin-bottom: 30px; gap: 20px; } .back-btn { background-color: #95a5a6; color: white; border: none; padding: 10px 20px; border-radius: 6px; cursor: pointer; font-size: 14px; font-weight: 500; transition: background-color 0.3s ease; } .back-btn:hover { background-color: #7f8c8d; } .problem-desc { background: white; padding: 30px; border-radius: 8px; box-shadow: 0 2px 10px rgba(0,0,0,0.1); margin-bottom: 30px; font-size: 1.1em; line-height: 1.7; } /* Editor section */ .editor-section { background: white; padding: 30px; border-radius: 8px; box-shadow: 0 2px 10px rgba(0,0,0,0.1); margin-bottom: 30px; } #editor { border: 2px solid #ddd; border-radius: 8px; margin: 20px 0; height: 400px; overflow: hidden; } .editor-actions { margin-top: 20px; text-align: right; } form button[type="submit"] { background-color: #27ae60; color: white; border: none; padding: 12px 30px; border-radius: 8px; cursor: pointer; font-size: 16px; font-weight: 600; transition: background-color 0.3s ease; } form button[type="submit"]:hover { background-color: #229954; } /* Results section */ b { color: #2c3e50; display: inline-block; margin: 10px 0 5px 0; } pre { background-color: #f4f4f4; padding: 20px; border-radius: 6px; border-left: 4px solid #3498db; margin: 10px 0 20px 0; overflow-x: auto; font-family: 'JetBrains Mono', 'Courier New', monospace; font-size: 14px; line-height: 1.4; } pre[style*="color:red"] { border-left-color: #e74c3c; background-color: #fdf2f2; } /* Status messages */ p[style*="color:green"] { background-color: #d4edda; color: #155724; padding: 15px 20px; border-radius: 6px; border-left: 4px solid #27ae60; margin: 20px 0; font-weight: 600; } p[style*="color:red"] { background-color: #f8d7da; color: #721c24; padding: 15px 20px; border-radius: 6px; border-left: 4px solid #e74c3c; margin: 20px 0; font-weight: 600; } /* Back to Problems link */ a[href="/"] { display: inline-block; margin-top: 30px; background-color: #6c757d; color: white; padding: 10px 20px; border-radius: 6px; font-weight: 500; } a[href="/"]:hover { background-color: #5a6268; } /* Responsive design */ @media (max-width: 768px) { body { padding: 15px; } .problem-header { flex-direction: column; align-items: flex-start; gap: 15px; } h1 { font-size: 1.8em; } .problem-desc, .editor-section, ul { padding: 20px; } #editor { height: 300px; } .editor-actions { text-align: center; } }