:root { --bs-body-bg: #ffffff; --bs-body-color: #212529; } [data-bs-theme="dark"] { --bs-body-bg: #1a1a1a; --bs-body-color: #f8f9fa; --bs-border-color: #495057; } [data-bs-theme="dark"] .table { --bs-table-bg: #212529; --bs-table-color: #fff; --bs-table-border-color: #495057; } [data-bs-theme="dark"] .card { background-color: #2b3035; border-color: var(--bs-border-color); } [data-bs-theme="dark"] .navbar { background-color: #212529 !important; } body { background-color: var(--bs-body-bg); color: var(--bs-body-color); transition: all 0.3s ease; } .font-monospace { font-family: Monaco, Consolas, "Courier New", monospace; } .badge { font-size: 0.9em; font-weight: 500; } #expiry-countdown { font-weight: 600; letter-spacing: 0.05em; color: #dc3545; transition: color 0.3s ease; } [data-bs-theme="dark"] #expiry-countdown { color: #ff6b6b; } /* Progressbar-Animations */ #expiry-bar { transition: width 1s linear, background-color 0.5s ease; } .bg-success { background-color: #198754 !important; } .bg-warning { background-color: #ffc107 !important; } .bg-danger { background-color: #dc3545 !important; } .progress-bar { transition: width 1s linear, background-color 0.3s ease; } .table-pdf { font-size: 0.8em; } .table-pdf td, .table-pdf th { padding: 4px 8px; } .badge.bg-warning { background-color: #ffcc00 !important; color: #222 !important; } .badge.bg-success { background-color: #198754 !important; color: #fff !important; } .game-cover { width: 368px; height: 172px; max-width: 100%; max-height: 35vw; object-fit: contain; background: #222; border-radius: 8px; display: block; margin: 0 auto; transition: width 0.2s, height 0.2s; } /* Responsive Cover Images */ .game-cover { width: 368px; height: 172px; object-fit: contain; background: #222; border-radius: 6px; } @media (max-width: 1200px) { .game-cover { width: 260px; height: 122px; } } @media (max-width: 992px) { .game-cover { width: 180px; height: 84px; } } @media (max-width: 768px) { .game-cover { width: 120px; height: 56px; } } @media (max-width: 576px) { .game-cover { width: 90px; height: 42px; } } /* Accessibility Improvements */ .visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); border: 0; } .price-value { font-size: 1.2em; font-weight: 400; margin-top: 2px; } .navbar-nav .nav-link { white-space: nowrap; } @media (max-width: 991.98px) { .navbar-nav { flex-direction: column !important; align-items: flex-start !important; } } .card-body img, .steam-description img { max-width: 100%; height: auto; display: block; margin: 8px auto; } td.font-monospace { word-break: break-all; /* or */ overflow-wrap: break-word; } .key-col.hidden { display: none !important; } @media (max-width: 768px) { .key-col { display: none; } } .navbar .btn, .navbar .dropdown-toggle, .navbar .nav-link { min-height: 40px; line-height: 1.5 !important; padding-top: 6px; padding-bottom: 6px; display: flex; align-items: center; font-size: 0.95em; } .alert-error { background-color: #f8d7da; border-color: #f5c6cb; color: #721c24; } .alert-success { background-color: #d4edda; border-color: #c3e6cb; color: #155724; } .alert-info { background: #d9edf7; color: #31708f; }