.theme-banner { background: linear-gradient(135deg, #f59e0b 0%, #f97316 100%); border-radius: 0.75rem; padding: 0.75rem 1rem; margin-bottom: 1rem; color: white; box-shadow: 0 2px 8px rgba(245, 158, 11, 0.25); } .theme-content { display: flex; align-items: center; justify-content: space-between; gap: 1rem; } .theme-main { display: flex; align-items: center; gap: 0.75rem; } .theme-icon { font-size: 1.5rem; } .theme-info { display: flex; flex-direction: column; gap: 0.1rem; } .theme-label { font-size: 0.7rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.5px; opacity: 0.85; } .theme-banner .theme-name { font-size: 1.1rem; font-weight: 700; line-height: 1.2; } .theme-meta { display: flex; align-items: center; gap: 0.5rem; flex-shrink: 0; } .theme-bonus { background: rgba(255, 255, 255, 0.25); padding: 0.25rem 0.6rem; border-radius: 1rem; font-size: 0.8rem; font-weight: 600; } .theme-days { background: rgba(0, 0, 0, 0.15); padding: 0.25rem 0.6rem; border-radius: 1rem; font-size: 0.8rem; font-weight: 500; } /* Compact version for headers/wizards */ .theme-banner-compact { display: inline-flex; align-items: center; gap: 0.5rem; background: linear-gradient(135deg, #fef3c7 0%, #fde68a 100%); padding: 0.5rem 1rem; border-radius: 2rem; font-size: 0.85rem; color: #92400e; border: 1px solid #f59e0b; } .theme-banner-compact .theme-icon { font-size: 1rem; } .theme-banner-compact .theme-label { font-weight: 500; opacity: 0.8; } .theme-banner-compact .theme-name { font-weight: 700; } .theme-banner-compact .theme-bonus { background: #f59e0b; color: white; padding: 0.125rem 0.5rem; border-radius: 1rem; font-size: 0.75rem; font-weight: 600; } @media (max-width: 640px) { .theme-banner { padding: 0.6rem 0.75rem; } .theme-content { flex-wrap: wrap; gap: 0.5rem; } .theme-main { flex: 1; min-width: 0; } .theme-icon { font-size: 1.25rem; } .theme-banner .theme-name { font-size: 1rem; } .theme-label { font-size: 0.65rem; } .theme-meta { gap: 0.35rem; } .theme-bonus, .theme-days { font-size: 0.7rem; padding: 0.2rem 0.5rem; } .theme-banner-compact { flex-wrap: wrap; justify-content: center; } }