/**
 * Header — announcement bar, sticky navbar, mega menu, search panel, mobile nav.
 * Loaded globally en home, catalog, categoria, ficha, carrito, cuenta, contacto y legales.
 * El flujo checkout reemplaza por completo el header (ver checkout/header-minimal.php).
 *
 * @package LovelyGolden
 */

/* ==== ANNOUNCEMENT BAR ==== */
.lg-announcement { background:var(--lg-ink-primary, #2D241A); color:var(--lg-accent-soft, #F5DDAF); font-size:.8125rem; }
.lg-announcement__inner { max-width:1320px; margin:0 auto; padding:.5rem var(--lg-gutter, 1.75rem); text-align:center; min-height:1.75rem; position:relative; }
.lg-announcement__list { list-style:none; margin:0; padding:0; }
.lg-announcement__item { display:none; }
.lg-announcement__item.is-active { display:block; }

/* ==== HEADER ==== */
.lg-header { position:sticky; top:0; z-index:50; background:rgba(251,246,238,.92); backdrop-filter:saturate(140%) blur(12px); -webkit-backdrop-filter:saturate(140%) blur(12px); border-bottom:1px solid var(--lg-border-subtle, #E8DCC7); }
.lg-header__inner { max-width:1320px; margin:0 auto; padding:.75rem var(--lg-gutter, 1.75rem); display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:1.5rem; }
@media (max-width: 980px) { .lg-header__inner { grid-template-columns:auto 1fr auto; gap:.75rem; } }

.lg-header__menu-toggle { display:none; background:transparent; border:none; padding:.5rem; cursor:pointer; border-radius:var(--lg-radius-pill, 999px); }
.lg-header__menu-toggle:focus-visible { outline:2px solid var(--lg-brand-primary, #C28A3E); outline-offset:3px; }
.lg-burger { display:inline-flex; flex-direction:column; gap:4px; width:22px; }
.lg-burger > span { display:block; width:100%; height:1.5px; background:var(--lg-ink-primary, #2D241A); border-radius:2px; transition:transform var(--lg-dur-fast, 180ms) var(--lg-ease, ease), opacity var(--lg-dur-fast, 180ms) var(--lg-ease, ease); }
.is-open .lg-burger > span:nth-child(1) { transform:translateY(5.5px) rotate(45deg); }
.is-open .lg-burger > span:nth-child(2) { opacity:0; }
.is-open .lg-burger > span:nth-child(3) { transform:translateY(-5.5px) rotate(-45deg); }
@media (max-width: 980px) { .lg-header__menu-toggle { display:inline-flex; align-items:center; justify-content:center; } }

.lg-header__logo { display:inline-flex; align-items:center; text-decoration:none; }
.lg-header__logo-img { display:block; height:32px; width:auto; }
.lg-header__logo .custom-logo { max-height:32px; width:auto; }

.lg-header__nav { display:flex; justify-content:center; }
@media (max-width: 980px) { .lg-header__nav { display:none; } }
.lg-nav { list-style:none; display:flex; gap:.25rem; margin:0; padding:0; }
.lg-nav__link { display:inline-flex; align-items:center; gap:.25rem; padding:.625rem .9rem; color:var(--lg-ink-primary, #2D241A); text-decoration:none; font-size:.95rem; font-weight:500; border-radius:var(--lg-radius-pill, 999px); transition:background-color var(--lg-dur-fast, 180ms) var(--lg-ease, ease); }
.lg-nav__link:hover, .lg-nav__link[aria-expanded="true"] { background:var(--lg-bg-alt, #F5EDDD); }
.lg-nav__link:focus-visible { outline:2px solid var(--lg-brand-primary, #C28A3E); outline-offset:3px; }

/* ==== ACTIONS ==== */
.lg-header__actions { display:flex; align-items:center; gap:.25rem; }
.lg-icon-btn { position:relative; display:inline-flex; align-items:center; justify-content:center; width:40px; height:40px; background:transparent; border:none; border-radius:var(--lg-radius-pill, 999px); color:var(--lg-ink-primary, #2D241A); cursor:pointer; text-decoration:none; transition:background-color var(--lg-dur-fast, 180ms) var(--lg-ease, ease); }
.lg-icon-btn:hover { background:var(--lg-bg-alt, #F5EDDD); }
.lg-icon-btn:focus-visible { outline:2px solid var(--lg-brand-primary, #C28A3E); outline-offset:2px; }
.lg-icon-btn__count { position:absolute; top:2px; right:2px; min-width:18px; height:18px; padding:0 4px; border-radius:var(--lg-radius-pill, 999px); background:var(--lg-brand-primary, #C28A3E); color:var(--lg-bg-base, #FBF6EE); font-size:.6875rem; font-weight:600; line-height:18px; text-align:center; }
.lg-icon-btn__count[hidden] { display:none; }

.lg-lang { display:inline-flex; align-items:center; gap:.125rem; padding:.125rem; border:1px solid var(--lg-border-subtle, #E8DCC7); border-radius:var(--lg-radius-pill, 999px); }
@media (max-width: 600px) { .lg-lang { display:none; } }
.lg-lang__link { padding:.25rem .5rem; font-size:.75rem; font-weight:600; letter-spacing:.04em; color:var(--lg-ink-muted, #8B7A66); border-radius:var(--lg-radius-pill, 999px); text-decoration:none; transition:background-color var(--lg-dur-fast, 180ms) var(--lg-ease, ease), color var(--lg-dur-fast, 180ms) var(--lg-ease, ease); }
.lg-lang__link:hover, .lg-lang__link[aria-current="true"] { background:var(--lg-ink-primary, #2D241A); color:var(--lg-bg-base, #FBF6EE); }

/* ==== MEGA MENU ==== */
.lg-nav__item { position:relative; }
.lg-mega { position:absolute; top:calc(100% + 14px); left:0; min-width:880px; background:var(--lg-bg-card, #FFFFFF); border:1px solid var(--lg-border-subtle, #E8DCC7); border-radius:var(--lg-radius-lg, 22px); box-shadow:0 22px 48px rgba(45,36,26,.10); padding:1.5rem; opacity:0; transform:translateY(-4px); transition:opacity var(--lg-dur-fast, 180ms) var(--lg-ease, ease), transform var(--lg-dur-fast, 180ms) var(--lg-ease, ease); pointer-events:none; }
.lg-nav__item.is-open .lg-mega { opacity:1; transform:translateY(0); pointer-events:auto; }
.lg-mega[hidden] { display:none; }
.lg-mega__inner { display:grid; grid-template-columns:repeat(3, 1fr) 1.4fr; gap:1.5rem; }
.lg-mega__col-label { margin:0 0 .625rem; font-family:var(--lg-font-display, serif); font-size:.875rem; font-weight:500; color:var(--lg-secondary, #8B6135); letter-spacing:.02em; font-variation-settings:"SOFT" 50; }
.lg-mega__list { list-style:none; margin:0; padding:0; display:grid; gap:.125rem; }
.lg-mega__link { display:block; padding:.375rem .25rem; color:var(--lg-ink-primary, #2D241A); text-decoration:none; font-size:.9375rem; border-radius:var(--lg-radius-sm, 8px); transition:background-color var(--lg-dur-fast, 180ms) var(--lg-ease, ease), color var(--lg-dur-fast, 180ms) var(--lg-ease, ease); }
.lg-mega__link:hover { color:var(--lg-brand-primary, #C28A3E); }
.lg-mega__collections-list { list-style:none; margin:0; padding:0; display:grid; grid-template-columns:1fr 1fr; gap:.5rem; }
.lg-mega__collection { display:flex; align-items:center; gap:.625rem; padding:.375rem; border-radius:var(--lg-radius-md, 14px); text-decoration:none; color:var(--lg-ink-primary, #2D241A); transition:background-color var(--lg-dur-fast, 180ms) var(--lg-ease, ease); }
.lg-mega__collection:hover { background:var(--lg-bg-alt, #F5EDDD); }
.lg-mega__collection-media { width:48px; height:48px; flex-shrink:0; border-radius:var(--lg-radius-sm, 8px); overflow:hidden; background:var(--lg-bg-alt, #F5EDDD); }
.lg-mega__collection-img { width:100%; height:100%; object-fit:cover; display:block; }
.lg-mega__collection-label { font-size:.9375rem; font-weight:500; }

/* ==== SEARCH PANEL ==== */
.lg-header__search { border-top:1px solid var(--lg-border-subtle, #E8DCC7); background:var(--lg-bg-base, #FBF6EE); }
.lg-header__search[hidden] { display:none; }
.lg-header__search-inner { max-width:1320px; margin:0 auto; padding:1rem var(--lg-gutter, 1.75rem); }
.lg-search-form { display:flex; align-items:center; gap:.5rem; background:var(--lg-bg-card, #FFFFFF); border:1px solid var(--lg-border-subtle, #E8DCC7); border-radius:var(--lg-radius-pill, 999px); padding:.25rem .25rem .25rem 1.125rem; }
.lg-search-form__input { flex:1; border:none; background:transparent; padding:.625rem 0; font-family:var(--lg-font-body, sans-serif); font-size:1rem; color:var(--lg-ink-primary, #2D241A); }
.lg-search-form__input:focus { outline:none; }
.lg-search-form__submit { width:38px; height:38px; border:none; background:var(--lg-ink-primary, #2D241A); color:var(--lg-bg-base, #FBF6EE); border-radius:var(--lg-radius-pill, 999px); cursor:pointer; display:inline-flex; align-items:center; justify-content:center; }
.lg-search-form__submit:hover { background:var(--lg-brand-primary, #C28A3E); }

/* ==== MOBILE NAV ==== */
.lg-header__mobile-nav { border-top:1px solid var(--lg-border-subtle, #E8DCC7); background:var(--lg-bg-base, #FBF6EE); padding:1rem var(--lg-gutter, 1rem); }
.lg-header__mobile-nav[hidden] { display:none; }
.lg-mobile-nav { list-style:none; margin:0; padding:0; display:grid; gap:.25rem; }
.lg-mobile-nav__link { display:block; padding:.75rem 0; font-size:1.0625rem; color:var(--lg-ink-primary, #2D241A); text-decoration:none; border-bottom:1px solid var(--lg-border-subtle, #E8DCC7); }
.lg-mobile-nav__footer { display:grid; gap:.25rem; margin-top:1rem; padding-top:1rem; border-top:1px solid var(--lg-border-subtle, #E8DCC7); }
.lg-mobile-nav__footer .lg-mobile-nav__link { border-bottom:none; padding:.5rem 0; color:var(--lg-ink-secondary, #5C4D3E); font-size:.9375rem; }

@media (prefers-reduced-motion: reduce) {
	.lg-mega { transition:none; }
}
