/* Supplement to Tailwind CDN — only things that can't be done with utility classes */

/* Smooth scroll */
html { scroll-behavior: smooth; }

/* Custom scrollbar */
::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: #f1f1f1; }
::-webkit-scrollbar-thumb { background: #3F5B7C; border-radius: 3px; }

/* Book cover image — consistent aspect ratio */
.book-cover {
    aspect-ratio: 2 / 3;
    object-fit: cover;
    object-position: center;
}

/* Carousel main image */
.carousel-main {
    aspect-ratio: 2 / 3;
    object-fit: contain;
    background: #f5f5f0;
}

/* Condition badge colours */
.badge-NUEVO       { background: #d1fae5; color: #065f46; }
.badge-EXCELENTE   { background: #dbeafe; color: #1e40af; }
.badge-MUY_BUENO   { background: #ede9fe; color: #4c1d95; }
.badge-BUENO       { background: #fef3c7; color: #92400e; }
.badge-ACEPTABLE   { background: #fee2e2; color: #991b1b; }

/* Fade-in animation for page content */
@keyframes fadeIn {
    from { opacity: 0; transform: translateY(8px); }
    to   { opacity: 1; transform: translateY(0); }
}
.fade-in { animation: fadeIn .3s ease both; }

/* Hero gradient overlay */
.hero-overlay {
    background: linear-gradient(135deg, rgba(63,91,124,.85) 0%, rgba(30,42,60,.6) 100%);
}

/* Sticky header shadow on scroll — toggled via JS */
.header-scrolled { box-shadow: 0 2px 16px rgba(0,0,0,.12); }

/* Category pill active state */
.cat-pill-active {
    background: #3F5B7C;
    color: #fff;
}

/* Print: hide nav, show prices cleanly */
@media print {
    nav, header, footer, .no-print { display: none !important; }
    body { background: #fff; color: #000; }
    a { color: #000; text-decoration: none; }
}

/* Focus ring consistent with accent */
*:focus-visible {
    outline: 2px solid #3F5B7C;
    outline-offset: 2px;
}
