body { background-color: #1f002b; } /* ===================== Grid ===================== */ .characters-grid { display: flex; flex-wrap: wrap; gap: 32px; padding: 24px; } .character-slot { display: flex; flex-direction: column; align-items: center; } /* ===================== Deathclock ===================== */ .deathclock-title { color: #e8c858; text-align: center; font-size: 1.75em; font-weight: bold; font-family: Georgia, "Times New Roman", serif; text-transform: uppercase; } .deathclock-wrapper { width: 226px; display: flex; justify-content: center; align-items: center; padding: 0px 8px 8px; font-family: "Courier New", monospace; } .deathclock { display: flex; gap: 5px; padding: 2px; } .digit { position: relative; width: 50px; height: 90px; perspective: 700px; } .flipcard { position: absolute; inset: 0; border-radius: 10px; background: linear-gradient(#1d1d1d, #050505); color: #e8c858; font-size: 56px; font-weight: bold; line-height: 95px; text-align: center; overflow: hidden; } .flipcard::before { content: ""; position: absolute; left: 0; right: 0; top: 50%; height: 2px; background: #000; box-shadow: 0 -1px rgba(255,255,255,0.08), 0 1px rgba(255,255,255,0.05); z-index: 3; } .top, .bottom { position: absolute; left: 0; width: 100%; height: 50%; overflow: hidden; background: linear-gradient(#202020, #080808); color: #e8c858; font-size: 56px; font-weight: bold; text-align: center; backface-visibility: hidden; } .top { top: 0; line-height: 90px; border-radius: 10px 10px 0 0; transform-origin: bottom; } .bottom { bottom: 0; line-height: 0; border-radius: 0 0 10px 10px; transform-origin: top; } .flip-top { animation: flipTop 0.28s ease-in forwards; z-index: 5; } .flip-bottom { animation: flipBottom 0.28s ease-out forwards; z-index: 5; } @keyframes flipTop { from { transform: rotateX(0deg); } to { transform: rotateX(-90deg); } } @keyframes flipBottom { from { transform: rotateX(90deg); } to { transform: rotateX(0deg); } } .shine { position: absolute; inset: 0; border-radius: 10px; pointer-events: none; background: linear-gradient( 115deg, rgba(255,255,255,0.12), transparent 35%, transparent 70%, rgba(255,255,255,0.05) ); z-index: 10; } /* ===================== Trading Card ===================== */ .trading-card { width: 226px; background: linear-gradient(170deg, #3a0a4f 0%, #2c003e 50%, #320848 100%); border: 2px solid #9a7a28; border-top: none; border-radius: 0 0 12px 12px; box-shadow: 0 0 0 1px #4a1060, 0 16px 40px rgba(0, 0, 0, 0.8), 0 4px 12px rgba(184, 148, 58, 0.12); overflow: hidden; position: relative; transition: transform 0.2s ease, box-shadow 0.2s ease; } .trading-card:hover { transform: translateY(-6px); box-shadow: 0 0 0 1px #c8a84b, 0 22px 50px rgba(0, 0, 0, 0.9), 0 6px 20px rgba(200, 168, 75, 0.28); } /* Inner border inlay */ .trading-card::before { content: ''; position: absolute; inset: 5px; border: 1px solid rgba(250, 204, 21, 0.18); border-top: none; border-radius: 0 0 8px 8px; pointer-events: none; z-index: 20; } /* Diagonal gloss sheen */ .trading-card::after { content: ''; position: absolute; inset: 0; background: linear-gradient( 135deg, rgba(255, 255, 255, 0.055) 0%, transparent 45% ); pointer-events: none; z-index: 15; border-radius: inherit; } /* ===================== Card Name Band ===================== */ .card-name-band { background: linear-gradient(to right, #150020 0%, #2c003e 25%, #3a0a4f 50%, #2c003e 75%, #150020 100% ); border-bottom: 2px solid #9a7a28; padding: 9px 14px 8px; text-align: center; position: relative; z-index: 5; } .card-name-band a { color: #e8c858; font-size: 0.88rem; font-weight: bold; text-decoration: none; text-shadow: 0 0 14px rgba(232, 200, 64, 0.35), 0 1px 4px rgba(0, 0, 0, 0.95); letter-spacing: 0.08em; font-family: Georgia, "Times New Roman", serif; text-transform: uppercase; display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } .card-name-band a:hover { color: #ffe070; text-shadow: 0 0 20px rgba(255, 220, 80, 0.55), 0 1px 4px rgba(0, 0, 0, 0.95); text-decoration: none; } /* ===================== Image Stack ===================== */ .image-stack { position: relative; width: 100%; height: 272px; } .image-stack .layer { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: contain; } .image-stack .bg { z-index: 1; } .image-stack .fg { top: 15%; height: 72%; padding: 0 12%; z-index: 2; } .image-stack .frame { z-index: 3; } /* ===================== Card Info Band ===================== */ .card-info-band { background: linear-gradient(to right, #150020 0%, #2c003e 25%, #3a0a4f 50%, #2c003e 75%, #150020 100% ); border-top: 2px solid #9a7a28; padding: 7px 14px 9px; text-align: center; color: #fcd34d; font-size: 0.72rem; font-style: italic; letter-spacing: 0.1em; position: relative; z-index: 5; font-family: Georgia, "Times New Roman", serif; }