/* Common Styles */ :root { --primary-color: #ff6b6b; --secondary-color: #4ecdc4; --text-color: #333; --text-light: #666; --border-color: #e0e0e0; --bg-gray: #f8f9fa; --success-color: #51cf66; --warning-color: #ffd43b; --danger-color: #ff6b6b; } .container { max-width: 1400px; margin: 0 auto; padding: 0 20px; } /* Buttons */ .btn { display: inline-block; padding: 12px 24px; border-radius: 4px; font-size: 14px; font-weight: 500; text-align: center; transition: all 0.3s ease; border: none; cursor: pointer; } .btn-primary { background-color: var(--primary-color); color: #fff; } .btn-primary:hover { background-color: #ff5252; transform: translateY(-2px); box-shadow: 0 4px 8px rgba(255, 107, 107, 0.3); } .btn-secondary { background-color: transparent; color: var(--text-color); border: 1px solid var(--border-color); } .btn-secondary:hover { border-color: var(--primary-color); color: var(--primary-color); } /* Badge */ .badge { display: inline-block; padding: 4px 8px; font-size: 11px; font-weight: 600; text-transform: uppercase; border-radius: 3px; background-color: var(--primary-color); color: #fff; } .badge-success { background-color: var(--success-color); } .badge-warning { background-color: var(--warning-color); color: #333; } /* Loading Spinner */ .loading { display: inline-block; width: 40px; height: 40px; border: 4px solid var(--bg-gray); border-top-color: var(--primary-color); border-radius: 50%; animation: spin 0.8s linear infinite; } @keyframes spin { to { transform: rotate(360deg); } } .loading-container { display: flex; justify-content: center; align-items: center; min-height: 300px; } /* Utility Classes */ .text-center { text-align: center; } .text-left { text-align: left; } .text-right { text-align: right; } .mt-1 { margin-top: 0.5rem; } .mt-2 { margin-top: 1rem; } .mt-3 { margin-top: 1.5rem; } .mt-4 { margin-top: 2rem; } .mb-1 { margin-bottom: 0.5rem; } .mb-2 { margin-bottom: 1rem; } .mb-3 { margin-bottom: 1.5rem; } .mb-4 { margin-bottom: 2rem; } .d-none { display: none; } .d-block { display: block; } .d-flex { display: flex; } /* Responsive */ @media (max-width: 768px) { .container { padding: 0 15px; } .btn { padding: 10px 20px; font-size: 13px; } }