@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&display=swap'); :root { --primary-color: #38a169; --primary-hover: #2f855a; --text-color: #2d3748; --light-gray: #f7fafc; --medium-gray: #e2e8f0; --dark-gray: #4a5568; } body { font-family: 'Poppins', sans-serif; color: var(--text-color); line-height: 1.6; } .container { width: 100%; max-width: 1200px; margin: 0 auto; padding: 0 1rem; } /* Responsive typography */ html { font-size: 16px; } @media (max-width: 768px) { html { font-size: 14px; } } /* Custom scrollbar */ ::-webkit-scrollbar { width: 8px; } ::-webkit-scrollbar-track { background: #f1f1f1; } ::-webkit-scrollbar-thumb { background: #38a169; border-radius: 4px; } ::-webkit-scrollbar-thumb:hover { background: #2f855a; } /* Responsive utilities */ .hidden-mobile { display: block; } .visible-mobile { display: none; } @media (max-width: 768px) { .hidden-mobile { display: none; } .visible-mobile { display: block; } } /* Animation for buttons */ .btn { transition: all 0.3s ease; display: inline-flex; align-items: center; justify-content: center; white-space: nowrap; } .btn:hover { transform: translateY(-2px); box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); } .btn-primary { background-color: var(--primary-color); color: white; } .btn-primary:hover { background-color: var(--primary-hover); } .btn-secondary { background-color: var(--medium-gray); color: var(--text-color); } .btn-secondary:hover { background-color: #cbd5e0; } /* Card styles */ .card { background: white; border-radius: 0.5rem; box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1); transition: transform 0.3s ease, box-shadow 0.3s ease; } .card:hover { box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); } /* Form elements */ .form-control { width: 100%; padding: 0.5rem 1rem; border: 1px solid var(--medium-gray); border-radius: 0.375rem; transition: border-color 0.3s ease, box-shadow 0.3s ease; } .form-control:focus { outline: none; border-color: var(--primary-color); box-shadow: 0 0 0 3px rgba(56, 161, 105, 0.2); } /* Pulse animation for important elements */ @keyframes pulse { 0% { transform: scale(1); } 50% { transform: scale(1.05); } 100% { transform: scale(1); } } .pulse { animation: pulse 2s infinite; }