@font-face { font-family: 'Safi'; src: url('../fonts/safi.woff2'); font-weight: 400; font-style: normal; font-display: swap; }
* { font-family: 'Safi', sans-serif !important; box-sizing: border-box; }
body { margin: 0; padding: 0; background-color: #000; color: #fff; line-height: 1.5; }

.container { max-width: 900px; margin: 0 auto; padding: 2rem 1.5rem; }

.hero { margin-bottom: 4rem; }
.hero h1 { font-size: 2.3rem; margin: 0; }
.subtitle { font-size: 1.15rem; color: #666; margin: 0.5rem 0; }
.back-btn { display: inline-block; color: #666; text-decoration: none; font-size: 1.15rem; margin-bottom: 1rem; }
.back-btn:hover { color: #fff; }

.category-section { margin-bottom: 5rem; }
.category-section h3 { 
    font-size: 2rem; 
    text-transform: lowercase; 
    margin-bottom: 1.5rem; 
    color: #fff; 
}
.section-cover { width: 100%; height: 250px; object-fit: cover; border-radius: 8px; margin-bottom: 1.5rem; background: #111; }

.tier-group { display: flex; margin-bottom: 1rem; border: 1px solid #333; border-radius: 4px; }
.tier-badge { width: 50px; display: flex; align-items: center; justify-content: center; font-weight: bold; border-right: 1px solid #333; font-size: 1.4rem; color: #fff; }
.items { padding: 1rem 1.5rem; flex-grow: 1; }
.item { margin-bottom: 1rem; font-size: 1.15rem; color: #fff; }
.item:last-child { margin-bottom: 0; }

.genre { color: #666; font-size: 1rem; }
.note { color: #666; font-size: 1rem; font-style: italic; }
.item a { color: #aaa; text-decoration: none; font-size: 1rem; margin-left: 8px; }
.item a:hover { color: #fff; }

@media (max-width: 480px) {
    .tier-group { flex-direction: column; }
    .tier-badge { width: 100%; border-right: none; border-bottom: 1px solid #333; padding: 0.5rem 0; }
}