body { background-color: #121212; color: #ffffff; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; margin: 0; padding: 0; line-height: 1.6; min-height: 100vh; display: flex; flex-direction: column; } h1 { font-size: 50px; margin: 0; padding: 0; } h2 { margin-top: 0; color: #4dabf7; } .header { background-color: #111; padding: 2rem 0; text-align: center; border-bottom: 3px solid #4dabf7; } .tagline { color: #adb5bd; font-size: 1.2rem; margin-top: 0.5rem; } .container { max-width: 800px; margin: 2rem auto; padding: 0 1rem; } .card { background-color: #111; border-radius: 8px; padding: 1.5rem; margin-bottom: 2rem; box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); } .form-group { margin-bottom: 1.5rem; } label { display: block; margin-bottom: 0.5rem; } input, textarea { width: 100%; padding: 0.75rem; background-color: #222; border: 1px solid #444; border-radius: 4px; color: #fff; font-size: 1rem; box-sizing: border-box; } input:focus, textarea:focus { outline: none; border-color: #4dabf7; box-shadow: 0 0 0 2px rgba(77, 171, 247, 0.25); } textarea { min-height: 100px; resize: vertical; } button { background-color: #4dabf7; color: #000; border: none; padding: 0.75rem 1.5rem; font-size: 1rem; font-weight: bold; cursor: pointer; border-radius: 4px; transition: all 0.2s ease-in-out; } button:hover { background-color: #74c0fc; transform: translateY(-2px); box-shadow: 0 4px 8px rgba(77, 171, 247, 0.3); } button:disabled { background-color: #495057; cursor: not-allowed; } .location-item { border-bottom: 1px solid #333; padding: 1rem 0; transition: transform 0.2s ease; } .location-item:hover { transform: translateX(5px); } .location-item:last-child { border-bottom: none; } .location-item h3 { margin: 0 0 0.5rem 0; color: #4dabf7; } .date { color: #adb5bd; font-size: 0.9rem; margin-top: 0.5rem; } .loading { text-align: center; color: #adb5bd; } .centre { margin-top: 10%; text-align: center; } a { color: #4dabf7; text-decoration: none; } a:hover { text-decoration: underline; } /* Rating display styling */ .rating { display: flex; align-items: center; margin-top: 0.5rem; } .rating::before { content: "★ "; color: #ffd700; margin-right: 5px; } /* Footer styling */ .footer { background-color: #111; text-align: center; padding: 1.5rem 0; margin-top: auto; border-top: 2px solid #4dabf7; } .footer-content { max-width: 800px; margin: 0 auto; } .footer a { color: #4dabf7; transition: color 0.2s; } .footer a:hover { color: #74c0fc; text-decoration: none; } /* Enhanced form styling */ .rating-container { margin-top: 10px; } #rating { height: 8px; accent-color: #4dabf7; } /* Notification enhancements */ .notification { padding: 12px 18px; border-radius: 6px; margin-bottom: 20px; box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2); animation: fadeIn 0.3s ease-in-out; } @keyframes fadeIn { from { opacity: 0; transform: translateY(-10px); } to { opacity: 1; transform: translateY(0); } } /* Responsive adjustments */ @media (max-width: 600px) { h1 { font-size: 36px; } .container { padding: 0 0.5rem; } .card { padding: 1rem; } } .rating-container { display: flex; align-items: center; } #rating { flex: 1; margin-right: 10px; } #rating-value { font-weight: bold; width: 20px; text-align: center; } /* Notification styling */ .notification { padding: 10px 15px; border-radius: 4px; margin-bottom: 15px; transition: opacity 0.3s ease; } .notification.success { background-color: #d4edda; color: #155724; border: 1px solid #c3e6cb; } .notification.error { background-color: #f8d7da; color: #721c24; border: 1px solid #f5c6cb; } .notification.hidden { display: none; } .footer { background-color: #000000; padding: 10px 0; text-align: center; position: relative; bottom: 0; width: 100%; } .footer-content { max-width: 800px; margin: 0 auto; padding: 0 15px; } .footer a { color: #007bff; text-decoration: none; } .footer a:hover { text-decoration: underline; }