@import url('https://fonts.googleapis.com/css2?family=Georgia&family=Roboto:wght@400;700&display=swap'); :root { --primary-color: #4A90E2; --secondary-color: #50E3C2; --background-color: #F7F9FC; --surface-color: #FFFFFF; --text-color: #333333; --light-gray-color: #EAEAEA; --success-color: #28a745; } body { background-color: var(--background-color); font-family: 'Roboto', -apple-system, BlinkMacSystemFont, 'Segoe UI', Helvetica, Arial, sans-serif; color: var(--text-color); line-height: 1.6; } h1, h2, h3, h4, h5, h6 { font-family: 'Georgia', serif; color: var(--primary-color); } .survey-container { max-width: 800px; margin: 2rem auto; padding: 2rem; background-color: var(--surface-color); border-radius: 0.5rem; box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05); } .survey-header { text-align: center; margin-bottom: 2rem; padding: 2rem; background: linear-gradient(135deg, var(--primary-color), var(--secondary-color)); color: white; border-radius: 0.5rem; } .survey-header h1 { color: white; margin: 0; } .progress { height: 10px; margin-bottom: 2rem; border-radius: 5px; } .progress-bar { background-color: var(--secondary-color); transition: width 0.4s ease; } .question-card { background: var(--surface-color); border: 1px solid var(--light-gray-color); border-radius: 0.5rem; padding: 1.5rem; margin-bottom: 1.5rem; transition: box-shadow 0.3s ease; } .question-card:focus-within { box-shadow: 0 0 0 3px rgba(var(--primary-color-rgb), 0.2); border-color: var(--primary-color); } .form-label { font-weight: bold; margin-bottom: 0.75rem; display: block; } .form-control, .form-check-input { transition: border-color 0.3s ease, box-shadow 0.3s ease; } .form-control:focus { border-color: var(--primary-color); box-shadow: 0 0 0 3px rgba(var(--primary-color-rgb), 0.2); } .form-check-input:checked { background-color: var(--primary-color); border-color: var(--primary-color); } .form-check-label { margin-left: 0.5rem; } .btn-primary { background-color: var(--primary-color); border-color: var(--primary-color); padding: 0.75rem 1.5rem; font-weight: bold; border-radius: 0.25rem; transition: background-color 0.3s ease, transform 0.2s ease; } .btn-primary:hover { background-color: #357ABD; transform: translateY(-2px); } .survey-footer { text-align: center; margin-top: 2rem; } .powered-by { font-size: 0.9rem; color: #aaa; margin-top: 1rem; } .powered-by a { color: #aaa; text-decoration: none; } .powered-by a:hover { color: var(--primary-color); } /* Toast Notification */ .toast-container { position: fixed; top: 1rem; right: 1rem; z-index: 1050; } .toast { opacity: 0; transition: opacity 0.4s ease-in-out; } .toast.show { opacity: 1; }