/* ==============================================================
   Gothic Y2K Revival
   Tmavá fialovo-čierna, serify, occult symboly, latinské eyebrow, rímske číslice
   Pre alternatívnu módu, šperky, parfumy, sviečky, tarot, music merch
   Lock-down — pevná paleta zachovaná cez ThemeRegistry
   Design source: Navrh novych sablon/eshop-design-templates-vol2.md (Šablóna 7)
   ============================================================== */

.theme-gothic-y2k {
    background-color: #120920;
    color: #E8DDF5;
    --gt-bg-frame: #0A0612;
    --gt-bg-base: #120920;
    --gt-bg-elevated: #1A0E2E;
    --gt-text-primary: #E8DDF5;
    --gt-text-secondary: #C9B8E8;
    --gt-text-tertiary: #A892C9;
    --gt-text-quiet: #8B6FB8;
    --gt-text-mute: #6B4F8B;
    --gt-accent: #B891E0;
    --gt-glow: #2A1840;
    --gt-border: #2A1840;
    --gt-border-card: #3D2455;
    font-family: 'Playfair Display', 'EB Garamond', Georgia, serif;
}

/* Vonkajší rám */
.theme-gothic-y2k {
    padding: 14px;
    background: var(--gt-bg-frame);
    box-sizing: border-box;
}

.theme-gothic-y2k > nav,
.theme-gothic-y2k > main,
.theme-gothic-y2k > footer {
    background: var(--gt-bg-base);
    border: 1px solid var(--gt-border-card);
    border-radius: 4px;
}

/* Top occult bar pred header */
.theme-gothic-y2k::before {
    content: 'XXVIII · IV · MMXXVI ⊹ NOX VENIT';
    display: block;
    text-align: center;
    font-family: 'JetBrains Mono', monospace;
    font-size: 9px;
    color: var(--gt-text-quiet);
    text-transform: uppercase;
    letter-spacing: 3px;
    padding: 8px 0;
    background: var(--gt-bg-frame);
}

/* Nav (centrovaná) */
.theme-gothic-y2k .storefront-nav {
    background: var(--gt-bg-base);
    border-bottom: 1px solid var(--gt-border);
    box-shadow: none;
    padding: 22px 0 16px;
}
.theme-gothic-y2k .storefront-nav-inner {
    flex-direction: column;
    gap: 12px;
    height: auto;
    text-align: center;
}
.theme-gothic-y2k .storefront-logo {
    color: var(--gt-text-primary);
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 32px;
    font-weight: 400;
    letter-spacing: 8px;
    text-transform: uppercase;
}
.theme-gothic-y2k .storefront-nav-link {
    color: var(--gt-text-secondary);
    font-family: 'JetBrains Mono', monospace;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 2px;
}
.theme-gothic-y2k .storefront-nav-link:hover {
    color: var(--gt-accent);
    font-style: italic;
}

.theme-gothic-y2k .storefront-badge {
    background: var(--gt-accent);
    color: var(--gt-bg-base);
    border-radius: 2px;
    font-family: 'JetBrains Mono', monospace;
    font-size: 9px;
    text-transform: uppercase;
    letter-spacing: 2px;
}

.theme-gothic-y2k .storefront-hamburger span { background: var(--gt-text-primary); }
.theme-gothic-y2k .storefront-mobile-menu { background: var(--gt-bg-elevated); border-bottom: 1px solid var(--gt-border); }
.theme-gothic-y2k .storefront-mobile-link {
    color: var(--gt-text-secondary);
    font-family: 'JetBrains Mono', monospace;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 2px;
    border-bottom: 1px solid var(--gt-border);
}

/* Hero */
.theme-gothic-y2k .storefront-hero {
    padding: 80px 32px;
    background: radial-gradient(ellipse at center, var(--gt-glow) 0%, var(--gt-bg-base) 70%);
    border-bottom: 1px solid var(--gt-border);
    text-align: center;
    transition: all 500ms ease-in-out;
}
.theme-gothic-y2k .storefront-hero-title {
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 36px;
    font-weight: 400;
    color: var(--gt-text-primary);
    line-height: 1.05;
    letter-spacing: -1px;
    margin: 0 0 16px;
}
.theme-gothic-y2k .storefront-hero-title::before {
    content: '✦ ';
    color: var(--gt-accent);
}
.theme-gothic-y2k .storefront-hero-title::after {
    content: ' ✦';
    color: var(--gt-accent);
}
.theme-gothic-y2k .storefront-hero-desc {
    font-style: italic;
    color: var(--gt-text-secondary);
    font-size: 16px;
    line-height: 1.6;
}
.theme-gothic-y2k .storefront-hero-cta {
    background: transparent !important;
    color: var(--gt-text-primary) !important;
    border: 1px solid var(--gt-accent);
    border-radius: 2px;
    padding: 12px 32px;
    font-family: 'JetBrains Mono', monospace;
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 3px;
    font-weight: 400;
    box-shadow: none;
    transition: all 500ms ease-in-out;
}
.theme-gothic-y2k .storefront-hero-cta:hover {
    background: var(--gt-accent) !important;
    color: var(--gt-bg-base) !important;
    transform: none;
}

/* Cards — tarot ratio 3:4 */
.theme-gothic-y2k .storefront-products-grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 0;
    border-top: 1px solid var(--gt-border);
}
@media (max-width: 768px) {
    .theme-gothic-y2k .storefront-products-grid { grid-template-columns: repeat(2, 1fr); }
}
.theme-gothic-y2k .storefront-card {
    background: var(--gt-bg-elevated);
    border: 1px solid var(--gt-border-card);
    border-radius: 4px;
    margin: -1px;
    transition: all 500ms ease-in-out;
}
.theme-gothic-y2k .storefront-card:hover {
    background: #221541;
    border-color: var(--gt-accent);
    transform: none;
    box-shadow: 0 0 24px rgba(184, 145, 224, 0.2);
    z-index: 1;
}
.theme-gothic-y2k .storefront-card-image {
    height: 320px;
    background: var(--gt-bg-base);
    border-bottom: 1px solid var(--gt-border);
    border-radius: 0;
    position: relative;
}
.theme-gothic-y2k .storefront-card-body {
    padding: 16px;
    text-align: center;
}
.theme-gothic-y2k .storefront-card-title {
    color: var(--gt-text-primary);
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 0;
}
.theme-gothic-y2k .storefront-card-price {
    color: var(--gt-accent);
    font-family: 'JetBrains Mono', monospace;
    font-size: 11px;
    letter-spacing: 1px;
}
.theme-gothic-y2k .storefront-card-price-old { color: var(--gt-text-quiet); }
.theme-gothic-y2k .storefront-card-badge {
    background: var(--gt-accent);
    color: var(--gt-bg-base);
    border-radius: 2px;
    font-family: 'JetBrains Mono', monospace;
}

/* Section */
.theme-gothic-y2k .storefront-section-title {
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 28px;
    font-weight: 400;
    color: var(--gt-text-primary);
    text-align: center;
    letter-spacing: -0.5px;
    padding: 32px 0;
}
.theme-gothic-y2k .storefront-section-title::before { content: '⊹ '; color: var(--gt-accent); }
.theme-gothic-y2k .storefront-section-title::after { content: ' ⊹'; color: var(--gt-accent); }

/* Listing */
.theme-gothic-y2k .storefront-listing-title {
    font-family: 'Playfair Display', Georgia, serif;
    color: var(--gt-text-primary);
    font-size: 32px;
    font-weight: 400;
    letter-spacing: -0.5px;
}
.theme-gothic-y2k .storefront-sidebar-box {
    background: var(--gt-bg-elevated);
    border: 1px solid var(--gt-border-card);
    border-radius: 4px;
}
.theme-gothic-y2k .storefront-sidebar-title {
    color: var(--gt-text-primary);
    font-family: 'JetBrains Mono', monospace;
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 3px;
}
.theme-gothic-y2k .storefront-search-input {
    background: var(--gt-bg-base);
    border: 1px solid var(--gt-border-card);
    color: var(--gt-text-primary);
    border-radius: 2px;
    font-family: 'JetBrains Mono', monospace;
    font-size: 12px;
}
.theme-gothic-y2k .storefront-search-input::placeholder { color: var(--gt-text-mute); }
.theme-gothic-y2k .storefront-search-input:focus {
    border-color: var(--gt-accent);
    box-shadow: 0 0 8px rgba(184, 145, 224, 0.3);
}
.theme-gothic-y2k .storefront-category-link {
    color: var(--gt-text-secondary);
    font-family: 'JetBrains Mono', monospace;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 2px;
}
.theme-gothic-y2k .storefront-category-link.active {
    background: var(--gt-glow);
    color: var(--gt-accent);
}

/* Pagination */
.theme-gothic-y2k .storefront-page-link {
    background: var(--gt-bg-elevated);
    border: 1px solid var(--gt-border-card);
    color: var(--gt-text-secondary);
    border-radius: 2px;
    font-family: 'JetBrains Mono', monospace;
}
.theme-gothic-y2k .storefront-page-link.active {
    background: var(--gt-accent);
    color: var(--gt-bg-base);
    border-color: var(--gt-accent);
}

/* Detail */
.theme-gothic-y2k .storefront-detail-title {
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 36px;
    font-weight: 400;
    color: var(--gt-text-primary);
    letter-spacing: -1px;
    line-height: 1.05;
}
.theme-gothic-y2k .storefront-detail-price {
    color: var(--gt-accent);
    font-family: 'JetBrains Mono', monospace;
    font-size: 22px;
    letter-spacing: 1px;
}
.theme-gothic-y2k .storefront-detail-btn {
    background: transparent !important;
    color: var(--gt-text-primary) !important;
    border: 1px solid var(--gt-accent);
    border-radius: 2px;
    padding: 14px 32px;
    font-family: 'JetBrains Mono', monospace;
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 3px;
    font-weight: 400;
    box-shadow: none;
    transition: all 500ms ease-in-out;
}
.theme-gothic-y2k .storefront-detail-btn:hover {
    background: var(--gt-accent) !important;
    color: var(--gt-bg-base) !important;
}
.theme-gothic-y2k .storefront-breadcrumb a {
    color: var(--gt-text-quiet);
    font-family: 'JetBrains Mono', monospace;
    font-size: 10px;
    text-transform: uppercase;
}

/* Page banner */
.theme-gothic-y2k .storefront-page-banner {
    padding: 80px 24px;
    background: radial-gradient(ellipse at center, var(--gt-glow) 0%, var(--gt-bg-base) 70%);
    border-bottom: 1px solid var(--gt-border);
}
.theme-gothic-y2k .storefront-page-banner-title {
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 36px;
    font-weight: 400;
    color: var(--gt-text-primary);
    text-align: center;
    letter-spacing: -0.5px;
}

.theme-gothic-y2k .storefront-shop-name {
    color: var(--gt-text-primary);
    font-family: 'Playfair Display', Georgia, serif;
    letter-spacing: 4px;
    text-transform: uppercase;
}

/* Footer */
.theme-gothic-y2k .storefront-footer {
    background: var(--gt-bg-frame);
    border-top: 1px solid var(--gt-border);
}
.theme-gothic-y2k .storefront-footer-link {
    color: var(--gt-text-quiet);
    font-family: 'JetBrains Mono', monospace;
    font-size: 9px;
    text-transform: uppercase;
    letter-spacing: 3px;
}
.theme-gothic-y2k .storefront-footer-link:hover { color: var(--gt-accent); }
.theme-gothic-y2k .storefront-footer-text {
    color: var(--gt-text-mute);
    font-family: 'JetBrains Mono', monospace;
    font-size: 9px;
    letter-spacing: 2px;
}

/* Cookie */
.theme-gothic-y2k .storefront-cookie-banner { background: var(--gt-bg-elevated); border-color: var(--gt-border-card); }
.theme-gothic-y2k .storefront-cookie-title { color: var(--gt-text-primary); font-family: 'Playfair Display', Georgia, serif; }
.theme-gothic-y2k .storefront-cookie-text { color: var(--gt-text-secondary); }
.theme-gothic-y2k .storefront-cookie-link { color: var(--gt-accent); }
