/*
  /static/css/navbar.css
  Three-trigger mega menu: Ideas & Inspo / Product Guides / Shop Now
  + Mobile drawer with accordion sections
*/

/* ── DISCLOSURE BAR ───────────────────────────────────── */
.disclosure-bar{background:var(--gray-900);color:rgba(255,255,255,.82);padding:9px 24px;text-align:center;font-size:13px;font-weight:600}
.disclosure-bar a{color:rgba(255,255,255,.6);text-decoration:underline}

/* ── NAVBAR BASE ──────────────────────────────────────── */
.navbar{background:rgba(255,255,255,0.97);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 2px 12px rgba(126,8,130,0.08);position:sticky;top:0;z-index:200}
.nav-container{max-width:1400px;margin:0 auto;padding:12px 24px;display:flex;align-items:center;gap:12px}
.logo{height:46px;flex-shrink:0;display:block}

/* ── SEARCH ───────────────────────────────────────────── */
.search-box{position:relative;display:flex;align-items:center;margin-left:4px;flex-shrink:1;min-width:0}
.search-input{width:210px;max-width:100%;padding:9px 40px 9px 16px;border:2px solid var(--gray-200,#eee);border-radius:24px;font-family:'Nunito',sans-serif;font-size:14px;font-weight:600;transition:all .3s;background:var(--gray-100,#f5f5f5);box-sizing:border-box}
.search-input:focus{outline:none;border-color:var(--brand,#7e0882);background:#fff;box-shadow:0 4px 16px rgba(126,8,130,.15);border-radius:24px 24px 0 0}
.search-input::placeholder{color:var(--gray-600,#757575);font-weight:500}
.search-btn{position:absolute;right:12px;background:none;border:none;cursor:pointer;font-size:17px;color:var(--gray-600,#757575);padding:6px;transition:all .2s;display:flex;align-items:center;z-index:10;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.search-btn:hover{color:var(--brand,#7e0882);transform:scale(1.1)}
.search-suggestions{position:absolute;top:100%;left:0;width:100%;min-width:280px;background:#fff;border:2px solid var(--brand,#7e0882);border-top:none;border-radius:0 0 16px 16px;box-shadow:0 12px 32px rgba(126,8,130,.18);max-height:420px;overflow-y:auto;z-index:999;display:none}
.search-suggestions.active{display:block}
.suggestion-item{display:flex;align-items:center;gap:12px;padding:12px 16px;cursor:pointer;transition:all .2s;border-bottom:1px solid var(--gray-100,#f5f5f5);text-decoration:none;color:inherit}
.suggestion-item:last-child{border-bottom:none}
.suggestion-item:hover{background:var(--brand-pale,rgba(126,8,130,0.07))}
.suggestion-thumb{width:44px;height:44px;border-radius:8px;object-fit:cover;flex-shrink:0;background:var(--gray-100,#f5f5f5)}
.suggestion-title{font-size:14px;font-weight:700;margin-bottom:3px}
.suggestion-meta{font-size:12px;color:var(--gray-600,#757575)}
.suggestion-category{background:var(--brand-pale,rgba(126,8,130,0.07));color:var(--brand,#7e0882);padding:2px 8px;border-radius:10px;font-weight:700;font-size:11px}
.search-footer{padding:10px 16px;background:var(--gray-100,#f5f5f5);text-align:center;border-radius:0 0 14px 14px}
.search-footer a{color:var(--brand,#7e0882);font-weight:700;font-size:13px}
.no-results-search{padding:28px 16px;text-align:center;color:var(--gray-600,#757575)}
.highlight{background:rgba(126,8,130,.14);font-weight:800;color:var(--brand,#7e0882);padding:0 2px;border-radius:2px}
.search-loading{padding:24px;text-align:center;color:var(--gray-600,#757575);font-size:14px}
.loading-dots{display:inline-flex;gap:4px;margin-left:8px}
.loading-dots span{width:6px;height:6px;background:var(--brand,#7e0882);border-radius:50%;animation:dot-bounce 1.2s infinite}
.loading-dots span:nth-child(2){animation-delay:.2s}
.loading-dots span:nth-child(3){animation-delay:.4s}
@keyframes dot-bounce{0%,80%,100%{transform:scale(.6);opacity:.4}40%{transform:scale(1);opacity:1}}

/* ── DESKTOP NAV LINKS ────────────────────────────────── */
.nav-menu{display:flex;gap:2px;align-items:center;margin-left:auto;flex-shrink:0}
.nav-link{color:var(--gray-800,#424242);font-family:'Nunito',sans-serif;font-weight:700;font-size:14px;padding:8px 12px;border-radius:8px;transition:all .2s;white-space:nowrap;background:none;border:none;cursor:pointer;display:flex;align-items:center;gap:4px;text-decoration:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.nav-link:hover,.nav-link.active{background:var(--brand-pale,rgba(126,8,130,0.07));color:var(--brand,#7e0882)}

/* Product Guides trigger — outlined pill */
.nav-link--guides{border:2px solid var(--brand,#7e0882);color:var(--brand,#7e0882);padding:7px 14px}
.nav-link--guides:hover{background:var(--brand,#7e0882);color:#fff}

/* Shop Now trigger — filled pill */
.nav-link--shop{background:var(--brand,#7e0882);color:#fff;padding:8px 16px;border-radius:20px}
.nav-link--shop:hover{background:var(--brand-dark,#5a0660);color:#fff}

/* Dropdown arrow */
.mega-menu-trigger::after{content:'▾';font-size:9px;opacity:.65;transition:transform .22s;margin-left:2px}
.mega-menu-wrapper.mega-open .mega-menu-trigger::after{transform:rotate(180deg)}

/* ── MEGA MENU PANEL ──────────────────────────────────── */
.mega-menu-wrapper{position:relative}
.mega-menu{position:fixed;top:auto;left:50%;transform:translateX(-50%) translateY(-6px);width:min(1200px,calc(100vw - 48px));background:#fff;box-shadow:0 16px 56px rgba(126,8,130,.16);border-top:3px solid var(--brand,#7e0882);border-radius:0 0 20px 20px;padding:28px 32px 24px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s,visibility 0s .2s,transform .2s;z-index:198}
.mega-menu.mega-open{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0);transition:opacity .16s,visibility 0s 0s,transform .16s}
.mega-menu-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}

/* Section headers */
.mega-menu-section h4{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:1px;color:var(--brand,#7e0882);margin-bottom:6px;padding-bottom:7px;border-bottom:2px solid var(--brand-pale,rgba(126,8,130,0.07))}
.mega-menu-section__sub{font-size:11px;color:var(--gray-600,#757575);font-weight:600;margin-bottom:10px;line-height:1.4}

/* Links */
.mega-menu-links{list-style:none;display:flex;flex-direction:column;gap:2px}
.mega-menu-links li a{color:var(--gray-800,#424242);font-size:13.5px;font-weight:600;padding:5px 8px;border-radius:6px;display:flex;align-items:center;gap:8px;transition:all .18s;text-decoration:none}
.mega-menu-links li a:hover{background:var(--brand-pale,rgba(126,8,130,0.07));color:var(--brand,#7e0882);padding-left:12px}
.mega-menu-links .icon{font-size:14px;width:18px;text-align:center;flex-shrink:0}

/* Featured column — Ideas blog CTA */
.mega-menu-section--featured{display:flex;flex-direction:column;gap:12px}
.mega-blog-cta{display:block;background:linear-gradient(120deg,var(--brand-dark,#5a0660),var(--brand-light,#a020a8));color:#fff;border-radius:12px;padding:14px 16px;text-decoration:none;transition:transform .2s}
.mega-blog-cta:hover{transform:translateY(-2px)}
.mega-blog-cta__label{display:block;font-weight:800;font-size:14px;margin-bottom:4px}
.mega-blog-cta__sub{font-size:12px;opacity:.85}
.mega-tags{display:flex;flex-wrap:wrap;gap:6px}
.mega-tag{background:var(--brand-pale,rgba(126,8,130,0.07));color:var(--brand,#7e0882);border-radius:20px;padding:4px 11px;font-size:12px;font-weight:700;text-decoration:none;transition:all .18s}
.mega-tag:hover{background:var(--brand,#7e0882);color:#fff}

/* Featured column — Guides explainer */
.mega-guide-explainer p{font-size:12.5px;color:var(--gray-600,#757575);line-height:1.6;margin-bottom:8px}
.mega-guide-links{display:flex;flex-direction:column;gap:6px}
.mega-guide-pick{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:var(--gray-100,#f5f5f5);border-radius:8px;font-size:13px;font-weight:700;color:var(--gray-800,#424242);text-decoration:none;transition:all .18s}
.mega-guide-pick:hover{background:var(--brand-pale,rgba(126,8,130,0.07));color:var(--brand,#7e0882)}

/* Featured column — Shop CTA */
.mega-shop-cta{display:block;margin-top:4px;background:var(--brand,#7e0882);color:#fff;border-radius:10px;padding:11px 16px;font-weight:800;font-size:13px;text-align:center;text-decoration:none;transition:all .18s}
.mega-shop-cta:hover{background:var(--brand-dark,#5a0660)}

/* Cross-link note at bottom of featured column */
.mega-note{font-size:11.5px;color:var(--gray-600,#757575);line-height:1.5;padding:8px 10px;background:var(--gray-100,#f5f5f5);border-radius:8px}
.mega-note strong{color:var(--brand,#7e0882)}

/* ── MOBILE TOGGLE ────────────────────────────────────── */
.mobile-menu-btn{
  display:none;
  background:none;
  border:none;
  font-size:22px;
  cursor:pointer;
  color:var(--gray-800,#424242);
  /* Minimum 44×44px tap target (Apple HIG / WCAG 2.5.5) */
  min-width:44px;
  min-height:44px;
  padding:8px;
  margin-left:auto;
  flex-shrink:0;
  transition:color .2s;
  /* Prevent 300ms tap delay on Android Chrome */
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
  /* Prevent text-size adjustment on orientation change */
  -webkit-text-size-adjust:none;
}
.mobile-menu-btn:hover{color:var(--brand,#7e0882)}

/* ── MOBILE DRAWER ────────────────────────────────────── */
.mobile-drawer{position:fixed;top:0;right:0;width:min(360px,90vw);height:100vh;height:100dvh;background:#fff;z-index:300;transform:translateX(100%);transition:transform .3s cubic-bezier(0.4,0,0.2,1);overflow-y:auto;-webkit-overflow-scrolling:touch;box-shadow:-8px 0 40px rgba(0,0,0,.18);display:flex;flex-direction:column}
.mobile-drawer.open{transform:translateX(0)}
.mobile-drawer__header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--gray-200,#eee);flex-shrink:0}
.mobile-drawer__logo{height:38px}
.mobile-drawer__close{
  background:none;
  border:none;
  font-size:20px;
  cursor:pointer;
  color:var(--gray-600,#757575);
  /* Minimum 44×44px tap target */
  min-width:44px;
  min-height:44px;
  padding:6px;
  display:flex;
  align-items:center;
  justify-content:center;
  transition:color .2s;
  line-height:1;
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
}
.mobile-drawer__close:hover{color:var(--brand,#7e0882)}
.mobile-drawer__body{padding:12px 16px 40px;display:flex;flex-direction:column;gap:2px}
.mobile-link{display:block;padding:12px 16px;font-weight:700;font-size:15px;color:var(--gray-800,#424242);border-radius:10px;text-decoration:none;transition:all .18s;min-height:44px;display:flex;align-items:center}
.mobile-link:hover{background:var(--brand-pale,rgba(126,8,130,0.07));color:var(--brand,#7e0882)}

/* Accordion sections */
.mobile-section{border-bottom:1px solid var(--gray-100,#f5f5f5)}
.mobile-section__trigger{
  width:100%;
  background:none;
  border:none;
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:13px 16px;
  /* Minimum 44px height for tap target */
  min-height:44px;
  font-family:'Nunito',sans-serif;
  font-size:15px;
  font-weight:700;
  color:var(--gray-800,#424242);
  cursor:pointer;
  transition:color .18s;
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
  text-align:left;
}
.mobile-section__trigger:hover,.mobile-section__trigger[aria-expanded="true"]{color:var(--brand,#7e0882)}
.mobile-chevron{transition:transform .22s;font-style:normal}
.mobile-section__trigger[aria-expanded="true"] .mobile-chevron{transform:rotate(90deg)}
.mobile-section__content{display:flex;flex-direction:column;gap:2px;padding:0 8px 12px;max-height:0;overflow:hidden;transition:max-height .3s cubic-bezier(0.4,0,0.2,1)}
.mobile-section__content.open{max-height:9999px}
.mobile-section__content a{display:flex;align-items:center;padding:10px 12px;min-height:44px;font-size:14px;font-weight:600;color:var(--gray-700,#555);border-radius:8px;text-decoration:none;transition:all .15s;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.mobile-section__content a:hover{background:var(--brand-pale,rgba(126,8,130,0.07));color:var(--brand,#7e0882)}
.mobile-col-label{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.8px;color:var(--brand,#7e0882);padding:10px 12px 4px;margin-top:4px}

/* Overlay */
.mobile-overlay{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:299;opacity:0;visibility:hidden;transition:opacity .3s,visibility 0s .3s;touch-action:none}
.mobile-overlay.open{opacity:1;visibility:visible;transition:opacity .3s,visibility 0s 0s}

/* ── RESPONSIVE ───────────────────────────────────────── */
@media(max-width:1000px){.nav-menu{display:none}.mobile-menu-btn{display:flex;align-items:center;justify-content:center}.search-input{width:160px}}
@media(max-width:520px){.search-box{display:none}.nav-container{gap:8px}}
