/* Global styles for the oTree simulation */ body { font-family: 'Inter', Arial, sans-serif; background-color: #f1f5f9; color: #1e293b; } .container { max-width: 880px; } /* Typography */ h2, h3, h4 { font-family: 'Inter', Arial, sans-serif; font-weight: 700; color: #0f172a; } p { font-size: 15px; line-height: 1.65; color: #374151; } ul li, ol li { font-size: 15px; line-height: 1.65; color: #374151; } /* Form controls */ .form-control { border-radius: 6px; border: 1px solid #d1d5db; font-family: 'Inter', Arial, sans-serif; font-size: 14px; color: #374151; } .form-control:focus { border-color: #2563eb; box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1); } /* Form labels */ label { font-weight: 500; color: #374151; } /* Radio / check labels */ .form-check-label { font-weight: 400; color: #4b5563; font-size: 14px; } /* Next / primary buttons */ .btn-primary, .otree-btn-next { background-color: #2563eb !important; border-color: #2563eb !important; border-radius: 8px !important; font-weight: 500 !important; font-family: 'Inter', Arial, sans-serif !important; padding: 10px 32px !important; font-size: 15px !important; transition: background-color 0.15s !important; } .btn-primary:hover, .otree-btn-next:hover { background-color: #1d4ed8 !important; border-color: #1d4ed8 !important; } /* Tables */ .table { font-family: 'Inter', Arial, sans-serif; font-size: 14px; } .table thead th { font-weight: 600; color: #374151; background-color: #f1f5f9; } /* Form group spacing */ .form-group { margin-bottom: 20px; } /* Alert improvements */ .alert { border-radius: 8px; font-size: 14px; } /* oTree title bar */ .otree-title-bar { margin-bottom: 20px; padding-bottom: 12px; border-bottom: 2px solid #e2e8f0; } .otree-title-bar h2 { font-size: 20px; font-weight: 700; color: #0f172a; margin: 0; }