.app { min-height: 100vh; width: 100%; } .loading { display: flex; justify-content: center; align-items: center; min-height: 100vh; font-size: 1.5rem; } .container { max-width: 1200px; margin: 0 auto; padding: 1rem; } .card { background-color: #2a2a2a; border-radius: 8px; padding: 1.5rem; margin-bottom: 1rem; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2); } .button-primary { background-color: #646cff; color: white; border: none; padding: 0.75rem 1.5rem; border-radius: 8px; font-size: 1rem; cursor: pointer; transition: background-color 0.25s; } .button-primary:hover { background-color: #535bf2; } .button-secondary { background-color: #2a2a2a; color: white; border: 1px solid #646cff; padding: 0.75rem 1.5rem; border-radius: 8px; font-size: 1rem; cursor: pointer; transition: border-color 0.25s, background-color 0.25s; } .button-secondary:hover { background-color: #3a3a3a; border-color: #535bf2; } input, textarea { width: 100%; padding: 0.75rem; border: 1px solid #3a3a3a; border-radius: 8px; background-color: #1a1a1a; color: white; font-size: 1rem; } input:focus, textarea:focus { outline: none; border-color: #646cff; } .error { color: #ff6b6b; margin-top: 0.5rem; } .success { color: #51cf66; margin-top: 0.5rem; } @media (max-width: 768px) { .container { padding: 0.5rem; } .card { padding: 1rem; } } /* Status Effects */ .status-effects-container { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 15px; } .status-effect-badge { display: flex; align-items: center; gap: 5px; padding: 4px 8px; background-color: #333; border-radius: 4px; font-size: 0.85rem; border: 1px solid #444; } .status-effect-badge.damage { background-color: rgba(231, 76, 60, 0.2); border-color: #e74c3c; color: #ffdce0; } .status-effect-badge.buff { background-color: rgba(46, 204, 113, 0.2); border-color: #2ecc71; color: #d4efdf; } .effect-icon { font-size: 1.1em; } .effect-timer { font-family: monospace; opacity: 0.8; }