/* Seasonal layer. Disable with sidee_enabled in config.php. */
.theme-sidee {
    --hw-bg: #101010;
    --hw-surface: #1c1c1a;
    --hw-line: #434035;
    --hw-text: #fffbed;
    --hw-muted: #bfbdb2;
    --hw-orange: #ffd43b;
    --outfit-ink: var(--hw-text);
    --outfit-muted: var(--hw-muted);
    --outfit-paper: var(--hw-surface);
    --outfit-line: var(--hw-line);
    --outfit-blue: var(--hw-orange);
    background: radial-gradient(ellipse at 50% 0, #37301b, var(--hw-bg) 65%);
    color: var(--hw-text);
}
.theme-sidee .site-header {
    background: #141413;
    border-bottom: 1px solid #434035;
    color: #fffbed;
}
.theme-sidee .brand-copy strong { color: #fffbed; }
.theme-sidee .brand-copy small { color: #bfbdb2; }
.theme-sidee .brand-mark {
    background: #ffd43b;
    border-color: #ffd43b;
    color: #241d08;
    box-shadow: 0 0 20px #e2bf4d20;
}
.theme-sidee .site-nav > a {
    color: #fbf6e7;
    background: #312e26;
    border-color: #524e40;
}
.theme-sidee .site-nav > a:hover { background: #434035; color: #f0dfa6; }
.theme-sidee .site-nav .nav-telegram { color: #f5e8bf; }
.theme-sidee .site-nav > a:first-child { color: #fbf6e7; }
.theme-sidee .sidee-ribbon {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 12px;
    padding: 10px 16px;
    background: #ffd43b;
    color: #23211b;
    font-size: 11px;
    font-weight: 800;
    text-align: center;
}
.theme-sidee .site-footer { background: #141413; color: #fffbed; border-color: #434035; }
.theme-sidee .site-footer :is(.footer-copy, .footer-links, .footer-bottom) { color: #bfbdb2; }
.theme-sidee .site-footer::before,
.theme-sidee .bio-powered::before {
    content: "";
    display: block;
    width: 160px;
    height: 76px;
    margin: 0 auto 18px;
    background: none center / contain no-repeat;
    pointer-events: none;
}
.theme-sidee.beacons-link-page .bio-powered { opacity: 1; color: #bfbdb2; }
.theme-sidee .sidee-ribbon::before {
    content: "";
    width: 48px;
    height: 25px;
    flex: 0 0 48px;
    background: none center / contain no-repeat;
    pointer-events: none;
}
.theme-sidee .directory-heading > .directory-container { position: relative; }
.theme-sidee .directory-about-label::before {
    content: "";
    display: block;
    width: 110px;
    height: 52px;
    margin: 0 auto 12px;
    background: none center / contain no-repeat;
    pointer-events: none;
}
.theme-sidee a:focus-visible { outline: 3px solid #edd78e; outline-offset: 5px; }
.theme-sidee :is(button, input, select):focus-visible { outline: 3px solid #edd78e; outline-offset: 3px; }
.theme-sidee .sidee-season-card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    min-height: 136px;
    padding: 12px 24px;
    margin-bottom: 24px;
    overflow: hidden;
    border: 1px solid #4b4430;
    border-radius: 20px;
    background: linear-gradient(115deg, #39362d, #2b2821 65%, #37352c);
    color: var(--hw-text);
}
.theme-sidee .sidee-season-card > div { position: relative; z-index: 1; }
.theme-sidee .sidee-season-card p { margin: 8px 0; color: var(--hw-text); font: 700 clamp(18px, 3vw, 25px)/1.2 "Sora", sans-serif; letter-spacing: -.04em; }
.theme-sidee .sidee-season-card strong { color: var(--hw-orange); }
.theme-sidee .sidee-season-card .sidee-art { width: 200px; flex: 0 0 200px; margin: -12px 0; }

/* Catalog, filters and product QC. Product photos retain their original colors. */
.theme-sidee :is(.catalog-hero, .outfits-intro) { background: transparent; border-color: var(--hw-line); }
.theme-sidee .catalog-toolbar-section { background: #24221c; border-color: var(--hw-line); }
.theme-sidee :is(.category-strip a, .agent-switcher a, .gender-switcher, .catalog-search, .catalog-product-card, .catalog-pagination a, .catalog-empty, .catalog-inline-message) { background: var(--hw-surface); border-color: var(--hw-line); color: var(--hw-text); }
.theme-sidee :is(.catalog-title-row p, .catalog-results-count, .catalog-product-meta span, .catalog-product-meta .catalog-price-note, .catalog-infinite, .catalog-empty span, .catalog-qc-status, .catalog-qc-footer p) { color: var(--hw-muted); }
.theme-sidee :is(.catalog-eyebrow, .catalog-product-meta strong, .catalog-qc-header span, .sheet-card-title span) { color: var(--hw-orange); }
.theme-sidee :is(.category-strip a, .agent-switcher a, .gender-switcher a).is-active,
.theme-sidee :is(.category-strip a, .agent-switcher a):hover { background: #3f3c32; color: #f2e2ad; border-color: #deb735; }
.theme-sidee .gender-switcher a { color: var(--hw-muted); }
.theme-sidee :is(.catalog-buy-button, .catalog-register-button, .catalog-search button, .catalog-qc-buy) { background: var(--hw-orange); color: #241d08; }
.theme-sidee :is(.catalog-register-button small, .catalog-register-button > small) { color: #37352c; }
.theme-sidee :is(.catalog-qc-button, .category-toggle) { background: #423e33; color: #f2e3b2; border-color: #a1811a; }
.theme-sidee :is(.catalog-qc-button, .category-toggle):hover { background: #555042; }
.theme-sidee .catalog-search input { color: var(--hw-text); }
.theme-sidee input::placeholder { color: #c1baa3; opacity: 1; }
.theme-sidee .catalog-search:focus-within { outline: 2px solid #edd78e; outline-offset: 2px; }
.theme-sidee .catalog-search input:focus-visible { outline: none; }
.theme-sidee .catalog-agent-logo { flex-shrink: 0; }
.theme-sidee .catalog-sheet-preview { background: linear-gradient(145deg, #454237, #2c2922); }
.theme-sidee .catalog-product-image > .sheet-preview-badge { background: var(--hw-orange); color: #241d08; }
.theme-sidee .catalog-product-card:hover { border-color: #e1bd48; box-shadow: 0 12px 30px #0005; }
.theme-sidee :is(.catalog-qc-dialog, .catalog-qc-footer) { background: var(--hw-surface); color: var(--hw-text); border-color: var(--hw-line); }
.theme-sidee :is(.catalog-qc-header, .catalog-qc-footer) { border-color: var(--hw-line); }
.theme-sidee .catalog-qc-close { background: #3e3b31; color: var(--hw-text); border-color: #746b4d; }
.theme-sidee .catalog-inline-message strong { color: var(--hw-text); }

/* Outfits, detail pages and the dynamically populated outfit dialog. */
.theme-sidee :is(.outfit-card, .outfit-product-card, .outfit-modal, .outfits-empty, .outfits-pagination a) { background: var(--hw-surface); color: var(--hw-text); border-color: var(--hw-line); }
.theme-sidee :is(.outfits-eyebrow, .outfit-modal-product small) { color: #efdc9d; }
.theme-sidee .outfits-search input:focus { background: #322f27; }
.theme-sidee .outfits-coupon-banner { background: linear-gradient(112deg, #302d25, #38352c 62%, #474438); border-color: #746b4e; }
.theme-sidee .outfits-coupon-banner::before { background: #e6c86630; }
.theme-sidee .outfits-coupon-copy small { color: #f1e1ac; }
.theme-sidee :is(.outfits-coupon-banner > b, .outfit-product-copy > a:not(.listing-report-link)) { background: var(--hw-orange); color: #241d08; }
.theme-sidee .outfits-coupon-banner > b i { color: #241d08; }
.theme-sidee :is(.outfit-card-copy > b, .outfit-modal-product i, .outfit-modal-close) { background: #433f34; color: var(--hw-text); border-color: #746b4d; }
.theme-sidee .outfit-image-lightbox > button { color: #241d08; }
.theme-sidee :is(.outfit-card:hover, .outfit-modal-product:hover) { background: #2f2d25; border-color: #dfb83a; }
.theme-sidee .outfit-modal-look:hover > span { background: #4a463a; }

/* All four Beacons variants, including their inline page styles. */
.theme-sidee.beacons-link-page {
    --bio-bg: var(--hw-bg);
    --bio-card: var(--hw-surface);
    --bio-text: var(--hw-text);
    --bio-border: #c09a1f;
    --bio-shadow: #0005;
}
.theme-sidee.beacons-link-page .bio-page { background: radial-gradient(ellipse at 50% 10%, #39362d, #101010 70%); }
.theme-sidee.beacons-link-page .bio-shell { background: transparent; }
.theme-sidee.beacons-link-page :is(.bio-feature-card, .bio-link-card) { background: #2b2922; color: var(--hw-text); border: 1px solid #70674a; border-radius: 16px; }
.theme-sidee.beacons-link-page .bio-feature-brand { background: linear-gradient(140deg, #4a463a, #ba951e); }
.theme-sidee.beacons-link-page .bio-link-emphasis { background: #3f3c32; border-color: #ffd43b; box-shadow: 0 5px 0 #101010; }
.theme-sidee.beacons-link-page .bio-links a:hover { border-color: #ffd43b; box-shadow: 0 10px 28px #0005; }
.theme-sidee.beacons-link-page .bio-links a:focus-visible { outline-color: #edd78e; }

/* Supporting pages and external-listing confirmation remain legible. */
.theme-sidee :is(.legal-shell, .content-shell, .info-card, .faq-card, .seo-links, .listing-notice, .external-product-dialog) { background: var(--hw-surface); color: var(--hw-text); border-color: var(--hw-line); }
.theme-sidee :is(.legal-shell p, .legal-shell li, .listing-notice p, .external-product-kicker) { color: var(--hw-muted); }
.theme-sidee #external-product-copy p { color: var(--hw-muted); }
.theme-sidee :is(.listing-notice a, .listing-report-link) { color: #f4e8be; }
.theme-sidee .outfit-product-copy > .listing-report-link { background: transparent; color: #f4e8be; }
.theme-sidee :is(.external-product-close, .external-product-back) { background: #3e3b31; color: var(--hw-text); border-color: #746b4d; }
.theme-sidee #external-product-continue { background: var(--hw-orange); color: #241d08; }

/* Motion follows the system accessibility preference. */
@keyframes sidee-float { 0%, 100% { transform: translateY(0) rotate(-1deg); } 50% { transform: translateY(-7px) rotate(1deg); } }
@keyframes sidee-arrive { from { opacity: .4; translate: 0 12px; } to { opacity: 1; translate: 0 0; } }
@keyframes sidee-glow { 0%, 100% { box-shadow: 0 0 0 #e2bf4d00; } 50% { box-shadow: 0 0 24px #e2bf4d24; } }
.theme-sidee[data-sidee-motion="on"] .sidee-art { animation: sidee-float 6s ease-in-out infinite; }
.theme-sidee[data-sidee-motion="on"] .brand-mark { animation: sidee-glow 4s ease-in-out infinite; }
.theme-sidee[data-sidee-motion="on"] :is(.directory-card, .catalog-product-card, .outfit-card, .bio-links > a):nth-child(-n+8) { animation: sidee-arrive .55s ease-out backwards; animation-delay: .05s; }
.theme-sidee[data-sidee-motion="on"] :is(.directory-card, .catalog-product-card, .outfit-card, .bio-links > a):nth-child(2n) { animation-delay: .12s; }
.theme-sidee[data-sidee-motion="on"] :is(.directory-card, .catalog-product-card, .outfit-card, .bio-links > a):nth-child(3n) { animation-delay: .2s; }
.theme-sidee[data-sidee-motion="on"] :is(.outfit-modal[open], .catalog-qc-modal.is-visible .catalog-qc-dialog) { animation: sidee-arrive .25s ease-out; }
.theme-sidee[data-sidee-motion="off"] *,
.theme-sidee[data-sidee-motion="off"] *::before,
.theme-sidee[data-sidee-motion="off"] *::after { animation: none !important; transition: none !important; }
html:has(.theme-sidee[data-sidee-motion="off"]) { scroll-behavior: auto; }

.theme-sidee.directory-home-v2 {
    --directory-bg: #101010;
    --directory-surface: #1c1c1a;
    --directory-text: #fffbed;
    --directory-muted: #bfbdb2;
    --directory-line: #494539;
    background: radial-gradient(ellipse at 50% 15%, #37301b 0, #101010 65%);
    color: var(--directory-text);
}
.theme-sidee .directory-heading { padding: 30px 0 0; border: 0; }
.theme-sidee .directory-badge { background: #36332a; color: #f0dfa6; border: 1px solid #686045; }
.theme-sidee .directory-heading h1 { font-size: clamp(25px, 4vw, 38px); }
.theme-sidee .directory-heading p { color: #bfbdb2; }
.theme-sidee .sidee-hero {
    position: relative;
    display: grid;
    grid-template-columns: 1.05fr 1fr;
    align-items: center;
    margin-top: 28px;
    overflow: hidden;
    border: 1px solid #4b4430;
    border-radius: 24px;
    background: linear-gradient(115deg, #39362d, #2b2821 65%, #37352c);
    text-align: left;
}
.theme-sidee .sidee-hero-copy { padding: 34px 0 34px 38px; position: relative; z-index: 1; }
.theme-sidee .sidee-eyebrow { color: #efdc9c; font-size: 10px; font-weight: 800; letter-spacing: .2em; }
.theme-sidee .sidee-hero h2 { margin: 14px 0; font-family: "Sora", sans-serif; font-size: clamp(32px, 4.6vw, 54px); line-height: 1.08; letter-spacing: -.055em; }
.theme-sidee .sidee-hero h2 em { font-style: normal; color: #ffd43b; }
.theme-sidee .sidee-hero p { max-width: 355px; margin: 0; font-size: 13px; line-height: 1.7; }
.theme-sidee .sidee-cta { display: inline-flex; align-items: center; gap: 22px; margin-top: 22px; padding: 13px 18px; border-radius: 10px; background: #ffd43b; color: #241d08; font-size: 12px; font-weight: 800; text-decoration: none; }
.theme-sidee .sidee-cta:hover { background: #f0dfa6; }
.theme-sidee .sidee-art { width: 100%; height: auto; display: block; }
.theme-sidee .directory-cards-section { padding-top: 22px; }
.theme-sidee .directory-card { background: #1c1c1a; border-color: color-mix(in srgb, var(--card-color) 55%, #36332a); box-shadow: 0 8px 22px #0002; }
.theme-sidee .directory-card:hover { border-color: var(--card-color); box-shadow: 0 8px 26px #0005; }
.theme-sidee .directory-card-visual { background: linear-gradient(145deg, color-mix(in srgb, var(--card-color) 17%, #1c1c1a), #1c1c1a); }
.theme-sidee .directory-card-note { background: #292721ed; color: #f7edce; border: 1px solid #665e44; }
.theme-sidee .directory-card-footer { color: #fffbed; }
.theme-sidee :is(.directory-about-label, .directory-about summary small, .directory-about-content, .directory-links-shell > p) { color: #bfbdb2; }
.theme-sidee .directory-about-label strong { color: #f3e5b7; }
.theme-sidee :is(.directory-about, .directory-link-grid a) { background: #1c1c1a; color: #fbf6e7; }
.theme-sidee .directory-about-content { border-color: #494539; }
.theme-sidee .directory-link-grid a:hover { color: #f0dfa6; border-color: #ffd43b; }

/* Small corner stickers stay inside the image area and never intercept taps. */
.theme-sidee .catalog-product-card:not(.catalog-sheet-card) {
    position: relative;
    isolation: isolate;
}
.theme-sidee .catalog-product-card:not(.catalog-sheet-card)::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    width: 44px;
    height: 44px;
    background: none right bottom / contain no-repeat;
    opacity: .65;
    z-index: -1;
    pointer-events: none;
}
.theme-sidee .bio-feature-image { position: relative; }
.theme-sidee :is(.catalog-product-image, .outfit-card-image, .outfit-product-image, .directory-card-visual, .bio-feature-image)::after {
    content: "";
    position: absolute;
    left: 7px;
    bottom: 6px;
    width: clamp(32px, 3.5vw, 46px);
    aspect-ratio: 1;
    z-index: 2;
    background: none center / contain no-repeat;
    filter: drop-shadow(0 3px 3px #23221c55);
    transform: rotate(-12deg);
    pointer-events: none;
}
.theme-sidee :is(.catalog-product-card, .outfit-card, .outfit-product-card, .directory-card, .bio-feature-card):nth-child(even) > :is(.outfit-card-image, .outfit-product-image, .directory-card-visual, .bio-feature-image)::after,
.theme-sidee .catalog-product-card:nth-child(even) .catalog-product-image::after { transform: rotate(10deg); }

@media (max-width: 620px) {
    .theme-sidee .catalog-controls { grid-template-columns: auto 1fr; }
    .theme-sidee .catalog-search { grid-column: 1 / -1; }
    .theme-sidee .catalog-results-count { grid-column: 2; justify-self: end; }
    .theme-sidee .sidee-ribbon { flex-wrap: wrap; }
    .theme-sidee .sidee-season-card { padding: 14px; min-height: 125px; }
    .theme-sidee .sidee-season-card .sidee-art { width: 130px; flex-basis: 130px; }
    .theme-sidee .sidee-season-card .sidee-eyebrow { font-size: 8px; letter-spacing: .1em; }
    .theme-sidee .sidee-ribbon { gap: 6px; font-size: 9px; }
    .theme-sidee .sidee-ribbon > span:first-child,
    .theme-sidee .sidee-ribbon > span:last-child { display: none; }
    .theme-sidee .sidee-hero { grid-template-columns: 1fr; margin-top: 22px; }
    .theme-sidee .sidee-hero-copy { padding: 28px 24px 0; }
    .theme-sidee .sidee-hero h2 { font-size: 40px; }
    .theme-sidee .sidee-hero p { max-width: none; }
    .theme-sidee .sidee-art { width: min(100%, 360px); justify-self: center; margin-top: -8px; }
}
@media (prefers-reduced-motion: reduce) {
    html:has(.theme-sidee) { scroll-behavior: auto; }
    .theme-sidee *, .theme-sidee *::before, .theme-sidee *::after { animation: none !important; transition: none !important; }
    .theme-sidee .directory-card { transition: none; }
    .theme-sidee .directory-card:hover { transform: none; }
}

.theme-sidee .site-footer::before,.theme-sidee .sidee-ribbon::before,.theme-sidee .directory-about-label::before,.theme-sidee .catalog-product-image::after,.theme-sidee .directory-card-visual::after{display:none}
